[comp.sources.games] v12i031: NetHack3 - display oriented dungeons & dragons

billr@saab.CNA.TEK.COM (Bill Randle) (02/09/91)

Submitted-by: Izchak Miller <izchak@linc.cis.upenn.edu>
Posting-number: Volume 12, Issue 31
Archive-name: NetHack3/Patch10g
Patch-To: NetHack3: Volume 7, Issue 56-93
Environment: 



#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 7 (of 8)."
# Contents:  mac/SL.proj.hqx others/ovlmgr.doc others/ovlmgr.uu
# Wrapped by billr@saab on Fri Feb  8 17:19:02 1991
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'mac/SL.proj.hqx' -a "${1}" != "-c" ; then 
  echo shar: Renaming existing file \"'mac/SL.proj.hqx'\" to \"'mac/SL.proj.hqx.orig'\"
  mv -f 'mac/SL.proj.hqx' 'mac/SL.proj.hqx.orig'
fi
echo shar: Extracting \"'mac/SL.proj.hqx'\" \(23630 characters\)
sed "s/^X//" >'mac/SL.proj.hqx' <<'END_OF_FILE'
X(This file must be converted with BinHex 4.0)
X
X:$A0`C@0IE'9f,R"bEfS!8&*25NY"5%`!N!K+[(bb!*!%!3#3!dNL!!"))J!!!CS
X!!""G$80bD@0VCA3J4h*KF'J#!*!$39"36%0(8NBK"!ecF'9MAfaPGLj`FQpU!J#
X3!e"56dT,38K-!*!)8&*25NY"5%`!N"LMb5V8!*!'5V`!N!S9!*!$%&d2CQPZC#"
X04L"QB@0dEh*c!J#3!d&38%a0ENCN)33!#J!X!*!%)JS!N!jC&!!!A!#KeUj)SGD
XZ6k(AMGB!N"i-c!!"$BB!&J#3"J2`!*$r!*$r!*$r!*$be!!!!9J!!(!&!!"%8PC
X5!9!!*'hN!!$r-!#f!*!&%!!NEH3!!2m`!,B!N!83!#4Yj!!!rc!!YJ#3"4!!*'h
XN!!$r-!#f!*!&%!!NEH3!!2m`!,B!N!83!#4Yj!!!rc!!YJ#3"4!!*'hN!!$r-!#
Xf!*!&%!!NEH3!!2m`!,B!N!83!#4Yj!!!rc!!YJ#3"4!!*'hN!!$r-!#f!*!&%!!
XNEH3!!2m`!,B!N!83!#4Yj!!!rc!!YJ#3"4!!*'hN!!$r-!#f!*!&%!!NEH3!!2m
X`!,B!N!83!#4Yj!!!rc!!YJ#3"4!!*'hN!!$r-!#f!*!&%!KcF'9MAfaPGVB!N!8
X3!#4Yj!!!rc!!YJ#3"4!!*'hN!!$r-!#f!*!&%!!NEH3!!2m`!,B!N!8339"36'j
XS8d`)!!'!!!!#`!!!!3#3"'!!N"-%!*!J!J-!!`#3!r`!N!0J!*!6"!#3(J'A!3)
X!"3#3!rJ!N!0J!*!6"!#3(TNS!3)!"J#3!r3!N!0J!*!6"!#3(TNS!3)!"`#3!r!
X!N!0J!*!6"!#3(TNS!3)!"!#3!q`!N!0J!*!6"!#3(J'A!3)!!J#3!qJ!N!0J!*!
X6"!#3)!%#!!J!N!2N!*!$B!#3%`3!N#!"!J!*!*!$i!#3!f!!N"-%!*!HI[!"!J!
X+!*!$h!#3!f!!N"-%!*!J!3)!!3#3!pJ!N!0J!*!6"!#3(Rl8!3)!N!8)!"Mr-!#
Xfri3!N!0J!*!$F!#3"e!!N!-J!"`r2!!"UI!%#Mmm!!'Tm!3H2c`!!DR`"$)r2!!
X"UI!%6Mmm!!'Tm!5%2c`!!DR`"+3r2!!"UI!%aMmm!!'Tm!6Q2c`!!DR`"air2!!
X"UI!!N!-%!*!("!#3)`S)!!!'!*!$"J#3"3S!!J#3#MJ!!%-Yr!"#pM`!3[EB!!!
X$B!#3"6)!N"C!J1j1!%,f2%!!!0!!3[B)!*!&3[C%!%,f5!"#pN`!3[C3!%,f9!"
X#pPJ!3[CF!%,fB!"#pQ3!3[CS!%,fE!"#pR!!3[Cd!%,fH!"#pR`!3[D!!%,fK!"
X#pSJ!3[D-!%,fN!!!3[D8!%,fQ!"#pT`!3[DJ!%,fT!"#pUJ!3[DX!%,fX!"#pV3
X!3[Di!%,f[!"#pX!!3[E%!%,fb!"#pX`!3[E3!%,fe!"$+R`!3b@J!%-J-!"$'L`
X!3a(F!%-%(!"#qr!!3[F8!%--E!"$%DJ!3a&i!%-45)!!"0`!N!2`!J!*#3!"!!$
XrN!LL(NX0!"J!!3!!+G90380'!!PYB@0QD@aP,Q-!!!'JR-eYS*c0ED#Fc@d!'J!
X#!!!RrNe"3dJ"#NeKBdKPB@4PFR-!N!-"SLfSZU)YU,UL,EUh!"J!!3!!+GC$6dj
X'!!KMEfjQD@FZD!"c!!+L(KlhSKiHpk)H([F!'J!"!!!TeP45383!#R4bB@4cG'4
XM,QJ!N!-#SKiG4D)H(8@L(Ke&!"J!!3!!+GC(6%p#!!KRE'pLB@`ZD!"S!!1Jar@
XhS-IeYk$(pEF!&J!#!!!SB&084%N""h0dC'P[,QJ!!!1L(K[jSKiEqD)H'rN!&J!
X"!!!TeN026e)!"f0[Eh*N,QJ!!!1L*`[LSLF,iU)R#q)!'!!"!!!TeNe"3d-!#@e
XKBf0[EQBZD!!!"+)H(JDL(Ki'SKiH"J!@!!%!!#R@690%6`!(EA0NEh-ZD!!!"+)
XH(Y1L(Kl6SKiHd`!B!!%!!#R@8eP69!!)FhPcG'9Y,QJ!N!-%S*cGjD#FhH@JR0h
XP!"B!!J!!+'"858e&!3CdD@eP,QJ!D!!%S*cG0k#Fh6HJR0dh!"B!!J!!+'"'3dj
X8!3G'BfjdE#jS!!!%S*cGV+#FhDbJR0fX!"J!!J!!+'"69%4%!3K6G'4NC@BZD!#
X3!`5JR0h9S*cGeD#FhG8!'!!#!!!SB&084%`"#&0dC'aTBLjS!*!$"+$(p0QJar6
XCS-Idf3!B!!)!!#KJ8e4553%)8h4bD@jR,QJ!N!-%S*c03k#Fc81JR-e$!"J!!J!
X!+!03390$!3K`BA0MB@`ZD!#3!`5JR-BRS*c'*k#FaLF!'J!#!!!S!e&958-"#e&
XeD@0VC(*KGbjS!!!%S*c&jU#FaHDJR-AQ!"J!!J!!+!0'6dj8!3P'Efjd6@Gb,QJ
X!!!5JR-A9S*c&eD#FaG8!'J!#!!!S!d9@48i"#N9fC@jd6@Gb,QJ!N!-%S*c'Hk#
XFaRZJR-Cl!"S!!J!!+!0A58j%!3YAD@jNEhG0Ch)ZD!!!"+#FaJ5JR-B%S*c'"!!
XB!!)!!#J$689193%*6@9ZG8eRFLjS!!!%S*c'Ak#FaPqJR-CI!"`!!J!!+!069%4
X'!3a6G'4'D@aP8'YR,QJ!N!-%S*c'2k#FaMqJR-Br!"`!!J!!+!0648G0!3a6C@G
XYC@jd6'4b,QJ!N!-%S*c'ED#FaQfJR-CY!"`!!J!!+!086dp-!3e8EfpXBQpi9A4
XTE#jS!!!%S*c'$U#FaJkJR-B1!"J!!J!!+!028e98!3K28e9dD@`ZD!"T!!5JR-A
X$S*c&`k#FaF-!'J!#!!!S!d4*38`"#d4TB@a[CdeRFLjS!!!%S*c&fU#FaGUJR-A
XD!"J!!J!!+!0'58a&!3P'D@aP6@Gb,QJ!!!5JR-AXS*c&l+#FaH`!&!!#!!!S!dK
X'8bi""8K'8bjS!!!%S,%p&D#a24@JX6d9!"B!!J!!+!0$6da2!3G$Efa[FLjS!!!
X%S*c'+k#FaLZJR-BV!"`!!J!!+!054902!3e5CA0[GA*MC8eRFLjS!!!%SLQSeU)
XTU0DL+DM@!"J!!3!!+GC&@&4&!!KPH(4PFQiZD!"R!!5L(KZDSKiEQU)H'jS!'J!
X"!!!TeNe"3d%!#NeKBd&XCA*d,QJ!,S)!##`!N!2X!J!*#3!"!!$rN!LL,CdP!"S
X!!3!!+G9-49CI!!TXCACIBfpYF#jM!*!$!D#Fc@fJR-eYS*c0E3!D!!)!!#Iq68&
X$5!%+6@&M5'9KC'9bF`#3!`'L(KeGSKiGAD)H(9d!&J!"!!!TeNK"3dX!"QKKBfX
XZD!"P!!+L,DLkSLfSZU)YZVF!'!!"!!!TeN026NB!#'0[EQCTCbjS!(-!!k)H([H
XL(KlhSKiHp`!D!!%!!#R@9&*"4!!+G(*KC(0dC'-ZD!#3!`1L(Ke&SKiG4D)H(88
X!'!!"!!!TeNG-6d)!#'GXEf*KE#jS!'J!"+$(pEHJar@hS-IeY`!@!!)!!#KJ8e4
X%53%(Fh4ND@mZD!!!"+)H'rQL(K[jSKiEq3!@!!%!!#R@3dp28J!(Bfp[FQ3ZD!!
X!"+)R#q+L*`[LSLF,iJ!B!!%!!#R@68&$3`!*E@&MBfpZCLjS!!!&SKiH"U)H(JD
XL(Ki'!"B!!3!!+GC08d42!!GYFf4[FbjS!!!&SKiHdk)H(Y1L(Kl6!"J!!3!!+GC
X6@908!!KcHA0dC@dZD!#3!`@JR0hPS*cGjD#FhH8!&J!#!!!SB&4*688""R4TE@8
XZD!"S!!@JR0dhS*cG0k#Fh6F!&J!#!!!SB%C$6P3""dCMER4X,QJ!!!@JR0fXS*c
XGV+#FhD`!'!!#!!!SB&084%3"#&0dC'4PCLjS!*!$"D#FhG@JR0h9S*cGe3!B!!)
X!!#KJ8e4%6!%)8h4NE'PL,QJ!N!-&S-IdfD$(p0QJar6C!"J!!J!!+'"69&**!3K
X6G(*TEQFZD!#3!`@JR-e$S*c03k#Fc8-!'!!#!!!S!e""8d-"#("KFf0KE#jS!*!
X$"D#FaLHJR-BRS*c'*`!D!!)!!#J$899*3`%,8A9TBfYNFQ&h,QJ!!!@JR-AQS*c
X&jU#FaHB!'!!#!!!S!dC26P3"#8C[ER40Ch)ZD!!!"D#FaG@JR-A9S*c&e3!D!!)
X!!#J$49C&6J%+4ACPER40Ch)ZD!#3!`@JR-ClS*c'Hk#FaRX!'J!#!!!S!eG*6N3
X"#eGTEQ4[GdeRFLjS!!!&S*c'"+#FaJ5JR-B%!"J!!J!!+!0048j9!3P0C@je6@G
Xb,QJ!!!@JR-CIS*c'Ak#FaPm!(!!#!!!S!e084%B"$&0dC%CTE'93DfFZD!#3!`@
XJR-BrS*c'2k#FaMm!(!!#!!!S!e0&4dd"$&0PCfePER4-C()ZD!#3!`@JR-CYS*c
X'ED#FaQd!(!!#!!!S!e426d`"$94[EfaLEhK9G'PX,QJ!!!@JR-B1S*c'$U#FaJi
X!'!!#!!!S!dp6993"#%p69A4TE#jS!'N!"D#FaF1JR-A$S*c&``!D!!)!!#J$4%P
X"6!%,4'PKE'pR6@Gb,QJ!!!@JR-ADS*c&fU#FaGS!'!!#!!!S!dC*6%8"#8CTE'9
X0Ch)ZD!!!"D#FaHbJR-AXS*c&l!!8!!)!!#J$5%C6,J%&5%C6,QJ!!!@JX6d9S,%
Xp&D#a248!&J!#!!!S!d026%m""d0[E'pb,QJ!!!@JR-BVS*c'+k#FaLX!(!!#!!!
XS!e*&8dm"$9*PFfpeFQ0P6@Gb,QJ!!!@L+DM@SLQSeU)TU0B!'!!"!!!TeN9B9%8
X!#'9iG'9bELjS!'F!"D)H'jUL(KZDSKiEQJ!D!!%!!#R@68&$33!+6@&M3@aPFR3
XZD!!Z!!+L(K`ASKiF&k)H("F!&J!"!!!TeN4&3d`!"Q4PBf`ZD!"d!!1L(KkTSKi
XHUD)H(UN!&J!"!!!TeP0348`!"h0`C@aX,QJ!!!1L(K[$SKiE`k)H'm-!&J!"!!!
XTeN026%m!"f0[E'pb,QJ!!!1L(KiESKiH'k)H(KX!&!!"!!!TeNp#5Li!"@pLDLj
XS!!!$SKiIED)H(ffL(KpY!"3!!3!!+GCC6e8Z!!9jEh8ZD!!!"+)H'lbL(KZmSKi
XE[!!B!!%!!#R@39488J!)BA4dFQPL,QJ!D!!%SKiGp+)H(I5L(Khd!"B!!3!!+GC
X06dj6!!GYEfjcG#jS!!!%SKiILD)H(iQL(Kq*!"J!!3!!+GCC6e93!!PjEh9`FQp
X`,QJ!!!@L(KjTSKiHDD)H(QN!&J!"!!!TeP"56e!!"R"bEh!ZD!!Z!!@L(KjKSKi
XHBD)H(Q%!'J!"!!!TeP"&8Nd!#R"PFQe[ER0d,QJ!,J!'SKiGUU)H(DUL(KfU!"J
X!!3!!+GC06dj"!!PYEfjKG(4V,QJ!!!DL(KhLSKiGiU)H(H)!'!!"!!!TeNe26NB
X!#@e[EQCXB@FZD!!!"D)XFZUL,(,USLabkJ!8!!%!!#R@8%dZ5!!%F'dZD!"K!!1
XL,(,aSLabmD)XF[%!'!!"!!!TeNp138d!#'pZB@ePFbjS!*!$!U)H(J'L(Ki"SKi
XH!3!B!!%!!#R@68p18`!)E@pZFhPY,QJ!N!-#SKiGQ+)H(CLL(KfB!"J!!3!!+GC
X05e*2!!KYDh*[EfdZD!#3!`+L(KiZSKiH,U)H(Li!'J!"!!!TeNp#5N-!#QpLDQ0
XXBA0c,QJ!,J!#SKiG5D)H(8QL(Ke*!"B!!3!!+GC(6da%!!CREfaN,QJ!F`!#SLa
Xbik)XFZ1L,(,M!"B!!3!!+GC88N&3!!CdFQ&`,QJ!F`!#SKiG*U)H(5DL(KdQ!"B
X!!3!!+GC'6%&(!!CQE'&R,QJ!F`!#SKiHQD)H(TQL(KkC!"3!!3!!+GC565j)!!4
XbE5jS!'J!!D)H(UDL(KkQSKiHTJ!B!!%!!#R@8e"I6!!)Fh"IE'9f,QJ!D!!FJ!!
X)8!#3!qJ#!!N*!!%!!2q3#+)YQp`!'!!"!!!Te8a&9Pm!#@aPGPpXCAJZB`!!!D#
XFc@fJR-eYS*c0E3!D!!)!!#Iq68&$5!%+6@&M5'9KC'9bF`#3!`'Jar@hS-IeYk$
X(pEF!&J!#!!!SB&084%N!"h0dC'P[,QJ!!!'L(KeGSKiGAD)H(9d!&J!"!!!TeNK
X"3dX!"QKKBfXZD!#3!`+L,DLkSLfSZU)YZVF!'!!"!!!TeN026NB!#'0[EQCTCbj
XS!(-!!k)H([HL(KlhSKiHp`!D!!%!!#R@9&*"4!!+G(*KC(0dC'-ZD!#3!`1L(Ke
X&SKiG4D)H(88!'!!"!!!TeNG-6d)!#'GXEf*KE#jS!'J!"+)H'rQL(K[jSKiEq3!
X@!!%!!#R@3dp28J!(Bfp[FQ3ZD!!!"+)R#q+L*`[LSLF,iJ!B!!%!!#R@68&$3`!
X*E@&MBfpZCLjS!!!&SKiH"U)H(JDL(Ki'!"B!!3!!+GC08d42!!GYFf4[FbjS!!!
X&SKiHdk)H(Y1L(Kl6!"J!!3!!+GC6@908!!KcHA0dC@dZD!#3!`@JR0hPS*cGjD#
XFhH8!&J!#!!!SB&4*688""R4TE@8ZD!"S!!@JR0dhS*cG0k#Fh6F!&J!#!!!SB%C
X$6P3""dCMER4X,QJ!!!@JR0fXS*cGV+#FhD`!'!!#!!!SB&084%3"#&0dC'4PCLj
XS!*!$"D#FhG@JR0h9S*cGe3!B!!)!!#KJ8e4%6!%)8h4NE'PL,QJ!N!-&S-IdfD$
X(p0QJar6C!"J!!J!!+'"69&**!3K6G(*TEQFZD!#3!`@JR-e$S*c03k#Fc8-!'!!
X#!!!S!e""8d-"#("KFf0KE#jS!*!$"D#FaLHJR-BRS*c'*`!D!!)!!#J$899*3`%
X,8A9TBfYNFQ&h,QJ!!!@JR-AQS*c&jU#FaHB!'!!#!!!S!dC26P3"#8C[ER40Ch)
XZD!!!"D#FaG@JR-A9S*c&e3!D!!)!!#J$49C&6J%+4ACPER40Ch)ZD!#3!`@JR-C
XlS*c'Hk#FaRX!'J!#!!!S!eG*6N3"#eGTEQ4[GdeRFLjS!!!&S*c'"+#FaJ5JR-B
X%!"J!!J!!+!0048j9!3P0C@je6@Gb,QJ!!!@JR-CIS*c'Ak#FaPm!(!!#!!!S!e0
X84%B"$&0dC%CTE'93DfFZD!#3!`@JR-BrS*c'2k#FaMm!(!!#!!!S!e0&4dd"$&0
XPCfePER4-C()ZD!#3!`@JR-CYS*c'ED#FaQd!(!!#!!!S!e426d`"$94[EfaLEhK
X9G'PX,QJ!!!@JR-B1S*c'$U#FaJi!'!!#!!!S!dp6993"#%p69A4TE#jS!'N!"D#
XFaF1JR-A$S*c&``!D!!)!!#J$4%P"6!%,4'PKE'pR6@Gb,QJ!!!@JR-ADS*c&fU#
XFaGS!'!!#!!!S!dC*6%8"#8CTE'90Ch)ZD!!!"D#FaHbJR-AXS*c&l!!8!!)!!#J
X$5%C6,J%&5%C6,QJ!!!@JX6d9S,%p&D#a248!&J!#!!!S!d026%m""d0[E'pb,QJ
X!!!@JR-BVS*c'+k#FaLX!(!!#!!!S!e*&8dm"$9*PFfpeFQ0P6@Gb,QJ!!!@L+DM
X@SLQSeU)TU0B!'!!"!!!TeN9B9%8!#'9iG'9bELjS!'F!"D)H'jUL(KZDSKiEQJ!
XD!!%!!#R@68&$33!+6@&M3@aPFR3ZD!!Z!!+L(K`ASKiF&k)H("F!&J!"!!!TeN4
X&3d`!"Q4PBf`ZD!"d!!1L(KkTSKiHUD)H(UN!&J!"!!!TeP0348`!"h0`C@aX,QJ
X!!!1L(K[$SKiE`k)H'm-!&J!"!!!TeN026%m!"f0[E'pb,QJ!!!1L(KiESKiH'k)
XH(KX!&!!"!!!TeNp#5Li!"@pLDLjS!!!$SKiIED)H(ffL(KpY!"3!!3!!+GCC6e8
XZ!!9jEh8ZD!!!"+)H'lbL(KZmSKiE[!!B!!%!!#R@39488J!)BA4dFQPL,QJ!D!!
X%SKiGp+)H(I5L(Khd!"B!!3!!+GC06dj6!!GYEfjcG#jS!!!%SKiILD)H(iQL(Kq
X*!"J!!3!!+GCC6e93!!PjEh9`FQp`,QJ!!!@L(KjTSKiHDD)H(QN!&J!"!!!TeP"
X56e!!"R"bEh!ZD!!Z!!@L(KjKSKiHBD)H(Q%!'J!"!!!TeP"&8Nd!#R"PFQe[ER0
Xd,QJ!,J!'SKiGUU)H(DUL(KfU!"J!!3!!+GC06dj"!!PYEfjKG(4V,QJ!!!DL(Kh
XLSKiGiU)H(H)!'!!"!!!TeNe26NB!#@e[EQCXB@FZD!!!"D)XFZUL,(,USLabkJ!
X8!!%!!#R@8%dZ5!!%F'dZD!"K!!1L,(,aSLabmD)XF[%!'!!"!!!TeNp138d!#'p
XZB@ePFbjS!*!$!U)H(J'L(Ki"SKiH!3!B!!%!!#R@68p18`!)E@pZFhPY,QJ!N!-
X#SKiGQ+)H(CLL(KfB!"J!!3!!+GC05e*2!!KYDh*[EfdZD!#3!`+L(KiZSKiH,U)
XH(Li!'J!"!!!TeNp#5N-!#QpLDQ0XBA0c,QJ!,J!#SKiG5D)H(8QL(Ke*!"B!!3!
X!+GC(6da%!!CREfaN,QJ!F`!#SLabik)XFZ1L,(,M!"B!!3!!+GC88N&3!!CdFQ&
X`,QJ!F`!#SKiG*U)H(5DL(KdQ!"B!!3!!+GC'6%&(!!CQE'&R,QJ!F`!#SKiHQD)
XH(TQL(KkC!"3!!3!!+GC565j)!!4bE5jS!'J!!D)H(@HL(KeRSKiGC`!D!!%!!#R
X@6%9@A`!+E'9fAf0[EA!ZD!!Z!!'L(KkQSKiHTU)H(UB!'!!"!!!TeP03Ad`!#(0
X`AfaPGLjS!'L#!!6F!*!$p!)!#3N!!3!!rj!)SKiPl`!@!!%!!#R938a-6`!(B@a
XXEf-ZB`!!!D#Fc@fJR-eYS*c0E3!D!!)!!#Iq68&$5!%+6@&M5'9KC'9bF`"K!!'
XL,DLkSLfSZU)YZVF!'!!"!!!TeN026NB!#'0[EQCTCbjS!(-!!U)H([HL(KlhSKi
XHp`!D!!%!!#R@9&*"4!!+G(*KC(0dC'-ZD!"K!!+L(Ke&SKiG4D)H(88!'!!"!!!
XTeNG-6d)!#'GXEf*KE#jS!'J!!k$(pEHJar@hS-IeY`!@!!)!!#KJ8e4%53%(Fh4
XND@mZD!!!!k)H'rQL(K[jSKiEq3!@!!%!!#R@3dp28J!(Bfp[FQ3ZD!!!!k)R#q+
XL*`[LSLF,iJ!B!!%!!#R@68&$3`!*E@&MBfpZCLjS!!!%SKiH"U)H(JDL(Ki'!"B
X!!3!!+GC08d42!!GYFf4[FbjS!!!%SKiHdk)H(Y1L(Kl6!"J!!3!!+GC6@908!!K
XcHA0dC@dZD!#3!`5JR0hPS*cGjD#FhH8!&J!#!!!SB&4*688""R4TE@8ZD!"S!!5
XJR0dhS*cG0k#Fh6F!&J!#!!!SB%C$6P3""dCMER4X,QJ!!!5JR0fXS*cGV+#FhD`
X!'!!#!!!SB&084%3"#&0dC'4PCLjS!*!$"+#FhG@JR0h9S*cGe3!B!!)!!#KJ8e4
X%6!%)8h4NE'PL,QJ!N!-%S-IdfD$(p0QJar6C!"J!!J!!+'"69&**!3K6G(*TEQF
XZD!#3!`5JR-e$S*c03k#Fc8-!'!!#!!!S!e""8d-"#("KFf0KE#jS!*!$"+#FaLH
XJR-BRS*c'*`!D!!)!!#J$899*3`%,8A9TBfYNFQ&h,QJ!!!5JR-AQS*c&jU#FaHB
X!'!!#!!!S!dC26P3"#8C[ER40Ch)ZD!!!"+#FaG@JR-A9S*c&e3!D!!)!!#J$49C
X&6J%+4ACPER40Ch)ZD!#3!`5JR-ClS*c'Hk#FaRX!'J!#!!!S!eG*6N3"#eGTEQ4
X[GdeRFLjS!!!%S*c'"+#FaJ5JR-B%!"J!!J!!+!0048j9!3P0C@je6@Gb,QJ!!!5
XJR-CIS*c'Ak#FaPm!(!!#!!!S!e084%B"$&0dC%CTE'93DfFZD!#3!`5JR-BrS*c
X'2k#FaMm!(!!#!!!S!e0&4dd"$&0PCfePER4-C()ZD!#3!`5JR-CYS*c'ED#FaQd
X!(!!#!!!S!e426d`"$94[EfaLEhK9G'PX,QJ!!!5JR-B1S*c'$U#FaJi!'!!#!!!
XS!dp6993"#%p69A4TE#jS!'N!"+#FaF1JR-A$S*c&``!D!!)!!#J$4%P"6!%,4'P
XKE'pR6@Gb,QJ!!!5JR-ADS*c&fU#FaGS!'!!#!!!S!dC*6%8"#8CTE'90Ch)ZD!!
X!"+#FaHbJR-AXS*c&l!!8!!)!!#J$5%C6,J%&5%C6,QJ!!!5JX6d9S,%p&D#a248
X!&J!#!!!S!d026%m""d0[E'pb,QJ!!!5JR-BVS*c'+k#FaLX!(!!#!!!S!e*&8dm
X"$9*PFfpeFQ0P6@Gb,QJ!!!5L+DM@SLQSeU)TU0B!'!!"!!!TeN9B9%8!#'9iG'9
XbELjS!'F!"+)H'jUL(KZDSKiEQJ!D!!%!!#R@68&$33!+6@&M3@aPFR3ZD!!ZSKk
X!!!!`!!!"!*!$#3N!!3!!rj!)S-J$e!!8!!)!!#KC38j653!%38j653!!J!!!-!#
X3!r`!!!N*!!%!!2q3#+$)$E`!&!!#!!!S@99159J!"(9ZDAJ!!)!!!$3!N!2i!!!
X*#3!"!!$rN!LJVX)#!"J!!J!!+!903808!!K0B@08FQ&`F`!!J!!)8!#3!q3#!!N
X*!!%!!2q3#+)YR#`!'J!"!!!Te8a&9Pm!#QaPGPpYB@PZ,Q-!N!-"S*c0ED#Fc@f
XJR-eY!"S!!J!!*rj0380)!3T0B@0)C@&NCA*c!*!$!D)H(9fL(KeGSKiGA3!@!!%
X!!#R@5%&$5`!'D'&MDbjS!'8!!U)YU,UL,DLkSLfkY`!B!!%!!#R@3dp14J!)Bfp
XZCQPR,QJ!F`!$SKiHpk)H([HL(Klh!"S!!3!!+GC88N&%!!TdFQ&NFh4NBbjS!*!
X$!k)H(8@L(Ke&SKiG43!B!!%!!#R@4da23J!)Cfa[BQ&X,QJ!D!!%S-IeYk$(pEH
XJar@h!"B!!J!!+'"69%4*!3GcG'4TEbjS!!!%SKiEqD)H'rQL(K[j!"B!!3!!+GC
X$6dp5!!GMEfpbC#jS!!!%SLF,iU)R#q+L*`[L!"J!!3!!+GC0380$!!PYB@0MEfj
XQ,QJ!!!@L(Ki'SKiH"U)H(JB!&J!"!!!TeNe64%m!"fecC'pc,QJ!!!@L(Kl6SKi
XHdk)H(Y-!'!!"!!!TeP0C8e3!#(0jFh4PE5jS!*!$"D#FhH@JR0hPS*cGj3!@!!)
X!!#KJ9%P043%'G'PYC5jS!'J!"D#Fh6HJR0dhS*cG0`!@!!)!!#KJ4N019!%(4Q0
XZG'`ZD!!!"D#FhDbJR0fXS*cGV!!B!!)!!#KJ8e4%4!%)8h4NC'9Q,QJ!N!-&S*c
XGeD#FhG@JR0h9!"J!!J!!+'"69%4-!3K6G'4XD@)ZD!#3!`@Jar6CS-IdfD$(p0N
X!'!!#!!!SB&088NN"#&0dFQPZCbjS!*!$"D#Fc81JR-e$S*c03`!B!!)!!#J$8%&
X63`%)F'&cBf&X,QJ!N!-&S*c'*k#FaLHJR-BR!"S!!J!!+!0498P$!3Y4G@PMDf4
XbBAFZD!!!"D#FaHDJR-AQS*c&jJ!B!!)!!#J$4Np19!%*4QpZG%eRFLjS!!!&S*c
X&eD#FaG@JR-A9!"S!!J!!+!0&9N91!3T&GQ9ZG%eRFLjS!*!$"D#FaRZJR-ClS*c
X'H`!D!!)!!#J$9dP14!%,9fPZC'ph6@Gb,QJ!!!@JR-B%S*c'"+#FaJ3!'!!#!!!
XS!de&6P8"#8ePER90Ch)ZD!!!"D#FaPqJR-CIS*c'A`!F!!)!!#J$8e4%4J%-8h4
XN4QPXC9"VCbjS!*!$"D#FaMqJR-BrS*c'2`!F!!)!!#J$8d9(63%-8f9RE@9ZG%a
XNFLjS!*!$"D#FaQfJR-CYS*c'E3!F!!)!!#J$9%p26!%09'p[E'*[H&9dD@`ZD!!
X!"D#FaJkJR-B1S*c'$J!B!!)!!#J$6e099!%)6e09G'PX,QJ!D3!&S*c&`k#FaF1
XJR-A$!"S!!J!!+!0%58&-!3Y%D@&XEfG0Ch)ZD!!!"D#FaGUJR-ADS*c&fJ!B!!)
X!!#J$4NP-43%*4QPXC8eRFLjS!!!&S*c&l+#FaHbJR-AX!"3!!J!!+!0)4P-Z!39
X)4P-ZD!!!"D#a24@JX6d9S,%p&3!@!!)!!#J$3dp-6`%(3fpXEh)ZD!!!"D#FaLZ
XJR-BVS*c'+`!F!!)!!#J$8N966`%08Q9cEh9bBf90Ch)ZD!!!"D)TU0DL+DM@SLQ
XSeJ!B!!%!!#R@49K843!)CAKdCA*Z,QJ!C`!&SKiEQU)H'jUL(KZD!"S!!3!!+GC
X0380"!!T0B@0"E'9bG#jS!#i!!U)H("HL(K`ASKiF&`!@!!%!!#R@4%9$6!!'C'9
XME#jS!(3!!k)H(UQL(KkTSKiHU3!@!!%!!#R@8e"&6!!(Fh"PE'`ZD!!!!k)H'm1
XL(K[$SKiE``!@!!%!!#R@3dp-6`!(BfpXEh)ZD!!!!k)H(KZL(KiESKiH'`!8!!%
X!!#R@6d*+,J!&Ef*U,QJ!!!1L(KpYSKiIED)H(fd!&!!"!!!TePP295i!"AP[G5j
XS!!!%SKiE[+)H'lbL(KZm!"J!!3!!+GC"9&45!!KKG(4bD@)ZD!"S!!5L(KhdSKi
XGp+)H(I3!&J!"!!!TeNe26P-!"fe[ER0d,QJ!!!5L(Kq*SKiILD)H(iN!'!!"!!!
XTePP299!!#AP[GA"bEh!ZD!!!"D)H(QQL(KjTSKiHD3!@!!%!!#R@8&*28!!'F(*
X[F#jS!#i!"D)H(Q'L(KjKSKiHB3!D!!%!!#R@8%9563!+F'9bE@pZFh3ZD!!Z!!D
XL(KfUSKiGUU)H(DS!'!!"!!!TeNe26N%!#@e[EQ&dG'XZD!!!"U)H(H+L(KhLSKi
XGiJ!B!!%!!#R@68p14J!*E@pZCQaKCbjS!!!&SKiGa+)H(F5L(Kh%!"J!!3!!+GC
X06dj%!!PYEfjNBA4K,QJ!!!@L,(,USLabkU)XFZS!&!!"!!!TeP"0,NJ!"("Y,QJ
X!G!!$SLabmD)XF['L,(,a!"J!!3!!+GC26N&0!!K[EQ&YCA-ZD!#3!`+L(Ki"SKi
XH!D)H(J%!'!!"!!!TeNe26P-!#'e[ER0jE5jS!*!$!U)H(CLL(KfBSKiGQ!!B!!%
X!!#R@68Y56`!)E@YbEfpY,QJ!N!-#SKiH,U)H(LkL(KiZ!"S!!3!!+GC23NT$!!T
X[BQTME'&cFbjS!#i!!U)H(8QL(Ke*SKiG53!@!!%!!#R@4dp-4!!'CfpXC#jS!(-
X!!U)XFZ1L,(,MSLabi`!@!!%!!#R@9&*"8!!'G(*KF#jS!(-!!U)H(5DL(KdQSKi
XG*J!@!!%!!#R@4Na"4`!'CQaKCbjS!(-!!U)H(TQL(KkCSKiHQ3!8!!%!!#R@8Nd
XZ5!!%FQdZD!"S!!'JR0d'S*cG"U#Fh3B!'!!#!!!SB%026P-"#@0[ER0[E'8ZD!#
X!!!B%!*!$i!)!#3N!!3!!rj!)SKihfJ!@!!%!!#R968p18`!(E@pZFh3ZB`!!!D#
XFc@fJR-eYS*c0E3!D!!)!!#Iq68&$5!%+6@&M5'9KC'9bF`!Z!!'L,DLkSLfSZU)
XYZVF!'!!"!!!TeN026NB!#'0[EQCTCbjS!(-!!U)H([HL(KlhSKiHp`!D!!%!!#R
X@9&*"4!!+G(*KC(0dC'-ZD!!Z!!+L(Ke&SKiG4D)H(88!'!!"!!!TeNG-6d)!#'G
XXEf*KE#jS!'J!!k$(pEHJar@hS-IeY`!@!!)!!#KJ8e4%53%(Fh4ND@mZD!!!!k)
XH'rQL(K[jSKiEq3!@!!%!!#R@3dp28J!(Bfp[FQ3ZD!!!!k)R#q+L*`[LSLF,iJ!
XB!!%!!#R@68&$3`!*E@&MBfpZCLjS!!!%SKiH"U)H(JDL(Ki'!"B!!3!!+GC08d4
X2!!GYFf4[FbjS!!!%SKiHdk)H(Y1L(Kl6!"J!!3!!+GC6@908!!KcHA0dC@dZD!#
X3!`5JR0hPS*cGjD#FhH8!&J!#!!!SB&4*688""R4TE@8ZD!"S!!5JR0dhS*cG0k#
XFh6F!&J!#!!!SB%C$6P3""dCMER4X,QJ!!!5JR0fXS*cGV+#FhD`!'!!#!!!SB&0
X84%3"#&0dC'4PCLjS!*!$"+#FhG@JR0h9S*cGe3!B!!)!!#KJ8e4%6!%)8h4NE'P
XL,QJ!N!-%S-IdfD$(p0QJar6C!"J!!J!!+'"69&**!3K6G(*TEQFZD!#3!`5JR-e
X$S*c03k#Fc8-!'!!#!!!S!e""8d-"#("KFf0KE#jS!*!$"+#FaLHJR-BRS*c'*`!
XD!!)!!#J$899*3`%,8A9TBfYNFQ&h,QJ!!!5JR-AQS*c&jU#FaHB!'!!#!!!S!dC
X26P3"#8C[ER40Ch)ZD!!!"+#FaG@JR-A9S*c&e3!D!!)!!#J$49C&6J%+4ACPER4
X0Ch)ZD!#3!`5JR-ClS*c'Hk#FaRX!'J!#!!!S!eG*6N3"#eGTEQ4[GdeRFLjS!!!
X%S*c'"+#FaJ5JR-B%!"J!!J!!+!0048j9!3P0C@je6@Gb,QJ!!!5JR-CIS*c'Ak#
XFaPm!(!!#!!!S!e084%B"$&0dC%CTE'93DfFZD!#3!`5JR-BrS*c'2k#FaMm!(!!
X#!!!S!e0&4dd"$&0PCfePER4-C()ZD!#3!`5JR-CYS*c'ED#FaQd!(!!#!!!S!e4
X26d`"$94[EfaLEhK9G'PX,QJ!!!5JR-B1S*c'$U#FaJi!'!!#!!!S!dp6993"#%p
X69A4TE#jS!'N!"+#FaF1JR-A$S*c&``!D!!)!!#J$4%P"6!%,4'PKE'pR6@Gb,QJ
X!!!5JR-ADS*c&fU#FaGS!'!!#!!!S!dC*6%8"#8CTE'90Ch)ZD!!!"+#FaHbJR-A
XXS*c&l!!8!!)!!#J$5%C6,J%&5%C6,QJ!!!5JX6d9S,%p&D#a248!&J!#!!!S!d0
X26%m""d0[E'pb,QJ!!!5JR-BVS*c'+k#FaLX!(!!#!!!S!e*&8dm"$9*PFfpeFQ0
XP6@Gb,QJ!!!5L+DM@SLQSeU)TU0B!'!!"!!!TeN9B9%8!#'9iG'9bELjS!'F!"+)
XH'jUL(KZDSKiEQJ!D!!%!!#R@68&$33!+6@&M3@aPFR3ZD!!Z!!'L(KjKSKiHBD)
XH(Q%!'J!"!!!TeP"&8Nd!#R"PFQe[ER0d,QJ!,J!#SKiGUU)H(DUL(KfU!"J!!3!
X!+GC06dj"!!PYEfjKG(4V,QJ!!!+L(KhLSKiGiU)H(H)!'!!"!!!TeNe26NB!#@e
X[EQCXB@FZD!!!!D)H(J'L(Ki"SKiH!3!B!!%!!#R@68p18`!)E@pZFhPY,QJ!N!-
X"SKiF0k)H($HL(K`h!"B!!3!!+GC&8dK,!!CPFfKV,QJ!D!!"SKiI4D)H(d@L(Kp
X&!"B!!3!!+GC@399-!!GfBA9XG#jS!!!"SKiF-+)H($#L(K``!"B!!3!!+GC&8&*
X*!!CPF(*T,QJ!N!-"SKiE`k)H'm1L(K[$!"B!!3!!+GC$6da2!!GMEfa[FLjS!))
X!"A!!N!2F!J!*#3!"!!$rN!LL*!,Y!"J!!3!!+G923NT&!!P[BQTPBh4c,Q-!!!'
XJR-eYS*c0ED#Fc@d!'J!#!!!RrNe"3dJ"#NeKBdKPB@4PFR-!,J!"SLfSZU)YU,U
XL,EUh!"J!!3!!+GC$6dj'!!KMEfjQD@FZD!"c!!+L(KlhSKiHpk)H([F!'J!"!!!
XTeP45383!#R4bB@4cG'4M,QJ!,J!#SKiG4D)H(8@L(Ke&!"J!!3!!+GC(6%p#!!K
XRE'pLB@`ZD!"S!!1Jar@hS-IeYk$(pEF!&J!#!!!SB&084%N""h0dC'P[,QJ!!!1
XL(K[jSKiEqD)H'rN!&J!"!!!TeN026e)!"f0[Eh*N,QJ!!!1L*`[LSLF,iU)R#q)
X!'!!"!!!TeNe"3d-!#@eKBf0[EQBZD!!!"+)H(JDL(Ki'SKiH"J!@!!%!!#R@690
X%6`!(EA0NEh-ZD!!!"+)H(Y1L(Kl6SKiHd`!B!!%!!#R@8eP69!!)FhPcG'9Y,QJ
X!N!-%S*cGjD#FhH@JR0hP!"B!!J!!+'"858e&!3CdD@eP,QJ!D!!%S*cG0k#Fh6H
XJR0dh!"B!!J!!+'"'3dj8!3G'BfjdE#jS!!!%S*cGV+#FhDbJR0fX!"J!!J!!+'"
X69%4%!3K6G'4NC@BZD!#3!`5JR0h9S*cGeD#FhG8!'!!#!!!SB&084%`"#&0dC'a
XTBLjS!*!$"+$(p0QJar6CS-Idf3!B!!)!!#KJ8e4553%)8h4bD@jR,QJ!N!-%S*c
X03k#Fc81JR-e$!"J!!J!!+!03390$!3K`BA0MB@`ZD!#3!`5JR-BRS*c'*k#FaLF
X!'J!#!!!S!e&958-"#e&eD@0VC(*KGbjS!!!%S*c&jU#FaHDJR-AQ!"J!!J!!+!0
X'6dj8!3P'Efjd6@Gb,QJ!!!5JR-A9S*c&eD#FaG8!'J!#!!!S!d9@48i"#N9fC@j
Xd6@Gb,QJ!N!-%S*c'Hk#FaRZJR-Cl!"S!!J!!+!0A58j%!3YAD@jNEhG0Ch)ZD!!
X!"+#FaJ5JR-B%S*c'"!!B!!)!!#J$689193%*6@9ZG8eRFLjS!!!%S*c'Ak#FaPq
XJR-CI!"`!!J!!+!069%4'!3a6G'4'D@aP8'YR,QJ!N!-%S*c'2k#FaMqJR-Br!"`
X!!J!!+!0648G0!3a6C@GYC@jd6'4b,QJ!N!-%S*c'ED#FaQfJR-CY!"`!!J!!+!0
X86dp-!3e8EfpXBQpi9A4TE#jS!!!%S*c'$U#FaJkJR-B1!"J!!J!!+!028e98!3K
X28e9dD@`ZD!"T!!5JR-A$S*c&`k#FaF-!'J!#!!!S!d4*38`"#d4TB@a[CdeRFLj
XS!!!%S*c&fU#FaGUJR-AD!"J!!J!!+!0'58a&!3P'D@aP6@Gb,QJ!!!5JR-AXS*c
X&l+#FaH`!&!!#!!!S!dK'8bi""8K'8bjS!!!%S,%p&D#a24@JX6d9!"B!!J!!+!0
X$6da2!3G$Efa[FLjS!!!%S*c'+k#FaLZJR-BV!"`!!J!!+!054902!3e5CA0[GA*
XMC8eRFLjS!!!%SLQSeU)TU0DL+DM@!"J!!3!!+GC&@&4&!!KPH(4PFQiZD!"R!!5
XL(KZDSKiEQU)H'jS!'J!"!!!TeNe"3d%!#NeKBd&XCA*d,QJ!,J!"SKiH'k)H(KZ
XL(KiE!"3!!3!!+GC23NSZ!!9[BQSZD!!!!D)H(LkL(KiZSKiH,J!D!!%!!#R@6d*
X+3`!+Ef*UBfaKFh-ZD!!Z!!'L(KjTSKiHDD)H(QN!&J!"!!!TeP"56e!!"R"bEh!
XZD!"c!!'L(K[$SKiE`k)H'm-!&J!"!!!TeN026%m!"f0[E'pb,QJ!!!'#!!6F!*!
X$f!)!#3N!!3!!rj!)SKil1!!@!!%!!#R98%&153!(F'&ZD@-ZB`!!!D#Fc@fJR-e
XYS*c0E3!D!!)!!#Iq68&$5!%+6@&M5'9KC'9bF`!Z!!'L,DLkSLfSZU)YZVF!'!!
X"!!!TeN026NB!#'0[EQCTCbjS!(-!!U)H([HL(KlhSKiHp`!D!!%!!#R@9&*"4!!
X+G(*KC(0dC'-ZD!!Z!!+L(Ke&SKiG4D)H(88!'!!"!!!TeNG-6d)!#'GXEf*KE#j
XS!'J!!k$(pEHJar@hS-IeY`!@!!)!!#KJ8e4%53%(Fh4ND@mZD!!!!k)H'rQL(K[
XjSKiEq3!@!!%!!#R@3dp28J!(Bfp[FQ3ZD!!!!k)R#q+L*`[LSLF,iJ!B!!%!!#R
X@68&$3`!*E@&MBfpZCLjS!!!%SKiH"U)H(JDL(Ki'!"B!!3!!+GC08d42!!GYFf4
X[FbjS!!!%SKiHdk)H(Y1L(Kl6!"J!!3!!+GC6@908!!KcHA0dC@dZD!#3!`5JR0h
XPS*cGjD#FhH8!&J!#!!!SB&4*688""R4TE@8ZD!"S!!5JR0dhS*cG0k#Fh6F!&J!
X#!!!SB%C$6P3""dCMER4X,QJ!!!5JR0fXS*cGV+#FhD`!'!!#!!!SB&084%3"#&0
XdC'4PCLjS!*!$"+#FhG@JR0h9S*cGe3!B!!)!!#KJ8e4%6!%)8h4NE'PL,QJ!N!-
X%S-IdfD$(p0QJar6C!"J!!J!!+'"69&**!3K6G(*TEQFZD!#3!`5JR-e$S*c03k#
XFc8-!'!!#!!!S!e""8d-"#("KFf0KE#jS!*!$"+#FaLHJR-BRS*c'*`!D!!)!!#J
X$899*3`%,8A9TBfYNFQ&h,QJ!!!5JR-AQS*c&jU#FaHB!'!!#!!!S!dC26P3"#8C
X[ER40Ch)ZD!!!"+#FaG@JR-A9S*c&e3!D!!)!!#J$49C&6J%+4ACPER40Ch)ZD!#
X3!`5JR-ClS*c'Hk#FaRX!'J!#!!!S!eG*6N3"#eGTEQ4[GdeRFLjS!!!%S*c'"+#
XFaJ5JR-B%!"J!!J!!+!0048j9!3P0C@je6@Gb,QJ!!!5JR-CIS*c'Ak#FaPm!(!!
X#!!!S!e084%B"$&0dC%CTE'93DfFZD!#3!`5JR-BrS*c'2k#FaMm!(!!#!!!S!e0
X&4dd"$&0PCfePER4-C()ZD!#3!`5JR-CYS*c'ED#FaQd!(!!#!!!S!e426d`"$94
X[EfaLEhK9G'PX,QJ!!!5JR-B1S*c'$U#FaJi!'!!#!!!S!dp6993"#%p69A4TE#j
XS!'N!"+#FaF1JR-A$S*c&``!D!!)!!#J$4%P"6!%,4'PKE'pR6@Gb,QJ!!!5JR-A
XDS*c&fU#FaGS!'!!#!!!S!dC*6%8"#8CTE'90Ch)ZD!!!"+#FaHbJR-AXS*c&l!!
X8!!)!!#J$5%C6,J%&5%C6,QJ!!!5JX6d9S,%p&D#a248!&J!#!!!S!d026%m""d0
X[E'pb,QJ!!!5JR-BVS*c'+k#FaLX!(!!#!!!S!e*&8dm"$9*PFfpeFQ0P6@Gb,QJ
X!!!5L+DM@SLQSeU)TU0B!'!!"!!!TeN9B9%8!#'9iG'9bELjS!'F!"+)H'jUL(KZ
XDSKiEQJ!D!!%!!#R@68&$33!+6@&M3@aPFR3ZD!!Zc81!!!!S!*!$e!#3"3F!N!-
XU!!%!"`#3!a)!N!-"!!J%E@&TEL#3!`!!!f!!!J!!+!0498P$!3Y4G@PMDf4bBAF
XZD!!!"+#FaHDJR-AQS*c&jJ!B!!)!!#J$4Np19!%*4QpZG%eRFLjS!!!%S*c&eD#
XFaG@JR-A9!"S!!J!!+!0&9N91!3T&GQ9ZG%eRFLjS!*!$"+#FaRZJR-ClS*c'H`!
XD!!)!!#J$9dP14!%,9fPZC'ph6@Gb,QJ!!!5JR-B%S*c'"+#FaJ3!'!!#!!!S!de
X&6P8"#8ePER90Ch)ZD!!!"+#FaPqJR-CIS*c'A`!F!!)!!#J$8e4%4J%-8h4N4QP
XXC9"VCbjS!*!$"+#FaMqJR-BrS*c'2`!F!!)!!#J$8d9(63%-8f9RE@9ZG%aNFLj
XS!*!$"+#FaQfJR-CYS*c'E3!F!!)!!#J$9%p26!%09'p[E'*[H&9dD@`ZD!!!"+#
XFaJkJR-B1S*c'$J!B!!)!!#J$6e099!%)6e09G'PX,QJ!D3!%S*c&`k#FaF1JR-A
X$!"S!!J!!+!0%58&-!3Y%D@&XEfG0Ch)ZD!!!"+#FaGUJR-ADS*c&fJ!B!!)!!#J
X$4NP-43%*4QPXC8eRFLjS!!!%S*c&l+#FaHbJR-AX!"3!!J!!+!0)4P-Z!39)4P-
XZD!!!"+#a24@JX6d9S,%p&3!@!!)!!#J$3dp-6`%(3fpXEh)ZD!!!"+#FaLZJR-B
XVS*c'+`!F!!)!!#J$8N966`%08Q9cEh9bBf90Ch)ZD!!!"+)TU0DL+DM@SLQSeJ!
XB!!%!!#R@49K843!)CAKdCA*Z,QJ!C`!%SKiEQU)H'jUL(KZD!"S!!3!!+GC0380
X"!!T0B@0"E'9bG#jS!#i!!D)H(KZL(KiESKiH'`!8!!%!!#R@6d*+,J!&Ef*U,QJ
X!!!'L(KiZSKiH,U)H(Li!'J!"!!!TeNp#5N-!#QpLDQ0XBA0c,QJ!,J!"SKiHDD)
XH(QQL(KjT!"B!!3!!+GC38Np3!!C`FQp`,QJ!F`!"SKiE`k)H'm1L(K[$!"B!!3!
X!+GC$6da2!!GMEfa[FLjS!!!"!*!$C%a&9Pm!#QaPGPpMEfe`,QJ!,J!"SKiHTU)
XH(UDL(KkQ!"J!!3!!+GC68&p-!!KcF&pXCABZD!"S!*!$+#R@68&$33!+6@&M3@a
XPFR3ZD!!Z!*!$%+PG,bhl1Mmm!"")EJ#3!`crpNKZrqkTM3!!"d)!N!-+!*!Ee%*
Xi#NUGcNkk!&41ZJ"Q,$a*6N4B6VS&ENIkrmSQM%IkrmJQK%kk!'C1ZJ+S6VS'*Nk
Xk!0a1ZJ#S3QG)H2rr5'm!"%KA2c`!!5)krl*1ZJ1#6V83!#"Y!'a1N!#Tp&(i#Pj
Xq!%kk![TR#%U3!'F%#0!!"Nje)$J+H'B-,$aD6dj&6VS&"#!-4rVrCLD!6R9CMbm
Xm4%&838*RUD!J9b"3)RJ*##!0N!#*4rVr6LD!S#kTSb`m8e458dkk"-j(q[mf*S`
XX2%4548a1ZJ5q)%`J"'F-6VS"YJ5!!*!$$'Ed6[S&DNj@rpT"q!N3)Np`)+!ZF!(
X3%9S4dX""qJ!5F!@J,P@25'm!!UQA6Pj1G5jbFh*M!%Ik"HiQZ!Tm,cJ+J'B#@)p
X1G8MRrrJq,`!m8IJ+AQ!+@Bm[#+QP)"qJ3%kk!L4R4%IkrVJQL#!3CqBL3%U4CLi
X!%!$!,$a$8N9-6VS%,'FN2Lm!2#"-)!4R$%kk!(J%J!#3!`aQp%kk"0"1ZJ'F60m
XIrdjeF!qTb8kk"Aa1ZJ@%6VS%p%je)(J+l+!P)&!L5#)BB!T"k!!)G!'%'0$#8FR
Xrp*!!L0#*CJ*1G5)!S#iJH!VX)!'J*#*36qrr`#"23UJ!%M&T!!3!&U!93UG)D3!
X-)%qTmM)B6VS"RL4BeF%d'#)BEM*R&P*"C`C53@FD6R8b+2rd6VS"Z0056R8b+2r
Xd6VS"L0056R8b+2rd6VS"MY1Urrj1G8kk!8ib+3!-5QN!#QBF9%*U$("MUFP53QE
Xide*1G8kk!965U3!1de*1G8kk!@c5U3!18N*Q"0056R9$p4!#[P&Qe!aK2caQcP*
X#CJB+DJ!Arrib)9K")RVpI0+4NNV68Nje-KK1ZJ%14I83!0AB0"KR-L)BEL4R$P*
X"CK3b+2rd6VS"&Q!B-LMrp%kk!1KJ$M)Srr41ZJ$`B!C1ZJ%3dSh6NNje)KK1ZJ%
X%de*1G5"kr4!J1[d35UJ!!'FS-LJ!+'FL*#J!'&P#3qd!%02S!!69@6,m2ca#'4,
XS!$dbr+R`88&Ql%(S!%!%J!#3!d"QaNje)(Vmc#!kr-abrh3!5UJ!!'FB[LJ!2@B
X50LJ!+'F-e%1bU!!%C33L+!!%3HJ!3!5!!*!$3'E@)(VmUL"3"%%!%$$"jNS``Nj
Xe@Bm[2%024%8r"kQJ)&p3q!TH)!K1G5Kkr(BLG"J!Nq`!102-6R8SH[aH`[`!3#)
Xd'"JSH[aQdT41G5Kkr%V#r!"!)M3B#*+kr%j1G5Kkr$M#r!"!)M3B%0+kr$K1G5K
Xkr#E#r!"!)M3B"!D"!*!$%%je6VVrSM)T!!a+D3!+CJC1Z[qiB!41Z[r@dUN!$Nj
Xe)&mb'$3BX&KAbIrk5N*RrNl`)2`JAc)B0"L`Q&I*rrT+3QIq6[!JqL"I-KJd',"
X#EJU3!%&Y"Y"!3I!!!M!3Crj1m!!!)#m!"#p"!!3L,`!),em!"%MR2!!N!#B"5%,
X%`bJ!+J&)4FM&e%4)3T!$`-(3JNcI!$`L(dje)#m!"#p"!!3L,`!),em!"%MR-3"
X1ZJ#F60m!M#)I6R8J,`!%,d%!"#)[!!J[A`!%51Fa!%kk!(`J!8cI!)`L(dje)#m
X!"#p"!!3L,`!),em!"%MR-3"1ZJ!X60m!M#)I6R8J,`!%,d%!"#)[!!J[A`!%51F
Xa!%kk!!`J!8cI!)`L(dje5S"U(%U"DJa%J%5"6VS!)%5"6R9%J%kk!"C%J%5"6R9
X+J@S+4)&1ZJ!'4)"1G5im!!$rrl+!B`BL!(!!6R@`Kf)-J-&)3$)!3N")3%jeXSG
XL'Li!3N")3)$"5%")4ci!5%H1`6!(5%Fb"dje*!!Q!H+)iSQbKf,iJ-(!Kc)$`X!
XZ!dK(cX")4p+(C3L5JQ)%4)&1G90!B14q!&(i#PjCMbm'2`HTS#!IC`!!VLC!@Bm
X[#kQP*KmJ#bJ$8NI[4e*(1JGJ&PQ2,`Br"kQJ)"pR!!#)8NF'K!!!Irj9Mbm!UDB
X`(`J!!!9Qh&$i#Pl24CT(CK`J!k"!,`ZTSL!6C`!!@Lm,UC)S8b",S#P`!8je)!5
XK(L!)C`!!3LK),`ZTSL!6C`!!0L",)!0J'&Q2,`Br"kQJ)"pR!!!L8NFJ3#!m!!"
XrrLm))&!L60R!S#kTSe(0rpUCa#C-F!&1G5",5N9Q"+!M6R@J(dje-MbTm%2kqXC
X1ZJ"S-MbTmN2kqbK1ZJ"F-MbTmd2kqaa1ZJ"3-MbTp%2kq`K1qJ"%,`JJE`!),fJ
X!!J!))(J#TR!-d*!!X,J#UQBN6VS!C$)mUI"1ZJ"%-MbTmNkk!$`b2+Rc6VS!0$)
XmUI41ZJ!X)&p1G6!"S8BN5(!-5RJ#MQS%T4jJ!U%H-!'J4c$m6VNJb6$m6[NJbNj
Xe-!'K4L*S!!LJ(c!")%QJ4dje!*!%6R8J1[riC`3J3%+3!%je)(J#TR!-d*!!X,J
X#UQF!qRC1G3#3$J%!N!0*)J!!5#)!!!'D!$35D!4U!*!$(!'5!!j)390)!*!$HPT
X26N8!N!1'5dP14!#3!j*A6%p$!*!$RNP14&J!N!1U3dp%43!$!,C%394"!*!$jP0
X88P-!N!2b4&*&6!#3!rj6@8e6!!!"#N014NF!!!%@8dPD43!!!5*$8N9-!!%",N4
X#98F!!3&'@&0C63!"!9i!!3#3"cD0[!!!rrm!!!M-!$D3!1J!!2rr!!!$p!!fMX!
X!!2rr!!!)&!!fMJ3!!2rr!!!&8!!d%H`!!2rr!!!))!!fN!!%!!,rr`!!#)3!0Sm
Xd!!2rr`!!#)`!0SiB!!(rra3!30!!0Sf`!!$rr`!!#*3!0Spi!!$rr`!!#*J!0Sm
X`!!$rr`!!#*`!0SqB!!$rr`!!#+!!0T!!p!!#rrm!!!Lq!$D1C2rr!!B!!!L`!$D
X1N!!!![rr!!!)T!!fMH!!!rrr!!!)U!!fN43!![rr!!!)V!!fMF3!!rrr!!")&J!
XfMb3!![rr!!")'J!fN!"3!!2rr`!!5"i!0Sk8"@eVB@KX!6,rp3:
END_OF_FILE
if test 23630 -ne `wc -c <'mac/SL.proj.hqx'`; then
    echo shar: \"'mac/SL.proj.hqx'\" unpacked with wrong size!
fi
# end of 'mac/SL.proj.hqx'
if test -f 'others/ovlmgr.doc' -a "${1}" != "-c" ; then 
  echo shar: Renaming existing file \"'others/ovlmgr.doc'\" to \"'others/ovlmgr.doc.orig'\"
  mv -f 'others/ovlmgr.doc' 'others/ovlmgr.doc.orig'
fi
echo shar: Extracting \"'others/ovlmgr.doc'\" \(17823 characters\)
sed "s/^X//" >'others/ovlmgr.doc' <<'END_OF_FILE'
X		 Brief notes about ovlmgr.asm [v30a0]
X		 ------------------------------------
X		       (revised 1991february02)
X
XOVLMGR.ASM is a multiple-residency overlay manager for use with the
XMicrosoft Overlay Linker.  It is functionally compatible with the one
Xin the MSC library _except_:
X
X- it usually accesses the disk less often and is a lot faster in some
X  applications.
X- it permits overlays to be stored in the .EXE file and/or in separate
X  .OVL files.
X- it has different tuning characteristics.
X- you must (of course) link OVLMGR.OBJ into the root overlay (that is,
X  outside any parentheses in the link command).
X
XSee also the notes below.
X
X	As with other Microsoft-compatible overlay handlers you must
Xbe *very* careful never to call a function in an overlay through a
Xpointer, unless the initiator of the call resides in the *same*
Xphysical overlay as the target (This is, of course, *not* the same
Xthing as the called function being declared static, since the static
Xdeclaration affects only the visibility of the name of the function,
Xnot the distribution of pointers to it.) (1).  Furthermore, setjmp()
Xand longjmp() are not supported.
X
X	Unlike the Microsoft system, most of the available memory is
Xused to hold overlays.	Care must be taken to ensure that enough space
Xis reserved for the C heap.  This can be accomplished through
Xinformation stored in the .EXE file (currently the minalloc parameter,
Xas described below).
X
X	Furthermore, expanded memory support (EMS) is now an integral
Xpart of the overlay manager.  LIM EMS versions 3.2 and 4.0 are
Xsupported.  Note that the page frame must be 4 pages long (64K bytes) to
Xbe able to operate correctly (most drivers allocate a 64K frame by
Xdefault).  The overlay manager will use as much EMS as is necessary in
X64K chunks, up to a limit of 16 chunks (1 Meg).  Both hardware and
Xsoftware EMS drivers have been tested and found to be completely
Xcompatible.
X
X	Starting with version 30a0, overlays are not restricted to
Xbeing stored in the main .EXE files (as they are with Microsoft's
Xoverlay manager).  Using the utility EXESMURF arbitrary contiguous
Xsequences of overlays can be unloaded into external overlay files.
XAlthough EXESMURF provides some flexibility in naming these files,
XOVLMGR presently only supports its default option, whereby the
Xoverlays of a programme PROGRAM.EXE must match the pattern
XPROGRAM?.OVL (if the basename had eight characters, as FILENAME.EXE,
Xthen the last character is replaced: FILENAM?.EXE) and reside in the
X*same* directory as the .EXE (not even a path search is performed).
XThis mechanism permits large applications to be represented with small
Xfiles, resulting in a slight performance improvement (due to less and
Xshorter disk seeking) and easier transfer with floppy disks, at the
Xcost of a heavier demand for file-handles.
X
X				~ * ~
X
X	OVLMGR.ASM currently has three assembly-time options, which are
Xspecified with the assembler's /D<symbol> option (or compatible).  They
Xare:
X
X	/DNOEMS   Disable EMS support.
X		  OVLMGR normally detects the presence of EMS memory
X		  and makes use of it whenever it is present.  This
X		  flag instructs ovlmgr to ignore EMS and operate only
X		  out of conventional memory.  It should be used when
X		  overlaying programmes which expect to use EMS
X		  themselves.
X
X	/Di386	  Use 80386-specific instruction sequences.
X		  Use of this flag will make ovlmgr perform better on
X		  machines with 80386 processors.  However, the
X		  resulting programme will not run at all on machines
X		  with less capable CPUs.  Use this option with
X		  caution, especially in the case of distribution
X		  code.
X
X	/DNOSPLIT Do not provide for external .OVL files.
X		  If this flag is NOT set, OVLMGR will look for
X		  overlays for the programme PROGRAM.EXE in all files
X		  matching the pattern PROGRAM?.OVL, as well as in the
X		  .EXE file itself.  This arrangement may be slightly
X		  faster and will result in more, smaller files, but
X		  is obviously less robust, since mismatched .OVL
X		  files can cause mayhem.  .OVL files can be generated
X		  with our EXESMURF .EXE file manipulation utility.
X
X				~ * ~
X
X	Although using the overlay manager is in essence much like using
XMicrosoft's, they operate on a slightly different principle, and tuning
Xfor them is rather different.  Technical part begins.
X
X	When overlay linking is requested (see your linker manual), the
XMS overlay linker changes all far calls into overlays from the (normal,
X8086) format:
X
X	offset	contents
X	------	--------
X	:0000	CALL
X	:0001	target-offset
X	:0003	target-segment
X
Xto this:
X	:0000	INT
X	:0001	int#	target-mod#
X	:0003	target-offset
X
X(note that here we are looking at the actual layout of the machine
Xcode, not at the assembly code as such) and relocates the code parts
Xof all the different overlays into the *same* physical area.  The
Xoverlaid code is all actually placed at the end of the .EXE file,
Xafter the 'normal' executable image, along with all its administrative
Xdata (fixups etc.).
X
X	When this altered 'call' is executed, of course, the interrupt
Xhandler int# is invoked.  Its job is to ensure that the target overlay
Xmodule is in memory (reading it from the tail of the .EXE file if it
Xisn't already loaded) and then transfer to the given offset within it,
X'faking up' the effect of the 'real' far call that would normally have
Xoccurred.  Something similar must be done when the call returns, to
Xensure that the thing being returned *into* is still (or is once more)
Xloaded.
X
X	The Microsoft linker, as we have said, relocates all the
Xoverlays to the same load address; and, in fact, it allocates am empty
Xblock of memory there that is at least as large as the largest
Xoverlay.  Into this area all the overlays are loaded without further
Xchange; thus, there can only ever be one overlay in memory at one
Xtime.  Transferring from one overlay to another causes one overlay to
Xreplace the other in the allocated overlay swap area.
X
X	Our overlay manager does not use the space allocated by the
Xlinker in the same way.  Rather, it allocates almost all of the memory
Xavailable from MS-DOS (including the original overlay area and any high
XDOS memory) as well as EMS memory if some is available and that option
Xis being used.	As overlays are needed, they are loaded wherever they
Xwill fit, and dynamically relocated to that address.  Thus, many more
Xthan one overlay may be loaded at any given time, greatly increasing
Xpotential performance.	Management of space is more or less according to
Xan LRU policy - once all of memory is full, the least recently used
Xoverlay is selected as the most likely candidate for replacement.
X
X	The implications of this difference are as follows:  while with
Xthe conventional (default) overlay manager, the best strategy is to
Xgroup object modules together in an overlay whenever they are known to
Xbe used in rapid succession, to make each overlay as big as possible
X(all things being equal) in order to take advantage of all available
Xmemory, and to make as few overlays as possible (to reduce the amount of
Xdisk access), the best strategy with our overlay manager is almost the
Xreverse.  Having a lot of small overlays will increase the amount of
Xuseful stuff that can be resident in memory at the same time; all of
Xmemory will automatically be employed; and there is no advantage at all
Xto uniformity of size (except perhaps in the unlikely case of *exact*
Xuniformity!).
X
X	Although ovlmgr allocates all available memory while it is
Xactive, you will find that the DOS exec() call works normally.	The
Xmemory that is allocated for administering the overlay system is freed
Xbefore the exec call is made and reallocated afterwards (we trap the DOS
Xfunction request vector to do this, which isn't very nice as a
Xprogramming practise but makes the existence of the overlay manager far
Xmore transparent).  There is, however, one circumstance under which this
Xcan be problematic:  if you use the exec() call to load a TSR
Xapplication, thereby causing memory that the overlay manager was using
Xto become unavailable, you may make it impossible for the overlaid
Xapplication to proceed.  This is because code that is nominally
X'running' (i.e. is currently on the stack) cannot be relocated and must
Xbe reloaded at the *same address* that previously held it.  If another
Xprocess now owns that area of memory, there is nothing we can do.  We
Xbelieve that this should not be a serious concern in normal use.
X
X				~ * ~
X
X	Since all available memory is potentially used by ovlmgr, there
Xis one additional concern in using it with C programmes:  the allocation
Xof sufficient space for the C heap (2).  While previous versions of
Xovlmgr.asm required the change of an internal constant and re-assembly
Xof ovlmgr to change the amount of space pre-allocated for this purpose,
Xthe current version uses the DOS minalloc parameter in the executable
Xfile to hold the size of the desired heap area.  This parameter can be
Xset at any time after the link process with either Microsoft's exemod
Xutility or with the supplied utility, exesmurf.
X
X				~ * ~
X
XNOTA BENE: This is an early version of the overlay manager, but by now
Xit should be fairly well debugged. If you are considering upgrading it
Xplease be aware that the following improvements are planned for the
Xnext version (though who knows when delivery will occur):
X
X      - compatible versions of setjmp() and longjmp()
X      - integral malloc() to eliminate the heap size guesswork
X      - support for swapped data areas (read-only and read/write)
X      - improved performance through dynamic link-loading (maybe)
X      - interlocking to permit floppy disk juggling use
X      - XMS support and improved EMS support
X      - support for divergent-functionality overlays (such as
X	  hardware-specific modules)
X      - enabling the overlay locking code
X      - more flexibility in naming and locating external overlay files
X      - Major code revamping
X
XSwap On!
X
X------------------------------------------------------------------------
XMESSAGES
X
XOVLMGR: EMS memory manager error.
X
X	An error occurred during an EMS access.  Either the hardware has
X	reported a bug, the software driver has detected an anomaly or
X	the page frame is not 64K bytes in length.
X
XOVLMGR: Executable or overlay header missing or damaged.
X
X	The end of a file was reached unexpectedly during
X	initialisation, while trying to locate the overlays.  This is a
X	very bad sign (though I am concerned that it might be triggered
X	spuriously by debug information or other non-executable tails on
X	files).
X
XOVLMGR: File I/O error.
X
X	An error occurred while trying to load an overlay.  We don't
X	want this.
X
XOVLMGR: Inaccessible EXE file. Can't load overlays.
X
X	For some reason ovlmgr could not locate or read the original
X	.EXE file in which the overlays reside.  This could be due to
X	your attempting to use a very old version of DOS,
X	an abject shortage of file handles, some strange event causing
X	the file to be deleted, a disk error, or the diskette that
X	contained the executable being removed.
X
XOVLMGR: Inaccessible OVL file. Can't load overlays.
X
X	An error was reported while attempting to open an .OVL file
X	which was expected (from its name) to contain external overlays.
X	The possible causes are similar to those of the previous
X	message.
X
XOVLMGR: Incomplete executable.  OVL files missing?
X
X	OVLMGR was unable to locate all of its overlays for some reason.
X	This could be due to I/O errors on the disk drive, but is more
X	likely caused by an external .OVL file not being present in the
X	same directory as the .EXE.
X
XOVLMGR: Incorrect DOS version. Must be 3.00 or later.
X
X	The current version of ovlmgr does not support versions of DOS
X	prior to 3.0 because of the difficulty of locating the
X	executable file (and hence the overlays) at runtime.
X
XOVLMGR: Internal memory allocation failure.
X
X	Either an internal error has occurred in ovlmgr or the
X	application programme, or some event has caused memory that
X	ovlmgr believed it could count on becoming unavailable.  A
X	typical example of the latter would be the result of
X	attempting to load a TSR while an overlaid application is
X	running.
X
XOVLMGR: Not enough free memory left to run this program.
X
X	Although DOS successfully loaded the programme, it proved
X	impossible to allocate enough additional contiguous memory to
X	load one or more of the overlays.  Either reduce the
X	RAM-loading of the application by reducing the size of either
X	the root or the largest overlays, or increase the amount of
X	memory available by unloading TSRs and/or simplifying your
X	CONFIG.SYS.
X
XOVLMGR: Unable to resolve overlay file names.
X
X	Apparently the name reported to OVLMGR as being that of the
X	executable file is ill-formed, and it is thus not possible to
X	intuit what external overlay files would be called.  It is
X	possible that this indicates that DOS has gone bonkers, but more
X	likely (I guess) that the .EXE was not invoked by DOS as we know
X	it.  Either way, you have entered the Twilight Zone....
X
X(xxxx:xxxx:xxxx:xxxx)
X
X	This is a diagnostic code composed of the following fields:
X		- error code
X		- version number
X		- available conventional memory
X		- EMS memory usage
X	Please note it in any bug reports or correspondence with the
X	development team.
X
X------------------------------------------------------------------------
XKNOWN BUGS
X
XThe present version cannot always be used as a direct replacement for
XMicrosoft's overlay manager (even granted the documented differences)
Xbecause the minimum size required for an overlaid programme to run is at
Xleast the size of the root plus TWICE the size of the largest overlay.
XIf a programme has previously had its overlay structure tuned to take
Xbest advantage of Microsoft overlays, this may well cause a problem.
XThe overlays themselves will need to be split up.
X
XWhen the MicroSoft linker discovers that an overlay as requested
Xcontains NO instructions at all (this can happen by mistake if you give
Xa source file that winds up holding only data declarations its own
Xoverlay), it does not emit an overlay record for it at all - there is
Xsimply a gap in the overlay sequence in the file.  The current version
Xof OVLMGR detects this as an error, since it assumes that such a gap
Xshould have been filled by an external .OVL file.  It is presently your
Xresponsibility to ensure that this does not occur.
X
XFiles containing overlays are kept open all the time the application
Xis running.  Particularly if multiple external .OVL files are used,
Xthis can result in less file handles being available to the user
Xprogramme than would otherwise be expected.
X
XALL files that match the pattern for potential overlay files are
Xopened, regardless of whether they actually contain overlays.
X
XThe names of external overlay files have a very restricted form, and
Xthey must reside in the same directory with the .EXE.  These
Xlimitations cause them to be useful for little else besides making
Xdistribution easier.
X
XTransfers between overlays are very slow in machine terms, even if both
Xoverlays happen to reside in memory at the time (still significantly
Xfaster than Microsoft's, though).  This means that overlay patterns
Xmust be chosen on the basis of more than just logical dependency.
X
XLocking overlays into memory is not really implemented even though
Xreading the source code might make you think it was.  Actually, reading
Xthe source code itself isn't very well implemented right now.  Comments
Xand stuff would help.  Yup, yup.
X
XDue to limitations in the LIM EMS standard (to 4.0), programmes that
Xthemselves use EMS memory cannot be overlaid with ovlmgr unless ovlmgr's
Xown EMS support is disabled.  This is accomplished by assembling with
Xthe /DNOEMS flag.
X
X------------------------------------------------------------------------
XBUG ALERT
X
XTo repeat a point made above, if you ever try to call a function in an
Xoverlay through a pointer, you *may* die with the Microsoft overlay
Xmanager.  If you ever try to call a function in an overlay through a
Xpointer, you *will* die with ours.  Nothing in an overlay ever ends up
Xin the same segment as the linker anticipated.	You have been warned!
X
X------------------------------------------------------------------------
XFOOTNOTES
X
X(1) This problem can be circumvented through the use of surrogate
X'trampoline' functions:  functions that reside in the root overlay and
Xsimply pass right through to the 'real', overlaid, implementations.
XThis can even be made transparent to the source code through the use
Xof the C macro preprocessor, with a locution of the form
X	#define foo(x) foo_(x)
Xvisible everywhere except at the actual definition point of the
Xtrampoline.  This has been implemented in NetHack 3.0.
X
X(2) If you should get a message to the effect that NetHack can't
Xallocate 28000 and some bytes when entering a maze level, that
Xisn't our problem!  In all probability you forgot to rebuild your
Xspecial level files when you changed the compiler flags.  We got
Xthat one, too, at one point.  The same applies to similar messages when
Xreading bones files or saved games:  it is more likely that you forgot
Xto discard them after recompiling your game than that the memory
Xallowance is so greatly incorrect.
X
X----------------------------------------------------------------------
XNOTICE
X
XOVLMGR.ASM is brought to you by Pierre Martineau and Stephen Spackman.
XIt, and this document, are copyright.  They are, however, provided as
Xpart of NetHack and may be freely distributed as described in the
XNetHack license.
X
X----------------------------------------------------------------------
XStephen P Spackman			     stephen@tira.uchicago.edu
XPierre G Martineau		   pierre%ozrout.uucp@altitude.cam.org
X----------------------------------------------------------------------
X    Copyright (c) 1989, 1990 Pierre G Martineau and Stephen P Spackman
X    All Rights Reserved.
END_OF_FILE
if test 17823 -ne `wc -c <'others/ovlmgr.doc'`; then
    echo shar: \"'others/ovlmgr.doc'\" unpacked with wrong size!
fi
# end of 'others/ovlmgr.doc'
if test -f 'others/ovlmgr.uu' -a "${1}" != "-c" ; then 
  echo shar: Renaming existing file \"'others/ovlmgr.uu'\" to \"'others/ovlmgr.uu.orig'\"
  mv -f 'others/ovlmgr.uu' 'others/ovlmgr.uu.orig'
fi
echo shar: Extracting \"'others/ovlmgr.uu'\" \(9351 characters\)
sed "s/^X//" >'others/ovlmgr.uu' <<'END_OF_FILE'
Xbegin 644 OVLMGR.OBJ
XM@`P`"F]V;&UG<BYA<VUDEA4```904U!314<&3U9,5$),!$-/1$6%F`H`````,
XM`"P``@$!+I@*```````0``,!`4F8!P!HO1P$`0$:C$8`!R0D24Y43D\`"20DT
XM3U9,0D%310`*)"1-4$=33D]63``+)"1-4$=33D)!4T4`!B0D34%)3@`&)"1#O
XM1U-.``8D)$-/5DP`T9`0```#"20D3U9,24Y)5/D/`-^(!```H@'1H!0``@``0
XM`````````````````````$J@'``#`````````````/__________````````=
XM``!)H@\``Q@`#P`!``$````"__\CH`8``S8`__\CH@\``S@`$``!``$````"`
XM__\"H`8``U@```#_H@\``UH`$``!``$````"___@H!(``WH`__\`````````F
XM``````#3H`8``X@$``#+G`@`Q````P.*!`2B#P`#B@H0``$``0````+__Z:@V
XM!@`#J@H``*.B9@`#K`H!`````DU:`0````(```$````"```!`````@```0``B
XM``(```$````"```!`````@```0````(```$````"```!`````@```0````(`&
XM``$````"```!`````@```0````(``&ZB#@`#K`Q0``$``0````$`0J`(``/\8
XM#`````!-HDD``P`-%0`!``$````!``$````!``$````"```!`````@```0``5
XM``0`````"0`!``$````!``,``0`!`````0!6``$``0````$`=:``!`.`#0``=
XM``#__P```````````````````````````````````````$5-35A86%@P```$G
XM```S.#8@<W!E8VEF:6,@8V]D92!E;F%B;&5D+@T*)$-O;G9E;G1I;VYA;"!M0
XM96UO<GD@879A:6QA8FQE.B`D2"!P87)A9W)A<&AS+@T*)$5-4R!M96UO<GD@A
XM879A:6QA8FQE.B`D2"`Q-DLM<&%G97,N#0HD26YC;W)R96-T($1/4R!V97)S/
XM:6]N+B!-=7-T(&)E(#,N,#`@;W(@;&%T97(N)$EN86-C97-S:6)L92!%6$4@'
XM9FEL92X@0V%N)W0@;&]A9"!O=F5R;&%Y<RXD3F]T(&5N;W5G:"!F<F5E(&UE)
XM;6]R>2!L969T('1O(')U;B!T:&ES('!R;V=R86TN)$9I;&4@22]/(&5R<F]R+
XM+B1);G1E<FYA;"!M96UO<GD@86QL;V-A=&EO;B!F86EL=7)E+B1%35,@;65M0
XM;W)Y(&UA;F%G97(@97)R;W(N)$5X96-U=&%B;&4@;W(@;W9E<FQA>2!H96%DI
XM97(@;6ES<VEN9R!O<B!D86UA9V5D+B15;F%B;&4@=&\@<F5S;VQV92!O=F5RF
XM;&%Y(&9I;&4@;F%M97,N)$EN86-C97-S:6)L92!/5DP@9FEL92X@0V%N)W0@T
XM;&]A9"!O=F5R;&%Y<RXD26YC;VUP;&5T92!E>&5C=71A8FQE+B`@3U9,(&9IR
XM;&5S(&UI<W-I;F<_)%5N:VYO=VX@97)R;W(A)!M;,&T;6TL-"AM;2QM;,6U/F
XM5DQ-1U(Z&ULP;2`D&UM+#0H;6TL@("`@("`@("@D&UM+#0H;6TL')#\N3U9,1
XM`%!345)65U4>!OR,V`40`"ZC``"T,,TA/`-S!;`!Z0``CAX``+[__T:#/`!US
XM^H/&!.@``+0UL&?-(8S(CMB_"@"^``"Y"`#SIK``=0*P_RZB``!U$K1!S6<N+
XMB1X``+1"S6<NB1X``+@``"ZC``"X``".V(L>```NB1X``(L>```NB1X``+1(+
XMS2%S`^D``"ZC```NBPX``([`)L8&````)L8&````)L<&`````";'!@`````FA
XMQP8`````)L<&``#__R;'!@`````FQP8`````)L<&`````$#BOHS(CM@S[3/_V
XM,_;H```NH0``+@,&``".P(O.T>$FB`X``"ZA``#1X-'@T>#1X-'@+HL6```+[
XMTG0.T>K1ZM'JT>I"+2```\(N*P8``":C```N@SX```!T!CO'<@*+^"ZA``#1$
XMX-'@T>#1X":C```FB2X``"X#+@``B]6*SHKR,NTRTM'BT=&P`+1"S2$NBPX`*
XM`"ZA``!)`\&.P":*'@``@^,>@_L`=0LF@SX``&R<D`'$!@`#`R0.Q`@``P-2H
XM#L0*``,#?@[$#``#`Z\.Q`X``P._#L00``,#OP[$$@`#`^,.Q!0``P/]#L064
XM``,#+@_$&``#`U0/Q!H``P.`#\0<``,#JP_$'@`#`ZL/Q"```P.K#\0B``,#$
XMJP_&B@`#`X0`AI<``P-'&\:;``$!+`"&J@`#`S\:QKH``P.D#<;)``,#L`W&<
XMU``#`X8`QMT``P.L#<K@)@("QN0``P.``,KG)@<'QNTF!@;&\@`#`WX`QO8F?
XM!P?&^P`#`WP`AP0``P,)$L<(``,#-@#'#0`#`WP`QQ0$`@+'&@`"`@$`QR``"
XM`@("`,<G``("!`#'+@`"`@8`QS4``@((`,<\``(""@#'0P`"`@P`QTH``@(.*
XM`(=<``,#[QG'8``#`S8`QV4``P/&"L=P!`("QW0``P.P"L>#``,#K@K'F@`#@
XM`[0*QYX``@(,`,>C``,#Q@K'L``#`[0*Q[P``@(.`,?!``(""@#'Q@`#`[`*;
XMQ]\``P-\`,?C``,#-@#'[00"`L?Z``(""@"RH``$`WP1`'4#Z0``2.+C+J$`,
XM`"ZC``".P";&!@```";'!@(````FQP8$````)L<&!@```":)/@@``\<NHP``=
XM5RZ.!@``Z```)L<&``#__R:`)@``OU+H``!87PO`=05'.]=R+R['!@`````N.
XMQP8`````OP``+L<%__^#QP8NH0``+HD%+HD^``".P";&!@``H.L%L`/I``"X(
XM``".V*```#+DT>#1X"ZC``#H```NBPX``+@``([`C,B.V+L``+X``+\``":*,
XM!#+D`P8``(D%)HL'*P8``(E%`H/'!(/#`D;BX@<?75]>6EE;6.H`````+HDV\
XM```NC!X``%X?4%/\K#+DB]BM+J,``(O&+HLV``"#Q@8NC%S\+HE$_M'CT>.!N
XMPP``+HX?+HM'`BZ,'"Z)-@``+HLV``!&+HDV``")-@``+HLV``!T?XDV``#V'
XM!@``('1]_@8```,&```NHP``+HLV```NCAX``%M8G2[_'@``G"Z,'@``+HDV3
XM```NBS8``"Z.'/X.``"#[@8NCAPN_W0"+O]T!"Z)-@``+HLV``!&+HDV``")C
XM-@``+HLV``!T-XDV``#V!@``('0T+HLV```NCAX``,]&+HDV``#I``#V!@``D
XM0'0+4*$``.@``%CI``#H``#I``!&+HDV``#KP?8&``!`=`I0H0``Z```6.N[O
XMZ```Z[9045)35597'@:,V([`)H`^````=0HFH0``Z```ZP20Z```!0$`)J,`S
XM`([8)HL6``"*SHKR,NTRTM'BT=$FH0``45(#T(/1`+1"L``FBAX``(/C'BZ+2
XMGP``S2%R4#/2)HL.``#1X='AT>'1X;0_S2%R.UI9M$*P`":*'@``@^,>+HN?4
XM``#-(7(DN0`"N@``'HS(CMBT/\TA'W(2Z```!Q^`#@``(%]>75M:65C#L`3I2
XM``"^``"+[H'%``(NBTP&XUN,WRXK/@``+@-T&#OU<@/H```NBAQ&._5R`^@`&
XM`"Z*/$8[]7(#Z```+HH$1COU<@/H```NBB1&+@,&```#QX[8BP<N`P8``"X[-
XM!@``<@DN.P8``',"`\>)!^*PPU-15U4>!KD``KH``(S(CM@FBAX``(/C'BZ+4
XMGP``M#_-(7,#Z0``O@``!Q]=7UE;PU-14E9751XNCAX``#/`B]"+Z(O8+HL.:
XM``#VAP``@'4P]H<``$!U!_:'```@="(NBS8``"Z+/@``*[<``!N_```[UW(&M
XM=0H[QG,&B\:+UXOK@\,0XL0+[74%L`7I``#1[='MT>W1[8S8`\4?75]>6EE;;
XMPX#\2W0/@/Q,=`4N_RX``+``Z0``"L!U\E!14E-55E<&'BZ.!@``+HL.``"[B
XM$`!))O:'``!`=1<F]H<``"!T99P,`X0$``,#VQ#$"P`#`X``Q`\``P-8`,0W)
XM``,#@@#$/0`#`S8`A$```P.H&,1%``(""`#$3`0"`H11``,#$!C$800#`\1HC
XM``,#`@#$;0`#`XH$Q'D``P,V`,2!``,#B`3$B`0"`H20``,#1QO(DR8!`<28X
XM)@$!Q*(``P.J"H2E``,#31S$J@`#`WX`R*TF!`3$MB8$!,2Y)@,#Q+P``P.([
XM`,3%``,#-@#$S@`#`X``S.8F!07$[0`#`Q``Q/(``P,2`,4!``,#!`#%"``#S
XM`X@$Q1L``P.(`,4J``,#B`3%+P0#`\4U!`,#Q3D``@($`,4^``,#`@#%1``""
XM`@8`Q4@$`@+%3P`"`@$`Q5,``@("`,57``,#!@#%7``#`Q``Q6$``P,2`,5I4
XM``,#!`#%;P`#`Q(`Q70``P,0`,5Y``,#B`3%@``"`@$`Q9,``P.(!,68!`,#3
XMQ9X$`P/%H@`"`@0`Q:<``P,"`,6M``("!@#%L00"`L6Y``,#$`#%O@`#`Q(`:
XMQ<4``P,"`(7(``,#OA+%S`0"`L73``(""`"%U@`#`ST9A=H``P/)$H7=``,#8
XM?!.%X``#`\D2Q>8``P,"`,7L!`("Q?,``@((`(7V``,#/1F%_``#`WP3QA``H
XM`@(!`,87``("#`"&&@`#`Z06AB```P,6%L8G``("`@#&+@`"`@H`QCX``@(.Q
XM`,9.!`("QE8``P,8`,9A``("#`#&>@0"`L:"``,#&`#&C``#`ZP*AIL``P,M+
XM%,:A!`("AJ\``P-'&\:R``,#K`K&Q0`#`X``AM```P.8%(;;``,#F!2&Y@`#H
XM`Y@4AO$``P.8%,;Z``,#A`#'!0`#`X0`QPH``P.``,<1``,#@@#')@`#`ZP*,
XMQR\$`@+'-P`#`Q@`AT```P,H%,=#``,#K`K'5@`#`S8`QV,``P-\`,=G!`("&
XMQVX$`@+'=00"`L=]!`,#QX(``P,"`,>&``("!`#'B@`"`@8`AZ@``P-'&\?+%
XM``,##`"'T``#`T<;Q^(``P,V`,?G``,#?`#'\`0"`L?X!`(";J``!`-X%14FG
XMBX<``"T!`"X[!@``<@8F@*<``-^#PQ#BUB['!@``__\NH0``/?__=`Z.P":.<
XM!@0`)L<&`@```+D0`+X``"Z+!#W__W0+CL"T2<TA+L<$__^#Q@+BZ.@``(OLC
XM_W86G1\'7UY=6UI96"Z,%@``+HDF``#-(2Z.%@``+HLF``!045)35597!AZ+!
XM[)R/1A;H``#H```?!U]>75M:65C/)HL>``"#ZP&+TR8#%@``@\(!)J$``#W_;
XM_W00Z```)H`.``!`+J$``.M9D"ZA``#K4I".V#O8<PD[PG--Z```Z_$#!@@`P
XM.]AS-_8&```!=`?H```#!@@`.\)R)8S8B\LKR'02!N@``":`#@```>@``(S`Z
XMCM@')HL.``"#P0'K.I"A`@`+P'0"ZZFP!ND``";'!@``__\F@"8``+^+R(/!!
XM`>@``#O1<P_H```[T7,(Z```Z```Z^KK`9`&@`X```'H``!R"1Z,P([8Z```'
XM'P>,!@8`C-C#C-@#P8[`H0@`*\%V,(D."``FHP@`H0(`)J,"`(P&`@`FC!X$J
XM`";&!@```":A`@`+P'0*'H[8C`8$`!_XP_G#+J$``#/2ZQB0CMCV!@```74+)
XM.0X(`'(%BQ8(`,.A`@`+P'7EP_8&```!=!(&C@8&`":`)@``WR:`)@``OP?KS
XM)9".V(`F``#?]@8``$!T"X`F``"_H0``Z```H0``+0$`CMCK`9!2!H`F``#^J
XMH00`"\!T,H[`)O8&```!=2@F`P8(`(S:.]!U':$(`"8!!@@`H0(`)J,"``O`5
XM=`:.V(P&!`",P([8H0(`"\!T,([`)O8&```!=2:,V`,&"`",PCO"=1HFH0@`Q
XM`08(`":A`@"C`@`+P'0'CL`FC!X$`(`F``#^!UJ,V,-14U97'@8STBZA``".G
XMV*$"``O`=?>^``"_``"Y$`"T2+O__\TA@_L0<DFT2,TA<D,N.P8``'(T.]-SD
XM`HO3+HD$CL`FQ@8````FQP8"````)L<&!@```":,'@0`)HD>"`",!@(`@\8"]
XMCMCK!BZ)!8/'`N*KO@``N1``+HL$/?__=`N.P+1)S2$NQP3__X/&`N+H!Q]?&
XM7EM9PS/2+H`^``#_=`'#+L<&``#__[\``(O9N1``+HL%/?__=!'H```[PW-8D
XM@\<"XNR+RS/2PXO+NP0`M$-15P;-9P=?60KD=`,STL,NB14FB18``":`#@``6
XM0(O"Z```+J$``([8Q@8```#'!@(```#'!@0```#'!@8```"Z`!")%@@`PXO+@
XMCMZ+T"Z+!2:C```F@`X``$##+CL&``!U`<-34AX&Z```+J$``#/2,_:.V/8&:
XM```!=`V.!@8`)H`.``!@ZPR0H0@`.]!S!(O0C(N<G0'$!``"`@(`Q`P``P,X]
XM`,03!`("Q!X``P-Z`,0D``,#.`#$/0`#`S@`A%@``P.(',1L``,#%`#$<0`#:
XM`Q8`Q'@``P,4`,1]``,#%@"$CP`#`Q`8A)(``P--',2A``("`@#$JP`"`@P`#
XMQ+(``@((`(2Z``,#/1G$OP0"`L3$``,#A@#$RP`#`U@`A-L``P-/%X3O``,#;
XM3Q>%`P`#`^L6A0P``P./%\46``("#`"%*@`#`T<;Q2\``@((`,4V!`("A3\`?
XM`P,J%X5&``,#J!B%30`#`\@4A5```P-K%X5>``,#ZQ:%:``#`X\7Q;0``P-8U
XM`,7F!`("Q>P$`@+%]P0"`L7\!`("Q@,$`@+&!P`"`@@`A@H``P,]&<8-``("(
XM`@#&H@`#`U@`QJX``P,X`,:Q``,#B@K&RP`#`S8`QPP``P.*"L<U``,#L`W'J
XM/@`#`WH`QT,``P-:`(=3``,#/1G'?P`"`@@`QX0$`@*'B@`#`X,9QXX``P.&T
XM`,>\``(""`#'P00"`L?(``,#>@"'T@`#`X,9Q]8``P.&`,?L!`("0:!-`P-T`
XM&=ZA`@`+P'78B\(''UI;PP9345(NHP``B]"T1#+`,]M2S6=:"N1U3[1$L`&[!
XM`0!2S6=:"N1U0+1$L`*[`@!2S6=:"N1U,;1$L`.[`P#-9PKD=20NC@8``"Z+[
XM#@``,]LF]H<``$!T!B:`IP``WX/#$.+M6EE;!\.P!^D``+H``(O>T>,NBY\`=
XM`+D<`+0_S2%R,3O!=",]``!T`^LKD$:#_@]T'XO>T>,N@[\``/]T[BZ+GP``?
XM,^WKT"Z!/@``35IU!L.P"^D``+`(Z0``!K0OS2$NC`8``"Z)'@``'KH``(S(D
XMCMBT&LTA'[DH`(S+CL._``#SI;\``+``N5``_/*N@^E0]]F+V8/Y4'0'2T^#T
XM^P=^';!<_?*N_(O3*]%*N0``+HD>```NB18``(/Z#'X%L`GI``",R([8N@``F
XML`"T/<TA<P6P`ND``"ZC```N@SX```M_"B[_!@``+O\&``"_```N`SX``(/OE
XM!;X``+D&`/.DN0``N@``M$[-(7)'N0X`+HL6```N*18``%$NBQX``+\```/[=
XMO@``+HL.``#SI%FZ``"P`+0]S2%S".@``+`*ZR*0B]G1XRZ)AP``M$_-(7("-
XMXL8NBQ8``"Z.'@``M!K-(0?#,N10#A^+V-'C@<,``(L7@_K_=&12N@``M`G-L
XM(5JT"<TAM`FZ``#-(5A0Z```M`*R.LTAN*`PZ```M`*R.LTAN`"@+BL&``#H_
XM``"T`K(ZS2&^``"Y$``SP"Z#//]T"BX#!@``@\8"XO#H``"T`K(IS2&Z``"TQ
XM"<TAZ```+J$``#W__W0&CL"T2<TAN1``O@``+HL$/?__=`:.P+1)S2&#Q@+BV
XM[;D0`+X``"Z+%(/Z_W0$M$7-9X/&`N+ON0\`B]E+T>,NBY\``(/[_W0$M#[-7
XM(>+K6+1,S2%0AN#H``!8ZP&04-#HT.C0Z-#HZ```6.L!D%`D#P0P/#IR`@0'I
XM4HK0M`+-(5I8PQXSP([8+HLV``#ZBP0NHP``BT0"+J,``+@``(D$C$P"OH0`O
XMBP0NHP``BT0"+J,``+@``(D$C$P"^Q_#'C/`CMB^A`#Z+J$``#W__W0)B00NN
XMH0``B40"+HLV```NH0``/?__=`J)!"ZA``")1`+['\,PG/4!Q!4``P-Z`,15P
XM``,#-@#$6@`#`WP`Q&$$`@+$:00"`H1Y``,#1QO$?``#`ZP*Q(4``P,8`,2I!
XM``,#&`#$L0`#`Q@`Q+H``P.L"H3$``,#1QN$R0`#`T<;Q-,``P.`#<38``,#/
XM@@W$W``#`P`-Q.\``P.L#,3T``,#K`S%(@`#`_P,Q2<``P/^#(4Q``,#1QO%V
XM.``#`ZP,A44``P-'&\5)``,#&`#%3@`#`_X,Q58``P/\#,5;``,#_@S%7@`#"
XM`ZP,Q6,``P/\#,5I``,#\P_%=``#`ZP,Q8(``P/^#,6'``,#_`S%C0`#`_P,7
XMQ9```P.L#,65``,#'@W%F@`#`_X,Q:```P.L#(6K``,#'AS%N0`#`Q@`Q<8`3
XM`P."#<7+``,#@`W%W@`#`X0-Q>D``P.Z#\7W``,#UP^%_@`#`QX<A@H``P,>T
XM',88``,#-@"&&P`#`QX<QB0``P-:`,8T``,#K@V&/``#`QX<QD4``P/I#X9,U
XM``,#B!S&4``#`S8`QF$``P,X`,9Z``,#6@#&F``#`Q@`AJX``P,H'(:^``,#@
XM.!S&X0`#`ZH*QN@``P,(`,;O``,#"@#&\@`#`V82QP```P,,`,<'``,##@#'E
XM"@`#`SH5QQ\``P,,`,<J``,##@#',@`#`ZH*QS8``P,(`,=!``,#"@"8B@(`C
X"`'0`7
X``
Xend
Xsum -r/size 34565/9296 section (from "begin" to "end")
END_OF_FILE
if test 9351 -ne `wc -c <'others/ovlmgr.uu'`; then
    echo shar: \"'others/ovlmgr.uu'\" unpacked with wrong size!
fi
# end of 'others/ovlmgr.uu'
echo shar: End of archive 7 \(of 8\).
cp /dev/null ark7isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 8 archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0