↑ ↓ ← → r.scudder rcn.com
writes:
Jan has informed me that I need to bring this to Walter Oney, not Walter Bright.
-Roger
In article <e0mua6$11f8$1 digitaldaemon.com>, r.scudder rcn.com says...
Walter...
I believe that a bug exists in coff2omf that causes it to skip certain .obj
files when it is processing a .lib file. I can not tell you exactly why it
refuses to process the .obj files but I do know the following things:
1) The skipping has nothing to do with the contents of the .obj.
The coff2omf will process one file then skip an almost identical file.
2) Of the files I have tested, the only difference between a file processed by
coff2omf and one that is skipped is the length of the file name. (I do not know
if the filename length has anything to do with the problem. I am only stating
what I observed.)
I have examined this issue using a .lib file that is impacted by this bug
(uuid32.lib) by doing the following in a batch file:
1) extract each .obj file to a subdirectory (there are well over 1,000 files).
2) run coff2omf on each obj file, one at a time, capturing the output to a text
file. Only 13 files are processed. Here is the redirected output:
COFF2OMF: Converting 'c:\psdk\bin\wrk\vcguids.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid0.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid1.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid2.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid3.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid4.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid5.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid6.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid7.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid8.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids_guid9.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\go7.obj'
COFF2OMF: Converting 'c:\psdk\bin\wrk\guids.obj'
NOTE: I observed that of the files that were NOT processed by coff2omf, all had
filenames that were atleast one character greater in length than the longest
filename in the list of files that WERE processed. IOW - any file with a name
length greater than 15 characters was skipped.
[I am attaching my batch file in case you or anyone else would like to check my
findings.]
3) I used DUMPBIN to examin the contents of similar .obj files where one file
was processed by coff2omf and the other file skipped.
Here is an example of two very similar .obj files extracted from uuid32.lib and
opened using DUMPBIN to display the symbols. (BTW, no functions are exported
from uuid32.lib)
---[DUMPBIN guids_guid0.obj OUTPUT START]---------------- String Table Size =
0x1A bytes
COFF SYMBOL TABLE
000 00000000 DEBUG notype Filename | .file
guids_guid0.c
002 00000000 SECT1 notype Static | .debug$S
Section length 91, #relocs 2, #linenums 0, checksum 0
004 00000000 SECT2 notype Static | .rdata
Section length 10, #relocs 0, #linenums 0, checksum 0
006 00000000 SECT2 notype External | _CLSID_StdURLMoniker
007 00000000 SECT3 notype Static | .debug$T
Section length 94, #relocs 0, #linenums 0, checksum 0
---[DUMPBIN OUTPUT END]----------------------------------
And here is the output from DUMPBIN /SYMBOLS uuid.lib showing symbols in
guids_guid10.obj, one of the files coff2omf skipped over.
---[DUMPBIN guids_guid10.obj OUTPUT START]--------------- String Table Size =
0x24 bytes
COFF SYMBOL TABLE
000 00000000 DEBUG notype Filename | .file
guids_guid10.c
002 00000000 SECT1 notype Static | .debug$S
Section length 90, #relocs 2, #linenums 0, checksum 0
004 00000000 SECT2 notype Static | .rdata
Section length 10, #relocs 0, #linenums 0, checksum 0
006 00000000 SECT2 notype External | _IID_IAsyncMoniker
007 00000000 SECT3 notype Static | .debug$T
Section length 94, #relocs 0, #linenums 0, checksum 0
---[DUMPBIN OUTPUT END]----------------------------------
As you can see the skipped file is almost exactly the same as the processed
file. I don't think there is any question that this is a correctable
programming error.
I know that you have fixed uuid32.lib, and I appreciate that you have given time
to the Win32 programming community, but that fix was really a treating of the
symptom. I'd like to see the problem fixed at the root. I realize that you
have many other important issues to devote precious time to, so even if you
would add this to the to-do list I would be grateful.
Thank you,
Roger Scudder
begin 0644 C2OTEST.zip
M4$L#!!0````(`,Z& 33\]/:V*RT``$5F` `+````0S)/5$535"Y"052EG4^3
M(T=R[.\TXW?`50>-%I%9_WB0/8E+[M*D?2-;D:8]T&P-TXV> =C=F`> A\-O
M_WI([G05RC,](IV773*\O*LR\ =D1485_L\W7__Y]>;UM]]^^<6G__?JM__9
MW-CQLC]?-O^\V5S>'<Z;-[O+S;O-W>%^O_GY<'^_V7^\G'8WE\WN^?\?[YXU
M^\WQS?_NG__+)\UY<W<Z/FR>G ZWK^X/;S:_F\[_N1PWN\WYZ<W=\?YV?]H\
M[A[VMYO_^>M_O-ILOKO\]C>>31\WIZ?'S<WQ[LZ.#W>;X^-FOWL^C^<_!2Q_
M/;O=X^WFM+\]G#Z=RZ^G]71Y_W3Y]/=>__#]?_WP_:OO__;]YNYX>E;N[G\Y
M'\ZOEE<^^^>T_W]/ST8/^\?+^:O-]I\V?SG<G([GX]UE\Y_?_?NK;_[V#3B+
MQ3_V3R^#\/#T/)YO]IO#XZ_G]?7__/'S'_ZO?_OAOY^]OOMV\W]??[_YYF_?
M_??WFU<_?C[R3Z^_?[UY//XVDL^B?PB>A^O'QZ?GD?I5<+[L3I<OO_C+?_SQ
MN[]^&LDOO_CJ]__T?+(OI_$OW_SM^[_^V]???_6GY__R_!]>71[>__T//]Z\
M??[7OQ_^_NE__O#J>8!_NX!_>1ZTKWX^_52(Q[VWQ'NK>+^<&/;^'&_Q_GQP
MP?L?\1;O+?'>"MY&O$WP3L0["=Z9>&?!NR/>G>#=$^]>\!Z(]R!XC\1[%+PG
MXCVU>V\)\UN!^2UA?BLPOR7,;P7FMX3YK<#\EC"_%9C?$N:W`O-;POQ68'Y+
MF-\*S&\)\UN!^2UA?BLPOR7,;P7FC3!O`O-&F#>!>2/,F\"\$>9-8-X(\R8P
M;X1Y$Y WPKP)S!MAW 3FC3!O`O-&F#>!^42X3`*7F7AGP;LCWIW W1/O7O`>
MB/< >(_$>Q2\)^(]M7N_?#5 [Y=X S>YOS3A_M+(.M:$=:R1[TL3OB^-,&\"
M\T:8-X%Y(\R;P+P1YDU W CS)C!OA'D3F#?"O`G,)\)\$IA/A/DD,)\(\TE
M/A'FD\!\(LPG ?E$F$\"\XDPGP3F$V$^"<PGPGP2F$^$^20PGPCS26`^$^:S
MP'PFS&>!^4R8SP+SF3"?!>8S83X+S&?"?!:8SX3Y+#"?"?-98#X3YK/`?";,
M9X'Y3)C/`O,=8;X3F.\(\YW`?$>8[P3F.\)\)S#?$>8[ ?F.,-\)S'>$^4Y
MOB/,=P+S'6&^$YCO"/.=P'Q'F.\$YGO"?"\PWQ/F>X'YGC#?"\SWA/E>8+XG
MS/<"\SUAOA>8[PGSO<!\3YCO!>9[PGPO,-\3YGN!^9XPWPO,#X3Y06!^(,P/
M`O,#87X0F!\(\X/`_$"8'P3F!\+\(#`_$.8' ?F!,#\(S`^$^4% ?B#,#P+S
M`V%^$) ?"?.CP/Q(F!\%YD?"_" P/Q+F1X'YD3`_"LR/A/E18'XDS(\"\R-A
M?A28'PGSH\#\2) ?!>9'POPH,#\1YB>!^8DP/PG,3X3Y26!^(LQ/`O,387X2
MF)\(\Y/`_$28GP3F)\+\)#`_$>8G ?F),#\)S$^$^2G(_-WA_K(__7XPX!+'
M?=['W?._K:Q?O'$\[HWZUG&\P1N,"8XW>(//*AQO\`:?53C>X`T^JW"\P1M\
M5N%X S?XK,+Q!F_P687C#=[ LPK'X]ZH)P?'X]YH[Q_'X]YHCQ''X]YH+P/'
MX]ZH9HKC<6]4F\'QN#>Z!\3QN#=::^*XT_O-_Z(OEA=O&&_P1I_?,-[BO>YU
MQO$6[W6O,XZW>*][G7&\Q7O=ZXSC+=[K7F<<;_%>]SKC>(OWNM<9QUN\U[W.
M.-[BO>YUQO$6[_7S#3C>X(W653#>XDV8#S[?L#R6,!]\OF%Y+&$^^'S#\EC"
M?/#YAN6QA/G \PW+8PGSP><;EL<2YH//-RR/)<P'GV]8'DN8#S[?L#R6,&\"
M\^A^!\9;O`GS26`^$>:3P'PBS">!^4283P+SB3"?!.8383X)S"?"?!*83X3Y
M)#"?"/-)8#X1YI/`/*I#P'B+-V$^"\QGPGP6F,^$^2PPGPGS66`^$^:SP'PF
MS&>!^4R8SP+SF3"?!>8S83X+S&?"?!:81_5!&&_Q)LQW`O,=8;X3F.\(\YW`
M?$>8[P3F.\)\)S#?$>8[ ?F.,-\)S'>$^4Y OB/,=P+S'6&^$YA'=7L8;_$F
MS/<"\SUAOA>8[PGSO<!\3YCO!>9[PGPO,-\3YGN!^9XPWPO,]X3Y7F"^)\SW
M`O,]8;X7F$?[:3#>XDV8'P3F!\+\(#`_$.8' ?F!,#\(S`^$^4% 'O1QX'B#
M-^CCP'&G]\W+H;#7`L;CWK#7`L8;O-%>'8PW>*.].AAO\$9[`C#>X(UJCS#>
MX(UJ'##>X(WNI6"\P1NMV6"\P1M]-\!X S?Z/('Q!F_T>0+C<6_8(P+C#=Z$
M^>A[6Q;'$N:C[VU9'$N8C[ZW97$L83[ZWI;%L83YZ'M;%L<2YJ/O;5D<2YB/
MOK=E<2QA/OK>EL6QA/GH>UL6QQ+FH^]MF1\+>[= O,&;,!]];\OB6,)\]+TM
MBV,)\]'WMBR.)<Q'W]NR.)8P'WUOR^)8PGSTO2V+8PGST?>V+(XES$??V[(X
MEC`??6_+XEC"?/2]+?-C84\EC#=X$^:C[VV9'PO[-6$\[ W[-6$\[ W[-6$\
M[ W[-6$\[ W[-6'<Z7V_1S>G+]XPWN"-OAM O,4;U'U O,4;U'U O,4;U'U
MO,4;U'U O,4;U'U O,4;U'IAO,4;U'IAO,4;U'IAO,4;U'IAO,4;U'IAO,$;
MK=E O,6;,!_MUUP<2YB/]FO.CT5K31AO\$9K31AO\$9K31AO\$9K31AO\$9K
M31AO\$9K31AO\$9K31CW>9\/=P^72HT:Q^/>J$:-XW%O5`O#<:?WY7C:?UQ=
M]8LWC+=XKS]/<-SG_?3XT^//C^4U&XXW>(,U&X[[O"^GGW:W#^7SQO$&;W#>
M.-[ #;[3<+S!&WPWX'B#-_ANP/$&;_#= .,-WN"[`<?=WC?'^AP$\09O/`=!
MO.3]'/[QD,;^QP^_/F-^?OGPF_WSV;LB\IW\[N9R^'#[YNW5I7_^`SC>Y+TE
MWEO%^_<3*WK_%F_SWA+OK>!MQ-L$[T2\D^"=B7<6O#OBW0G>/?'N!>^!>`^"
M]TB\1\%[(MY3N[<1YDU W CS)C!OA'D3F#?"O`G,&V'>!.:-,&\"\T:8-X%Y
M(\R;P+P1YDU W CS)C!OA'D3F$^$^20PGPCS26`^$>:3P'PBS">!^4283P+S
MB3"?!.8383X)S"?"?!*83X3Y)#"?"/-)8#X1YI/`?";,9X'Y3)C/`O.9,)\%
MYC-A/ O,9\)\%IC/A/DL,)\)\UE /A/FL\!\)LQG ?E,F,\"\YDPGP7F.\)\
M)S#?$>8[ ?F>G'<OG/=`O`?!>R3>H^`]$>\I['V^>5^M*:WB3=ZXIK2*-WGC
M>]=5O,D;KY%7\29O_%V\BC=Y8^97\29OS.4JWN2-N5S%F[PQEZMXDS?F<A7W
M>=^\VST^O%V]6?2S-XZW>(,?=H;Q%F_PP\XPWN(-?M 9QIW>QX>;W7IW]<4;
MQAN\T0N88;S!&[V`&<8;O-$+F&'<YWU[>%AO\<R\<3SLO27>6\';B+<)WHEX
M)\$[$^\L>'?$NQ.\>^+=Q[W/[_<?R\SC>(,W8!['&[P!\SC>X`V8QW&G]_'F
M65\9;QAO\$;C#>,-WFB\8;S!&XTWC#=X ^8"'&_P!LT%.-[ #9H+<-SGO?_X
M:0:7YR".-WB#.8CC+=[K]2".MWBOUX,XWN*]7 _B>(OW>CV(XRW>ZV9J'&_Q
M7C=3XWB+][J9&L=;O-?-U#C>XKUNIL;Q%N]U,S6.-WB#[P8<;_$FS`>;J9?'
M$N:#S=3+8PGSP9??+H\ES`=??KL\EC`??/GM\EC"?/#EM\MC"?/!E]\NCR7,
M!U]^NSR6,!]\^>WR6,)\\.6WBV/!F W'&[S!F W'&[S!F W'&[S!F W'&[S!
MPP(XWN`-'A;`\09O\+``CON\/QUR7I5/7KQQ/.J])=Y;Q1O6?7`\[HT>H,#Q
MN#=Z `+'X][H`0H<CWNCEQ; >-P;/1R-XW%O]``SCL>]T0/,.![W1 \PXWC<
M&SW`C.-Q;_0`,XZ'O6$]%L?CWH3YK<#\EC"_%9C?$N:W`O-;POQ68'Y+F-\*
MS&\)\UN!^2UA?BLPOR7,;P7FMX3YK<#\EC"_%9B'^R0X'O<FS)O`O!'F36#>
M"/,F,&^$>1.8-\*\"<P;8=X$YHTP;P+S1I W 7DCS)O`O!'F36`>[E_B>-R;
M,)\$YA-A/ G,)\)\$IA/A/DD,)\(\TE /A'FD\!\(LPG ?E$F$\"\XDPGP3F
M$V$^"<S#O (<CWL3YK/`?";,9X'Y3)C/`O.9,)\%YC-A/ O,9\)\%IC/A/DL
M,)\)\UE /A/FL\!\)LQG 7G8[X/C<6_"?"<PWQ'F.X'YCC#?"<QWA/E.8+XC
MS'<"\QUAOA.8[PCSG<!\1YCO!.8[PGPG,-\1YCN!>=B'A^-Q;\)\+S#?$^9[
M ?F>,-\+S/>$^5Y OB?,]P+S/6&^%YCO"?.]P'Q/F.\%YGO"?"\PWQ/F>X'Y
M 3`_",P/A/E!8'X S`\"\P-A?A"8'PCS \#\0) ?!.8'POP ,#\0Y >!^8$P
M/PC,#X3Y06!^(,P/`O,C87X4F!\)\Z/`_$B8'P7F1\+\*#`_$N9' ?F1,#\*
MS(^$^5% ?B3,CP+S(V%^%) ?"?.CP/Q(F!\%YB?"_"0P/Q'F)X'YB3`_"<Q/
MA/E)8'XBS$\"\Q-A?A*8GPCSD\#\1)B?!.8GPOPD,#\1YB>!^8DP/[4S/]^>
M1][S>-B;]/B9T.-GI,?/A!X_(SU^)O3X&>GQ,Z''STB/GPD]?D9Z_$SH\3/2
MXV="CY^1'C\3>OR,]/B9T.-GI,?/A!X_(SU^)O3X&>GQ,Z''STB/GPD]?D9Z
M_$SH\3/2XV="CY^1'C\3>OR,]/B9T.-GI,?/A!X_(SU^)O3X&>GQ,Z''STB/
MGPD]?D9Z_$SH\3/2XV="CY^1'C\3>OR,]/B9T.-GI,?/A!X_(_U5)O17&>GC
M,*&/P\A^L0G[Q4;VI4S8ES)2_S:A_FVDSF9"G<W(_;P)]_/S*8B\Y_&P-[EO
M2,)]0R+KDR2L3Q+Y'$S"YV`BS">!^4283P+SB3"?!.8383X)S"?"?!*83X3Y
M)#"?"/-)8#X3YK/`?";,9X'Y3)C/`O.9,)\%YC-A/ O,9\)\%IC/A/DL,)\)
M\UE /A/FL\!\)LQG ?E,F,\"\QUAOA.8[PCSG<!\1YCO!.8[PGPG,-\1YCN!
M^8XPWPG,=X3Y3F"^(\QW`O,=8;X3F.\(\YW`?$>8[P3F>\)\+S#?$^9[ ?F>
M,-\+S/>$^5Y OB?,]P+S/6&^%YCO"?.]P'Q/F.\%YGO"?"\PWQ/F>X'YGC#?
M"\P/A/E!8'X S`\"\P-A?A"8'PCS \#\0) ?!.8'POP ,#\0Y >!^8$P/PC,
M#X3Y06!^(,P/`O,#87X0F!\)\Z/`_$B8'P7F1\+\*#`_$N9' ?F1,#\*S(^$
M^5% ?B3,CP+S(V%^%) ?"?.CP/Q(F!\%YD?"_" P/Q'F)X'YB3`_"<Q/A/E)
M8'XBS$\"\Q-A?A*8GPCSD\#\1)B?!.8GPOPD,#\1YB>!^8DP/PG,3X3Y*<S\
MN_O#XT_K'U'X[(WC<6^TAX[C<6^TAX[C<6_4-X/C<6_4-X/C<6_4-X/C<6_4
M-X/C3N_+X6YWLR_^C V.MWBOWV&,XRW>ZW<8X[C?^[1[N+[HA?<ZWN2]^LTM
M'&_R7OWF%H[[O`\/;Y\NA_OB/,'Q%N_U/,'Q%N_U/,'Q%N_UNZYQO,5[_:YK
M'&_Q7K_K&L=]W ^'A_WA\>Y88 ?'G=[WN\>WUS-P[ WC<6_T?8GC#=[ -RUP
MO,$;_*8%CC=X W?GXWB#-WA'-XXW>(-W=.-X S=X1S>.-WB#=W3C>(,W>$<W
MCC=X W=TXWB#-WA'-X['O=$Z%L<;O`GS)C!OA'D3F#?"O`G,&V'>!.:-,&\"
M\T:8-X%Y(\R;P#RZE\+QN#>ZE\+QN#>ZE\+QN#>ZE\+QN#=Z! ''X][H&00<
MCWNC9Q!PW.E]?G=Y>'>^_F7.%V\8;_)>W4OA>)/WZEX*QYN\5[]?C.--WJO?
M+\;Q)N_5[Q?C>)/WZO>+<;S)>_7[Q3 >\%[=%E]YK^(-WNA['L9;O-?W\SC>
MY(V97\6;O#'SJWB3-V9^%6_RQLROXDW>F/E5O,D;,[^*-WECYE?Q)F_,_"K>
MY+WZS7(<;_)>_68YCK=XK^ML.-[D39C?"LQO"?-; ?DM87XK,+\ES&\%YK>$
M^:W`_)8POQ68WQ+FMP+S6\+\5F!^2YC?"LQO"?-; ?EU_1O'F[P)\R8P;X1Y
M$Y WPKP)S!MAW 3FC3!O`O-&F#>!>2/,F\"\$>9-8-X(\R8P;X1Y$YA?[TOA
M>),W83X)S"?"?!*83X3Y)#"?"/-)8#X1YI/`?"+,)X'Y1)A/`O.),)\$YA-A
M/ G,)\)\$IA?[Q?C>),W83X+S&?"?!:8SX3Y+#"?"?-98#X3YK/`?";,9X'Y
M3)C/`O.9,)\%YC-A/ O,9\)\%IA?]W' >),W8;X3F.\(\YW`?$>8[P3F.\)\
M)S#?$>8[ ?F.,-\)S'>$^4Y OB/,=P+S'6&^$YCO"/.=P'Q/F.\%YGO"?"\P
MWQ/F>X'YGC#?"\SWA/E>8+XGS/<"\SUAOA>8[PGSO<!\3YCO!>9[PGPO,-\3
MYGN!^8$P/PC,#X3Y06!^(,P/`O,#87X0F!\(\X/`_$"8'P3F!\+\(#`_$.8'
M ?F!,#\(S`^$^4% ?B#,#P+S(V%^%) ?"?.CP/Q(F!\%YD?"_" P/Q+F1X'Y
MD3`_"LR/A/E18'XDS(\"\R-A?A28'PGSH\#\2) ?!>8GPOPD,#\1YB>!^8DP
M/PG,3X3Y26!^(LQ/`O,387X2F)\(\Y/`_$28GP3F)\+\)#`_$>8G ?F),#^U
M,X_Z[6&\Q9OT^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?"3U^1GK\3.CQ
M,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?"3U^
M1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/
M2(^?"3U^1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9
MZ?$SH<?/2(^?"3U^1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C
M/7XF]/ 9Z?$SH<?/2(^?"3U^1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>D
MQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?"3U^1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST
M^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?"3U^1GK\3.CQ,]+C9T*/GY$>
M/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?"3U^1GK\3.CQ,]+C
M9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?"3U^1GK\
M3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$SH<?/2(^?
M"3U^1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF]/ 9Z?$S
MH<?/2(^?"3U^1GK\3.CQ,]+C9T*/GY$>/Q-Z_(ST^)G0XV>DQ\^$'C\C/7XF
M]/ 9Z?$SH<?/2(^?"3U^1GK\3.CQ,](79D)?&'HG(XRW>)/^DR3TGR2RSYV$
M?>Y$]M.2L)^62-T^"77[1.J#2: /)E*'2$(=(I'[G23<[R2RKDK"NBJ1S^\D
M?'XGPGP2F$?O2H7Q%F_"?!:8SX3Y+#"?"?-98#X3YK/`?";,9X'Y3)C/`O.9
M,)\%YC-A/ O,9\)\%IC/A/DL,(_>80SC+=Z$^4Y OB/,=P+S'6&^$YCO"/.=
MP'Q'F.\$YCO"?"<PWQ'F.X'YCC#?"<QWA/E.8+XCS'<"\^C=XC#>XDV8[P7F
M>\)\+S#?$^9[ ?F>,-\+S/>$^5Y OB?,]P+S/6&^%YCO"?.]P'Q/F.\%YGO"
M?"\PCW[G`\9;O`GS \#\0) ?!.8'POP ,#\0Y >!^8$P/PC,#X3Y06!^(,P/
M`O,#87X0F!\(\X/`_$"8'P3FT>_OP'B+-V%^%) ?"?.CP/Q(F!\%YD?"_" P
M/Q+F1X'YD3`_"LR/A/E18'XDS(\"\R-A?A28'PGSH\`\^ETL&&_Q)LQ/`O,3
M87X2F)\(\Y/`_$28GP3F)\+\)#`_$>8G ?F),#\)S$^$^4E ?B+,3P+S$V%^
MBC+_\?.A\/<O83SN#7__$L;CWO!W]F`\[ U_XPS&X][P-\Y /.X-?^,,QN/>
M\#?.8-SG_:P^[^[*OQ>-XT[OFX>']?2>><-XV'M+O+>"MQ%O$[P3\4Z"=R;>
M6?#NB'<G>/?$NQ>\!^(]"-XC\1X%[XEX3V'O]Y?=Z9<5>2_>,-[ #7[C#,=]
MWN_WIW>'U4\/OGCCN-/[]/;\^%-Y3'#<ZWV\N5U_TLV\4;S!&XPWCC=X W?9
MX'B#-^A3PO$&;]`/ >,^[_/^].'Y^`]7V?KLC>-.[W>?%.7O2QP/>\/O2QR/
M>Z-U+(['O=$Z%L?CWF =B^-Q;[2.Q?&X-UK'XGC<&ZUC<3SNC=:Q.![W1K_5
MB^-Q;_1;O3 >]T:_U8OC86^XCL7QN#=AW 3FC3!O`O-&F#>!>2/,F\"\$>9-
M8-X(\R8P;X1Y$Y WPKP)S!MAW 3FC3!O`O/P_A+'X]Z$^20PGPCS26`^$>:3
MP'PBS">!^4283P+SB3"?!.8383X)S"?"?!*83X3Y)#"?"/-)8![6?7`\[DV8
MSP+SF3"?!>8S83X+S&?"?!:8SX3Y+#"?"?-98#X3YK/`?";,9X'Y3)C/`O.9
M,)\%YF$]%L?CWH3Y3F"^(\QW`O,=8;X3F.\(\YW`?$>8[P3F.\)\)S#?$>8[
M ?F.,-\)S'>$^4Y OB/,=P+S<)\$Q^/>A/E>8+XGS/<"\SUAOA>8[PGSO<!\
M3YCO!>9[PGPO,-\3YGN!^9XPWPO,]X3Y7F"^)\SW`O-P_Q+'X]Z$^4% 'NZ-
MXGC8&^Z-XKC3^_#P_G9WV17W=V"\R7OUG 4<;_)>O6<!QYW>3V_.#V]/Q7U7
M'&_Q7O</XGB+][I_$,=]WD^G^^I>-(ZW>*_'!,=;O-=C N,MWNN>2AQWYG)W
MMS_>?"S/01AWG_?#\;&\/X_C#=Y ?Q['6[SA'`3Q%F\X!T&\Q1O.01!O\89S
M$,1;O-=]O3C>XKWNZ\7Q%N]U7R^.MWBO^WIQO,5[W=>+XRW>Z[Y>'&_P!GTS
M.-[B39 /_ ;4\EC"?/"W9I;'$N:#OVFQ/)8P'WQW_O)8PGSP'=W+8PGSP7<!
M+X\ES`??.;H\EC`??+?AXEC0%X;C#=Z +PS'&[S!^SAPO,$;//>/XPW>X/EB
M'&_P!L\QXGB#-WA>"L?=WI?3[N:ZVW/N#>(^[_W#^\LO'VZ*ZU <;_%>?W[C
MN,_[P^E\OMFM%L&?O7&\Q7M]WCC>XKW^WL'Q%N_U]PZ.MWBOOW=PW.?]\_[-
MS;M]>7[C>)/WJL:!XTW>JQH'CC=YK]XEB>--WJMW2>)XD_?J_;$XWN2]>G\L
MCC=YK]X?B^--WJOWQ^)XD_?J_;$X[O.^??/V_>GXOO 9B^,MWNO/6!QO\5Y_
MQN)XB_?Z,Q;'6[S7G[$XWN*]7MOC>(OW>FV/XRW>Z[4]CK=XK^_G<;S%>WT_
MC^-NYC_\O"H/+I '\; WVAO%\; WVAO%\; WVAO%\; WVAO%\; WVAO%\9+W
MV^-\4Z[PSV?OW]5%L^?_<F9V+V;_4'_YQ==_W#S_ER^_^.;K/[_>G)X>'P^/
M;S=?O_[V6WO]EV\W[^_WN_-^\_/N<'GUZM677]P<[^[L^'"WN?EDL9BV_WI\
MNKQ_NKRZ?+P4=+]-P7^="2OG6O+XP\JDJ`Q(UZ=6E)I?FOS2[)=V?FGOEPY^
MZ>B73FZI/P.!*1!Q]>=UZ\_KUI_7K3^O6W]>M_Z\;OUYW?KSZA]6\^?5_'FU
MP`GX\VK^O)H_K^;/J_GS:OZ\^ ?`?_W^R_=?O?_B_=?NGM+N">6?T/[Y[)_.
M_MGLG\S^N>R?ROZ9[)_(YDZF>Y"2.YG)G<SD3F;RGZ<[F<F=S.1.9G(G,[F3
MF=S)=%]Z=B<SNY.9W<G,[F1F_Q6YDYG=R<SN9&9W,K,[F>X+ZMS)[-S)[-S)
M[-S)[-S)[/S7[DYFYTYFYTYFYTZF^S1[=S)[=S)[=S)[=S)[=S)[=S)[_RBY
MD]F[D]F[D^G^XX,[F8,[F8,[F8,[F8,[F8,[F8,[F8-_/-W)'-S)=%N.[F2.
M[F2.[F2.[F2.[F2.[F2.[F2.[F2._I%W)],O="=S<B=S<B=S<B=S<B=S<B=S
M<B=S<B=S<B=SJN;H[G!_V2^;X0O*X^YP>Q\55G.Y$/HM_9[5^;%05N?'0EF=
M'PME=7XLE-7YL5!6Y\=<Z;YT]Y6[+]Q]W>[+=E]U%8JYL,K$<\ [U>?*^KQ<
M*`.F`==ZSA?2>M87TGK>%])ZYA?2>NX7TGKV%])Z_A=2_PSP#VN]_K:4^O-:
MK\`MI?Z\UFMP2ZD_K_4JW%+JSVN]#K>4^O/J'ZMZ*6XI]>>U7HQ;2 /GZL]K
MO1ZWE/KS6J_(+:7^O-9K< NI?P#J5;FEU)_7>EUN*?7GM5Z96TK]>:W7YI92
M?U[KU;FEU)]7_U75"W1+J3^O]1+=4NK/:[U(MY0&1L"?UWJ=;BGUY[5>J5M(
M_:=:K]4MI?Z\UJMU2ZD_K_5ZW5+JSVN]8K>4^O-:K]DMI?Z\^O]^O6RWE/KS
M6B_<+:7^O-9+=PNI?U3K WKCO1N9">O#-!?Z+?V>]9&?*^L#/U?6QWVNK.,T
M5]9IFBOKDWFNK&=]KG1GW3V<Y`9DKG0GD]Q^S)7N9)*;C[G2G4QRZS%7NI-)
M;CSF2G<RW8-$[CKF2G<RR3W'7.D_3W<RR0W'7.E.)KG=F"O=R20W&S.E^]+)
MK<9,Z1XC]Q"Y1\ ]0/7QN=][O[#FROH<7B #I '7.AH+:9V-A;0^0Q;2>N87
MTGKN%])Z]A?2>OX74O\,\`\K^?9:2/UY]>?*GRI_IOR)\N?)GZ9JELZ'NX>+
M!].YL#KN<V$U[>?+\;3_Z/OC"VGUSS\]_O3X\Z/'=*&L>EY./^VN?NW&H_1[
M5L=IH:Q.Y(6R.I$7RNI$7BBK$_E9>7/TCM*+LCI*'W[=Q#S7)+N;R^'#[9NW
MQ3^\*8O!LR$5<?6:KL75R[H65_-_+:Y. 6MQ=19<BZL3X5I<G0O7XNKGVK6X
M^M%V+:Y^NEV)(\-<_QZZ%D>R7;^7NA9'LEV_H[H61[)=OZ^Z%D>R7;^[NA9'
MLAT9N?IMUK4XDNWZS=:U.'3.D6S7[[JNQ9%LU^^]KL61;-?OP*[$D<&HWX==
MBR/9KF_[7(LCV:YO_5R+(]FN;_]<BR/9KF\!78LCV8Y<7WTCZ$H<&8O(4$1&
M _$^6;Y2 6?ED_D%RV?QR]:/HU?M'P6OVAYDE^T/&\O6IZW%RW/VXNVW ?Y
M;O=X_<99E[3>";F0UELA%])Z+^3QX6;GNC%;*.MG.E?63W2NK)[G[>'!=;\Q
MTU7/<::KGN%,YSV_ZKR?Z:IS?J:KSO?;P_G]_J-O9&9*,C8S)1F=F;(^/L>;
MYZCK/.?*^GG.E?7SG"O]YUG/Y%Q9S^5<6<WF_N.G$?6,TD)9':6E$MPS;XIB
M]#Z%HGB= (IXG8.*>)V&BGB=B8IXG8R*>/U=4A&OOTPJXO6W25G\^ZM0G.)(
MNL&=;44<23>XLZV((^D&=[85<23=X,ZV(HZD&]S9EL61D8L,7&3<(L,6&;7(
MH)$Q^[5T6"H*8B&9[3.AWQ*\$:8H#?Q]PMI<2N;+7$JFRUQ*9LM<2B;+7$KF
MREQ*ILI<ZIXI[.MMKO3G->+JSRO[PIQ+_7EE7Y9SJ3^O[(MR+O7GE7U)SJ3^
M867?CW.I/Z_LNW$N]>>5?2_.I?Z\LN_$N=2?5_9].)?Z\^H?*U#C+4K]>07U
MW:(T<*[^O(+*;E'JSRNHZA:E_KR"BFY)ZA\`4,TM2OUY!97<HM2?5U#%+4K]
M>045W*+4GU=0O2U*_7GU7Q6HVQ:E_KR"!OZBU)]7T,!?E`9&P)]7T,!?E/KS
M"AKX2U+_J8(&_J+4GU?0P%^4^O,*&OB+4G]>00-_4>K/*VC +TK]>?7_?=#`
M7Y3Z\PH:^(M2?UX'?U[!RS>*4G]>P>LWBE)_7L$+.$I2OREX!4=1ZL\K>`E'
M4>K/*W -1U'JSRMX$4=1ZL\K>!5'4>K/:T#ISRMX'4=1ZL\K>"%'4>K/*W E
M1U'JSRMX*4=1ZL\K>"U'0>H>5?_=J_D+4^8O3)F_,&7^PI3Y"U/F+TR9OS!E
M_L*4^0M3YB],^4L-YB],F;\P9?X*BOEORLU_GV?^6P?SKT;-O\`Q_W>F^3^&
M_74A"Z`=F"V!$_"GU9]5?U+].?6GU)]1=T+= ^2O1_G+4?YJE+\8Y:]%^4M1
M_DJ4OQ#EKT/YRU#N2_<7H?PU*'\)RE^!\A> _/4G?_G)7WWR%Y_\M2?W!?DK
M3_["D[_NY"\[^:M._J*3O^8$2TZ;DACELRA&*2V)T?D6M2BQ17'AET.P&*6W
M*$89+HI1DHMBE.>B.#1TD6S#4E11',EVY"Q 0:HHCF0;%J6*XDBV86&J*(YD
M&Q:GBN+0.$>R#4M4)7'$&):IBN)(MF&IJBB.9!N6JXKB2+9AR:HHCF0;EJV*
MXDBV0]I(MF'YJBB.9!N6L(KB2+9A&:LHCF0;EK**XDBV83EK*7YW?WC\J=C+
M6A'C%!;$.(4%,4YA00Q26%""_!64('ESY>5PM[O9NQYO76KK3[<NM6#$KK2G
MW8/_)&9B?A8S<?TT# ]OGRZ'\ELERMKZ22RUD7,`<Z>HK4^=I;8^>1X.#_O#
MX]W1-1`/][M'W\/1<R7$K:2%()?$(6<(<DD,02Z)X6=Q20P_BTMB^%E<$L//
MXI(8?A:7Q/"SN"".##.L0A;%D6S#2F11',DVK$<6Q9%LPZID21PYY< 91TXX
M<KZ1R1F9FW1JGM]='MZ=74^ 76FK3[U<::M/!UUIJ\\'76FK3PA=::O/"%UI
MJT\)76FKSSC^JG6]G&FAK'^)+J7DFV:I#8E#9U'_+K\2U[_,K\3U;_,K,?DZ
M7XKKR\$K,4"T+`:,EL4`TJ(XDI/0U( Y1[*-5 ME<23;:+50%D>RC58+97$D
MVVBU4!1'AAFM%LKB2+;1:J$LCF0;K1;*XDBVT6JA+(YD&^UDEL61;$=FUI
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
M%````` `SH:!-/ST]K8K+0``168"``L``````````0` `````````$,R3U1%
<4U0N0D%44$L%! `````!``$`.0```%0M````````
`
end