www.digitalmars.com         C & C++   DMDScript  

c++.windows.32-bits - help porting Fluid studios memory manager - fluid.zip

hey folks, 

I was wondering if some kind soul would help me get this memory manager working
for the digital mars compiler.  I have made about 10-12 minor changes, but now I
am stuck.  I don't have too much experience with the digital mars compiler, but
have been hacking on it for a couple hours and have given up :) not on the
compiler, but on my skills being able to guide me through this port.

The code is very simple - but seems to assume that u have a microsoft compiler
(stdafx.h).  Anyways, any help is appreciated.

The diffs are in the fluid.zip

the original memory manager files are here:

http://www.fluidstudios.com/pub/FluidStudios/MemoryManagers/Fluid_Studios_Memory_Manager.zip


begin 0644 fluid.zip

M`/D?#B
M.W8V=-.<!VCJ=\>[X[U(=3IP\%]_=G<Z'=CF$[G_V\)O\0=*>`01_4;5D1OX
M[QY.`P>_A;T(/N.CC_,1="#Z[)Y$MPZ^1Y,%?-5/,[HM98C*20^G!_YO/OH8
M1:$;`Q*VBLE[5(VBCN==^:R'HVK1TB.".Y(SGBD]A8Q)-N`:'H/5++X1< !&

MYIDT,R:;7>(;?V:27*(Z6L16*&E0[[[F/%&9 1'7E E))K`*<H-V<8IIG BB
MZ.5$`JH/=BC,S$R',\:P#U?5)X#C)]WN=VZ)$G'2AZG*D3U?9`--(6'$M`6E
M`8>3H4IYRV&S'.T?DQ 6:5"HW`Z5;J]>,V-3D,I"CZ/ !S/)<>M6+X`C!IE*
M1%_PI'2FOM*9VVJ5X\JXJQH2%><9EY9Y(T 8J G92?7(:, C5J.I-P['%<1`
M2);"1.F;F:"_D2Z%>,OZ(Z]$:![;=.HEG'V+&:'1XS*W("Z S1KM<3S2:BP2

MN`-OKZ[>'78ZD\FD?9SF(GEO\T0HTXY55B]GAXMB%\B$FC/R`=RW)T\[3_&W
MV^U";PKO6)[".;<VG<?[*]Q))!U:(%0(3DTH]`SA1,;M$)`M.)!!/S-<CWG2
MKHONNSN/1%\FO!]$;Z.SLS>7.('?A.3SB1KM$WF;F1K+,0G9(7IEHN2>18<?

MHO'R90. TSEZ<T ^]KS[_%D7W2A38Y\50DBRF((9 VJ4^J1<JRV[FHZXJ8^9


M>'R*_K'T"/.+BEWB)5O3XYY2:1#T,)/=7,B?N`,LS5_.Y]>P.\^S'M?."%5K
M!?N2?[$KID>:CW'Z3S!'Q.-:"D+=M;DW]L*25EF67A86\^W6DE .<^2LO08Q
M0K4V,"'(O3Q8C+4[3ZD";&!506[+<6:55RJ7=HV&]V.<`G<A:/"S]]ANF!>U
MBOS77[#KI
MIENALS(^-T/C[:&:;X]->,HM?P#T`=I1IU\O?\5&-Z%&CQJ)C,5:U<A??57)
M(L/MQ41RW726!2H=L-\7U.3XF:JM(<5R43XHH%A?6O4R^]&LWH"K3",E:I4J
M?-%\G$6+=;-)6P)WZSS9]B[!3YL(ZM2MD>_C`: \GF;^[F/EC4>=(F._2"O,
MJL78F+=;*R-DWE8MQLF\&PNQ!`>!NQ%:0;_8>Y4\?,\(U9:1]GDF:I&#OZFP
M*\6=+;Q98#S

MW;O3:)&07N9-V[""$*$%;<UVX50-!E2*_(4SN:*[\JA;IY;DV6BK,%A, GB&
M[HLO\`,T& NI%KGY`Z8_EB[U?Y)EG*BP8'NCM%,U:)2\*<Q`C;F>:&$)AR=Q


MUA]QF8 ^X%;7\;;ZS!TB41AH_"P2$\*(WOKQXM+:4E]-KV2PVQZJC+?A5[Y'


MY>3<:(3=$+,KKE"FBG(1?^/2-%];0>4\L7&=</'&)D3Z.<_X'_*,5_`LVOCF
MR.K0,ZZ>*+9D7)`  Q#Y5
M61?Q_ )02P,$%````` `;0ZA,"GACI9R`0``\ 0``!$```!D:69F7VUM9W(N
M8W!P+G1X=,U2T6Z",!1]AH1_N'$/0X."0P34F>QE^XBYF%KJV 1:TQ;U\]<B

M[.IX!*;JZ64&!P(4[0EH`84`39F"K9!0L'>F40D5D JPJ';,5`4&)Y*8&K-E

M>(S-9ZL=3)%T!CLMX=%HYTJO,5)Z88\'2U]I*3&5OA*UQ.39&`O ?K6Z[_?G

M0M*/`N;61FQLQ(V-/QD(&_VM`84J`D !VHC]UU"<7]J'3?<T?PC2/,9M;%0X
MWX;D<&H)+B?G1[;49EX#G%KDLWL'4<?S.+'9]$[T1)DE49`E8]S&F]691UF0
M1SENX^WJG$9!/AWC-MZLS ]02P,$%````` `HPZA,$D8"JQB````>`````\`
M``!D:69F7VUM9W(N:"YT>'0S,4PV,>3ELE'0UU=.24W+S$OEC(]W"_5S#O'T
M]XN/5U"RMU=2`$HZNELI&!D8F!B8&!LH%*7FYI>E*I1D9!;K**3D)BMD%BLD



M[FED:TMM_MZ_+[_8VE+_T>__.W.D1OAGU+[B"[GGWVCD[^0OS_Q9;8S4/^G)
MA^9*;:G1/_G-Z&=,I-L1OY4Q'_S,5?_KC>3? ,>WN!_UE?LK,_D9_[^Y^C`:

M*M69GIA<?:W*7`>?XFRB"AN5<YV;>NAS4Y3J(C9S$ZIY7$[5X\U JFEX21-+
M/2Z4SD+5TZ5*C"[*OMIYN*L"FU1I5M2+W"UJO_&OQN24MI/'01G;K*!]1[DQ
MH4T+-3-YJ>,,)"BMJ JB"V\L-V&,&>,*4Y2-5#F-BYI,3^J%U0-UWGZCZ'IG
M>_L^ _`C#B-U92M:WBPNHWIQIF8Z+Y7-%5W.IS8Q?1Z;5D3_`&B4-(>0JLJI
MS8>K8:;Z2F6V5&-#B&_6F!/K5 . *ZU2&\91;$(O5Y'-4V:UK0 R<357H0VJ
MU&2E%B)D:FKGH),= VBT1F!G5T(<0Q#B29SI1

M11)8(F^N[#Q3>5P(HKSN*T*`U(/6RT`*WO.`5*` #OSU_/S')UM;\_E\^"JI

MWU\0)VGJM%08-5"\3>7V.5"'63`<*%I6\:""Y*PP^84)AVNFZ/?N'1[]>')Z
MOG]\?N]>_?2:P!0FB3:]>'L31\8 )J4(2*Q3/"^&9`8CB`0TLBBA1U7!MJ*]
MW `367LTK:OS8`I=8IV`(F831J&[^?+DQ687TIS8 !C#MB?."$Y;XI0>0VJ=
MHEW3F$9<H5C8C$X*JTP6D%"3\0HQB_ >,GBW#S4FB)\*>I3;:L):X1:M\L"H

M$ Z#K& 2_YLH7S*ER7:P$NK9+(D#WG?1[.SXY/S K+&P.T-O/R>FQ)9FA&^N
M3)[;O"`+<>&,=VB%BX4I1YF9CZ:$-PT< !*9FEB__86]8V_"LZW<S!(=&&\.
MNT49/GFRM%A70'27'P\INMC:?_U$S6&S+HS#AR%!%D)2RI),8ZH)9;\%Q Q4

M<)KL'&FK"-KI_I'JL0G%BXQ%(]=S/P!2YV<2\RJ27PT$\+8_5.]JDO =C8U8

MR**4 V9UL"VOLLQK$/U8(M6[P^.'NP-QBSQ)C:%FA:IFI()AK!,[46-[20"F
M,7;C"%&`$D/UTM8J'`LQTC D-L*1$78MJLQME838UEB'C7P^))H`MS*_<J)G
M+T :R?\HDHFMT"2&B"ZH'KUZH7J"Q90H$9/EA.>A\86+*R:)'1/KFIE]1BF)
MLT\TGQ42`I,0-4D1,D\)FV-Y AW%E[(75HB!,QFF410[PUZ>J*U7)Z<O#CQ-
M>&$2S8"5$LRK8MHK<\<$%45X1!!S0=MDB7?HB-(-/1+/R<)5XL:#J0D^$6"2
M3*^:1A.<,D[%?#I


MR$Y,*"S2]-<BY-0%B02;"\:)(S]=,M(]77/>:0^\&/ ,?KL(+$AH:03Y9XC8
M G,B_3ELM,F'_9J0WY#T J.0S+;]%6ZP6&1&_(AW'R"3SHAR04!.) L88/>K


MX9Y5*HX\$6G8!H=Z0(4%`&Y.YZ%[1,CP1MK>"HI+ >:_*$"54:9XZC $JHV)
M 9]$%;$%5<Q,0`%VT&SQ2K1V6*=RAZ4JIFQC(" BK%B =GZ=SE<.'_4]^:/8
M#J
MRUT+8D8N:.6T*S!Y!S-IVH]MXBVB3)*[C+&;O"N35[]\V+QDFMX=*/[&OR^_
M`!X-FD1U'5T2EE]^T5";(FJF]U[[H6?OTC/A6?NAN+QK(^$!EQ["]EY?4>?+


M"K"8N2ZFJD<+,1)L!UK&O1 .APX3S9'SN**HQ8XO8EL5B)0H$B5#U Z9^NH,


MS&&V;,!KL ZX0L";H%"=O(,+>9SG\DX+02AB%[H\/X5]6<R?U+EE'"1DRD*9

ML<D$)9IP=GYZ<'8V. ?-4AWD5O7&)K%S8K0DJ>(/:!4*GO[\S?W:MSNBCR4A
MI4>2A+%/1E+/P9-F+VD8_U8<VT1BY0JA=MEKL13\1E46B`<]C)R<6%-`4)#F

MJQP">H2F&73/!^T\;HA7'$DTFXS9E6`TA=F<XI%H(_+..'+!Y2R/*1=;(!+G
M<B"?SX6&Z !+! AF>/^4& 4D9363.%\$7MV#X_.#TRZ#XMO_/CSO, X<DW`\
M;R>.D"P=%+BD-4]=D-%LRF]^(`ES0P`'B)(D"LE04JNA<0+/PW \J *..5`5

M:BESP(2+,QU>&([OR-R%.B4(3BLI?S9Z-F!K`&9(&MHCX8`EXDO8`517Z<K;



MMD!/8[-4<*J%3A9U\ 2^SHPNZY2<E",PE,9461DG8MDUF?FY4R=4,[&6)?)E

MJ62RBUX+V;[GNI?JAG!<8B/;Y\IT54+VB$.0)IH FK+Y=&D/P[[9>2Q;7HII

M!.K"?UFNCB]44$/2T*F=PST-7,$`\8)&5$$P?5%$ETW^,RW+V0V%]ZU9-6ZJ


M?"R!(*E"40/!('C'RGI5FS;D5D6Q62(J\VJY431&GF2>0TD:VJ AF+19VDV^
M052^CHQJJ?\?BD%W<(:C^$T?? W5F2G5Z?[QRY.CT:O]PS?*15`4I 8XBYRP
MM8]TG)`&<[[`2,C/ V(87+GL;:MG%*]DQ/2]G6W<()[ST_MKJ9&MW;\]/5`[
MV\/M-63X&_*A24$HR5$R AVDB%&B)QQ:%%7L^(S<;(TTZJLX0IEC09T*+IEV
M4/<M.U56Q!/DUQ2^=\B33Y\C9UC\/5,[NT_K>9TQ)8>=3DY";--W\<PLC84_



M>8&+Y)8.^D[8],S='(;.11U*`DV0:' /+6= H53O9Y8HVF1;YUS<.CGSIXQ$
M:8R\4OOY11RJ8YN/33Y1WVO<_B5&?HW`=&^-?(HS=:ZBVW&W(SZOP;US..E(
MMMB[[,-I]_#O9TZR^VI$;U/U$\1-/52_8)ZH[<KY/\D`$3P:2.O)J+`W&H&<
MHU&_1D5Y3#IRB*TN+%%6XG63]UC>%1K/U(.48 =R_OVG&/WK$*_7X1+U$\]'
M.'\3=ONMC? %U6T[*4R'^/HFSJI+.7OWDNN.5`UG1Q#A0D>4?GG9C)O262/*
M_IRZ5?QQ=:'A*L(2)<*^:M^LI7;_U>1RKE]6.8ZW(]9RSE6;O &<)4KMS&>D
MK;-"G/N[PO+<4N:T01J\H5P_C3R1<_(-U3-E(*DO(DDTK,E!G"&',R-?(,K*
M%1X 0)&EA3G1+&-UB=;GB29=**.T4,*&4#SAT
MH5)]*Z6-^C98O'4%C_I>NA?72+!>FDA725G4K55L&LA!H)U3O&/=SB%MKD>^
M<(E3\?7AE+CP11].6 [JCZKL4P:/6/OP[:>W3X!W6W#Z.W=/&*$A\LI/V+UC


MA<8'4B$'4NNC/#YH7HR`<_*5ES_JD .(%M>V+\=:A]'V=LB)R"ML<^:&P8R,
MKQ`JTG2<ZG!UL-ZV=$S>!-`6Y0J(`$BD"X/MT-P&,+($9OX9\(0U*S<8$>81
M>=+5\$B.BVER]6OAY`:]_-< ^7V-C8E6PVD+C(>P1NIRPA7[A,L5:R?+-^2\
MR_D<\V%'??^]\AGQ<E:(*+G3>="DU^=7,U.\_^CF_M1]*]ZE.T"\RS^ENN00
MN ,> LOW'W'3%://S[N!NVY/<B:;!G3%MC97O$(7!K3[2RO++?8QX6T6EYT'


M>VEB(AZ:_^JARQ6*-HT;(C^OHHCTQ,TY?OOFS4TX+4WQLMK&22UL7(KO;^QD
M 5RT\>80OWO[5.):>[I,)7/UJ5B<W.D NN]T0OMB14FEUU\O1_X&-JGNM$"'
M0G*U=A:*"8J#W78V




M.O`=5HQBJ'IH0YESK6YL(`=-O2+RQ`/[[]$=88&:0$V-LUDLG<5`(-2E]N<\

MNXM^^$7!DA+8RI)Q8^LQ9`L]MZC::?0?H)W=9\^>R!TT3(W*#CP +GLP^[(^
M-+Y[]WX_[]=MK=V^%H=POU";_B-5B!AB9);GUJ=L]PN2 B4]TT7`R'.(QU=?




M]*45;T3AV);N>(+-<YW\3:HX=%VTDH O?9T'ECZY15_>W_M(VG(`5B^_^1/>


MJ$Z#XL:G#MK




M0X<5(MH2R\$";BU\VAPJ\S\`:RCV(+E_8=-4%[T%ZG,I^`8"/_PU!+Y.XHH(


M>KT`^X\FD^*.42XZ$YM1RV5BT5]/+VY7?,X2F.`H.>VI'KJ,'N!/O[\LDSO;



M-ZJ8QE')K0V22,\YK<9'6'%9N,\&XZ;9(;5%TY 4"F0'D3_]D:,X_G2NRC<'
MRJ"/?A.Y&W]]7\27I3'9)IBMQK;")PPQDK3#B!NEY-,]EZD-EC!WGYK :QW\


M91Q:(1>;5X'%L_'Y\C63Z K :ZDT1+]1B1Z.H$(6O\]?[H"J3FMD0$V"L\:P
M;G$'' 3SY;N3TY?H;>,6'==&.)!OV,0>DQ1/*BW_]21?^7LD9D>^0)-2(L9!

MIAR-00$WBD4,>."WCQ8'XA-? ?K8CY4.+7RR5F.&G%X^>4KXH]I$YQ/_7T 1
M`J"BV<A#FY 4L[?[+A_X"`FS^G2[^P<1G/]K[\J:V[B.]3,?]!^&K)($B.`B

M128P9\[:I_?ET%M3"#JI!:E;P/E`P'%;23CODP0;5F0_J$&-8M:`4LMB:W3Z


MYZ,.6'[=63_C2PDE+K(:<"3.9#IBKU!V[Z89L7)7W/6IJ?[!`N1V\IV)$,PU


M8I+LDK$7O$/*-S([R.&)\)$U(=><E1!'D1=EQNH3W(#WNFA638MF'58$J/BS

MIFK'>*W]D)GP>5X\[\<N8><<_"PR=8`BT!FR)A>11?;,;.#L.5)M<>H,>LED




MP\Z,EJ)HVR#L^EP\[!V=#TL!$'8&V>B,H/!Q().S:-.TPJTY/>;\%Z" E?.6
M)WGR/TE+!R)9Z%&;?MK<["18\.8F]D8VQVZ!'AAW)%<HV+A)-DPAXXE/1,5E
M"!*J[]>T9IQIN W;:W818[=GSAT7^S,S^2Y/OI-X`VX^)D3 K49']'<6 SUI
MM0Q$DDP(7`$4XOH1B='[;O;!H9,?)GF9)39T`CZ .^J9*<P;-V2P(L%RDLT"

M!.ZS^_)`EAKZN2HN7UU'B^GPPMD\BQ:<<Y('_0ME3`)W$FZWG20)CD*]T7BO

M^9C^4MNL,>(:6Z^8X1M&EEWSSNU*?R8-_UWFXV;(5W0F,!MU$4.R!5V?BZWJ
MC'+6%87*(L5&H4O1[A<]0F9W=[_\Y\S_W-WZDK6L=XW3IOQA/)*XXS56(SE[
MN9RR/INC/HOIK]J=)/ 9.[!$;R&:T;X<?M&>AHC5Z`IP\4;I[VX9XD%<61M^




MT=0`X'BR1UAO]U%O1__Y2X^_[ME_YO?K/K^J/R?MZ=:3<G R)(C:3!YZ/_32
M]^[;>T1WTO._(C>]^9$$KXGW0CYR7XJL^TF=S=R?Q<J<EL5V.2X)MQOZ)]SQ
M':6+(8'K68]B.L>["#R
MAI4P"92&8,G629+VIZ0S6O?8 355%D+6[VL=`X[&FU[8?`': Z-(PNF+IB.,
M3/!I_RPN(Q+08!D.TP''Q%8'(&Y#J
M&F!E86BI<LR*D$7"6E7O:F>'2!,3"L!YKT&B,J22EXA(50=)EF>A<GFO*,7;

M]L6+']+T(TF52T$W7G17K+^U85&6^RL%-J)_?,;IB>ZI>HO3%WV3BE*ER+P*
M"B9KZX[3Y?H*0WU]=6"&0\#N(8*YDM7&8RJ?<;[_U.:*E0H$*><+-6B`.#ZD
MVW'95"\SR:2:E'XBW3O.O%4=<+7P175G7G`"G\BFJ)M^+7GN/1?>RII19'1U
M86O5?9#N5WL
M\5=UD\1:DF&6\[=(")&:<X)=H5W+.3LH[QNA&?:YX<BL4OR-Q-O=[8XSTZP<


M/&E?TL+FXI!!HG&XX>.1V^1<+5 X01N<X^7_YFDC.WP012BC$TN`M*X3SC4M
MEGH779A.O<A"KS(/JQ/$;RYPX:-EU[SV;FYYERFOS $M6Y)-%F<9/9?R3=0)
MFQP!]GZ_E=E7U6:0GRJ)57[]%9QX,KMM=XFV.AW=,(-WIU45W"V&"3%,[U/`
M,$\_<0S36WT,4[\P3U?ZPF E, VK9.\/\7[)N]-!"2\)4Q+,NTSQ&\$N<2XL
MTVT<.UZMSJ5 Q;F]$P=VGJ%VIZNJ#MR)QJ0?W&CE3O9-D869ZU9(S-3-I]O]
M&C:;,"=$4[S7H!;IU7<Q7CM<RQ)Z&J3DHVO\'HXQO8RCH27_O'4:M"XYS^'0
M:8N$.7^;,.`3 "Z5/G+N=?).Z$BMYIZJB/*)JV+;YY(H4A8`+\FX4FUQ` $(
M"*A$5=HVRC+8>GS6%5_=W33WH=0\L&3-I/S`]"1,6WQO$'2*I&X0.C$Q\0NS

M]M8[W9,3F)M0TOKDY,7S5_K7LS>OOCE^_OK5R4F; /*)Z6+O=_FC);^:_(,-
M;E2V/J%$KK!_'V^/9(&0KNXC=[^88&B7./^BW3"T9DT,U,)2 +&7C>P^F V4
ML=FM"D,'>P-/PLI&H$1RD?FC2 LX74GE!VG7<0UIVV,-96!I_94Y*$[[R6Z$
M+7COF-+*HE<JE+;ULHORO-UP)$BXDM#V8K,?TE8W?C"X`6:SL[I:O"H=X]/0

ME--^/QRBDFQPYH=>.\7YY:/Z*CKBP4C'X-T+?FN9$?`)1WFXP"C+CH"/&068
M:3H)(2DZBMXS$_7D#KTMNTS?N4"K;C1KX`W?5I 24%*=S>%UQA:9J\(T#CM.

M`8:5:VN(=="#HRONI

MB5`-*4L.7OU+DGULV6Y\+P$I2V5N,+]*\LA`BL0S.6- 8  1=U UW A^I\V8

MI/5CM;J>"<;#W*RO-C6;]+9D=/C*OB=NYG3"07C8:%,_%.54M3HQ(7;"Y6T5



MD%$)*W-1&M_Q'DVKRP$#O%NN,!IGG]+">I>Z<! _J2G EX.'+DT=8$XF`XO)

MZ-+1 J6A[X#SXX"K$K";9/\WS2<BD?,15= C";+0]+!ZF/*DARX &"L']3S`



M>D;"!5>Y:C,I8`$]-UEM`'C.S._R0[)+OC-"63L_YZ1!SIY7KX^_74\:5[-G
MBW\*2L>V<\X,WSW/]\QKR)7A>1'0MKQ^E[X'>!:I*5/*;!9'4+O`#E23U"Q5
MIN(E#DN]O5RJS<?L7;9O?^2%/V8)T_W(&38?LY"U:D8FW_D/M[O\&\NBA;$T
M!4O5O*#A4G

M&IH;B>K68AK12FYZ_9^^3;AXZ!ZZ$M\M5S\"]_1(&07&A'T3HQGD8NT+6`8I
MBF()C`<"J0YL]VL]">0Z,+;*98X%+ B)[?DJ2-`QPE:L]M_5S!<>-VFTMN+9

M6)W'&LLZ`FL\`*'RUOZ^'PAU/!$^WBV5&VK$K7 TJV4'8-`2%9OHT["''6OW
MH5/MA*"!3;<)I^Y81[B9L++F0<L_GQ\G'K2L67AAM[0 EX(+4#I6>LV6-%,5
M&9S79,B:YW.I(:T;UTFRG[O9!3 K2?YGZB_F$J[GU=V`/4&,.>`PQ'E9Q]1'
MS-.F*.DMH(MJ&"<ZT-J(X[NR\L3[L;4K"ZO^/#KWG!&?]ST>9!2>>T?8&S6G
M\%[3NVZK6P_H:ZM=V2).1XX80!8[)7F_[H,]?U.6YAJ/3,8JRM[>WFG:$ZAQ
M<ULY+_DZ_OOQ[35BP!_?KC`.!"<OF,A01Z"DQ*]Q=8L4%T2*4O;CIE"C`:-;
MY/ )(<?HH7U2Z-%LE&_)NBJ7C40N4[4XOLRA 2+)U!7,E<0"DVTNW.>5Y4.]


MW0P&NV6L;S'9'Y&Q5L6U6+5V3%6S>8QUI?FU*;$K_79X#IXZ^Y-A;BN&QYD^

MS#P
M/,(IO+V284^V]C`S.!.W0*10>` 4TXFI,DK+2,4FGB!IY,3FWQMFI^/>>W6`

M,%TNK^/V1O!V:(R3A2X(AX+_8G"X>EQ:Y1H2GW;-%S'.A*WR5:PR,O,O)&C7
MS=Q)F<OMS;R!FUD%S-7B. YDT3;.%BY*X Z1KUKHQ0-?7+C6JB_1U\(+8YHT
M6X)*B$+"PL[F8*OXRU]66QE9#XLQ6SY"53#EO#SA42-DT"I>DG9ST_'VA$08
MV%7B=%Q\C.AOODU0O<; %RQ;$Y.UZ)]>V^*5^+AU?!-^?QO*;]5O5\-"*L`T
MQHCIPK/><O%':RYLJZ'N[_KC)![J$TYLE,$AEWT0SXPDY/*LH$:<UD)W4^"D
M".ZDUFUS3^[R;_&CS[_PNB3\ YRSVD&0TR5(R$RTC,=L:9HJ]XRS W_^A5G'
MK!TN*UF]+/).<W5^2\TLF=;" 5B;<AB-$21*=DKDH=Q&%/R35V/#K"2,HN.W
MGJ:C,_:')6'U<'Q*)& \6M?'N9^K!RH3?EDETXTWUM'33O7PX"5/KSIE%_J6
MENF&-_K7ZB.,\IE9;PME88UGF3D.=J&?3MQ!Z=N:.LS^'-1`BAW)VIST0H"&

M8,+$7CL*2D"7V?"B"HL/H,,2:*STW*FE66(EUV;RL.URE09 K7MDP0;CZ6\`
M!/X:W1:;* E-]J,/?XS,97,3=9+L`[N%OCZ$T"S2?R=]\)ZJ$81OHGI.LW>U

ML;\?7W!Z?F:H8(TSF?<&?#FDG<)V.FT`:CD6#C%W^6CU\QB<8:WB2%W_IV3W

M>`I[X1>85B9/DE,/^;H9'Y 2,`:9AHMQFJ>*NDOH[;.WR6'*R3P(7Q++;!1:


MX6MM6VI(JVE1[]1Y4NL=*NYV=3[ :V+S878U^+LV-K\Z?VQ^VXRM=[EB;!\K


M&X>(NGX1/80=\O:,4NI77)L[)*$,RJ$L77(8N,7+JK>3U\%R-PR.6&QC);[$
M=`G)>)CV;#R-2MLBQ


MC(1+_FCHP$N!BLTP&7_SICGJY&>2Y/NA727S.ZL2NL:DE"P KU435U;F_D26
MN'UA<Q&:1^W&)\GCI+'#V

MZPPC/,FZX[-1_ L3E[-T<DH"L2B4:_61P!B+^*^_>.BK*PQ<&U6FLVY9*!64

M_(8(3AS8[4.8K>(1SY?`TTEYV1VA;__)?;7'9%6SH8JKF`[F:[B 7GR2^!_L
MHNJY-J"46AK5>Y,Y_* :\8^B$H_JQ&6M["&!%ZU UO9S9D5HK\T'M;"^5-3J
M\_2E7BJERNF *60F>K=['JB0B2OTG5>>^ERK>$'H[9')K+\5Y2=>VV_<EQM9
MEB'A*^>_<& SF7T:MH2)9[R[>6N"GZUOCCVA,[/X\`>8&?P5-Q :ODDEN8TV

M+0I+V7-^OVY[3O4D;LRB\\*)AS.S"EXMK>"\$[9Y!2<.O<$F$,_<R?E8:BDV
MJMJ!4!T *H":+<*(^LU#J[+8CKXQ?T56AU+90"/7F[QGS#VZ83DG0R\=TF*T
M5"!Z-VG3=,QT (P3[R61"O>GJ ,;<J&Z)+RKN(23A!299+GQN#L]LG:RUP[V
M+F`!M5$Z7<3^YY0<03[6JZLY=#QK![HA-4?UFLU1=,R`Y(K2JA&HQHVI:"-9
M:'5<[8Q3R$BV,M1*+F1 /N34`[F=X`B&>3$$/Q;1H84K;TIBNU06V^72V"YT
MES884WNI?C>2_B`]<\D!JY<-YIZLI%L_ZHFKM_IBJ]BFXZ()8=Y\(!?&+QQ;

MYN\"P9%V 6:MH:KO<DJ!.70/C%\HY?%E]ZD?<HU$9A+_U5OPT[%28+=Y\DPC
M$P96X>&L-Q&9Q-1')P')&; 6-GO)6/;=B)WHOV$8B\S'V'5K"N].$JS<LG%+
MF<I"8] '#U]AC/_(AI'%[")J!`ENM1MG&\E4V>I/.&&<T$2(_[D?[&O013ID


MAL-!1).D:L9FG?;6=>KCYW86JEUUT6\N>H9H>8NP:A<LSZ-8\EK8F4'HC\,;

MBEW\N$+E26B`=M:P^D;120BH>PX%?$?=H%3.F62"R:J*"&8'`?":IV]A*V3S
M;=OR[(H1_F/]<4PQ&GH3-B"CT)VH.E7C0W5EPVE]LC/MILV64W"F)!1*(YU5
MD\$S;F.U95Q->3W+A[ .C>4>TFW;VEBM-18_>-W8YOBM;<VVGCE7_ Q&]9SO
M#K,MR5=M0_\:+=<W:JW^0'/U0O;JJ,%ZIL7:U_G]H<S6?PJS-.&)7C8HTQDR




M!RL,<A$%-MTA]3QGVU`S^V Z&)A09,V0#G=:R2HR9I%2&IH4Z%SVN\W<CH8T
MCTQ*"+8LZ-BG8WKK-,T')ML\=VQ&WVXG1V/(RZ.N9JS!WET6TCL;)3N:FP2$



MOZB5..S$MQ*[3:GOBF?+540H'Q0IJ"M7O=9 %_G3-J;BM05ZE\0)"_4N31?L
MG7&I^<SM7>WA"\]]N=Z[-]J[<35;M'>%]63)3SM9`CWX1GV=RV)&_; YWHRZ


MC.:#RPHE
M_^[55.(?+8AH(5VX,%+-BE1?82T*:*OUUE>7TWDOI?+^;>Y>A[90P_)=IWWS

M_<^D:OJX&D6B2R1I3;B`'^8ZS'N2/T* CY!73J_DU,TO<NBRK2)60::Z ,A-
M!Z.[2LCPG1?W([T\Y4Z.Z<UVTIL.+UY8*X$X`"VIL;J*MDJ!::ET2E$=PVIF
M59(:V<>XP%RJT9$Y<`!2/OY2I$M(65U<$Y*D4BG1A;,WQ/$]`!OLCAPHM/DD
MM`\N^.41<93C2[9GF=)])1*+:K+&LU5*QL EY;T;H&X0\W52M("_2TI46S7.
M*'K9']RF4_%0H4E&R4"F6LS9R `CD.^O6/*\ZK;9!6CXB/TA>9!:[&XW[B7J


M!VH*_ ^M1'+F_,? 3MX? A(9%0W[^<^&S40C89(L!CRP.ND*:0<=ZHXGD^E%
M:7EE*#A




M\%>?!OK,<\ EG`%A2'9UKM]=A9&:HQT?I; ,X<%X9"085DAZO&T S,OOB5;%

M !?;NC[36$:B?STY_C<?_(Z-=S-FLR7[!_R3=4O:-]DG$7[L'JS/R!%AEVLQ
MG0K<EOWUSDGQW+KB*G_F=GYSU7IY)8U?RPW0MM6(?`-.3:WO64'6P>'+P*?8
M&,W_+\*8X`)P[GGAS`9`6L[6*2K%''&AH__5G.PB4QT='WY[='0"P4C*<Z.+
M"KNO0X_[?97YNN,>2<<'C.\(1XZ, .Y''A ? R(SU0<*"42B/7.5?M5&P_[D
M[4Z$W.X8H]XV'1V+W6R.S+6.NS7V:!'Z_G3  H5-Q6 ^3IG30*O#C[OLE$RG
MD)67&9\9W40)JF73_KFIDRPS%/&]DA1([]XLN-M?"&`0*_%39DU<UK;%M&LT
M+H76*)UC,RY'06LQ<*-BC6" 5`87%L?8<B.&+RDIY9\(_<4C<9$(>FEH&7PL
M ^FND"*4E&"SF=T; [)0)L2N'R9YJ`T\/(?[*U^-*9[NY0]`-C)%$X!;4SUU
MDKLUJM="/7I,N$_[SE94/F?=(M418" [HP8*YU,J7<FZH-=5E/S?B'(.BG83
M`."+I=O)&\$&1<448"-7QGV1_-$#BVO<7PO%Q\'4M%>'.`>T;PA;45=6OX"$
M6O%:42&2B5!-AHRTK4BE$?M^2)G7NAY5GD>7(QTKF68W7D\`[8!BUH3%DM/+
MABE]E,^HO.\HF,)W5^,P5HH)BYPSG:P>]34S85-[?>J<%Z/SC\]9R;";,$-Z


MGS'MF^V1%62>3RQZ5*^YUMT" <ZFQQGVK#CJ
M9^P9XJXZ7Z^+VFQ?0Q<1.!;0B16MNP0->VSSB)V8[RE8^UF<!NNMX3]8!1>'

M]B[_XD.*&:5#ZR +M0/KFRXG>9DY$O?ZPL9;HP^6?AC+/WO^XMNU!_T++VY)
M^6G7RQH_[I,P-&JY`3<N-T]%KI6HQ'BC]-2$)"XBZJH`JY,\RT9: (?92>.%

MP`^]_AW)49(2WORH]DTY"OK`KBEW]L='GX,LFX9JV7;/?0NW^Y4OKGD'/Y^4
M]%^H->GOEG&]=*-/IETT&"8/RB',((#G`;>]Q^(B'0EU6_9I ="8SH>ZF_XD


MWU%!F`^CF`Z'J:FR^8DL<#G "S_'R6OZ_T'R(CF:W[CY\VO#U%9XU\(%>'28

M3R42D"%-B,<ML 6'"J)-9ZZIJD,&\3TG G.% 9*MYFC9R"3\&_QGN*O)]\FW
M=%7_\6%7]4]Z5R.)MF_HJD;BP^>MJ/*1.['82!_CHM:"S,T]76BI?Z)K>I!\

M5_3_HP^X-?SY1*_.R\#K"&;9:<E18?,YMYJ%8`XP664MWY&B)7H$O-$=C(M,
MOZ^43JEX>83;LS8\.<M*V:HCJQ W)A'5_/,]6ZT%P(0_/)ML=R\NB'Q^.^K!


MO)GW2%7=D-=VZA$:"F-.J%QI'J2XTH5S0RI-(844506OAD; X]Y!!Q?)(ECR
MN(6UJX]M[]J./!<-L([J&$&M]^'E:>V/V<:0\G>%PZ-B(*-C),:\N&FKQA&>

ML2*?I7"*_&XO!;MMKI.&(!M,"%WHPK98./2]K?]HPLQ_DF$(Y(?RM^8K[BU$

M````;F]M;6=R+FC-5%UOTS`4?6;2_L.5$-"A-NG&"]HCB(D]`!.4!Z1*F6O?


MPOOWJ- ,<1;#RTX:-HK-G(++>QS^6T0[XX AF.]?/K%,9+/SN7,]3;H)\1R^

M"3U;.&!:P(AYJ)$Y?P;G;RZ`F[I1VB4COQ^Y?WRE2+Y2.E9R+XUVE'=I$851
M#E9H
MKDM8FX;,X[X9&$D-*V8]&`L$V\K4>!:YJJ'Z\Q"&)PT%U?C*V.QAGXJM01L/

M*!K9X&:U[HJ#Y$$NI68UM,;>I4!_A%SZ\'[-GVP):9'[>MU%F%:<!39-G(H.
MR8%UCV1/>&7-O124+W,3V8WFD`E1+-,>,8/O9)$&ELIKP;0:K'1=H-'N%05`
MQX/LZ5"*F/.8CH"C#GR<S6XN\[QMV^RJ;J3XYALAC<NX4<<U[/"E[T(HH446
M9H#Z
M(LG1G#FT
M#WE\G\<?XU$_]HC;]2&S^WCTM'Z1.$<S:]HHM;19!1/X0">.O .E[$;J&`+\

M``!M;6=R+FA02P$"%``4````"`!M#J$P*>&.EG(!``#R!```$0`````````!
M`"``MH&S! ``9&EF9E]M;6=R+F-P<"YT>'102P$"%``4````"`"C#J$P21 *
MK&(```!X````#P`````````!`"``MH%4"```9&EF9E]M;6=R+F N='AT4$L!
M`A0`%````` `"`RA,,F0A`5"/```DR`!`` ``````````0` `+:!XP ``&UM
M9W(N8W!P4$L!`A0`%````` `_0ZA,/JCW?GT````B $```4``````````0` 
M`+:!2T4``&$N8W!P4$L!`A0`%````` `4 JA,,:K!+B9` ``4 D``` `````
K`````0` `+:!8D8``&YO;6UG<BYH4$L%! `````&``8`3P$``"%)````````
`
end
May 01 2004