www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/1999/05/13/22:36:37

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
Sender: cygwin-developers-owner AT sourceware DOT cygnus DOT com
Delivered-To: mailing list cygwin-developers AT sourceware DOT cygnus DOT com
Date: Fri, 14 May 1999 06:33:20 +0400
From: Egor Duda <deo AT logos-m DOT ru>
X-Mailer: The Bat! (v1.029) S/N A0F2A05A
Reply-To: Egor Duda <deo AT logos-m DOT ru>
Organization: DEO
Message-ID: <13273.990514@logos-m.ru>
To: <cygwin-developers AT sourceware DOT cygnus DOT com>
CC: Chris Faylor <cgf AT cygnus DOT com>
Subject: Re[2]: new core files
References: <19990511111823 DOT B659 AT cygnus DOT com>
Mime-Version: 1.0

------------10510510F14C87C2
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi!

May 11 1999 Chris Faylor <cgf AT cygnus DOT com> wrote:

>>I've already posted a patch to allow JIT debugging of cygwin apps with
>>gdb. Core files are good to find out why in hell one of your daemons
>>crashed at 03:00am and dragged all your system down at 03:05am.
>>Actually, i intend to add support for jit debugging and core dumping
>>in a uniform way. You would just specify through %CYGWIN% a program to
>>run in a case of trap and application will try to start it (passing
>>some   info   about   itself).   Will   this   program  be  gdb(jit),
>>core-dumper(post-mortem), something else or nothing -- it's up to you.

CF> That sounds perfect to me.

So,   here's  a  patch.  It  includes  my (slightly modified) previous
patch,  core  dumper  utility,  and  patches  to bfd and gdb to handle
cygwin cores. To use it one should set CYGWIN env variable to

CTGWIN= ... error_start=/bin/dumper.exe ...

Currently,  dumper  writes  core  for  <program>  to  <program>._core
(to  coexist  with  old-style  cores).  I don't think its a good idea,
because  most  "make  clean"s  remove  *.core,  not *._core :)

Then core file then can be read by standard "gdb --core=<program>._core"
command.

The  only  thing  I'm not sure about is how well this patches fit into
cross-toolchains.  I  haven't  much experience in such things, so I've
just tried to "mimic" existing style.

JIT debugging works the same way --

CTGWIN= ... error_start=/bin/gdb.exe ...

Egor.            mailto:deo AT logos-m DOT ru ICQ 5165414 FidoNet 2:5020/496.19
------------10510510F14C87C2
Content-Type: application/x-gzip; name="cygwin_core.tar.gz"
Content-Transfer-Encoding: X-UUE
Content-Disposition: attachment; filename="cygwin_core.tar.gz"

filetime 648950827
begin 644 cygwin_core.tar.gz
M'XL("#2&.S<`"V-Y9W=I;E]C;W)E+G1A<@#L/'MWVL:S_==\B AT D]2<`\!7[$
M=MV6V#CA7AO[8-PD)^W1$;`8_2(D74GXT3;?_<[,[NH!PF[2)CGWW-(<@_8Q
MNSLS.V]U-)W4)_9T^MT7_!C-YL[6%GP'8#2WFO*[:=`W?[:WMMH`.[O&SF[3
MV&JUL-MH-W>^@^:7W)3^+,+("@`>'7?LS2W;A:M0!.&7W]57^_3<B;C;A['G
M3NWK^F AT Z*1S^_4]A<'0)4]L1^]!8A$'#\<:6TPB#<6-\$S;&]]?N AT K]N;;>!
M2S:2U:LWA4!$@2UN;/<:`OP*;<\%H\[_%8A3H;:`6J!:TANOU6JIQPUC;V^O
MT=QN&%O0;.X;+_9;NQL:3J5263^TA?]>%'[^&6JMW>WJ+E3DU\\_%YA=#P[H
MVW[?WMK>^>W%3FVS-L>]WK9;F_!GIED><+D5F]QHJ<T790D;6?':G(CIC1@?
MVNT7.[XP\6>A%O>%PL&&\+"8](+\:=/O8J'R5X<"'MP4SK3=,JE5SLX]H.NY
MHK:Y9H=C;SKE/2I&0HCU\;?@(5[XD]E';I<XAW_E,,U>AFE61QG[V[O[[2;S
MR];>5I,81GXW%<O AT CA:!"U&P$(C9CP4H5%#F1#:2P/,<8;F%"H(=>X$PKP/O
M AT XDG:K>0.R-Q%T')HEL!KA<ACS!QB7";0,T'JJ'K3,T>#@]<RS'[.'*3QV/W
M'S1B/$,!-UI,WZ/4_>U`M^`8:R[XT0K%.$(\;0+].*`-`C0VX<SZ(,""8CT0
MUPT\<A'4P#IL- AT H5&K5P0_O:%1-P/$1X9$_ AT D!GK6D1.NP4EWDCMQXD(QQ,K
MLJ`,!W)BZ`>V&TVAA!NKJB6>3HI5AE'F;='^%#C+0?)K7(11X`B79Y:A`H8<
M;2,L.>,0^E>GIPI;"OE3RPGE87'VV+^78ZN$EK+>$9Y-+3?'@YOJK#$%<'RR
MDAS\R$HXIO:C&5BW9FC_3D=)D!'^#C6 AT 5@^!R3-#:A+QO>^%F2GT7'EHCF-=
MTXS+[I'YNG-I'IWWA]W^\#(UQ'*06'/A1J;OW8H`![?4X>E,3T"SX=RZ'XD$
M"QH%3"4D$;65\T]-C1E^KWRDQL?Y?>Y-%H[X)NQ>669WN9?&G?H\RO8CA/BY
M?*_6>MI\@>M4):C_%^S_%[C]GV+N'(8L$,%5NP5S1O!SI.?80^3 AT _;((4:1#
MK`@NAYW!$&YG]G@&=H AT MK`GG7AC!6><MC.XC$3(C5`%W'=HCYQYN[6CF+2*$
M AT WR*]@&R/P)[_FOS>9UG1S,AU[JU'0<LY]:Z#V%FW8B\&<1VI%ZVC>UF=0<J
MVRVC735:K%ZD5AX3V_2'YLG%H/OJLCO<W]C`\YWTWIYU]_&8S!B11R,N!CR&
M0"KS6V$A<R7]8.KC7<]<1X7,9+$WO7Z[Q81X.]Q7=S,7VEJ%E AT _R[/SXZK3[
M.,0<D4&Z"[Y'#D4+Q:;[67K=^:6+A[ZX[/5/SLUA&?[\<[E3=V51J>?L%[ZU
MB?Y%/]>3T3?V_UK;.\9N[/^AZ\?^7]OXU__[&I_8_PN$X]U^?=,=^:\1+_Z(
M^9[?U\HQZ^E72SF$"O:RD[>UO]5<\@?S1AK[1DN.;+$,-E[LD(4OO[0`]IR)
MB48&LL<AL/(<DYFS\*$T#02J6<*%4J!`SEPX#JQH/*,Y-,7S29_K056X#>Q(
MF/0<PD]P;@Z DOT WPQ AT GW^<]T_?5:$I-?$C8,[-E[U^9_`.G<W28S"A+*&"TN]I
MR#]@CY2-O@@"+S!)N9FL4TJIDVD/D&5S#?77MV&FU/*?[`VFMT[,DWI>9I_M
M_68[PS[KQAK[6^A%&M(_9/7-/B*QSO<";24R1#PT!P)@Y8=L./?QM`%KZ.]M
M=^PL)@)^0/`3[S:LSWZD>2[NO5!)>OW0\FWJ2TTICA:V,PGOY_59,=V,+81.
M:J4][?">=HSJGMR35(YPW'UY]<H\ZYZ5[LH;Q!(3,5I<FW,Q]X+[\H:R8N^6
M)W3?'G4OAMDYXFXL?+(EP]0\W+V:>'+:>64.!YVC+O+K$)IWJ!R27F5?F`S^
M57<`)=UR AT K8GLG;\>'K>&?;ZK\R+\UX?E;DT\4Z\X-8*)JCRQXZ%/$WT)\2B
M)8+^`QEY"[1D*:@A(M/S0_05$&GT"QF:0T![+P AT _[6:K:NP8RJ.?>*8<%T9D
MDMCN5`0V7 AT PTF>P0`8=0"LKLZ\>N#QX;F$JFXUD307YRDPQ<U?U:&CUJB+1L
M3+Q\$X<,9S*SI0,1W?L",0,OS\]/@3BF<]&#4C0UN^YB?A%X8Q&&9SP[!'0Z
M2O"ZTS\^[5;U`IM5.'YS/CBNPND%_Y">R5JPKT0DP?7<J1?,&8$Y8`F<_$4F
MDUHC"UHVY8$^06[LHPSIWG76@+X<#C(P8[3E'WQ38C&G)T%E`B#OB!I$;M^#
M0%*'60&2[DL3->$-XL*)XRCAJH[\$BW2SF02X#G00Y3.K!Z$+!=!67F^<C AT Y
MAZP>$H+`W):N&RYDRT[-<).9B4X AT O`<#?LOT;,*QX[S6'"B''22KC$=](8B/
MN8WYQON AT G5RZ^_`DP^Y__JGM>5A+'=`NY>KH?$(\.CJ#<35:^:M_Z#F\V<Q>
MRW#MH;<TM7"V.F`".[Z^QG+/\JT]Q9&G]BBP`O2WH2AE-!*NJ.,V\>I/<B&4
MXU,EF^756(::"Q?%.`H;<F2 AT R)H9:'.DZ^*U]N'IHE@%1,BI%49='E0JIS=`
MG]SC`HJOS/GR*;9&^FR6<4UJTIQ;RCMC%8JK4XL`Z0T^>!/7R:B_O'S>Y.(#
MRV?O\#HY]NG+IR:O\L>GW9A/OS5_]>;D,<I'>>7Q\B,ZUDI>$NSC11!P>$;V
M:"04*AOXX3W$$B?=&$<\M<@JIWN?Q8*HG)4^D.I8V79:M)5B AT 5>&N[D*M4$6
M;`PTF9@#]<OA0 DOT _F AT 9/'6\1=+(LX\D)(G:0V'S.8%!PH08XL]WD$`K<MT%`2
MH+8(<WTKRTLDG_(\6UHR^/U#@K1&#M5H#-K)N>+W28RV=0;'@XA;PAQJ,QM^
MR_0]F]N9YWA[<QM('*Z3M0]A+@=[J+\5OE#73KUB=OA''>X"5M*'JX=>,H4>
M/_0#9TZ;".GVL\Y;\Z(S?+TB97A/1,Q/0\9&"@M2P2`6.'B).^"X,2FA7UT*
M;S^HAU+HX?V4V-)`/,SMNN.3%70^Q;7+M,FT3?2YM%.!12-'Y?%6Y-7F.&0:
ME^^;OR'I*#`K)RHP;,U_3-OHTKE(9252.0BRQ"C63W,`O8_01&XWQ^QT^Q[U
MILU<?"Y4)/%-#H(29E$MT-$W+H8#_*6S'WFP-L&G9F*XW.ZRG(^WXGX^\AR.
M$IC6!.T*GE?[4<83FE50S[1S?H[_J2S$"B[2!R`DRA5""9U2\&&T9-$BEVCD
MT*A`/:O]QK:N\MR\T7]HMYOZ!\0)']A432:!BA&?+`F;M&2F,Y<0C+ITFJR4
MGH=(Q:T$XUE0TB>HPO/&\[).D"T-UH-X/?+_5T=5*FJUSNFI>?[ROTYZI]W+
MDCK-LOA</F1J/ZI+DX\V=9"]8BN3GSWC^TQ)HKF?.6=U=27*/;'`("[\@R?F
MF*;%IW?[3]$`4I3'(>+&]A:A<P_2E"ZC:)#RB?<5$[X:XZHLI0SK6V]!&;N-
M]#WEY-UP)D`O85-.AZZ(%0CPIM,0I?+H7D86D%?C3$XT4]CG=(P:.`V\.3(P
M*@=JG-I!&'&*AZ&Z8,^M:P$U&(FQM=#42T8C!\X$GBK`L1-NTWFT.#U5CVF@
M\C,]VHG<#EX AT RZ$_(<Z(9E8$MP)<U*G<*0\`/\5I2&+-NJ)ZB:]1.;E',4?7
M57ZRA+0IIRY610/DD6M)5ZRNHTEL=*0N)YU+/K)2(,MW27!5X1GM"HU?T AT B#
M[O!JT#?/.I?_;7;8QERZ&:MBCZ<GYE[>QI&EY`:17?93 AT LG0@HE8YHUE1VS$
M<"R'\F,3#T)O+I`:[G4=8"`G^?:$",RC\!H$4#.(&2A15%#$Y[,>`(>#@&3>
M AT L@9>(OK&9%@070'%B?(&>=7@\MA9WAUB4L@)3G,U&ZW.32XUZH:.LKT,8[T
MI:R[W#A!K"G%#2Y4^S&C+27-R,F/S1S5(#69?I`F44D]EI''#:WH%*;C%>-)
M3`/@"]B)(C'W(T(C\J]D6!ZL[@;13G*T%<)$1'@MQ*2NDI!#XG_\-_'&C"O!
MY+CU@@_ AT N91 DOT G:%M8N%%NA'XQ&'%:Z21FFV1K7H=6'-$:"^2*577B^1\(K`5
M1=9XAD"5(27".*?:WGM1;6]!97NG%==XZ=3IDR<,SEL@=XSP-/:8LZ AT J,NFY
M6N(HB2+IRSLGR:*-$`])G\(!TA'O])C-180S04%QKR47[XH2!)^F9VH/ZIF:
MNDTKHTC/U*@Y7\_4I)ZIR7.L4ZFUSU-#-3UQG1JJ?8X:JJ$:JOTM-533:FCU
M)F5D7RVCCVJHCVIT8?E8?T,;U?ZF-JI]AC;2I/@[VHAA/*1!'D-GCNV9L#EB
M2>JN52BQ$ELU1]?L2*D&>16RYFC*!%V[7I7\(Q1[!6#5DG(C#F1^T##VJBA/
MC-;V3G5W3TD4OH",Y:7Z'U02)"R?3NK-NZ=WB"CM\O'2]<FM"B'T4/.@'I(9
M.K6B#,BFS>P;SYX4*JPJ%:$Y7&FFCHK'5&5$.(!O$ZPMM%HIE.)6\C=PFG8X
M3B]^.>\=I\R*5,E5UA:1;4IK:(GBI^T(O/`NWGCZQ24]BABZ2HKLA=U$BRDT
M*``$-[&"DD#.<AD2BHM,P(3GK0D-YT9:90H,&+Z,J*D8$&F:IZ%T=%/[3WF=
MR8YC7U.I=54[%I.-JV7<2)-+002NV&(>K*X<+,:+EDL:,[CAN7=#=L*SM%<E
M(<6!D*0K=LM3^E[AE>94\N>HQ5"<44U.R9<:`!5`^B8___77Q#/:I#&H#K)A
MN[]P+=.G,))SY]WV$TD:1`A=A%C\,9G25,I:BRIR(&VFM&.K[YNZ:)QU7KEB
M)@EM-EBI3)-3B_$=6TTX;LK?^CI)>YIN,)%=39-%>;Z)5`PTBX2I<6A2/WSI
MJSJ`FRLPIH+M=6<JK>Q4%E,_FU):)(_(`4IU58$:B!KZC/)B9Z;J&Q#7368@
MZ5[RMAFF;C AT Z'W3-SO'Q(%XC1A,.#0ZR"-/@X(>$0U5V.&&2^&ZKF%7QB.C$
MJE*?.^:2R$-_@`0)E)XN9)U?N5Y<0D-YZ7:G+S='2*D2L7D``6ZK?W5F4H$>
M/E4J:D/APO>=^QCI.#Z]`%WZ"B#M?31WP_?!;^4E"BJ&XAE39`HN0TAH24V'
M"F?$18KQJ'_J6#?>(JCR1M=P`'<2Z^"B!PGCF[9K1S;:$+\KQXQ7A9(.SB"E
MDN5+SU;W))/CC+5"Y AT V4!KU3H,HYZO/9MZE&RMG(%ZE,REDGI\QD+^>ME8=F
MR8JE[:1BB1Q+^D.FR-EK\X@*+BX/"_#VS"23__!NKEY5J<^P\;A[P8[`82B"
M6C3VZUZAUN\,X^94H8OLD4#J]88[KY$'>(]@*NMFQ%56'H^1<]W,!L[,H]/>
M2]Q@#F.D1_ZSK)&&+*G6S[01Q1H3<=-P%XZS<1+8<&;=`^%[6Q8#`=%@A40I
M$.LG$96:U291J;5-9*J@"]&WR-NM380O$`\H[MCMM*7H)\%")?`.X"(0+%R7
M6&_ADJE/MKF\CU1I<>7:=_4ZBYHCS[\/[.M9A*N^V*G2WUW^NT=_]UK\=PM.
M2/E=>M/HEAR6$P^ALIE3Q17''+QB;YU%)G[[5L#^[:OCETFG\L>IGW5IJ,`=
MP+VW(.<7K\G$IA+KT8*<F8@<E`8>"@T]>WI?J&!+<AHJB`ZU5_.J?P6OA"L"
M=$TN%B,'9>`I.N9N*-!>!9]:0G+U1PB%QJ\[S@$(F\NN4*?R?6WI%10X"O44
M*B7T>G#/`7B^3$61N^Y843(Q]]3)X2;DJA'8F><+Z479*D8Q$H!.VW3AH)C%
MH?"F-WQ]?C6$3O\=O.D,!IW^\-U!7$I.'@$#LN>^8R-</%!@N1'5JQ<J9]W!
MT6N<T'G9.^T-WU&8ZJ0W['<O+^'D?``=N.@,AKVCJ]/.`"ZN!A?GE]TZP*40
M,@KZ`%:G3!;$W41$:$V%?-YW2,9PQI$1KEH/Q%@@NT[0U=4E]`\3JU"Q^-T)
M.IUT.!7V#DBCNUZDRB!5-"5+QD)EF2VKL+T'0Q0_R)07CC4FI_AR0?/;;?0'
M7WIA1$//.M!LH8M6,]I-Y/VKRXZ,P56HF&[J4M:FC_+GW:LWO;[Y.JE"RS0F
MS9?G**G(0"E9U5%U7(9'+<+2N,P`.*Y'D8(49-K(5Z__566!7[0&_)'W?XUV
M*WG_=]>@]W];^/UO_??7^"2O;:+A AT W[B/Z]9'S6Z%`LVTGOXC/>`U>;5NYPQ
M)&4;;36,)FK>_>WV?M-8?J5S>;`TI%K[]`KHCBP#-?;(C**O%YDZ67I3A-\3
MV3#:_-+-:]1"EC;+_9#*`&0I;S+A],V%3`!L&#NK<YQ;7V80S"AOHEQK-W\>
MK2:G55+3TB_J;!@O>*JT$+1[)$$L4,CG3945'(B;U$Q5!L<1;7U$SJK\8CD+
MP=J:WLA!7^IZ+JV7<!S8?H3*A/+CTH3Q1O\A!X>KTJ4@)@BE<PKY4__,]RV0
M)HN+-B/J*ZER6%^@]J2PQH2#:[>HR<5/9?@F,O3_\@>IB1[HEWT%Z$'Y;ZAW
M?J3\;^VT#9;_[=:_\O]K?+3\CVOTZ^.O_MJ&Y,%&9@^?_B9_Y AT 2L!=(MRVH`
MO:_LZS]YHU$/M*'5HC?\6\J9;O'K`/1E;*O AT _D7@4393%1F59F?()T..Z^MW
M`&341+X\0^P6<0"%PFM),0KE7-,Q0`H^/GO&[3IVQ>%Q>GD7YO<AJBUZ4Y8R
MH2(P28'A^AS5K:Z4>"79]'43LT5-.D-^%=D.>IQ*6D\6<XI"R3Q29(T_5$%$
M8Y7$AG1$4;XHQ1H3W<OJ"YE8W=B AT 8L%#,';@)RA"::Z2Y>,/Z"1:<UQECM[Q
MB"H/18 AT ZHUR$?2 AT 6-1*U5AKVSKKF\-Q\T^D-3?1MDE=#*`_47*XZBH)[,_),
M/G`2H6(4;Y;6H8,3BHR-<J:FB:9RK?MD=)W*8N"3G AT GOT9'<3"A0 AT 5935];S
M6+FDZ7NA?2?#VN^3T6J@++&783.?_Y\*KT1T)#-#<4*(ZN?4EBX&YT?HZ9ED
M&PS..L/>>1]\*LS\H_E1#>&7F*\N^&V`,.FB2LBZXP\0X<$-E[53M"_I.!;A
MA\CSE]HGMR?J?>RF;AJ/*."OPJZAK<M#DK>09=[0 AT P^HR551!UL)%%[5`0R9
M#0MUK'P14NR#WGXW58]ZERA5&BD[S.1_AJ!K8Y*5KR<C"CE010"ZV\I^\:UH
M%M)UH9`S^>13T$R`_CO7<DY&LM(&M%N'U_6&>$G2CB"DKB*YKRI+L4KBF%+)
MKD)7YBOT&G%B,,U-52@^#8'^.53&O_[:KRQ93;%/>G4\)T4PI'^.V)@O(G$G
MN/C"NW4%@KH5,CI!62TB&`LLGB31`);OQ^'\B,8$V$*NO^^C%+6C,*;!0#C"
M"L49K4'UBFR>\HJ:6DLC(CMR1'J$VC5EZ\F*#`32/;1O1"*N)2\1]RA:<98Q
ML&Z%>R,O3M>]L0./L]V7_%)_J*Z.+F&64XC)Y;0#2DT]4:4OD,YD^55N+,LL
M8DXE<Y+!Q*%%Z=D?%G6:K12W<'E-7#VG'.%L^6IX'T9B;L9LH>=R/MU/T AT XZ
MY;()_R-WBO_4^BF-4URN?OW?]I[^J8T<V?LUJ=K_0>$VK&T,V)!/<Z2.-4["
M*P(<A&7W[:5<Q AT S!A[&]_L AT FE^/^]J?^D-32:,8VL+=W[YC:#1Z-U)):K5:K
MU=U"#OB+3BU!L>^:W_F?CSR\_=`:=EJGL+J99D`;EM*]"BHYU9/S,LN^5B$7
MW51UG6F<,%_3-0"G(8-`.1,PP7UROUYO[1XUZ&?]L+'UOM'<:YQ`@(BC_=T&
M.`BZ1,,GWQSN'Q]D0UP<L;'XXJ`3&-=#B\-Q#P9*G#G2U#&SM:8>-Q;<N-V(
M->IL#IEZF9Q<)7/R1WAHIO!H..'`]@@7*IQQ9H6R!VH+S`NE,(,Y@<"6U$NS
MA,'3;.+I6=.Q-@&SG`WJ,89""?@7 AT 23G0(WR7IO<D"4)-9!'$`%I`.\/CQOZ
M#]*'*LNZ4Z;O`3S?'`"G0S=)8%9G"Q_2I<)B%!XP,WS='Q[I4>PF^[3C#6LL
MSP+XVHMF4I&"&HB<(4M,ABN>9`;2$%J\5:ODA5QE5088\-NBA03LK4'F0@,L
M$,X*^&:=P0*!RG4[Q;!@,="]_BL[5%FJU33QI0D?5:'QH^[NT<Z;O2WPY1UU
M/A8YW[7U)T^(#?V.^Q+;@-N>`@ZB!X$.?KA)T?\%X<?"K$]7X1#I1:WRLK;F
MCOS67^`0PQ\0O>&,9I0TZ01C1+8<O.'@,4%#BP4-O0UVDIJW+YK?9?4WO4,>
M)6.:3SR=BAM^268_K7,LZ]YF*ZU7X<OVQ:1W"87Q!]D7V+(OJG`Z57&\D]LK
MEC=H<K"_*G=&YY->NVR,5Y#!RQ?EB$V9R`?"'*@H(AJ`CN1?KAAE^C/5YU)?
ME,K67-,YG`&^>+3SO%9]6ELW*M$U$\L AT G?%E[>F:)C(BL*=K2&#Z#YBXX:Y/
M48B"I AT E?I(4%2`8<F\^C?ON2M[[F$SOB AT SU';W)UJF7:_GD3\B7C$4:BT]R-
MP AT CT>TV0--%@HC\<KZA1DOB[]IID39HSP3*'5>?MO$NX5=%,-.=1[SJC=M+M
MMGI)?Z+%V]P'%:%R9X]FOIK?)6U_QT]BNIV,9:^0QA8)L`NP,=0BI"'&D?Z<
MG/UNQ&BJOPDQVJ8#,9J7-#&N/?.(,9KQ)3#']74VN7R.F@;]!XFQW6UI.1(W
M&VS-?<"6]UK&TL+D``)]M<"L%>5_<_@(TB<>B>IMX@`L=($MK7"@+"2C$A1N
M#L9#%R+1[/JML$?TW.JZW208$@'=NNV)"O=O AT 0J@0D;U6*?>\?2'9YJD<;=I
M9DWD8[/7U\-WZ?+H=?B3GH4U0S AT 3O5<;K4*0.PS_T>G]3A24:L<44HI_6T^I
M`-?PUSH25ZJ.D,J>U=8K'I5EEP`5X'IM[:4FMP<`'_D?.`LLK:]QT)2':F>O
MOGN\W3C2$W9YY]N"1L!99UA<75D)7LUAE_HK"ECA5["B27[M=DY7]?_M52U1
M,?)T_N7I^1DX>DO-EE7#S<@,YH?IU.QB@`5P)"#S(HV';POTLZA_&?04.<^/
M/XI<_.+GPW`YZV4M""T]>6I\8AZ"I AT N+7?4GO?&W6GQL-'Y\7U23X'TP<K\O
M.]VN>P.\7UT.-(?X]<RE7EU^'/8G`Y>@L0[Z'2]!2T/M2PEI^4$`1R,EA`Q*
MTV3H<J AT _TH"*E(<0%>7H^$"+_`>$$H%SNX`O??]Z.YJ#Q AT K^!_.IA[!KK.D<
MB"F`#IA\CKK8%VN`3T)DT,X:)ZRT=5'1'`W@@1ZB>E$M]]6W?Q8UB_QR2(O\
MOKO-K\O=7C)N#3KK:[!]"=!18_SHQ9O]IB&83A]>268=)/#;;Y)^-;@`C,>;
MY^"ZM*`&V1=95WYW=L7TZ.*_G**G54?++^,O.IU^`!O7H@#$`JMI/`ZOU/*Y
M*JWTW>AXK-DV^8X9LX-K#-M<2K99VWIM_7FM\L29M06-##,_J55?I,S9GFL`
M;,_FZEQ*6:.]1&NTEVB-]O*EJN.RH8[ZW0F)=IE&9W6RK;/?C9T9QNE$2R2L
M`HREP!>L2[9'9QFV90^7")[)IZ6!`U1/HF0VZ8Z=6PVKO)J[._7&WE%C`80%
M3=UL(65-BDQ\+IR<KV2*M#I(?3!"1/!I-#YK#3^F$SO]=)HFP2!QTNOH]"!1
MA!63#5[@T;I82#NT*Z-3 AT L"V7N0A"$F,6S1C5F!B?I*FXH^=<X#2;+[9.ZXW
MFY"QV6R-V4ZNV02O AT 986_,_`0<#$.!-UD3[8&B?L AT U)OZUVC>;3SOPU5?19K
M*9@@-,D%BEL*P8,;GT7P8+#_D/G$40WKOH*:EBE4$DA_5MA#4P?H;:L#UIG.
M34L3%C8=".*F*`@:1_&BM`CI-"W2CYZB9JBR6M'"1U%QMS^UFET]_/HO]4^_
MD[Q:T#_+II#1=:*F?=S\I'NVJ3[9:BA7&8`4+1C=2`02>$J8\L9<G0BJ5J._
M-K85J/?*?OO!`8P/3;CQ(*%3E."F\RT\@_"*7FX^+J#<=&PV,!1I/2I<W"W4
M>G4)+9M*RT;X/D'YL@"G=A8B9]';BK$7MTNQJZ^-E>Q_)$>AIM[6HL"":P^]
M,%'3BSU8O#`J\$VU/TAZ3B%NU-:P$&W5X:?UER?E-]!BKZ_'[2(9=L:M7IOL
M>"B+T*"R$MM65%2!XO?<CK5F%7K77%9"FXWQ)4U4F#\^[G),CT!#F_)Q(HKJ
MC-F%>P*G(V&LGI'>66,X$"*/9NNT#[193)'//PW]F(/<=K>O^;,]SR''G8`J
MK,N."NG05A2%-NEU.[W+''@.G"D8]^)!UPO.(I/=H#A2U#A(NLDX$4DNFQBY
M.H`S-@?R0S:]"P*+3P*3>FVXC DOT L AT C%#0/P?.1I02];HT48,-)"65V&GO_"43
M\";IC3OC+R77#/`L\3^"P@>!%U3XX0L87,,_EI,(<J/P,URSG+9!W<`9^#?X
MP:4^%Y5S-32')'X>YU"'U4MX(3[<L+A<RZ]ZL(9N9GQ,\QX3SJ<E,4[3T3$[
MTX3`/@0*V0K#;,P`PV1NNY]L2,@?.G9W+3B!H6R.="[(9$85IPQ5Q3]A%.)&
M20V$P#%U**>04M.=GLT\?)7T\"#];0;P-FB=,HN`%JZYP;+D9(5RK-"M&E:X
MBN8QV-NT>#0H,"C95(M>ZT5ADX6[:8HLOZK3#V/L,5/D56^E>9.,J3EU$_W=
MMJ_LFA:.+AX-2_EF08\5>IV3LS0O/&-IVI!B(2G:T\LQ.K;A\KY[\/U/[QN*
M`AD1,9(3[2S4YVRT,+"*XW1TSP&&T!(-4JNK>)2A.A][8/*$3E**FC*Z(T)E
MI^0[(U2&M^'+,5F$2CE,G!G\$R%5SL670>"?G,'F%O"(P?T8R_`/#3T'/,&:
M_+<E'L=,NEC5JXDJJ=&@JT62@"Y&[986WQ&SFH_S"('H AT Y*AWA=A.`:V AT T,P
M!;NX%3'&PC`!F^01'MTO<*FS!=ROCJCTQP[X\7"%P+Y`4O.(-=JT?SN2Y>;`
MFM`,!MY9UABR=1TA.QN+M>57W#_!U`?J3Y$,2S(-5R)9)"NPX(""E:E7W#HF
M#]UQ\V4)?I';,.<IXDZNTYO8SJ3`V:P9MCL2*^F*?-,=49=)$Y'P4F3 AT 0)<M
MZ&61*D3QF5IQ+8C#%?B3\F<3Y<UMC"R0:E`6BU8!C^8K/5)1)3C.WVR$3AM)
ML^/B^!-WPV:I?7?'9 AT D>L5F[0\QDLYACQ4/*IH\C#Q+ME:,P^)N+)B7+"-'>
M,M=@*"Q&67,*AI`"0MG;T.1Q>4(`<'8;.T/65/;`^BH&1TA&)W2P]:;1_/[X
M]>O&(>EJGE1>/DL)`^U^MZN%9E[C1#R%F0F,>9\-S]GZ&(Q`A#D6**VH*I]?
M\R.-?3$K+XT5^>$,XDP)PH:%D4-VI[K[P61\UWBW?_A3\_NMHYVZ9Q5\==J1
MJT%J"Y?N*YM(QKI*@5^CG_X4]K>"@>:RHK_^T!F.)ZWN7R;)\$OCLT^`4?AE
MM:B[(N.7P&L0R=5:']K:-,,9778&S,":`ZE^L<W1D%;8IA]E9D3SWCYI7K3<
MB^]OCK<P&GT011G*'HW!^.'1)HQ"L[[_[MT.Q)\(ZZVFZGT4Y,E:7%9+M#;#
M:39<638"ORUT+":_Y%^3[\BY&"TV33RVSGC%:ZE26VTX/4;CPKYZ=P3!UT;&
M*9HY?`<EF64`@,!`R>W!@*^]?L]F0+63[<^A3C8QD$F<FV5D#8'+P>4DB&:W
MB#/"&^@4BGAAM4K%P?CG:N6#O_#",^!HKN&@XQ`?-K;H;A3[%,%QX7!?081R
M<$V(`JSF`CPYW-&,P0=XD@]P+1,@`JOO'_SD`SRIYP-<SP38^+%1/Q;M8X"-
M'_,!/ID&$+ON`40L9@)\.A-`PJ4!>)('\-E4@`Z7#!"QF`GP>29`X AT SR08!O
M=.)"#@Y?9`*TK,<'N+>5U[Z7.>#J6_6WJ3'>R^ZNN5$1;HFHE)ZIR$2BK^#I
M(D,CRX>CA>,-%"YB>+5BPH*CC7UK3)Y/9>A"YX.3'>3CRQ&_MH9@(%TS4;@,
MOS-ANL9N[[@"`N"8[CED82.$C1IS%GGB["DLX3UY)9=P,`Z1L1[!0I\/R@:?
M(DL+_417$%GDVKV&L;13:XO*6%R"?<"2%$PVXQP[8,2NP-)FV&6OP;Z9=*HE
MV.7X5MBVKRQJ*Z9I+BI_09-D^/!X*1;%\MH?(CS6JZ\43WG>;CSPV^XTN[$V
M>AI1,?!Q*LSJDPNEC$<TN,,VHG'9N`T95Z4YNY,2VNTYIG\@8T1R"])%(!SW
MRU%M AT E5\S2J["\W))I>6&V)63/?/^C$AW$KV=%VI*>XT7 AT P=MA>4Q=>^:.8D
M="_<]FS9>V9YGZ/N4;=>H3(G$+2Q1[K%G9[)5D[#2]]+,T6"@SY*@0UK\42T
M!]Z<]EDW70,`W!KOK#'W33C&_;GP^'/1ZGNI,JXB>I/``^<=L>&"A"O626R*
M880'+U0.$T4\QE$\'J,+N@<TR7TOVS$OJ[1\ZN$`0`_LC0D0Y`9Z[ZL[-9WH
M;`O*]_**'(ZZC['CD6OW8DDRZ/&UFJX]QZEICV[B<Y(^EY0],9E+*^G/"X:1
M/2^D182TVD#43O@&YL!LH\PY5P)[#U2%C/YN:-\#X2[;QA8MOZ(CAZ7T!W>4
MD5D/WWL<JR>(T9$-@T\S$8+S!C=!3Q?SN@@.5^A214V&"15@*#R4GWD.+/(8
MF%M&]#2L3)%N,AZ+5X98]'?8\[2I(,:L*%J6KB+VT1_PVS>"Z2->F6U)A+"H
M`;=#9II(T^$PXUR)9R)&>$GSI$Q^%/*BZPR]740`,`K AT C)4?/QO=[NVX#,/X
M-^(RU"(2)X2J%7R-E^RU[S87:T1OPV_X:J;?E-VXT,W_O]E-;/#FYSL9)'#3
M9GFT,BOKR6C#C3"<1[FS,B%QH=9OSH3,V8!A.!UQ<5YA3G;S2&V#G\\67EOA
MK/G(7BYU15O:\JY.,2OH\@KHN;2]R[:\<QT6FX@;.7.[R"5S>W!7GW4_!TU,
MNVX#=I*$S1V-\W;CAX9F3YHS[;S^J0EATG)]N''/13</0SD_?'ZP.ZIF'#ZP
M AT S8 DOT EFG%H@>HK%$!YQ>QH48^HONCAZ AT 0!N]W(.O]L\1<DP07QYBH!._?@B*S
M*;I08XT/-\ZSF AT KADRG-SIFX/BG(,UDAU_CWOID0;<T@>W")(:;BN0F]R+8:
M,]3\QMH5/-X0$[X&?##,O0H[>(L%\;@'ELG=4<]EA5[WE4HC0+*N#&2 AT QWH6
M*EQI?Z=K2/V726<\2H7BJ+,)@$>!F1=!Z&D AT  DOT IV)F1GX]?;W;R!.QON=O6.[
M'#_P.604!;O[0+*[NSG=GX4 AT X'[<[6Y7WNTGMLTS4R==.;ZSOY?3G.PCWU#!
MO%J"2M%^!_V$U+AS1;?^@%:,_#H<P0^&R:`U3'S39C.UOEIJSC6K9ABX<F,M
M)EZ"*1T@`5.O+3JX)1 AT L]U;MH'"[-VF%AST(\-_JPI4W3/-\<<QWG\!UID?!
MF4NK*D4MZ86AB%%H>#[$/D=(XBPY;TVZXUKZB]",WGC"W7"RI2<:8L^[8A)0
MEXPMUM"2G=2MM\*.%`M43.))F>:+VP+(5]Y"$D;E\!7\`7Y5TCH>0 AT YUS]?7
MEB'VN65SOC%\UETKONP'L$'V8V'/4DOV!<3!+H(]6J1`C$;X0-[3!,\1WU\*
MS24X4N#,;H+/..7UH3$9U1<DT@,3XRTSRY\]4M[K;9D[($!!D%))#GQ:<1KD
M\V[KXZ_](5V1`G=#?!RE--I.2P[X^G35HF3XP5#<KAVLCHQINJG",PDT-EAP
MDD5>#@J#;M%9!R8/V!(]%7")>N;,I#"193`H1?O6J/X5EPS/R+4FIZX3="VB
M\/ZAY&KU\<1<[`-8#99P@;5-==2H-]]N'>&4UVL1V(Q`TM;N[GZ=?\,2&H'`
MQQ*#T%PVG1.0OJD*/!#%PB"PPTTM;"EC&!\7)&D%RV8$&W@=$VSV;X^/?!S8
M38I4P^A=";!BRHV=AVSHZ5$4BA2B66]3*RZ"R<1FQ5]0I#B8A382;OY#T/8@
M`VV\/Q\$]H%6\V1`LE'F#"C,);M AT B8X9VZ8/L,VLW AT QM)Q<70R^\1^GP75^E
MJ!1J3Q!S<J4PEV7[<.?1?_ AT E_>O'W&C%1#1_)1HF.B,L17RG*`.DY6@>P6PJ
MDOW]2ANV3E AT OX[0`R'\\*:K'HX+^4\;U8K1I+?+-K.1A*DOV:3M<EO3M,2AW
M-9SP[7231]";7%<V^6*L2WOSE;_>@P7%1D!'7GFK#":TI4F#FBJ!BO)!=[*A
MI`@L`H7RV"/3!R$EA"-B22`<?F_H13W+KVB&RB4[DJD_&0\F8X'B8"'/+L(W
M5 AT 8\8"`]U")"P1T(3VG1*;T9FE5PNC,9Q3"MD-;BS AT 6!21,K/N><?&;N1?F4
M:PI?Q#HUE^59T[-&9O1MQ#&DZZ@]B*L45.Y"YBFF3<5F%WA,;5;;%*F&OA7#
M3>>-903_M"O6+_R6ZM=\BV=T;F$B!+,G<[S6\&-;41RR4 AT G>/K&GA9TPF$.3
M_;HU*V&`R]:(V7GS;ZK6N-^A4I_`=M5M'SG,KM21%TQX78JO2X6J'Q1=%2D/
M"08D[DL#*RAJ"H AT Z^#(\T/G^[`X?!KX\N+""_`$VJ2D=MRN/\9=-SC+"V#"N
M)%:WQV'1I78>]"G&G<&$.#`PG3\$N;*?T9E`*HN+.;MB^54&]L&%,_?<(J4*
M(!NL6/B9NPXL9\$&P6?RKE3+CSUS$>9]6JL\386>J:Y7@]`S%SPK_BLBS]!E
M5LWMXW<'C</FVZ9SDI%IV:%@@D AT J]K)?ZX/H:0=XCWH=,=$CVO/!Q:/&!([@
MF!:+)!/8'.54$/,BVW"LR+B&70?V!00Q@?`<D9`"#-M;M,HBA5HE4PBJ-7L,
M@]3X=5CP&;$,>"I/>AJW@<P1X$4ZF\O/8FRDFZ^7A?`@W=-@4S%)ZWD\T3#>
M(U`&&9_\ZZ!CJ)1\N$0A&VW\%<0!7N77KAEUEG/Y1 DOT 66U8K AT VS@9T%O,1-30
MH5FA99 AT 76[JHOIKX!M*LEC;-%%(&\VUR96`J;CYS!58N1+O#?XIJ`#B')N&\
M19,-5V"\YICG%AH4DD<ES0](D`;.V&0M"S=;O;,FQJ0S AT 5((Q5.=X0C9Q!2]
MF3@(9Z(YM-Y(4V1)N=`DJ2]VJ"P.2GXX$S<'G?+8*!9+3E><IC9_IR^TG2+8
MCL62B+ECTT3H'2Z- AT 6'\P"^8%-EWQ#I[TX AT D&V+T9XJ+X9>8S37<-%HO AT B2N
MBF*G7\28@.\ZD"'^W^VJT>34N+_S(010W9R.Z3RY1:-SW7OE<.8?V%&>VUJ,
M^X#FM6\-FC&GW1IVU7(XBV"6\R*(R!?LTE&U_*!:4HOB0BC)>J(1FNA3])#3
M?HT</#*GIU74Q7>>-629+,=[A AT PWY8!/&>J3WAW%5#.$RW(\[E AT YSK88$D=E
M\T1G/[#D'0O0`7`C1@?)<PO3?OGL$E*DINBA(%('M?\7"=:Y,1:E#.U2D7Q9
MKG:7,3!5\T6*+&_PY[=LF4E9&-ETJX,79,Z(DG AT G%821A2N?"^/S9D,O<,9O
M`TN/0+EH9DS95%#B*5/6'-D<FFSD@'V3C`G<CF-#$;``CGZ![WE914!34 AT ST
M:ST8>WH>-CYO98`^>G_HP;1HBW>\1%B,?'&H=`!B730 AT HM]R AT 8C DOT I(#(;W)0
M.4+-(6[6]031$YH8N";I[6ZW#/9L[0N8#TP[>B6WHIKFHX+](:#CD>XJT>!9
MM_MPB4D9V9Y>A&[!6SWI$=0LN"JXD5=7G0W:K(!5"%Z%#>Z?)&,RB9]=L'=3
MU2AB#&U"9]\:FJ=L8L_9/MU+DC-S!H^4VK?J/AN^DV&+Z]BJ[LR;]"O>-!1F
MMIE4H[R#`R]WG$"FYO8HP2J*HQIEV=ABS!9!A7RE&GX)V0G88>UV3H<M].Y:
ML)3BV:D9 AT Z<(!*'9S6E/')'@QP6IAJ0*L1K*:B%=&AS2BV$E&1-TQDIBI1=R
M*O$G<!83*Q7GKE^43 AT _"?'0Y/VW.3)_9AC!Z(FI\9/)=8.N6K]!A*]9JY[M,
MM!I;PS"*\NNB90.!.X%NPC_^H1Z)SZGF2O92,$Q'A'/T03NC;ELL`O,N>V[J
MS^FO;92N-V513 AT H'V5Q+2-E#QV[ZPD7?UK@:&0OCO1_C58\L(K+$A@`5`2XT
MW^ZH#]ZWQ:N.]^Y\%E+!7[Y*@L[#12;?\L['877;3'<H$%9B'<KICUFA9%IX
M=ZM%)[8``[7]9IVD(QD.^%2XZDC37+RL,%C];]0,/H2PQ_QVF2X&K;*-$X?!
M09S4:W\?)N+XW_$F3$(V.S"9-O?V2Q2>:>_UXJ79>LEJ_POW7>E0^E,BX&>&
MM4>3`;O5QP!T,ZEA6>HU/O>H[7RU:71>)O*%TTE;]7`AHHXJTGUXN.!P1HI[
M!#$JPWC"0NWFQQ0V563&5\;//U-;/YA`G;:/&RJ6R\5($):?\,V<Q,9#.JCV
ME0DT,K(Z%M"HEM2P:H.]<\*:']6OD(&B:M$$7LS,LF:RQ`Y)9P7_:E[PU3QS
M%$%;*84]]_J7$6J7W=`C[LM3AAZNR1-(-L'/<T-NVE,0"*]I8VIB=<L8\C,6
M0S,&#*Z+'>!&*I!+;81)CD+QBX^QU$+A&[UPD\C AT Z<\8M&=!A+B<)=J!73(B
M7G[R>O*E48(Z5;B905B.P8E#J07_EJT:5Y7@!\3*>'^H^J=_<R['41WA)@6$
MI?0B%)!"*9FT&7,9""T']ISU_>T&FW;2G9\[>V]P>B\NVKY1.;#:`G-'?'$F
MA>&@B3BIQ-),Z!L+Q49U3(&21X%F9!ZO548P'ET.ODN%6%4:0)#.#6XBW%CE
M*GF#N/]A]MCR]DRIY?LM#$._A4'2B7 AT MM&(>"]89P;?0._<O2@#HWN8M[8]J
MFT=<P?DLM*R_0I_NBRV*OC3A$KK^IV0H3D6XQ&*,L/5@:^(M1@)R"D*)'"C*
MYO'5!2UQ;4':IN@/]\]_WL.ZZ=^TCFJE\N3)$_4'I:J5)Q7Z6ZG"7WBJE:H6
M?-6SZI/UM?7URO.G.JFZ5JW^055^TU;Q,P&W9:6FYMON@\D<*%.'H]^^5?^R
M9[6DE_WOCW=VM]4/NF<@K*@*C(Y^5E?53J\]3.`&>+HF$\*``?/N?4S416ND
M/G;[IZVN2L[/-;,9??/PFX=N+U)H%V$/HH?V7:<][,-^0N]4AH/^$/?_D)GV
MT`HVT#5XQW6'"!)>MT[U)K'5'MMO.RS'X[X!Q)VM AT QV\N_-3A_7@!T<Z:65[
M=Q?+3\87_:$M?=B!9>=,'5U,!JU+G?#SD%)&'Y2J/%O^GU9O&1H,^0_-39-O
M-7L$JU1(7%XNK<)?:UV%M37?-G62,:YR29B/;GMJ#_3:!O]_\Y`/(A?J"^JK
MSH&'B9`7%-C?/*3SD&\>"LU1,BI0\VD;4E+=0<>$Y"K++Z`P*OM9C>J&4HL;
MN16QBHIK"]7_G,IZGU)W<$'YO1IM`\QI4G<0:P)^<VVPRA30+@`M;,W4!K\!
M>"JD2%\!,+QV8:"[>5IP<J,6G,S3!":.X[T=$``=!:7:HM)))T`YW5$R7ZDM
M0V\PL1_9BO/P(=1;MQ AT 3@-*[\9BX-MQJ5&9KQ-11<:U1L<2<D9E2,F=T0H-!
M<<#VU?02[6F$NFY#=A-ZR6$6-KP"C=YX^`5O1];IUTJ>V9;D$>X&-<3G'3&M
M[HU&2/2G.[CJGX%50<!7Y!BE>!A<3G'2'UYV>A^/DG&\"7D`,.SX-`#<(,+;
MX%-.^WS@.[W.N-/JZA%@0*_[PY/126O<OIBEI>'8T_IR<M0\V7I??^O%=O=I
MX36X">@.';0WHND_M'#(L^%I$CC(_AKIJ::'DU$=A8/\520'K"8`1,U./@E$
M>$5KH!%EIE,^I["SY=/-F,2TVO-Y9:3VN^)0MA4]P6>"Q#B'FJ5D)H=*BQ3;
M6GQJ)]O#CMZF&EK@?FO1`1D1<*J;"`\Q],OJ0B&"JPWKO*V\$*OR9%J5=R4@
MQ"I761^B`SX7A+D$!PD AT G!!3QN*FLR]6Y:QC<>M)%ZL\A4G;JFEC,15"YECH
MUR-<(^`V"-@;L=&!C=P+++50C*XI',V(;PVI[Q_OO6\<'ID%Q4Q/3Z0XT/C$
MI:0.-Z_[GY+6I5M-`97>YYQ/?YGTQRTH#M#/#OK][O'(R2PRS[3O&L9>OS<M
M6WX6^`0[S<@7;J+\>JTRT+CA$)Z%:+W09I:-K++I8?76FW"QS:AT,!A=)5<X
M?)I)YRRVL6WLM=R[FE^_MR[C_KE_[I_[Y_ZY?^Z?^^?^N7_NG_OG_KE_[I_[
5Y_ZY?^Z?^^?^<<__`5I^-Y<`\```
`
end
filesize 13701
------------10510510F14C87C2--


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019