From 4f48a6df86ec7a84e2dc2bedb0966d06a00bdd64 Mon Sep 17 00:00:00 2001 From: Marc Horowitz Date: Fri, 30 Oct 1998 03:24:38 +0000 Subject: [PATCH] add back mistakenly deleted files git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@11004 dc483132-0cff-0310-8789-dd5450dbe970 --- src/mac/TestTrack/ChangeLog | 24 + src/mac/TestTrack/MITAthenaLib | 1 + src/mac/TestTrack/ShlibTestTrack.c | 115 +++ src/mac/TestTrack/ShlibTestTrack.h | 19 + src/mac/TestTrack/TestTrackLib.h | 59 ++ src/mac/TestTrack/testtrack.h | 30 + .../CCache API/bin/CCacheGlobalsLib.68K | 1 + .../CCache API/bin/CCacheGlobalsLib.PPC | 1 + .../libraries/CCache API/bin/CCacheLib.68K | 1 + .../CCache API/bin/CCacheLib.68K.debug | 1 + .../libraries/CCache API/bin/CCacheLib.PPC | 1 + .../CCache API/bin/CCacheLib.PPC.debug | 1 + src/mac/libraries/CCache API/include/CCache.h | 350 ++++++++ .../libraries/CCache API/include/CCacheUtil.h | 28 + .../CodeWarrior Dependencies/Pro2.prj | Bin 0 -> 17459 bytes .../CodeWarrior Dependencies/Pro4.prj | Bin 0 -> 18655 bytes src/mac/libraries/DES/bin/deslib.68K | 1 + src/mac/libraries/DES/bin/deslib.68K.debug | 1 + src/mac/libraries/DES/bin/deslib.PPC | 1 + src/mac/libraries/DES/bin/deslib.PPC.debug | 1 + src/mac/libraries/DES/doc/ChangeLog | 369 ++++++++ src/mac/libraries/DES/doc/READ_ME | 21 + src/mac/libraries/DES/doc/f_README | 69 ++ src/mac/libraries/DES/doc/ren.msg | 32 + src/mac/libraries/DES/include/des.h | 158 ++++ .../libraries/DES/include/deslib.CFMGlue.c | 842 ++++++++++++++++++ .../libraries/DES/include/deslib.CFMGlue.h | 8 + src/mac/libraries/DES/include/mit-copyright.h | 20 + .../Metrowerks/CW Pro 2/MIT C.CFM68K DLL.doc | 31 + .../Metrowerks/CW Pro 2/MIT C.CFM68K DLL.prj | Bin 0 -> 86057 bytes .../Metrowerks/CW Pro 2/MIT C.PPC DLL.doc | 31 + .../Metrowerks/CW Pro 2/MIT C.PPC DLL.prj | Bin 0 -> 97000 bytes .../CW Pro 2/MIT RuntimeCFM68K DLL.doc | 31 + .../CW Pro 2/MIT RuntimeCFM68K DLL.prj | Bin 0 -> 83326 bytes .../CW Pro 2/MIT RuntimePPC DLL.doc | 31 + .../CW Pro 2/MIT RuntimePPC DLL.prj | Bin 0 -> 80572 bytes .../Metrowerks/CW Pro 4/MIT C.CFM68K DLL.doc | 30 + .../Metrowerks/CW Pro 4/MIT C.CFM68K DLL.prj | Bin 0 -> 89611 bytes .../Metrowerks/CW Pro 4/MIT C.PPC DLL.doc | 33 + .../Metrowerks/CW Pro 4/MIT C.PPC DLL.prj | Bin 0 -> 95479 bytes .../CW Pro 4/MIT RuntimeCFM68K DLL.doc | 30 + .../CW Pro 4/MIT RuntimeCFM68K DLL.prj | Bin 0 -> 80278 bytes .../CW Pro 4/MIT RuntimePPC DLL.doc | 32 + .../CW Pro 4/MIT RuntimePPC DLL.prj | Bin 0 -> 91916 bytes 44 files changed, 2404 insertions(+) create mode 100644 src/mac/TestTrack/ChangeLog create mode 100644 src/mac/TestTrack/MITAthenaLib create mode 100644 src/mac/TestTrack/ShlibTestTrack.c create mode 100644 src/mac/TestTrack/ShlibTestTrack.h create mode 100644 src/mac/TestTrack/TestTrackLib.h create mode 100644 src/mac/TestTrack/testtrack.h create mode 100644 src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K create mode 100644 src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC create mode 100644 src/mac/libraries/CCache API/bin/CCacheLib.68K create mode 100644 src/mac/libraries/CCache API/bin/CCacheLib.68K.debug create mode 100644 src/mac/libraries/CCache API/bin/CCacheLib.PPC create mode 100644 src/mac/libraries/CCache API/bin/CCacheLib.PPC.debug create mode 100644 src/mac/libraries/CCache API/include/CCache.h create mode 100644 src/mac/libraries/CCache API/include/CCacheUtil.h create mode 100644 src/mac/libraries/CodeWarrior Dependencies/Pro2.prj create mode 100644 src/mac/libraries/CodeWarrior Dependencies/Pro4.prj create mode 100644 src/mac/libraries/DES/bin/deslib.68K create mode 100644 src/mac/libraries/DES/bin/deslib.68K.debug create mode 100644 src/mac/libraries/DES/bin/deslib.PPC create mode 100644 src/mac/libraries/DES/bin/deslib.PPC.debug create mode 100644 src/mac/libraries/DES/doc/ChangeLog create mode 100644 src/mac/libraries/DES/doc/READ_ME create mode 100644 src/mac/libraries/DES/doc/f_README create mode 100644 src/mac/libraries/DES/doc/ren.msg create mode 100644 src/mac/libraries/DES/include/des.h create mode 100644 src/mac/libraries/DES/include/deslib.CFMGlue.c create mode 100644 src/mac/libraries/DES/include/deslib.CFMGlue.h create mode 100644 src/mac/libraries/DES/include/mit-copyright.h create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT C.PPC DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT C.PPC DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimePPC DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimePPC DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT C.CFM68K DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT C.CFM68K DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT C.PPC DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT C.PPC DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.prj create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.doc create mode 100644 src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.prj diff --git a/src/mac/TestTrack/ChangeLog b/src/mac/TestTrack/ChangeLog new file mode 100644 index 000000000..ac6e96426 --- /dev/null +++ b/src/mac/TestTrack/ChangeLog @@ -0,0 +1,24 @@ +Tue Jul 7 17:00:00 1998 Miro Jurisic + + * initTestTrackGlue.c renamed to ShlibTestTrack.c. removed CFM initialization code from + there, since we are calling ShlibTestTrack from CFM initializers in *.CFM.c. Also updated + to fix the bug where we were closing application's resource fork (oops). + +Fri Dec 20 12:35:32 1996 Marshall Vale + + * GSSforSAP.r: Moved resources for the timebomb out to Rez + format for easier CVSing + * macSAPglue.c (__initializeSAPglue): Added new conditions to the + timebomb code so that it can identify individual applications + and not just fail globally. + +Tue Dec 17 13:53:36 1996 Theodore Y. Ts'o + + * GSSforSAP.r: Fix expire time in the text resource to be June 1, + 1997. + +Fri Dec 13 14:58:20 1996 Theodore Y. Ts'o + + * macSAPglue.c (__initializeSAPglue): Change the timebomb date to + be June 1, 1997. + diff --git a/src/mac/TestTrack/MITAthenaLib b/src/mac/TestTrack/MITAthenaLib new file mode 100644 index 000000000..d7ae71ad3 --- /dev/null +++ b/src/mac/TestTrack/MITAthenaLib @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :$%e*9%&dD'9ZB8aTBJ"cD'aL2j!%!*!%b$d!!!*A#-K+EhNKF'9QCQdf1'X!!!! "XG%Hb!#3$3-!!J#3$NXd!!",0!!!5c3!!!#8!!%#!*!%"3#3"LFJ!!!R)!!!"GJ !!%[)!J%#!*!%$J#3$J9)!!"4S!3"!J"0B@PZ!#9"09G[FQaN!%a[B@4PFJ#3"#T 46PErp#m0F!%[!$!mUQi[!#*YrC3J@8k3!#TZrr!Y32rdF!%[!$!mU'i[!#*YrC3 J@8k3!#TZrr#`V[rdCJB`2!)!B!3`2!3!6Pj1GBp1G@e8EfpXBQpi9(*KF(-!!#T 46PErq$!Z!!S#J!!!#!"Q"(!!B!*`!8jH6R3!")Y(CA48FQ&`9(P`C3!!+P&19[r d51FB"$BZ!!S[!f(rN!6%'!!-"!!"CK*Krj!%@!*$"rqf3'd%0MbSRbm%,`-LEIf 8)&P1N!!UE[r`,8$rp(!",`!`2+LI,`!LEIf8)&P1N!!UE[r`X+lrp&E!4!"*`%c I!"K1ANjd!!5+9(*KF%9iDA0dF`!!!#T46PErj#m05'lrk(!",`!LEIcB)&P1N!! UE[rJ5'lrj#mZ!!`[,J!)-#lrpLm!)Qhmc#"C6T!!+Qlri%M!C``JEJ!)3P!JEJ! -3T!!6Pj1G!!)MdGPG&0jFh4PE8C[E'4PFJ!!+P&19[rd51F30#CZ!!JNEJ!-GJ! `2+'Y,`"Krj!%#%S!Caa)E[rd,caQEfaN)QhpN!!J@8k3!#TZrr")`'B#GJ&+!fB -,`S[#f(rN!4@B#J[#Lm,F!![!#mmBh4bE$!mJ!![!#*YrB`J@8k3!#TZrr")`'F %3P0#NNcI$!K1ANjd!!L24f9d3e"KEQ9X4QpXC'9b!!!U88j@rRa)jam%,Li!##` Z!!`k,J!5+#i!&%+ZriT"l[jq,8MrN!!p4Iq8,86rVMem!!(rQQ"F[UlrRQC1[+l rSQC)F!%[!%KZrRi["#m&)QhpV#"C6T!!+QlqH$B!F!%[!#mmC'jbF#*YrA`J@8k 3!#TZrRK+J'B3,`-LEIeB)&P1N!!UE[jiB!3`!f!H8QlrQLe%rkj)E[pq)Qhmr#" C6T!!+QlqH%M!Cj!!F2p-h`$i6Pj1G!!3Ne0PBA*MD%C[E'4PFNC[FN418P!!!#T 46PErm#m$5'lrmNKZrrCKrrrrrT3[,[rb-#lrpLm!,cakG'0`,caMC'9fBIq3"!` f!!a$rrpR"$!$B'j)E[rb5'lrpQ(rrrrpr#mZrr)`,[rf,`![2'edBh![2'0NCAC KrrrrrYBf!!a$rrpR"$!$B$K)E[rb5'lrpQ(rrrrq+#mZrr)`,[rf,`![2'edBh! [2'0NCACKrrrrrU!f!!a$rrpR"$!$B!*`rbBI6Pj1GBP2F'9Z6h9b8NB!!#T46PE rq%MR%!4+VISSC`C`!'!!!04Krj!%,$B!F!%[!#mmC'jbF#*YrA`J@8k3!#TZrr3 V32SN5Uhk*'B3)QhpL#"C6T!!+Qlrp'!!!*`[,ISN)Qhp##"C6T!!+Qlrp!a$rrp R$Lm$)Qhp@#"C6T!!+Qlrp#mYqL3LEIc8)&P1N!!UE[rd,bhk*#*YrE`J@8k3!#T Zrr3JEISN+e$k+#mZ!!K)H!!"5(J$i5mYqLJLEIcX)&P1N!!UE[rd0J!`!dM!6qm !%'FN,bhk*#*Yr0`J@8k3!#TZrr3[,ISN)QhpZ#"C6T!!+Qlrp%+YqLJ`!bBI6Pj 1G!!%M%p`C@j5CA0[E(CPFJ!!!#T46PErq#m05Uhk+'B%F14J+LmZ!"3[,J!3,bi !$#mZ!!K)H!!$,c`!!2rK,bhk+#*Yr1`J@8k3!#TZrr41ANjd!"#*8h4b9'p"C'4 b!!!U88j@rrK)EIT)5'hk6#mZ!!KKr`!!!SK+J'F%F!"J-N(YqNJV52T!3Uhk4%( YqN`V52SX3Uhk-(!#+d$k0(!%+d$k1%(YqN!V52Sm3Hhk,#!)6Pj1G!!%M@GPG'K [Fh4LH@jKE@8!!#T46PErp#m05'hl6%KYr[`LEIcS)&P1N!!UE[r`5-!Y32rd)#l rp%jH6R@,Eh"PEPpNFQPfCA)!!#T46PErq#m05Uhl8'F1)Qhl8#"C6T!!+Qlrp'! #F!"1ANjeMh9cCA*IB@*[FR4IC'PcF!!!+P&19[ri51F3*#4Z!!Kf!!a5!!&R"M! 55-"J('(rN!5`*J"R"#!$B!iLEIe`)&P1N!!UE[rdB0K-h`3)6Pj1G!!%L(GKDA4 ICQpb!!!!+P&19[ri51F3"%TYqdaQ%Q(rN!3f*J"+JfF')!0J!!#`5(J!CN+R5'h la#*YrM3J@8k3!#TZrr3lEIY-qp`lI!!QqpiVEJ!)qq!EI!!Hqq4#,I[P'hcr`2[ Q5'hla#*Yr@`J@8k3!#TZrr4)EI[8BIq3"%3Q!%Ki!'C#TdKYqm3LEIid)&P1N!! UE[rd1fhl62[F1h`!+[[H+fi!#2[J5'hla#*YrC`J@8k3!#TZrr4+EI[8CK![,I[ N)QhqQ#"C6T!!+Qlrp%U$CJBf,I[85--J!bBI6Pj1G!!%N!"dBh"IBfa[Ff9IFh4 bC@&Y!!!!+P&19[ri51F3"%TYqdaQ%'(rrrrq5LB!5S0R"(!!B&C)H!"Q3UG)EIY H)Qhq0#"C6T!!+Qlrp$YYqdclGMYm!#MlH#YZ!!MlHNKYqeiLEIeX)&P1N!!UE[r d5'hlEQ(rrrrqDLB!5S0R"(!!B!T+EIZD9X"%!%R!*Kp1ANjd!!5,G'0`Af0KER* PB@3!!#T46PErq%MR%$3QEJ!-5Uhl9'BN5'hr!L*Yr[JJ@8k3!#TZrr4)`#B!5S0 R"L!$B!!!RR!"+d$l9(!3,`")H!2!,bhqk#*Yr8JJ@8k3!#TZrr3N3$Ym!!(lA%K Yqe`[#LmYrZ`[,J!))Qhqp#"C6T!!+Qlrp#"YrZ`-N!$rrkAqCK")EIYFBIrrrrf i)'hql##!,`SLEIdS)&P1N!!UE[rd)'hql%U3!'F))'hql#!3B#)JEIlX)Qi!%#+ S!33J#fF3)%XLEIlX3qN!"#!)%0PQr(!!60m-#%jH6R3!$)pZFepbCA0[E(CPAfj KE@8!!#T46PErq#"Z!!JLEJ!--UJ!!NjH6R3!#)abCA0[E(CPAh"bEf-!!!!U88j @rrK)j`!N$'i!!3!1CKJNEJ!3,bS!##mZ!"!LDJ!%)&P1N!!UE[rd*&p1ANjd!"# +G@4`Afj[G'PQH3!!!#T46PEr[%MR%$3QEJ!)GJ"+EIY-CK*Krrrrr'BQ!%U$C`B J!f!!!-4)H!!k3UG)E[qq)Qhq0#"C6T!!+QlrZ%Ki!!`LEIkF)&P1N!!UE[qi*%! J#QB'F!aJ!!#52A`!&2rB2@hl62r@,@i!%2rH,@i!&2rL5Uhl@'BFF"![!%Ki2X! [,IlN)Qhp5#"C6T!!+QlrZ#Y!qeJYEIYBrqBp8rrU,8Vrl%KZrliLEIeX)&P1N!! UE[qi5QlrcQF@,`SLEIkB)&P1N!!UE[qi-#lrcNM!B"`NV[rD*@i!(!!%*@i!$!! ))'i!'##+0UlrkL!$60m-#%jH6R3!')aeC("IFQ9RDA0dCA)!!!!U88j@rkJ[$8K i!$T#TdKZrliLEIid)&P1N!!UE[qN2@i!'[qb,@i!&2qd3QlrZ#eZ!!MrUMem!"I rf$eYqdcreL"ZrkSY82rD,@i!$2rJ2@i!%[rN(A`!!IrU3HlrXLe)rqC)E[qq)Qh pE#"C6T!!+QlrT%KZrmjKrrrrqfiY32qZ)#lrVNjH6R3!&)jeC("IFf9ZC&pNCh* KE3!!!#T46PEr[%MR'#3S,J!B5(J!1N+R5'lr[L*YrM3J@8k3!#TZrlJNEJ!)2A` !&IrB2@hl62r@,9,rfR!!%#hl6Me!rpj)E[qq)QhpE#"C6T!!+QlrZ%KZrmjKrrr rq[)Q!%U$C`3J!f"dF!!`,[rUZ)"X"#!%B!C`!$!ZrqSLEJ!8)'lrjR)JX)&P"+) ZB!j+J'F+)JN5f&1!C[SL3A!!-#lrkL"Z!"`JJ#"Z!!`JV[rJ)'i!%$#Zrq3pI!! @rpK)E[qq)QhpE#"C6T!!+QlrZ%KZrmjKrrrrqRJQ!#!$60m%'%jH6R3!')eeC(" ICf9dAf4RFQ&Y!!!U88j@rlK)j`!N5(J!1N+R5'lr[L*YrM3J@8k3!#TZrl3NEJ! )2A`!'2rB2@hl62r@,9,rfNKZrliLEIeX)&P1N!!UE[qd5'lrcQ(rrrrk$#e!rlS [#L*YrTJJ@8k3!#TZrl3NAdjH6R3!")YeC("IFQ9XC@&cC3!!+P&19[r851F3"(B !5Qhl6'B-BIrrrrPJ*J"+JfC!5(J!*%+R5'lre#*YrM3J@8k3!#TZrp!pI!!2rqi pEIY-rqa)E[r8)QhpE#"C6T!!+Qlrd%TZrq4Q##"Z!!JJV[r`*Kp1ANjd!!51Cf9 dAfejAfP`Af&NC()!!!!U88j@rrK1ANjeL'jPG&pTC'aP!!!!+P&19[ri51F3"%U Yr#TR"(!!B'4)H!N!)QhqR#"C6T!!+Qlrp#Y!r#T+VI`UCK"`$#Y!m%JlI!!-r,j `rf!k5(J*!%+R,bhm+L*YrM3J@8k3!#TZrr4f!'!B)!-'J!!!!)"b5%`$'!!JEI` U)B!B"&+$F##fJ'hLF!!Q(djH6R@+BfKPBfYID@jTG!!!!#T46PErq#m$BIq3"'a +J'F%F!"J-(B!B#4`5%`$#!!JEI`U#$!!"`J!CK"`5%`$#!!JEI`UdF!J#'!+8S0 `),D!EGC`!#BI6Pj1GC&RCA4IG@jeFf9NAh0[BfYPG!!!+P&19[ri*#i!#()!B#* `5%`"#!!JEI`UY,!)"'B3F%K-!3J!)'hm+Y(!)!KJ#P+"F##bJ'hBF!"1ANjd!!5 ,CQPZC&pcEf0VCA3!!#T46PErq%MR!#3NEJ!)5(J!"%+R,`SLEIid)&P1N!!UE[r d3US!1%UU!$4R%#mU!$3LEIkB)&P1N!!UE[rd3US!0%+U!$!NAdjH6R3!")jbC@a PBA0PAh0[BfYPG!!!!#T46PErq%MR(#3Q,J!)+Li!$#JZ!""`!VD!CJT+K'FBF!+ iJ'F5F"BV32")1h`!&[bqF2pJ!!#bF!+kJ'FBF!'kJ'F5F"BV32")1h`!&[bqF2p J!!#8BIrrrrkJ*%!J#QB3F!`V32")1h`!$2bqF2pJGM9$!!Je3`!B08-!+$9%!#S P43!X5US!0'Bb5(J)!#*YrT`J@8k3!#TZrr3P3!!d*A`!!!J!!$"+UJ!dCK"`$#Y !m%JlI!!-r,j`rf!U5(J!"%+R,`SLEIid)&P1N!!UE[rd!")!J!*5J(m#+J$[!!& #UJ!i)#S!"%cI"$K1ANjd!!b'FfpMDf9d!!!!+P&19[ri51F!*#4Z!!`)%J!(CK" )EIm))Qhp4#"C6T!!+Qlrp1R5!%K531r5!%JNAdjH6R3!#*4cEf0VCA4ICACPER4 ID'&ZC'aPFJ!!!#T46PErq%MR'$JS,J!3+'i!'#mZ!!KKrrrrrIBN3#!+CK*`&LY !m%JlI!!@r,j`rf!!!-*`!V#U!#aQ#!aU!!)!#'F5F"BV32")1h`!&[bqF2pJ!!# J5US!1'C),bhqi%KU!$J[+J!`,bS!0#m+5'S!#Q(rrrrj&LB!5S0R&Lm+BIrrrrh BF"NV32")1d2m[R$rB'")DJ!-BIrrrr[k!#S!%!!"F"#`VJ!FCJB-9!!#Ca"`&LY !m%JlI!!@r,j`rf!b*N`["#mZ!!``+`!#,`![+`!%,bS!1'(rrrrjY#B!5S0R$R! C+d$`5$Y$r,j`rf!#)!4-ha`B6Pj1G!!BKR0PEQ4dE`!!!#T46PErp%MR%$!QEJ! F,bi!#'(rrrrmmL4!)!TQ%R!@+d$`5$Ym!"Em[R$rB!!!LR!#X+S!,'B)$'S!!J! )Ca"`&LY!m%JlI!!@r,j`rf"SF"#`Nf-3F"BV32")1h`!&[bqF2pJ8R!3*S!QEJ! B0V`!!NKZrr3[,J!3,bi!$%KV!!*)D`!%,bS!1'(rrrrjPLB!kG)!5'F+kG)!5&0 !lp)!5%U$CJBJ,[rdB!a`'5Y!m%Jl3rbqF2p-h``)6Pj1G!!BL(*PBhCQFQpY!!! !+P&19[ri51FI2#SZ!!JSEJ!-*Qi!%#iZ!"3NEJ!B)!TQ"(cqB#3LEId3)&P1N!! UE[rdFMa-%K!!dS!J+J!%6(`!N!4"'Y#",!")H!!J3UG)EIb1)Qhq0#"C6T!!+Ql rp%Ki!#"#TdKYr'iLEIid)&P1N!!UE[rd5(J!)%+R5'hm6L*YrM3J@8k3!#TZrr4 )H!!J3UG)EI`Z)Qhq0#"C6T!!+Qlrp(J!)!aQ"%RYr#iJ#fB%4qhm,NU(CJC"lI` Z,JKf!'!!!+)J!qU))J0d(m+#G!(MUX5c$!"R(L!$FKr!JA)"iDNJ!qU)3HhmEN( `$!!J%)#"))"5K#!$kSJL!h3I`S*d!H1Ua,3-!'GBF)$3Jh)JX)&Z6Lm$BIrrrrX J*%!J#QG!#")!"fFkkG)!5'B@F!'`UJ!XCL`[+J!mBIrrrr5D5S"R(L!$FKr!JA) "iDNJ!qU)3HhmMN(`$!!J%)#"))"5K&+$YS9Y!2pF5S4Q*#*YrA!J@8k3!#TZrr4 KrrrrqESLEId3)&P1N!!UE[rdX)CP!2mZ)!9HJ#B!j)2JLq#,i)[ULpD!jS0`),D !B`*f)#*-3HhmML!$FL#`J@8%SLjJ$NU!C`SL#4,B8i"QqL*")NY"lIaZ)!0b),# "C35L,Q!15S"R#L)*%YK6J'Ek)N%L4d(Yr%iJ!h)JX)&P"+)ZB!j+J'F+)JN5f&1 !C[SL35!%60mFq%jH6R3!&)CcC@aPBh3!!!!U88j@rrK)ja!N*Li!#!b$!!!!J'` 5,`-LEIh3)&P1N!!UE[rdB!!!RLm$BIrrrrRS*%!J#QB'F!"J!!#+)!TR$JJ5!!G R#!aU!!)!+'F3F"BV32")1h`!&[bqF2pJCL!U!#a6J'F'8i"R,Q!q5US!2'G),bS !2'(rrrrb6LB!5S0R1(!C+d$`5$Y$r,i[#Q(rrrrjd($rB#a+UJ!iCa`[+J!iBIr rrrH!B""`&LY!m%JlI!!@r,j`rf!+,`TKrrrrqD*`!%cI"!K1ANjd!!5-FfpMDf9 dAf0XEh0P!!!!+P&19[ri,`e+VIbZCK4)H!,))QhqR#"C6T!!+Qlrp#Y!r+j+VIb bCK4)H!!8)QhqR#"C6T!!+Qlrp#Y!r,*1ANjeLh4dAf&XE'pMBA4P!!!U88j@rrJ [$8UYr+jR%#mYr+iLEIkB)&P1N!!UE[rd3UhmVNUYr,*R%#mYr,)LEIkB)&P1N!! UE[rd3UhmXNjH6R@(G(4ICR*PC3!!+P&19[[S,`e"l[[i)Qi!%#!)%0PQr%KZqrJ LEIeN)&P1N!!UE[[N5'llkNKZqr4)E[[b-#i!$Lm!,bi!##*Yr43J@8k3!#TZqq4 )E[[i,bllp#*Yr63J@8k3!#TZqq41ANjd!!b3!(4dAh0PG&pTG'9YAh4PH(3!!!! U88j@qqJ[$8KZqqT)E[[d5'llmM!Z!!i[!#mZ!!JLEId8)&P1N!!UE[[N5'llq#m Zqr3LEIdN)&P1N!!UE[[N5'llq#*Yr33J@8k3!#TZqq3JEJ!33qllq#!)%0PQr%j H6R3!$*!!G(4ICf9dAfPdC@eIG'9iG!!!!#T46PErj%MR%$`SEJ!)*'i!$#CZ!"" `!$!59i"R$R!!-"*EJ'F'F!"J!!$Z*LS!!J+$!!!!r`b$!!!!!fF8$)-!!!!0C`` -J`!!!"YRCQ!!!-Bf[!!"5'lrkNKZrr4)E[rbF!%[!#m-)Qhp&#"C6T!!+Qlri(! +,`![,[rd)Qhp'#"C6T!!+Qlri%KZrqC)H!!))Qhp$#"C6T!!+Qlri(!!,`![,[r d)Qhp'#"C6T!!+Qlri(!"B'3f[!!#5'lrkNKZrr4)E[rbF!)[!#m-)Qhp&#"C6T! !+Qlri(!+,`![,[rd)Qhp'#"C6T!!+Qlri%KZrqC)H!!))Qhp$#"C6T!!+Qlri(! !,`![,[rd)Qhp'#"C6T!!+Qlri(!"B!*`!%cI(!K1ANjd!!b0G(4ICA9TAfCTE(4 PFJ!!+P&19[p),`e#V[p@3UlrA%KZrdSLEIeJ)&P1N!!UE[p%5N"R"($rB#j#V[q +3QlrQMeZrf$rP%+Zrj!!5'lrIL*Yr2!J@8k3!#TZrd4+3'F%F2pJ"#!Zrja1ANj eQ(4dAfGPG&pfEfaIBh*PBA4TEfjIC'&dC3!!!#T46PErj%MR!$`SEJ!)3QlrpNK irrp#Tc!m"%`[!#*Yr5`J@8k3!#TZrq!Q3#!,CJC`rf!!!9SJ9%)3)&4#+!"N,a4 `"#m!,`YKrrrrr53J9%KS!'4`"Lm!,`YKrrrrr4*`%#m!5(J2d#mYrYJLEIe))&P 1N!!UE[rJ*%")E[rU)Qhp9#"C6T!!+Qlri#m,)Qhp6#"C6T!!+Qlri%KZrqj)E[r N5'lrk(!",`![#b*Yr43J@8k3!#TZrq"`!bm!F!-[!#*YrE!J@8k3!#TZrq"`r#m !F2`[!%KZrqiLEIh!)&P1N!!UE[rJF"![!(!3,`")E[rZ)Qhmb#"C6T!!+Qlri%K ZrrB[#L*Yr13J@8k3!#TZrq!-EJ!"rrCR#!aZ!!,rpQEH,`SLEIdS)&P1N!!UE[r J$'i!!IrfCL`[&(!%,`![#f(rrrrmU#"85'J!C(!',`![#f(rrrrmPQ(rrrrq1#" 8)8!!b#m,)QhpH#"C6T!!+Qlri#m-)QhpD#"C6T!!+Qlri#m-)QhpY#"C6T!!+Ql ri$!ZrrC)`%cI(!"1ANjd!!54G(4IC@4TG&peFf9bAfPZCQm!!#T46PErq%MR!#3 `2!4-,`![2(4dG@NLEIdm)&P1N!!UE[rd*%"+J'C85(J!c#*Yr3!J@8k3!#TZrr3 N3%KYre)`2!4-,`![2(4dG@N[#L*Yr6!J@8k3!#TZrr4)H!$-3UF[%L*YrM3J@8k 3!#TZrr3[#Q(rrrrpjP1!CbT`rf"D$#i!!3!2C`jKrrrrr9SJ8V#S!-KR%#m+BIr rrrh!8i"R"($rB$3LEJ!))&)J2!!!!-ab),#"C35L,Q!15S"R#L)*%YK6J'Ek)N% [#L*YrB!J@8k3!#TZrr4`!#4I6Pj1G!!)N!"dG&pRCA4IGA0PFPpTEQC[!!!!+P& 19[rN,`e)E[rSF!%[!#*Yr0JJ@8k3!#TZrq!p32rQCb)`,[rQ5-![!%KYrfB[,J! ))Qhpp#"C6T!!+Qlri%r[!!aJ8$!Zrr4)`#m!F!!3,[ra,`"`!"!Zrr![!$!Zrqj )`#m!-#lrl%M!,`!`,[rU5-![!$!ZrqK)`#m!5'hrK#mZ!!JLEIhd)&P1N!!UE[r J6qm!*%jH6R3!"*0dG&pRCA4IFhPcAf9ZGQPbEfjc!!!U88j@rr4)j`!N-$`%6#m !,ca$8e45)Qhp2#"C6T!!+Qlrm#4!5S"R4Lm+)Qhp[#"C6T!!+Qlrm#m5BIrrrqS 5,8$rp'F1)'lrp#"S!"!J8#Y3r,B[#L*Yr0`J@8k3!#TZrr![#L*YrB!J@8k3!#T Zrr!NAdjH6R@8G(4ICf9dAh0PFRCPFPpTF'&NC()!!!!U88j@q"K)jam%&Li!&bJ Z!"Kk!(i!)QhpU#"C6T!!+Qli&$e!rYi`,Ibm,`!LEIcd)&P1N!!UE[J8F!'iJ'm D)Qhp%#"C6T!!+Qli&%a%!!&+J@F'F!"J!!*L5UhmYQB5BIq3""C+VIbfCJC`!'! !!NT)E[VHBIrrrrj3GJ"+!fFX%#i!%bm!5'lqp'(rrrrp5%U!Cb3`,[lH,`!LEIc d)&P1N!!UE[J8F2pJ!!)13Llqp%)ZreK#V[qmBIrrrrK#5(J#b%+R,bhmVL*YrM3 J@8k3!#TZq"3JEIbZ-,`!!5"Yr+iaI!!"!!)JEIbZ-A`!!3!%5J0R"(!"B!*`!#" Yr+ia3!!')Qhp%#"C6T!!+Qli&#"Yr+iK3!!)5'lkhNKZreK)E[ld5'hrd%KZq#) LEIhd)&P1N!!UE[J8)'hmXL#Z!!JJEIbb)@i!$!!%3HhrfL*Yr,)M5!!)3Hhr8#* Yr,)M5!!-3Hli)L*Yr,)M5!!3,bhmXLmYr+jKr`!!!PiX!%+R5(J!!NKi!!*Krrr rm9)Q!$em!!,r`$em)66r`LeYr,Era%Ki!"")E[r!3UF["LmYr+i[!f(rrrrbF(S !6qm!&%Ki!#"#TdKZrp!LEIid)&P1N!!UE[J8)!0b(m#"FJ(KU5!$kSK"l[r33I! -!#!3J)%JJ(!&,8$rm%+Zrr4)E[r`3UG#TdKZrp")H!%!BIrrrr2Z+!"+K'BB5(J !%%KZrm"#Tbm',bhmVLm$BIrrrr(k5S4Q#&+&F!1kJ'f%F!'iJ'C@F"!Y32JH5'l i(NKZrm"#TdKi!XJ[,IbZ,`0KrrrrmY!S!#"Yr+i-D!!%!!CQ+%KZrZ![,IbZBIm !!!#L)'lql"!35F!%J!!!!&*R!Q!#I[mYE[l`q"S[!f(rrrreK'(rrrrfUM!ZrYi [!#*Yr23J@8k3!#TZq"3J"dcI!2K1ANjd!"5+G'9cG&pdFQ&MD`!!!#T46PErq#m -)'i!##*Z!!`SEJ!3)Li!&'!++-Lab@3%5KKQq#!"8i&+J'EZ+&p1ANjd!"#3!(C IF'&bFf9IF'YdAf4KG'%!!!!U88j@rrK)H!!&,bi!$#"Z!!K)D!,()'i!#%KS!!a Krj!%QNjH6R3!#)YfAh"KFR0PAh"VG!!!+P&19[ri51FB2#4Z!!JSEJ!-*Qi!%#B Z!"3S#Q!f5T0Q"%)DB"BJ6*(+,`J[%bm+)Qhpm#"C6T!!+Qlrp%+R,`SLEIhS)&P 1N!!UE[rd)%"5L#4)@)XJ!e1$5S"Q`L"+NF3J#%cI("K1ANjd!"#6GPpKFh0PE@* XC9p`Dh4IC'&dB3!!+P&19[ri,`0f"5m$,bi!$#"Z!!K"k!,)NF0)8#"Z!!K)D!! -BIq3"&Tb$0#"*Kp1ANjd!!L1GPpKFh0PE@*XC9p`Dh3!!!!U88j@rrK)jaJN*'i !#(B!BIm!!!&`)QhpU#"C6T!!+Qlrp$J!F2mV32bkF!'`UJ!-CM"`!5m!,bS!%#* YrD3J@8k3!#TZrr4)`#Y!r,T`rl#Yr,TQ$L*YrBJJ@8k3!#TZrr3f!#m%)Qhmp#" C6T!!+Qlrp$!$60m%'%jH6R3!"*&IAfPZDA4TB@aTHQ9I9&466!!!+P&19[ri,`e `rl#Yr,TQ%M!Yr,`[!#*Yr9JJ@8k3!#TZrr4Kr`!!!2a1ANjeN!"IAh4PFQeTEQ& dC9p89&0-!!!!+P&19[ri-#hm[NjH6R@3!%GPG%*64%eKBdp64A*bEh)!!!!U88j @rrK`!%jH6R3!")j*ER0dB@aX3fpZFfpXC3!!!#T46PErq%jH6R@08Q9YEhCP3fp ZFfpXC3!!+P&19[riF!"1ANjd!!L69h*TG'9$D'&bFe4[3fpZFfpXC3!!+P&19[r iF!"1ANjd!!L88Q9KC%0SBA*c4R*[E80[ER0[E'8!!!!U88j@rrK1ANje+P&19[r i,`dJ$5m!,bhqa#*YrV3J@8k3!#TZrr3V32c!BIq3"0C`!%jH6R3!"#T46PErq#m 0)Qhq[#"C6T!!+Qlrp#mYr-!LEIk`)&P1N!!UE[rd6Pj1G5T46PErq%MR!#4J'L" YrX!JNR$r,`![+J!))QS!"#"C6T!!+Qlrp#"YrX!N8#!+CY`NAdjH6R8U85m-+'m !##*[!!a`!#"YrVKJ%%U3!'B)))`K53!%B!j5J&#)$)!!!!#!EHK`rbKI6R3!##T 4)Lm!"%U"E4J-J3!!!)"X%#!"jiJJEIkidF"#N!"#U!!%6R3!"#"[!!4`!*!!V`! -)8!!"(!!)Lm!#*'"))"1G!!-)'m!"#![!!b3!+m!&#&!!!3J,`!))Lm!%*'"))" 1G!!86PErk%MR(cJU,J!)*'i!$#KZ!"!QEJ!85T*Q#%UU!!4R!!$@GJ"i!#"&,"! YD!!%rr3Y8[rX,@S!"2rSIJ"k!%+Zrr"J!!#8eS-J"!+!J!!!!'F%F!''J0L%)!B #J)!!!!"R"(!"L)$FKL!Zrr3#J)!!!!"R"(!"M)!J,[rdd)!Y32rdhSFJ"3+!J!! !!'F%F!'1J0U&YUlrl')-YUlrl'BdZ+lrk'8ZF!'+J#e$rrJY42rm,bS!"#mU!!! [,[rm,blrq%KZrrKKrj!%&LBZrrJS,[rm8Ulrm("!X+lrm'i!rfBJ$'F'+)FT43! %)!YR"LD$*d3!"%cI(2K1ANjd!""19J!!,`SNEJ!)3UF[#NKZ!"4)EJ!-BIrrrrl Q)!SNAdjH6R3!&%j@!!![#L4Z!!J[#N+R5'i!&%KZ!!aKrrrrrX!J#L4I6Pj1G!! 8)#m!",#[!!aR#'85F!&1G!!3)#m!#,#[!""R#'6ZF2p1G!!3F!"1G!!3*#m!##! [!!3L,`!-P+m!%*'"C`TY"R!"6R3!%($r6R3!%#"[!!3J,`!))8!!"!J!!"pR#($ r))"1G!!)F!!JJ%jd!!JU88j@rrK)j`!N5(J!!5*YrR!J@8k3!#TZrr3JEIkN5T! !CKJ[,IkJ)Qhq)#"C6T!!+Qlrp#"YrU4`!5#!,bi!##mYrU!LEIiF)&P1N!!UE[r d*%")H!!")QhqE#"C6T!!+Qlrp#!+*&p1ANjd!!3U88j@rrJ[$5"YrU4+N!"R0%K i!!%LEIj`)&P1N!!UE[rd,bi!##mYrU!LEIiB)&P1N!!UE[rd5(J!!5*YrQ`J@8k 3!#TZrr41ANjd!!3U88j@rrK)ja!d*'i!##CZ!"!Q,J!83T)PEJ!-!!3#+J!I!!J #+J$[!!K#+J!-3LS!$8+U!"*+JfFB,`0)H!!#,`X[#L*YrR`J@8k3!#TZrr4J&%+ R3UG#Tbm+)QhqI#"C6T!!+Qlrp#9U!"B!(N+U!#,TkJ(#!!46J'F'9B"R('!`*@h q8!!b*@hq@!!f*@hq9!!k*@hq6!!qB"C#UJ!b*@hph!!f*@hpf!!k*@hpe!!q3US !3NcI$!K1ANjd!"!U88j@rrK)ja!N5(J!!L*YrR!J@8k3!#TZrr4f!#4YrYaJ)ZR U!F)!"'F8,`SLEIjN)&P1N!!UE[rd!QVqI`!%8S0`4YA!F#1fJ'hB5(J!!L*YrQ` J@8k3!#TZrr4-h`3)6Pj1G5T46PErq%MR'#4i!(B!*'hqh'!LkHS"`J!%Ca3[#L* YrQ!J@8k3!#TZrr4+J'F#H2p5Jh"'eF"`)lD!EGJJ"%cI""K1ANje+P%[$#K[!!J LE`!-)%`L%@!B$"!!$@B'%,`!#Q!+$"!!#QB%%,`!$9+))!&6J8U!CZ!SAdjd!!J U85"[!!3KD!!@!"iKD!!D!#)J+!!5`+J!*T'S!#)KD!!5!#j1G!!%+P&19[ri51F 30#4Z!!JQEJ!-)'S!(T(U!"BQ#%U$Ce3P3`!L##S!"J!&CK4)DJ!L,bS!&L*YrSJ J@8k3!#TZrr3[+J"#5'S!)LmU!"B[%L*U!$SJ@8k3!#TZrr3Q!#!,C`3QUJ!L5S0 R"#!$B"JJ+J!LdDS!%Lm+)QhqK#"C6T!!+Qlrp(!!60m-#%jH6R3!##T46PErq%M R($3NEJ!)*Qi!$#BZ!"!S,J!8kHT4`J!%kHS!!`!)CJ4+K@B'F2pJ!!$+5S0R%R! "YS"R$(!#YS"R"R$rB!!!Y%UU!"CR'!JU!!3!#'F3,bS!&L*YrTJJ@8k3!#TZrr6 [kM&#!!3#+J$[!!JJ5P#)A)JP5!!@)%T3L&b)*8J!(R!"*8!!'N+U!#*#UJ!Q5S0 R"R!"Z)"N#L"U!"j#%(!!B&)J#fBH,`3LEIkF)&P1N!!UE[rd*N"+J'B%F2pJ0J! U!"!!##9,!"BPDJ!@!"iP4!!D3US!*ZRU!F)!"&1!CK)J"!+!!!!"rfB)*A`!!!( r!#C`!%cI$$K1ANjd!"!U88j@rrK)jaJN+#i!##4Z!!cTkM(#!!4#UJ!L5LS!$@B %5S0Q"R$rB!!"%(!#YS"Q$#*YrL3J@8k3!#TZrr6TkJ!$!!KQ81RU!)-!"()#`)& R41RU!)-!"()%`)&R(NKi!!*#Tbm+)Qhq1#"C6T!!+Qlrp%U!C`C`!'!!!-!#+J! I!!J!+J!J!!J[#L*YrS3J@8k3!#TZrr6TkJ!$!!K6!'F3&A`!!3!03US!)R$rB!! !M1RU!8)!"&8!C`iJDJ!HNHS!&V(U!"TQ)N+R,`SLEIk!)&P1N!!UE[rd5S"R$K9 m!!%!$8+U!#*`rf"38kS!)L"U!"j5UJ!H%)6TkJ&#!!49!'FdkHS"3J!%C`C`#VL !CL*#Tbm+)QhqJ#"C6T!!+Qlrp%U!C`i9I!!"!!e#UJ!LF2pJ#%+U!#*`!"!%60m %'%jH6R3!##T46PErq%MR%!4f!#"YrR4`!E#3!'B%F!&JCNKi!!-LEIj`)&P1N!! UE[rd)'hqG%U3!'Bm)Qhq*#"C6T!!+Qlrp(!!,`!LEIl8)&P1N!!UE[rd5N"R#L" YrR4`!L#!B")JEIkS)+hqd#"YrR4`!5#!GJ&)H!!$)QhqE#"C6T!!+Qlrp#!$*Kp 1ANje+P&19[ri51F!*#4Z!""Krj!%E%U!CJ4`!@!d)'hqh%KS!%BLEIjJ)&P1N!! UE[rd,a)[,J!-)Qhqb#"C6T!!+Qlrp#5!F2q`NQB%F!&J!R!!*&p1ANjd!"!U88j @rrK)j`!N*'i!%'(rN!385S"Q"(!"B#![%LmZ!!`LEIl-)&P1N!!UE[rd*)"`rl# 5CJ4`!@!#F!!NAdjH6R3!%#T4F!"1G!!%+P&1G!!%+P&1G!!%+P&19[rd51FI2#K Z!!JX,J!-+#i!%#4Z!"3Q"N`%-!"+JfF15LS!$@B)kHS"`J!%CJC`!'!!!LETkJ( #!!49J'B-)Qhq*#"C6T!!+Qlrm!JU!!B!"@FLkHS"`J!%9i"R'1RU!8)!"&8!C`l TkJ&#!!46!'F%F!"J!R!"+J$TkJ!$!!KQ81RU!)-!"()#`)&R41RU!)-!"()%`)& R(NKi!!*#Tbm+)Qhq1#"C6T!!+Qlrm%U!C`C`!'!!!D3#+J!I!!J!+J!J!!J[#L* YrS3J@8k3!#TZrr$TkJ!$!!K6!'F3&A`!!3!03US!)R!!B!!"F#C-H!"+JfF!!2! JDJ!HXHS!&QB'5S9R!!$J)'S!(T(U!"BJ+J!DN!#)*8!!)TR-,@S!)[rdYUlrp'3 %,82rp1RU!8)!"&-!CLa+V[rdCbB[,[rd5(J!#Lm,)Qhq,#"C6T!!+Qlrm#K!5S" R#L"-8SL4bbe)rr4+V[rdCciLDJ!H)%XJ,[rdFL#`J@8%SLjJ$NU!C`SL#4,B8i" QqL*"eqlrp0LZrr5@V[rd)#lrp0'U!"iJ,[rdNDS!)NUU!#*R$#!-CJMTkJ&#!!4 Q*%+R,`SLEIk!)&P1N!!UE[r`,J"+KfF1&A`!!3!03US!)RB!B!T+JfF'5S9Q!2m f5S0R@NU&CPBSDJ!@+LS!'L9,!"BP3`!D)%[4`b9)!"j)E[rd,`SLEIk!)&P1N!! UE[r`5S"R#K9m!!%!$8+U!#,BV[rd*8`!&L9&!"S[#L*YrS3J@8k3!#TZrr"#UJ! LkHS"3J!%93"R"%+U!#)J"0#'8i"-4J!!60mFq%jH6R3!%#T46PErq%MR'#3NEJ! ))!TQ"($rB&VTkJ(#!!4Q"(!!B%i[#L*YrQ!J@8k3!#TZrr3Q!#m5)QS!2L"C6T! !+Qlrp#J!!QVqI`!%3T))+J!%!!KR%#mU!"BLEIkB)&P1N!!UE[rd5S0Q"%U%C`4 `rf!#F!"-h`3B6Pj1G!!%+P&19[ri51F3*#4Z!!JJ#QB3)QhqM#"C6T!!+Qlrp'! !!+"++J!0CJMTkJ(#!!4Q"R$rB!!!M1RU!!-!#!`!!!0P$!)U!"m!#!!U!%!!#1R U!!-!#&8!CJ4#UJ!LkHS!!`!)8`"R#J)U!"m!#(!!B&$TkJ(#!!46J'B5,`SLEIj !)&P1N!!UE[rd*J"J!RB!3UF[#L*YrS!J@8k3!#TZrr4+J'F1&A`!!3!03US!)R$ rB"!#+J!I!!JP3`!53US!)R!!60m%#%jH6R3!"#T40#m!"R)!)'hqA'!1Y&"Q"#! )B!j5JA")dF"`)l+!EHa`!%jd!!3U88j@rm4)ja!m*Li!##KZ!!`NEJ!3*Qi!&%+ Zrp)p3rrH,8crjLe5rqT#E[rb)!YR*%KZrmBLEIc3)&P1N!!UE[r!B!SL5b"C6T! !+Qlr`%TZrpCZm'!35'lraL*Yr1!J@8k3!#TZrm!NV[rZ$'lrfIr@CJa+NQF%F!" J%(!#B!a+E[r@CJ4`!'!#F!&-ha`)6Pj1G!!3+P&19[r%51F32#BZ!!JSEJ!-*'i !%#CZ!"4#V[r5282rhLe-rqBY8[rU3QlrmL!,Cb4)E[r')QhpA#"C6T!!+Qlr`'! +)NXJ@8k3!#TZrm"+E[r@E["J%%KZrmBLEIfJ)&P1N!!UE[r!*+lrlNTZrpCQ"(! !B!*`!8cI(!K1ANjd!"!U88j@rm4)ja`d+Li!##CZ!!`S,J!3*'i!&%+Zrp)p4Ir H)!4R$P@!C`*J%$em!!,rmQ!12A`!!IrbB!C`!@!!!4!Y8rrd)!TR*%KZrmBLEIf %)&P1N!!UE[r!B!SL5L"C6T!!+Qlr`%TZrpCZm'!35'lraL*YrCJJ@8k3!#TZrm! J%j!!V[rd*J"+J'm!!,BJ,[rdd)-Y32rL)!TR*%KZrmBLEIe!)&P1N!!UE[r!B!S L5L"C6T!!+Qlr`%TZrpCZm'!35'lraL*Yr2JJ@8k3!#TZrm"+E[r@CJ4`!'!#F!& +J'CL3UlrdMe&rpiJ"'F19B"R!Q!32A`!![rbB!`pI!!"rr*J"(!"B%`Y8rrd)!T R*%KZrmBLEIf%)&P1N!!UE[r!B!SL5L"C6T!!+Qlr`%TZrpCZm'!35'lraL*YrCJ J@8k3!#TZrm!QV[rd5QlreQB%F!"J!R!"60m-1%jH6R3!%#T46PErI%MR%#3Q,J! ),`0Krrrrr9SN3$e$rjC)E[pq)Qhp8#"C6T!!+QlrH$B!CLSJ#QFQ)%T3L#e)rj! !2@S!![q8,@S!"2qZ5'lrIL*YrA3J@8k3!#TZrhJf!#!+C`*#8NT$CJ4`!'!#F!& -h`3)6Pj1G!!%+P%LE`!%kHN4`J!%$!%!!@F'$!%!!QB'5LN!$@F-)'hq5(!M))" `rf!dkHN!!`!)CJBJ+3!5B#BJD3!HNHN!&L)T!#l5L1RT!!-!#!`!!!0P#ZRT!!- !#&@!NS!J!8jd!!3U88j@rrJ[$5mZ!!JLEIj%)&P1N!!UE[rd6Pj1G!!%+P&19[r i51FB0#4Z!!JQ,J!3kHT"`J!%$!3!!@B'5LS!$@F1)'hq5(!M))"`rf!!!4ETkJ! $!!K6!'BX3UF[#L*YrS!J@8k3!#TZrr4+J'FB&A`!!3!03US!)L"YrNK`)b#!F2p J!!$JF!'fJ'B@GJ![#L*YrN3J@8k3!#TZrr3S!0QZ!!a`!VD!CfETkJ#$!!4A!'G FkHS!!`!)93"R#ZRU!!-!#&F!CNJJ,J!-X+S!%Q3+)#i!$,#U!#jN#!)U!"m!#'! b)#i!$*!!UJ!Z)'S!&Y(!*8J!(L!U!"+3!+i!$#9!!#)#+J!I!!J!+J"!!!KJ"J) U!"m!#1RU!!-!#'C'*QS!-L!,Cc![+J"#,`0)EJ!-,a)L5b"C6T!!+Qlrp%U!CaB 9I!!"!!e#UJ!L)'hq5(!M))"`rf!33LS!$#9Z!!`!%N+U!#*`!%cI$"K1ANjd!!` U88j@rrK)ja`N*'i!##SZ!!`S,J!3*J8["#m$,`SLEIim)&P1N!!UE[rd60m%1%j H6R3!$#T46PErq%MR'#3NEJ!)+#i!$#BZ!"![!bm%,`SLEIiS)&P1N!!UE[rd)!T -h`3B6Pj1G!!-+P%[#bC[!!JN,`!-)#m!%")#)NY5J'!-XKPQ##"*8iJJ#'!'8i" Qm(!!*Pp1G!!-+P%LE`!%*#m!##![!!`5!L"*dF"5J'!)XL"Q"#!)B!C6J'EdF!" 1G!!-+P&)ja`!)'m!%#J[!"3U,`!BGJ!@"(!JZS"PAR!$+!K%K-L!5S4R#*U%%-0 6K'Ek5S0R&L!$FK$MU#)$G"MPUB+!)!2KL)#"KS!S"HU-5S4R&#$$)--J`b$$)-- J`b$$)-06K'EXH"r)KH5-5S4R"L$$8i4QqR!$bS"+K@F'%-06K@Ek60m!1%jd!!` U85"YrU`JVIk3!%je+P%[#b*[!!JQ58+V!!3J5eL)*dJ!$#G)!!JQL#0YrK3!%#0 YrK!!�m!!#!!!!B3UN!(%+T!#"#U3!N*Pp1G!!%+P&19[ri51FF2#4Z!!JQ,J! -+%T+JfF'F2LfJ'-'F!"J!!$D@)0`r#)$9S(#J#B"YUS!''9!5US!%'Fk5US!('B dH"$BJbm+,`3LDJ!3)&P1N!!UE[rd+J![#Lm%,`9Kr`!!!9JQ3#!,CJC`!'!!!)j fr-D6B(*`%,D!C!*f%#m$,`aKr`!!!I)Q3#!,C``[#bm-BIm!!!'bB%"+UJ!3Cc+ fUJ!BBJKi%0LU!"KJ"(J3f)-[#Lm%)QS!%#"C6T!!+Qlrp#S!,`S["#m&BIm!!!$ X*N!J#fB%F!"J)Lm$,`X[$'(r!!!"`LB!F!%L%i+!*S&`!S'c1!!J5eL))!K-ha` i6Pj1G!!)+P&19[ri51FB2#KZ!!JQEJ!-+!`J#fF!!)iN5eQ+F2iL%X+!*)&fr-D 5*NVA`h$p)K2#J#D"*d2rr#m+,`4Kr`!!!ISN3(EmaT)Q5YI$5U`!&'G)F!,!NQC #5UVrr'`m5T0X1#C+8BYCLdU6C`SJ8b&V!!3!"'!'+@X!"!!J5UX!"'F')'X!"## 6,``[#b*X!"3J@8k3!#TZrr4J#Lm+,`4Kr`!!!(*-ha`B6Pj1G!!)+P&)j`!B*#m !$#)[!"!SE`!85S*Q"(!!B%!L3R!3NS!Q58UX!#"R"L"X!#!JLd+6*f`!)!!%+8X !)&#*F2`LJ&L*)S%J!9Q!dm!LJ9L*F2`LJ#"#8)KBL#!)60mB!%jd!!`U85m,)Qm !##C[!!`J59L)*dJ!"#GT!!`!##"T!!`K5`!%)dX!$#CI6R3!##T4,`XQE`!))Qm !$,26CJBJ8bDS!!JJD3!))@N!"!!%)'N!"#&T!!J!##CI6R3!##T4,``LE`!))Lm !$#"4+%K`r-#3!,#"C3BLL#!)B!SJD!!)XFaQkR!!+&p1G!!)+P&)jami*Qm!+#B [!#a`r#)$9S(#J#B"+K0qr-k&+!HBJb4,eFFX%NU'E4a`!F#'CKB[#Lm[!#KKrj! %DRlmcSEBKpA(B!T`%,L!C!3J"f"#F!2!KB#$*S!S5pR$F!(!K@B%+82rr(!"`)9 +J'F%F!*J!R!!J)3SJ#9%rra`r5)5`S!NJ5m-,bm!+'(rrrrqkL!$60mFq%jd!!` U88MR($JSE`!F*'m!)(Mmb*)Q5YI%+K0fr-D&5S9Y'R!"`)9Q&#m,,`aKrrrrrYc BJh!$`*+!K#5!*LVrr(!#`**Q"%U$E!BPK%MmB"iQ5TI$,`X[$'(rrrrqX0D%F!2 !Ni#$*S!RJcMm*%XJ#NcI($K1G!!)+P&19[ri,`d[,J!))Qhpa#"C6T!!+Qlrp%j H6R3!##T46PErq#m0,bi!##*Yr4`J@8k3!#TZrr41ANjd!!JU88MR'$K2lrr`*Lm !+#K[!#`QE`!`*%-II!!"!!*#,`!$3Lm!"%)[!!9#,`!'3Um!#%+[!!a5LK!55F! Q!()PX)&Q("p$!!G"l`!#3p-Lf#,B)YJbf#"+8SJJ#'!!!U*i!5!$")!!!!!JCb" AJ'FX8B"R%&@!C`CAJ'FSB$4#,`!#B$!II!!"!!0J+!`[!!%!!fFJ(h`!!J!$B"J II!!"!!9J%%S[!!*R#Kpm!!)!!Q!#H!"+K'F)8SS@%NR$B+"`+VD!CMjBP#"8,fM rr!!)5UMrr'`13Lm!!L![!!K%J#p!!!K5LKB55F0J+R!+6#m)!!!)FY$5Jp+!,d% !#&++&K**`h!!%!-JEIl`%$!)!()3`)&QeJb[!!!"r3!)EaiII!$r!!G"l`!#3p- Lf#,B)YJbf#"+8SJJ#'!!!F4`,VD!CPSII!!"!!45LK!55F!Q!()UX)&Q0&L8)&3 [D2rm!!a+U2rmE!4#,`!%8SS@%NR$B#T`#N`[#!!!$(,3dS25J#p"!!a5LKB55F0 `!"!$)'hqm"!`#!"b%-#"CYCi!3b$!!!!D'F5$)-!!!"XCa)-J`!!!%aR%Q!B(h` !!3!'B")II!!#!!CJ#Kpm!!3!"Q!#H!"+K'F'8SS@%NR$(d-!"b!$")!!!!"&C`! !L&@!ChB%J!!!!"&R2&'!9i"R!!#d8i"R-&1!CfT6J'GQ8i"R9P@!Cb"EJ'F!!,a 6J'F@8i"RGPH!C`!!S&@!C`KAJ'F%B!!!XJ`[!!3!"QB'(h`!!`!'5Lm!"'B+F!% [3!!-B!!!QJ`[!!)!!QB!!*!!(h`!!3!#B!!!KNU[!!aQ"R!",d!!$!`[!!%!"QF )$#m!!J!'CJJII!$r!!GJB%S[!!4Q@R!',d!!$'"5(h`!!J!'(h`!!3!&(h`!H!! (F!J[3!!-B$K+,`!%CJC+,`!'Cb`II!$r!!GJ*%S[!!CR(Kpm!2m!"f!@$#m!"!! 'CJiII!!$!!CJ"Kpm!2m!"d([!!*$db,B)YJLf$,B)%T5L#!)6qm!%%cI("K1G!! -+P&)jam`+#m!)#C[!#4q!#S%*%Y#)R`!5S4Q'NU[!$*Q&%S[!#YR#!`[!'m!,@F ')!TJ!!%JF!!3,`!Y")!!!!"BCc44J&Q!Ca*EJ'F1AB"R&Pf!CaTAJ'FHB#*f#NU %E"a%KAi"B"Cf#%)[!#PJ$RB+3Lm!+@!'GK"#,`!T)!9-3`!"+!&-3e!&F!UiJ'` 'F$$BJ'!@F!UBJ!`[!(J!,@B'F'(BJ'!%F%(BJ"8%8SC+K@E+F!LfJ'B55Lm!+fF -$")!-'F'&6`!-&+'$#m!!J!SCL3[E`!Z!$*+KfB'5Lm!+@F%8km!-R!3YS"Q#NS [!#YR"&@[!$)J5j(+)#m!-Y#)$)!!!!(pE`T`!'"'&6`!-&+'[+m!-QhdF"#fJ'B 15Lm!+fF)&5m!,48m!$"+KfF'&6`!,@!D$#m!!3!TCJB92!!VB!`-,`!#!#PQ""8 m!#!J#NcI$2K1G!!B+P&)ja``6qrrk#C[!$Kk!#p[!$!!##p[!$3!$#4,3L*i!%+ R3UF[,`!m,bm!2'(rrrrQC%T!CKT+V`"'CK4+,`!rC`J-,`"[!%&R"L!+B!!"hR! !%#m!335!!!!!@'Gd8B"CJ'F5@i"R$Pf!Cd*GJ'G39i"RAQ"X3Um!%#pm!!!!#J! 83UG#Tbm[!$`[,`!mBIrrrqBX5N"X5Lm[!!`[,`!-5'm!%'(rrrrNBRS"B$4#V`! 3,h`!!!!)!"4#,`!pB#*#V`!3,h`!!!!+!"4#,`!pB""#V`!3,h`!!!!3!"4#,`! p,bm!&#m[!"3[,`!8,bm!&%K[!""KrrrrjA3Q+!!%,bm!&#m[!"3[,`!8,bm!&%K [!"KKrrrrj6"`#VD!E!C`-0D!B"C`#TD!$#m!H!""CJC`BGD!B!4`3GD!&305K%+ R3UF[,`!8,bm!&'(rrrrP4%T!CSa)H!!)3UF[,`!F,bm!('(rrrrP,%T!CK*+,`! rC``-%J!`C`B92!!`8S3-,`!#!$aQ0Lp[!%)!4NU&CJC+,`!pC`46V`"'5(J!%%+ R,bm!(#m[!"aKrrrrj1C+3'B+5Lm!2fF%9Dm!4L",NFSJ,`"'d)J-J!!!!Ie[#R! !B&J92!!`8S5iV`"'EI4)H!!33UF[,`!F,bm!('(rrrrNSNT!CJj+,`!rC`J9,`" "&6`!-%U&C`B92!!YB"S-,`!"!$eQ"K8m!#YJ$!`[!!)!2@B%&6`!)#!+6qm!'%c I$$K1G!!F+P&)ja`i*'m!(#B[!#"+Jf`@3K*#DJ!#&A`!!3!%&A`!-!!&B!!!VR! !%#S!",D!E!!!SLC+@S[A`e+,'#0*a(,3f)%-"!!&CLa`!"!U!!3S5PU-f-"6M,R ,B`B-&!!`Cr5jbfB+%#[rrh)"`)&J!R!"+J"J1J`%!!9H`%3!5F!U!'!X'#0*a(, 3f)(BK3`%!!PH`%3!5F!U!'B%5J4Q"&1$B!`3"%R!FM$3J4D!B!4+JfE35S9R%P* U!!)9I!!"!!39I!!a!!9J#NU$C`$r4"9$!!4-ha`i6R3!##T46PEra%MR($3QEJ! 8$+i!!!(p!#*["R!!B!!$`%)ZrmipI!!Jrp")E[r5,bi!%#mZ!!`[,J!)5'lrcL* YrF`J@8k3!#TZrm"`!"!ZrpC&l[r5@SV8`'!)8blreP*Zrp3-,J!"rpCM"J`L!$" RkR!!%#lre`5!!!!!-'F1")!!!!!CCa"EJ'G3B'4#,[r53Qlre'"D3Ulra%+ZrmK #E[r-5'lra%KZ!!Jr2!!)UHYX%L4,@iSJ5L*YrJ`J#"$CC[aJ%#4,@BSJ5L*YrJJ J#"$CC[`J#Q!!!`BN5eQ+)%SLEIi%)!J3f@Em)!TJ!!,`F!!3,[r@8i$4E[r8*%Y #)R!!%#i!(35!!!!!4@F!!,49J'FB")!!!!!HC`!!TP1!C`!"RP1!C`4J!!+bF!! 3,[r@X+i!)Qm1,bi!)NKZrp*KrrrrrHB-E[rmrp4Y$$!Zrp4)`,#Z!#*Y-%SZ!"Y R"P1Z!#*J$(!!%#lreP1!,8!!)J`Z!'F!(@B)(A`!C3!GB%!GI!"&!"eJ1%SZ!"Y R%$!Zrp4)`&+!NDi!)Q!!!5)`,[r85-"5J()!%LlreT+!,8%!)NU"E!!"#%+Z!#* J!!%!)#i!)P+!FJ!5,[r@XS"[%L!Z!#*5J#m!5'lrdQ(rrrrp5$JZrp4)a(SV5S4 X"%5%HLef!'!D)!4-I!J"!!!!#R!`dS!9!8am5!3!!!!+8S0+K'ELF!+fJ'hF&38 9,J!G)%Z4bL!Z!#,3L!b!!!!"r@m'F!"J!!'Q)#i!)P+!FJ!5,[r@XS"X'(!!%#l reLJZ!#*8K*L!B!392!!`8i4Qq(J!'#lreR!!%!4(l[r5@S[@`'!#&506K'Ek5Ui !)QB'5Li!'fF%&6`!,K8ZrpG+,[r5C`J92!!YB!!"3!`Z!!%!'@B)&6`!+f!!!6! -,J!#!"PQ!!%Q&6`!)'!!!4j`!"!ZrpBb,[r85-&%JG+!8i%S!8U"E!*i!,LZ!#* [0#!%N!#Z!#*b!")ZrpD5J#m"5'lrdQ(rrrrm-R!!%#lreM)Zrp4)`85"dS"6J5J "5S&X!RJ!-#lre%M!8S!U!%U!E!*k!#!&d)3-J!!!!Ie["R!!B!!!UR!!%#lreNI Zrp*DLpE!GJ"J"K8m!$"5Jb!Z!#+3!)5fJ'h`GJ"J""8M8S1fK'`5F!!3,[r@YS" YlQ!'&6`!-&+$YS4YpNUZ!#*Q"NSZ!"YR""8m!#j+K@FNGJ"J"K8m!$"5Jh!!%#l reL)&NS#fJ@hXB!39)e+$YS9Yq'!%&6`!-%SZrp*R"K8m!#eJ'J`Z!!%!'@B'&6` !+f!-$#i!!J!CCJ392!!J)!T-h``i6Pj1G!!J+P&19[h-51FI2#CZ!!JNEJ!-IL! S5RJ!B!!&%%Ki!#8[$#*YrH`J@8k3!#TZrFJX!'Bf)%a`re+!5KKQqLB!f)0+JfF !"1`[#dKi!!%[!bm-)QhqD#"C6T!!+Qlpb%U!CJ!%d($rB!!%c#"'NF`Q#0L$5S0 R)#m,5(J!!5m$,``LEIjS)&P1N!!UE[h)5S"Q"R$rB!!%S#K'5'lrkNKZ!"![$'( rrrrcr#K!F!!3,[r[")!!!!!PC`!$&J5!!!!!)'F!!ET9J'F!!E3%J!!!!"&R!!$ m8B"AJ'F!!Z"6J'G#8i"R!!'B8i"R!!'58i"R!!'-9B"R,&Z!C`!#I&1!C`!!cPQ !C`!"rP@!C`!!`PH!C`!![!5!!!!!KfF!!VjJ!!+k$#i!![rZCJjBVJ!3)'i!%#S SrraJ+J`Z!!2rlQB@8+i!%#"Z!"!YD2rirH)YD2rmrHCJ$&LZ!"!JEJ!3+LMrr!` Z!!(rlQB%-%8U#!`Z!!2rlQBS3HlrqLmJ,b![)#mJ5'lrkLmZrHB[,[hLBIrrrrG i*%"+J'BNB!!#2N(ZrrS[)#mJ,b![)%KZrqS["@(rrrreqL4!5S"R!!)H3HlpkN( S!Iq4bLB)B!!#4J`Z!!,rlQB1@+i!%#"Z!"!U+2rmB#S-,J!$rqjQ&P#Z!"!JEJ! 3,@Mrq2hL,@Mrr2hQB!aBVJ!3)'i!%#SSrr`-,J!"rqjQ"R!!-!8U!!`Z!!2rlQB S3HlrqLmJ,b![)#mJ5'lrkLmZrHB[,[hLBIrrrrE+*%"+J'BNB!!"N!""l[rk,b! [)#mJ,b")E[rU,`9Krrrrp8`N3%U!C`!"F%(ZrHT"k!(rNFSQ#'!!!CJ-,J!%rqj Q(R!+dDi!%#"Z!"!YD2rfrGJYD2rkrG`pD2rqrH"J+&#Z!"!JEJ!35'Mrq%KZrFi r2!J1UHXYE[h1rGJYE[h5rG`pE[h@rH""l[rk,b![)#mJ,b")E[rU,blpi#mZrG` [,[hBBIrrrrNf*%"+J'F!!1K"l[hU3HJ"rj(+*JKJ!!%3@+i!%#"Z!"!ND2rm)!T Q"#4YrJ"+,[rYCaaf!"BD5Llrl'F!!1UfV[rdE`!!iLBZrr4J!!$D5Llrl'FQ*Ll rp#m$3UF[#L*YrM!J@8k3!#TZrFJX!'F!!,JJ4T(+*JKJ!!#Z)%T`re+!5KKQqLB !B!!!RPLZ!"!JEJ!3*'Mrr(!!%#lrlQF38i"R%P1!Ca46J'F@B!!"P#5%B!!"MM5 %B!!"L#5%B!!"JLm%,`TKrrrrh$4J!!&d4HlpkPLZ!"!JEJ!3&+MrrhB"B%4&l[h U&,`!*AB"B$JJ4R$r8S"+''Ek*J$BJdU$Cb![#dKi!!%[!bm')QhqD#"C6T!!+Ql pb%U!CJC`rf!!!5SJ"'!!!53X!dSZrqTR!!#Q$#i!![rUCJ4`-'!#F#!H!!`5!#Y R#!`5!#eQ!!##$!F!-'Ck)#X!)P1V!#*+J'F3)'X!(P+V!"i3NR!!%"*J&#m,%"* *`#m!)QhqH#"C6T!!+Qlpb&+!CJC`rf!!!,a5LP1$B$SJ+`!L8kX!)NU!Ca!JD`! H8UX!(K#(F!!3"f!8,`X3"dR!,`!LEIji)&P1N!!UE[h)8S"Q"($rB(a5KVbZrr" Y`%U$Cai[#dKi!!%[!bm+)QhqD#"C6T!!+Qlpb%U!CJ4`rf"55LlrkQC#B$SJ+`! L8kX!)NU!Ca)JD`!H8UX!(K#m!#"`!(!JB")[#dKi!#!LEIji)&P1N!!UE[h)8S" Q"($rB"*5KVbZrr"Y`0L'5K4Q!2VZ)!4-haci6Pj1G!!-+P&19[q`51F32#4Z!!J SEJ!-*Qi!%%Ki!!&)H2rr,`T)E[qb)Qhpi#"C6T!!+QlrV#m,,`a)E[qb)Qhpr#" C6T!!+QlrV#B!5S0Y"%)b1!!J!dcI(!K1ANjd!!`U88j@rrJ[$8KZ!"![,J!-,bi !##*YrIJJ@8k3!#TZrr41ANje+P%[$#K[!!JJE`!-)#m!%#*))%a5J'!1%0PQ#Q! #3KK6J'EkB!46J'EZ)!`SAdjd!!`U88MR'$!QE`!8+#m!'#4,&J4J$,J$CJJJ5P1 ))!KJ%KJDC["+!fF%NFKJ"#"+8iJJ#%cI$"K1G!!)+P&)jaJ`*Qm!&#J[!"JN5jI ,&J4J#,J$CJ3Q5P1,'"TQp#!,C`3J#f!15J0R"*()B!3J5P1))!K-h``B6R3!##T 46PErq%MR'$3NEJ!)*Qi!$#JZ!"!Q,J!8,`3[#b"YrH3[%#m+)QhqP#"C6T!!+Ql rp1rU-!-!##m+)QhqK#"C6T!!+Qlrp(!!60m-'%jH6R3!%#T4F!*1G!!3+P&`!%j d!"!U8A!!6R3!"#T46PEr3%MR'!3S,J!)5S4Y#R!#Z)"Z"(!!B(T#E[pF286r@%+ Zre*)E[p!)Qhp1#"C6T!!+Qlr2$B!-!0)`'Bm2@lr9[q8286rPNKZrhiLEIe3)&P 1N!!UE[mm0J!`!dM!CKT#V[q3!$eZreErP%KZrhiLEIdJ)&P1N!!UE[mm-!0)`'F +-!0)`#"YrNJJJ%T$CJ4`!'!#F2p-h`!B6Pj1G!!%+P&2lrrd,fm!&!!#,fm!'!! '2fm!(!!+,bm!)%K[!!B[,`!B,aF[,`!),bm!%$mm!!ZTke"2@%p2l`!-6R3!&!J N!4q"K!)K!3%LK"J#)3%")S3B!L%"!5+!Z!)N!4q(k)B#!3X!$#)5&!)K!3-L%K3 @)L3i!L)N-!)L*#J))4-6)K%8!L%"!b)4&"BL*$J#)L3`!L)N+!JK%4-L%"3#)3% $)K!8&L)N1!)L*$!#)L3S!*&%))&r!C!*!T!&!C!5"!L3$c#3#JL3"k#3"S#3&!L 3"Q#3"N#3&!L3"!'!N!G!N"N)N!G!#*!'J)!)N!j!3!L3#i#3"%!)N!K!J!L3"%" !#*!&J*!,#)#3"!L3#J%N,8PZCJ)M5@jQ!501B8i$)Kh!!+Y3)L-)JJ*,)a!M'#- J)bJM-#-i#XJM3#0))e!M@#0J)fJ+aJV##Vi+Z#0`)hJMJ#1))j!!)jJMS#1S)l! MZ#2!)mJMd#2B%aJMi#2S)r!Mq"-F*!!N##33*"JN)"-8*%!N5#43*&JNB#4S*(! NH#5!*)J2l!rS$q32i#53!#5B#q!NS"q8*4JNU#5`*,JN`#6S!#BNm#6i*3!+c!Q i*3JR*4!%,NP38!%J-39SEh0dFbGcEf0VCA4ICACPER4ID'&ZC'aPFMSJFfpMDf9 d)'j[G#"TEL"eFf@UrJF,)YIe!5%3!5%%!L)Ni!JK2`%J-408CA0d9(*KBfXJ9A0 PFL"*EQC[4A*bEh)J*@3J4f9dG'PZCb"6HA-J4@jfDA*[ER-")%T&ERC@CA)J*@3 JE@&MD&4jF'8J*@3JFhPc9Q9b)#9N)("bEf-J*@3J4P"9)#9N)%0[E'pb883J*@3 JDf*N)#9N)'&d9Q9bFb!PC!)S*A-k*A-k*A-#*8eKBdp6!51UrJF-)58")4!")33 #)L6)!#SL2c`")`DTm!)Lrrd5)L,3JJ+""NVd)Y"+9#,35N`Ld%T%)Y"+2#,35HS Ld%QU)Y"*F#,356iLd%ND)Y")`#,33i3Ld$J#)Y!hj#,306BLd$3`)Y!clL,3-q) Ld$0@)Y!c,#,3-[`Ld$,))Y!bP#,3-83Ld$%Q)Y!`a#,3-&!Ld#lf)Y!ZGL,3,H) Ld#c`)Y!XGL,3+K!Ld#S+)Y!U"#,3+I`Ld#Qi)Y!TB#,3*jBLd#D5)Y!Q"#,3*G` Ld#@N)Y!PAL,3*2`Ld#3q)Y!Mp#,3)iSLd#&X)Y!K1#,3)3)Ld#"m)Y!J@#,3)$i Ld#!H)Y!Ir#,3(l`Ld"mX)Y!E%L,3&C!!)Y!1jL,3#(`Ld!K8)Y!%JL,3!i)Ld## B5c3#D!(J%L%"!5%-"#&H"b5+!3--!b-""J%")4`$*3&S!@%-!bB"r2rrh6J#)J, %!5)"%!-P!i)"!3J$)`5#!B%$"`J!!!63!!J!!!8i!3`!!!9`!3J!!#8&T!%K#!- P"I)"!3J$*3EH!3%)!b8(DJ&K#!-L#&3'*3Km!5!)!b8)[!&K4!-M#F!"!5&B!b8 +A!%M4!-P#e!")%J$*3['!3%X!b)-2JBP$&3"!3J$)JcJ!5)"#!-L$8!'*3f-!5! )!b80kJ%R#!-P$ZB")!J$)Jmd!5,M#!-L%$`")Q%-!b84#J(r#!-P%bi")3J$)a3 -!3%K#!-M&&S"!5%)!bB8T2rrh6i#*K8DrrrG4!)P&C!!!H%F!bB@`[rrh8S#*4F i!H!F!b8Bj!%J#!-M'GB"!5%F!b8DKJ%J$!-Q'a,rrpe3!L)GiJBL(LS#)3J$*4j L!H-)!b)Hj!%L!3J$*4mX!5-)!b-I[!%")3J$)Krm"L-JV!%")3J$)b$D!3%K#!- P)3)")!J$)L%i"L)KcS%$"[mB!!!Ld#!!!!!LpL!!!!!M(![rN!3!N!F"!!!Nf!! !!!%!!#63!!!!!3!!!%!!!!!"!!!"A!!!!C3!!!8)!!!!!3!!!!3!N!p!!*!)!J! !$3)!!"`#!!!Q!J!!-J)!!$S#!!"'!J!!6J)!!&N#!!"P!J!!F!)!!))#!!#5!J! !R3)!!+S#!!#k!J!!a!)!!-X#!!$D!J!!i!)!!1S#!!$i!J!""J)!!4%#!!%J!J! "-J)!!8X#!!&B!J!"C!)!!AB#!!'(!J!"N`)!!D%#!!'U!J!"[`)!!FF#!!(6!J! "f`)!!HJ#!!(e!J!#!`)!!JS#!!)D!J!#+3)!!M3#!!*#!J!#8!)!!Pm#!!*[!J! #IJ)!!SF#!!+5!J!#QJ)!!US#!!+i!J!#aJ)!!Y)#!!,K!J!#l!)!![N#!!-"!J! $$`)!!ad#!!-M!J!$,3!"!*!&(!#3"!4"S!!!2%)!!F1!)8)!S!!!JN)!!F1!)8) !S!!!b%)!!F1J!"qB5Mp#6!q"S!!L&%)!J1p'38)!5@jdCA*QB@0P6'PL!%CbB@e P8QpeEQ45C@0d!%GPG&G%5@jQE`"33P*PB@4"FhPZB`"0EhCP5%KT!&0jFd9ZGQP bEfjc!%K9EQa[BfX!8%*5C@&N8hPZB`"0Ef4KE%4TB@a[C`"2F'9Z4(*TGQ9b!%0 KE'a9EQPfCA*cB@a3FQpM!&"#5%GPG&C*EQC[8hPZB`"9Ff95CA0'D@aP!&"#8f9 d48p'8hPZB`"33NK(CA4'5@jQEe0jEQ-!6Q9h5'&ZC'aP!(!bBh0dFJ"%CA4KBfK 5CA0[GA*MC3"%C@aKH3"8D@0V3fpeER3!4f9d4'PKE'pR5A4PE3")D@aTG'9$Efj dFQpX!%4TFh"[Ff93G()!8%*'E(9cD&C[E&0jEQ-!4f9d4'PKE'pR5A4PE94PH(3 !4'PcF'pcC9*[GA4TEQ9%CA0MFQP`G'pb!%GPG%jPGd4TB@a[C`""C'45CA0[GA* MC3"6CA4%D@&XEfG*G'9Y9'9iG!"33NGPG%C$3NPZCQp6H@jM!%GPG&*PFfpeFQ0 P!&"#8f9d48p'3A0jEQ-!4'9LG@G6G()!6Q9h8QpeG'PZC84PFf0bDA"dEh)!8f9 d8'pbG!"33N0XEh0P8hPZB`"(CA43Eh*d!%0XEh0P8Q9c4QPXC3"33PGbDA4P3A0 jEQ-!8%*)4f9d9QpX8hPZB`"M-R"cG()!3fKKEQGPC&*PFfpeFQ0P!&"#3fpZG(* [E%&cH@jM!&0jFh4PE94KFfX!8%*)4'9XCA4P8hPZB`"%DA0`Eh0P4'PKE'pR!%G PG%PZC&*PFfpeFQ0P!&*PE'9KFf95CA0[GA*MC3"33P0PG%C3Eh0"FhPZB`"5CA0 &FR*[FJ"'D@jN4QpXC'9b!%GPFh4KE(3!6NGPG&4bBA""C'4bCA0c!&"#8f9d4P" [Fe0jEQ-!8%*$EfjdFQpX8hPZB`"33PGbDA4P8hPZB`"'8h"2F'9Z8Q9c4QPXC3" $GA*5CA0'D@aP!%K2F'9Z8Q9c4QPXC3"3C@j6DATP!&GbDA4P8Q9cEh9bBf8!4'P cF'pcC8KKEQ4XC3")6'pMD`"*ER0PG&*PBh3!6Q9h8(4b!%GPG%*64%eKBdp64A* bEh*(E(9P!%GPG%*64%eKBdp64A*bEh)!G'9cG&pdFQ&MDdGXG@8!G'9cG&pdFQ& MD`!!#!!!!!J!!J!8a+F!%$dd!!jkQJ!+TjN"!!-d!!!LX!!"!J!$53!!*-J!!3% !!eS!!#)!!!%#!!0T!!!Ni!!"!*!)5Qpj)A"PCQC`Gh"M!!!!!E(413S!N!d$!!) !N!6rN!3!N!CR+!!!CbJ!!'FS!!!'!!!%"!$rN!3!N!BP&!!!%2%!!!3G!!"Y-!) ""!$rN!3!N!i&H!!!!)!%"!3!N!ArN!3!N!F"!!!#H!!!!!%!!!*`!!!!!J!!!%) !!!!"!!!"I!!!!DJ!!!8i!!!!!3!!!!3!N!p"!*!,$3#3#`%!!!""!*!%!J!!&3) !!#3#!!!Z!J!!1J)!!%)#!!"1!J!!9J)!!'%#!!"Y!J!!H!)!!)S#!!#D!J!!T3) !!,)#!!$#!J!!c!)!!0-#!!$L!J!!k!)!!2)#!!%!!J!"$J)!!4N#!!%S!J!"1J) !!9-#!!&J!J!"E!)!!Ai#!!'2!J!"Q`)!!DN#!!'b!J!"a`)!!Fm#!!(E!J!"i`) !!I!#!!(q!J!##`)!!KN#!!)J!J!#-!)!!Mm#!!*+!J!#@!)!!QB#!!*e!J!#K3) !!T3#!!+G!J!#U!)!!V!#!!,!!J!#cJ)!!Y`#!!,S!J!#p`)!!`3#!!-2!J!$&`) !!b8#!!-V!J!$13)!!d-#!!0+!!%!N!89!*!%5N&#&%!"3J&!!8)IJ&0'&35"#S% #!3""!8-"`3""!8-"`3""!81+!d#'!!"*ER4PFQCKBf9-D@)!6@&dD%aTBJ"'FQ& YC9*[G@jN8Q9MG!"(CA4A4%PZCQm!8%*5C@&N3A0jEQ-!6@pfC8K)D3"6HA0&ERC TFQpZF`")9@jXEf0V!&"#8Q9KC&0jEQ-!6@pNB@a%D@&XEfF!6h"PEN4bDACPFJ" $B@aX9@jTGQ9bFf&X8(*[B`"33NK(CA4@5@jQEe0jEQ-!9A0P8Q9c4QPXC3"33P0 PG%924P0jEQ-!8%*)4f9d4NPZCQp6H@jM!%jPGdKKEQ4XC3"`-Q0cG()!4'9dB@0 S8Q9cEh9bBf8!4'9XBAN!9'PMDd0[G@jd!%GPG%4TB@a[CdPdC@d!5'PXDA4P3fp ZG(*[E!"%DA0`Eh0P8(4b!&"#4QaeFfK@Efa6H@jM!%GPG%4TB@a[CdPdC@e8CAK d!%4TFh"[Ff95Eh9dD@jP4'9cBh*TF(4[FJ"(CA41CAG%D@&XEfF!3@4N8Q9cEh9 bBf8!8f9d4'PKE'pR5A4PE94PH(3!8%*(CA4'3d**EQC[8hPZB`"(CA45CA0[GA* MC3"33P0PG%924N&cH@jM!%4PBR9R8h4b!%jPGe*[GA4TEQ9%CA0MFQP`G'pb!&0 PG&"[FR3!8%*$E'pcC90jEQ-!4f9d8'pbG!"$E'pcC9*PFdCTE'8!3Qa[BfY0EhC P4'&dB3"33PGbDA4P3A0jEQ-!8%*)4f9d9QpX8hPZB`"M-R"cG()!3fKKEQGPC&* PFfpeFQ0P!&"#3fpZG(*[E%&cH@jM!&0jFh4PE94KFfX!8%*)4'9XCA4P8hPZB`" %DA0`Eh0P4'PKE'pR!%GPG%PZC&*PFfpeFQ0P!&*PE'9KFf95CA0[GA*MC3"33P0 PG%C3Eh0"FhPZB`"5CA0&FR*[FJ"'D@jN4QpXC'9b!%GPFh4KE(3!6NGPG&4bBA" "C'4bCA0c!&"#8f9d4P"[Fe0jEQ-!8%*$EfjdFQpX8hPZB`"33PGbDA4P8hPZB`" '8h"2F'9Z8Q9c4QPXC3")6h"PEP*PFdCTE'8!3h9b8Q9c4QPXC3"3C@j6DATP!&G bDA4P8Q9cEh9bBf8!5%a[BfX!4'PcF'pcC8KKEQ4XC3"*ER0PG&*PBh3!6Q9h8(4 b!'jeE6*NC@-!4f9d3P0%6@&M6e0&FR*[FNGPG%*64%eKBdp64A*bEh*(E(9PG'9 cG&pdFQ&MDh4PFh4IG(*KBfY(E(9P!!!!#!!!!!J!!J!3263!&-5R!!URQ3!1HTS #!!05!!!#J!!"!3!$BJ!!!pJ!!3)!!hB!!!*S!!%"!!1!!!!$,!!"!*!)I!J#TT! !!3!)P#(r`$JK!%#!!3!)I!J$TNk!!#"m#!+QNq(rr*!!!3!)P#(r`$aJ!!%iBkT Z1)!!!8J!Ab'!33!8I(mEH$aJ!!%iBkKZ1)!!!8J!A`Q!33!8I!2i3%##!!`iB!) !5!!!#$KJ"!#!!3")1#%!3(`)!kD$iIrm6S!!)&4N"5P!JJ!-1'!!!%k!!#!iB!! "6S!!)(`)!UD6iIrmNm(rq*1Krr53!!%!#*3Krl"mIaYiIq2lH%[rrmPmIKYiIm- (G#`$!!&!JJ!J5rrr8AaM"c4Ar`9qIq3(0(`%'!""J!!)1q#SRhrMqhKra20i5!" HDB""!"4mI4Yi2'!!!6KMU*miJ!!"5!"H8B""!"4m!qK!I+!!*P5P(rjSS`!"J!% !@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(rS(a q'hKmRb0i1'!!!6L"!$a)!&iTJ%%!&+KK!%Tra20iIqAlH$M"!$K)!&iTJ%%!&(a M"c9"JJ!81'!!!,"q!!!iJ!!!N!#I!!#!!3"S1#%!B(`)!kD$iIrmJm(rq%k!!#" m#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq`I(dEH(bH)hJli!!!1'#KV8[rrX&8B`B r3B)!*$aJCQmiBfaN1)%!1%J!AB'!33!8I'-(08##!!Jli!!"9q-'2d##!"4rSqY iIm6cH%[rrbP)!!!m1'#!!$b!Bh3iK(*X1+!!!(qQkhKrar0i5!"GKB""!"4mB`F e3B)!&$L!!!#`R3!!1+!!!*!![J!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S! !)(`)!UDrBIrXN!!"!!L8)Ii`I(XEH(bF)hKm[5YiI0icH$KJ!!#3!'%"4$L"!$L 3!)%"5V1K!8k6`3&S1+!!!E#K!94)!!"mJ-%"@(`'f%"!JJ"JJ1%"A(`(i%"!JJ" 8Ik2VH(r%mhJiS3!i1-!!!8J!A2@!33!8I(mEH$aJC'iiBh*`1)!!!8J!A2@!33! 8+!-!!%##!"4rirYi5!"EmB""!"4)!!!-Iq2lH%J!!#bT!3&813J!!E%"!956`3& S1'%"1%J!A0'!33!8I'-(08'#rhJiB2rrJ!%"f$JK!G"m#!1QZf(rl%k!!#"m#!+ QNq(rr*!!!3!)P#(rX$KK!$`iJ3!i5rrq36aJBf3iBf9f2)"kG$L%Bh#SS3!mJ-% !1%[rrZ9mIaYiIq-(0#`$rrp"JJ!-Iq2lH%J!!)JiB3!m1)%!1%[rrBdmB'0N1'0 PGMb!EA3iK'0`U+%!2)$"!$K,rrkPI(mEH(rN"c3X"2rr3B)!$(rMqhK)!!")1'% !2$L"!$K,rrh"2'"MC$KMCABmJ'ed1)4MF+LK!$b!`3!i5rrqCAar'hKrj3Fd,!A rrd'#!!arirYi5!!!#$KJrrq!!3"B1#%!8(`)!kD$iIrm6S!!)(`)!UD6iIrmNm( rq*!!!3!)P#(r`*!!B3"BJ')"p#J$!!""JJ!-1'!!!%J!!-a,rrlYI(mEH$aJC'i iBh*`1)!!!8J!@fQ!33!8N!"L!IL!JJ(i+!3!!%##!"")!&SaJ%%!&%J!!*5!BJ( i5!"EFB""!"4rj3Fd,!Arrd'#!""rirYi5!"D1B""!"5!BJ(i5!"ECB""!"5!BJ( i5!"DDB""!"5!`J(iJ-B!!*!!`J(dJ')"p$L!!q%iS!!"J-%!@%J!@df!33!8I(i EH(r("c9"JJ!NJ')"q%J!@df!33!8J')"q%J!@eQ!33!813!!!*%#!I4r`r0iJ!% !5$JK!%"m#!1QJq(rr)2"rrK1J!!JI!J#TT!!!3!)P#(r`*!!B3"BN!#"!&b3!+% !B*!!`3"NJ')"p#J$!!"!JJ!-1'$rj%J!!#b!BJ(d2)!!!6L%rq%iS!!$J-%!@)$ K!&b"!3"JJ5%!C%J!@Uf!33!8J!%!5$JK!%"m#!1Q6S!!)(`)!UD6iIrmNm(rq*! !!3!)P#(r`*!!B3"B1q)4r$[#%I5!B3"B1))3mB#L!Aa)!!-CB!!!!#`$!!""JJ! -1'!!!%J!!$b!BJ&mN!"q!!!iJ!!!N!#H!!3iSK$aN!#r!!!i`!!!N!$I!!3ii!! #N!$r!!Jj!!!%N4m!$*2I!""rirYiJ!%!5$JK!%"m#!1QJq(rr)2"rrK1J!!JI!J #TT2Krrb3!!%!#*3Krm!iBJ,i1))#$NJ!AI'!33!8I(m(0(rMqhL!!3")1#%!3(` )!kD$iIrm6S!!)(`)!UD3!!%!#*3Krm#!BJ))+!-!!%'#!"5"JJ))5!"H+B""!"4 )!!!)1'!!!)!"!%Ji)3"!I!J$TNk!!#"m#!+QNq(rr*2"rrL3!!%!#*3Krm"mIKY iU(i!!#`$!!&"JJ!-U(i!!%J!!#4,rrqCI(mEH8'#!!arirYi5!!!%%J!@DQ!33! 85rrrd)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)(`)!UD6iIrmNm(rq*1Krr53!!% !#*3Krl"mI4Yi1q)5%+KL!JiX!`!!3))!(%[rr[PmIKYi,"i!!%'#!!ar`r0i5!! !Z(rMqhJiJ!!!1+!!CNJ!-lPJ!!!!U))#$V#I!"JiS!!QX,m!'T1r!"`i`!!HQ0m !)$MJ!!#Br`!K13$r`*NI!#*rirYi5!"F[B""!"3iI`!35rrr#Aaq'hKrirYi1)! !!$LJ!'C)!$0KB!!!!+NL!Jka2`!B18!!+V&I!"U6[`!FIq2lH%J!A-@!33!8UAm !%#`,!!"!JJ!3J(m!)%J!(M9J!!!!,"i!!%##!!LVh`!3Im2cH)!"!&Ji)3"3I!J $TS2Krrb$`IriJk(rp%k!!#"m#!+QNq(rr*2"rrL3!!%!#*3Krm#3!'%!@$[L%RL SBJ)1,!-!!%##!"a,rrhTI(iEH#`H!!""JJ!-1'!!!%J!!'arirYi1)!!!$LJ!'C )!$+TB!!!!+L#!Jk`R`!B1+!!+,#r!"U!`3"BN!$I!"arirYi5!"E`B""!"3iI`! 35rrq$Aaq'hJX(J!!3B)!$$KJ!!")!!!BS2m!2#J(!!"p!!!Q93JIrQN$!!'!!3" )1#%!3(`)!kD$iIrmJm(rq%k!!#"m#!+Q[f(rl*!!!3!)P#(rX*!!B3"SI*XMH*! !S3"`1q)5i)2#!Bb!BJ)%,!-!!%##!#`iBJ,p5rrl&@!!!!"mI3Fd,"d!!%'#!!a rSqYi5!!!T$L!!!'3!))#")"L!C!!1)!$`$LJ!!&)!&FeJ%%!&(am'hJiS!!"X,i !!)"K!'Krj2YiIiAMH(r'mhK,rr[0B!!!!)$I!!!X"UAq3))!%(r$mhK,rrdTN!" r!!"rJq0i5!"A(B""!"5!r`!!,!F!!%'#!!b!I`!!5!!!,)%I!35")3"`N3N!!#J E!!""JJ!8If2EH$LI!!4)!%mYB!!!!$KJ!!#!!3"B1#%!8(`)!kDlBIrX6S!!))# M!!#`T!!!6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(r`,#"!&jm[LYiS'%!ALJ$!!& !JJ!FIprcH(r$mhL!R`!)JCm!"%J!@SQ!33!8J!%!5$JK!%"m#!1QJq(rr)2"rrK 1J!!JI!J#TT2Krrb6`IriNk(rp*1"rr#3!!%!#*3Krh"mI"YiN!#"!+b3!+%!X*! !`3#dN!$K!,L4!3#m1k)6p$[!!!#SBJ)1,!-!!%##!"a,rrZKI(iEH#`H!!""JJ! -Im2cH%J!!1JiB3!i1)!!!$LJ!$T)!$"KB!!!!$KJ!!a)!"VGB!!!!(ar'hJS(`! !3))!$$KJ!!a)!!#d1)!!&,#"!&+SSJ)1X+%!8)$"!,#3!-%!@)$K!,53!1%!A)% G!!!S#!!!3))!()"L!B3iJ$l!1+!!!8J!9@@!33!8N!"p!!#"23!!N5%!B+&F!!# a33"NNq%!CMKK!$K)!&NCJ%%!&+PK!%JX#`!!3B)!'(rMqhK)!"V4B!!!!+KK!%K )!!!`JB%!9*'I!!#!B3#mN!"r!!5!J3#XN!#I!!L!S3#iNq8!!+$"!'5`h!!!Im2 cH)!"!*Ji)3#3!(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)(`)!UD6iIrmNm(rq*! !!3!)P#(rF*!!B3#SN!#"!+b`S3#bN!$"!,53!1%!Z$KK!%3iJ!!!1+!!1NJ!,c9 J!!!!J'%!Z,"K!$L!J3#dN!#"!$SiS!!!X+%!2S2K!+Ji`!!AX-%!AUML!Jk`i3" FJ4m!!*%"!'#")3#XN5%!CU&"!,+a33"U1@!!!CPK!(!jJ3!iNB%!E$KK!%4)!&J 4J%%!&$KK!&4,rrTGI(iEH(r$mhL!!3#B1#%!N!"m#!1QJq(rr)2"rrK1J!!JI!J #TT2Krrb6`IriNk(rp*!!!3!)P#(rF*!!B3#SN!#"!+b3!+%!X*!!`3#dI2dlH*% "!,`iB3!i1)!!!$LJ!$T)!#jTB!!!!)2"!+JiB!!9X'%!8UL#!Jk`J3"3J,i!!*! !S3"8L-)#$,$"!&JiB3!i5!"AGB""!"3iB3")5rrj`Aar'hJX(`!!3B)!$(rMqhK )!!"dJ'%!Y)#"!'#Ji3"NI"di!%#!!!arTHYi5!!!#+#K!'4)!#fjB!!!!+%"!'5 ")3#mN3N!!)&"!&U"B3#XN8X!!+'"!&k!B3#`XB-!!$L!!"D`J3"51'%!1%J!9[Q !33!81'%!5%[rq89mIaYiIq2lH)!"!*Ji)3#3!(`)!kD$iIrmJm(rq)1Krr41J!! JI!J#TT2Krrb3!!%!#*3Kri#3!'%!Q$KK!$`iJ!!!1+!!1NJ!,@PJ!!!!Jq%!Q$K J!"L`B3"@U))#$V#"!&5![`!!N!#K!&JiB3!m5!"@IB""!"3iB3"-5rribC!!B3! iIq2lH%J!'$9J!!!!J!%!L$JK!)"m#!1QJq(rr%k!!#"m#!+QNq(rr*!!!3!)P#( rN!#3!'%!L+KL!JiX!`!!3))!&%[rq!PmIaYi,"m!!%##!%`iB3!i1)!!!$LJ!#4 )!#c4B!!!!$L!!!q`J3"5U+)#$V#K!&!iB3!i5!"9mB""!"5S`3"),!B!!%##!"# !i3"8J3%!L*!!k!!!J!%!H$JK!("m#!1QJq(rr%k!!#"1J!!JI!J#TT2Krrb3!!% !#*3Krm#!BJ)3+!-!!%'#!!`iB!!!5!!!J$KJ#3")!"EGB!!!!*!!BJ)3J))#%#J %!!"!JJ!N1+!!$$M#&l#3!+B!!$MJ!!`j!K4iX1J!!$KJrrp)!!"%J')#%$L!!!! iS!N!5!!X%@!!!!!li!!!5!!!($Nr!)#"3J)3(Am!5$P+!!4p+PNZ1rm!!5`I!#" "J2rN1'!!!)!"!%Ji)3"!I!J$TS2Krra1J!!JI!J#TT2Krrb3!!%!#*3Krm",rrm p,!-!!%'#!!`iB!!!5!!!3$[J!!")!!!XJ')#%"bI!%KmBb#Z9'22rd##!"5!SJ) 3(0m!5(aP-K4)!!!81rm!!5`I!#""J2r81'!!!)!"!%Ji)3"!I!J$TS2Krra1J!! JNq(rr$[J!!")!!!`J))#%"br!%JiK!!%I)3S,R`$)!"!JJ!8J-)#%"cr!%KmCMS 85!!!&$[r!!%X(`!J3B$rd$KJ!!#$iIrm6S!!)(`)!UD6iIrmN!!"!!L8)Ir!I(m EH(rMqhJiJ!!!1+!!"%J!+ZPJ!!!!1'!!!*!!I`!iJ*m!0#J%!!""JJ!3J(m!0%J !&G9J!!!!1+!!!*!![`!d1-!!!*!!h`!`J!%!5$JK!%"m#!1QJq(rr%k!!#"m#!+ Q[d(rk*!!!3!)P#(rX(am'hKmQL0iI,XVH$ZL&(Jl`KH`,"`!!N##!"3X'`!!3B) !*#`E!!*"JJ!F1'!!&T!!IJ!!1)!!&V#G!!!iB2rr5!!"!#`D!!*"JJ!N,"S!!8' #!"`iS!!@N!#q!!!i`!!@X0d!!$KJrrp)!!$B5rrq@Aar'hJS(`!!3))!($MJ!!b 3!2i!!$N!!!ba(3!!1'$rrdJ!!,#cR`!)Xjm!',1I!#LcI`!UNem!,)%r!$3S#3! !3))!3$KJ#!")!"4GB!!!!*!!I`!d18!)!*&I!$#"I`!d+!X!!%##!"`jJ!!-NCi !!$KJ!!b`I3!!1'$rrdJ!!&4rirYi1)!!!$LJ!!4)!#Q4B!!!!$L!!!')[`!!8)8 q-*Lr!!!i`!!!S2m!!&$(2(#`r`!!13!!!)Nr!!&4#5EfQ6m!!6P!!!#4A`!iJ(m !")!"!&Ji)3"3I!J$TVY"rqK1J!!JI!J#TT2Krrb3!!%!#*3Krm#3!)%!A)2K!&b )I`!!9'22rd##!"!iBJ-$5!"5(B""!"5JR`!!9)A12MLP!!&3T$a`X*m!!)!"!%J i)3"!I!J$TS2Krra1J!!JI!J#TVm"rq#3!!%!#*3Krk#3!'%!H*!!J3"mI,JVH(c j1hL4!3#-1k)8H$[#&l#!B3"i5rrpAAar'hJS(`!!3))!($KJ!"D3!(i!!$L!!"D `R3!!1'$rrdJ!!4L![`!X,!8!!N##!"#Jh`!)+!B!!N'#!"`ii!!@N!$q!!!j!!! @X4d!!$KJrrp)!!$SJ6m!1#J*!!"!JJ"S1(m!#RrNqhL![`!dJ0m!-$Mr!$L"!J' i5rrhD@!!!!"mHKYi,"S!!%'#!#"rirYi5rrp&6P!!"Q4AJ!!Xed!!$KJrrp)!!# 81(m!$%[rq[9J!!!!1@!!!BQI!!&4E#EfQCm!!B"K!)`S!`!33))!%+#C!!!S"!! #3B)!($LJ!"D3!,i!!$M!!"D`h3!!1'$rrdJ!!%Kr2-YiJ(m!1)#F!!5J[!!#J-% !I(m(`hK,rrJjB!!!!(al'hJX'`!!3B)!'$MJ!"Q3!2i!!,0p!!!iB2rr5!!!#(m $`hL!!3"S1#%!B(`)!kDl!IrJ6S!!)(`)!UDr3IrSN!!"!!L8)IqJN!"K!(L3!)% !I*!!S3#!N!$K!)Kp'N0i1k)8H$[#&l#!B3"i5rrlhAar'hJS(`!!3))!($KJ!"D 3!(i!!$L!!"D`R3!!1'$rrdJ!!0#![`!X,!8!!N##!"#Jh`!)+!B!!N'#!"`ii!! @N!$q!!!j!!!@X4d!!$KJrrp)!!#JJ6S!!#J*!""!J!!F18!!&T&H!!!jB!!@XAd !!$KJrrp)!!"m1B!!%*'D!!#$J3#)1'!!!V"m!!#!I`!i1*`!"$Lm!!+!`3"mJ1% !J$N"!$K,rrIPB!!!!(al'hLJR`!!9)612d'#!"LJ[`!!9+E12MM'rrp3a6a`X,m !!#`E!!"!JJ!-J'%!1%J!!"3ii!!CN!$q!!#cI3!!1'$rri!"!'Ji)3"JI!J$TVY "rqK1J!!JI!J#TVjKrmb3!!%!#*3Krj!!I(JEH(bE)hKm[#YiI0-cH(cd1hJkSK4 B1b)8'$Y#%rJS&!!!3))!$$VJrrj)!!!S5!"*cB""!"5!P!!!()3!2)#d!!3i`%% DI+8cPRaM+K4qj"S8Id26H$L!!!!iS!!J5!!PZ@!!!!"r)mYi1)!!!$LJ!#")!#@ PB!!!!$KL&$JiJ!!!1+!!)%J!*C&J!!!!IU1VH$L!!!!iS!!J5!!PI@!!!!!lS!! !+"X!!%##!!KqZkYi+"`!!%##!!Kq[+Yi+"-!!%##!!KqXkYi1q!!!%J!!0Jii!! "9qJ'rRcR3$"AkHMkI6a),RcR5$P"JJ!N18!!!9IV"[jp5PJ`9qcSqRajB#jmBe0 iI(PK,MZp!!%iJ!!"9q8'rRb%+$"AjZMkI0X`,Rb%-$P"JJ"m12rrJ#`(!#""J3" `Iq2lH%[rqBPmIKYi+"i!!%'#!&b*(J!!93M2rd'#!&#K2J!!95R12d##!#5"AJ! X,!S!!8##!$L!IJ!m5rraX@!!!!!X!`!!3B)!*$PJ!!&Al!EqI@YJ-&IMk2TmQKJ ZI)4EH(bD'5il[3!"1rm!!A`I`!""J2mS,"d!!%##!#4)!%RGJ%%!&%[rppPJ!!! !5!")0B""!"4m!lK!3B$qq$Li!!GmYKj`IYB"P#J@!#"!J3!)1X!!)(pMfhKr400 iIX@cH%J!)q&J!!!!Ii2MH(mNbhKqaE0i5!!Mc@!!!!"qBjYi1))81(l&XhK)!#1 jB!!!!(qMkhL!!3"i1#%!F(`)!kDkBIr-6S!!)(`)!UDrBIrXN!!"!!L8)Iq`I(X EH$ZL&(Jl`KH`,"X!J%#!!"4rBpYi5!"#m@!!!!")!!$dIf2EH%[rq%PmIaYi+"m !!%##!!`iB!!!5!!!f#JI!!""JJ!FL(m!!&4Mcrp"JJ!3S*m!+#J%!!*"JJ!F1+! !&T!![J!!1-!!&V$G!!!iB2rr5!!!S)$r!#`X"`!#3B)!9%#!!'`X"`!"3)!!#%J !!'#"(`!m+!J!!%'#!'b!I`!m5rr['@!!!!"mI"Yi,"`!!%'#!&3j)!!CN6i!!,1 G!!"rirYi5rrhp6KJrrp)!!"%J9m!1#J+!!""JJ!XJ(m!1%[rp9PJ!!!!5!!!($P J!"D4IJ!!1B!!&V'G!!!iB2rr5!!!%(rMqhK,rrHa1'!!!)!"!&Ji)3"3I!J$TVY Krqa1J!!JI!J#TT!!!3!)P#(r`)"L!L!S!`!!3))!&$KJ!XK)!!d*B!!!!*!!BJ) JJ))#(#J%!!"!JJ!81'!!&%J!$1eJ!!!!N!"L!Kb!!3")1#%!3(`)!kC1J!!JI!J #TT!!!3!)P#(r`)"L!L!S!`!!3B)!%)"L!L")!!djB!!!!$L!!!#3!))#))#L!K` S"3!!3B)!%)"L!Ka)!!dCB!!!!$M!!!#3!-)#()!"!%Ji)3"!I!J$TNk!!#"m#!+ QN!!"!!L8)IZ`N!"K"'L`J34ZN!#K"(!iB3!iJ)%%F%J!2kPJ!!!!1'%!1%J!54f !33!8J'%%D+L""'iiS34!1-%%4$MK"$K)!%NCJ%%!&)"K"%3iJ3!i5!"*)B""!"5 !!34B1#%%8(`)!kC1J!!JI!J#TT!!!3!)P#(lX*!!B34SX)%%ET!!S34`J'%%D+L ""'iiS34!1-%%4$MK"$K)!%M&J%%!&)"K"%3iJ3!i5!"*TB""!"3iB3!i5!"*XB" "!"5!B34`1)%!1%J!2`&J!!!!J!%%@$JK"&"m#!1Q6S!!)(`)!UD6iIrmNm(rq*1 Krr56JIr`N!!"!!L8)IqJI(`EH(bH)hKm[5YiS(i!!#`$!!0"JJ!BS*i!!#`%!!9 "JJ!-1'!!!%J!!1b![J!#9,m'2L`I!!e"JJ!J3)!!%#`I!!0"JJ!85!!!b#`I!"Y "JJ"N5!!![$M!!!'`h3!!Ii2MH$L!!!%iS3")1-%!2$MK!%")!%IaJ%%!&)"K!$` iJ!!+5!")%B""!"3iB!!)1)%!1%J!5"Q!33!8J'%!2$L!!!")!%IaJ%%!&$KJ!!& )!!"N11!!!V$p!!"rJq0i1)!!!MLK!%Ji`3!m11%!3%J!4j@!33!8J'%!2$L!!!T )!%HeJ%%!&$KJ!!JiJ3!i5!"([B""!"5!B3!m1)!!!%J!4j@!33!81'!!!8J!!!J iB!!!J!%!D$JK!'"m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#"m#!+QN!!"!!L8)Im 31'!!!*!!B3"%1)!!!*!!J3"+1'%!1%J!5$'!33!8I'-(08'#!!`iB2rr5!!!4$L J!!#3!+%!H$M!!!#``3#)U1%!6V$K!))j!!!!N3%!IMKK!'a)!%J0J%%!&(aM"c9 "JJ!-1'$rrdJ!!!L!B3#+J!%!q$JK!2"m#!1Q6S!!)(`)!UD6iIrmNm(rq*1Krr5 3!!%!#*3Krk"mI4Yi1'!!!,"K!%`iB!4-1)!!!$LJrrp)!%C*J%%!&(aq'hJS(J! !3))!$$KJrrp)!!&F1)!!!)#p!!#BK3!!1-!!!)$p!!#Ba`"NIm2cH$L!!!5![3! !5rrmfAr$mhJiJ!!'J4d!!$LS!'4,rrc&J')"d$L!$p!iS!!"5!"%"B""!"4mIaY i1'%!5%J!4Q@!33!8Im2cH%J!4R'!33!8Im2cH$L!!!%iS3"%1-%!1$MK!$a)!%A GJ%%!&$KJ!!-iJ!!$5!"'AB""!"3iB3!m1)$rr$LJrra)!%CKJ%%!&$KK!$`iJ!! 31+!!%%J!4Q@!33!8Iq2lH$L"!%a)!%CYJ%%!&+NK!%`X#3!"3B)!%+P"!%`X#J! #3),rh(rMqhK)!%14J%%!&+PK!%`X#`!"3))!0(r$mhJiJ!!%J,d!!%[rr'&r`r0 i1)!!"S'G!!!iV!"N5rrm68[rrJQ!R3!!N!"N!-Kr`r0i5!"'HB""!"4rSqYi5!" 'KB""!"4rSqYi5!"'NB""!"5SB3"-J!%!D$JK!'"m#!1QJq(rr)2"rrL$SIrd6S! !)(`)!UD6iIrmN!!"!!L8)Ir!N!"K!&LBJ3"I2'"dG$KMG@NiJ!4-5!""6B""!"4 mIaYi+"m!!%##!&`iB!$-5!"%6B""!"4mIaYiIq2lH$b!G(3iK(9T1+!%6$M#!da )!%4&J%%!&)"r!!!iJ!!!1+!!c%J!(39J!!!!Iq2lH%[rrF8X!`!"3B)!4$KJrrp )!!"JL'%!AbJ$!!&"JJ!B5rrp(B#I!!#!K!$)I!3B!%'#!"arirYi5rrpM5`$!!& "JJ!-1'$rrdJ!!#L!B3"BJ*m!!$LJ!-a)!"aPB!!!!(rMqhK)!%*"J%%!&$KJ!!# !!3")1#%!3(`)!kD$iIrm6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(rS(aq'hJiB!! "1)%!3%J!3,'!33!8I(mEH(rM"c9"JJ!FIm2cH$L#!f"rj3Fd5!!jV@!!!!")!!! dU)%!6*!!J3!iIm2cH$L#!hkSS3"!U-%!3UMK!%5T!3"'L5%!5)P"!%P)!$PjB!! !!)!"!'Ji)3"JI!J$TS2Krrb$`Iri6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(r`$a J3e-iBe451)!%6%J!2lf!33!8I(mEH#JI!!""JJ"3Iq2lH%J!2lf!33!8J(m!!%[ rjL9J!!!!I(iEH#JH!!""JJ!8J(i!%)"M!!#!B`!!N!"L!KKrirYi5!"!UB""!"4 rirYi5!""&B""!"5!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"m#!+Q[`(ri*!!!3! )P#(h`*!!B3KBN!#"#&bBS3KMI2JlH$YJ!!")!$k4J%%!&(ak'hJiJK4mJ'3!!%J !2X@!33!8,"J!!8#"!#4)!$lPJ%%!&(bM`jCmTF(@I+8B88'#!!`iB!!!5!!#i)$ #!KJX"J!!3))!(%[rr[@!iJ)B,!F!!%##!!`iB!!!5!!#[$KK!`K,rrj&1b!!!&F S"Mp"JJ!X1'%(6)L"#'0,rrdY,!-!!%'#!$"r3p0i5!!q4B""!"3iB2rr5!!#J$N J!!#C)3G-18!!!*P""l!jB!!!N@%)&%[rpmf!BJ)J1)!!!$LJ!XK)!"TCB!!!!$Q !!!'!BJ)JXB-!!$L!!!'!SJ)JX)8!!MM!!!'!iJ)JX-F!"&FS"Mp"JJ!-15!!!8J !!!Jj)!!!95N'2S&#!L#a+J!'5!!pmB""!"5"BJ)JN!"V!!JiB3"-1))$b6LK"d` i`3H`11%$#%J!0f&J!!!!JB%)@)"L!Kb4J`!!J)%)A)#L!Kb3!)8!"$M#!p+!iJ) FN!$(!!Jj!J)8J5)#(*%*!!`j33"-J@)#(*&,!"#!BJ)JJ))#(%J!!V9J!!!!I(` EH$KJ!!)iJ!!#1+!!!%[rlZPJ!!!!I(mEH$Q!!!+aJ3!m1'!K0,"K!$k!JJ)BN!# "!%"rirYiJ))#)(q&ihJi`!!!11%!2$N!!"",rr"TB!!!!$ZJ!!!iB3F)1)!!!$L J!#")!"NaB!!!!$LJ!!&AjJEqI+8`-&IRk2Sj!3F)I5Ji,RdT+hKp+$NZ18!!"C& ""b`jB!!!N@%(-$KJ!3!iJ3F)1+!!!$M!!!!ii3FX5rrb[@!!!!"mIKYi,"i!!%# #!#4rirYiJ))#)(q&ihJi`!!!11%!2$N!!"",rqrCB!!!!#`H!!"!JJ!31ld!!5` G!!0"J2pN,"i!!8##!(3jJ!!3NB%!1(rMqhL!JJ)J1+!#b$M!!!!ii3!m13%!1%[ rm49J!!!!N!"K"bJX!`!!J))#)+#%!!BX"!!%3))!0)"L!L!iJ3Fi5!!!N@!!!!# !S3G%L+8!!#`&!&*"JJ!)5!!!#$YJrrq!`3G)N!$""c4rirYi5rrd6@!!!!",rrA 4Id26H%J!1m@!33!8If2EH)!"#%Ji)3K!I!J$TVX"rq"1J!!J5!!!**!!C3!!1+8 !"(`$)%"!J!!8L1-!!$KM!!&mj`Ge3),rl#`'!!!ia[rr3),rf%k!!#"m#!+QNq( rr*!!!3!)P#(r`(ar'hL3!)%!A$Kr!!`iR`,(J+%!A$M!!!9,rrqPJ!%!5$JK!%" m#!1QJq(rr%k!!#"m#!+Q[f(rl*!!!3!)P#(rX(ar'hKmR#0iI,iVH(cG-hKrqrY i5!!!6)"q!!!S!`!!3))!&$L!!!#BR`!!1rm!!8J!!"KrirYiJ*i!!(bri&")!$8 PB!!!!(rMqhJiJ!!!5!!eM@!!!!!li`!"1pi!"#`G!!!l[Irr3),rX(alq&#!!3" B1#%!8(`)!kDlBIrX6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(r`(aq'hL3!)%!A$[ J!!8iIJ!-1,i#b(bI+&#!S3"FIqElH%[rrcNiB`!-J!%!5$JK!%"m#!1QJq(rr)2 "rrK1J!!JI!J#TT2Krrb6`IriNk(rp*1"rr#3!!%!#*3Krl"mI"Yi1q)8I$[!!!" )!$GpB!!!!%J!1G'!33!8I(dEH$KJrrq3!(m!!)#F!!`X"!!"3))!0)"m!"!iJ!! "5!!j`B""!"4mB`FdN!"r!!#![`!!,!Arrd##!"")!$QpJ%%!&(aq'hKrSqYi5!! jaB""!"4r`r0iJ!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#"m#!+QN!! "!!L8)Ir!1')8I)"M!!!X!rrr3))!&$L#&(b!C!!!5!!jMB""!"4)!$FKB!!!!)! "!%Ji)3"!I!J$TNk!!#!iBK4iU'-!!%k!!#!iB!!!6S!!)%k!!#!iB!!!6S!!)$K J!!"1J!!JI!J#TT2Krrb6`IriN!!"!!L8)Ir!I(iEH$[L&)JiB!!"5!!)l@!!!!# !!J)N,!!!!%##!"KrirYi5!!@P@!!!!!i!!!"N!!#!L4rirYiIm6cH%J!&X&J!!! !I(mEH$KJ!!&)!!LaB!!!!(rMqhL!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#"m#!+ QNq(rr*!!!3!)P#(r`(ar'hL!!J)N,!!!!%'#!#`iB!!"5!!)C@!!!!!iBK5)Iq6 lH%J!&q&J!!!!1'!!!8J!#%eJ!!!!J!%!5$JK!%"m#!1QJq(rr%k!!#"m#!+QNq( rr*!!!3!)P#(r`(ar'hL3!)%!A$MJ!!#3!2m!!)!"!&`S"J!!N!!I!!5)(`!)81! Z0*JI!!L)(`!)81!QpTJI!!LBr`!-Q2m!$C!!r`!83B)!((bN+hKrirYi1+!!!NJ !!ZeJ!!!!5!!!((rMqhKmj$YiI18lH(cQ1hK)!!,4B!!!!)!I!"JiB!!!N!!I!## 3!(m!*+!I!!48!-qq,!!!!N'#!'"!J!!3,!!!!8#!!"4)!!"3,!!!"%#!!%K)!!! SJ')"0)!#!6#3!(m!0)"L!5b3!"m!1)!#!5L3!(m!2*!!(`"!5!!!))!#!553!(m !0)"L!5#3!"m!1)!#!4b3!(m!2*!!(`"!1!!!!*!!(`"%J!%!5$JK!%"m#!1QJq( rr%k!!#"m#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq`1'!!!NJ!"[9J!!!!1k)$q$[ !!!!li!!%S"d!"&3!clp"JJ!FIk2VH%J!#HeJ!!!!S"d!"&2J2I#`(3!%1pi!!6Z p!%JX(J!M3B$rd$KJ!!*)!!DYB!!!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp%k !!#"m#!+QNq(rr*2"rrL6SIrdN!!"!!L8)Iq`1m!!!$ZL!rKrhr0iS"d!"&3!clp "JJ!FIk2VH%J!#M9J!!!!,!-!!%'#!!Jl`2rr1rm!!6Zp!%JX(`!M3B$rd(r$mhL !!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr41J!!JJ-3!!$L!!!Si!!!05!!!+)LM!!! S"3!03))!$*L$!!")!!!3+!8!#N##!!LB!`!!1'-!!5J'!!!ia[rr3),re%k!!## !!`!BN!!$!##!!`!FN!!$!#5!S`!8J)-!+)!$!#4mT#!iI!3!8*!!!`!NJ!-!&*! !!`!`6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(r`(aq'hKmRb0iJ(i!')!H!#"m!`" 43B)!D*!!(J!NL"i!"93!erp!JJ!3J(i!'$LH!#4,rrp&J(i!!)#H!"L!hJ"%JCi !2$Lq!#4)!$Y"J%%!&#JI!!""JJ!-J"i!**!!(`!!,!-!!%'#!!K)!!!JJ(i!*)! H!"4m!"S8N!!H!"4r`r0i5rrr16KJ!!#!!3")1#%!3(`)!kD$iIrmJm(rq%k!!#" m#!+Q[f(rl*!!!3!)P#(rX(aq'hKmQb0iI,`VH(cI-hL)(J!)S(i!"&3!hhp8Bmq q3))!$#`$!!"!JJ!-1'$rrdJ!!4!X(!!!3B)!(#`F!!&"JJ!8,"`!!N'#!!`iB2r r5!!!m)"q!"JS!`!!3B)!')JH!!K8!1Ir3B)!$%[rqpeJ!!!!L"i!"$L!!!"6J!p mQ"i!")Kq!!Ji(J!38)-QpTKq!!L3!"i!'*!!(J!J1k!!!C1q!"b3!*i!*#`F!!# 3!*i!+%'#!!`S(`!"3)!!')#H!#!i!!!!I!-$H*J%!!")!!"d+"X!!%##!$"rirY i5rrkk@!!!!"mHaYi+"X!!%##!!`iB2rr5!!!6)JH!!K6S#EfQ"i!#*0q!"L!IJ! B1!!!!*!!IJ!JNri!(*!!(J!SS"i!"&3!cliX!!!"3))!&&IJ"Ip!JJ!-1!!"rj! !(J!S1'!!!)!"!&Ji)3"3I!J$TVYKrqa1J!!JI!J#TT2Krrb6`IriN!!"!!L8)Ir !I(iEH(bI)hLJI`!%1!!!!*!!(`!NL"m!$94McliS!!!!3))!$#`$!!"!JJ!-1'$ rrdJ!!A3X!`!#3))!$%J!%0eJ!!!!L"m!#&3!hhp!JJ"FL"m!"&3$lhj8B!Hp3B) !6&4J"hY"JJ!SIq2lH$L!!!!iS!!#5!!2"@!!!!!X!`!!3B)!$$KJ!!")!!%FL"m !#$KJ!!&3B#idIq2lH*JI!!K,rrd"B!!!!)JI!!K8!0pq+!!!!8'#!"`i!!!"Q"m !$6J!!!#3!"m!*$KJrrp)!!$BL"m!"&3!rliS!!!#3B)!()"r!"L!(`!JJ*m!((` $!&"m"!"!3))!0(rMqhJiJ!!!5rrme@!!!!!X!`!!3B)!($J!!!'B(`!01!!!!*! !(`!N1'$rrdJ!!)#!I`!N1!2rrj!!(`!NJ(m!)$J$!!'3!"m!)*[$!!#)(`!%9!2 r[P4J"MiS!!!#3B)!6&4J"Mp"JJ!-,"i!#N##!$4rirYi1)!!!%[rr'9J!!!!,!- !!%'#!"`i!!!"Q"m!$6J!!!#3!"m!*$KJrrp)!!!31!!!!*!!(`!N9m-'2S!"!%J i)3"!I!J$TS2Krrb$`Iri6S!!)(`)!UD6iIrmN!!"!!L8)Ir!J!)#+$[J!!!X!!! "3))!$$KJ!!&)!!"X1'!!!dJ!!B&J!!!!J!)#+#`!!!"!JJ"%5!!2(@!!!!"rirY i5rri1@!!!!"mB!Fe3B)!%$J!!!+3!!)#+%J!!"b!JJ%m1')8J$J!!!'3!)-!!(` I!hL3!!)#+$KJ!!0)!!%YB!!!!(rMqhL!!3")1#%!3(`)!kD$iIrm6S!!)(`)!UD 6iIrmNm(rq*!!!3!)P#(r`(bH)hKm[bYi5rrr35`$!!"!JJ!-1'!!!8J!!%3iBJ2 i1'-!5%J!",9J!!!!Im2cH)#I!!",rrHYB!!!!*!!I`!!J(m!!$J!rrpm!`"!3)) !$$KJ!!&)!!!)1'!!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)(`)!UD6iIrmNm( rq*!!!3!)P#(r`(bH)hKm[bYi5rrqZ5`$!!"!JJ!-1'!!!8J!!$4r`r0iJ*m!!%[ rpbeJ!!!!N!"r!!#!I`!!1!$rrh`$!%"!JJ!-1'!!!8J!!!JiB!!!J!%!5$JK!%" m#!1QJq(rr)2"rrK1J!!J1'!!!%k!!#"1J!!J6S!!)(`)!UDr)IrNN!!"!!L8)Iq JI(XEH(bC)hKmfM0iIlNTed'#!"b)'J!0+!!!!%##!"#JHJ!%9'$2[d##!!`iB!! !5!!#`&4JcliX!!!#3))!$%J!$9PJ!!!!L"S!"6[J!!"8!0Ir3B)!,+!D!!48!-q q,!!!!d'#!"b)'J!%9!$r[LJ!!!*"JJ!-+!!!!8##!!Jli!!"L"S!#&3!hhp!JJ" FL"S!"&3$lhj8B!Hp3B)!6&4J"hY"JJ!SId26H$L!!!!iS!!#5!!,4@!!!!!X!`! !3B)!$$KJ!!")!!)SL"S!#$KJ!!&3B#idId26H*JD!!K,rrP"B!!!!)JD!!K8!0p q+!!!!8'#!"`iB!!"1!!!!*Kk!!em!`0iN!!D!#4)!!(N+"d!!(pqfhJlJ!!!3B) "2)"k!##!'J!BI!-!3%##!!`X(`!!3B)"*)#D!"L!HJ!JJ"S!((aN'&"m!`"3N!! D!#5!'J!N1f!!!*!!!3!iJ!%!1(`!k%"!J3!)Nk%!1)JD!!48!2qq+!!!!8##!$L !S3!i+!8!!%'#!#ar`r0i1)!!#NJ!#bPJ!!!!I(XEH#JE!!""JJ!31"X!!A`H!&# 3!!%!1)#K!$JS"3!!3B)!3)"k!#"ra20i5!!+9@!!!!#!J3!iJ"S!)(rH)K4m!#) 8N!!D!##!B3!iJ"S!*(qF)K4m!`"3N!!D!#4rT1K3J"S!*#J!!!""JJ!B+"X!!%# #!"#)'J!%9!$r[d##!$4r3p0i1)!!!%[rq$9J!!!!,!-!!%'#!"`iB!!"1!!!!*K k!!em(30iN!!D!#4)!!!8+"d!!%'#!!`X(`!!3),qr#JG!!""JJ"`,"m!!%##!'L $HJ!BJrS!((`HkK56fJ!BNlS!((p$dhL3!"S!)$L"!$K,rrI0B!!!!#`$!!""JJ! 81!!!!CJD!!di!!!!N!!D!#5!!3!iId26H*0k!"L6qJ!FIj`#&%[rpf9J!!!!1!! !!*!!'J!NL"S!"&3!rliS!!!#3B)!$$J!!!#3!"S!*$JCrrpm(!)8I'$,PS!"!'J i)3"JI!J$TVXKrq41J!!JI!J#TT2Krrb6`IriNk(rp*!!!3!)P#(rX(ap'hJS(3! !3))!$$KJrrp)!!#%S"d!"&3!clp!JJ!-1'!!!%J!!("rSqYi5!!!K@!!!!"mIaY iJ(d!!)'G!%")!$+9J%%!&+!G!!3iJ!!!8)!pm,!G!!53!*d!!)JG!!KmIKYi9!$ Rrd'#!"#!I3!B5rrce@!!!!!X(`!!3))!$#`H!!""JJ!-1'$rrdJ!!!JiB!!!J!% !@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)(`)!UD6iIrmNm(rq*!!!3!)P#(r`(a r'hJS(`!!3))!%%[rpAPJ!!!!5!!!q)JI!!dS!!!!3))!%+!I!!48!-qr3))!$$K Jrrp)!!$BL(m!#&4JhhiS!!!$3B!!&(aJ'hJiB!!#8'!Z0*JI!!L)(`!)9!$IILJ !!!*!JJ!-1!!!!*!!(`!NL*m!#&5!hhiS!!!"3B)!'$KJ!!"mJ#0i8'!Z0*JI!!K )!!"mS"m!"&3!cliX!!!"3))!((rMqhK)!!9KB!!!!(aq'hJS(J!!5!!!#$[!!!" rirYi1)!!!%[rpDeJ!!!!,!-!!%'#!"`i!!!"Q"m!$6J!!!#3!"m!*$KJrrp)!!! JL"m!#$L!!!"3J#idQ"m!#*2I!"4mJb0iN!#I!#5!!3")1#%!3(`)!kD$iIrmJm( rq%k!!#!iSKHd1!!!)h`*!kDSK3!!I'!(0(`%!!"!JJ!-I+-VH%k!!#!iT3")3J$ rj$KJ!!"1J!!JI!J#TT2Krrb6`IriN!!"!!L8)Iq!I,iVH(cI-hJiS!!!N!#K!%5 `B3"3N!#"!&L!(J!!+"m!!*!!!3"FX+%!C%'#!$!iB3!i5!!Y,B""!"4)!!!3Iqc lH%J!-'@!33!8U!%!5#`!!!""JIrX5!!!%$KK!$K)!#dCJ%%!&)!"!'#3!"i!!+J "!%JX!2rC3))!))!H!!!S!!!!3B)!$$KJ!!")!!!J1'!!!NJ!!"JX!!!!3))!$$K J!!")!!!)1'!!!B!"!)Ji)3#!I!J$TS2Krrb$`Iri6S!!)(`)!UD6iIrmNm(rq*! !!3!)P#(rJ(bq+hKmhc0i1+!!!*!!S3"%X'%!8*!!J3"BJ"i!!#JI!!#3!!%!A,# K!'4"JJ!`1'%!1%J!,)Q!33!85!!!%(rXqhK)!#q4J%%!&+J"!%JX!!!!3B(rl%J !!"!iB3!i5!!XGB""!"5!!3"JN!!H!!#S!3"),!!!!%##!!`iB!!!5!!!#$KJ!!' !!3#)1#%!J(`)!kD$iIrmJm(rq%k!!#"m#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3! )P#(rJ(am'hKmRL0iI,dVH(cI-hJi!!!!N!!"!%3X(3!"Xi%!8%'#!$4!J!!3,"d !!%#!!"a)!!!N,"d!!d#!!"`i!!!#X!%!C%J!!"Ji!!!"X!%!C%J!!!`iB!!"5!! "H)!H!!!S(`!!N!!"!'C"JJ!`1'%!1%J!+`'!33!85!!!%(rXqhK)!#kCJ%%!&+J "!%JX!!!!3B(rl%J!!"!iB3!i5!!UlB""!"5!B3"QJ"i!!(`$!&&!J3%!+"m!!(` $!K53!!%!9%'#!$!iB3!i5!!UfB""!"4)!!!3IqclH%J!,N'!33!8U!%!5#`!!!" "JIrX5!!!%$KK!$K)!#V&J%%!&+J"!%JX!!!!3))!$$J!!!")!!!)1!!!!5`!!!" !JJ#B1!!!!*!!!3"%,"d!!E1"!&""JJ!d3)!!%#`G!!"!J!!F5!!!*#`G!!0!J!! F1!!!!V!"!'4)!!!B1!!!!E!"!'4)!!!-1'!!!8J!!'b!(J!!+"m!!*!!!3"Q3B) !-$KK!$K)!#ReJ%%!&%J!!""rl2Yi5!!YMB""!"5S!3"),!!!!%'"rqa)!!!31'% !1%J!+H'!33!8J!%!CT!!(J!!U!%!5#`!!!"!JJ!-1'!!!%J!!!JiB!!"J!%!L$J K!)"m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#"m#!+QNq(rr*2"rrL3!!%!#*3Krd" mIKYiIm2cH%[rr#&mIaYiXm%!8$KK!$K)!#S9J%%!&(aJ"c9!JJ!`+"m!!%'#!#J i(`!)N!!"!%US(`!#1'%!1,!"!%k!(`!%N!!"!'K)!#RjJ%%!&#JI!!""JJ!-1!! !!,!I!!"mB!Fe3))!$$KJ!!")!!!)1'!!!B!"!-Ji)3$!I!J$TS2Krrb$`Iri6S! !)+!$!!48!-qq+!!!!8'#!!`S!!!#3))!%)J$!!dS!!!!3B)!'$KL&l!i!!!MN!! $!!!iB2rr6S!!))J$!!K8"Ypq9-!'2d##!!b!B`!86S!!)&6!"Mk!S`!BJ)-!)#J !!!1!B`!`I!8J8(aM!K40J!!J1!ErrRaJ'&"1J!!JI!J#TT!!!3!)P#(r`%[rrhQ !!3")1#%!3(`)!kC1J!!JI!J#TT2Krrb6`IriNk(rp*!!!3!)P#(rX(ap'hKm[LY iN!#"!'bJ(3!%1q)AX&3!cliS!!!"3))!%)JG!!dS!!!!3B)!&$J!!#13!"m!!$K Jrrp)!!'%L"d!#&3!hhiS!!!"3))!2(qMkhJiJ!!!5rr[i@!!!!!X!`!!3B)!*$J !!!'B(3!01!!!!*!!(3!N1!!!)j!!(`!!1'$rrdJ!!6`X(J!"3))!)$[!!!"rSqY i5rrqZB!"!'`S!`!!I!!D&*!!!3"X,"i!!N'#!*!!L"d!"&3!lhiS!!!$3B)!J)J G!!K8!0pq+!!!!N'#!!`S!!!$3))!D)#"!'b!(3!8I!3!3%#!!"#!(3!`I!3!3%# !!"L)(3!)1'!!!&"J,M5B(3!)5!!!5)"p!"Km!#"3I!-#&*!!(3!JJ)%!E)!G!"3 iB!!#I!3!8*!!(3!NL"d!#&"J,M5B(3!)5!!!&)JG!!JiB!!!8'!Z0*JG!!L)(3! )9!$IId##!'5"R3!d+!`!!%'#!%5!I3!!J0d!4(r&mhJiJ3"X5!!UAB""!"3X!`! !3B)!*$J!!!'B(3!01!!!!*!!(3!N1!!!)j!!(`!!1'$rrdJ!!"`iB!!!Q(d!$)! "!'b3!"d!&*!!I3!N1'!!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp%k!!#"m#!+ QN!!"!!L8)Ir!5rrq"B!"!%Ji)3"!I!J$TNk!!#"m#!+QNq(rr*!!!3!)P#(r`(a r'hKmJb0iIq6lH%J!*`@!33!8Iq2lH)!"!%Ji)3"!I!J$TS2Krra1J!!JI!J#TT2 Krrb3!!%!#*3Krm"mIaYiIq2lH%J!!(PJ!!!!Iq2lH)!"!%Ji)3"!I!J$TS2Krra 1J!!J1'2rrcLP!!&)!!!8M!-!!A`!)%"!JJ!)6S!!)$5Prrp!J[rX1'!!!%k!!#" mBbS81+8!!8J!!"5-!rrrI!!J3%##!!K1J!!J0+Arrd##rq`iB!!!6S!!)#J&!#" 8KJBq112rrd'!!*!!I!F!d&3!"lp"JJ!8I+!S8*c(!!%d!2rr3),rq#J'!!""JJ! F9-2!$P6!J"j8a%!ZI'!$H(b!!hKmaJ0i9+$CIcMRrre"JJ!XP-F!"*6(!!58a`! %P-F!"*6(!!58a`!%P-F!"*6(!!3d!2rr3),rh&5Jphp"JJ!3P-F!"$3!rrp!J[r i11F!!e5P"liS"3!!6B)!)*c(!!%dTIrr3),rq%k!!##!!J&%1')8K*!!!`!!6S! !)$M!!!#3!--!"$J$!!53!!-!$*!!!`!)2)!!!B#L!9#3!!-!!)!#!8b3!+-!%*! !!`!81)5!!*!!J`!BN!$$!"b3!--!)*!!``!N6S!!)(`)!UD6iIrmNm(rq*1Krr5 6JIr`N!!"!!L8)Iq`I(`EH#J%!!"rRq0i3B)!%$J!rr4m"!"!3)%!$$KJ!!")!!% X1'3!#i!F!"K8I3!iI"d!3%'!!&b"R!!3+!`!!%'#!&#!(!!F,!!!!%##!%3lh3! 3Im2cH(q%ihK)!#H0J%%!&(r%mhKrKH0i5!!##Aaq'hJS(J!!3))!$$KJ!!")!!$ -J"i!!&3G!$T)!!#N+"d!%%#!!!JlS!!3Iq2lH(qNkhK)!!+&I(iEH#JH!!""JJ! 8Iq2lH(r%mhK)!!)p5!!!A)!F!"!S!!!!3B)!3)"m!"Km(4K!3B%!$$[$!"")!!! )1pd!%)'F!""r`r0iIi6MH%J!*[@!33!8Im6cH(q&ihK)!!&aI(iEH#JH!!"!JJ! -1'!!!%J!!$4rirYiIm6cH(qPkhK)!!)pI(dEH)!H!!!iIJ!%B!!!!C!!(J!!I"l S,Q!!!!*m(ZNZJ!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrdJi(rm%k!!#"m#!+QNq( rr*2"rrL3!!%!#*3Krm"mIaYi+!3!!(rqqhK"JJ$31+6rr)!&!!"r`r0i9!!!2*! !"3!!J!8!!(bN+hK8"`!kI-8k&)!'!!"8!!IkN!!'!!#3!1Err%J!!R9mC4YiJ"m !&)"P!!!S!!!!9'F!1Rc&1K4"JJ"`9'!([8##!'L!"Irm,!!!!%#!!&b!"J!!,!! !!%#!!&!iCIrdJ)-!!#J%!!""JJ!3J!-!"*!!"!!%5!!!$)!$!!53!"m!))#$!!3 S"!!!3B)!$)!$!!#3!!3!!)'I!"4rj2Yi5!!PTB""!"4)!!!3Im2cH(bN+hK)!!# "J!%!5$JK!%"m#!1QJq(rr)2"rrK1J!!J+!-!!%##!!`iB!!!6S!!))$&!#"mCaY i+!B!!(cS1hJj*2r`3B)!#*%'!!!i!!!!N!!)!!#!"3!J1)$rr*!!#!!%N38!)*5 (!!L9*`!%1!Rrr(cR!K54*`!!P)F!"$KM!!a1J!!J1!-!"*!!"!!%J!-!$*!!"!! )J+-!$*!!K3!%N!#$!!a1J!!JJ+-!!(`%+%"!JJ!-J!8!#*!!!`!!J!3!")"N!!L 3!!-!")!%!!L!C!!%N!!$!!K1J!!JI'BEH)#Q!!"mSbYiJ!8!!&3!!$Tm!#"!3B! !%(bM+hL3!+B!!%k!!##!T3!)I!8B3%##rp`iB!!!6S!!)(`)!UDr)IrNN!!"!!L 8)IqJI(mEH(bC)hL$f3!!1!8!"eI$!$TrH4S8JlX!!&3D!$JX(3!!IjSB8%'!!#K AS!Ir3))!)(rMqhKrC0Yi5rrr59HJ!$TrR!)8IhX#&%J!!"!S(!!33)!!#%J!!&K A`!HqId-$H&I!"rq3!(N!!(bCdK4!JJ!)Nd6rr&I!"rp"JJ!-1!!!!NJ!!!Ji!!! !Ii!$H*!!"!!!Nj[rr)!E!!"rirYi9!!(qT!!'`!!5rrq[Ap$dhL!!3"S1#%!B(` )!kDl)IrN6S!!)(`)!UDrBIrXN!!"!!L8)Iq`I(XEH(bF)hL!(!!!9"i!1RrmmK5 !(`!!,!!!!&3G!$T"J!!X9!!(rd##!#4rBpYiIq6lH%[rrRf!(!!!IplU&&3!"lj r`!0iN!!F!!#!(!!!Jlcrr&3!"le!JJ!-,"d!!%#!!"!i([rmIp`",NJ!!$4rrH" 3If2EH(rNqhK,rrieJ"m!!(qpmK48!!HqIk!$H*!!(`!!1"hrr(rmqhKr[`%ZIi2 MH)!"!&Ji)3"3I!J$TVYKrqa1J!!JI!J#TT!!!3!)P#(r`%J!(`@!33!8J!%!5$J K!%"m#!1Q6S!!)(`)!UD3!!%!#*3Krm")!"ljJ%%!&)!"!%Ji)3"!I!J$TNk!!#! i!!!"Q!(rm$J!!!#B!IraQ!(rmTJ"rr1B!IrdN!!"rrL3!!(rr$M$!!'*"J!!1') 0d(d)"h3X#!!P3))!-*N"rr@!JIr`J!(rp$KQ!!'3!)8!!*!!"3!%J)(rq)!"rrb 3!)8!#*!!"3!-6S!!)$J)rq!S!!!315!!!8'"!'3iiJqJ9!!31RcR!#jmk31Q6S! %)$J!!!#B!Ir`5!!!5*NKrr&)!!"!L!(rm5J!!!&"JJ!d1!!!!TJ"rr&)!!!SQ5( rmdJ!!##)!Ir`+!!!!%'#!"3i!!!#Q!(rm%J!!!Jj)!!!,!N!!%'#!"#0"J!"I3J (G%[rrh`X#!!U3))!B)$N!!!ij`!%N!$N!!#!"rrm,!!!!*!!!Iri3)!!'$J!!!# B!Ir`J!(rq(`!!0#3!!(rq)d'!!&p#!Gd5!!!0%J!!##!!Iri(!!!#RcS!K3i"rr 3N!!"rrL0"J!"I3J(G&8!"Mjm!`#Z9!!'pd##rpL!!Iri,!!"r8#"!$3i!!$rQ!( rpB#"rr#!!Ird1'B!!C!!K3!!N!!&!!5!JIriJ!(rr*!!K3!)N!!&!!a1J!!J,!J !,N##!(`i!!!"Q!(rmSd'!!&p#!Gd,!J!+N##!&5!C!!!1'-!"*!!C!!!J!2rr#` !!!#3!!(rr%#!!!`i!!!!Q!(rmSd'!!&p#!Gd5!!!0%J!!##!!Irm(!!!#Rb)!K3 i"2r3N!!"rrb0"J!"I3J(G&8!"Mjm!`#Z9!!'pd##rpJX#!"S15!!!8'#!#"!J!! 3,!J!6%'#!#K)!!!`,!J!E%'#!"")!!!NQ5(rp%J!!#!i!!!#Q!(rp%J!!"3i!!! %Q!(rp%J!!!Jj)!!!,!N!!%'#!!b0"J!"I3J(G$J)rlXS!!!cQ3(rp8'"!5!iBJl 39!!31RaM!#jmD31Q6S!%))J"rr3S!!!%3))!$$J!!!1B!IrdL!(rmLJ!!!"!JJ! 31!!!!C!!!Irm5!!!k)J"rr!S!!!#3))!h$J!!!'B!Ir`5!!!d)!"rr`X!!!!3)) !$$J!!!'3!!(rr)J"rr3S!!!"3B)!$#J!!!*!JJ!31!!!rjJ"rr9)!!#FL!(rmLJ !!!"!JJ#3!$J!!!D3!!(rr%J!!)3i!!!#Q!(rp$J!!!'B!Irc1!!!H*J"rr8i!!! )N!!"rra)!!"JL!(rmLJ!!!"!JJ!3L!(rp#J!!!""JJ")1!!!rjJ"rr9)!!!mL!( rp#J!!!""JJ!`1!!!rjJ"rr9)!!!NL!(rp#J!!!4!JJ!B1!!!!jJ"rr4)!!!-1!! !rjJ"rr@!JIr`J!(rp$KQ!!'3!)8!!*!!"3!%J)(rq)!"rrb3!)8!#*!!"3!-6S! !)*!!S3!JN!$"!#53!1%!+*%"!#`X!`!!11!!!$LNrrpmDKYiI1BlH*MP!!"!JJ! `J3%!,#`)!!"!JJ!NL3%!)bJ)!!""JJ!3L3%!*5J)!'p"JJ!-I+-VH%k!!##*!3! P15MrU#J*!#""J3"F13)2j&8T%$Tp#%JZI3N$TNk!"#!X!`!!1!!!#N#!!$ap5J$ 311!!!8J!!$!i!!!!Q!%!)6J!!!K)!!!J1!!!!*J"!#%i!!!+5!!!%$J!!!#B!3! K1!!!%(d+!jCp#!(@I3K38(e+!jBX#!!+3)!!$$N)!$")!!!JL'%!*6N)rrBS!`" i3))!$$N)!'&)!!!)13J!35J+!!#G"Irr1-B!!8##rlJS!!!)3))!+)KK!#-S!`! !3B)!()KP!!!X!`!`3B)!%$KJ!$#FCIrr1-B!!BKK!#!S!`!#3))!6)"K!#JX"`! !N!"K!#a!JJ!3L'%!)5J$!!""JJ!3J'%!,$KMrrq3!'%!,#J!!""!JJ!FL'%!)bJ $!!""JJ!3J'%!,$KMrrk3!'%!,)%"!#amC5"3I'JD&#`$!Ie!J3!-1'!!!%k!!#! iJ!!`5!!!$*b&rrmiaJ!"J'%!,(`''!""J2r`+!!!%%##!##)!3!M+!!!!%'#!"5 )!3!PR!ArrcJ!!$#F"Irr,!F!!%'#!"!i!!!YR!ArrdJ!!#b)!3!K+!!!!8##!"! i!!!VR!ArrdJ!!"3S!!!#3))!$$J!!##F"IrrI+-VH%k!!#"m#!+Q[Z(rh*!!!3! )P#(rS*!!`3#%N!$K!)L4!3#-I,JVH*%K!*!!1b!!!(mJrR"mKFTiI'!#H$Yirrp mS!0jI*iMH(ar'hKr1XYiQcX!!%##!$#!!3#3!#`!!!"!JJ!NL!%!KbJ!!!""JJ! 3L!%!L5J!!'p"JJ!-If2EH%J!!Nb)S3#*1!ArU#J!!#""J3"i1+)3D&3!%$TmT3! ZI+N$TNk!"#!lS!!!E'@!!'qMJ!"m(5!3I'-T%(aP+4"mB`$41i!!#N'#!%!MhJ! !Irm"N!!l)!!"5!!!-$ZJ!!#ES3#&1i!!#%J!!#!lS!!!Qk%!K6Z!!!T)!!!31k! !!*ZK!)8lJ!!3Iq2lH(r%mhKrTHYiIiEMH%J!&(PmPb0iIq2lH(r%mhKrTHYiIiE MH%J!%h8X&`!+I*iMH(ar'hK!J!!-1[F!-%J!!##)!3#*1[IrpLJ!!(K!JJ!-1[F !B8J!!!Jkp`""1)!!!(r$)RKri#*iI'!$HCllrrml@J!"3),rL$J!!!KrJ`*iIk! LH(aJ!hP!JJ!SL!%!KbJ!!!""JJ!FL"X!!#`!!$""JJ!31!!!-*`Errml@J!"L!% !K#J!!!*!JJ"FJ!%!M#`C!!#3!!%!N!"!JJ!3L!%!K5J!!!""JJ!3J'%!N!!i!rr rN!!"!*!!1'!!%$J!!!"rJaTiIk!#H(aJ!hP!JJ!FL!%!KbJ!!!""JJ!3J'%!N!! i!rrqN!!"!*!!J'%!N!"m'm"3I!-#&#`!!Ie!J3!-1'!!!%J!!*3iB!!`5!!!$*a lrrml@J!"J!%!N!"m'J!!3B$rm$KJ!"!i!!!!Ii-DH(qJ!RKmB!0j3))!))J"!)F S!!!!3B)!&)J"!)QF'rrr1!!!-*`ErrmX'3!!3B)!%$J!!#fF'rrr5!!!,)J"!)8 S!!!"3))!%$J!!#ZF'rrr5!!!&#J!!!*!JJ!-1!!!)*`ErrprBpYiJ!%!D$JK!'" m#!1QZZ(rh%k!!#!X"!!!3)!!*$J!!!#B!`!!X!-!!MJ!!!'B!`!%1!!!-*J$!!9 1J!!JL--!"(`%-!"-J!!JI+-L&$MP!!D-Trrr1+Ard(bJ"h3X!!!&3))!3(bM-K3 iT3!&1+Arrh`&1%"!J3!3L!8!!#`!!$""J[rXI!8i3%##!"#)"rrr9!B(rNJ!!&3 i`!!"5!!!6(`!!#C8"KIq5!!!3)`(rrpmS$)81+Ard(bJ"h3X!!!*I!!!*P3'&rp !JJ!-I+!(G8##!!`iK2rr5!!!%$J&!$#B"`!!5!!!$#`%!!"!J[r!,!B!!%'#!#5 SJ`!#1!!!!6L%!!'`J`!#Q!-!"$J!!$'B!`!&6S!!)#`%!!""J[m!Q)-!"%k!!#" m#!+Qfq(rq*2Krqb6`IrSN!!"!!L8)Iq!N!$"!+6ri!L3!*!!i3#SN3%!V(bq+hL 4)3#`J!%!X#`!!Ie!J3!-1'!!!%J!"36m)2L3!$J!!!#B!3!i1!!!),!"!$SiB3! i1-%!2%J!&E'!33!8L!%!3$[K!%&rr`)85!!!()KK!%!i!rrrQ!%!3+KK!$ii!`! "X!%!2SJ"!%!S!!!"3)%!%)`IrrmX!!!`3B,re)J"!%%X!!"*3B)!-%#!!"!X!!! `3B)!&%J!!(`X!!"13B)!@%J!!(!i!!!!Q!%!2,!"!$j)!!"Jb!)#12`I!%"!J!! F1rlrqcL#%1arirYi5!!,q@!!!!")!!!B1rlrr(rMqhJiJJ)X5!!,i@!!!!"rirY i5!!%+$[qrrarirYi1))#-%J!#m9J!!!!Iq2lH%J!"!b)B3"!U!%!2MKMrrpm!"S 8X!%!2M[qrrmi!!!!Q"m!!)J"!+NX!!"P3B)!p%#!!#JX!!"'3B)$d%#!!"!X!!" &3)!!h%J!!m!X!!")3)!$Z%J!!"3X!!"R3B)!$%#!!kK)!!))L!%!3)#"!,"m!#! !3)%!$$KK!$a,rrdjU)%!2L`%rra"J!!3J'%!X(`%'!""J!"3L!%!TbJ!!!""JJ! 8J'%!X$J$rrq3!!%!X%J!!"#)B3"!1!2rrj!!!3#`L!%!U5J!!'G!JJ!31!!!CCJ "!+P)!!"-1!!!4CJ"!+P)!!"!L!%!TbJ!!!""JJ!81!3!!A`!'!!%!X%J!!A# )!3"!1'3!!A`$!&'3!!%!X%#!!9`i!!!!N!!"!,")!!&3J'%!X)J"!%!iJ`!"I!! J!%#"!!`iB3!m5rrmIDLK!$iii!!V,!8!!%#!!!amT3$311!!,6M!!!!iJ!!+5!! !)(aP)pCmBb(@I'-S8(bP)pBi!`!`R"rrrcM'!!%X"3!!3),ri#`'!!*"J2rBR2r rriJ"!+QF(rrrJ)%!X(`Im&"m"!)8,!!"r8#"!!`iB!!!5!!#A)KK!%!i"!!"I!- !!%#!!#!i"!!#I+-!8$J!!$")!!!)R"rrrc5Prrp!J[riL+%!3$L"!%&mK#S85!! !$)`%rrqF(rrr0+Arrd##rr5!!3#`,!!!!%##!"#)!3#R+!!!!%'#!!`i!!!ZR"r rriJ"!%'F(rrrL!%!2(`!"h9"JJ!31!!!,C`Irrp)!!(-L!%!T5J!!!&!JJ!31!! !+j`Irrp)!!'d+!!!!N##!D`i!!!JR"rrrdJ!!D#S!3!qL'%!3(`!!0!iirrrI1! k&8#!!!Jii!!!J'%!X(`('!"!J3!dL!%!3(b$1&!iB3!mI)3!8%[rqa'S!3!qL'% !3(`!!0!iirrrI1!k&8#!!!Jii!!!U!%!2M5J!!&!J!!)1+!!!(`&1K3X!!(p3)% !$$KJ!!")!!%SL!%!3$L"!%&mK!)81-!!!$KJ!$")!!!-R(rrrcM'!!'!!3#`I!F !8(`'!!""J2rX1-!!!%J!!"#-"2rr1-B!!C`Irrpm"MJ!3)!!%)J"!%"m"J!!3B$ rj$J!!$")!!!-R"rrrcM'!!&m"MJ!3B$rp)!"!,!X!!!!3))!%)J"!+FS!!!!3B) !$$J!!#kF(rrr,!8!!%'#!%3i`!!!1'!!-%J!!!bFIrrr1-B!!BJ"!%"m!#K3I!B !!%'!rqa)!!!3M!6rrcM'!!'F(rrrI!BS!%'!rr")!!!-1!!!-*`Irrq)!3!mI!! (G8'#!"!i!!!YR"rrrdJ!!#b)!3#P+!!!!8##!"!i!!!VR"rrrdJ!!"3S!!!#3)) !$$J!!##F(rrrIq2lH)!"!)Ji)3#!bq(rq(`)!kD$iIrXJm(rk%k!!#"m#!+Q[U( re*!!!3!)P#(pJ(ae'hL3!+%#S(bE)hJlS!!!1q%#0dJ!"QarBpYi1)!!*8J!"m& J!!!!I(`EH#JF!!"!JJ"%If2EH%J!"bPJ!!!!I(iEHAqpmK4"JJC%If2EH(r%mhK qTUYi1+!!!8[rh19J!!!!+!-!!%##"L3iB2rr5!!')(rEi&&r[I)83B)!,(pMfhK ra20iIUDVH$LJ!!&,rpbaB!!!!#J$!!"!JJ!-1'$rrdJ!"HarQq0iIf2EH$L"!U! iS3)i5rr[kBJ"!MemHaYi,!!!D8'#!+4!J!"B,!!!@%'#!@4!J!!S,!!!48'#!L4 !J!!3,!!!*8'#!j!!5!!$S#`!!%G"JJ)-5!!$P#`!!'4"JJ"S3)!!%#`!!'0!J!0 -5!!$I#`!!'K!J!0d5!!"j#`!!(9"JJ%33)!!+#`!!'p"JJ%%3)!!%#`!!'j!J!+ i5!!$6#`!!(0"JJ)85!!$3#`!!2p"JJ-i3)!$0#`!!(K"JJ$85!!$+)J"!M`S!!! #3))!')"K!U!iB`!%N!"K!U#$3rrm5!!!0#J!!!0!JJ!FJ'%#S$KM!!L3!'%#S)- $rrb$)rri5!!!&)"K!U!iB`!%N!"K!U#$3rrmL!%#2#J!!!&!JJ!)IeS(0)J"!M` S!!!$3))!0)$"!ML!i3)mJ3%#3)%K!N4r)mYiI`6$H$LK!MK,rr5aI(FEH#JA!!" "JJ+3!%J!!#b!S3)iJ-%#2)$K!N#"!3*%Id26H$L"!MK,rr*CI(FEH#JA!!""JJ* NIpIi8%J!!U5)!3)m+!!!!N##!"L!B3+J1'-!"*!!B3+JJd2rr%J!!$3S!!!$3)) !()"K!U!iB`!)N!"K!U#$!rrmJb2rq%J!!"5!B3+J1'-!"*!!B3+JJd2rr)J"!M` S!!!"3))!#&GD"$k)!3)m+!!!!d##!$5!`3)iJ1%#2)%"!N#")3*%Ib2,H(m%`hJ iS3)i5rrcjAah'hJS&`!!3B)"a%J!!#b!S3)iJ-%#2)$K!N#"!3*%Id26H$L"!MK ,rr'0I(FEH#JA!!""JJ'BIpIi8%J!!GL)!3)m+!!!"%##!"L!B3+J1'-!#*!!B3+ Jb#2rq%J!!"5!B3+J1'-!#*!!B3+Jb#2rq)$"!ML!i3)mJ3%#3)%K!N3iS3)i5rr h5Aah'hJS&`!!3B)"2(rAq&")!!&mJ'%#S$KM!!53!'%#S),Mrr`S&`!!3))!#$V L!M5)!3)l+!!!!%'#!#b)!3)kLpF!!#J!!!!kp`!"3B)"3)!"!N4m(J!!3)%"0(` H!hK)!!%XL!%#1LJ!!!""JJ!XJm%#4(lMZhKraI0i1)!!!%[rjK&J!!!!+!-!!%' #!3"reaK35!!!q(lMZhK)!!0jB!!!!(aq'hK)!!$NJ'%#S)J"!M`iB`!%N!"K!U! X!!!#JZ2rr%'#!$4!J!!8,!!!!%'#!"K!J!!F5!!#A#`!!!4!J!*85!!!(*1h!!" )!!*)XlF!!%J!!N#6Y`!!5!!#1*1h!!4rS2j`N!!A!!")!!)SJ'%#S$VK!$JiB`! %N!"K!U#!!rrm1m!!!CJA!!")!!"J1Z%!1$J!!#@B&`!!1m!!!8J!!%arJq0i5!! #c@!!!!"mIKYjIlhb&%'#!#arJq0iIm6cH(kQUhJiS!!"5rrBL@!!!!!S!`!!3)) !$$KJrrp)!!(%Ik2VH%J!!Eb)!3)iIpccH#J!!!""JJ$i+!!!!N##!!`k`!!`5!! !#$V!!##)&`!!I!!(G#`!!#Y"JJ!-,!!!,8##!-"q`!Gd,!!!-%##!,5!G3!N+!- !!$J$rrq3!"8!*%'#!##!G3!JL*F!!$J$!!'3!"8!)*L$!!"8J`Bq5!!!')Kh!!" qT+YiI'-(G%[re'&J!!!!,!2rrd##!!`iB2rr5!!")$Vh!!%lh[rr5!!!9)"e!#3 S!`!!1!2rrj!!&3!N3B)!()#9!#"@``Bq1!3!!C!!&3!JQX3!!%J!!"4q``GdIU5 VH%[re!PJ!!!!,!2rrd##!!`iB2rr5!!!b$ZF!!'!!3*!I"`!!%'!rkJX(J!!3B) !,(lMZhKra20iIUDVH$LJ!!&,rpG0B!!!!#J$!!"!JJ!-1'$rrdJ!!)L)!3)i+!! !!%##!'Jk`!!J5!!!9)"e!#3S!`!!1!2rrj!!&3!N3B)!()#9!#"@``Bq1!3!!C! !&3!JQX3!!%J!!"3iB!!JIU5VH%[rdfPJ!!!!,!2rrd##!!`iB2rr5!!!+$ZF!!' !!3*!I"`!!%'!rkKr[H)8L"X!!(`!"h9!J[Q3!(qMkhL!!3+)1#%#J(`)!kDkSIr 86S!!)(`)!UD6iIrmNm(rq*1Krr53!!%!#*3Krh"mI4YiI*iMH(br+hKrT1Yi1'% !1$LJrrmi`!!"5!!"L@!!!!"ra20iIqAlH$KK!$K,rrN&,!-!!%'!!!`i!!!!I"d CVS!"!*Ji)3#3!(`)!kD$iIrmJm(rq)1Krr41J!!JI!J#TT!!!3!)P#(r`*!!S3" JN!$"!'53!1%!D*%"!'b4)3"`N8%!G*!!J3"FJ)%!A$LK!'",rrpCJ!%!5$JK!%" m#!1Q6S!!)$L!rrmiBrrrM!-!!6L%!!%S!!!!3),rp(b$)hK1J!!J1+6rrcM$rrq -K3!"9)!'2jb'!!&!J[rd6S!!)$M%rrmiirrr1+8!!8J!!#b-KJ!"9)!'2jb(!!& !JJ!F1!!!!%J!!!LF"`!"0+Arrd##rrK1J!!J0+Arrd##rp41J!!J1'2rre5%"Mj )!!!3I!!J3%##!!K1J!!JM!-!!93!"Mp!J[rX+!3!!%f#!#!iB!!!6S!!)$LMrrp 8K!Bq1'!!!%J!!""m!#"!3))!#(bM+hL-"3!"9!!'2d##rq`S!`!!3B)!#%k!!#! S"!!!3B)!$$KJ!!"1J!!JI+-VH%k!!#"m#!+QNq(rr*2"rrL3!!%!#*3Krm"mIKY iI)FMH(bJ+hKmhc0iJ))#3(r$mhKmj6YiI!B$H%[rc(PJ!!!!L"i!#(r$mhK6i#i dQ"i!#%[rcX9J!!!!1'!!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)$KJ!!*1J!! J1'!!!%k!!#!iB!!!6S!!)(`)!UD6iIrmNm(rq*1Krr53!!%!#*3Kr["mI4Yi,"d !!%'!!"3X(3!#3B%!$$KJ!!")!!#3!$[J!!#ci3"8Xk%!8*2K!%SiB3!i5!!*bB" "!"4mIKYiIm!(08##!%#S!3"11'%!H,!"!)kcS3#3!%J!"`@!33!8I(iEH(r!"c9 !JJ!FU!%!6T2K!)U`!3#11'%!H%J!#CQ!33!8Im!(08'#!"!iBKH`Im!(0*!!!`! !Im!(08##!!`iB!!!5!!!#$KJrrq!!3%B1#%"%(`)!kD$iIrmJm(rq)1Krr41J!! J18)KM$PJ!!!i!!!JI!N$TS!+!!JS!!!!3))!+*!!DJ!)N!#+!!b3!+S!%*!!bJ! 8N!$U!!#4#J!%I@0EH*%U!"K1J!!J1@X!!6P+!"a#!2r)1'$rrdk!!#!X!`!!6B! !)#`$!#"-J!!J('-!($L#)B`i!!!!I'3D&*!!!`!)N!!$!!b3!!-!%*!!!`!8N!! $!!#3!!-!"*!!!`!B6S!!)(`)!UD6iIrmN!!"!!L8)Ir!1q)P$%J!!##!"3!!1)$ rrj!!(`!!J'8!#)'&!!4)!!LpJ%%!&)#r!!!S"3!!3),rh)!"!%Ji)3"!I!J$TS2 Krra1J!!JI%-6H%k!!#"m#!+QN!!"!!L8)Ir!5rrrlAaT'hL!BJ&`J))"E$LL!!! i`L83J1)"B)%#!9a,rrlPB!!!!)##!I#3!'3!!%[rSiPJ!!!!1'!!!)!"!%Ji)3" !I!J$TNk!!#"m#!+QN!!"!!L8)Ir!5rrr3@!!!!#!BJ(`J'-!!%[rr[&J!!!!J!% !5$JK!%"m#!1Q6S!!)#`$!!"mB!!dI)N!0%##!!Ji#3!J,!8!!(bT!$4mbJ!d3)) !#$NU!#"m!%J!)8!!3%'"!,!j+3!")5N!3(`!5K4p+9"3I5N$TL`*!#!ikIrJ3B! !%(aS2$!ii!!!5!!!'(b)6$!Jk3!JI'Fi-(d)1hKmCd``,!!!)$%Jrq""J!!3I)0 )-$L!!!")!!!BI'-!-#%J!#"mL8``I'0,H(b%!$!j32rr-1F!!(b%)44mBaN8I3K "&(cR144m"N!3I58j%8'!!""m#!0iI5G,H$!+!!&#!2rBI)3K&(aM'441J!!J1)! !!$KJ!!"1J!!J,!-!!(aJ!$4mL3!d3))!#$J*!#!X"3!!I+N!0(c+!$4!JJ!)15S !)(`!5!!K3!"!3B%!X$NT!!%K+3"!I!"+&(dT8&"p+31Q,!N!)$MTrq""J!!3I'J m-$MJ!!")!!!BI)K--#$T!#"mCcJ`I3JlH(aR6$!X!!!J-5$ri%'!!""mJdJ`1)! !!%J!!"KmB`!`)5!!)(b*6$"mBdYiI)3!-$P!rrm`j`!!I)3K&(aM'44p#%%8I1F j&(`'3""p*6N43B!!%(`)!hKp*dYi-!S!!8)!rpKp"%0iI1-lH%k!!#"1J!!JJB) !k*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!1#3!%%!&)!-!!#!6!!%I!N$TNk!"## "JJ$%N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!,*!!33!8J!`!!)"-!!4m#31Q6S! %))'#!*!!N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!5*!!33!8J!`!!)"-!!4m#31 Q6S!%))'#!(53!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ$dN!""!"5!$!!!J%`!"(` *!kC1J!3JJB)!d*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!-b3!%%!&)!-!!#!6!! %I!N$TNk!"##"JJ!3N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!"*!!33!8J!`!!)" -!!4m#31Q6S!%))'#!-L3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ$NN!""!"5!$!! !J%`!"(`*!kC1J!3JJB)!Z*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!$53!%%!&)! -!!#!6!!%I!N$TNk!"##"JJ"!N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!$*!!33! 8J!`!!)"-!!4m#31Q6S!%))'#!#53!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!8N!" "!"5!$!!!J%`!"(`*!kC1J!3JJB)!q*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!)# 3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ#XN!""!"5!$!!!J%`!"(`*!kC1J!3JJB) !B*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!,b3!%%!&)!-!!#!6!!%I!N$TNk!"## "JJ%!N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!9*!!33!8J!`!!)"-!!4m#31Q6S! %))'#!-#3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ$8N!""!"5!$!!!J%`!"(`*!kC 1J!3JJB)!H*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!$#3!%%!&)!-!!#!6!!%I!N $TNk!"##"JJ!)N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!'*!!33!8J!`!!)"-!!4 m#31Q6S!%))'#!*L3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ$FN!""!"5!$!!!J%` !"(`*!kC1J!3JJB)!L*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!,#3!%%!&)!-!!# !6!!%I!N$TNk!"##"JJ#8N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)""*!!33!8J!` !!)"-!!4m#31Q6S!%))'#!$L3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ"SN!""!"5 !$!!!J%`!"(`*!kC1J!3JJB)!C*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!+#3!%% !&)!-!!#!6!!%I!N$TNk!"##"JJ"-N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!E*! !33!8J!`!!)"-!!4m#31Q6S!%))'#!!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ" %N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!M*!!33!8J!`!!)"-!!4m#31Q6S!%))' #!)53!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ$XN!""!"5!$!!!J%`!"(`*!kC1J!3 JJB)!r*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!!#3!%%!&)!-!!#!6!!%I!N$TNk !"##"JJ!FN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!A*!!33!8J!`!!)"-!!4m#31 Q6S!%))'#!$b3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ#FN!""!"5!$!!!J%`!"(` *!kC1J!3JJB)!+*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!,53!%%!&)!-!!#!6!! %I!N$TNk!"##"JJ#NN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!m*!!33!8J!`!!)" -!!4m#31Q6S!%))'#!(b3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!JN!""!"5!$!! !J%`!"(`*!kC1J!3JJB)!U*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!(#3!%%!&)! -!!#!6!!%I!N$TNk!"##"JJ"BN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!f*!!33! 8J!`!!)"-!!4m#31Q6S!%))!-!!#3!%%!&(`*!kD!6!!%6S!%)!!!!"b!!!"N#!# 3"TL!!!#N'!#3"3%mJ!!!G"!!N!8"X)!!!-!B!*!&!R#!!!$S+!#3"30BJ!!!k!J !N!8%3)!!!3`3!*!&"8b!!!"S!*!'"E5!!!#8%!#3"3C)J!!!2!J!N!8'K)!!!$` !N!B'`)!!!'33!*!&"b5!!!%8'!#3"3JiJ!!!`"!!N!8)q)!!!33S!*!&#JL!!!" B%!#3"3TJJ!!"C#!!N!8,a)!!!-33!*!&$)L!!!%F'!#3"3fNJ!!!I!J!N!81))! !!)`)!*!&$V#!!!#d#!#3"3pNJ!!!G!J!N!83*)!!!'`)!*!&%*!!J!!"C$!!N!8 4p)!!!&J)!*!&%Nb!!!'!3!#3"42-J!!"1$!!N!89")!!!P4S!*!&&eL!!!%i+!# 3"4L3!)!!!&3!N!BBj)!!!&`!N!BC3)!!!(!!N!BCX)!!!(!!N!BD))!!!9!J!*! &'h#!!!#)!*!''rL!!!(!'!#3"4fiJ!!"!!J!N!8HZ)!!!*33!*!&(db!!!#B%!# 3"4rNJ!!$@%!!N!8MF)!!!%!)!*!&)l#!!!#8+!#3"54%J!!!9"!!N!8NQ)!!!,! J!*!&*8L!!!"%!*!'@q#!!!"8#!#3"9`mJ!!!@!#3"Pb8J!!!0!#3$B)+)K2dJJ) A&(JAX"4m&)J#i!,S![!#X!,!!XJ#Z!2i!SJ8J!+3!"5%!Y!#f!h3*3aR+'6F*4! %)QFS"L)4r))#(a(d!I`3m3*)%Z!#!!*3![d5H!,i%K!8@"3i&"J6q!-$!PJ$dJ2 *!hi$B!0-!Q!AY"$X%'J2j!l3$k!KM!*%(L%r&b0*EQB")djK6JdL(F!))JS)KJ) 8#I`4p"SJ(q3P5#5B*B`PS#H`,VJZ3#fi0k!eP$6N0""#"%(J@QKDB#*D@!3J-`3 Z59"3"@K[Fh4c*h0[BfYPG&pPGQ9ZG&pSB@jNE'9b1L"cEf0VCA3JEQpd)'PZ)(9 cC3%MU[i(#b,Ap3%K!3%K"!)L!QJ))$%69'9cG&4bB@0V)&9cCA)J5@jQEd9bFQp b)#9N)%GPG(4TEQFJ8hPc)%9ZGQPbEfjc!5"+4@jf9Q9b)#9N)'eKBfK8HA"P)#9 N)(0jFeCPFL!PC#"`FQpM)#9N)%C395!PC#"$Efa[FP&%)#9N)'YLC#!PC#"KG&C PFR-J*@3"+#9c1L9c1L9c!590B@028`%MU[i($#%P!5%"!5%%!L)#J!`K#a8L&,! #)3%$)K5`&L)#U!)L!U!#)J+B##%6&5)9X!)K!3-L&E!@)J+S!L)#S!)L!TJ))4% 9)KD`!L%"!b)@X"BL!UJ#)J+J!L)#Q!#5"##"I`'3#3+3"3'3%J3)N!m`N!S)N!H JN!D!N"3)N!CJN!C!N"3)N!3"J*!(3*!C#*!(3!L3"S#!#*!13%!)N!Z!N!4!#*! )3)!)N!4!3!L3"B#3#`L!N!3)N!S$)N8JJJ+""8A343a&d%A34G"&d%A34G"&d%A 34G"&d%A34G"&d%A34G"&d%6)4G"&d%A34G"&d%A34G"&d%A34G"&I%6)45"&)%8 -4G"%b%A34G"&d%A34EK%b%9B4G"&d%@J4G"%b%A34G"%b%,)3`"$!%,J3`"$!%- !3`"$!%-!3`"#`%-!3V4$!%-!3ZK'Y%E!4X"'`%E!4X"'`%E!4X"'`%E!4X"'I%E !4X"'`%E!4Ra'`%E!4X"'`%E!4T4'`%E!4X"'`%E!4U4'`%E!4V4*)%NX55a*,%N X55a*,%NX55a*,%NX55a)c%NX55a*,%NX5-a*,%NX55a*,%NX53"*,%NX55a*,%N X54"*,%NX*NNJ,8PZCJ'j&J!!!3!!!!(p!!!!r3!!!&S!N2-4GQ9bFfP[ER-ZE@P d,Q9NG3#3"%J!3B!!!!!&-#id,M%l-#id,M%X)%0[F(PbD@GSG#!a16Nh)%eKFh0 KBfKeFf9dG(-J5@jcG'PdGA4P)'pQ)&4PBfKZEfa[ChN!!!#B!*!,!3#3%`*Y0MK V!*!6!3#3"PES!*!*2"&0594IT94PFh48FQ&MDdaTBR"hF'-!N"-"!!"@m!!!F8d !N!Nm%8e*9&qP9'9cG&4bB@0V6'PL!!!"!!!!!Id!!!$p!!!!@JG,jj!!64i!!!! F!&S!!N069&)!!!!DGQ9bF`!!!#CMCR*R!!!!-J4-rrm!N!N"rrm!!!!9!*!'rrm !!!"K"e'ZQ+%S: \ No newline at end of file diff --git a/src/mac/TestTrack/ShlibTestTrack.c b/src/mac/TestTrack/ShlibTestTrack.c new file mode 100644 index 000000000..01c69f69b --- /dev/null +++ b/src/mac/TestTrack/ShlibTestTrack.c @@ -0,0 +1,115 @@ +/* + * Copyright (C) 1997 by the Massachusetts Institute of Technology + * All rights reserved. + * + * For copying and distribution information, please see the file + * COPYRIGHT. + */ + +short MacOSErr; + +#include +#include +/* sarac 02/19/98, added Sound.h for SysBeep() */ +#include + +#include "TestTrackLib.h" + +#define TBALERTID 135 +#define TB30ALERTID 136 + +struct VersionResourceRecord { + Byte majorRev; /* Major revision in BCD*/ + Byte minorRev; /* Minor vevision in BCD*/ + Byte releaseStage; + Byte nonReleaseRev; /* Non-final release # */ + short countryCode; /* Region code */ + Str255 shortVersNumStr; /* Short version number */ + Str255 longVersNumStr; /* Long version number */ +}; + +typedef struct VersionResourceRecord VersionResourceRecord, *VersionResourcePtr, **VersionResourceHandle; + +OSErr ShlibTestTrack(CFragInitBlockPtr ibp); + +OSErr ShlibTestTrack(CFragInitBlockPtr ibp) +{ + OSErr err = noErr; + short fileRefNum, saveRes, processResFile; + ProcessSerialNumber thePSN; + ProcessInfoRec thePIR; + FSSpec currAppSpec; + VersionResourceHandle versResource; + char versionString[256]; + char processSignature[5]; + short len, i; + + if ( (Ptr) test_track != (Ptr) kUnresolvedCFragSymbolAddress ) { + /* Start our hack by saving the current resource ref*/ + + saveRes = CurResFile(); + +/* if (ibp->fragLocator.where == kDataForkCFragLocator) + { + fileRefNum = FSpOpenResFile(ibp->fragLocator.u.onDisk.fileSpec, fsRdPerm); + + if ( fileRefNum == -1 ) + err = ResError(); + }*/ + + /* We assume that the current process is the one calling us. Good bet */ + err = GetCurrentProcess( &thePSN ); + + if ( err == noErr ) + { + /* fill in required fields for the ProcessInfoRec */ + thePIR.processInfoLength = sizeof(ProcessInfoRec); + thePIR.processName = nil; + thePIR.processAppSpec = &currAppSpec; + + GetProcessInformation( &thePSN, &thePIR ); + + /* copy the processSignature into a string */ + BlockMoveData (&(thePIR.processSignature),&processSignature,sizeof(OSType)); + processSignature[4] = '\0'; + +/* processResFile = FSpOpenResFile(&currAppSpec, fsRdPerm); + err = ResError();*/ + + if (err == noErr) + { + versResource = (VersionResourceHandle)GetResource('vers',1); + + if (versResource != nil) + { + /* Make a local C-string copy of the short version number string (a Pascall string) */ + HLock((Handle)versResource); + len = ((**versResource).shortVersNumStr)[0]; + for (i = 1; i <= len; i++) + versionString[i-1] = ((**versResource).shortVersNumStr)[i]; + versionString[len] = '\0'; + HUnlock((Handle)versResource); + + ReleaseResource((Handle)versResource); + } + } + + if ( thePIR.processType == 'APPL' ) + { + if (test_track(processSignature, versionString, true, true, 0) == -1) { + SysBeep(10); + SysBeep(10); + + ExitToShell(); + } + } + } + /*if ( fileRefNum != -1 ) + CloseResFile( fileRefNum );*/ + + UseResFile( saveRes ); + + } + + return err; +} diff --git a/src/mac/TestTrack/ShlibTestTrack.h b/src/mac/TestTrack/ShlibTestTrack.h new file mode 100644 index 000000000..12e656b1a --- /dev/null +++ b/src/mac/TestTrack/ShlibTestTrack.h @@ -0,0 +1,19 @@ +/* + * Copyright (C) 1997 by the Massachusetts Institute of Technology + * All rights reserved. + * + * For copying and distribution information, please see the file + * COPYRIGHT. + */ + +#ifndef __SHLIB_TESTTRACK__ +#define __SHLIB_TESTTRACK__ + +#include + +/* Special version of TestTrack for shared libraries -- uses calling application's + version information */ + +OSErr ShlibTestTrack(CFragInitBlockPtr ibp); + +#endif /* __SHLIB_TESTTRACK__ */ \ No newline at end of file diff --git a/src/mac/TestTrack/TestTrackLib.h b/src/mac/TestTrack/TestTrackLib.h new file mode 100644 index 000000000..b005b1c09 --- /dev/null +++ b/src/mac/TestTrack/TestTrackLib.h @@ -0,0 +1,59 @@ +/* + * Copyright (C) 1992 by the Massachusetts Institute of Technology + * All rights reserved. + * + * For copying and distribution information, please see the file + * COPYRIGHT. + */ +/* + * Function prototypes for testtrack routines - shared library version + */ + +#ifdef __cplusplus +extern "C" { +#endif + +#if GENERATINGCFM + +#define InitializeMacAthenaLib() +#define TerminateMacAthenaLib() + + #if defined(__CFM68K__) + #pragma import on + + extern int test_track(char *appl_name, char *appl_vers, Boolean edit_flag, + Boolean do_logging, int check_probability); + extern short GetBSDMacOSError( void ); + + #pragma import reset + #else + + int test_track(char *appl_name, char *appl_vers, Boolean edit_flag, + Boolean do_logging, int check_probability); + short GetBSDMacOSError( void ); + + #endif /* endif __CFM68K__ */ + +#else /* else GENERATINGCFM */ + + typedef int (*test_trackProcPtr) (char *appl_name, char *appl_vers, Boolean edit_flag, + Boolean do_logging, int check_probability); + typedef short (*GetBSDMacOSErrorProcPtr) (void); + + extern test_trackProcPtr gtest_trackGlue; + extern GetBSDMacOSErrorProcPtr gGetBSDMacOSErrorGlue; + + #define test_track(appl_name, appl_vers, edit_flag, do_logging, check_probability)\ + ((gtest_trackGlue)(appl_name, appl_vers, edit_flag, do_logging, check_probability)) + #define GetBSDMacOSError()\ + ((gGetBSDMacOSErrorGlue)()) + + OSErr InializeMacAthenaLib (void); + OSErr TerminateMacAthenaLib (void); + +#endif /* endif GENERATINGCFM */ + + +#ifdef __cplusplus +} +#endif diff --git a/src/mac/TestTrack/testtrack.h b/src/mac/TestTrack/testtrack.h new file mode 100644 index 000000000..167340b66 --- /dev/null +++ b/src/mac/TestTrack/testtrack.h @@ -0,0 +1,30 @@ +/* + * Copyright (C) 1992 by the Massachusetts Institute of Technology + * All rights reserved. + * + * For copying and distribution information, please see the file + * COPYRIGHT. + */ +/* + * Function prototypes for testtrack routines + */ + + +OSErr tt_open_MacTCP(short *drvrRefNum); /* Pass NULL if you feel like it*/ + + +/* function prototypes from tt.c */ +void tt_acknowledge(char *control, ...); +void tt_fatal_error(char *control, ...); +void tt_ensure(OSErr errcode, char *message); +int tt_edit_user_info(struct tt_user_info **user); +void tt_install_callback (int (*callback)(struct v_pkt *)); +int test_track(char *appl_name, char *appl_vers, Boolean edit_flag, + Boolean do_logging, int check_probability); + + +/* function prototypes from vlib.c */ +void v_parse_pkt (struct v_pkt *pkt, struct v_info *info); +int v_read_pkt (int sock, struct v_pkt *pkt, struct v_info *info, + struct sockaddr *sa, int *sockaddr_len); +int v_assemble_pkt (struct v_pkt *pkt, struct v_info *info); diff --git a/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K new file mode 100644 index 000000000..c87625249 --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.68K @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :&%0$B@0SC8GXEf*KE(0-D@)Z0MK,!(0SE')rN!3!N!3"#J!!!CBl&%T[H5&`C@C QE6BiD`!!!!'b#cB`!*!0!`!#!*!EP!!"!J#3"!8!N!G)!!!!5!!!!!m!!!#8!J% #!*!%$J#3$fB!!!#N"!%#!%eKD@i!*8%e9fpbE'3!6'pKC'9b!*!&+L)r2!%M"UR `!L,rr443rj!%!*!%rj!%!*!%rj!%!*!2!3!!!%3!!!"%!!!!8!!!!!%!!!!"!!% !N!TR3fjdFQa#E'pMD`!!"!#3"3%!#eP3!3#3"J3!!Ble!!!"!!!!!@3!!!"N!!! !-J#31'!!!!""F("X!*"!B!!!!%e06%)!N#"-D@)J5@e`Eh*d)&"33`#3&Ne36%B !N#0J!*!,!3#3%`&Y0MKV!*!6!3#3%8!968P8Ak9$3f&MD'9(E'pLB@ac6'PL!!! "!!!!!@3!!!"N!!!!-J9@1G!cb!!!!"`!-J!!BfCbC`!!!!S!!2rr!*!)q0d: \ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC new file mode 100644 index 000000000..67940ed6e --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheGlobalsLib.PPC @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :&%0$B@0SC8GXEf*KE(0-D@)Z8&"$!(0SE')rN!3!N!A`!!!"PU")5Qpj)A"PCQC `Gh"M!!!!!E*6cT3!N!d$!!)!N!6rN!3!N"2`!!3%!2q3"!#3"`J!N![`!J3%!2q 3"!#3$fB!!!#!"!3%!*!&rj!%!*!%rj!%!*!%rj!%!*!2!3!!!%3!!!"%!!!!8!! !!!%!!!!"!!%!N!TR3fjdFQa#E'pMD`!!"!#3"3%!#eP3!3#3#!%!N!T+,`!!!3! !!!&N!!!!C!!!!$)!N%`3!!!!,`)!!!!#!!!6!!F"!!%!N"!(!3!"!*!3!3%!N!S (!3!"!3!"!3!!!!%!!!d!!3#3"4&KER0TAh"bC@CTH#jYB@-ZD!#3%!%"!!!!!3! !!!%!N!3"!*!&"3'3"`#3"J%!!!P0CA*R!!!!B!#3#`%!N"-"F(G`B`#3%`%!N"& !&8e*9&qP3d0KBfKP4fa[BQ&XFdaTBJ!!!3!!!!&N!!!!C!!!!$)&9MR30#B!!!! F!$)!!'0QFQF!!!!+!!$rr`#3"!9EF&$%G`: \ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheLib.68K b/src/mac/libraries/CCache API/bin/CCacheLib.68K new file mode 100644 index 000000000..ba927ec34 --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheLib.68K @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :$80$B@0SC8aTBLif1%X!FfKXBN0"*%J"!!!!(ei!!!'5RAj+EhNKF'9QCQdf1'X !!!!"XJXf03#3$3-!!J#3$KM+!!!BbJ!!'-S!!!#8!!%#!*!%"3#3"J*i!!!#H!! !!D-!!"PJ!J%#!*!%$J#3$J4D!!!E"!3"!J"0B@PZ!#9"09G[FQaN!%a[B@4PFJ# 3"#T451FB1#4[!"JS,`!F*Lm!)#K[!#3JEIpi*P!J#fBb5(J!%'(r!!!-1#5!*P) J#fB%F!CJ2N+V!!3J8N+3!#"53UJ!##"53UJ!$#"YrhJJNQ!#*)Y`!EL!E`4`#@! @5S0R"L"$F!%JJ#!-C`BJEIrm+*!!F!"-ha`B6R3!%#T451F!-#4[!!`J#QFB*P) J#fF5,`YKr`!!&L![%Q(r!!!+Z'!%F!TJ"%+5F!"-h``!6R3!"#T451FH1#C[!#! Q,`!N,#m!+#K[!#`U,`!`+#m!0#!,CJC`#Q!!!0C+K'B'F!aJ!!$-5(J#*Q(r!!! ,G#4!)!TQ"R!'B!!!YNU$Ca)J3h$r8S"+''Ek$)!!!!$rC3C`!@!!!*SJ5L*$)!J 3f@Em)!aR%L"-F2p5J%SBC[S-J!!!!2pP"(!-B(4"kJ%%)N`J#"$CC[`P43)-3QS #"#9'!3!9I!!#!K"`C#9!!K)[#Q(r!!!,1L9!!JK+UJ))CJ4`"Q!k5UX!#'B33US #)N+U!KiQLLG+!!4J&L"V!!3K5J)H*@X!"!)L3US#(LG+!!45U`!)8UX!$#"%))T `!%cI((K1G!!B+P&19[ri51FH2#SZ!!JSEJ!-+#i!%#CZ!"Kf!%U&CJC`#Q!!!*S J#fB'F!aJ!!#3!#!-CN`JEIq),""`!Eb!CKj`!5m!5(J!UbmYrr3[,Iri)QhrM#" C6T!!+Qlrp'!LF!5mJ'BFF!%[!%Ki!+X[,Ird,bhrq#*Yri`J@8k3!#TZrr3J454 3B#)[#Lm-)QhrJ#"C6T!!+Qlrp%U!CJUiUJ%!CJ4f!@!%*'S#(L!+C`4+!fI@5J0 R"LD+F!"J"%+6F!T-haai6Pj1G!!8+P&19[ri51F32#KZ!!JNEJ!-)!aQ"(!+B(` J#QB%F!aJG%U5CN`JEIq)*K"`!ED!CKj`!5m!5(J!c5mYrr3[,Ir`)QhrM#"C6T! !+Qlrp'!LF!5fJ'BFF!%[!%Ki!-d[,Ird,bhrm#*Yri`J@8k3!#TZrr3Q8J`V!!% #%'F%F!jJ&Lm,,`aKr`!!%&3[#f(r!!!)5%+5F!"-ha`)6Pj1G!!)+P&19[ri51F B2#CZ!!JSEJ!-)!YQ"R!+B!!!hL!-CJC`$'!!!04+P'C-)'hrL#B3F!'fJ'BHF!% [!%Ki!1X[,Ird,bhrm#*Yri`J@8k3!#TZrr4J)R!%YS"Q((!",`")H!$V,bhrp#m Yrr!LEIq-)&P1N!!UE[rd*&4`C,#U!K*R%#m+BIm!!"155J"Q"(!)B'K+UJ)LCK! QUJ)H*LS#(QF')%0#U!)L5US#(QB5*fS#)J!%*LS#)QF')%0#U!)H+#S#)QF@*LS #(QF3)%-K4!)L)'S#)L&U!Ki#(K9m!!%#%#m-,`XLEIrX)&P1N!!UE[rd*J"5U`! -)!0-ha`B6Pj1G!!)+P%LE`!%)'m!##!*CJ4`#Q!1)!KR###T!!a`!'!#F!a1G!! )+P&)ja!`*Qm!%#4[!"3J#fB%F!TJ5#!+CJ4`#Q"!*LS#%R"NYS"R&R"QYS"Q$#m +BIm!!"+q5J"Q"(!)B#![,`!F,bm!(#m+BIm!!!dJ*J"+JfB%8UX!#&+V!!`J!dc I$!K1G!!3+P&)ja!`*Qm!%#4[!"3J#fF%)!TQ"(!+B$BQ+J)5F'5fJ'F@F'DfJ'B -,`TKr`!!%Pa+!'B%F!KJ&Lm[!"`[,`!F,`TKr`!!$E*5U`!-F!"-h``)6R3!%#T 46PErq%MR'$`QEJ!)*'i!$#JZ!"!SEJ!8)!YR"#!+CJC`#Q!!!*JJ$'C-)'hrL#B 3F!'fJ'BHF!%[!%Ki!@X[,Ird,bhrj#*Yri`J@8k3!#TZrr4J)R!%YS"Q((!",`" )H!&V,bhrp#mYrq3LEIq-)&P1N!!UE[rd*LS#%R"NYS"R&R"QYS"Q$#m+BIm!!"' Q5J"Q"(!)B#DiUJ%!C`4`#Q!F5(J!rbm-5'S""#*Yrh`J@8k3!#TZrr45U`!-F!" -ha`B6Pj1G!!3+P&)j`!i*'m!&#C[!"JJ#QB%F!TJ3("QX+S#%QB3,`TKr`!!%8K +!'B%F!KJ+#!,Cb*)H!$rBIm!!!88*S!S8b!-CJ4`"Q!1)%a$kJ%%)!J3f@EmF!" -ha`!6R3!$#T451F!-#4[!"!QE`!8)!TQ"(!+B#C`CV#U!K*Q%#m+BIm!!"$U5J" Q"(!)B!iJ#fB%F!CJ"LDU!3"`!%cI$!"1G!!-+P&)j`!`*'m!%#C[!"3J#QB%F!T J0("QX+S#%QB3,`TKr`!!%+C+!'B%F!KJ(#!,CaC)H!$rBIm!!!4b*S!J8b*+)!J 3f@EmF!"-h``!6R3!$#T451FB1#J[!"JSE`!F*'m!)#!-C`JJ#QF%5S4Q"(!+B%K +NQBD5(J!#'(r!!!%,#5!*K*Q"(!'B$!J4#*$)T!!)&)Q%'B3,a*Kr`!!"%a#NN+ 8F!0J&#m-,`0Kr`!!$GSQ8L"6*UJ#(R!!60mF'%jd!!`U88MR($K46bB[!#3QE`! S+'m!,#4[!$!J#fF))!TR"%U$CJC`#Q!!!6`J$'B'F!CJ!!%bF'D`U`)5CK)[#f( r!!!2a%S!CJC`#'!!!4K+NQBN5(J!#'(r!!!$ML5!*K*Q"R!'B!!!rL"$3UJ!"'! ')%05U!!%1LX#"$!&5-!Q%L"$+#J!",L!E")J"1@))'X###"`#!"`Bl#3!'I8-!9 )`,L!E4)[%Q(r!!!$I%+83T*`!f!!!,!J"1@))'X###S`#!!J45B3F!'fJ'CS5(J !#'(r!!!$&#L!5T4Q"R!'B!!!K%Ki(AjKr`!!![iJ9#&!!!3J9#BS!!4Q"(!'B'B J8L!S!!6PL#"V!JJJF!J!)'J!"#*$)$`!!"eqFL#`J@8%SLjJ$NU!C`SL#4,B8i" QqL*"B#K`!VD!CK`[D!!%!!4`!Lk!,``[,`!),bm!#'(r!!!(KQ!'3T4`%'!))&* 5U!!%F!"36dcI($K1G!!3+P&19[ri51FB2#KZ!!JNEJ!-H!!J$'B'F!TJ!!#F)!T Q"R!'B!!!NL!X!!K5J1@),`!LEIqX)&P1N!!UE[rd*)"+NQB%F!CJF#C8B'K)H!) #)QhrV#"C6T!!+Qlrp#"5)B!i!#K55V3i!'B%F!CJ5L"d1!!L5b!)%0PQr#"5)(! i!%(S!2p$k`%%)!J3f@Em)&)JF$J!)@X"!!(q*QX#(P+%@)-J#fDQ)!6PL#"53V! )!(!!B!4f!'$U60mF'%jH6R3!##T4,`SNE`!-)!TQ"(!'B!S[#Q(r!!!"i(!!*&p 1G!!)+P%[#L4[!!`J#QB%F!CJ#Lm+BIm!!!(!F!!NAdjd!!JU85m+*'m!$#!+CJ4 `#Q!8,a*Kr`!!$MJ[%Q(r!!!"Q%+5F!!NAdjd!!JU88j@rrK)jaJd*'i!$#!+CJ4 `#Q!iH!"J-#mc1!!LEIqF)&P1N!!UE[rd8S4BJbC55V-i!'EN,a)LEIqF)&P1N!! UE[rd3T*`!'!%GJ"Ji%cI$"K1ANjd!!JU88j@rqa)ja!N*'i!$#BZ!"!J#QB'F!a J!!$15'lrm#*YrkJJ@8k3!#TZrqK`C,#U!K*R'%KZrqp)DJ)@5'lrm#*Yrk3J@8k 3!#TZrqJJ!e1!C`a6J'F58i"R0Q!!!)C`C#9!!K*J!!#!*LS#%R"NYS"Q&("P*8! #%L9Zrr!#&L9Zrr3#'Q"JF'DfJ'CDF!KJ@#BU!K*`C,D!CK4`CL9!!K)PE[r`!KB PE[rd!KTJ1("QYS"Q#NSZrqpQ"(!)B#T`CED!CL*+,[r[Ca4`CL9!!K)PE[r`!KB PE[rd!KTJ#(!)B!C`$'!#F!"-h`3)6Pj1G!!-+P&19[ri51F3*#BZ!!J[!b*Yrk` J@8k3!#TZrr3N3#!+Ca![!bm+)QhrQ#"C6T!!+Qlrp#!+60m%#%jH6R3!"#T46PE rq%MR'#3NEJ!),`SLEIqJ)&P1N!!UE[rd*J!J#QC-)'hrL#J3F!'iJ'BHF!%[!%K i!#F[,IrB,bhrh#*Yri`J@8k3!#TZrr4J)R!%Z)"Q((!",`")H!!R,bhrf#mYrp` LEIq-)&P1N!!UE[rd5S0Z6#"YriJS%(!"Z)"Q(R!",`")H!!S,bhrf#mYrp3LEIq -)&P1N!!UE[rdB#*`",L!CKa`!5m!5(J!+#mYrpJ[,Ir8)QhrM#"C6T!!+Qlrp#m $3UF[#L*Yri3J@8k3!#TZrr3[!d+R,`SLEIq%)&P1N!!UE[rd,`-[#L*Yrj3J@8k 3!#TZrr3[#L*Yrj`J@8k3!#TZrr4-h`3B6Pj1G!!%+P&19[ri51F3*#BZ!!J[!b* Yrj!!)&P1N!!UE[rd*%!J#QF3,`-[#L*YrjJJ@8k3!#TZrr3J#NcI"!K1ANjd!!3 U88j@rrK)ja!N*'i!##!+CN`JEIq)*K"`!ED!CKj`!5m!5(J!8#mYrpJ[,Ir3)Qh rM#"C6T!!+Qlrp'!LF!5fJ'BFF!%[!%Ki!&![,IrB,bhrd#*Yri`J@8k3!#TZrr4 #DJ)%0A`!#J)'5(J!+'(rN!4@*8!###!U!JK-h`3)6Pj1G!!%+P&19[ri51F30#4 Z!!JJ#QC-)'hrL#B3F!'fJ'BHF!%[!%Ki!&i[,IrB,bhrc#*Yri`J@8k3!#TZrr4 J)R!%YS"Q((!",`")H!"H,bhrf#mYrm`LEIq-)&P1N!!UE[rd*+i!$#9Z!"!!"%U Z!"4Q#%+U!!K`!'!q,bi!%'(rrrrqa#9!!!JQDJ!))!YQ"(!'B#3L5b"Z!"3J,J! 3FL#`J@8%SLjJ$NU!C`SL#4,B8i"QqL*"F!"-h``)6Pj1G!!3+P&19[ri51FH2#K Z!!JNEJ!-H!!J#QC-)'hrL#S3F!'kJ'BHF!%[!%Ki!(3[,IrB,bhrb#*Yri`J@8k 3!#TZrr4J)R!%ZS"Q((!",`")H!"d,bhrf#mYrmJLEIq-)&P1N!!UE[rd*N`J$'B )3T*J!!'`8S4+QfEk)!45J1@),`"KrrrrrJ)NJ#S!5S9Q6#"YriJX%(!"[)"Q(R! ",`")H!"m,bhrf#mYrm3LEIq-)&P1N!!UE[rdB#*`",b!CKa`!5m!5(J!I#mYrpJ [,Ir%)QhrM#"C6T!!+Qlrp%U&C`!"3LC-B!!"+NKi!!aKrrrrrCJJ8L#!)&*+N!" Q6#"YriJX%(!"[)"Q(R!",`")H!#$,bhrf#mYrm!LEIq-)&P1N!!UE[rdB#*`",b !CKa`!5m!5(J!JbmYrpJ[,Ir!)QhrM#"C6T!!+Qlrp#"5,""R!!$8)NBJ9(!-FL# `J@8%SLjJ$NU!C`SL#4,B8i"QqL*")&)J8#mS!!4Krrrrr3iJ8L"3)8!!##"5)&" +U!!)CN`JEIq),""`!Eb!CKj`!5m!5(J!LbmYrpJ[,Iqm)QhrM#"C6T!!+Qlrp'! LF!5mJ'BFF!%[!%Ki!)X[,IrB,bhr[#*Yri`J@8k3!#TZrr3J8L"3,#J!#'Fq*K3 J3b!S!!3L4L"$)'J!#()JX)&P"+)ZB!j+J'F+)JN5f&1!C[SL39L+@)Y+NfB!rY3 J"1@))%9#X!J!*)9-haai6Pj1G!!)+P&19[ri51F!2#KZ!"!QEJ!-)!aQ"R!'B!! "%%Ki!!KKrrrrr$JSJ%U8CJC`"Q!!!2T)H!"-BIrrrr`L*%!J#QB'F!CJ!!$N5(J %iQ(rrrrm$#5!5T*Q"R!'B!!!cNKi"1*KrrrrqrBP3!!%5US!"'B'F!CJ!!#d5(J %hbm6,a)LEIpm)&P1N!!UE[rd5(J%hbmV!!3[+J!%)QhrI#"C6T!!+Qlrp#mV!"! [+`!-,bX!#%KU!!KKrrrrr'BPD`!8!"3PD`!B!"JPD`!F!"`PD`!J!#!PD`!N!#3 PD`!S!#K)DJ!X,bX!,'(rrrrmmLmV!$J[+`!d,bX!-%KU!$"Krrrrr"i[+`"%,bX !3#mV!$a)DJ!mBIrrrr`)3US!5#"8F!)JJ#"8)8S!"(!!60mF!%jH6R3!$#T451F !-#4[!"3J#QB%F!CJ@NKi!!KKrrrrq`iNJ#C5)!YQ"(!'B%4`!5D!5(JGIQ(rrrr kp#C!)!YQ"(!'B#`L5b"[!"!J2!!!(Ajb),#"C35L,Q!15S"R#L)*%YK6J'Ek)N% J8L&,!!4`!%cI$!"1G!!-+P&)j`!`@8mNE`!33TFJ#QB'F!TJ!!$8F!'`V`!8C`j `!V#[!"4R"R!3B!!![P*U!J3`+J)%X'S#"QCL-#S#"Y"!08!#"M!U!JC)`1@),`" KrrrrqQ!Q3#!,CJC`"Q!!!)S`+J)'5-"-I!J!N!3#jBJL5b"U!JKb),#"C35L,Q! 15S"R#L)*%YK6J'Ek)N%[+J))BIrrrrN5*8X##(!"X+m!&'B55&F[,`!F,bm!('( rrrrqh'!HF!+`V`!8CK*)9bm[!"`[,`!FBIrrrrf1B!4`%'!8-#S#"%M!8i$PL#" U!JJKP`J!F!"B6dcI$!"1G!!-+P&)ja`i*'m!(#!+CJC`#Q!!!*af!'!!!*)[,`! N,bm!*#"U!JJJF%J!,bJ!"#mS!!"Kr`!!!6a+!'G8)!2PL#"U!JJSF!J!,`aKr`! !"3![$'(rrrriB#J$B%JQDJ)))!45J1@)*l-)!&J!8S4BK6!U!J4)`&1!*J#iJ'h H)!2PL#"U!JK#X!J!8fS#"'!38S0BK$!U!J4)`,D!E3$rI(!!B!SU!q@0B-Ci!'$ Q60mF1%jd!!`U88j@rr4)jaJd*Qi!##4Z!!a#V[rd)!TQ6#"YriJQ%(!"YS"Q(R! ",`")H!&),bhrf#mYrlJLEIq-)&P1N!!UE[r`B#*`",D!CKa`!5m!5(J"5#mYrpJ [,Iqi)QhrM#"C6T!!+Qlrm#!+CJ4`$'"!H!"J1#"U!JJYF$J!rr4)E[rd,`XLEIr J)&P1N!!UE[r`8S4BJc!U!J4)`,L!EGB[+J))BIrrrrGFF!"J"(B!B14-h``B6Pj 1G!!)+P&19[ri51F!0#4Z!!`J#QF)*Qi!&#!,CJC`!'!!!,`J,J!)X+i!%'F'F!" J!!#XF!'`VJ!)CPT)D`!"5'S!!5*Yri!J@8k3!#TZrr4+J'Bq5'X%idKU"1-LEIq !)&P1N!!UE[rd5S"Q*NKV%iP)DK1*)QhrJ#"C6T!!+Qlrp%U!CJiJ+KKmX+XBI'B %F!&J6(!!B%K`!V#Z!!KQ2Lm6,a)LEIq!)&P1N!!UE[rd5S"Q*LmV!!3[+J!%)Qh rJ#"C6T!!+Qlrp%U!CJiJ+J!BX+X!''B%F!&J"R!!B!*`!%cI$!"1ANjd!"!U88M R($JQE`!F+'m!)#!-CJC`"Q!!!@j)H!)QBIrrrrB'+)!N9#!+CJC`"Q!!!9BJ5L* ,)!J3f@Em*@X"!!%!3HS""%2V!33J#"$CC[`eD`)%!J3eD`)'!JB9I!!"!K!`+J) '5-$PL#m!BIrrrr@i*8!##%UU!JKQ"R!'B!!""RJ!B!!!r#"V!JJSF$J!+K4`!EU !CJ!!K%Ki!!KKrrrrpBBJDJ)))B!i!#"U!JJSF$J!)!aQ"R!'B!!!bR!"+)")H"e qBIrrrr9H)'S###"`1!!K3!!%)'S###"`1!!SD!!%)!aQ"R!'B!!!QL*-)'X###" `1!!JD!!%)$`!!"eqFL#`J@8%SLjJ$NU!C`SL#4,B8i"QqL*"B%T`!VU!CKJJDJ) )5(!i!#mX!!3[,!!!BIrrrrRLB#a`BlU!CLC)H!!)BIrrrr6J)'S###'!1!!JDJ) )+(!i!#!-CJ4`"Q!NF'-SJ&+%@)-`+J)%5-#iJ'd!ra4#UJ)L3US#(R!!B!4f!'$ N60mF1%jd!!JU88MR!$JSE`!3*%`J$'B1B"S[+`!)BIrrrr5q@)SQ8L!,CZi[$'( rrrrdVNcI(!"1G!!%+P&19[ri51F3*#4Z!!JJ#QCH)'hrL#B3F!'fJ'BHF!%[!%K i!F)[,IrB,bhrY#*Yri`J@8k3!#TZrr4J0(!%YS"Q,R!",`")H!(#,bhrf#mYrl3 LEIq-)&P1N!!UE[rdB"![#Lm+)Qhrk#"C6T!!+Qlrp%U5CZa`!%cI"!K1ANjd!!3 U88j@rqa)ja!N*'i!##!+CN`JEIq)*K"`!ED!CKj`!5m!5(J"dLmYrpJ[,Ir3)Qh rM#"C6T!!+Qlrk'!LF!5fJ'BFF!%[!%Ki!G)[,IrB,bhrd#*Yri`J@8k3!#TZrqK )E[rZ)QhrU#"C6T!!+Qlrk$B!-!0)`'F%F!"J0("NX+S#%QFN5'lrpdKU!KC)E[r Z)QhrT#"C6T!!+Qlrk$B!-!0)`'F)F!"J#%)ZrrF3,[rh60m%#%jH6R3!"#T46PE rq%MR%$`QEJ!))!YQ6#"YriJQ%(!"YS"Q(R!",`")H!(R,bhrf#mYrl!LEIq-)&P 1N!!UE[rdB#*`",D!CKa`!5m!5(J"jbmYrpJ[,Iq`)QhrM#"C6T!!+Qlrp(!#X*0 QCL4V!!3[%Q(rrrrbrLmU!!4Krrrrm[4+UJ!3C`S[+J!3BIrrrr,N5US!1'F+,bS !1'(rrrrbe%UU!%4R#LmU!%4KrrrrmX3SDJ"))!aR##m-BIrrrrhJ+'S!,#!-C`J [$'(rrrrpd#mV!!4KrrrrmTT`!%cI(!K1ANjd!!4PF`3Z68P8)%N[8b"0B@0%CAB &,J3-)5KZB@eP)#%p)$!T!5N)3d0KBfKP,Q-")$d2)5JUD'&ZC'aP)#%p)$!T%5% SF(*TEQ0TF'&X)#%p)$!T$5%SFf&QC9!J)6dJ-#N-3d0KBfKP9A4TE#jM!5d-)5K cDATP)$iJ-%`T!5X+)5KZBb!K25!`+3%j#b%SEf*U)#%p)$!T$#%SC'9cG#!K25! `+3%r$h*PG'4PFh3J26dJ6P9-6!iU+Q4PFh3J26dJ6P9-6!%h&LJU+Q4PFh3T,6j NBA4K)$dp)%j96%`"+`TZBb!p25"198a-!6-5)5KMER4bE%*XEf0V)#%p)$!T!5i 0)5KMFQ9NFb!K25!`+3!l)IU#!K-!jJ$D!-)!XJ#L!*3!L!"m!'i!B!"5!GJ!3!* !!NJ!-!!Q!"J!&!!J)Mmm!5-'UI!#)[rp$L)+)S)#*`'3!!R+!C!!#D!"N!!*J!' 3!!PJ!C!!#*i"N!!(-!'3!!Dq!C!!"Q`"N!!'+!'3!!A+!C!!"3)"N!!%UJ'3!!4 %!C!!"#!"N!!$(J'3!!*q!C!!!EB"N!!!XJ'3!!"m!C!!"#)"N!!)C2q3"!#3"2q 3"!#3"2q3"!#3"`3!!!!1!!!!!3!!!0`!!!$S!!!#p!!!!!3!!!!9!*!2!3#3#b) !N!X$!!!!!3#3"d8!!!!"!!!!!3!!!!)!!!!%!*!(FJ#3#`J!!!!'!*!%!3!!&J) !!#m#!!!h!J!!2J%!!&F#!!"N!J!!I`)!!)N#!!#@!J!!S3)!!+`#!!#h!J!!``) !!08!!3#3"3B!N!3"3B$[5Je#%i!h4K40594IT80$B@0SC8GXEf*KE(0-D@)!Cd0 ZG(*X3Qa[BfX!68P8Ak90594$6'PL!(0dFQjMF(N!Fh4bBfe`!'ePEA0PG!"0594 IT84PBR9RCfPZCdaTBJ"R4'9LG@G6D@GZB@`!3@aPFR46D@GZB@a"G!"*ER4PFQC KBf9-D@)!6Q9h8(4b8hPc!&9ZD'pXC%ePE@pbH3")EfaN6@9YEh*j!%4TFh"[Ff9 3G()!4f9d8(4b8fPkC3"6B@eP8(*[Bf9cF`"(CA4$GA*bC@jd8(*[Bf9cF`"1CAG 3G()!Bf0ICf9dAf0bC@4IGQ9bFfP[EJ"MBepQFQ9PAdj$AfPZCQm!Bf0ICf9dAf0 SB@jRC9pdD@eP!'0MAf4PFh4bEhN!Bf0IBfa[Ff8!Bf0IBh*PBA4P!'0MAfCbC@9 IBh*PC(-!Bf0ICf9dAfjKE@8!Bf0ICR*PC9p`FQPZBfP`B@`!Bf0IFQ9YEhCPAf0 bC@3!Bf0IEh"PEJ"MBepRCA4I6N0ID@jQE`"MBepcCA&ICQ9dBfKI6N0c!'0MAh0 PG&p`FQPZBfP`B@`!Bf0IFfKeG'4[Gfi!Bf0IFf9aAfCPG'0SAf0bC@4c!'0MAfG PG&p`FQPZBfP`B@`!Bf0ID@jTG'PKE'PkC3"MBepcG'pbC3"MBepXEf0VAh*PFA9 PFh3!Bf0ICR*PC9pZB@eP!*!*"!!!!!`!!3!)!!3!!!!'!!J!"J!)!!J!!!!+!!3 !#J!!!!X!%!!,!!`!$`!!!")!"!!5!!!!%`!)!"-!%qq*!!mc9`!569F!#TVI!!J Qc`!*6#%!$Fk[!!XfqJ!4q!B!$ZC6!!F66!!1ZFB!%)+a!"#-#J!,2Ad!%JKH!"$ -#`!0b18!##F0!!mB(J!-CeS#!!$F!!!#%!!"!J!!m!!!!G!!!3)!!3!!!!)i!!% #!!%6!!!#3!!"!J!"(J!!!NJ!!3)!!5F!!!*B!!%#!!%a!!!"f!!"!J!"2`!!!JJ !!3)!!8X!!!(S!!%#!!&G!!!#+!!"!J!"E!!!!P!!!3)!!A3!!!(`!!%#!!'$!!! #!!!"!J!"P!!!!L!!!3)!!D8!!!*J!!%#!!'a!!!"q!!"!J!"a!!!!KJ!!3)!!G8 !!!*S!!%#!!(M!!!#-!!"!J!"l!!!!FJ!!3)!!I`!!!(J!!'qG3!!!3!!!!&J!!! !B!!!!$)[Fh*M,feKBbpdC@aZCA30Eh9d)'CPC5"TFb"SCA*PBRNJCh*KER4PC#` JF(*[GQPNC@3JG'KKG#"dD'8JB@*[GQ8JBfp`HA*TCfKd$5!U)'j[G'PMC5"KF(" PBA)JD@iJB@aX)'0[F'PPFb"KEQ3JG'KKG#"LEh4S)(4SBA3JBfp`HA*TCfKd)'j [G'PMC5"KEQ30)#SJG'KTFb"`CA*YDA0cD@pZ)'j[G'PMC5"KF("PBA)JD@iJFh9 `F'pbG'PZCb"NEf0eE@9ZG'&dD@pZ,#"KEQ3JG'KKG!dJ+L"dD'8JEQ&YC5"[CL" 0,NNZ9#i!!!"F!*!,!3#3%`&Y0MKV!*!6!3#3%6`168P8Ak9$3f&MD'9-D@)!N!8 "!!!!!@!!!!"J!!!!-J9@1G!cb!!!!"`!-J!!BfCbC`!!!!S!!2rr!*!)H,J: \ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheLib.68K.debug b/src/mac/libraries/CCache API/bin/CCacheLib.68K.debug new file mode 100644 index 000000000..36bdabc3c --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheLib.68K.debug @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :%d0$B@0SC8aTBLif1%XZC'9LG@F!FfKXBN0"*%J"!!!!*fB!!!'@B"K+EhNKF'9 QCQdf1'X!!!!"XJXf-3#3$3-!!J#3$L!B!!!J'!!!)"J!!!#8!!%#!*!%"3#3"J, `!!!#m!!!!G%!!##X!J%#!*!%$J#3$J6Q!!!LJ!3"!J"0B@PZ!#9"09G[FQaN!%a [B@4PFJ#3"#T46PErq%MR!$JNEJ!)+'i!%#CZ!"3JEIpJ5T!!CM*)H!!3BIm!!!p `*)"+NQB%F!CJ4#"53UJ!"#"53T!!)&*#U!!))&*#U!!-)'hrB##5B!BJEIpJ**! !F!'`VJ!-E!4`#@!8)!aR"(!"+)!J#fF')'hrr#D3!(!!60mF!%jH6R3!%)eMBep TEQPdD@&XDATP!!!U88j@rrJ[#L4Z!!JJ#QF@5T*R%Lm5BIm!!"[),a*Kr`!!$9K J"(!+B!4#NR!!*&p1ANjd!!5,Bf0IFfKeG'4[Gfi!!#T46PErq%MR'$JQEJ!)*Li !$#KZ!"3S,J!FPFSJ#fB'F!TJ!!$D5S4Q"R!-B!!!d%Ki!LCKr`!!$SSN3#!+CJC `"Q!!!,T+JfF5)%0`re+!5KKQqJb!!!!!rf8'F!&J!!#H)%SL3b!)%0PQr#!-Ca) J6($r8S"+''Ek$)!!!!$rC34`$'"i3HS""#*-)!J3f@Em*@i!'!)-3QS#"#9Z!"! "!"9m!!)#%("N*8!#%Lm+BIm!!!jD*8!##%UU!JKQ"(!'B$T+U`!)CK"#UJ)L3US #(LD+*dS!"'!@)'X!"#&+!KiPD`!%!L*#UJ)H*dS!"&+V!!K5U`!-)%3JLR!!60m F'%jH6R3!')PMBepMFQ9KG'8!!#T46PErq%MR($`U,J!)*Qi!$#JZ!"!SEJ!BPFT f!%U&CJC`#Q!!!0)J$'B'F!aJ!!$))!YQ!!#%)'hrM(!"X*!!CKj`!#m!5(J!Ubm Yrr3[,Iri)QhrN!!J@8k3!#TZrr4J@L"Yria`!V#3!'B5,bhrq#*YrhJJ@8k3!#T Zrr4J2L"Yria`!l#3!'B1)QhrC#"C6T!!+Qlrp'!Q)'hrM(!%X*!!CKa`!5m!5(J !UbmYrr3[,Iri)QhrN!!J@8k3!#TZrr3J4543B#)[#Lm,)QhrQ#"C6T!!+Qlrp%U !CJUiUJ%!CJ4f!@!%*'S#(L!+C`4+!fI@5J0R"LL+F!"J"%+8F!T-ha`i6Pj1G!! 8Kf0MAfp`C@i!!#T46PErq%MR!$`SEJ!)*'i!$*I,)!aQ"R!+B!!!ZL!+CJC`$'! !!,"+NQB!!)3JEIq-F!'`N!"Q(R!!,`")H!$0,bhrp#mYrr!LEIq3!#"C6T!!+Ql rp'"D)'hrM(!#X*!!CK)[,Ir`)QhrH#"C6T!!+Qlrp'!q)'hrM(!$X*!!CJiLEIp N)&P1N!!UE[rdB#BJEIq-F!5`N!"Q((!",`")H!$0,bhrp#mYrr!LEIq3!#"C6T! !+Qlrp#"5$#J!!3)3C`4`$Q!B*P)[#bm-BIm!!"5i,`YKr`!!#NC#NR!!60mF!%j H6R3!#)KMBepME'pcC3!!!#T46PErq%MR%$`SEJ!)*Qi!$*A+)!aQ"R!+B!!"(L! ,CJC`$'!!!44+NfB!!)3JEIq-F!'`N!"Q(R!!,`")H!$V,bhrp#mYrr!LEIq3!#" C6T!!+Qlrp'"D)'hrM(!#X*!!CK)[,Ir`)QhrH#"C6T!!+Qlrp'!q)'hrM(!$X*! !CJiLEIpN)&P1N!!UE[rdB#BJEIq-F!5`N!"Q((!",`")H!$V,bhrp#mYrr!LEIq 3!#"C6T!!+Qlrp#46F'5`UJ)5Ca![#Q(r!!!BPNS!CJ4`#'"`5US#)QB5++S#(NU U!KjR##"U!Kj#U!)L5US#(QB8+@S#)J!%5US#)QF))'S#)N+S!Kj+UJ)LCaT+UJ) HCa3JDJ)H)@S#)J)L)'S#)L&U!Ki#(K9m!!%#%#m,,``LEIrX)&P1N!!UE[rd*J" 5V!!-)!0-ha`)6Pj1G!!)LQ0MAf4PFh4bEhN!!!!U88j@rrK+VJ!)CJ4`#Q!B5Ui !$'F3)'i!##*Z!!`LU!!-F!"J!R!-6Pj1G!!)NQ0MAfGPG&pMD'&ZCf9IG'PYC3! !!#T46PErq%MR%$!QEJ!)*'i!$(B!)!YQ"(!+B%JJ#QB%F!TJ3("NX+S#%QFBF'D `UJ)5CJ`[#Q(r!!!AKNS!CJ4`#'!J,bi!&#mZ!"![#Q(r!!!3e#B!5S0Q"&+V!!K 5U`!-)!0-h``)6Pj1G!!3L'0MAh0dEh*P!!!!+P&19[rd51F!-#CZ!!JNEJ!-3Ul rp#!,C`3J#QB%F!TJ0R"NX+S#%QFBF'D`UJ)5CJ`[#Q(r!!!A$NS!CJ4`#'!@,bi !&#mZ!"![#Q(r!!!4GP+V!!a`!%cI$!"1ANjd!"#1Bf0IFQ9YEhCPAf0bC@3!!!! U88j@rrK)j`!m+'i!##CZ!!`NEJ!8)!aR"#!,CJC`#Q!!!03J#QB!!)3JEIq-F!' `N!"Q(R!!,`")H!&V,bhrp#mYrq3LEIq3!#"C6T!!+Qlrp'"D)'hrM(!#X*!!CK) [,IrN)QhrH#"C6T!!+Qlrp'!q)'hrM(!$X*!!CJiLEIpN)&P1N!!UE[rdB#BJEIq -F!5`N!"Q((!",`")H!&V,bhrp#mYrq3LEIq3!#"C6T!!+Qlrp("NX+X#%QFBF'D `U`)5CJ`[#f(r!!!@%%S!CJ4`#'!U)#X"!,#Z!""R"(!+B"a)H!$r,`T)D`%%)Qh rP#"C6T!!+Qlrp&+X!!a`!%cI(!"1ANjd!"#3!'0MAh0PG&p`FQPZBfP`B@`!!!! U88j@rrK)j`!`*Qi!$#4Z!"!J#fB%F!TJ2R"QX+X#%QB3,`YKr`!!&CC+!'B%F!K J*L!+Cb")H!$rBIm!!!B+*)"+NQB%F!CJ$L"53qX""#!)%0PQr(!!60m-!%jH6R3 !$*!!Bf0ICf9dAh"bD@jMDA"KE!!!!#T46PErq#m+*'i!$#!+CJ4`#Q!XF'D`UJ) 5CK![#Q(r!!!9*NS!CJ4`#'!85Ui!%'B%F!CJ#L"Z!"!JUJ%!F!!NAdjH6R3!$*0 MBepRCA4IBh*PC&pfCA*cD@pZ!!!U88j@rrK)j`!`*'i!$#CZ!"!J#QB%F!TJ0(" QX+S#%QB3,`TKr`!!&-*+!'B%F!KJ(#!,CaC)H!$rBIm!!!8f*S!J8b*+)!J3f@E mF!"-h``!6Pj1G!!-Lf0MAfGPG&pZB@eP!!!U88j@rrK)j`!i+'i!##CZ!!`NEJ! 3)!YR##!+C`3J$'B%F!TJ5NU5CKK)H!!)BIm!!!6F*)"+NQB%F!CJ-L"5)*3J8NU 3!'B3,a*Kr`!!"3T#NN+6F!0J'#m,)&)[%'(r!!!49L"5)&!L8L+S!Kj`!%cI(!" 1ANjd!!b3!'0MAh0PF9pQCA4MD&p13h-!!!!U88j@rr")ja!i*Qi!$#KZ!"!NEJ! 8)!YR#L!+C`C+VJ!)CJC`#Q!!!9!J$'B'F!CJ!!&'F'D`U`)5CK)[#f(r!!!6Y%S !CJC`#'!!!5a+NQBN5(J!#'(r!!!%*L5!5T*Q"R!'B!!"%L"53UJ!"'!')&*5U!! %-#X#"%M!)&+`U!!%Ea3J8L*V!JJJ+!!%)R%-!("MX*&Rf$!V!J4)`#"5X+J!"'i 5,a*Kr`!!""j#P%+5F!0J!!$#)&)LD`)))#J!"#*a$!!Q%A!"YS"QDNKi!!KKr`! !!kSSJ%U8CJC`"Q!!!*C)H"eqBIm!!!18)&3K3!!%)&4+U!!%CJ4`"Q"i)&)LD`) ))#J!"#*a$!!JD3!%)P3LD3!%)$`!!"eqFL#`J@8%SLjJ$NU!C`SL#4,B8i"QqL* "B$K`!VD!CL`J8L*V!JJJ+!!%)R%-!#eT!!6rp(!#,8$rm#m-,blrp#mZrr"Kr`! !#LCJ"N+8F""J##"58UJ!"(!!60mF#%jH6R3!%**MBepcCA&ICQ9dBfKIBh*PC(- !!!!U88j@rrK)ja!m+'i!##CZ!!af!*A+)!aQ"R!+B!!!NL!,CJC`"Q!!!)JJ,!! )8S$PL#m!)QhrL#"C6T!!+Qlrp#D!5T0Q"(!'B'BN9'"@5(J#!L*YriJJ@8k3!#T Zrr3J8b'!2!!J8dU`2!"Q"(!'B%!J8b"`2!!L5L!)%0PQr#"6)(!m!%(S!2p$kJ% %)!J3f@Em)&-JF$`!)@S"!!(q*'S#(P+$)!TQTL"63V!m!(!!60mF#%jH6R3!#)j MBepRCA4I6N0ID@jQE`!!!#T46PErq%UZ!!aQ"(!'B!`[,J!-BIm!!!*1F!"1ANj d!!L4Bf0ICR*PC9p`FQPZBfP`B@`!!#T46PErq%UZ!!aQ"(!'B!`[,J!-BIm!!!) BF!"1ANjd!!L-Bf0ICR*PC9pZB@eP!!!!+P&19[ri,`SNEJ!-)!TQ"(!+B"3[%Q( r!!!5$Lm5BIm!!!(F3T*`!#4I6Pj1G!!)M@0MAfCbC@9IBh*PC(-!!#T46PErq%M R%#3NEJ!-)!TQ"(!+B$4f!'!8)&)[-$`!)QhrG#"C6T!!+Qlrp&+$)&*+X$`!CZ3 [%L*Yrh3J@8k3!#TZrr4#NTA+F!"-h`3)6Pj1G!!)Mf0MAfCbC@9I6N0ID@jQE`! !+P&19[rX51F!*#4Z!!`J#QB'F!aJ!!$D5'lrm#*Yri3J@8k3!#TZrqJp32rXF'5 `UJ)5Caa)E[r[5'S#&NKZrr!LEIq!)&P1N!!UE[rS28$rl#!Z!""6J'F-8i"R%P1 !CcCJ!!#)F'3P3!)5B!!!JR"NX+S#%QB8F'8P3!)5*@lrm!)@*@lrp!)DB'4`CV# U!K*QA(!)B&T`C,#U!K*Q&("Q*8!#%L9Zrr!#&L9Zrr3#'Q!mF'D`UJ)5CJT+,[r [CJ4`#'!XF'@`UJ)5CL*+,[r[Ca4`CL9!!K)PE[r`!KBPE[rd!KTJ#(!)B!C`$'! #F!!NAdjH6R3!$)pMBepXEf0VAh*PFA9PFh3!!#T46PErq%MR!#3[,J!))QhrL#" C6T!!+Qlrp#4!)!TR%LmZ!!J[#L*Yrh!J@8k3!#TZrr3J#L4I6Pj1G!!%LNjPGe0 KCQ93G()!!!!U88j@rrK)ja!N*'i!##m+)QhrI#"C6T!!+Qlrp#B!)!TQ!!#%)'h rM(!"X*!!CKj`!#m!5(J!*bmYrpJ[,IrF)QhrN!!J@8k3!#TZrr4J@L"Yria`!V# 3!'B5,bhrh#*YrhJJ@8k3!#TZrr4J2L"Yria`!l#3!'B1)QhrC#"C6T!!+Qlrp'! Q)'hrM(!%X*!!CKa`!5m!5(J!*bmYrpJ[,IrF)QhrN!!J@8k3!#TZrr4+Jfi!!)3 JEIq-F!'`N!"Q(R!!,`")H!!S,bhrf#mYrp3LEIq3!#"C6T!!+Qlrp'"D)'hrM(! #X*!!CK)[,Ir8)QhrH#"C6T!!+Qlrp'!q)'hrM(!$X*!!CJiLEIpN)&P1N!!UE[r dB#BJEIq-F!5`N!"Q((!",`")H!!S,bhrf#mYrp3LEIq3!#"C6T!!+Qlrp#m$3UF [#L*Yrj`J@8k3!#TZrr3[!d+R,`SLEIqF)&P1N!!UE[rd,`-[#L*Yrf`J@8k3!#T Zrr3[#L*Yrh3J@8k3!#TZrr4-h`3)6Pj1G!!%MN4TFh"[Ff96B@CP8(4b!!!!+P& 19[ri51F!*#mZ!!JLEIpS)&P1N!!UE[rd*%!J#QF5,bi!##m+)QhrF#"C6T!!+Ql rp#!+*&p1ANjd!!506Q9h8f&QC9"dFP0jF`!!+P&19[ri51F!*#4Z!!JJ#QB!!)3 JEIq-F!'`N!"Q(R!!,`")H!"3,bhrf#mYrp!LEIq3!#"C6T!!+Qlrp'"D)'hrM(! #X*!!CK)[,Ir3)QhrH#"C6T!!+Qlrp'!q)'hrM(!$X*!!CJiLEIpN)&P1N!!UE[r dB#BJEIq-F!5`N!"Q((!",`")H!"3,bhrf#mYrp!LEIq3!#"C6T!!+Qlrp%*U!J3 eI!!+!JC)H!!SBIq3""!P3!)))#S###4I6Pj1G!!%M@jPGd0bC@4#G@CQCA)!!#T 46PErq%MR!#3NEJ!))!TQ!!#%)'hrM(!"X*!!CKj`!#m!5(J!ALmYrpJ[,Ir-)Qh rN!!J@8k3!#TZrr4J@L"Yria`!V#3!'B5,bhrc#*YrhJJ@8k3!#TZrr4J2L"Yria `!l#3!'B1)QhrC#"C6T!!+Qlrp'!Q)'hrM(!%X*!!CKa`!5m!5(J!ALmYrpJ[,Ir -)QhrN!!J@8k3!#TZrr3NVJ!-*@i!%!!%5Ui!&'B)3US!#(!!B$i[,J!3BIrrrri i*8!!#%UU!!KQ"(!'B#BLDJ!))'i!&#!Z!""b),#"C35L,Q!15S"R#L)*%YK6J'E k)N&`!#4I6Pj1G!!3Lf0[F(P%BA4K6f*U!!!U88j@rrK)jaJm+'i!##4Z!!ai!*I ,GJ!J#QB!!)3JEIq-F!'`N!"Q(R!!,`")H!"d,bhrf#mYrmJLEIq3!#"C6T!!+Ql rp'"D)'hrM(!#X*!!CK)[,Ir))QhrH#"C6T!!+Qlrp'!q)'hrM(!$X*!!CJiLEIp N)&P1N!!UE[rdB#BJEIq-F!5`N!"Q((!",`")H!"d,bhrf#mYrmJLEIq3!#"C6T! !+Qlrp#C-)!YQ#%+5B!!#@P+%5TYQqL!%8S$PL#m!BIrrrrdZ*)!Q!%U$CJ!!K#" Yria`!E#3!'BHF!![!%Ki!(`[,IrB,bhra#*Yrj!!)&P1N!!UE[rdB&SJEIq-F!+ `N!"Q%LmYrm3LEIpi)&P1N!!UE[rdB$iJEIq-F!1`N!"Q$L*Yrf3J@8k3!#TZrr4 J*L"Yria`",#3!'BFF!%[!%Ki!(`[,IrB,bhra#*Yrj!!)&P1N!!UE[rd5S0R!!' d*NaJ!!'J5(J!$'(rrrrmM#"5))!J8NU3!'B!!)3JEIq-F!'`N!"Q(R!!,`")H!# $,bhrf#mYrm!LEIq3!#"C6T!!+Qlrp'"D)'hrM(!#X*!!CK)[,Ir!)QhrH#"C6T! !+Qlrp'!q)'hrM(!$X*!!CJiLEIpN)&P1N!!UE[rdB#BJEIq-F!5`N!"Q((!",`" )H!#$,bhrf#mYrm!LEIq3!#"C6T!!+Qlrp#"55T!!C`!"$L*5)P%J9(!-FL#`J@8 %SLjJ$NU!C`SL#4,B8i"QqL*")&)J8#mS!!4KrrrrqmJJ8L"3)8!!##"5)&"+U!! )CJ!!K#"Yria`!E#3!'BHF!![!%Ki!)X[,IrB,bhr[#*Yrj!!)&P1N!!UE[rdB&S JEIq-F!+`N!"Q%LmYrl`LEIpi)&P1N!!UE[rdB$iJEIq-F!1`N!"Q$L*Yrf3J@8k 3!#TZrr4J*L"Yria`",#3!'BFF!%[!%Ki!)X[,IrB,bhr[#*Yrj!!)&P1N!!UE[r d)&)J8%US!!KR2L"8)#J!"#*5)P%LD3!))&3JD!!)FL#`J@8%SLjJ$NU!C`SL#4, B8i"QqL*"@)TBLdU6CJ$qAL"$3V"-!#5$60mF'%jH6R3!#)eMEh"j4'&dB8&bFQ& j!!!U88j@rrK)j`!m+'i!%*A+PmXQEJ!-)!aQ"R!'B!!"%%Ki!!KKrrrrqUBSJ%U 8CJC`"Q!!!2T)H!"-BIrrrrU3!#4!)!TQ"R!'B!!!j%Ki"1*KrrrrqRSNJ%U5CJC `"Q!!!-j)H!6LBIrrrrTN*8!!"%UU!!4Q"R!'B!!!Y%Ki"0m[%bm5)QhrP#"C6T! !+Qlrp%Ki"0m[+`!%,bS!"#*Yrj3J@8k3!#TZrr3[+`!3,bX!$#mV!!K)DJ!)BIr rrrXS*@X!&!!8*@X!'!!B*@X!(!!F*@X!)!!J*@X!*!!N*@X!+!!S5'S!,#mV!#a KrrrrqrJ[+`!i,bX!0#mV!$")DJ!`BIrrrrVJ,bX!4#mV!%![+`!m5'S!2'(rrrr kbN+U!%JJ9(!#))!J9#&+!!4`!%cI(!"1ANjd!!b+Bfp`H9Be3h*PC!!!!#T46PE rq%MR!$!QEJ!3PFSJ#fB%F!CJ@NKi!!KKrrrrq@JQJ%U6CJ4`"Q"')&0`!5#!5(J GIQ(rrrrj6L4!)!TQ"(!'B#`L5L"Z!!`J2!!!(Ajb),#"C35L,Q!15S"R#L)*%YK 6J'Ek)N%J8b&+!!4`!%cI$!"1ANjd!!b+Bfp`H9Bd3h*PC!!!!#T46PErp%MR!$! NEJ!)PmY#V[rd)!TQ"R!+B!!!i(!"X+i!$'F1F!+`VJ!-C`C`%'!!!-T5DJ)%-#S #","U!JCQDM!U!JE33$9!!JB`+J)'5-$PL#m!BIrrrrLN*N!J#fB'F!CJ!!#@-#S #"NM!)J$JLH#*i)RZLG+!iS(PL5!")NXJDJ))FL#`J@8%SLjJ$NU!C`SL#4,B8i" QqL*",bS##'(rrrrfc#9,!JK`!E#Z!!aQ&%KZrr3[,J!3,bi!$'(rrrrqYQ!JF!+ `VJ!-CK4)E[rd,bi!%#mZ!!aKrrrrr94J"(!3B"3`+J)%5-"6J#"U!JJKV[rd$!" `!%cI$!"1ANjd!!b3!'0bC@4#G@CQCA**ER0PFR3!!!!U88j@rrK)jaJ`*'i!#*I ,)!TQ"R!+B!!!L(J!B(B[,J!3,bi!$#"U!JJJF%`!,bJ!"#mS!!"Kr`!!!B4+!'G 5)'S###C`6!![#f(r!!!'0#m,BIrrrrB#*J4J&#!$8S!JDJ)))QS###1`$!!m!&+ $-#S#"%M!8i#fJ'hJ-#S#"%M!8i!JDJ))3V!-!&0U!J4J$&+%-#S#"%M!Z)"YJ(! !60m-'%jH6R3!$*!!Bh*PC%*eCQCPFP*PE@pfC3!!!#T46PErp%MR%$3QEJ!)*'i !$%+Zrr3J#QB!!)3JEIq-F!'`N!"Q(R!!,`")H!&),bhrf#mYrlJLEIq3!#"C6T! !+Qlrm'"D)'hrM(!#X*!!CK)[,Iqi)QhrH#"C6T!!+Qlrm'!q)'hrM(!$X*!!CJi LEIpN)&P1N!!UE[r`B#BJEIq-F!5`N!"Q((!",`")H!&),bhrf#mYrlJLEIq3!#" C6T!!+Qlrm#!+CJ4`$'!iGJ"J(L"U!JJYF$`!rr4)E[rd,`XLEIrJ)&P1N!!UE[r `8S-`+J)%5-#fJ'hB,bS##'(rrrrd`(!!60m-#%jH6R3!#*&NDA0`Eh0P3h*PC%* eCQCPFJ!!+P&19[ri51F!0%UZ!!aR"NUZ!"4Q"R!!B!!!c#!Z!!L`VJ!3C`C`!'! !!,a`!E#Z!!KQBL4Z!!`QEJ!85'X!!8KU!!%LEIqB)&P1N!!UE[rd5S"Q2NKV"10 )DJ6M)QhrQ#"C6T!!+Qlrp%U!CLC)Da1*5'S6L5*YrjJJ@8k3!#TZrr4+J'B1)#S BI,#V'(aQ"(!"B&4`!'"3F!+`VJ!)CNBNEJ!-*Qi!&#m6,a)LEIqB)&P1N!!UE[r d5S"Q*LmV!!3[+J!%)QhrQ#"C6T!!+Qlrp%U!CJiJ+J!BX+X!''B%F!&J"R!!B!* `!%cI$!"1ANjd!"#(Bh*PC'0YF!!!+P&19[ri51F31#CZ!!JSEJ!-PFSJ$'B'F!C J!!'3!%Ki!LCKrrrrmc3SJ%U8CJC`"Q!!!ASN9#"+)NXJ#"$CC[`PD`%!!3""kJ% %3qX""#!)%0PQr$9V!J3#"$9V!JB#"K9m!!%#%$!U!JC)`1@),`"KrrrrmZBP3!) )5US##'B'F!CJ!!%SGJ"J!!%-)'X###"`2!"`!E#3!'B!!**)H!!)BIrrrr+f)'S ###'!2!!JDJ))5V!m!'B'F!CJ!!$`)'S###"`2!"`!5#!5(JGIQ(rrrrbL#"U!JJ JF$`!)8!!"#"U!JJJF$`!5UJ!"'B'F!CJ!!#k)QS###*a2!!LD3!%)'X###"`2!! JD!!%)$`!!"eqFL#`J@8%SLjJ$NU!C`SL#4,B8i"QqL*"B'JJD`)))(!m!(!#X*! !CL!JDJ))5(!m!#"V!JJJF$`!,bJ!"#mS!!"Krrrrq4"J1L"V!JJJF$`!F'1`N!" Q,%Ki!!KKrrrrmHSJDJ)))B!m!#"U!JK+X$`!CJ4`"Q!N)'S###"`2!"`Bb#!8S- `+J)%5-#fJ'd!rZa#UJ)L3US#(R!!60mF#%jH6R3!#)9NGA"13`!!+P&19[ri,`S NEJ!))!TR(Q!1)&)[+!!)BIrrrr(+@)T+NQEZ,bi!#'(rrrraZL4I6Pj1G!!%N!" NDA0`Eh0P4'&dB8&bFQ&j!!!!+P&19[ri51F!*#4Z!!JJ#QB!!*BJEIq-F!'`N!" Q(R!!,`")H!(#,bhrf#mYrl3LEIq3!#"C6T!!+Qlrp'"X)'hrM(!#X*!!CK)[,Iq d)QhrH#"C6T!!+Qlrp'"3)'hrM(!$X*!!CJiLEIpN)&P1N!!UE[rdB$JJEIq-F!5 `N!"Q,R!",`")H!(#,bhrf#mYrl3LEIq3!#"C6T!!+Qlrp'!3,`S[#L*YrqJJ@8k 3!#TZrr4+NQEXF!!NAdjH6R3!")TQFQ9P6N0-DA0d!!!!+P&19[rX51F3*#4Z!!J J#QB!!)3JEIq-F!'`N!"Q(R!!,`")H!(5,bhrf#mYrp!LEIq3!#"C6T!!+Qlrk'" D)'hrM(!#X*!!CK)[,Ir3)QhrH#"C6T!!+Qlrk'!q)'hrM(!$X*!!CJiLEIpN)&P 1N!!UE[rSB#BJEIq-F!5`N!"Q((!",`")H!(5,bhrf#mYrp!LEIq3!#"C6T!!+Ql rk%KZrqiLEIq%)&P1N!!UE[rS0J!`!dM!C`4`!'!dF'5`UJ)5Cb4)E[rh5'S#&NK ZrqiLEIq!)&P1N!!UE[rS0J!`!dM!C`K`!'!)3Llrpa!ZrrG-h`3)6Pj1G!!%LQP c6'pMDdpeFR-!!!!U88j@rrK)j`!d*Qi!##!,CJ!!K#"Yria`!E#3!'BHF!![!%K i!HF[,IrB,bhrX#*Yrj!!)&P1N!!UE[rdB&SJEIq-F!+`N!"Q%LmYrl!LEIpi)&P 1N!!UE[rdB$iJEIq-F!1`N!"Q$L*Yrf3J@8k3!#TZrr4J*L"Yria`",#3!'BFF!% [!%Ki!HF[,IrB,bhrX#*Yrj!!)&P1N!!UE[rdF!+`NfCQ*'X!"#m5BIrrrqmd,bS !"'(rrrr[+NUU!""R#LmU!""KrrrrlaT+UJ!iC`S[+J!iBIrrrqm+5US!4'F+,bS !4'(rrrrZqNUU!%KR#LmU!%KKrrrrr3K+UJ!XC`S[+J!XBIrrrrci,bX!"'(rrrr Zd(!!60m-!%jH6R3!"*CMBepQFQ9PAf0bC@4ID@jdCA*ZB@ac!!!!+P&19[ri,`0 f!#mZ!!KKr`!!!&if!$!$5-"R"$!$B!JJEIpJ3T!!-!-Q(djH6R3!"***EQPdD@& XDATP3f&MD'9-D@)!!!!U88j@rrKKr`!!!%j1ANjeN94PFQeTEQ&dC80KBfKP6'P L!!"1G5T46PErq#m0)!d[!#mYrk`LEIqN)&P1N!!UE[rd+d$rA'(rN!6FF!"1ANj d!!3U88j@rrJ[$5mYre`LEIqJ)&P1N!!UE[rd6Pj1G3JZ68P8)%N[8b"0B@0%CAB &,JJ-)5KZB@eP)#%p)$!T!5N)3d0KBfKP,Q-")$d2)5JUD'&ZC'aP)#%p)$!T%5% SF(*TEQ0TF'&X)#%p)$!T$5%SFf&QC9!J)6dJ-#N-3d0KBfKP9A4TE#jM!5d-)5K cDATP)$iJ-%`T!5X+)5KZBb!K25!`+3%j#b%SEf*U)#%p)$!T$#%SC'9cG#!K25! `+3%r$h*PG'4PFh3J26dJ6P9-6!iU+Q4PFh3J26dJ6P9-6!%h&LJU+Q4PFh3T,6j NBA4K)$dp)%j96%`"+`TZBb!p25"198a-!6-5)5KMER4bE%*XEf0V)#%p)$!T!5i 0)5KMFQ9NFb!K25!`+3"1)J(SJJ)9!UJ!rJ$U!0i!aJ#f!+B!Q!#-!)!!FJ"N!&B #%!"%!RJ#J!!d!#S!(!!B!#!L2c`")`DTm!)Lrrd5)J'`JJ)X(kJ"X"pL!E!-XJ' `$%`"X!`-!E!,fJ'`#k3"X!VB!E!*3!'`#,)"X!K-!E!(lJ'`"hJ"X!CN!E!&m!' `"AB"X!8b!E!$i!'`![3"X!(S!E!!e!'`!*!!!E!%)J'`JJ)%!9JJ'!%B!#!B)ar 1!3%K#!-M(r`"!5%)!b)J'!`!!!$rN!3!N!F"!!!"q!!!!!%!!!(`!!!!"3!!!") !!!!"!!!""!!!!43!!!1!!!!!"!!!!"8!N!m"!*!,)J#3#`S!!!!"!*!(RJ!!!!% !!!!"!!!!!J!!!!X!N!I4!*!,!`!!!!d!N!Ik!*!,!J!!!"!!N!3"!!!@!J!!,`) !!$J#!!"#!J!!6`)!!&S#!!"P!J!!EJ)!!(N#!!#&!J!!P`%!!,B#!!$$!J!!j!) !!1`#!!$c!J!"%`)!!5N!!3#3"3F!N!3"JB$c5K&#&B!h4KG#!!!!68P8Ak9$3f& MD'9(E'pLB@ac6'PL!'G$ER4bE%*XEf0V!%PZG'9bCQ&MC8aTBJ"6HA0#FQ9KD`" 1CAG3G(*6HA-!9@jSEfaN6@9YEh*j!%K[E'40C@e[FRN!4'PcF'pcC9"dFJ"%C@* eCe0dFJ"(CA43G(*6DATP!&0KE@93FQpMCA0c!%GPG%0eFR*PER43FQpMCA0c!%j PGe"dFJ"0594IT84PBR9RCfPZCdaTBLjNC@*eC`"R4'9LG@G6D@GZB@`!3@aPFR4 6D@GZB@a"G!"0594IT8e*9%0-D@)ZC'9LG@F!Fh4bEQ0`H3"cG(*MEA!!E@9YFf9 d!%e*9&qP68P88R9ZG'PYC8aTBLjNC@*eC`"IAh9ZFQ9RDA0dCA*ICR*KCfePER3 !AepbC@GTFh4PFPpQFQ&RE@9ZG!"MBepRCA4IBh*PC&pfCA*cD@pZ!'0MAfCbC@9 I6N0ID@jQE`"MBepRCA4IBfKKEQGPAh4TE@8!Bf0IC'9cG(*[H3"MBepME'pcC3" MBepMFQ9KG'8!Bf0ICR*PC9pMFQ9NF`"MBepRCA4IEQ&YC3"MBepQFQ9PAh"bD@j MDA"KE!"MBepbC@e[GQ9IBh*PC!"MBep[F'9Z!'0MAfGPG&p13epTEQC[!'0MAh0 PF9pQCA4MD&p13h-!Bf0IFf9dAh"bD@jMDA"KE!"MBepcD(9dC'phEJ"MBepcCA& ICQ9dBfKIBh*PC(-!Bf0ICf9dAh"bD@jMDA"KE!"MBepTEQPdD@&XDATP!'0MAh0 dEh*P!'0MAfa[BfYIFQ9aG@9cG!"MBepQFQ9PAfjKE@8!N!J%!!!!$!!"!!J!"!! !!!B!#!!'!!J!#!!!!!S!"!!+!!!!#`!3!!X!$!!2!!!!%J!%!")!!!!6!!J!%`! 6liN!$c0A!"*09`!+QYm!##E2!!P-)3!0cUm!#cEk!"(i"J!1jP-!"a0-!!kjaJ! 3JV%!%)`+!!XpI3!5#&i!%-`,!!h)j3!)*`d!$aJH!!aR@J)!!6d!!!*)!!%#!!& 4!!!##!!"!J!"B3!!!R!!!3)!!A3!!!*i!!%#!!&r!!!#J!!"!J!"L!!!!T!!!!% #!!'5!!!#%!!"!J!"S!!!!N!!!3)!!D`!!!)J!!%#!!'q!!!#B!!"!J!"c3!!!SJ !!3)!!G8!!!)S!!%#!!(N!!!#1!!"!J!"p3!!!PJ!!3)!!JB!!!+B!!%#!!)5!!! #-!!"!J!#*3!!!P!!!3)!!MB!!!+J!!%#!!*%!!!#D!!"!J!#63!!!J!!!3)!!Pd !!!)B!!%Bd`!!!3!!!!&N!!!!C!!!!$)!N20J!*!,!3#3%`&Y0MKV!*!6!3#3%8! 868P8Ak9$3f&MD'9-D@)ZC'9LG@F!!!!"!!!!!@3!!!"N!!!!-J9@1G!cb!!!!"` !-J!!BfCbC`!!!!S!!2rr!*!)5'8: \ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheLib.PPC b/src/mac/libraries/CCache API/bin/CCacheLib.PPC new file mode 100644 index 000000000..98e665770 --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheLib.PPC @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :$80$B@0SC8aTBLj38%-!FfKXBN0"*%J"!!!!-#J!!!'5'R*+EhNKF'9QCR"hF'- !!!!"XP21U`#3$3-!!J#3"2q3"!#3"LPX!!!TE!!!+@`!!!93!!3%!2q3"!#3"J* K!!!#A3!!!@J!!#l!!J%%!2q3"!#3$J6'!!!!J!3%"!#3"Iq3"!#3"`%!!!&J!!! !!3!!!9J!!!!&!!!!%`!!!!%!!!%)!!!"'!!!!f!!!!!%!!!!&3#3$`J!N!X0!*! ,!3!!!!J!N!FM!*!,"J!!!!N!N!F`!*!,!J!!!!m!N!G$!!!!!3!!!!%!!!!#!!! !%3#3"!)!!&8#!!"I!J!!E!)!!(F#!!##!J!!M3)!!*N#!!#V!3!!XJ)!!,i#!!$ &!J!!c!)!!03#!!$E!J!!iJ)!!1N#!!$r!3!"%`)!!5!!!3#3"3J!N!4+%N!"3J& !!8)33J#!!dB@5@jdCA*QB@0P6'PL!%e*9&qP3d0KBfKP4fa[BQ&XFdaTBJ"0594 IT8e*9%0-D@)!68P8Ak905945G@jdD@eP6'PL!%e*9&qP4'9LG@GRD@jR6'PL!%j PGe"dFP0jF`"9EQK[E'40C@e[FRN!5'pXC%ePE@pbH3"%DA0`Eh0P8(4b!%GPG&" dFP0THQ8!8f&YC9"bEf0PFh-!4f9d3h9bFQ9ZG&"bEf0PFh-!6Q9h8(4b!'G$ER4 bE%*XEf0V!(0dFQ0YF!"YC@eMF(N!Fh4bEQ0`H3"cG(*MF(N!Fh4bE'9Z!'ePEA0 PG!"IAh9ZFQ9RDA0dCA*ICR*KCfePER3!AepbC@GTFh4PFPpQFQ&RE@9ZG!"R4'9 LG@G6D@GZB@`!3@aPFR46D@GZB@a"G!"MBepRCA4IBh*PC&pfCA*cD@pZBf0IC'9 cG(*[H@0MAfGPG&pMD'&ZCf9IG'PYC@0MAfCbC@9I6N0ID@jQEf0MAf0bC@&dC@0 MAf0XEh0PBf0ICf9dAfjKE@9MBepQFQ9PAf0bC@4cBf0IFQ9YEhCPAf0bC@4MBep QFQ9PAh"bD@jMDA"KE'0MAfp`C@jMBepcD(9dC'phEQ0MAh0PG&p`FQPZBfP`B@a MBepcCA&ICQ9dBfKI6N0cBf0ICf9dAdj$AfPZCQpMBepTEQPdD@&XDATPBf0ICf9 dAh"bD@jMDA"KE'0MAh0PF9pQCA4MD&pMFQ9NFf0MAh0dEh*PBf0ICR*PC9pZB@e PBf0IE'pMDepbCA&eCA0d!*!("!!!!!`!!3!)!!3!!!!'!!J!"J!)!!J!!!!+!!3 !#J!!!!X!%!!,!!`!$`!!!")!"!!5!!!!%`!)!"-!%qq*!!UDh`!569F!$c0A!!P -)3!)*Xm!#cEk!!h1V`!1jP-!%IJ'!!F66!!,2Ad!%)`+!"##X3!1ZFB!$FMP!"$ -#`!5#&i!##F0!!aR@J!2'"i#!!%Z!!!!q!!"!J!"33!!!5J!!3)!!8X!!!%J!!% #!!&G!!!!Z!!"!J!"E!!!!8!!!3)!!A8!!!%`!!%#!!&p!!!!m!!"!J!"L!!!!-! !!3)!!C8!!!%3!!%#!!'M!!!!d!!"!J!"Y!!!!6J!!3)!!EX!!!&)!!%#!!('!!! "#!!"!J!"eJ!!!1J!!3)!!HB!!!$B!!%#!!(d!!!"8!!"!J!#!3!!!3!!!3)!!K% !!!$J!!%#!!)M!!!"'!!"!J!#+`!!!-J!!3)!!MF!!!#`!!%!N!Tm#!+QN!!"!!L 8)Ir!1#%!3)!"!!Km#!1Q6S!!)(`)!UDrBIrXN!!"!!L8)Iq`I(XEH(bF)hKm[5Y iI0icH)2L!##!(`!!+!!!!%##!&3iB!!35!!9*@!!!!#3!(X!!)"l!!!S!`!!3)) !$$KJ!!C)!!"S1!!!!*!!!`!%J(X!!*!!!`!!J(X!!*!!!`!)J(X!!*!!!`!-J"X !!*!!(`!!5!!!#*!!'`!!,"`!!8#"!!`iB!!*5!!!+#JG!!""JJ!-1!!!!C!!(3! !+"i!!%'#!!b!!J#SN!!H!!!iB!!!J!%!@$JK!&"m#!1QZf(rl%k!!#!!N!BJ3B! &!*!&c!!1,Q0MAfPZDA4TB@aTHQ9m#!+QNq(rr*!!!3!)P#(r`(ar'hJS(`!!3B) !+)"r!!!S!`!!3B)!(%J!)T9J!!!!J(m!!%J!%ZeJ!!!!5!!!$$KJ!!T)!!!-1'! !!*!!I`!!J!%!5$JK!%"m#!1QJq(rr%k!!#!!N!BJ3B!"!*!&C!!-,Q0MAh0SGA4 NEhGZ!!"m#!+Q[b(rj*!!!3!)P#(rS(aj'hKmQL0iI,XVH(cF-hKmrcYiI4e$H#J C!!"!JJ!-1'!!#NJ!!6JS(3!!3))!$$KJ!!a)!!%S1'!#+%J!%jeJ!!!!I(iEH#J H!!"!JJ!-1'!!"NJ!!3JS'J!!3B)!'(p$dhK)!#FpJ%%!&#J$!2p"J!!-1'!!!8J !!14r`r0iId66H%J!*Sf!33!8+"`!!%'#!"KrJq0i5!!R#B""!"3S!`$r3B!!$$K J!!a)!!#`1(i""(q%ihK)!#CCJ%%!&*2q!J`li!!!Xri#"*0q!3!i!!!#Q"i#%$J !!'53!"i#&(r$mhK)!"0PB!!!!*!!IJ))J"i###J!!!"!JJ!-1'!!"NJ!!&b!'3! ),!!!!%##!"L6rJ)NNri#)*2C!!#6f3!%5!!!()"j!!56``)JJ"N!"*!!(J)NNri #)*2C!!5!H3!)1!-!!C!!'3!)J(N!$$J$!!'3!"N!$*2G!!!iB!!!J!%!D$JK!'" m#!1QZb(rj%k!!#!!N!BJ3B!(!*!%!B!!#LjMBepMFQ9KG'9m#!+Q[d(rk*!!!3! )P#(rX(ak'hKmQb0iI,`VH(cp1hJiJJ'%1')"Gi#L!%3li!!!IrllH#JD!!"!JJ! -1'!!#NJ!!,`S(3!!3))!$$KJ!!a)!!#X+"X!!%##!$b!"3!!,!!!!8##!"JiS!# V1-!!!8J!**f!33!85!!!(#`!!!4!JJ!81+!!UcM!!!&)!#5"J%%!&)2k!!")!!! dIf2EH(rNqhK)!#9CJ%%!&#`$!!"!JJ!BJ"m"!(`F!!"!JJ!-1m!!!8J!!!L$r`) J+"m!!%'#!!ar`!Ge3B,ra(r!"h9"JJ!3Nrd!!$KJ!!")!!!31!!!!*!!(3!!1'! !#S!"!&Ji)3"3I!J$TVY"rqK1J!!J!*!')%'!"J#3"!%3!!JZBf0IEh"PEJ!!I!J #TVqKrr53!!%!#*3Krl"mI4YiI*iMH$KL!BdiJJ'%J+)!4#JG!!"!JJ!-1'!!#NJ !!*JS(J!!3))!$$KJ!!a)!!#)J"i!!#J!!!"!JJ!mJ!8!!#`!!!&!JJ!B1+!!c6M !!!&)!#0pJ%%!&%J!!"`X!!!%3))!&$LJ!-di`!!"5!!MBB""!"5!IJ!!L!-#%#` !!!&"JJ!-1'!!$NJ!!#amIaYiIk2VH(rNqhK)!"S*B!!!!(rMqhK)!!mGB!!!!$K J!!#3!(i!!)!"!&Ji)3"3I!J$TVZKrr41J!!J!*!')%'!!`#3"G`!#5jMBepME'p cC3"m#!+Q[k(rp*!!!3!)P#(rX(aq'hKmRb0i1')"M6L#!B5!SJ"%+"i!!%##!!` iB!!+5!!"(#JI!!"!JJ!-1'!!$%J!!3b!(`!!+!!!!%##!$b!"3!!,!!!!8##!"J iS!$V1-!!!8J!)S@!33!85!!!(#`!!!4!JJ!81+!!kcM!!!&)!#*TJ%%!&)1r!!# !(3)8,!!!C%'#!#"rSqYi5!!HP@!!!!"mB!Ge3))!$$KJ!!K)!!#FJ"d#*#J!!!" !JJ!JJ"d#)*!!(J!!J(d#)#J$!!""JJ!-1!!!!*!!!`)NJ"d#)#J!!!"!JJ!JJ"d #**!!(J!%J(d#*#J$!!""JJ!-1!!!!*!!!`)JJ"d#*#J!!!""JJ!JJ(d#)#J$!!" "JJ!8N!!$!L5!(3)JJ(d#**!!!`)J1!!!!CJG!K"r`r0iIq6lH%[rrFf!RJ!-1!3 !!C!!(J!-J!%!@$JK!&"m#!1QZk(rp%k!!#!!N!BJ3B!$!*!%!@!!#bjMBepNCA0 dFQpj!!!!+!-!!%##!!`iB!!+6S!!)#J%!!""JJ!8J!-!$*!!"!!!1'!!!%k!!#! iB!!-6S!!)!#3"L"!!*!(-!!6,Q0MAfGPG&pMD'&ZCf9IG'PYC3!!!(`)!UDr`Ir iN!!"!!L8)Ir!I(iEH(bI)hL3!+%!B*!!`3"N+"i!!%##!!`iB!!+5!!!H#JI!!" !JJ!-1'!!#NJ!!'L!(`)8,!!!C%'#!#JX!!"Q3))!'(rMqhK)!"d"B!!!!(aJ"h9 !JJ!-1'!!#%J!!$KrirYiJ)%!B)#K!'4)!"6eB!!!!#`$!!"!JJ!3J*i!#$J%!!' 3!"i!#)#H!!`i"!!"N!!H!!b!!3")1#%!3(`)!kDl`Iri6S!!)!#3"L""J!)!N!@ i!!NZBf0IFh4[FQ8!I!J#TVr"rrL3!!%!#*3Krm"mIKYiI*mMH*!!S3"JN!$"!'3 S(J!!3B)!$#JI!!"!JJ!-1'!!#NJ!!&L!(`)8,!!!C%'#!#JX!!"Q3))!'(rMqhK )!"`eB!!!!(aJ"h9!JJ!-1'!!#%J!!#KrirYiJ)%!B)#K!'4)!"9jB!!!!)"q!!` i!`!"N!!H!!`iB!!!J!%!5$JK!%"m#!1QZm(rq%k!!#!!N!BJ3B!#!*!&S!!2,Q0 MAh*PE@pfC9pMFQ9N!!!!I!J#TVq"rr#3!!%!#*3Krl"mI"YiI*dMH(bq+hKmhc0 i1')"R6L#!B5!SJ"%+"`!!%'#!!`S(3!!3))!$$KJ!!T)!!#X+"m!!%##!$b!"3! !,!!!!8##!"JiS!&V1-!!!8J!(aQ!33!85!!!(#`!!!4!JJ!81+!"DcM!!!&)!"l pJ%%!&)!G!K3X!!"N3B)!+#`!!'C!JJ!BIk2VH%J!'b9J!!!!I'!(G8##!!`iB!! )5!!!2)!G!3"m!2!!3B)!$$KJ!!T)!!!S1(d""(rNqhJiS!$r5!!IIB""!"5!I!! -1!-!!C!!(!!-1'!!!)!"!&Ji)3"3I!J$TVZ"rr"1J!!J!*!')%'!"!#3"!%!!"% ZBf0IFf9dAh"bD@jMDA"KE!"m#!+Q[m(rq*!!!3!)P#(r`(bH)hKm[bYi+"i!!%# #!!`iB!!+5!!!D)!H!K3X!!"Q3))!)(r$mhK)!"TPB!!!!(aJ"h9!JJ!-1'!!#%J !!%!S(`!!3B)!0$KJ!2p)!!PpB!!!!*!!I`!!J(m!!#J$!!"!JJ!-1'!!"NJ!!"3 iRJ%%5!!H6B""!"3iB!!!J!%!5$JK!%"m#!1QZm(rq%k!!#!!N!BJ3B!#!*!&S!! 4,Q0MAfGPG&p`FQPZBfP`B@`!I!J#TVr"rrL3!!%!#*3Krm"mRL0iI,mVH#JH!!" !JJ!-1'!!#NJ!!%L!(J)8,!!!CN##!#"r`r0i5!!CS@!!!!"mB!Ge3))!$$KJ!!K )!!!J+"m!!%##!!`iB!!'5!!!%)!H!3#3!"m!!$KJ!!#!!3")1#%!3(`)!kDl`Ir i6S!!)!#3"L""J!)!N!@!!"3ZBf0ICf9dAf0bC@4IGQ9bFfP[EJ!!I!J#TVr"rrL 3!!%!#*3Krm"mRL0iI,mVH#JH!!"!JJ!-1'!!#NJ!!&L!(J)8,!!!CN##!#"r`r0 i5!!Bq@!!!!"mB!Ge3))!$$KJ!!K)!!!`+"m!!%'#!#3iB!$r5!!)%@!!!!#3!(m !!)"r!!"ra20i5!!FmB""!"3iB!!!J!%!5$JK!%"m#!1QZm(rq%k!!#!!N!BJ3B! #!*!&N!!!$#jMBepRCA4IEQ&YC3!!I!J#TVqKrr53!!%!#*3Krl"mI4YiI*iMH(b r+hJS(J!!3B)!&#JI!!""JJ!-+"d!!%##!!`iB!!+5!!!M)!I!!!S!!!!3))!-$K J!!K)!!GaB!!!!*!!I`!!J(m!!#J$!!"!JJ!-1'!!"NJ!!&b!(3!!N!!$!!#!I`! !J!-!!#J!!!"!JJ!J5!!(U@!!!!!i!!!!N!!I!!#3!"i!!$KJ!!0)!!!SI!-$H(r %mhK)!"5eB!!!!)#I!!#!C!!!J!-#)*!!"!!!1'!!!)!"!&Ji)3"3I!J$TVZKrr4 1J!!J!*!')%'!!`#3"GJ!%5jMBepcCA&ICQ9dBfKI6N0c!(`)!UDrSIrdN!!"!!L 8)Iq`I*dMH(bq+hKmhc0i+"d!!%'#!"3S(`!!3B)!$#J$!!"!JJ!-1'!!#NJ!!FJ S(J!!3))!$$KJ!!C)!!'iJ"d#&#`!!'C!JJ!JIk2VH%J!&bPJ!!!!I'!(G8##!!` iB!!)5!!"N!#!(`!!+!!!!%##!%3iB!!)5!!'2@!!!!#3!(m!!)"r!!!S!`!!3)) !$$KJ!!C)!!&J1!!!!*!!!`!%5!!!&)#I!!#!C!!%1!-!!C!!"!!%J(m!!)#$!!5 S(3)%I!3!!%#!!"b!I3))9)!31RaM!#k!!`!!,!!!Bd'#rmL!I`!!J)-!"+JG!J4 m"!!!3B!!)%J!"M&J!!!!1!!!!*!!(J!!N!!I!!!iB!!$5!!!k)"p!JK8J"!kI'- !,S!$!!!X!!!"3))!I$KJ!!K)!!@*B!!!!*!!IJ!!J"i!!#J!!!"!JJ!-1'!!"NJ !!+`iB"f!5!!&C@!!!!#!RJ!!N!"N!!5!IJ!!J'-!"#J$!!"!JJ!-1'!!"NJ!!)# ![3))J*m!!)!%!!48!"!kI)8!,S#%!!3iS"f!5!!D4B""!"4)!!"%,!!!!N##!#b !!`!%N!!"!$`i!!!#N!!"!$L!B3!iJ)%!2(r&mhK)!!YYB!!!!%J!!"3i!!!!N!! H!!!iB!!35!!!')#I!!#!C!!%1!-!!C!!"!!%1'!!!)!"!&Ji)3"3I!J$TVZKrr4 1J!!J!*!')%'!!`#3"!)8!"-ZBf0IFf9aAfCPG'0SAf0bC@4c!!!!I!J#TVpKrqb 3!!%!#*3Krl"mI"YiI*XMH$ZJ!!"r[qYi+"`!!%##!!`iB!!+5!!!d#JE!!"!JJ! -1'!!"NJ!!-#!I!!)1!-!!93$%$T)!"N9J%%!&*!!H`!!J"X!!#J!!!"!JJ!-1'! !"NJ!!*5$R!!!5!!!G$KJ!J4)!"MTJ%%!&)#E!!"rr[YiI'6a,S"l!!"mBr!Z+!- !!%##!!`iB!!'5!!!A(q%ihK)!"M4J%%!&)"l!!"mBr!Z1'-!rcLF!34)!"LjJ%% !&)!F!3#!H`!!I'2`,T!!!`)!Jj`#)$Zp!!%lr`!%+"`!!%##ri`iB!!!J*X!!&H J%$TmC!%ZJ!%!@$JK!&"m#!1QZf(rl%k!!#!!N!BJ3B!&!*!%!4!!$bjMBepRCA4 I6N0ID@jQE`!!!(`)!UD3!!%!#*3Krm!S"!!!3))!$$KJ!!C)!!!8I)-MH%J!!k& J!!!!1'!!!)!"!%Ji)3"!I!J$TNk!!#!!N!BJ3B!!N!Bm!")ZBf0ICR*PC9p`FQP ZBfP`B@am#!+QN!!"!!L8)Ir!+!3!!%##!!`iB!!'5!!!&(b$)hK)!!0"B!!!!$K J!!#!!3")1#%!3(`)!kC1J!!J!*!')%'!!*!'2!!0,Q0MAfCbC@9IEQ&YC3"m#!+ QNq(rr*!!!3!)P#(r`(bI)hJS(`!!3))!$$KJ!!T)!!!NJ(m!!%J!&"eJ!!!!J(m !!%J!!Y&J!!!!1'!!!*!!I`!!J!%!5$JK!%"m#!1QJq(rr%k!!#!!N!BJ3B!"!*! &@!!1,Q0MAfCbC@9IBh*PC(0m#!+Q[m(rq*!!!3!)P#(r`(bH)hJS(J!!3))!$$K J!!T)!!"%1!!!!(`I!hK)!!!BJ(i!!(aMq#j)!"C*J%%!&$[r!!5!IJ!!I!2i,LJ !!!"!J[rJ5!!@,B""!"3iB!!!N!"q!!#!!3")1#%!3(`)!kDl`Iri6S!!)!#3"L" "J!)!N!9i!"!ZBf0ICR*PC9p13epTEQC[!!"m#!+Q[m(rq*!!!3!)P#(rX(bI)hK m[LYi+"m!!%##!!`iB!!-5!!"*$KK!$K)!"@*J%%!&)!I!K3X!!"N3B)!'$KK!$J iR`)B1+%!3%J!&B'!33!8,"i!!N'#!#a!J!!3,"i!!8#!!"4)!!$8,"i!"%#!!-a )!!")1!!!C*!!(`)85!!!a)!I!K3X!!"N3))!)$J!!'@3!"m#&)"K!$L!!3!mN!" r!KL3!"m#(%J!!*`X!!"Q3))!P$KJ!!K)!!#3!)!I!K3X!!"N3))!)$J!!'D3!"m #&)"K!$L!!3!mN!"r!KL3!"m#(%J!!'3X!!"Q3))!')J"!%!S!!!!3))!$$KJ!!K )!!"-J"m#&#`!!'9!JJ!mL!%!3#J!!!""JJ!J1!!!CT!!(`)8J'%!1)!"!$b3!(m #'*!!(`)F5!!!&$KJ!!K)!!!31'!!$%J!!!JiB!!!J!%!@$JK!&"m#!1QZm(rq%k !!#!!N!BJ3B!#!*!%!9`!%#jMBepXEf0VAh*PFA9PFh3!!(`)!UDr`IriN!!"!!L 8)Ir!I(iEH%J!&-Q!33!8I(mEH#JI!!""JJ!8Iq2lH(r%mhK)!"6GJ%%!&(rMqhL !!3")1#%!3(`)!kDl`Iri6S!!)!#3"L""J!)!N!93!!XZ6Q9h8f&QC9"dFJ!!!(` )!UDr3IrSN!!"!!L8)Iq`I(SEH$Z#!FSlSJ'p1m)"Vi2L!%4)!"3"J%%!&(al'hJ S'J!!3))!6)!I!!!X!!!"3))!)(r$mhKrT1Yi1+!!*cM!!!&)!"1jJ%%!&%J!!#3 X!!!%3))!((r$mhKrT1Yi1+!!*cM!!!&)!"19J%%!&#`E!!""J3"-J"m!!#`!!!& !JJ!JIi2MH(qNkhJiS!!S1-!!!8J!%fQ!33!85!!!*#`!!!4!JJ!FIi2MH(qNkhJ iS!!S1-!!!8J!%d@!33!8Id26H$L!!!"rCGYi5!!6BB""!"4r3p0i1)!!!(pPfhK )!"00J%%!&(p$dhKrC0Yi5!!69B""!"4r3p0i5!!5kB""!"5!!3"B1#%!8(`)!kD l3IrS6S!!)!#3"L""J!B!N!3"+!!2,N4TFh"[Ff96B@CP8(4b!!!!I!J#TVr"rrL 3!!%!#*3Krm"mIKYi5!!6EB""!"4mIaYi+"m!!%'#!"4rirYiIm6cH%J!%b'!33! 8Iq2lH)!"!%Ji)3"!I!J$TV["rrK1J!!J!*!')%'!!J#3"9!!$Lj1CAG6B@CP8(4 b8hPcI!J#TT2Krrb3!!%!#*3Krm"mIaYi1')"ecL#!Ef!SJ"%+"m!!%##!$b!"3! !,!!!!8##!"JiS!"31-!!!8J!%K@!33!85!!!(#`!!!4!JJ!81+!!8$M!!!&)!"( jJ%%!&$J!!!#`(`)%1!!!#V!I!JBiB!!S5rrr(C!!I`))J(m##)!"!%Ji)3"!I!J $TS2Krra1J!!J!*!')%'!!3#3"C3!$LjZCAG$FQ9N3R9QCQ9bI!J#TT2Krrb3!!% !#*3Krm"mIaYiN!#"!&b3!+%!B*!!`3"N1')"iML#!Ef!SJ"%+"m!!%##!$b!"3! !,!!!!8##!"JiS!"H1-!!!8J!%9@!33!85!!!(#`!!!4!JJ!81+!!AMM!!!&)!"% jJ%%!&)!"!&b3!"m!!)!"!'#3!"m!")!"!'3S!!!!3))!%$KJ!!#3!(m!#%J!!$L !B3"J5rrq4C!!I`!)J(m!##J$!!"!JJ!-1'!!"NJ!!"L!J3"NJ+%!B%J!%BQ!33! 81'!!!)!"!%Ji)3"!I!J$TS2Krra1J!!J!*!')%'!!3#3"G`!$#jMEh"j4'&dB8p LDJ!!I!J#TVl"rpL3!!%!#*3Krk"mGaYiI*JMH$Z#!KSlSJ),1X)"qcKL!Hil`J' pJq)!4$YJ!!!S'!!!3))!4)!I!!!X!!!"3))!((r%mhJiS!"d1-!!!8J!%%f!33! 85!!!)#`!!!4!JJ!BIm6cH$LJ!(3i`!!"5!!3,B""!"4qqVYi+"S!!%##!"Ji!!! !N!!B!!")!!(F5!!!#$Yl!!'!'J!!1eS!"#J!!!"!J[r`1"X!!93$%$T,rrdYN!" i!!"mH4Yi+"N!!%##!%b!(`!!,!!!!8##!#"q`l0iIm6cH$LJ!(`i`!!"5!!2[B" "!"4)!!!N,!!!"%##!"aq`l0iIm6cH$LJ!(`i`!!"5!!2QB""!"3S'3!!3B)"@(l kZhK)!!%d1'!!$%[rr,f!Q!!!N!"N!!#!H!!!J!-!!#J!!!"!JJ"-J"m!!#`!!!& !JJ!JIk2VH(r%mhJiS!#$1-!!!8J!$d@!33!85!!!*#`!!!4!JJ!FIk2VH(r%mhJ iS!#$1-!!!8J!$b'!33!8J(J!!)"M!!!S!`!!3B)!f)#A!!!iS!!-5!!2UB""!"5 !H!!!J'-!!)"M!!4,rr`YJ*J!!)#%!!#3!'3!#)"i!!#!B`!!J!-!##J!!!"!JJ" -J"m!!#`!!!&!JJ!JIi2MH(r%mhJiS!#,1-!!!8J!$Uf!33!85!!!*#`!!!4!JJ! FIi2MH(r%mhJiS!#,1-!!!8J!$SQ!33!8J(J!!)"M!!#!B`!)+!-!!%'#!$b!Y`! !J)8!#)#P!!4)!!m*J%%!&$XB!!3l@J!%J"S!!#J!!!"!J[l)1'!!!&GJ%$TmH3% ZNcJ!!)!"!'Ji)3"JI!J$TVV"rpK1J!!J!*!')%'!#J#3"!+!!!iZBfp`H84KG'& "FR*KHA`)!UDrSIrdN!!"!!L8)Iq`N!"K!'L3!)%!E(bp+hL$`3"X+"d!!%##!!` iB!!'5!!"2$KJ!!K,rrX0N!"p!!#!(3!!+!!!!%##!!`iB!!'5!!"($KJ!%a,rrV YI(mEH#JI!!"!JJ!-1'!!"NJ!!3!iB!6L5rrkdC!!I`!!J"m!!#J!!!"!JJ!-1'! !"NJ!!1!iB!6L5rrkXC!!I`!%J"m!"#J!!!"!JJ!-1'!!"NJ!!-#!I`!!J*i!!$L J"0p)!!iKJ%%!&)"r!!5!RJ!%1+!%hdJ!$Jf!33!81(m!#)#H!!L![J!-J0i!%%[ rqi'!(J!8N!!I!"5!(J!BN!!I!"L!(J!FN!!I!"b!(J!JN!!I!##!(J!NN!!I!#5 !(J!SN!!I!#L!IJ!X1*m!,%[rr%%iI`!`J*i!-)#q!$5!hJ!i5rrl-6Kr!$b!RJ! mJ,i!3)$H!%4,rrXG1'!!!*!!I`")1!!!!S#G!!#3!!3!!)#G!!#6j!!%J!%!@$J K!&"m#!1QZk(rp%k!!#!!N!BJ3B!$!*!%!A`!#bjMEh"j9M9$FQ9N!!!!I!J#TVr "rrL3!!%!#*3Krm#3!'%!@*!!J3"FI,iVH#JH!!"!JJ!-1'!!"NJ!!'JiB!!)5rr jGC!!IJ!!J(i!!#J$!!"!JJ!-1'!!"NJ!!%Ji!!!"N!!$!!!iB"f!5rrj6Aar'hJ S(`!!3))!$$KJ!!C)!!!NIq2lH)#"!&`iS"f!5!!-NB""!"5!IJ!!Nq-!"$KJ!!# !!3")1#%!3(`)!kDl`Iri6S!!)!#3"L""J!)!N!@N!!XZBfp`H9Bd3h*PC!!!!(` )!UDr`IriN!!"!!L8)Iq`I(iEH*!!J3"XN!#K!(!li!!!Nq%!1#JH!!"!JJ!-1'! !#NJ!!1L!!3"X,!!!!8'#!"3X!!!#3B)!$$KJ!"")!!$-U(i#"$J$!!'`(J)%U(i #"+JH!JCm!`!!3))!@&3!#$b`(J)'U"i#"P3$%$T,rrKPI(mEH#JI!!"!JJ!-1'! !"NJ!!)KrirYiJ*i##+JH!JCm!!j`I!!"P&3&%$T)!!ZGJ%%!&)"q!JK,rrEGNri ##)"K!'`X!`!"3))!&)#"!(!iS3!i5rrqD8J!!#3X!`!#3))!&)#"!(!iS3!i5rr mY8J!!!`iB!!35!!!))#K!$L!RJ))U(i#"$J$rrp8!"!kI+3",MKJ!!#!!3"B1#% !8(`)!kDl`Iri6S!!)!#3"L""J!)!N!3",!!4,Q0bC@4#G@CQCA**ER0PFR3!I!J #TVqKrr53!!%!#*3Krl"mIaYiN!#"!'b3!+%!F$[!!!!S(`!!3))!$$KJ!!T)!!$ !IphcH%J!!+L!I`))I)2`,S"N!!#!K!!%J+%!E)$"!(")!!(4B!!!!(aJ"h9"JJ" iJ(m##(r$m#jr`r0i5!!('@!!!!"r`r0i5rrecAqPkhK8Sa!k5!!!))#I!JJi"3! "9!!31R`%!#jm""NZ1+8!!6KM!!5SR`)%1!6rrh`&!!""J2rB1)!!!)"r!JK8!"! kI)-",UKr!J3i!rrrX"m#"%J!!"Jl[3!"1pi!"+JI!J4m(3!!3B$r9$KJ!!#!!3" B1#%!8(`)!kDlSIrd6S!!)!#3"L""J!-!N!3"!!!4,Q0bC@4#G@CQCA*5C@e[GQ8 !I!J#TVq"rr#3!!%!#*3Krl"mI"YiI*dMH$KL!M%iJJ'pJ+)!4$J!!!#3!!%!1#J G!!"!JJ!mJ!8!!#`!!!&!JJ!B1+!"5$M!!!&)!!MPJ%%!&%J!!"`X!!!%3))!&$L J!8Ji`!!"5!!)bB""!"3S(3!!3))!$$KJ!!a)!!"-1m!!!(rImhK)!!!SJ(d##(` $q#k3!!%!1(q$ihJiJ3!i5rraJ@!!!!!lhJ!"1rm!"+JG!J4m(J!!3B$re)"p!JK ,rr4P1'!!!)!"!&Ji)3"3I!J$TVZ"rr"1J!!J!*!')%'!"!#3"GJ!%LjNDA0`Eh0 P3h*PC%*eCQCPFR`)!UDr`IriN!!"!!L8)Ir!N!"K!&L3!)%!A*!!S3"JN!$"!'5 $`3"F+"i!!%'#!"#$i3"N+"m!!%##!!`iB!!!5!!!k)"K!&L!!3"JI!-!!%'#!!` iB!!!5!!!d#`$!!&!JJ"X1(i!!6LI!!&)!!LjJ%%!&#`$!!"!JJ"-1(i%icLI"10 )!!LKJ%%!&#`$!!"!JJ!d1(i6L6LI%iP)!!L*J%%!&#`$!!"!JJ!FJ(iBI)!I'(a m!`!!3))!$$KJ!!&)!!"S1'!!!%J!!'!X!`!#3))!9)"q!!#!R`!!5!!)5B""!"3 X!`!!3))!0)"q!!5!R`!%5!!)-B""!"3X!`!!3))!()"q!"L!(`!BI!-!!%##!!` iB!!"5!!!%$KJ!!")!!!)1'!!!)!"!%Ji)3"!I!J$TV["rrK1J!!J!*!')%'!!J# 3"!%i!!JZBh*PC'0YF!!!I!J#TVq"rr#3!!%!#*3Krl"mI4YiI*`MH#JF!!"!JJ! -1'!!"NJ!!C`iB!)S5rrb0C!!I!!!J"`!!#J!!!"!JJ!-1'!!"NJ!!Aam(`0iIq2 lH(qNkhK)!!F"J%%!&)!G!3#3!"m"!$Kr!33iR3%%5!!'kB""!"5S(3)%X"m#"+J G!JD`(`)'1!!!!CJI!K#S(`)'9!-31N[rmFf3!(m##)!I!JJS!!!!3))!$$KJ!!C )!!%81m!!!(rFmhK)!!$`J(d##(b$i#k!C!!!,!-!!8##!)!iB!!)5rraMB#I!JK mC1%ZJ(m##(aMi#iS!`!!3))!$$KJ!!C)!!$-1!!!!C!!!`!!1'!GJ%[rm9f!R`) )I)6J,T!!C!!%J(m##(aMi#k!B`!%+!-!!%##!!`iB!!'5!!!P)#G!JKmK1!ZJ)3 !"$LJ(B")!!C&J%%!&%J!!&JX!`!#3))!')#%!!5!(`))I+$L&%[rphe)!!!m,!- !Bd##!$3iB!!)5rr`lB#I!JKmC1%ZJ(m##(aMi#iS!`!!3))!$$KJ!!C)!!!X1!! !Bj!!!`!!1pi!!6ZF!!5S(`)%I"i!!%'!r``iB!!!N!"r!L53!(m#))!"!&Ji)3" 3I!J$TVZ"rr"1J!!J!*!')%'!"!#3"!(8!!BZC(9`6N0m#!+Q[m(rq*!!!3!)P#( r`(aq'hKrhr0i+"m!!%'#!#a)!!!8J(m!!)"M!!K,rr#j1rm!")!I!!!S!!!!3), rk(r$mhK,rr#KJ!%!5$JK!%"m#!1QZm(rq%k!!#!!N!BJ3B!#!*!&A!!4,Q4TFh" [Ff9%BA4K3A*bBAN!I!J#TT2Krrb3!!%!#*3Krm"mIaYi1')#2$L#!Ef!SJ"%+"m !!%##!&#!"3!!,!!!!8##!"JiS!(#1-!!!8J!"$@!33!85!!!-#`!!!4!JJ!S1+! "`MM!!!&)!!3CJ%%!&%J!!"4rirYiIq6lH%[ri4eJ!!!!J"m!!#J!!!"!J[rS1'! !!)!"!%Ji)3"!I!J$TS2Krra1J!!J!*!')%'!!3#3"CJ!#bjQFQ9P6N0-DA0d!!! !I!J#TT2Krrb3!!%!#*3Krl"mIaYi1')"ecL#!Ef!SJ"%+"m!!%##!$b!"3!!,!! !!8##!"JiS!(51-!!!8J!!hf!33!85!!!(#`!!!4!JJ!81+!"dMM!!!&)!!0KJ%% !&$KK!$K)!!-0J%%!&(aJ"c9"JJ!-1'!!!%J!!%#!(`)8,!!!C%'#!#JiB3!i1*m #'$LK!%")!!,eJ%%!&(aJ"c9"JJ!81'!!!%J!!"!i!!!!Q!%!3)KK!%#!!3"B1#% !8(`)!kD$iIrm6S!!)!#3"L""J!%!N!A-!!XZDA0-Ef0V6h9bF`!!!(`)!UDr`Ir iN!!"!!L8)Ir!I(iEH$KL!NmiJJ'pJ+)!4#JH!!"!JJ!mJ!8!!#`!!!&!JJ!B1+! "jcM!!!&)!!+4J%%!&%J!!"`X!!!%3))!&$LJ!HFi`!!"5!!#GB""!"5!(J!!,!! !!N##!'L$rJ!%J(m!!%[rlNf!I`!%5rrZ4B"r!"!S!`!!3B)!#%[rlM@!I`!i+!- !!%'#!!K,rqiPJ(m!4#J$!!""JJ!)5rrZ&B"r!%JS!`!!3B)!#%[rr5'!I`!X+!- !!%'#!!K,rrd4J(i!"%[rlHdiB!!!J!%!5$JK!%"m#!1QZm(rq%k!!#!!N!BJ3B! #!*!&m!!A,Q0MAfCbC@9IBh*PC&pTER4PFQjKE(-!!!"m#!+QN!!"!!L8)Ir!5!! !U@!!!!"mB!Fe3B)!#%J!!"!i!!!!J))!)*!!"!!!J!%!5$JK!%"m#!1Q6S!!)!# 3"L""J!#3"M`!%bj*EQPdD@&XDATP3f&MD'9-D@)!!!"m#!+QN!!"!!L8)Ir!5!! !R@!!!!#!!3")1#%!3(`)!kC1J!!J!*!')%'!!*!'*!!5,P4PFQeTEQ&dC80KBfK P6'PLI%-6H%k!!#"m#!+QN!!"!!L8)Ir!5rrrlAaT'hL!BJ"JJ))!A$LL!!!i`J* GJ1)!8)%#!%a)!!"CJ%%!&)##!+53!'3!!%[rf)eJ!!!!1'!!!)!"!%Ji)3"!I!J $TNk!!#"m#!+QN!!"!!L8)Ir!J')!T)"M!!")!!!aJ%%!&)!"!%Ji)3"!I!J$TNk !!##"JJ"!N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!2*!!33!8J!`!!)"-!!4m#31 Q6S!%))'#!"L3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!8N!""!"5!$!!!J%`!"(` *!kC1J!3JJB)!$*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!%L3!%%!&)!-!!#!6!! %I!N$TNk!"##"JJ!3N!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!1*!!33!8J!`!!)" -!!4m#31Q6S!%))'#!!53!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!FN!""!"5!$!! !J%`!"(`*!kC1J!3JJB)!-*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!!L3!%%!&)! -!!#!6!!%I!N$TNk!"##"JJ!SN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!!*!!33! 8J!`!!)"-!!4m#31Q6S!%))'#!#b3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!NN!" "!"5!$!!!J%`!"(`*!kC1J!3JJB)!0*!!33!8J!`!!)"-!!4m#31Q6S!%)!!!*cL !!!"B!*!'*j!!J!!!,!#3#8iL+@`#)LP8!L)#ABB#!5PX)J'GJJ)4!Bd"K!&h!Nm #2!)a!KS##`(l!Hi"iJ(A!FS"[3'[!+`"D!3L%ML'!K84R"%N%-J3D!md$2J,r!Y -#U3*i!Lm"rJ(*!E-"8`%9!-S!B`"#!!F*ZJL*S3%,Ne*9#"*,e-J6@&M4'9f!5# "CJ`K+'jKE@8J)6dJ-#N)3d0KBfKP,Q-2)5JUD'&ZC'aP)#%p)$!T%5%SF(*TEQ0 TF'&X)#%p)$!T$5%SFf&QC9!J)6dJ-#N-3d0KBfKP9A4TE#jM$#%SFfPkC5!q)$" -+3SK+'jM)#%p)$!T#b%SEf*U)#%p)$!T$#%SC'9cG#!K25!`+3pbCA4NCA0d)$d p)%j96%`1+LTNCA0d)$dp)%j96%`@+#SUC'9cG#NY2Q4KG'%J26dJ6P9-6!TZBb! p25"198a-%L%SBfjdFQa#E'pMDb!K25!`+3dK+'0bC@4c)#%p)$!TFGB!!!%!!!! "B!!!!'!!!!!b!,V"!*!%2S!!CL!!ZZ%!N!3qK3#X)!$p1`#3"B!!E!!!Z[d!N!@ !!(J!!,X2!*!%2S$rr`!!Zam!N!3qMIrr!!#l3`#3"$k-rrm!!,Yr!*!%2SArr`! !qmF!N!3qJ2rr!!#lZ`#3"$k0rrm!!,[[!*!%2Scrr`!![#-!N!3qKIrr!!$lN`# 3"$k!!))J!,aA!*!%2S!!M3!![&m!N!8"rrm!!2Xr!*!%2SArr`!!r*d!N!Err`! !r@N$VL"F!d0@8`T8BA0V)%jKE@9c$%0A3eC6)&"KEQ9XF`i!!!"F!*!,!3#3%`& `Gh"M!*!6!3#3%6`168P8Ak9$3f&MD'9-D@)!N!8"!!!!!@!!!!"J!!!!-J9@1G! d*J!!!"`!-J!!BfCbC`!!!!S!!2rr!*!%"9Bi[&YF: \ No newline at end of file diff --git a/src/mac/libraries/CCache API/bin/CCacheLib.PPC.debug b/src/mac/libraries/CCache API/bin/CCacheLib.PPC.debug new file mode 100644 index 000000000..c72e54adb --- /dev/null +++ b/src/mac/libraries/CCache API/bin/CCacheLib.PPC.debug @@ -0,0 +1 @@ +(This file must be converted with BinHex 4.0) :%d0$B@0SC8aTBLj38%-ZC'9LG@F!FfKXBMq3"!#3"$LS!!!"PV5C5Qpj)A"PCQC `Gh"M!!!!!E*6cTi!N!d$!!)!N!6rN!3!N!Ba`!!!-F!!!$(!!!!&J!!%"!$rN!3 !N!B#D3!!!Q8!!!&S!!!h3!)%"!$rN!3!N!i%mJ!!!)!%"!3!N!ArN!3!N!F"!!! "D!!!!!%!!!&J!!!!"3!!!"8!!!!"!!!"%!!!!5!!!!1-!!!!"!!!!"8!N!m+!*! ,$3#3#`%!!!!+!*!()`!!!!%!!!!"!!!!!J!!!!X!N!Fl!*!,!J!!!!d!N!G8!*! ,"J!!!!m!N!3#!!"R!J!!F!)!!(S#!!#(!J!!NJ)!!*d#!!#Q!J!!X3)!!,d#!!$ 2!3!!eJ%!!1)#!!$[!J!!r3)!!4-#!!%R!J!",J)!!68#!!%p!J!"4!)!!8X!!3# 3"3J!N!4+&%!"3J&!!8)33J#!!dB@5@jdCA*QB@0P6'PL!%e*9&qP3d0KBfKP4fa [BQ&XFdaTBJ"0594IT84PBR9RCfPZCdaTBLjNC@*eC`"0594IT8e*9&*eER4TE@9 -D@)ZC'9LG@F!68P8Ak90594$6'PL,Q4PBR9R!&0jFd*bC@&V!%jPGe"dFP0jF`" 9EQK[E'40C@e[FRN!5'pXC%ePE@pbH3"%DA0`Eh0P8(4b!%4PBR9R8h4b!%GPG&" dFP0THQ8!8f&YC9"bEf0PFh-!4f9d3h9bFQ9ZG&"bEf0PFh-!6Q9h8(4b!'G$ER4 bE%*XEf0V!'G%C@*eCe0TCfjKE!""E'9bG&0TCfjKE%&d!&pIG@jbC@GTFh4PFPp QFQ&RE@9ZG!"IAh*PCfPcG'9bAfCbB@GYC@jd!(0dFQ0YF!"YC@eMF(N!Fh4bEQ0 `H3"cG(*MF(N!Fh4bE'9Z!'ePEA0PG!"MBepRCA4IBh*PC&pfCA*cD@pZBf0IC'9 cG(*[H@0MAfGPG&pMD'&ZCf9IG'PYC@0MAfCbC@9I6N0ID@jQEf0MAf0bC@&dC@0 MAf0XEh0PBf0ICf9dAfjKE@9MBepQFQ9PAf0bC@4cBf0IFQ9YEhCPAf0bC@4MBep QFQ9PAh"bD@jMDA"KE'0MAfp`C@jMBepcD(9dC'phEQ0MAh0PG&p`FQPZBfP`B@a MBepcCA&ICQ9dBfKI6N0cBf0ICf9dAdj$AfPZCQpMBepTEQPdD@&XDATPBf0ICf9 dAh"bD@jMDA"KE'0MAh0PF9pQCA4MD&pMFQ9NFf0MAh0dEh*PBf0ICR*PC9pZB@e PBf0IE'pMDepbCA&eCA0d!*!("!!!!!`!!3!)!!3!!!!'!!J!"J!)!!J!!!!+!!3 !#J!!!!X!%!!,!!`!$`!!!")!"!!5!!!!%`!)!"-!%qq*!!UDh`!569F!$c0A!!P -)3!)*Xm!#cEk!!h1V`!1jP-!%IJ'!!F66!!,2Ad!%)`+!"##X3!1ZFB!$FMP!"$ -#`!5#&i!##F0!!aR@J!2'"i#!!&5!!!"!!!"!J!"C3!!!6!!!3)!!@m!!!%S!!% #!!'"!!!!`!!"!J!"N!!!!!&)!!%#!!'C!!!"1!!"!J!"S3!!!2J!!3)!!D`!!!$ )!!%#!!'j!!!"'!!"!J!"a`!!!0J!!3)!!GJ!!!&!!!%#!!(I!!!"8!!"!J!"kJ! !!4!!!3)!!IS!!!$`!!%#!!)+!!!!i!!"!J!#'!!!!9J!!3)!!L8!!!%)!!%#!!) e!!!!k!!"!J!#4`!!!5!!!3)!!Nm!!!$3!!%#!!*E!!!!Z!!"!*!1I!J#TT!!!3! )P#(r`$JK!%#!!3!)I!J$TNk!!#"m#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#( rX(ar'hL3!)%!E(bm+hKmh60iJm)!+)"q!!!S!`!!3))!B$KJ!"")!"PeB!!!!*! !I`!!J*m!!#J%!!"!JJ!-1'!!"NJ!!(`iS!!!J0m!!*!!TJ!%J2m!!*!!T`!!13! !!)%r!!#4#3!)18!!!)&r!!#45`!-JCm!!*'H!!")!!!-J(i!!*!!I`!!J)%!E#` %!!&!J3!-1'!!#8J!!#JS(!!!3B)!$$LJ!!'3!,`!!#JG!!""JJ!-J-)!X*!!h3! !1'!!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp)1"rr"1J!!J!*!')%'!"!#3"IJ !$LjMBepTEQPdD@&XDATPI!J#TT2Krrb3!!%!#*3Krm"mIaYi+"m!!%'#!#b!I`! !+!-!!%'#!##!I`!!5!!U)@!!!!#!I`!!5!!@T@!!!!")!!!-1'!!#NJ!!"!iJ!! !N!#I!!!iB!!!J!%!5$JK!%"m#!1QJq(rr%k!!#!!N!BJ3B!"!*!&E!!-,Q0MAh0 SGA4NEhGZ!!"m#!+Q[f(rl*!!!3!)P#(rX(aq'hKmR#0iN!#K!("mh60iN!$K!(K p'd0i1q!!!#JH!!"!JJ!-1'!!#NJ!!8JS'`!!3))!$$KJ!!a)!!%i1'!#+%J!&m& J!!!!I(mEH#JI!!"!JJ!-1'!!"NJ!!4JS(!!!3B)!'(q$ihK)!#pCJ%%!&#J$!2p "J!!-1'!!!8J!!24rirYiIi6MH%J!,UQ!33!8+"d!!%'#!"KrSqYi5!![*B""!"3 S!`$r3B!!$$KJ!!a)!!$!1(m""(qNkhK)!#jeJ%%!&)"K!(L3!(m#$$L!!!#`R`) %J+%!F*!![`%!1-!!!TMI!K!ii!"NN!$r!K4rirYi5!!AM@!!!!#3!(m##)%I!JJ S#!!!3))!$$KJ!!C)!!"NJ6i!##`*!!"!JJ!F18!!!*&I!L54A`)JNri!!*2q!!4 )!!!JJAi!"*2V!L#"RJ!%NCm#*$KJ!!#3!(m#)*2q!!5!RJ!)1)3!!C!!RJ!)J,i !$$LP!!'3!,i!$*2l!!!iB!!!J!%!@$JK!&"m#!1QZf(rl%k!!#!!N!BJ3B!&!*! %!C3!#LjMBepMFQ9KG'9m#!+Q[Z(rh*!!!3!)P#(rS(ah'hKmQL0iI,NVH(ci1hJ lSJ'-1m)"Ii2L!#`lJ!!!1f!!!#JA!!"!JJ!-1'!!#NJ!!3`S'!!!3))!$$KJ!!a )!!$m+"S!!%##!)5!I`!!,!-!!8##!#"r`r0iIk6VH$LJ!+Xi`!!!5!!XFB""!"4 )!!"FJ*m!!#`%!!*!JJ!8Im2cH%J!,'f!33!85!!!3)#r!!!X"3!$3))!%%J!,'f !33!85!!!+)$I!!!X"J!%3))!((r$mhKrT1Yi1+!!UcM!!!&)!#`9J%%!&)1A!!" )!!!dId26H(q%ihK)!#dGJ%%!&#`$!!"!JJ!BJ2`"!(`C1!"!JJ!-1f!!!8J!!!L $R!)J+"`!!%'#!""rD!Gd,!J!!%'#rm"rD3Gd,!N!!%'#!"#6Q!!!1'!!!%J!!"! j3!!!N9J!!$KJ!!U!!3"S1#%!B(`)!kDkiIrF6S!!)!#3"L""J!N!N!3"B!!),Q0 MAfp`C@i!!(`)!UDr3IrSN!!"!!L8)Iq`I(SEH(bF)hJl`J'91k)"M)2L!#`lB!! !+"S!!%##!!`iB!!+5!!!k#JF!!"!JJ!-1'!!$%J!!0L!I!!!+!-!!%##!)5!R`! !,!3!!8##!#"r`r0iIk6VH$LJ!-di`!!!5!!UrB""!"4)!!"FJ,m!!#`&!!*!JJ! 8Im2cH%J!+[Q!33!85!!!3)$I!!!X"J!$3))!%%J!+[Q!33!85!!!+)$r!!!X"`! %3))!((r$mhKrT1Yi1+!!c6M!!!&)!#UKJ%%!&)%F!!#*#!)3I3J(G#`)!!&"JJ! -1'!!$NJ!!$#$I!!!Id26H(pNfhK)!"r0B!!!!(pMfhK)!")GB!!!!$NJ!!#42!! !1'!!!)!"!&Ji)3"3I!J$TVY"rqK1J!!J!*!')%'!"J#3"!%`!!NZBf0IBfa[Ff8 !I!J#TVmKrq53!!%!#*3Krk"mHKYiI*XMH$[#!C8lSJ'-Jq)!,$Z!!!!S'J!!3)) !$$KJ!!T)!!'!+"X!!%##!!`iB!!-5!!"F)"l!!!S!`!!3))!K)#I!!!X"!!"3)) !)(r$mhKrT1Yi1+!!kcM!!!")!#QaJ%%!&%J!!&b![`!!,!8!!N##!"4r`r0i5!! TVB""!"4)!!"!J0m!!#`'!!0!JJ!35!!TVB""!"4)!!!SJ2m!!#`(!!4!JJ!FIm2 cH(qNkhJiS!$V1-!!!8J!+9@!33!8JjX!!)%F!K3X#!"N3B)!*(q$ihK)!#9jB!! !!(aM"h3X!`!!3))!$$KJ!!K)!!#dJ6`#*#J*!!"!JJ!NJ9`#)*&D!!#"I!)J+!X !!%'#!"!jJ!!!J(`#)*'$!L5!R!)J+!3!!%##!#5![!)NN!#k!!5!h!)N+!B!!%' #!"!ii!!!J4`#**!!k!)JJ6`#*#J*!!""JJ!SJ9`#)#J+!!""JJ!FJA`#*)'F!L# 4E!)NJ(`#))#F!L53!'3#)$LJ!!'B[!)3Id26H(pNfhK,rrdCI(NEH)$D!!`iaJ! "N!$D!!ar)mYiJ!%!D$JK!'"m#!1QZb(rj%k!!#!!N!BJ3B!(!*!%!FJ!#bjMBep NCA0dFQpj!!!!+!-!!%##!!`iB!!+5!!!)#J%!!""JJ!8J+-!$*!!T!!!1'!!!%J !!!JiB!!-6S!!)!#3"L"!!*!(-!!6,Q0MAfGPG&pMD'&ZCf9IG'PYC3!!!(`)!UD 6iIrmNm(rq*1Krr53!!%!#*3Krl"mI4YiI*mMH*!!S3"`N!$"!(3l`!!!+"d!!%# #!!`iB!!+5!!!L#JI!!"!JJ!-1'!!#NJ!!(L!I`)8,!-!C%'#!$#!R`)8,!3!CN# #!"arirYi5!!MZ@!!!!"mB`Gd,!-!!%##!!`iB!!)5!!!3(rMqhL!J3"`J+%!G%J !'HeJ!!!!I(iEH#`H!!"!JJ!3J,d!#$LP!!'3!,d!#)$G!!`iaJ!"N!$G!!ar`r0 iJ!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)!#3"L""J!-!N!AF!!NZBf0IFh4 [FQ8!I!J#TT2Krrb6`IriN!!"!!L8)Iq`I(iEH(bI)hL3!+%!F*!!`3"d1'!!!*! !B3!i+"i!!%'#!!`S(`!!3))!$$KJ!!T)!!"JJ*m#&#`%!'4"JJ!`J,m#&#`&!'C !JJ!FIq2lH%J!)XPJ!!!!I'-(G#`$!!"!JJ!-1'!!#%J!!#KrirYiJ)%!F)#K!(4 )!"TaB!!!!)$H!!`iaJ!"N!$H!!`iB!!!J!%!@$JK!&"m#!1QJq(rr)2"rrK1J!! J!*!')%'!!J#3"EJ!$bjMBepbC@e[GQ9IBh*PC!!!!(`)!UDr3IrSN!!"!!L8)Iq `I(SEH(bE)hL3!+%!F(cF-hJl`J'P1k)"M)2L!#`S'J!!3B)!$#JE!!"!JJ!-1'! !#NJ!!3!S(!!!3))!K)"r!!!X!`!"3))!)(r$mhKrT1Yi1+!"DcM!!!")!#@PJ%% !&%J!!&b!R`!!,!3!!N##!"4r`r0i5!!PSB""!"4)!!"!J,m!!#`&!!0!JJ!35!! PSB""!"4)!!!SJ0m!!#`'!!4!JJ!FIm2cH(qNkhJiS!&V1-!!!8J!*8Q!33!8J2X #&#`(!'4"JJ!`J4X#&#`)!'C!JJ!FIf2EH%J!)@9J!!!!I'-(G#`$!!"!JJ!-1'! !#%J!!%#"1`%!J8%!F(`*8!""JJ!-1'!!#NJ!!#JiH`%%Ii6MH$LJ!2p)!#AYJ%% !&)&k!!`jD`!"NAS!$$KJ!!#!!3"B1#%!8(`)!kDl3IrS6S!!)!#3"L""J!B!N!3 "9!!4,Q0MAh0PG&p`FQPZBfP`B@`!I!J#TT2Krrb6`IriN!!"!!L8)Ir!I*iMH(b r+hJS(J!!3))!$$KJ!!T)!!"`J(i#&#`$!'C!JJ!NIm2cH%J!)*PJ!!!!I'-(G#` $!!"!JJ!-1'!!#%J!!%3S(`!!3B)!1$KJ!2p)!!YYB!!!!*!!I`!!J*m!!#J%!!" !JJ!-1'!!"NJ!!"L!I`!!1*i""%J!*,'!33!81'!!!)!"!%Ji)3"!I!J$TS2Krrb $`Iri6S!!)!#3"L""J!)!N!@`!"%ZBf0ICf9dAh"bD@jMDA"KE!"m#!+QNq(rr*2 "rrL3!!%!#*3Krm"mRb0iI,iVH#JI!!"!JJ!-1'!!#NJ!!%b!I`)8,!-!CN##!#4 rirYi5!!Ia@!!!!"mB`Gd,!-!!%##!!`iB!!)5!!!)#JH!!"!JJ!-1'!!"NJ!!"# !R`%!N!#H!!!iB!!!J!%!5$JK!%"m#!1QJq(rr)2"rrK1J!!J!*!')%'!!J#3"B` !&#jMBepRCA4IBh*PC&pfCA*cD@pZ!!"m#!+QNq(rr*2"rrL3!!%!#*3Krm"mRb0 iI,iVH#JI!!"!JJ!-1'!!#NJ!!&b!I`)8,!-!CN##!#4rirYi5!!I%@!!!!"mB`G d,!-!!%##!!`iB!!)5!!!-#JH!!""JJ!N1'!!rdJ!#H9J!!!!N!"q!!#!IJ!!Iq6 lH%J!)cf!33!81'!!!)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)!#3"L""J!)!N!@ F!!`ZBf0ICf9dAfjKE@8!!(`)!UD6iIrmNm(rq*1Krr53!!%!#*3Krl"mI4YiI*i MH(br+hJS(J!!3B)!&#JI!!""JJ!-+"d!!%##!!`iB!!+5!!!S)"r!!!S!`!!3)) !0$KJ!!K)!!NjB!!!!*!!I`!!J*m!!#J%!!"!JJ!-1'!!"NJ!!(#![3!!J0m!!*! !TJ!!J2m!!)$R!!!S"`!!3))!+)"r!!")!!PeB!!!!$N!!!#4(`!!15!!!*%q!!! iB!!$5!!!-)&I!!#!DJ!!Im6cH%J!'E&J!!!!JAm!!)&V!!#"D`)JJCm!!*&X!!! iB!!!J!%!@$JK!&"m#!1QJq(rr)2"rrL$SIrd6S!!)!#3"L""J!-!N!Am!"%ZBf0 IFf9aAfCPG'0SAdj$F`"m#!+QNq(rr*2"rrL6SIrdNi(rm*!!!3!)P#(rX*!!B3" SI*iMH(bp+hKmhc0i+"i!!%'#!"JS(`!!3B)!%)"K!'JS!`!!3))!$$KJ!!T)!!) %+"d!!%##!!`iB!!'5!!"p)#H!K3X"!"Q3))!*(r$mhK)!"d"B!!!!(aM"h3X!`! !3))!$$KJ!!K)!!()J,m!!#J&!!"!JJ")1'!!#%J!"p&J!!!!N!"r!!#!h`!!+!B !!%##!!`iB!!'5!!"Q$MJ!!#"(`!!N!$S!!4)!!!8J6m!!)&*!!3j5J!"N8N!")& r!!#"D`!%UCi#"(`,B!"!J!!NJ(i##)#I!!#!K!!%9)331RaM)#k!B`!!,!-!Bd' #rm#![`!!J+8!"+MH!J4m"6!!3B!!+)"r!!")!!I"B!!!!$MJ!!#3!2d!!$N!!!# 4(`!!1'!!!dJ!!3b"2J))J9m!!)&+!!495K!kI5P3,S1*!!!X(!!"3))!K$KJ!!K )!!F"B!!!!*!!I3!!JAd!!#J,!!"!JJ!-1'!!"NJ!!-JiB"f!5!!'h@!!!!#"R3! !N!"X!!5!I3!!J'-!"#J$!!"!JJ!-1'!!"NJ!!*b!R3!!J'3!")#q!JL!h`!!J-B !"&6'%$TmT6!ZJ)8!"$LJ(B")!#!YJ%%!&%J!!&JX(!!#3))!3)$q!JL"(`!!J3J !"&8)%$Tmjd!ZJ1F!"*!!i3!m15!!!T%K!$L!B3!iJ)%!2(qPkhK)!!mKB!!!!%J !!"3j3!!!N9d!!$KJ!"")!!!BJAm!!)',!!3jM!!"NBX!"$KJ!!#!!3"B1#%!8(` )!kD$iIrmJm(rq)1Krr5$JIr`6S!!)!#3"L""J!3!N!3#F!!6,Q0MAh0PF9pQCA4 MD&pMFQ9NF`!!!(`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L8)Iq`I(`EH(bG)hJ li!!!1m!!!#JF!!"!JJ!-1'!!#NJ!!1JS(3!!3))!$$KJ!!C)!!$BJ*`!#$L%!!& 8Ja!k5!!HdB""!"53!(d!!)#p!!!S"3!!3))!$$KJ!!C)!!#XJp`!!%J!!)JiB!) %5!!HTB""!"5!h3!!9qF31RaQ15k"(3!!9qN31Rd)5#iS#!!!3))!$$KJ!!C)!!" `J9d!!&IV%$TmDPJZIm6cH%J!(Rf!33!8JCd!!&IN%$TpM#!Z1'`!rcLH!34)!"j KJ%%!&)#q!3#!h3!!9qF31Rc'1#k3!+B#!)2H!L!lr`!"+"i!!%##rhJj!!!!J6d !!&IU%$Tp#9%Z1'!!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk(rp)1"rr"1J!!J!*! ')%'!"!#3"!&!!!mZBf0ICf9dAdj$AfPZCQm!!!"m#!+QNq(rr*!!!3!)P#(r`(b I)hJS(`!!3))!$$KJ!!C)!!!8Iq2lH%J!"-9J!!!!1'!!!)!"!%Ji)3"!I!J$TS2 Krra1J!!J!*!')%'!!3#3"8J!%LjMBepQFQ9PAh"bD@jMDA"KE(`)!UD6iIrmN!! "!!L8)Ir!I*mMH#JI!!"!JJ!-1'!!"NJ!!"4rirYi5!!%@@!!!!!iB!!!J!%!5$J K!%"m#!1QJq(rr%k!!#!!N!BJ3B!"!*!&5!!0,Q0MAfCbC@9IEQ&YC3"m#!+QNq( rr*!!!3!)P#(r`(bI)hJS(`!!3))!$$KJ!!T)!!!SJ(m!!%J!'EeJ!!!!J(m!!%J !!q9J!!!!1'!!!*!!I`!!1'!!!)!"!%Ji)3"!I!J$TS2Krra1J!!J!*!')%'!!3# 3"9`!$LjMBepQFQ9PAf0bC@4cI!J#TT2Krrb6`IriN!!"!!L8)Ir!I*iMH#JH!!" !JJ!-1'!!#NJ!!&3li!!!5!!!()#H!!"Aj4!kI'3S,NJ!'j'!33!81rm!!B$H!!" Aja!kI-Bi,LJ'!!"!J[rBJ(i!!%J!'ff!33!813!!!*%H!!!l`!!!1'!!!)!"!%J i)3"!I!J$TS2Krrb$`Iri6S!!)!#3"L""J!)!N!@3!!!3,Q0MAfCbC@9I6N0ID@j QE`!!I!J#TT2Krrb6`IriN!!"!!L8)Iq`I*mMH*!!S3"`+"m!!%##!!`iB!!-5!! "1$KK!$K)!"UjJ%%!&(aq'hL!I`)8,!-!C%'#!"`iB3!i1*m#'$LK!%")!"UYJ%% !&(aq'hL!J3"`,!3!!N'#!#a!J!!3,!3!!8#!!"4)!!$F,!3!"%#!!04)!!"-1+! !C*!![`)85!!!c)$I!K3X"J"N3))!)$MJ!'@3!2m#&)%"!$L")3!mN4m#'*%r!Ka )!!#NJ9m#&#`+!'C!JJ#B1'!!#%J!!*5"I`)8,!X!C%##!#!jJ!"QNCm#&)"K!$L !J3!mN!"r!KL3!*m#(%J!!'L![`)8,!8!CN##!"L)`3"!+!B!!%##!!`iB!!)5!! !6)$r!K3X"`"P3))!2)N"!%!S#!!!3B)!)$NJ!'D42`)8J8%!1)&K!$b4A`)BNAm #(%J!!"3iB!!)5!!!%$KJ!!a)!!!)1'!!!)!"!&Ji)3"3I!J$TS2Krrb$`Iri6S! !)!#3"L""J!)!N!3"H!!3,Q0MAfa[BfYIFQ9aG@9cG!!!I!J#TT2Krrb3!!%!#*3 Krm#3!'%!@$[J!!#!B3"B5!!BI@!!!!"mIaYiIq-(0#`$!!""JJ!-Iq2lH%J!!"3 iJ!!!J+)!+*!!K3!!Iq2lH)!"!%Ji)3"!I!J$TS2Krra1J!!J!*!')%'!!3#3"@! !%bj*EQPdD@&XDATP3f&MD'9-D@)!!!"m#!+QN!!"!!L8)Ir!5!!BA@!!!!#!!3" )1#%!3(`)!kC1J!!J!*!')%'!!*!'*!!5,P4PFQeTEQ&dC80KBfKP6'PLI!J#TT2 Krrb6`IriN!!"!!L8)Ir!I(iEH(r$mhK)!"NjJ%%!&(ar'hJS(`!!3B)!&(rMqhK ra20i5!!C6B""!"4rirYiJ!%!5$JK!%"m#!1QJq(rr)2"rrK1J!!J!*!')%'!!J# 3"9`!#bj1CAG6B@CP8(4b!!!!I!J#TVp"rqL3!!%!#*3Krl"mHaYi1i)"dM[#!F8 lSJ'hJq)!,(pMfhK)!"KTJ%%!&(ak'hJS'`!!3))!K)"r!!!X!`!"3))!)(qMkhK ra20i1+!!*cM!!!")!"IaJ%%!&%J!!&b!R`!!,!3!!N##!"4rSqYi5!!AlB""!"4 )!!"!J,m!!#`&!!0!JJ!35!!AlB""!"4)!!!SJ0m!!#`'!!4!JJ!FIk2VH(r%mhJ iS!!R1-!!!8J!&j@!33!8,"S!!%'"!)5!r`!!,!F!!8##!#"rJq0iIm6cH$LJ!#J i`!!!5!!ADB""!"4)!!"FJ4m!!#`)!!*!JJ!8Ii2MH%J!&f@!33!85!!!3)%r!!! X#3!$3))!%%J!&f@!33!85!!!+)&I!!!X#J!%3))!((q$ihKra20i1+!!+$M!!!& )!"F0J%%!&(pMfhJiJ!!!IdA6H%J!&eQ!33!8If2EH$L!!!"r4G0i5!!A4B""!"4 rBpYiId66H%J!&df!33!8If2EH%J!&V'!33!8J!%!@$JK!&"m#!1QZd(rk%k!!#! !N!BJ3B!'!*!%!C`!$bj%DA0`Eh0P8f&QC9"dFJ!!!(`)!UD6iIrmNm(rq*!!!3! )P#(r`(aq'hKr`r0i5!!AAB""!"4mIaYi+"m!!%'#!"4rirYiIm6cH%J!&a'!33! 8Iq2lH)!"!%Ji)3"!I!J$TS2Krrb$`Iri6S!!)!#3"L""J!)!N!9F!!iZ6Q9h8f& QC9"dFP0jFh`)!UD6iIrmNm(rq*1Krr56JIr`N!!"!!L8)Iq`I(`EH$[#!GmlSJ( &Jq)!,#JF!!"!JJ#%J(m!!#`$!!&!JJ!JIm2cH(qNkhJiS!"31-!!!%J!&Ef!33! 85!!!A)#I!!!X"!!#3))!&(r$mhK)!"@jJ%%!&%J!!%#![`!!,!8!!d##!"")!"@ jJ%%!&%J!!#L!h`!!,!B!"%##!"ar`r0iIk6VH$LJ!&!i`!!"5!!9BB""!"3ii!! !X2`#"$N!!!Ua(!)'1'!!+%[rrVf3!(`##)"m!JL!!3"B1#%!8(`)!kD$iIrmJm( rq)1Krr5$JIr`6S!!)!#3"L""J!3!N!Ad!!iZEQ9h3h*PC%*eCQCPFR`)!UD6iIr mNm(rq*1Krr56JIr`N!!"!!L8)Iq`I(`EH*!!J3"XN!#K!(#3!-%!G$[#!HSlSJ( &Jq)!,#JF!!"!JJ#%J(m!!#`$!!&!JJ!JIm2cH(qNkhJiS!"H1-!!!%J!&*f!33! 85!!!A)#I!!!X"!!#3))!&(r$mhK)!"5CJ%%!&%J!!%#![`!!,!8!!d##!"")!"5 CJ%%!&%J!!#L!h`!!,!B!"%##!"ar`r0iIk6VH$LJ!&ii`!!"5!!83B""!"5!i3" XN!$m!!#"!3"`N4`!")%K!(3S#3!!3))!&$P!!!#4A!!)1'!!!%J!!$b!B3"`5rr pJC!!I!!)JA`!##J,!!"!JJ!-1'!!"NJ!!"b!I!!)J)%!G)#K!(")!"5jJ%%!&$K J!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)!#3"L""J!3!N!3"4!! -,Q0[F(P%BA4K6f*U!!"m#!+Q[U(re*!!!3!)P#(rN!"mGaYiI*XMH$Z#!L)lSJ) 61b)#!cY#!IBl`J(&Jq)!,$UJ!!!l!!!!1X!!!#JE!!"!JJ#%J(m!!#`$!!&!JJ! JId26H(r%mhJiS!"d1-!!!%J!%c@!33!85!!!A)#I!!!X"!!#3))!&(p$dhK)!"- aJ%%!&%J!!%#![`!!,!8!!d##!"")!"-aJ%%!&%J!!#L!h`!!,!B!"%##!"ar3p0 iIm6cH$LJ!(3i`!!"5!!5fB""!"4qq,Yi+"J!!%##!"3ii!!!N!$l!!")!!+B1V8 !!B%B!!!l'!!%+!J!!%##rr!j03!"95-31N[rr"@3!(X!!(af'hJS&J!!3))!K)& I!!!X#J!"3))!)(mMbhKra20i1+!!I$M!!!")!"*YJ%%!&%J!!&b"I`!!,!X!!N# #!"4r)mYi5!!5DB""!"4)!!"!JCm!!#`-!!0!JJ!35!!5DB""!"4)!!!SJ(m!!#` $!!4!JJ!FIb2,H(r%mhJiS!"m1-!!!8J!%K'!33!8+"B!!%'#!H"qq,Yi5!!"[$K J!!a,rrYYJ*X!!*!!C!!!J,X!!)#P!!!S"3!!3))!K)$I!!!X"J!"3))!)(qMkhK ra20i1+!!JcM!!!")!"'pJ%%!&%J!!&b!r`!!,!F!!N##!"4rSqYi5!!4ZB""!"4 )!!"!J4m!!#`)!!0!JJ!35!!4ZB""!"4)!!!SJ6m!!#`*!!4!JJ!FIk2VH(r%mhJ iS!#$1-!!!8J!%@'!33!8J9X!!)&+!!!S#J!!3B)"+)&l!!#!D`!!J*F!!$LJ!!a )!")4J%%!&)'E!!#"M!!!J'`!"%[rqTf!Q`!!J)3!!*!!C!!)J,X!!)#P!!#!T3! )+!8!!%##!)5!h`!!,!B!!8##!#"rJq0iIm6cH$LJ!)Xi`!!!5!!3jB""!"4)!!" FJ2m!!#`(!!*!JJ!8Ii2MH%J!%1'!33!85!!!3)%I!!!X#!!$3))!%%J!%1'!33! 85!!!+)%r!!!X#3!%3))!((q$ihKra20i1+!!LcM!!!&)!"#*J%%!&)&E!!#"5J! !J8S!##J+!!""JJ"-JAX!!)&V!!#!D`!)JCF!!)#-!!L!e`!!J+B!"%J!%5Q!33! 81hX!"$XB!!5!q!!!+!F!!%##rN!j!!!!9UN31Rd@55k5f`!!J!%!H$JK!("m#!1 QZU(re%k!!#!!N!BJ3B!,!*!%!i3!$LjMEh"j4'&dB8&bFQ&jI!J#TT2Krrb6`Ir iNk(rp*!!!3!)P#(rX*!!B3"SN!#"!'am[5Yi1q!!!$[!!!#$`3"X+"d!!%##!!` iB!!'5!!"3$KJ!!K,rrNPN!"p!!#!I3!!+!-!!%##!!`iB!!'5!!")$KJ!%a,rrN &I(mEH#JI!!"!JJ!-1'!!"NJ!!33iB!6L5rrikC!!I`!!J*m!!#J%!!"!JJ!-1'! !"NJ!!13iB!6L5rribC!!I`!%J,m!"#J&!!"!JJ!-1'!!"NJ!!-5!I`!!J*i!!$L J"0p)!"!aJ%%!&)"r!!5!RJ!%1+!%hdJ!%"f!33!81(m!#)#H!!L![J!-J0i!%%[ rqJ@!hJ!8N!$I!"5!rJ!BN!$r!"L"(J!FN4m!()%q!##42`!JJ9i!**&I!#5"IJ! SNAm!+)"q!#`iR`!X5rrl,6Kr!$#!RJ!`J,i!0)$H!$K,rrQe1(m!2)#H!$b![J" !J0i!4%[rqD%jJ!!!NCm!5$KJ!!+!R3!!N!"N!!#![3!!Nq8!"$KJ!!#!!3"B1#% !8(`)!kD$iIrmJm(rq)1Krr41J!!J!*!')%'!!`#3"!'B!!XZBfp`H9Be3h*PC!! !!(`)!UD6iIrmNm(rq*!!!3!)P#(r`*!!B3"BN!#"!&am[LYi1q!!!#JH!!"!JJ! -1'!!"NJ!!'`iB!!)5rrhHC!!IJ!!J(i!!#J$!!"!JJ!-1'!!"NJ!!%`iJ!!"J,i !!*!!K3!!1'!GJ%[rpdemIaYi+"m!!%##!!`iB!!'5!!!*(rMqhL!J3"F1+!GJ%J !$SQ!33!8J0i!!*2Q!!3iB!!!J!%!5$JK!%"m#!1QJq(rr)2"rrK1J!!J!*!')%' !!J#3"E3!#bjMEh"j9M4$FQ9N!!!!I!J#TT2Krrb6`IriN!!"!!L8)Iq`I(mEH*! !J3"XN!#K!(!l`!!!1'!!!*!!B3!i+"m!!%##!!`iB!!+5!!"!)#"!'`X"!!"3B) !')#K!'`X"3!#3B)!$$KJ!"")!!$JU0m#"$M'!!'`h`)%U2m#"(cR"c5T(`)'I!G !!%##!&bT2`)'95N)2,%r!JDTA`)'98-31N[rpNemIKYi+"i!!%##!!`iB!!'5!! !P(r$mhL!R`))UAm#"ReV$R"pD`'89@831NJ!$Af!33!8J(m##%[rp&'6h`))JB% !E#`-!!&!JJ!BJ'%!E)#"!(!iS3!i5rrq38J!!#b!B3"X,!-!!N##!"L!B3"XJ)% !F$LK!$K,rraT5!!!$$KJ!"")!!!JJ)%!1)#r!JLSh`)%1-Erre6'%$TmK6%Z1'! !!)!"!&Ji)3"3I!J$TS2Krrb$`Iri6S!!)!#3"L""J!)!N!3"8!!4,Q0bC@4#G@C QCA**ER0PFR3!I!J#TT2Krrb6`IriNk(rp*1"rr#3!!%!#*3Krl"mIKYiN!#"!'b 3!+%!F$Z!!!!S(J!!3))!$$KJ!!T)!!$31k!!!%J!!,L!IJ))9k331RaM)#k!J`! %J'-!!)#K!'b!`3"`5!!#,@!!!!"mB`Gd,!-!!%'#!)5![J))9kB31Rq&-#jrJq0 i5!!)m@!!!!"rJq0i5rrc'AqrkhK)!!!NJ2i##$NI!!&9#"!kI1G!,S%q!JKAkK! kI1P4,M[r!!'TIJ)%1@[rrh`I@!""J2r81B!!!)"q!JLSRJ)%1)6rre5%%$TpJb% ZU,i#"$LPrrq`[J)%5!!!&$Zp!!'ShJ)%I"d`!%'!rd3iB!!!J!%!@$JK!&"m#!1 QJq(rr)2"rrL$SIrdJi(rm%k!!#!!N!BJ3B!%!*!%!5J!%5jMFQ9N3R9QCQ9b8Q9 YEhCP!(`)!UDr3IrSN!!"!!L8)IqJI(SEH(bF)hJl`J)j1k)"aB2L!#`iB!!!N!" K!$JS(!!!3))!K)#I!!!X"!!"3))!)(r$mhKrT1Yi1+!"5$M!!!")!!T9J%%!&%J !!&b![`!!,!8!!N##!"4r`r0i5!!+8B""!"4)!!"!J0m!!#`'!!0!JJ!35!!+8B" "!"4)!!!SJ2m!!#`(!!4!JJ!FIm2cH(qNkhJiS!&)1-!!!8J!#IQ!33!8+"`!!%# #!!`iB!!-5!!!5$YJ!!")!!!SJ4`##>%$Tp#%JZN3%!1(p$dhJiJ3!i5rrYB@! !!!!lH`!"U9`#"(`E8!""J2r8J(`##%[rm9diB!!!J!%!D$JK!'"m#!1QZd(rk%k !!#!!N!BJ3B!'!*!%!4`!%LjNDA0`Eh0P3h*PC%*eCQCPFR`)!UD6iIrmNm(rq*1 Krr56JIr`N!!"!!L8)Iq`N!"K!'L3!)%!E*!!S3"`N!$"!(5!B3"X+!-!!%'#!"# !J3"d+!3!!%##!!`iB!!!5!!"!)#K!'L!`3"`I!8`!%'#!!`iB!!!5!!!k)$K!'J X"`!"3))!G)2K!'b$`3"d1(m!!6LH!!&)!!S&J%%!&#`$!!"!JJ"-1(m%icLH"10 )!!RYJ%%!&#`$!!"!JJ!d1(m6L6LH%iP)!!R9J%%!&#`$!!"!JJ!FJ4mBI)%q'(a m#%J!3))!$$KJ!!&)!!"d1'!!!%J!!'b"33"S,!S!!N##!&b$S3"XJi%!G)"p!!# !R!!!5!!*LB""!"3X!`!!3))!0)"p!!5!R!!%5!!*FB""!"3X!`!!3))!()&p!"L "R!!BI!YJ!%##!!`iB!!"5!!!%$KJ!!")!!!)1'!!!)!"!&Ji)3"3I!J$TS2Krrb $`IriJk(rp)1"rr"1J!!J!*!')%'!"!#3"!&S!!JZBh*PC'0YF!!!I!J#TT2Krrb 6`IriNk(rp*1"rr#3!!%!#*3Krl"mI4YiI*`MH$[!!!!S(!!!3))!$$KJ!!C)!!) 81'!#+%[rlZ'3!(`!!)"m!!!S!`!!3))!$$KJ!!C)!!(dJp`!!(r$mhKrT1Yi5!! )*B""!"5!R3%!N!#H!3!iIJ%%1*d""%J!#!f!33!8U,d#",#q!J5Sh3)'X0i#"MM J!!'BrJ)3U4i#"P8$%$T,rqjjN!"q!JL"2J))+!N!!%##!!`iB!!'5!!"M$[J!!" )!!&SJ9d##&IV%$Tp5PJZJ8S!!#`+!!&!JJ#`1'!!#%[rlMQ"RJ))9q331RaX)5k ![J))9qB31RbP-#iS"3!!3))!$$KJ!!C)!!%m11!!!B%H!JKAk4!kI3K),T!!k!! !1'!GJ%[rlI@"AJ))9qX31Re+@#k3!'S!")'H!JKAia!kIB`B,S'-!!3S$!!!3)) !$$KJ!!C)!!$`J*i##&IP%$TmK#JZJ'3!")$G!JKAja!kI-Bi,S#'!!3iS"f!5!! (1B""!"4)!!#JJ4d##&IT%$Tp#%JZJ3J!!#`)!!*!JJ!XJ9d##&IV%$Tp5PJZJ'S !!)#+!!5"RJ))9qB31RbX-K4,rrBY5!!!B)$p!JKAk"!kI1G!,S$R!!!X"`"M3)) !5$KJ!!K,rqdeJ6i##&IU%$TmD9%ZJAi##&IX%$TpDf!Z+!X!!%##!!`iB!!'5!! !1$KJ!'1!RJ))9q831Rb%+#k3!'3!!$[r!!'ShJ)%I"m`!%'!rT3ii!!!N!$q!L5 3!2i#)$KJ!!#!!3"B1#%!8(`)!kD$iIrmJm(rq)1Krr5$JIr`6S!!)!#3"L""J!3 !N!3#D!!',Q4eF%j$I!J#TT2Krrb6`IriN!!"!!L8)Ir!I(iEH(rImhJS(`!!3B) !,%J!!"5!R`!!J'3!#%[rl1Nlr`!%J,m!!#J&!!"!J[rSIm2cH%[rl0'!!3")1#% !3(`)!kD$iIrmJm(rq%k!!#!!N!BJ3B!#!*!&C!!4,Q4TFh"[Ff9%BA4K3A*bBAN !I!J#TT2Krrb6`IriNk(rp*1"rr#3!!%!#*3Krl"mI"Yi1m)#4$ZL!F@$iJ!X+"` !!%##!*L!I`!!,!-!!8##!#"r`r0iIk6VH$LJ!F)i`!!!5!!%LB""!"4)!!"`J*m !!#`%!!*!JJ!8Im2cH%J!")@!33!85!!!9)#r!!!X"3!$3))!%%J!")@!33!85!! !2)$I!!!X"J!%3))!-(r$mhKrT1Yi1+!"`MM!!!&)!!3YJ%%!&%J!!"4rJq0iIi6 MH%[rfIPJ!!!!J2`!!#J(!!"!J[rS1'!!!)!"!&Ji)3"3I!J$TS2Krrb$`IriJk( rp)1"rr"1J!!J!*!')%'!"!#3"IJ!#bjQFQ9P6N0-DA0d!!!!I!J#TVpKrqb3!!% !#*3Krk"mI"Yi1m)"hcZL!F@$iJ!X+"`!!%##!)5!I`!!,!-!!8##!#"r`r0iIk6 VH$LJ!G)i`!!!5!!$IB""!"4)!!"FJ*m!!#`%!!*!JJ!8Im2cH%J!!hQ!33!85!! !3)#r!!!X"3!$3))!%%J!!hQ!33!85!!!+)$I!!!X"J!%3))!((r$mhKrT1Yi1+! "dMM!!!&)!!-KJ%%!&$KK!$K)!!,0J%%!&(al'hKrC`Fd,!F!!%'#!!`iB!!!5!! !5)%F!K3X#!"N3B)!-$KK!$JiR!)B1+%!3%J!!Uf!33!8I(XEH(pT"c3X#3!!3B) !&$KJ!!")!!!318!!!*P"!%#)B3"!J!%!D$JK!'"m#!1QZf(rl%k!!#!!N!BJ3B! &!*!%!53!#bjTFda[BfY2GA*c!!!!I!J#TVpKrqb3!!%!#*3Krl"mHaYi1m)#9cZ L!F@$iJ!X+"X!!%##!)5!I`!!,!-!!8##!#"r`r0iIk6VH$LJ!HFi`!!!5!!#1B" "!"4)!!"FJ*m!!#`%!!*!JJ!8Im2cH%J!!M@!33!85!!!3)#r!!!X"3!$3))!%%J !!M@!33!85!!!+)$I!!!X"J!%3))!((r$mhKrT1Yi1+!"jcM!!!&)!!(GJ%%!&)$ l!!!X"`!#3))!I)1E!!5!I!!!5rrTHB"m!!4,rqPaJ4`!%#J)!!""JJ!-J(`!%%[ rk9f"2!!i+!N!!%'#!!b!I!!i5rrT5B&F!%3S#J!!3B)!$)"m!%4,rqNeJA`!5#J ,!!""JJ!-J(`!5%[rr!Q"R!!X+!`!!%'#!!b!I!!X5rrlpB"l!!4,rqN&1'!!!)! "!&Ji)3"3I!J$TVYKrqa1J!!J!*!')%'!"3#3"!&-!"FZBf0ICR*PC9pMFQ9NAfP ZG'9bEQ&XF`!!!(a$%hK1J!!JI!J#TT!!!3!)P#(r`%[rrqemD4YiJ')!D)##!'3 iSJ!!1-)#CB$L!&L"!J"85!!!@B""!"5!JJ#XN!"N!!",rp"TB!!!!$KJ!!#!!3" )1#%!3(`)!kC1J!!JI!J#TT!!!3!)P#(r`)"L!+b!B`!!5!!!-B""!"5!!3")1#% !3(`)!kC1J!!JJB)!1*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!$53!%%!&)!-!!# !6!!%I!N$TNk!"##"JJ!JN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!(*!!33!8J!` !!)"-!!4m#31Q6S!%))'#!"#3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ!`N!""!"5 !$!!!J%`!"(`*!kC1J!3JJB)!&*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!!#3!%% !&)!-!!#!6!!%I!N$TNk!"##"JJ!BN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!8*! !33!8J!`!!)"-!!4m#31Q6S!%))'#!!L3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ! NN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!5*!!33!8J!`!!)"-!!4m#31Q6S!%))' #!!b3!%%!&)!-!!#!6!!%I!N$TNk!"##"JJ"!N!""!"5!$!!!J%`!"(`*!kC1J!3 JJB)!"*!!33!8J!`!!)"-!!4m#31Q6S!%))'#!%53!%%!&)!-!!#!6!!%I!N$TNk !"##"JJ!mN!""!"5!$!!!J%`!"(`*!kC1J!3JJB)!6*!!33!8J!`!!)"-!!4m#31 Q6S!%)!!!,eb!!!"B!*!',l5!!!!X!*!&9L)a`!)L-DJ#)J*PKJ)"-F!L!D@#!K% "P3'-!Am#9`*%!MN#)J)6!J-"pJ(U!Gm"dJ(&!EF!Y!&`"#)9+)B#&44d%rJ6N!! 6*"(!$bJ1#!e-$*J,a!T-#A!)H!JJ"MJ%l!0`!F!"0!!F&d`L&X3%,Ne*9#"*,e- J6@&M4'9f!5#"CJ`K+'jKE@8J)6dJ-#N)3d0KBfKP,Q-2)5JUD'&ZC'aP)#%p)$! T%5%SF(*TEQ0TF'&X)#%p)$!T$5%SFf&QC9!J)6dJ-#N-3d0KBfKP9A4TE#jM$#% SFfPkC5!q)$"-+3SK+'jM)#%p)$!T#b%SEf*U)#%p)$!T$#%SC'9cG#!K25!`+3p bCA4NCA0d)$dp)%j96%`1+LTNCA0d)$dp)%j96%`@+#SUC'9cG#NY2Q4KG'%J26d J6P9-6!TZBb!p25"198a-%L%SBfjdFQa#E'pMDb!K25!`+3dK+'0bC@4c)#%p)$! T1k3!!!%!!!!"C!!!!'3!!!!bC@*eCcSf1%XJ3fpNC8GPEJ"0593J8R9ZG'PYC9" 33b"%6%`ZC'9LG@Fk0MK,)%4TFf&cFf9YBQaPFJ"0593J8R9ZG'PYC9"33b"%6%` ZC'9LG@Fk0MK,)%GXEf*KE#"2F(4TE@PkCA)!68P8)&*eER4TE@938%-J4%a-,Q4 PBR9R1MBi5b"-D@jVCA)!68P8)&*eER4TE@938%-J4%a-,Q4PBR9R1MBi5b"3FQp UC@0d!%e*9#"5G@jdD@eP8&"$)%4-6#jNC@*eCcT$,d-V+b"$Efe`D@aPFJ"0593 J8R9ZG'PYC9"33b"%6%`ZC'9L!!!!B!#3#`%!N"-"F(G`B`#3%`%!N"&!&%e*9&q P3d0KBfKP6'PL,Q4PBR9R!!!!!3!!!!&N!!!!C!!!!$)&9MR30#B!!!!F!$)!!'0 QFQF!!!!+!!$rr`#3"!9EF&b1RJ: \ No newline at end of file diff --git a/src/mac/libraries/CCache API/include/CCache.h b/src/mac/libraries/CCache API/include/CCache.h new file mode 100644 index 000000000..f758c14f3 --- /dev/null +++ b/src/mac/libraries/CCache API/include/CCache.h @@ -0,0 +1,350 @@ +/************************************************************* + * + * Header file for Credential Cache API for MacOS + * + * -as defined by the document found at http://www.umich.edu/~sgr/v4Cache/ + * -definitions borrowed from a windows implementation found at + * /afs/umich.edu/user/s/g/sgr/Public/TsoCacheDll shell/ + * + * Revision 1: Frank Dabek, 6/4/98 + * added missing calls from revision four of the API + * deleted some WIN specific Information + * added some misssing definitions + * renamed to CCache.h + **************************************************************/ +#ifndef _CCache_h_ +#define _CCache_h_ + +#if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__) +# pragma import on +#endif + +#include "Processes.h" +/* +** The Official Error Codes +*/ +#define CC_NOERROR 0 +#define CC_BADNAME 1 +#define CC_NOTFOUND 2 +#define CC_END 3 +#define CC_IO 4 +#define CC_WRITE 5 +#define CC_NOMEM 6 +#define CC_FORMAT 7 +#define CC_LOCKED 8 +#define CC_BAD_API_VERSION 9 +#define CC_NO_EXIST 10 +#define CC_NOT_SUPP 11 +#define CC_BAD_PARM 12 +#define CC_ERR_CACHE_ATTACH 13 +#define CC_ERR_CACHE_RELEASE 14 +#define CC_ERR_CACHE_FULL 15 +#define CC_ERR_CRED_VERSION 16 + +#define CRED_TYPE_IN_UNION + +typedef int cc_int32; +typedef cc_int32 cc_time_t; +typedef cc_int32 cc_nc_flags; +//typedef short cc_cred_vers; + +enum StringToKey_Type { STK_AFS = 0, STK_DES = 1}; + +enum { MAX_V4_CRED_LEN = 1250, + KRB_PRINCIPAL_SZ = 1250, + KRB_INSTANCE_SZ = 1250, + KRB_REALM_SZ = 1250, + KRB_SERVICE_SZ = 1250, + ADDR_SZ = 16 }; + +// V4 Credentials +typedef struct _V4Credentials { + unsigned char kversion; + char principal[KRB_PRINCIPAL_SZ]; + char principal_instance[KRB_INSTANCE_SZ]; + char service[KRB_SERVICE_SZ]; + char service_instance[KRB_INSTANCE_SZ]; + char realm[KRB_REALM_SZ]; + unsigned char session_key[8]; + cc_int32 kvno; + enum StringToKey_Type str_to_key; + long issue_date; + cc_int32 lifetime; + char address[ADDR_SZ]; // IP Address of local host + cc_int32 ticket_sz; + unsigned char ticket[MAX_V4_CRED_LEN]; + unsigned long oops; +} V4Cred_type; + +// version indentfiers +// extend to authentication schemes beyond Kerberos? +enum cc_cred_vers { + CC_CRED_VUNKNOWN = 0, // For validation + CC_CRED_V4 = 1, + CC_CRED_V5 = 2, + CC_CRED_VMAX = 3, // For validation + CC_INVALID_RECORD = 99 +}; + +#define NC_MAX_NAME_LENGTH 255 +typedef struct _infoNC { + char name[NC_MAX_NAME_LENGTH]; + char principal[NC_MAX_NAME_LENGTH]; + enum cc_cred_vers vers; +} infoNC; + + +typedef struct _cc_data { + cc_int32 type; // should be one of above + cc_int32 length; + unsigned char* data; +} cc_data; + +typedef struct _cc_creds { + char* client; + char* server; + cc_data keyblock; + cc_time_t authtime; + cc_time_t starttime; + cc_time_t endtime; + cc_time_t renew_till; + int is_skey; + cc_int32 ticket_flags; + cc_data **addresses; + cc_data ticket; + cc_data second_ticket; //???? + cc_data **authdata; +} cc_creds; + +//union of v4, v5 pointers +typedef union cred_ptr_union_type { + V4Cred_type* pV4Cred; + cc_creds* pV5Cred; +} cred_ptr_union; + +//version 4 and version 5 union data type +typedef struct cred_union_type { +#ifdef CRED_TYPE_IN_UNION + enum cc_cred_vers cred_type; +#endif + cred_ptr_union cred; +} cred_union; + +#define kInitialCredBufferSize 10 +#define kLocalCopyNCType 1 +#define kMasterRecordNCType 2 +#define kUnlocked 100 +#define kReadLock 101 +#define kWriteLock 102 +typedef struct _ccache_p { + char name[NC_MAX_NAME_LENGTH + 1]; + enum cc_cred_vers vers; + char principal[NC_MAX_NAME_LENGTH + 1]; + short numCreds; + short maxCreds; + cred_union** creds; //self-growing array of pointers + int cc_flags; + char typeFlag; //master or local copy + long lock; + ProcessSerialNumber lockOwner; + struct _ccache_p *next; + struct _ccache_p *prev; +} ccache_p; + + +typedef struct _ccache_it { + ccache_p *prevNC; + int lastCredOffset; +} ccache_it; + +typedef struct _apiCB { + ccache_p* listHead; + ccache_p* listTail; + int numNCs; + cc_time_t changeCount; +} apiCB; + + +// --- Globals ------------- +extern apiCB *gCntrlBlock; + + +/* +** The official (externally visible) API +*/ + +#define CC_API_VER_1 1 + +// -- Main cache routines ------ + +/* Initialize the Credentials Cache, return a control structure in cc_ctx, + This should be the entry point of the shared library, or called from + the entry point */ +int +cc_initialize(apiCB ** cc_ctx, // < SL's primary control structure. + // returned here, passed everywhere else + int api_version, // > ver supported by caller (use CC_API_VER_1) + int* api_supported, // < if ~NULL, returned max ver supported by DLL + char** vendor); // < if ~NULL, returns read only C string, vendor name */ + +/* Termination routine */ +int +cc_shutdown(apiCB** cc_ctx); // <> SL's primary control structure. NULL after call. + + +/* Open a name cache within the ccache designated by name and version? + Returns a control struture pointer to the NC in *handle */ +int +cc_open(apiCB * cc_ctx, // > SL's primary control structure + char * name, // > name of pre-created cache + const enum cc_cred_vers vers, // > version of credentials held in this NC + int cc_flags, // > options + ccache_p ** handle); // < named cache control structure + +/* Close and deallocate memory assoicated with the named cache pointed to by *handle */ +int +cc_close(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p** handle); // <> named cache control structure. NULL after call. + +/* Create a new named cache in the cache cc_ctx. +Specify the cache by: a name, a principal, a version +return a pointer to the control structure for the cache via handle */ +int +cc_create(apiCB* cc_ctx, // > DLL's primary control structure + char* name, // > name of cache to be [destroyed if exists, then] created + const enum cc_cred_vers vers, // > version of credentials to be held in cache + char* principal, // > name of principal associated with named cache + int cc_flags, // > options + ccache_p** handle); // < named cache control structure + +/* Seems remarkably similiar to cc_close ???? */ +int +cc_destroy(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p** handle); // <> named cache control structure. NULL after call. + +/* Get the global last changed time variable for the CCache + Replace this with a change counter instead of an actual time?*/ +int +cc_get_change_time(apiCB* cc_ctx, // > DLL's primary control structure + cc_time_t* time); // < time of last change to named cache + +// -- Named Cache routines --------- + +/* store the credentials (tickets) in cred in the named cache pointed +to by handle. Maybe the last argument should be more general? */ +int +cc_store(apiCB* cc_ctx, // > DLL's primary control structure + const ccache_p* ccache_pointer, // > named cache control structure + const cred_union cred); // > credentials to store in cache named + +/* Remove the credentials pointed to by cred from the Named Cache pointed to +by handle. */ +int +cc_remove_cred(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p* ccache_pointer, // > named cache control structure + const cred_union cred); // > credentials to remove from named cache + +/* set the principal of the NC *ccache_pointer to principal, + principal should be a null terminated C string */ +int +cc_set_principal(apiCB* cc_ctx, // > cs + const ccache_p* ccache_pointer, // > NC + const enum cc_cred_vers vers, // > version: to check pointer? + const char* principal); // > new principal name + +/* Get the name of the principal associated with the NC handle */ +int +cc_get_principal(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p * ccache_pointer, // > named cache control structure + char** principal); // < name of principal associated with named cache + // Free via cc_free_principal() + +/* Get version of credentials stored in the NC pointed to by ccache_pointer */ +int +cc_get_cred_version(apiCB* cc_ctx, // > cs + const ccache_p* ccache_pointer, // > the named cache + enum cc_cred_vers* vers); // <> the version of credentials in the NC + +/* Return the name of the NC specified by ccache_p */ +int +cc_get_name(apiCB* cc_ctx, // > control struct + const ccache_p* ccache_pointer, // > NC + char** name); // <> name + + +// - Search routines ---- + +/* +Sequentially open every NC in the CCache. +To use (?): initially set handle and itCache to NULL +after each call set itCache to handle, +repeated calls will return all currently held NC's +*/ +int +cc_seq_fetch_NCs(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p** ccache_pointer, // <> named cache control structure (close, then open next) + ccache_it** itCache);// <> iterator used by DLL, set to NULL before first call + // Also NULL for final call if loop ends before CC_END + +/* Sequentially fetch every set of credentials in the Named Cache handle +use similiarly to cc_seq_fetch_NCs */ +int +cc_seq_fetch_creds(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p* ccache_pointer, // > named cache control structure + cred_union** creds, // < filled in by DLL, free via cc_free_creds() + ccache_it** itCreds); // <> iterator used by DLL, set to NULL before first call + // Also NULL for final call if loop ends before CC_END + +/* a wrapper for cc_seq_fetch_NCs. + Returns: a null terminated list (array) of pointers to infoNC structs + if this works, maybe we should hide that seq call... + */ +int +cc_get_NC_info(apiCB *cc_ctx, // > control structure + infoNC*** ppNCi); // <> info about the NC (yes.. three asterisks...) + + +// -- Memory recovery --------- + +/* just a wrapper for free() ??? */ +int +cc_free_principal(apiCB* cc_ctx, // > DLL's primary control structure + char* principal);// <> principal to be freed, returned as NULL + // (from cc_get_principal()) +/* another wrapper? */ +int +cc_free_name(apiCB* cc_ctx, // > DLL's primary control structure + char* name); // <> name to be freed, returned as NULL + // (from cc_seq_fetch_cache()) + +/* free storage associated with cred_union** */ +int +cc_free_creds(apiCB* cc_ctx, // > DLL's primary control structure + cred_union** creds); // <> creds (from cc_seq_fetch_creds()) to be freed + // Returned as NULL. + +/* Free that nasty array we created above */ +int +cc_free_NC_info(apiCB *cc_ctx, // > control structure + infoNC*** ppNCi); // <> pointer to free + + +// -- Locking ---------- + +#define CC_LOCK_UNLOCK 1 +#define CC_LOCK_READER 2 +#define CC_LOCK_WRITER 3 +#define CC_LOCK_NOBLOCK 16 + +/* Place a lock on the Named Cache handle, lock types are above +NB: API indicates that this call is not implemented*/ +int +cc_lock_request(apiCB* cc_ctx, // > DLL's primary control structure + ccache_p* ccache_pointer, // > named cache control structure + int lock_type); // > one (or combination) of above defined lock types + +#if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__) +# pragma import reset +#endif + +#endif /* Krb_CCacheAPI_h_ */ diff --git a/src/mac/libraries/CCache API/include/CCacheUtil.h b/src/mac/libraries/CCache API/include/CCacheUtil.h new file mode 100644 index 000000000..23426fc67 --- /dev/null +++ b/src/mac/libraries/CCache API/include/CCacheUtil.h @@ -0,0 +1,28 @@ +#include "CCache.h" + +#define kCredsMatch 1 +#define kCredsDiffer 0 + +// ----- Prototypes for Private Functions ------------------ +cred_union ** newCredBuffer(ccache_p *nc); +int credBufferInsert(ccache_p* nc, cred_union creds); +int credBufferRemove(ccache_p* nc, const cred_union cred_to_remove); + +char credcmp (cred_union a, cred_union b); + +char isLockOurs(const ccache_p *nc); + +int copyDataObj(cc_data *obj, cc_data src); +int copyV5Cred(cred_union src, cred_union **dest); +int copyV4Cred(cred_union src, cred_union **dest); +int dupNC(ccache_p* src, ccache_p** dest); +void copyDataArray(cc_data **src, cc_data ***dest); + +void disposeDataArray(cc_data **base); +int cc_free_cred_internals(cred_union *creds); +int freeNCList(apiCB *cntrlBlock); +int disposeCredBuffer(apiCB *cc_ctx, ccache_p *nc); + +Ptr NewSafePtr(long size); +Ptr NewSafePtrSys(long size); +void DisposeSafePtr(Ptr safeP); diff --git a/src/mac/libraries/CodeWarrior Dependencies/Pro2.prj b/src/mac/libraries/CodeWarrior Dependencies/Pro2.prj new file mode 100644 index 0000000000000000000000000000000000000000..82cced375fe9430bd5c75d39fde0d6499951edca GIT binary patch literal 17459 zcmeHPUu+yl8J|7dasJpLlr)6UHk(K&fmGLjvWX5Qv3<51H+T53UD*^wd_HgOtM8v~ z*J_$RV2MaPA^O4t5(p|@B7s!Yhp4D8Q6G?i2T&y>gkLHZxqUzd@qh$8gx_ywcD;Mv z+gsaL*Ol*ccIVq~zWHY6o0)IE+x;emYPBSU=n}%XD8#iJLJZk>ybsz%BViy>kghIT zv-x_xSgo76di5o%;J8@_A|0__tk$iO)naKem0q=-YT3MDz4CIkzGw@7-f*E{*|wR> zJIle0nS6c8a?EMVaf+3tVBUDKWSQA~t+pjcR%njha_aeDk-^J1OpeL3RwYnB>7zwE zZ`)RRp=8y!WM+z$l@PK!rvAR9pGaT2gj&iqv@a-0Wnn^8wlq0Co<$=9^-fHglQpMU zF5Yeslg$?*!N%EL?;52>OxGeHlOs`zhfYxOZ!O1!<4Q z?;t&-@t+{=)%b6a9@hAukRH+ahe(eq+@S1Z8h;FFpT?g;+OP5FkRI3gGSbgzob{g2 z_|K7kR^x9WeMsYfM*2C8{~hT`h0E?etnt%GPidU>eqQ6Omw9^u)FpLD-BD*83+kFW zqpq}$QUWGS0$aNISm@(5y zWmV15OeR^Yza$h<8Z;keYPA9@YlZOYoW=rvxgteaC{|KZIQo;6?Q5)l(OOtt3TIBL zJeJ?mlwb*+?XP4@2`w$qtYEpV_2~{atql26cUle}lT>L)pL{iuYqMwRWN0O6_Qe(N z@q|fsIo-Tab;(hdBeB_3Z}im&HO>i5)vc2PnoQ;nc_$j69ia{RBCbbq(T>oD&~|(Q z7ww3N>l`lH>9e?8`%ha%J5GBn5x1|QeJxfpz0 zALm=~1zXX1>S&;&fsO{+r~&nh6y{BI4`Bm>&tRldS<9(cU$*Kib}EhEdG)IKbgGSY zc0}!K4RA6%03hk&jOYygz8ae*7~&5OcsF0KRxH7{Med8|kG%z*3OX9tKN|4A zQ{6wU+QXL6N7%#aI#umI4RB9@Z_p$6f~e*h*=(*J#SkZN2u$jmYs9Ye=x{E_cTl^6 zd6XWm)k?b(g2I%O&1U%CDH0k!zl8E;bD8nb3?DI;oZ0lKugH$jd6b$QdCqKAxZyie zD0?nbT?ozC25}y|Q`1xFZ4?P*rJR|uxtZj`a%jFw415rCi4CcgQ)nPIJO;j{HRQRE zO3tNA?sHfgUruy`;>)RpHN&HALr$ci*mA5}k#f9-MIcho(Ze46_8B6JFP^2G7Og?Q ze4kB21bK20I1>T!x=N5YkKS;L%DaW?> zePUOzSS>{MDUR@YFxBmP^dgNRh;r=ZQcJtq@UcErvhA$4MGl20p`_4CViI$jFS$!4 z%|nhadMmv4-u>oD?8_al4J&Y$gDFRkBN}JMhYxj-s%8cw5p+mhFdN_d_S?+ZrjN-$ zk5JgAkJ(&Kn|#cDIpbScFmDfRsvW&|6{2=h*e5s6s->Lh2E~^X?X+w|PNbmNa`xJ% zYog~9SSj1{>6!@g?q2oLkA-Otw6kU z1Ou|>(vvNJbCbslc?|EG_>}vGO?rhLcYD5JQ#l-kcKC)2Mx1`7QfRhuxYGPbd zkBXh8$Q{8ofbt}awYmE{5)mjwc^=_;<2B<*;#KciBF0+q*^9jDgU@r_$}d`VI~n;) z(JSx9fq4X}TJNcY>_h`MZ`w}2?(C#!yUO6LJ_7aBp_WNRhVKZxna#ka?$OM%bA^@S zBF~P@PQ&*+uGXQ7dOG@iZUW)H){Dhk;dQBr#dan93|%r3Qb}^@GV~E*@qtna-}R*Y zoWF2VK076e&nO|=b3YtA>`i8Kj-)|Jv_GiOqh&g2w!HFADUqa+Cchz46+d;@W zc_BSHI(EUlFgiRlj3hUap1E)kI=+@p0e6M_Oy^LfXiNwJJODMyv zW%}k+CjH>S8?S-ZfsO{^Xn-N^Cg$0<^*lQ*tS|Q;Ir1v5Lf*E_@tNGsDOe@I)a2w0 zQy03&Co*Hm>Cx#So%ZS!Uh*b%lM#<{8+XsKi5{9e0E6*m5I$JAc{9*jaxxlUM&Y}h z48uQzi^9ms9a3`gTmXNrdotZab1o;FBRLtdFC+C`nGDsJA^MaFTwb^_RnV<)tgk^t z#jzh9IFK4JE^?ieZKvTyMGxr48t4sS1BdQHO{7gx5$>H2Upum3ttx{~9k9|ONZ zI^_82C&1q$%8m?I*qpDT5B#Xtsqqt{kKS+M*(^IY+v%hC-No|>@E3!0JORp1sfxtU z{}!Il&~q0XKO5W3dl>EMep1obuYxXD98S-`zdzI`=^q^b9q8Pz0B7&uw9da3{S-gL z>7SN;?*c!h=ueFR*K4ltFThVL`j@!mX(<4G|HSR6q;Ieb?lGjk{{la*=>(=2YoDR@O`xZl#=sf>V&cYU*(aiyNZ5i z0XQu*;PUIZ$zN<@;|_WC(W%RS#87Mf{4@``K1P*V2YwOr7K7rSw_n5fCmt`?><0SP uSSC6TnZatSju}ugZ3CKK~yaeefUv literal 0 HcmV?d00001 diff --git a/src/mac/libraries/CodeWarrior Dependencies/Pro4.prj b/src/mac/libraries/CodeWarrior Dependencies/Pro4.prj new file mode 100644 index 0000000000000000000000000000000000000000..445248db6da41833998f664aed66fed4e337e1c7 GIT binary patch literal 18655 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 + + * quad_cksum.c: Include string.h for memcpy declaration. + * random_key.c: Ditto. + +Wed Feb 1 12:00:00 1995 John Rivlin + + * Makefile.in: Create install-windows target + +Tue Nov 22 10:53:16 1994 Ian Lance Taylor + + * random_key.c (des_random_key): Don't assume that the argument is + aligned on an integer boundary. + +Mon Oct 31 19:40:21 1994 Ian Lance Taylor + + * Makefile.in (CODE): Remove Imakefile. + +Fri Oct 28 15:21:01 1994 Ian Lance Taylor + + * read_password.c (old_sigfunc): Use sigtype in declaration, + rather than guessing based on POSIX define. + +Mon Oct 10 19:18:48 1994 Julia Menapace (jcm at toad.com) + + * mac_time.c: Include des.h and AddressXlation.h. Put + gettimeofdaynet wrapper on gettimeofday_no_offset so it can be + returned as a DES pointer with the expected calling sequence. + + * new_rnd_key.c: Make forward declarations and function + definitions match the function prototypes that were added as + new external declarations to des.h: des_set_sequence_number, + des_generate_random_block, des_new_random_key, + des_init_random_number_generator. des_set_random_generator_seed + + (des_init_random_number_generator): Changes to port routine + to the Mac. Initialize the seed using RANDOM_KRB_INT32_1 + and RANDOM_KRB_INT32_2 instead of gethostid and getpid. Use a + KRB_INT32 instead of a timeval and set it using TIME_GMT_UNIXSEC + instead of gettimeofday. + +Tue Aug 9 12:00:00 John Rivlin (jrivlin@fusion.com) + + * win_time.c: Removed copy of time structure as stack + is now set up properly. + + * Makefile.In: Broke up clean target to not do useless + deletes on unix. + +Mon Aug 29 10:12:42 1994 Mark Eichin (eichin@perdiem) + + * key_sched.c (des_key_sched): even if we return an error, build + the key schedule anyway. This helps with testing, and avoids + garbage encryptions in cases where the error isn't checked. + +Fri Jul 29 17:18:55 1994 Mark Eichin (eichin@cygnus.com) + + * random_key.c (des_random_key): use KRB_INT32 for half-key + manipulation, so the upper half really gets set. + +Tue Jul 19 20:06:14 1994 Ken Raeburn (raeburn@cujo.cygnus.com) + + * random_key.c (des_random_key): Don't initialize static local + variable n. Fiddled with whitespace in srandom call. + +Fri Jul 15 17:35:30 1994 John Rivlin (jrivlin@fusion.com) + + * ren.msg: updated to handle all files (changelogs, makefiles etc) + + * Makefile.in: added "-" on clean: to avoid stupid messages + +Fri Jul 8 02:40:54 1994 John Rivlin (jrivlin@fusion.com) + + * makefile.in: Updated file with portable directory syntax for PC. + Changed .o and .a references to portable syntax + Removed all response files which needed to be generated under unix + to simplify configure process so that it may be run on the PC. + Placed objects in .lib file so that DLL construction can take place + without a response file. This solves a problem with running out of + memory on the PC during builds. + Updated clean: target to place rm commands on seperate lines for + compatibility with PC DEL command. + +Tue Jul 5 11:31:59 1994 Ken Raeburn (raeburn@cujo.cygnus.com) + + * string_to_key.c (des_string_to_key): Deleted static and (some) + register decls. + * quad_cksum.c (four_bytes_vax_to_nets): Ditto. + * util.c (des_cblock_print_file): Ditto. + + * weak_key.c (weak): Now const. + (des_is_weak_key): Compensate. + +Fri Jul 1 03:12:31 1994 John Gilmore (gnu@cygnus.com) + + Make Kerberos build using Think C on Macintosh. + + * mac_time.c: Use GetDateTime, not time. + * quad_cksum.c: Avoid using printf(). + * %DesLib-project: New Think C project file for building + the DES library as an ordinary library. (Unfortunately this + is a binary file -- there are no textual makefiles in Think C). + This makes it semi-possible to debug the code. + * %DesLib-project-A4: Ditto, for building as a library to go + into a device driver. + +Thu Jun 30 23:11:11 1994 John Gilmore (gnu@tweedledumb.cygnus.com) + + * *.c: Remove remaining RCS ID strings. Strings used as `char *' + initializers upset Think C when building device drivers, since it + doesn't have a good way to relocate the pointers when the driver + is loaded. + + * f_parity.c: Clarify public domain ownership. + + * *.c: Use #include "..." rather than #include <...> for + our own local include files, because Think C can't find them + when enclosed in <...>. + +Wed Jun 22 18:29:48 1994 Ken Raeburn (raeburn@cujo.cygnus.com) + + * new_rnd_key.c, string_to_key.c: Include . + +Tue Jun 21 00:15:31 1994 John Gilmore (gnu@cygnus.com) + + * new_rnd_key.c: Lint. + +Sat Jun 18 09:05:30 1994 John Gilmore (gnu@cygnus.com) + + Make DES library independent of krb library again. + + * Makefile.in (SRCS, OBJS): Use DES_TIME_SRCS and DES_TIME_OBJS. + * unix_time.c, mac_time.c, win_time.c: New files implement + TIME_GMT_UNIXSEC for the various hosts. Code moved from *_glue.c + in lib/krb. + +Fri Jun 17 05:01:03 1994 John Gilmore (gnu@cygnus.com) + + * Makefile.in (DESSRCS): Move read_password.c to SERVER_DES_SRCS, + since we don't use it on micro clients. Clarify comments. + (Links of test routines): Add $(LDFLAGS) to the line so that + mac-mf.sed can find these and modify them to run "Link". + +Thu Jun 16 17:08:58 1994 John Gilmore (gnu@cygnus.com) + + * Makefile.in (unixmac): New target. + +Fri Jun 10 23:03:08 1994 John Gilmore (gnu@cygnus.com) + + * f_tables.h: Add comments on the DEB macro. + * new_rnd_key.c: Remove RCS crud, update export notice. + * random_key.c: Clean out obsolete config crud. + Use TIME_GMT_UNIXSEC_US rather than gettimeofday. Use + RANDOM_KRB_INT32_1 and RANDOM_KRB_INT32_2 rather than + getpid() and gethostid(). Remove RCS crud, update export notice. + * string_to_key.c (des_string_to_key): Int functions return results. + * testit.c: Print usage message if no args. + * verify.c, testit.c: Declare des_debug extern, not common. + +Wed Jun 8 13:09:14 1994 John Gilmore (gnu@cygnus.com) + + * Makefile.in (DBG): Move to where it will actually work. + * testit.c, verify.c: Include . Remove raw extern + declarations. Pull RCS crud. + * verify.c: In Windows, set screen buffer to keep all output. + + * string_to_key.c (des_string_to_key): Fix argument type to match + correct prototype. Pull RCS crud. + +Fri May 27 16:55:33 1994 John Gilmore (gnu@cygnus.com) + + * Makefile.in (DBG): Override with library-building flags. + + * des_internal.h: Include krb.h when compiling the DES + routines, since it describes some of the DES routines when + documenting the external interface of Kerberos. + * f_cbc.c, f_ecb.c, f_parity.c, f_pcbc.c, key_sched.c, + quad_cksum.c, string_to_key.c, weak_key.c: Add INTERFACE to + definitions of functions visible in the programmer interface. + * string_to_key.c: Remove some error printf's for environments + that don't have printf; put them under #ifdef DEBUG. + +Tue May 24 06:10:57 1994 John Gilmore (gnu@cygnus.com) + + * enc.c: Pull RCS crud. + * f_pcbc.c (des_pcbc_encryption): Lint ivec. + * key_test.c: Toss the ridiculous doubled IBMPC/BSDUNIX printf's, + use a simple portable printf. Typo in msg. Pull RCS crud. + * new_rnd_key.c, quad_cksum.c, string_to_key.c: Lint. + * quad_cksum.c: Pull RCS crud. + +Sat May 21 03:37:01 1994 John Gilmore (gnu@cygnus.com) + + Microsoft Windows port. + + * Makefile.in (c-libdes.${LIBEXT)): Typo; and fix .o to .obj. + * des_internal.h: Remove pre-Fergusen stuff, leaving one #define. + * f_tables.h (FF_UINT32): Add this, which makes a KRB_UINT32 out + of a constant that might otherwise only be int or less. + * f_cbc.c, f_cksum.c, f_pcbc.c: Use it. Line up code neatly. + * key_sched.c: Lint, pull RCS crud. + * ren.msg: Insert column of entries for MIT PC release. + +Thu May 19 22:18:24 1994 John Gilmore (gnu@cygnus.com) + + More MS-Windows and Mac support. + + * cbc_noop.c, epc_encrypt.c: Delete two more unused remnants. + * ren.msg, Makefile.in: Remove references to remnants. + + * Makefile.in (OTHERSRCS, OTHEROBJS): Rename to FERG_* for clarity. + (SERVER_DES_{SRCS,OBJS}): Split out routines used only on servers. + (####): Move host-configuration insertion point so that the + per-host Makefile fragments can override the above. + (LIBEXT): Use it everywhere rather than ".a". + (libdes.$(LIBEXT)): Avoid making a .bak file. Add and + use $(ARCHIVEARGS) to allow making the incredible MSC LIB + command work. + (c-libdes.$(LIBEXT)): Add rule to build control file for MSC LIB. + This rule must run on Unix (FIXME) since it uses sed and tr. I + didn't know the equivalent DOS commands... + + * f_tables.h (DES_IP_RIGHT_BITS, DES_FP_RIGHT_BITS): Insert a cast + to unsigned, to circumvent a bug in the Macintosh MPW 3.2 C + compiler which loses the unsignedness and then does an arithmetic + shift rather than a logical shift. + (DEB): Add debug macro for very nested macro defns. + (DES_DO_ENCRYPT): Insert DEB calls to make it possible to + debug when DES fails. + +Fri May 13 01:59:09 1994 John Gilmore (gnu@cygnus.com) + + * Makefile.in: Change {} to () for Microsoft NMAKE. + * Makefile: Remove remnant of old config scheme. + * ren.msg: Specify short and long names for DOS file systems. + * key_test.c, quad_cksum.c, testit.c, verify.c: Pull unused + errmsg, errno. + +Sun May 8 17:21:50 1994 John Gilmore (gnu@cygnus.com) + + * read_password.c: Remove `sigtype', use typedef from osconf.h. + +Sat May 7 17:32:43 1994 John Gilmore (gnu@tweedledumb.cygnus.com) + + * Makefile.in: Don't build verify, key_test, and testit every + time we build the library. + + * Makefile.in: Update CODE for the removal. + + * cbc_encrypt.c, cksum.c, dbg_prt.c, des.c, desglue.c, destest.c, + key_parity.c, make_e.c, make_fp.c, make_ip.c, make_key_perm.c, + make_key_sched.c, make_odd.c, make_p.c, make_p_table.c, make_s.c, + make_s_table.c, misc.c, noop.c, pcbc_encrypt.c, s_table.h.ibm, + tables.h: Remove remnants of non-Fergusen DES code. These are all + unused, have long, non-DOSlike names, and confuse people (me + anyway) into thining that they're live code. + +Fri May 6 02:04:48 1994 John Gilmore (gnu@cygnus.com) + + * desglue.c (quad_cksum): Put argument declarations in order. + * pcbc_encrypt.c (des_pcbc_encrypt): Ditto. + * quad_cksum.c (des_quad_cksum): Ditto. + +Tue Oct 26 12:21:05 1993 Ken Raeburn (raeburn@rover.cygnus.com) + + * f_tables.h: Define const if not already defined and not + __STDC__. + +Sun Oct 17 13:47:28 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) + + * f_*.c, f_tables.h, quad_cksum.c, testit.c, verify.c: Use + KRB_INT32 instead of long for 4-byte type. + + * f_tables.c: Include des.h. + + * string_to_key.c (des_string_to_key): Mask values to 32 bits + before printing. + + * testit.c (nflag): Set to 1; running 1000 identical iterations + was silly. + + * verify.c (print8): New routine. + (main): Clean up output formatting. + +Thu Feb 11 13:05:12 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) + + * testit.c (main): Fix usage message. + + * Imakefile: Delete references to assembly code. + * key_sched.c: Ditto. Get rid of useless BIT macro. + +Wed Feb 10 14:17:31 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) + + * des.c (des_ecb_encrypt): Fix pointer type lossage, and NULL/0 + confusion. Discard VAX-specific stuff. Add a couple of minor + optimizations, including some based on DES_SHIFT_SHIFT + conditional. + + * key_sched.c (make_key_sched): Fix inconsistent fwd declaration. + +Fri Jun 19 13:37:35 1992 Mark Eichin (eichin at tweedledumber.cygnus.com) + + * Imakefile (library_ro_object): punt the read-only object linker + mangling as it interferes with debugging. + +Tue Nov 8 12:12:32 1988 William Sommerfeld (wesommer at binkley) + + * (util) Remove \ before { and } characters (causes RT + compiler warning) + + * (read_password) Print a newline after saying "try again". + + * (read_password) Merge in changes by Jim Bloom to do a clearerr + after a read fails, and protect against an RTM attack by + changing gets to fgets. + +Fri Sep 16 16:26:55 1988 Bill Sommerfeld (wesommer at ra) + + * (read_password) fix dependancies for BSDUNIX. + +Mon Sep 12 14:55:23 1988 Bill Sommerfeld (wesommer at ra) + + * (*) debug->des_debug + + * (*) debug_print() -> des_debug_print() + + * (Makefile) add dbg_prt.o to list of files included in build. + + * (des.c) remove debug_print; it's in dbg_prt.c + + * (des_internal.h) contains definitions of AUTH_DES_ITER, + s-box structures, which aren't part of the encryption interface. + + * (*) #include "conf.h" -> #include "des_internal.h" + + * (*) C_Block -> des_cblock + + * (*) Key_schedule -> des_key_schedule + + * (noop.c) remove #includes for unused include files. + + * (des.c, random_key.c, string_to_key.c) add #include of "des_conf.h" + +Fri Sep 9 15:46:13 1988 Bill Sommerfeld (wesommer at ra) + + * (*) string_to_key() -> des_string_to_key() + + * (*) read_pw_string() -> des_read_pw_string() + + * (*) random_key() -> des_random_key() + + * (*) pcbc_encrypt() -> des_pcbc_encrypt() + + * (*) key_sched() -> des_key_sched() + + * (*) cbc_encrypt() -> des_cbc_encrypt() + + * (*) cbc_cksum() -> des_cbc_cksum() + + * (quad_cksum.c) make {four,two}_bytes_vax_to_nets be static to + avoid namespace pollution. + + * (*.c) Rename C_Block_print() to des_cblock_print(). + + * (make_key_perm.c) Make "key_perm" be static to avoid namespace + pollution. + + * (quad_cksum.c) Make "short_conv" and "long_conv" local + variables, to avoid namespace pollution. diff --git a/src/mac/libraries/DES/doc/READ_ME b/src/mac/libraries/DES/doc/READ_ME new file mode 100644 index 000000000..0228da44c --- /dev/null +++ b/src/mac/libraries/DES/doc/READ_ME @@ -0,0 +1,21 @@ +This directory contains the sources for the DES encryption library and +test programs. + +Two precautions-- + +1) under US law, DES software and hardware may not be + exported without license from the US Dept of Commerce. + +2) The only way to get a significant speedup of the algorithm is to + use considerably more space, traded against time. Dont play + with the code -- there is a high probability you will either + make it slower, or wrong, or both. This implementation was + optimized for the UVAX 2. Other architectures could benefit from + some "asm" tweaking. + +3) If you do play with the code, make sure that the test program + "verify" still yields the expected answers. Otherwise, your + ciphertext will not decrypt under a standard implementation, such + as on the VLSI chips that have been certified. + + Project Athena Steve Miller 3/86 diff --git a/src/mac/libraries/DES/doc/f_README b/src/mac/libraries/DES/doc/f_README new file mode 100644 index 000000000..0d381e373 --- /dev/null +++ b/src/mac/libraries/DES/doc/f_README @@ -0,0 +1,69 @@ +/* + * Copyright (c) 1990 Dennis Ferguson. All rights reserved. + * + * Commercial use is permitted only if products which are derived from + * or include this software are made available for purchase and/or use + * in Canada. Otherwise, redistribution and use in source and binary + * forms are permitted. + */ + +Sorry about the poor quality of installation instructions. Included +here are replacements for the DES portions of Eric Young's kerberos +DES library replacement. To use this you will need his distribution. +Untar the latter and: + +(1) Copy all .c and .h files into the distribution directory. This will + overwrite some files and add others. + +(2) Apply the patch included here to set_key.c in the distribution directory. + +(3) Edit the Imakefile (or the Makefile) to include the following files + on the SRCS= line: + + des_tables.c ecb_buffer.c make_sched.c + + Add the following files to the OBJS= line: + + des_tables.o ecb_buffer.o make_sched.o + + Add the following file to the CODE= line: + + des_tables.h + +Recompile and you're done. + +The salient differences between this DES and Eric Young's are as follows: + +(1) There are no dependencies on byte ordering, the ability to do + unaligned loads and stores, or any other machine dependencies + that I know of. There are no #ifdef's. The code could probably + be made faster by adding such things, but not enough to be worth + it. + +(2) Combined S and P tables are used for the inner loop of the cipher + routine and the E expansion is computed on the fly, like Eric + Young's code, but the computation is reordered from the standard + to save instructions. + +(3) The initial and final permutations are table driven, and take + about the same amount of work as a single round of the inner + loop (i.e. only about 12% of the work done for an ecb encryption + is spent in the IP and FP code). + +(4) Since NTP (for which this DES was originally implemented) uses + lots of keys to encrypt small things, the key permutation code + has been well worked over and is quite speedy (the amount of + work required to permute a key is on the order of that required + to do a single ECB encryption, more or less). + +(5) Since the code required to do an ECB encryption using the tables + is actually fairly compact, even with lots of inlining, it was + implemented as a macro and is expanded in situ where needed. + +On the one machine I ran a comparison on this code ran 80% faster than +Eric's, compiled into a slightly smaller space, and did pass destest. +I suspect this stuff is also faster, and not a lot larger, than the +library MIT doesn't export with kerberos. You mileage may vary. + +The silly copyright was a (probably ineffective) afterthought. If it +really inconveniences you give me a call. diff --git a/src/mac/libraries/DES/doc/ren.msg b/src/mac/libraries/DES/doc/ren.msg new file mode 100644 index 000000000..3ee5d0af5 --- /dev/null +++ b/src/mac/libraries/DES/doc/ren.msg @@ -0,0 +1,32 @@ + MIT K4 patch10 MIT K4 PC PROPOSED NAME (trunc to 8.3) old Cyg +$1 $2 $3 $4 $5 $6 + +@ - - ChangeLog changelo +@ - debug.c debug_decl.c debug_de.c +@ - des_intn.h des_internal.h des_inte.h +@ - - doc doc +@ - enc.c enc.c enc.c +@ - - f_README f_readme +@ - - f_cbc.c f_cbc.c +@ - - f_cksum.c f_cksum.c +@ - - f_ecb.c f_ecb.c +@ - - f_parity.c f_parity.c +@ - - f_pcbc.c f_pcbc.c +@ - - f_sched.c f_sched.c +@ - - f_tables.c f_tables.c +@ - - f_tables.h f_tables.h +@ - keysched.c key_sched.c key_sche.c +@ - key_test.c key_test.c key_test.c +@ - - Makefile.in makefile.in +@ - newrndky.c new_rnd_key.c new_rnd_.c +@ - qd_cksum.c quad_cksum.c quad_cks.c +@ - rand_key.c random_key.c random_k.c +@ - rdpasswd.c read_password.c read_pas.c +@ - - READ_ME read_me +@ - - ren.msg ren.msg +@ - strtokey.c string_to_key.c string_t.c +@ - testit.c testit.c testit.c +@ - - unix_time.c unix_tim.c +@ - util.c util.c util.c +@ - verify.c verify.c verify.c +@ - weak_key.c weak_key.c weak_key.c diff --git a/src/mac/libraries/DES/include/des.h b/src/mac/libraries/DES/include/des.h new file mode 100644 index 000000000..8fa12ebf9 --- /dev/null +++ b/src/mac/libraries/DES/include/des.h @@ -0,0 +1,158 @@ +/* + * des.h + * + * Copyright 1987, 1988 by the Massachusetts Institute of Technology. + * + * For copying and distribution information, please see the file + * (Except for those files which contain other copyright information). + * + * Include file for the Data Encryption Standard library. + */ + +/* only do the whole thing once */ +#ifndef DES_DEFS +#define DES_DEFS + +#include "mit-copyright.h" +#include + +#ifndef DES_INT32 +#define DES_INT32 SInt32 +#endif +#ifndef DES_UINT32 +#define DES_UINT32 UInt32 +#endif + +/* There are some declarations in the system-specific header files which + can't be done until DES_INT32 is defined. So they are in a macro, + which we expand here if defined. */ + +#ifdef DECL_THAT_NEEDS_DES_INT32 +DECL_THAT_NEEDS_DES_INT32 +#endif + +typedef unsigned char des_cblock[8]; /* crypto-block size */ +/* Key schedule */ +typedef struct des_ks_struct { union { DES_INT32 pad; des_cblock _;} __; } des_key_schedule[16]; + +#define DES_KEY_SZ (sizeof(des_cblock)) +#define DES_ENCRYPT 1 +#define DES_DECRYPT 0 + +#ifndef NCOMPAT +#define C_Block des_cblock +#define Key_schedule des_key_schedule +#define ENCRYPT DES_ENCRYPT +#define DECRYPT DES_DECRYPT +#define KEY_SZ DES_KEY_SZ +#define string_to_key des_string_to_key +#define read_pw_string des_read_pw_string +#define random_key des_random_key +#define pcbc_encrypt des_pcbc_encrypt +#define key_sched des_key_sched +#define cbc_encrypt des_cbc_encrypt +#define cbc_cksum des_cbc_cksum +#define C_Block_print des_cblock_print +#define quad_cksum des_quad_cksum +typedef struct des_ks_struct bit_64; +#endif + +#define des_cblock_print(x) des_cblock_print_file(x, stdout) + +/* Function declarations */ + +/* This is CFM magic that has to be done in order for the library to work under CFM-68K */ +#if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__) +# pragma import on +#endif + +#if !GENERATINGCFM +# pragma d0_pointers on +#endif + +int des_cbc_encrypt(des_cblock *in, + des_cblock *out, + long length, + des_key_schedule schedule, + des_cblock ivec, + int encrypt); + +void des_3cbc_encrypt(des_cblock *in, + des_cblock *out, + long length, + des_key_schedule ks1, + des_key_schedule ks2, + des_key_schedule ks3, + des_cblock ivec, + int encrypt); + +unsigned long des_cbc_cksum(des_cblock *in, + des_cblock *out, + long length, + des_key_schedule schedule, + des_cblock *ivec); + +int des_ecb_encrypt(des_cblock *in, + des_cblock *out, + des_key_schedule schedule, + int encrypt); + +void des_3ecb_encrypt(des_cblock *in, + des_cblock *out, + des_key_schedule ks1, + des_key_schedule ks2, + des_key_schedule ks3, + int encrypt); + +void des_fixup_key_parity(register des_cblock key); +int des_check_key_parity(register des_cblock key); + +int des_pcbc_encrypt(des_cblock *in, + des_cblock *out, + long length, + des_key_schedule schedule, + des_cblock ivec, + int encrypt); + +int make_key_sched(des_cblock *key, des_key_schedule schedule); + +int des_key_sched(des_cblock k, des_key_schedule schedule); + +int des_new_random_key(des_cblock key); +void des_init_random_number_generator(des_cblock key); +void des_set_random_generator_seed(des_cblock key); +void des_set_sequence_number(des_cblock new_sequence_number); +void des_generate_random_block(des_cblock block); + +unsigned long des_quad_cksum(unsigned char *in, + unsigned long *out, + long length, + int out_count, + des_cblock *c_seed); + +int des_random_key(des_cblock *key); + +int des_read_password(des_cblock *k, char *prompt, int verify); +int des_read_pw_string(char *s, int max, char *prompt, int verify); + +int des_string_to_key(char *str, des_cblock key); + +void des_cblock_print_file(des_cblock *x, FILE *fp); + +int des_is_weak_key(des_cblock key); + +char *des_crypt(const char *buf, const char *salt); +char *des_fcrypt(const char *buf, const char *salt, char *ret); + +int des_set_key(des_cblock *key, des_key_schedule schedule); + +#if !GENERATINGCFM +# pragma d0_pointers reset +#endif + +/* CFM magic again */ +#if defined(__CFM68K__) && !defined(__USING_STATIC_LIBS__) +# pragma import reset +#endif + +#endif /* DES_DEFS */ diff --git a/src/mac/libraries/DES/include/deslib.CFMGlue.c b/src/mac/libraries/DES/include/deslib.CFMGlue.c new file mode 100644 index 000000000..cfc4905e4 --- /dev/null +++ b/src/mac/libraries/DES/include/deslib.CFMGlue.c @@ -0,0 +1,842 @@ +#include +#include +#include + +#include "des.h" +#include "deslib.CFMGlue.h" + +/* These functions must obey CFM calling conventions. Functions which return + pointers must return them in D0, not A0 like ThinkC static 68k does. This way + we can call CFM functions by pointer from here (if they are called by pointer + then the compiler can't tell ahead of time to do D0->A0 translation because it + doesn't know what calling convention the functions use). + + Note that if it is necessary (if you don't use MPWC calling conventions) + the D0->A0 translation will be done by the compiler in the places where + the application calls these glue routines. */ +#pragma d0_pointers on + +/* Hardcode library fragment name here */ +#define kLibraryName "\pMIT_¥deslib" + +/* Private function prototypes */ + +static OSErr Find_Symbol( + Ptr* pSymAddr, + Str255 pSymName, + ProcInfoType pProcInfo); + +static pascal Boolean HaveCFM(void); + +static pascal OSErr GetSystemArchitecture(OSType *archType); + + +/* This code is directly from Technote 1077 */ +/* changed Library name to be hardcoded at the top of the file + instead in the middle of the code */ + +/* Private functions */ + +static pascal OSErr GetSystemArchitecture(OSType *archType) +{ + static long sSysArchitecture = 0; // static so we only Gestalt once. + OSErr tOSErr = noErr; + + *archType = kAnyCFragArch; // assume wild architecture + + // If we don't know the system architecture yet... + if (sSysArchitecture == 0) + // ...Ask Gestalt what kind of machine we are running on. + tOSErr = Gestalt(gestaltSysArchitecture, &sSysArchitecture); + + if (tOSErr == noErr) // if no errors + { + if (sSysArchitecture == gestalt68k) // 68k? + *archType = kMotorola68KCFragArch; + else if (sSysArchitecture == gestaltPowerPC) // PPC? + *archType = kPowerPCCFragArch; + else + tOSErr = gestaltUnknownErr; // who knows what might be next? + } + return tOSErr; +} + +static pascal Boolean HaveCFM(void) +{ + long response; + return ( (Gestalt (gestaltCFMAttr, &response) == noErr) && + (((response >> gestaltCFMPresent) & 1) != 0)); +} + +static OSErr Find_Symbol( + Ptr* pSymAddr, + Str255 pSymName, + ProcInfoType pProcInfo) +{ + static CFragConnectionID sCID = 0; + static OSType sArchType = kAnyCFragArch; + static OSErr sOSErr = noErr; + + Str255 errMessage; + Ptr mainAddr; + CFragSymbolClass symClass; + ISAType tISAType; + + if (sArchType == kAnyCFragArch) // if architecture is undefined... + { + sCID = 0; // ...force (re)connect to library + sOSErr = GetSystemArchitecture(&sArchType); // determine architecture + if (sOSErr != noErr) + return sOSErr; // OOPS! + } + + if (!HaveCFM()) { + // If we don't have CFM68K, return a reasonable-looking error. + sOSErr = cfragLibConnErr; + return sOSErr; + } + + if (sArchType == kMotorola68KCFragArch) // ...for CFM68K + tISAType = kM68kISA | kCFM68kRTA; + else if (sArchType == kPowerPCCFragArch) // ...for PPC CFM + tISAType = kPowerPCISA | kPowerPCRTA; + else + sOSErr = gestaltUnknownErr; // who knows what might be next? + + if (sCID == 0) // If we haven't connected to the library yet... + { + // NOTE: The library name is hard coded here. + // I try to isolate the glue code, one file per library. + // I have had developers pass in the Library name to allow + // plug-in type support. Additional code has to be added to + // each entry points glue routine to support multiple or + // switching connection IDs. + sOSErr = GetSharedLibrary(kLibraryName, sArchType, kLoadCFrag, + &sCID, &mainAddr, errMessage); + if (sOSErr != noErr) + return sOSErr; // OOPS! + } + + // If we haven't looked up this symbol yet... + if ((Ptr) *pSymAddr == (Ptr) kUnresolvedCFragSymbolAddress) + { + // ...look it up now + sOSErr = FindSymbol(sCID,pSymName,pSymAddr,&symClass); + if (sOSErr != noErr) // in case of error... + // ...clear the procedure pointer + *(Ptr*) &pSymAddr = (Ptr) kUnresolvedCFragSymbolAddress; +# if !GENERATINGCFM // if this is classic 68k code... + *pSymAddr = (Ptr)NewRoutineDescriptorTrap((ProcPtr) *pSymAddr, + pProcInfo, tISAType); // ...create a routine descriptor... +# endif + } + return sOSErr; +} + + +/* CFM Glue Code for exported functions! */ + +/**** des_random_key ****/ +/* int des_random_key(des_cblock *key); */ + +enum { + des_random_key_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) +}; + +typedef int (*des_random_key_ProcPtrType)(des_cblock *); +int des_random_key ( + des_cblock * key) +{ + static des_random_key_ProcPtrType des_random_key_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_random_key_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_random_key_ProcPtr, "\pdes_random_key", des_random_key_ProcInfo); + if((Ptr) des_random_key_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_random_key_ProcPtr(key); +} + + +/**** des_cbc_cksum ****/ +/* unsigned long des_cbc_cksum(des_cblock *in, des_cblock *out, long length, des_key_schedule schedule, des_cblock *ivec); */ + +enum { + des_cbc_cksum_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(unsigned long))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(long))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(des_cblock *))) +}; + +typedef unsigned long (*des_cbc_cksum_ProcPtrType)(des_cblock *, des_cblock *, long, des_key_schedule, des_cblock *); +unsigned long des_cbc_cksum ( + des_cblock * in, + des_cblock * out, + long length, + des_key_schedule schedule, + des_cblock * ivec) +{ + static des_cbc_cksum_ProcPtrType des_cbc_cksum_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_cbc_cksum_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_cbc_cksum_ProcPtr, "\pdes_cbc_cksum", des_cbc_cksum_ProcInfo); + if((Ptr) des_cbc_cksum_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_cbc_cksum_ProcPtr(in, out, length, schedule, ivec); +} + + +/**** des_is_weak_key ****/ +/* int des_is_weak_key(des_cblock key); */ + +enum { + des_is_weak_key_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef int (*des_is_weak_key_ProcPtrType)(des_cblock); +int des_is_weak_key ( + des_cblock key) +{ + static des_is_weak_key_ProcPtrType des_is_weak_key_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_is_weak_key_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_is_weak_key_ProcPtr, "\pdes_is_weak_key", des_is_weak_key_ProcInfo); + if((Ptr) des_is_weak_key_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_is_weak_key_ProcPtr(key); +} + + +/**** des_set_sequence_number ****/ +/* void des_set_sequence_number(des_cblock new_sequence_number); */ + +enum { + des_set_sequence_number_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef void (*des_set_sequence_number_ProcPtrType)(des_cblock); +void des_set_sequence_number ( + des_cblock new_sequence_number) +{ + static des_set_sequence_number_ProcPtrType des_set_sequence_number_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_set_sequence_number_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_set_sequence_number_ProcPtr, "\pdes_set_sequence_number", des_set_sequence_number_ProcInfo); + if((Ptr) des_set_sequence_number_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_set_sequence_number_ProcPtr(new_sequence_number); +} + + +/**** des_fixup_key_parity ****/ +/* void des_fixup_key_parity(register des_cblock key); */ + +enum { + des_fixup_key_parity_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef void (*des_fixup_key_parity_ProcPtrType)(register des_cblock); +void des_fixup_key_parity ( + register des_cblock key) +{ + static des_fixup_key_parity_ProcPtrType des_fixup_key_parity_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_fixup_key_parity_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_fixup_key_parity_ProcPtr, "\pdes_fixup_key_parity", des_fixup_key_parity_ProcInfo); + if((Ptr) des_fixup_key_parity_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_fixup_key_parity_ProcPtr(key); +} + + +/**** des_cbc_encrypt ****/ +/* int des_cbc_encrypt(des_cblock *in, des_cblock *out, long length, des_key_schedule schedule, des_cblock ivec, int encrypt); */ + +enum { + des_cbc_encrypt_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(long))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(6, SIZE_CODE(sizeof(int))) +}; + +typedef int (*des_cbc_encrypt_ProcPtrType)(des_cblock *, des_cblock *, long, des_key_schedule, des_cblock, int); +int des_cbc_encrypt ( + des_cblock * in, + des_cblock * out, + long length, + des_key_schedule schedule, + des_cblock ivec, + int encrypt) +{ + static des_cbc_encrypt_ProcPtrType des_cbc_encrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_cbc_encrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_cbc_encrypt_ProcPtr, "\pdes_cbc_encrypt", des_cbc_encrypt_ProcInfo); + if((Ptr) des_cbc_encrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_cbc_encrypt_ProcPtr(in, out, length, schedule, ivec, encrypt); +} + + +/**** des_quad_cksum ****/ +/* unsigned long des_quad_cksum(unsigned char *in, unsigned long *out, long length, int out_count, des_cblock *c_seed); */ + +enum { + des_quad_cksum_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(unsigned long))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(unsigned long *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(long))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(des_cblock *))) +}; + +typedef unsigned long (*des_quad_cksum_ProcPtrType)(unsigned char *, unsigned long *, long, int, des_cblock *); +unsigned long des_quad_cksum ( + unsigned char * in, + unsigned long * out, + long length, + int out_count, + des_cblock * c_seed) +{ + static des_quad_cksum_ProcPtrType des_quad_cksum_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_quad_cksum_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_quad_cksum_ProcPtr, "\pdes_quad_cksum", des_quad_cksum_ProcInfo); + if((Ptr) des_quad_cksum_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_quad_cksum_ProcPtr(in, out, length, out_count, c_seed); +} + + +/**** des_read_password ****/ +/* int des_read_password(des_cblock *k, char *prompt, int verify); */ + +enum { + des_read_password_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(char *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(int))) +}; + +typedef int (*des_read_password_ProcPtrType)(des_cblock *, char *, int); +int des_read_password ( + des_cblock * k, + char * prompt, + int verify) +{ + static des_read_password_ProcPtrType des_read_password_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_read_password_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_read_password_ProcPtr, "\pdes_read_password", des_read_password_ProcInfo); + if((Ptr) des_read_password_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_read_password_ProcPtr(k, prompt, verify); +} + + +/**** des_ecb_encrypt ****/ +/* int des_ecb_encrypt(des_cblock *in, des_cblock *out, des_key_schedule schedule, int encrypt); */ + +enum { + des_ecb_encrypt_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(int))) +}; + +typedef int (*des_ecb_encrypt_ProcPtrType)(des_cblock *, des_cblock *, des_key_schedule, int); +int des_ecb_encrypt ( + des_cblock * in, + des_cblock * out, + des_key_schedule schedule, + int encrypt) +{ + static des_ecb_encrypt_ProcPtrType des_ecb_encrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_ecb_encrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_ecb_encrypt_ProcPtr, "\pdes_ecb_encrypt", des_ecb_encrypt_ProcInfo); + if((Ptr) des_ecb_encrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_ecb_encrypt_ProcPtr(in, out, schedule, encrypt); +} + + +/**** des_3ecb_encrypt ****/ +/* void des_3ecb_encrypt(des_cblock *in, des_cblock *out, des_key_schedule ks1, des_key_schedule ks2, des_key_schedule ks3, int encrypt); */ + +enum { + des_3ecb_encrypt_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(des_key_schedule))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(des_key_schedule))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(des_key_schedule))) + | STACK_ROUTINE_PARAMETER(6, SIZE_CODE(sizeof(int))) +}; + +typedef void (*des_3ecb_encrypt_ProcPtrType)(des_cblock *, des_cblock *, des_key_schedule, des_key_schedule, des_key_schedule, int); +void des_3ecb_encrypt ( + des_cblock * in, + des_cblock * out, + des_key_schedule ks1, + des_key_schedule ks2, + des_key_schedule ks3, + int encrypt) +{ + static des_3ecb_encrypt_ProcPtrType des_3ecb_encrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_3ecb_encrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_3ecb_encrypt_ProcPtr, "\pdes_3ecb_encrypt", des_3ecb_encrypt_ProcInfo); + if((Ptr) des_3ecb_encrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_3ecb_encrypt_ProcPtr(in, out, ks1, ks2, ks3, encrypt); +} + + +/**** des_key_sched ****/ +/* int des_key_sched(des_cblock k, des_key_schedule schedule); */ + +enum { + des_key_sched_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(struct des_ks_struct *))) +}; + +typedef int (*des_key_sched_ProcPtrType)(des_cblock, des_key_schedule); +int des_key_sched ( + des_cblock k, + des_key_schedule schedule) +{ + static des_key_sched_ProcPtrType des_key_sched_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_key_sched_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_key_sched_ProcPtr, "\pdes_key_sched", des_key_sched_ProcInfo); + if((Ptr) des_key_sched_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_key_sched_ProcPtr(k, schedule); +} + + +/**** des_3pcbc_encrypt ****/ +/* void des_3pcbc_encrypt(des_cblock *input, des_cblock *output, long length, des_key_schedule schedule1, des_cblock ivec1, des_key_schedule schedule2, des_cblock ivec2, des_key_schedule schedule3, des_cblock ivec3, int encrypt); */ +/* +enum { + des_3pcbc_encrypt_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(long))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(6, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(7, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(8, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(9, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(10, SIZE_CODE(sizeof(int))) +}; + +typedef void (*des_3pcbc_encrypt_ProcPtrType)(des_cblock *, des_cblock *, long, des_key_schedule, des_cblock, des_key_schedule, des_cblock, des_key_schedule, des_cblock, int); +void des_3pcbc_encrypt ( + des_cblock * input, + des_cblock * output, + long length, + des_key_schedule schedule1, + des_cblock ivec1, + des_key_schedule schedule2, + des_cblock ivec2, + des_key_schedule schedule3, + des_cblock ivec3, + int encrypt) +{ + static des_3pcbc_encrypt_ProcPtrType des_3pcbc_encrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_3pcbc_encrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_3pcbc_encrypt_ProcPtr, "\pdes_3pcbc_encrypt", des_3pcbc_encrypt_ProcInfo); + if((Ptr) des_3pcbc_encrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_3pcbc_encrypt_ProcPtr(input, output, length, schedule1, ivec1, schedule2, ivec2, schedule3, ivec3, encrypt); +} +*/ + +/**** make_key_sched ****/ +/* int make_key_sched(des_cblock *key, des_key_schedule schedule); */ + +enum { + make_key_sched_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(struct des_ks_struct *))) +}; + +typedef int (*make_key_sched_ProcPtrType)(des_cblock *, des_key_schedule); +int make_key_sched ( + des_cblock * key, + des_key_schedule schedule) +{ + static make_key_sched_ProcPtrType make_key_sched_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) make_key_sched_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &make_key_sched_ProcPtr, "\pmake_key_sched", make_key_sched_ProcInfo); + if((Ptr) make_key_sched_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return make_key_sched_ProcPtr(key, schedule); +} + + +/**** des_crypt ****/ +/* char *des_crypt(const char *buf, const char *salt); */ + +enum { + des_crypt_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(char *))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(const char *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(const char *))) +}; + +typedef char * (*des_crypt_ProcPtrType)(const char *, const char *); +char * des_crypt ( + const char * buf, + const char * salt) +{ + static des_crypt_ProcPtrType des_crypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_crypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_crypt_ProcPtr, "\pdes_crypt", des_crypt_ProcInfo); + if((Ptr) des_crypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return(des_crypt_ProcPtr(buf, salt)); +} + + +/**** des_set_random_generator_seed ****/ +/* void des_set_random_generator_seed(des_cblock key); */ + +enum { + des_set_random_generator_seed_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef void (*des_set_random_generator_seed_ProcPtrType)(des_cblock); +void des_set_random_generator_seed ( + des_cblock key) +{ + static des_set_random_generator_seed_ProcPtrType des_set_random_generator_seed_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_set_random_generator_seed_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_set_random_generator_seed_ProcPtr, "\pdes_set_random_generator_seed", des_set_random_generator_seed_ProcInfo); + if((Ptr) des_set_random_generator_seed_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_set_random_generator_seed_ProcPtr(key); +} + + +/**** des_new_random_key ****/ +/* int des_new_random_key(des_cblock key); */ + +enum { + des_new_random_key_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef int (*des_new_random_key_ProcPtrType)(des_cblock); +int des_new_random_key ( + des_cblock key) +{ + static des_new_random_key_ProcPtrType des_new_random_key_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_new_random_key_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_new_random_key_ProcPtr, "\pdes_new_random_key", des_new_random_key_ProcInfo); + if((Ptr) des_new_random_key_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_new_random_key_ProcPtr(key); +} + + +/**** des_set_key ****/ +/* int des_set_key(des_cblock *key, des_key_schedule schedule); */ + +enum { + des_set_key_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(struct des_ks_struct *))) +}; + +typedef int (*des_set_key_ProcPtrType)(des_cblock *, des_key_schedule); +int des_set_key ( + des_cblock * key, + des_key_schedule schedule) +{ + static des_set_key_ProcPtrType des_set_key_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_set_key_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_set_key_ProcPtr, "\pdes_set_key", des_set_key_ProcInfo); + if((Ptr) des_set_key_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_set_key_ProcPtr(key, schedule); +} + + +/**** des_generate_random_block ****/ +/* void des_generate_random_block(des_cblock block); */ + +enum { + des_generate_random_block_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef void (*des_generate_random_block_ProcPtrType)(des_cblock); +void des_generate_random_block ( + des_cblock block) +{ + static des_generate_random_block_ProcPtrType des_generate_random_block_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_generate_random_block_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_generate_random_block_ProcPtr, "\pdes_generate_random_block", des_generate_random_block_ProcInfo); + if((Ptr) des_generate_random_block_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_generate_random_block_ProcPtr(block); +} + + +/**** des_fcrypt ****/ +/* char *des_fcrypt(const char *buf, const char *salt, char *ret); */ + +enum { + des_fcrypt_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(char *))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(const char *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(const char *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(char *))) +}; + +typedef char * (*des_fcrypt_ProcPtrType)(const char *, const char *, char *); +char * des_fcrypt ( + const char * buf, + const char * salt, + char * ret) +{ + static des_fcrypt_ProcPtrType des_fcrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_fcrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_fcrypt_ProcPtr, "\pdes_fcrypt", des_fcrypt_ProcInfo); + if((Ptr) des_fcrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_fcrypt_ProcPtr(buf, salt, ret); +} + + +/**** des_read_pw_string ****/ +/* int des_read_pw_string(char *s, int max, char *prompt, int verify); */ + +enum { + des_read_pw_string_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(char *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(char *))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(int))) +}; + +typedef int (*des_read_pw_string_ProcPtrType)(char *, int, char *, int); +int des_read_pw_string ( + char * s, + int max, + char * prompt, + int verify) +{ + static des_read_pw_string_ProcPtrType des_read_pw_string_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_read_pw_string_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_read_pw_string_ProcPtr, "\pdes_read_pw_string", des_read_pw_string_ProcInfo); + if((Ptr) des_read_pw_string_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_read_pw_string_ProcPtr(s, max, prompt, verify); +} + + +/**** des_cblock_print_file ****/ +/* void des_cblock_print_file(des_cblock *x, FILE *fp); */ + +enum { + des_cblock_print_file_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(FILE *))) +}; + +typedef void (*des_cblock_print_file_ProcPtrType)(des_cblock *, FILE *); +void des_cblock_print_file ( + des_cblock * x, + FILE * fp) +{ + static des_cblock_print_file_ProcPtrType des_cblock_print_file_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_cblock_print_file_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_cblock_print_file_ProcPtr, "\pdes_cblock_print_file", des_cblock_print_file_ProcInfo); + if((Ptr) des_cblock_print_file_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_cblock_print_file_ProcPtr(x, fp); +} + + +/**** des_pcbc_encrypt ****/ +/* int des_pcbc_encrypt(des_cblock *in, des_cblock *out, long length, des_key_schedule schedule, des_cblock ivec, int encrypt); */ + +enum { + des_pcbc_encrypt_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(long))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(struct des_ks_struct *))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(unsigned char *))) + | STACK_ROUTINE_PARAMETER(6, SIZE_CODE(sizeof(int))) +}; + +typedef int (*des_pcbc_encrypt_ProcPtrType)(des_cblock *, des_cblock *, long, des_key_schedule, des_cblock, int); +int des_pcbc_encrypt ( + des_cblock * in, + des_cblock * out, + long length, + des_key_schedule schedule, + des_cblock ivec, + int encrypt) +{ + static des_pcbc_encrypt_ProcPtrType des_pcbc_encrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_pcbc_encrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_pcbc_encrypt_ProcPtr, "\pdes_pcbc_encrypt", des_pcbc_encrypt_ProcInfo); + if((Ptr) des_pcbc_encrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_pcbc_encrypt_ProcPtr(in, out, length, schedule, ivec, encrypt); +} + + +/**** des_check_key_parity ****/ +/* int des_check_key_parity(register des_cblock key); */ + +enum { + des_check_key_parity_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef int (*des_check_key_parity_ProcPtrType)(register des_cblock); +int des_check_key_parity ( + register des_cblock key) +{ + static des_check_key_parity_ProcPtrType des_check_key_parity_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_check_key_parity_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_check_key_parity_ProcPtr, "\pdes_check_key_parity", des_check_key_parity_ProcInfo); + if((Ptr) des_check_key_parity_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_check_key_parity_ProcPtr(key); +} + + +/**** des_3cbc_encrypt ****/ +/* void des_3cbc_encrypt(des_cblock *in, des_cblock *out, long length, des_key_schedule ks1, des_key_schedule ks2, des_key_schedule ks3, des_cblock ivec, int encrypt); */ + +enum { + des_3cbc_encrypt_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(des_cblock *))) + | STACK_ROUTINE_PARAMETER(3, SIZE_CODE(sizeof(long))) + | STACK_ROUTINE_PARAMETER(4, SIZE_CODE(sizeof(des_key_schedule))) + | STACK_ROUTINE_PARAMETER(5, SIZE_CODE(sizeof(des_key_schedule))) + | STACK_ROUTINE_PARAMETER(6, SIZE_CODE(sizeof(des_key_schedule))) + | STACK_ROUTINE_PARAMETER(7, SIZE_CODE(sizeof(des_cblock))) + | STACK_ROUTINE_PARAMETER(8, SIZE_CODE(sizeof(int))) +}; + +typedef void (*des_3cbc_encrypt_ProcPtrType)(des_cblock *, des_cblock *, long, des_key_schedule, des_key_schedule, des_key_schedule, des_cblock, int); +void des_3cbc_encrypt ( + des_cblock * in, + des_cblock * out, + long length, + des_key_schedule ks1, + des_key_schedule ks2, + des_key_schedule ks3, + des_cblock ivec, + int encrypt) +{ + static des_3cbc_encrypt_ProcPtrType des_3cbc_encrypt_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_3cbc_encrypt_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_3cbc_encrypt_ProcPtr, "\pdes_3cbc_encrypt", des_3cbc_encrypt_ProcInfo); + if((Ptr) des_3cbc_encrypt_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_3cbc_encrypt_ProcPtr(in, out, length, ks1, ks2, ks3, ivec, encrypt); +} + + +/**** des_string_to_key ****/ +/* int des_string_to_key(char *str, des_cblock key); */ + +enum { + des_string_to_key_ProcInfo = kThinkCStackBased + | RESULT_SIZE(SIZE_CODE(sizeof(int))) + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(char *))) + | STACK_ROUTINE_PARAMETER(2, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef int (*des_string_to_key_ProcPtrType)(char *, des_cblock); +int des_string_to_key ( + char * str, + des_cblock key) +{ + static des_string_to_key_ProcPtrType des_string_to_key_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_string_to_key_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_string_to_key_ProcPtr, "\pdes_string_to_key", des_string_to_key_ProcInfo); + if((Ptr) des_string_to_key_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + return des_string_to_key_ProcPtr(str, key); +} + + +/**** des_init_random_number_generator ****/ +/* void des_init_random_number_generator(des_cblock key); */ + +enum { + des_init_random_number_generator_ProcInfo = kThinkCStackBased + | STACK_ROUTINE_PARAMETER(1, SIZE_CODE(sizeof(unsigned char *))) +}; + +typedef void (*des_init_random_number_generator_ProcPtrType)(des_cblock); +void des_init_random_number_generator ( + des_cblock key) +{ + static des_init_random_number_generator_ProcPtrType des_init_random_number_generator_ProcPtr = kUnresolvedCFragSymbolAddress; + + // if this symbol has not been setup yet... + if((Ptr) des_init_random_number_generator_ProcPtr == (Ptr) kUnresolvedCFragSymbolAddress) + Find_Symbol((Ptr *) &des_init_random_number_generator_ProcPtr, "\pdes_init_random_number_generator", des_init_random_number_generator_ProcInfo); + if((Ptr) des_init_random_number_generator_ProcPtr != (Ptr) kUnresolvedCFragSymbolAddress) + des_init_random_number_generator_ProcPtr(key); +} + + +Boolean DESLibraryIsPresent(void) +{ + Ptr symAddr; + return (Find_Symbol (&symAddr, "\pdes_cbc_encrypt", des_cbc_encrypt_ProcInfo)) == noErr; +} diff --git a/src/mac/libraries/DES/include/deslib.CFMGlue.h b/src/mac/libraries/DES/include/deslib.CFMGlue.h new file mode 100644 index 000000000..7f4277f46 --- /dev/null +++ b/src/mac/libraries/DES/include/deslib.CFMGlue.h @@ -0,0 +1,8 @@ +#ifndef __DESLIB_CFMGLUE__ +#define __DESLIB_CFMGLUE__ + +/* Prototype for checking if the library is there */ + +Boolean DESLibraryIsPresent(void); + +#endif /* __DESLIB_CFMGLUE__ */ \ No newline at end of file diff --git a/src/mac/libraries/DES/include/mit-copyright.h b/src/mac/libraries/DES/include/mit-copyright.h new file mode 100644 index 000000000..cd30580ce --- /dev/null +++ b/src/mac/libraries/DES/include/mit-copyright.h @@ -0,0 +1,20 @@ +/* + Copyright (C) 1989 by the Massachusetts Institute of Technology + + Export of this software from the United States of America is assumed + to require a specific license from the United States Government. + It is the responsibility of any person or organization contemplating + export to obtain such a license before exporting. + +WITHIN THAT CONSTRAINT, permission to use, copy, modify, and +distribute this software and its documentation for any purpose and +without fee is hereby granted, provided that the above copyright +notice appear in all copies and that both that copyright notice and +this permission notice appear in supporting documentation, and that +the name of M.I.T. not be used in advertising or publicity pertaining +to distribution of the software without specific, written prior +permission. M.I.T. makes no representations about the suitability of +this software for any purpose. It is provided "as is" without express +or implied warranty. + + */ diff --git a/src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.doc b/src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.doc new file mode 100644 index 000000000..95040d6f8 --- /dev/null +++ b/src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.doc @@ -0,0 +1,31 @@ +Changes between CodeWarrior Pro 2 and MITAthena MSL project: + + - ÒMSL C.CFM68K DLL.mcpÓ renamed to ÒMIT C.CFM68K DLL.prjÓ + - This document added to the project + - ÒMSL MWRuntimeLibCFM68KÓ removed from the project + - Changed settings in ÒMSL C.CFM68K DLLÓ target + - Added ÒMIT C.CFM68K DLL.debugÓ target + +Changes to ÒMSL C.CFM68K DLLÓ target: + + - Added ÒMIT RuntimeLib.68KÓ + - Name set to ÒMIT C.CFM68K DLLÓ + - Output directory changed to Ò{Project Ä}::bin:Ó + - Added Ò{Compiler Ä}:Metrowerks Standard Library:MSL C:Ó to user paths + ¥¥¥ Important: this path must come after Ò{Project Ä}::Ó so that we can override + ¥¥¥ original MSL with our own sources + - Turned on ÒActivate BrowserÓ + - Changed output file name to ÒMIT CLib.68KÓ + - Changed output file creator to '????' + - Changed CFM68K fragment name to ÒMIT_¥MITCLibÓ + +Configuration of the ÒMIT C.CFM68K DLL.debugÓ target: + + - Added ÒMIT RuntimeLib.68K.debugÓ + - Started by cloning ÒMIT C.CFM68K DLLÓ target after making the above modifications + - Changed output file name to ÒMIT CLib.68K.debugÓ + - Peephole optimizer turned off + - CSE optimizer turned off + - Optimize for size turned off + - Generating SYM files turned on + - Changed CFM68K fragment name to ÒMIT_¥MIT CLib.debugÓ diff --git a/src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.prj b/src/mac/libraries/Metrowerks/CW Pro 2/MIT C.CFM68K DLL.prj new file mode 100644 index 0000000000000000000000000000000000000000..5f53c8a05b1d68e64f5e077344cfc3d5546751e0 GIT binary patch literal 86057 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 UBtwOGc(v^(;<0rIpf2(M0nniYF8}}l literal 0 HcmV?d00001 diff --git a/src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.doc b/src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.doc new file mode 100644 index 000000000..8d9795c58 --- /dev/null +++ b/src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.doc @@ -0,0 +1,31 @@ +Changes between CodeWarrior Pro 2 and MITAthena MSL project: + + - ÒMSL MWRuntimeLibCFM68K.mcpÓ renamed to ÒMIT RuntimeCFM68K DLL.prjÓ + - This document added to the project + - Changed settings in ÒMSL MWRuntimeLibCFM68KÓ target + - Added ÒMIT RuntimeCFM68K DLL.debugÓ target + +Changes to ÒMSL MWRuntimeLibCFM68KÓ target: + + - Target name set to ÒMIT RuntimeCFM68K DLLÓ + - Output directory changed to Ò{Project Ä}::bin:Ó + - Set user paths to: + Ò{Project Ä}::Ó + Ò{Compiler Ä}:MacOS Support:Libraries:Runtime:Runtime CFM68K:(Sources):Ó + Ò{Compiler Ä}:MacOS Support:Libraries:Runtime:Common Sources:Ó + ¥¥¥ Important: the compiler-relative paths must come after Ò{Project Ä}::Ó so that + ¥¥¥ we can override original sources with our own + - Turned on ÒActivate BrowserÓ + - Changed output file name to ÒMIT RuntimeLib.68KÓ + - Changed output file creator to '????' + - Changed PPC PEF fragment name to ÒMIT_¥MITRuntimeLibÓ + +Configuration of the ÒMIT RuntimeCFM68K DLL.debugÓ target: + + - Started by cloning ÒMIT RuntimeCFM68K DLLÓ target after making the above modifications + - Changed output file name to ÒMIT RuntimeLib.68K.debugÓ + - Peephole optimizer turned off + - CSE optimizer turned off + - Optimize for size turned off + - Generating SYM files turned on + - Changed PPC PEF fragment name to ÒMIT_¥MITRuntimeLib.debugÓ diff --git a/src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.prj b/src/mac/libraries/Metrowerks/CW Pro 2/MIT RuntimeCFM68K DLL.prj new file mode 100644 index 0000000000000000000000000000000000000000..197a283aa40af2c5423e1d22e75f3e5b2ae65d47 GIT binary patch literal 83326 zcmeHw3wT^db^qMe>MhHXW6O^7+Bgq8aZvn6IARf!vmlj7Du%u(be1e0_CO*XKEcQp6>??n?i8RNxcdnIJ z;$x37_Rh!X4}>ISB%bSyXAkxaMRP4XH0F-kZ0hkuibn5c%Y z0W1Nu0@?vVKrH|@8mk9102%>J0D1<=z6>}etR37I5Q|-J{i!uv69zf3at{mK-Un$4NK09tUT+Ux(6*-af592J2k$7e@9vYlI!3OUgaNR>g13a3+-hrJr z#11AVs14maGStIk#x+W&0%*_Y9ZxF1uJZ&J`6R%0lp{p3L=mvbC1DLX$dX+h#94p< zpa!r6&~+rNmvKp5O#}CXWVHN_G@Lb5<>afht%k8pO|U z<#^t+laeR6BCXxYiA+424ed(J%*3e=UzwxW;twqV)!B>Kks=nm4rKO|F$RYR2S=Ue zP`h*Zx*?lkdC!i>)@^%2BeUsrDw7NCNKD7GxLC8Jf1r;vDZ_vaYaBNR+I!ZoFT1l| zat38sE5kY&+SeQ8??xFmIV9IK4kX4i(M*EJ#eR0Pd8yw; zuB$%r->*hM*l@xc{QwL^hqu#)lHITz~SW6tfP3C7wf@ z7hD$U9}Nx9CUc3II3m>vW#NC1kZRylZy`H1J#N5i#6t4&jMrHYT8)AC=6^d7%6jSQ zMWy7R*jJ3h{rj`IDEBfa*lRL=lsn^z_XLZ(CCx?6hN!fgzW=+t>J;^~v$nQa;1}OT zgsAs#%jpMRV^P1KG3tv312^w`7U7+MT5An_#-0S!Sv2P0BNz0#Xt-+iKI}0_+0C19d_8!bH0e>0z zIaFZ){~zGzw)R}!1NEH`{Ji937Ne+OAMns{XfO?&G=OW?9Ps;rlV%bB;L`{%0APd^ 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 LJ~#$OlHC6fNy)n< literal 0 HcmV?d00001 diff --git a/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.doc b/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.doc new file mode 100644 index 000000000..9cfd52708 --- /dev/null +++ b/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.doc @@ -0,0 +1,30 @@ +Changes between CodeWarrior Pro 4 and MITAthena MSL project: + + - ÒMSL MWRuntimeLibCFM68K.mcpÓ renamed to ÒMIT RuntimeCFM68K DLL.prjÓ + - This document added to the project + - Changed settings in ÒMSL MWRuntimeLibCFM68KÓ target + - Added ÒMIT RuntimeCFM68K DLL.debugÓ target + +Changes to ÒMSL MWRuntimeLibCFM68KÓ target: + + - Target name set to ÒMIT RuntimeCFM68K DLLÓ + - Output directory changed to Ò{Project Ä}::bin:Ó + - Set user paths to: + Ò{Project Ä}::Ó + Ò{Compiler Ä}:MacOS Support:Libraries:Runtime:Runtime CFM68K:(Sources):Ó + Ò{Compiler Ä}:MacOS Support:Libraries:Runtime:Common Sources:Ó + ¥¥¥ Important: the compiler-relative paths must come after Ò{Project Ä}::Ó so that + ¥¥¥ we can override original sources with our own + - Turned on ÒActivate BrowserÓ + - Changed output file name to ÒMIT RuntimeLib.68KÓ + - Changed output file creator to '????' + - Global optimizations turned off + - Changed PPC PEF fragment name to ÒMIT_¥MITRuntimeLibÓ + +Configuration of the ÒMIT RuntimeCFM68K DLL.debugÓ target: + + - Started by cloning ÒMIT RuntimeCFM68K DLLÓ target after making the above modifications + - Changed output file name to ÒMIT RuntimeLib.68K.debugÓ + - Global optimizations turned off + - Generating SYM files turned on + - Changed PPC PEF fragment name to ÒMIT_¥MITRuntimeLib.debugÓ diff --git a/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.prj b/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimeCFM68K DLL.prj new file mode 100644 index 0000000000000000000000000000000000000000..3a60365d79e2505e88d2df4073f09ac62f0bd131 GIT binary patch literal 80278 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 ghEz0jm%-EJ`5S);lw&0S2f4b&!2kdN literal 0 HcmV?d00001 diff --git a/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.doc b/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.doc new file mode 100644 index 000000000..2536928fd --- /dev/null +++ b/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.doc @@ -0,0 +1,32 @@ +Changes between CodeWarrior Pro 4 and MITAthena MSL project: + + - ÒMSL RuntimePPC.mcpÓ renamed to ÒMIT RuntimePPC DLL.prjÓ + - This document added to the project + - Changed settings in ÒMSL RuntimePPC DLLÓ target + - Added ÒMIT RuntimePPC.debugÓ target + +Changes to ÒMSL RuntimePPCÓ target: + + - Name set to ÒMIT RuntimePPC DLLÓ + - Output directory changed to Ò{Project Ä}::bin:Ó + - Set user paths to: + Ò{Project Ä}::Ó + Ò{Compiler Ä}:MacOS Support:Libraries:Runtime:Runtime PPC:(Sources):Ó + Ò{Compiler Ä}:MacOS Support:Libraries:Runtime:Common Sources:Ó + ¥¥¥ Important: the compiler-relative paths must come after Ò{Project Ä}::Ó so that + ¥¥¥ we can override original sources with our own + - Turned on ÒActivate BrowserÓ + - Changed output file name to ÒMIT RuntimeLib.PPCÓ + - Changed output file creator to '????' + - GLobal optimizations turned off (because of reports of optimizer bugs) + - Changed PPC PEF fragment name to ÒMIT_¥MITRuntimeLibÓ + +Configuration of the ÒMIT RuntimePPC DLL.debugÓ target: + + - Started by cloning ÒMIT RuntimePPC DLLÓ target after making the above modifications + - Changed output file name to ÒMIT RuntimeLib.PPC.debugÓ + - Schedule instructions turned off + - Peephole optimization turned off + - Generating SYM files turned on + - Global optimizations turned off + - Changed PPC PEF fragment name to ÒMIT_¥MITRuntimeLib.debugÓ diff --git a/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.prj b/src/mac/libraries/Metrowerks/CW Pro 4/MIT RuntimePPC DLL.prj new file mode 100644 index 0000000000000000000000000000000000000000..4cd7f7829806204cd4318e417987bb86845088aa GIT binary patch literal 91916 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