don@TUMTUM.CS.UMD.EDU (Don Hopkins) (11/23/89)
======== START OF cyber.shar.splitah ======== X /ClassName exch send 50 string cvs X }{ X % REMIND - incestuous knowledge of class Object X /Name /promoted? 2 index send X {("%")} {(.%)} ifelse % obj str X /name 3 -1 roll send % obj str name X [exch] sprintf X } ifelse X }{ X % Note: this is cond, not case, so the userdict in the X % comparison will not be bound to a particular userdict. X % Userdict must be evaluated each time this routine X % is called, so the test works when called from different X % processes with different userdicts. X { X {dup systemdict eq} {pop (systemdict)} X {dup userdict eq} {pop (userdict)} X true {50 string cvs} X } cond X } ifelse X } X } case X } def X X % Like PostScript Red Book = operator, but display name of class X % instead of "dictionary[N]". Also, don't do a newline. X % X /showobject { % object => - X objectstring print X } bind def X X % Like PostScript Red Book stack operator, but use showobject instead of =. X % X /showstack { % - => - X count 0 eq { X (Empty stack) print X } { X count 1 sub -1 0 { X index showobject ( ) print X } for X } ifelse X (\n) print X } bind def X X X% Output Functions (to redirect trace output): X X % Trace output file. Null to not redirect trace output. Use X % settraceoutput to change. X % X /trace_output null def X X % Function for changing where trace output goes. Use this instead X % of changing trace_output directly. This prevents the problem of X % changing traceout instead by mistake. X % X /settraceoutput { % file => - X /trace_output exch store X } bind def X X % Execute a procedure with output redirected to the specified file. X % X % Note: the output is redirected by saving the current /Stdout, X % changing it to the given file, then restoring it. The file X % is saved as /trace_savedStdout in systemdict rather than on the X % stack or in a local dict so neither the operand nor dict X % stacks is changed when the proc parameter is executed. X % X % Note: /trace_savedStdout must be set to null to prevent an extra X % reference to the current output file from lingering. X % XXNeWS? { X /outputtofile { % file proc X systemdict /trace_savedStdout currentprocess /Stdout get put X currentprocess /Stdout 4 -1 roll put X stopped X currentprocess /Stdout systemdict /trace_savedStdout get put X systemdict /trace_savedStdout null put X {(process stopped\n) print} if X } bind def X} { % else if NeWS 1.1 X X% NeWS 1.1 processes do not have a /Stdout field, so we redefine print above X% so it does not get autobound in these definitions. X X % Depends on above /print kludge! X /outputtofile { % file proc X 10 dict begin X /print { X /_ProcessStdoutKludge where { X pop _ProcessStdoutKludge exch writestring X } { X systemdict /print get exec X } ifelse X } def X /printf { X /_ProcessStdoutKludge where { X pop sprintf _ProcessStdoutKludge exch writestring X } { X systemdict /printf get exec X } ifelse X } def X exch /_ProcessStdoutKludge exch def % proc X stopped X {(process stopped\n) print} if X end % 10 dict X } bind def X} ifelse X X % Execute a proc with output redirected to the trace output file, X % if there is one. If not, just execute the proc. X % X /traceoutput { % proc => - X trace_output null eq {exec} { X trace_output exch outputtofile X trace_output flushfile X } ifelse X } bind def X X/print /print-operator load def % undo above /print kludge Xsystemdict /print-operator undef X/printf /printf-operator load def Xsystemdict /printf-operator undef X Xend % systemdict //go.sysin dd * if [ `wc -c < trace.ps` != 27159 ]; then made=false echo error transmitting trace.ps -- echo length should be 27159, not `wc -c < trace.ps` else made=true fi if $made; then chmod 664 trace.ps echo -n ' '; ls -ld trace.ps fi echo Extracting doc.ps sed 's/^X//' <<'//go.sysin dd *' >doc.ps X%! X% NeWS 2.0 Reference Card X% X% Striped into raw data structures by Don Hopkins, for the PSIBER Space Deck. X% X% Date: Tue, 31 Oct 89 16:33:26 PST X% From: rbogen@EBay.Sun.COM (Richard Bogen) X% To: NeWS-makers@brillig.umd.edu X% Subject: Updated XNeWS Refcard X% X% The previous posting was based on pre-FCS manuals and contained some X% minor flaws. Here is a more accurate one based on the latest info: X% X% Date: Wed, 25 Oct 89 09:23:19 PDT X% From: rbogen@EBay.Sun.COM (Richard Bogen) X% To: NeWS-makers@brillig.umd.edu X% Subject: XNeWS Reference Card X% X% In honor of the release of X11/NeWS on SUN3's here is a file which X% produces a 2 page reference card listing of datatypes & operators. X% Try sending it to your laserprinter after loading it with card stock. X% X% From: ou@ulowell.UUCP (Chris Katsaounis) X% Date: 3 Jul 86 17:04:07 GMT X% X% Modified: October 20, 1989 by rbogen@sun.com (Richard A. Bogen) X% To reflect changes from X11 merge X% X X/C { X 2 array astore X exch token pop exch pop exch X def X} def X/empty {(---)} def X Xsystemdict begin X /NeWSDoc 100 dict def Xend % systemdict XNeWSDoc begin X X /Types 100 dict def X Types begin X X /Canvas 100 dict def X Canvas begin X (/TopCanvas) empty (canvas) C X (/BottomCanvas) empty {(canvas)| (null)} C X (/CanvasAbove) empty {(canvas) | (null)} C X (/CanvasBelow) empty {(canvas) | (null)} C X (/TopChild) empty {(canvas) | (null)} C X (/Parent) {(canvas) | (null)} {(canvas) | (null)} C X (/Transparent) (boolean) (boolean) C X (/Mapped) (boolean) (boolean) C X (/Retained) (boolean) (boolean) C X (/SaveBehind) (boolean) empty C X (/Color) empty (boolean) C X (/EventsConsumed) (name) (name) C X (/Interests) empty (array) C X (/Cursor) (cursor) {(cursor) | (null)} C X (/Colormap) (colormap) (colormap) C X (/Visual) empty (visual) C X (/VisualList) empty (array) C X (/OverrideRedirect) empty (boolean) C X (/BorderWidth) {(null) | (integer)} {(null) | (integer)} C X (/UserProps) (dict) (dict) C X (/XID) empty (number) C X (/SharedFile) (string) (string) C X (/RowBytes) empty (number) C X (/Grabbed) (boolean) (boolean) C X (/GrabToken) empty (integer) C X end % Canvas X X /Cursor 100 dict def X Cursor begin X (/CursorChar) empty (integer) C X (/CursorColor) empty (object) C X (/CursorFont) empty (object) C X (/MaskChar) empty (integer) C X (/MaskColor) empty (object) C X (/MaskFont) empty (object) C X end % Cursor X X /Visual 100 dict def X Visual begin X (/Size) empty (integer) C X (/Class) empty (integer) C X (/BitsPerPixel) empty (integer) C X end % Visual X X /Colormap 100 dict def X Colormap begin X (/Entries) empty (array) C X (/Free) empty (number) C X (/Installed) (boolean) (boolean) C X (/Visual) empty (object) C X end % Colormap X X /Colormapentry 100 dict def X Colormapentry begin X (/Colormap) empty (object) C X (/Mask) empty (integer) C X (/Slot) empty (integer) C X end % Colormapentry X X /Process 100 dict def X Process begin X (/$error) {(null) | (dict)} {(null) | (dict)} C X (/errordict) (dict) (dict) C X (/DictionaryStack) empty (array) C X (/ErrorCode) empty (name) C X (/ErrorDetailLevel) (integer) (integer) C X (/Execee) empty (object) C X (/ExecutionStack) empty (array) C X (/Interests) empty (array) C X (/OperandStack) empty (array) C X (/State) empty (array) C X (/Priority) (integer) (integer) C X (/ProcessName) (name) (name) C X (/Stdout) (file) (file) C X (/Stderr) (file) (file) C X (/SendContexts) empty (array) C X (/SendStack) empty (array) C X end % Process X X /Event 100 dict def X Event begin X (/Action) (object) (object) C X (/Canvas) {(dict) | (array) | (canvas) | (null)} X {(dict) | (array) | (canvas) | (null)} C X (/ClientData) (object) (object) C X (/Exclusivity) (boolean) (boolean) C X (/Interest) empty (event) C X (/IsInterest) empty (boolean) C X (/IsPreChild) empty (boolean) C X (/IsQueued) empty (boolean) C X (/KeyState) empty (array) C X (/Name) (object) (object) C X (/Priority) (number) (number) C X (/Process) {(null)|(process)} {(null)|(process)} C X (/Serial) empty (number) C X (/TimeStamp) (number) (number) C X (/XLocation) (number) (number) C X (/YLocation) (number) (number) C X (/Coordinates) (xnumber ynumber) (xnumber ynumber) C X end % Event X X /Environment 100 dict def X Environment begin X (/BellDuration) (integer) (integer) C X (/BellPitch) (number) (number) C X (/BellPercent) (number) (number) C X (/KeyClickPercent) (number) (number) C X (/Leds) (integer) (integer) C X (/AutoRepeat) (boolean) (boolean) C X (/KeyRepeatTime) (number) (number) C X (/KeyRepeatThresh) (number) (number) C X (/MotionCompression) (boolean) (boolean) C X (/Threshold) (integer) (integer) C X (/AccelNumerator) (number) (number) C X (/AccelDenominator) (number) (number) C X end % Environment X X end % Types X X /Operators 100 dict def X Operators begin X X /Path 100 dict def X Path begin X (copyarea) (dx dy) empty C X (currentpath) empty (path) C X (damagepath) empty empty C X (emptypath) empty (boolean) C X (eocopyarea) (dx dy) empty C X (eocurrentpath) empty (path) C X (eoextenddamage) empty empty C X (eoextenddamageall) empty empty C X (extenddamage) empty empty C X (extenddamageall) empty empty C X (pointinpath) (x y) (boolean) C X (setpath) (path) empty C X end % Path X X /Canvas 100 dict def X Canvas begin X (buildimage) (w h bits matrix proc) (canvas) C X (canvasesunderpath) empty (array) C X (canvasesunderpoint) {(null) | (xnum ynum)} (array) C X (canvastobottom) (canvas) empty C X (canvastotop) (canvas) empty C X (clipcanvas) empty empty C X (clipcanvaspath) empty empty C X (createdevice) (string) (canvas) C X (createoverlay) (canvas) (canvas) C X (currentcanvas) empty (canvas) C X (eoclipcanvas) empty empty C X (eoreshapecanvas) (canvas) empty C X (eowritecanvas) {(file) | (string)} empty C X (eowritescreen) {(file) | (string)} empty C X (getcanvaslocation) (canvas) (x y) C X (getcanvashape) empty (path) C X (imagecanvas) (canvas) empty C X (imagemaskcanvas) (boolean canvas) empty C X (insertcanvasabove) (canvas x y) empty C X (insertcanvasbelow) (canvas x y) empty C X (movecanvas) {(x y)| (x y canvas)} empty C X (newcanvas) {(pcan) | (pcan visual cmap)} (ncan) C X (readcanvas) {(file) | (string)} (canvas) C X (reshapecanvas) {(canvas)| (canvas path width)} empty C X (setcanvas) (canvas) empty C X (writecanvas) {(file) | (string)} empty C X (writescreen) {(file) | (string)} empty C X end % Canvas X X /Cursor 100 dict def X Cursor begin X (currentcursorlocation) empty (x y) C X (getcanvascursor) (canvas) (font char char) C X (grabcursor) {(cursor) | (null)} empty C X (newcursor) (char char font <font>) (cursor) C X (setcursorlocation) (x y) empty C X end % Cursor X X /Colormap 100 dict def X Colormap begin X (createcolormap) (visual) (colormap) C X (createcolorsegment) (colormap color) (colormapentry) C X (createcolorsegment) (colormap int int) (array) C X (currentbackpixel) empty (integer) C X (currentpixel) empty (integer) C X (getcolor) (cmapseg integer) (color) C X (putcolor) (cmapseg int color) empty C X (setbackpixel) (integer) empty C X (setpixel) (integer) empty C X end % Colormap X X /Color 100 dict def X Color begin X (contrastswithcurrent) (color) (boolean) C X (currentbackcolor) empty (color) C X (currentcolor) empty (color) C X (hsbcolor) (h s b) (color) C X (rgbcolor) (r g b) (color) C X (setcolor) (color) empty C X (setbackcolor) (color) empty C X end % Color X X /Process 100 dict def X Process begin X (breakpoint) empty empty C X (clearsendcontexts) empty empty C X (continueprocess) (process) empty C X (createmonitor) empty (monitor) C X (currentprocess) empty (process) C X (currentshared) empty (boolean) C X (defaulterroraction) (object name) empty C X (fork) (proc) (process) C X (geteventlogger) empty (process) C X (getprocesses) empty (array) C X (getprocessgroup) {(process) | (null)} (array) C X (killprocess) (process) empty C X (killprocessgroup) (process) empty C X (monitor) (monitor proc) empty C X (monitorlocked) (monitor) (boolean) C X (newprocessgroup) empty empty C X (pause) empty empty C X (runprogram) (string) empty C X (seteventlogger) (process) empty C X (suspendprocess) empty empty C X (waitprocess) (process) (value) C X end % Process X X /Event 100 dict def X Event begin X (awaitevent) empty (event) C X (blockinputqueue) (num) empty C X (countinputqueue) empty (num) C X (createevent) empty (event) C X (expressinterest) {(event)| (event process)} empty C X (getmousetranslation) empty (boolean) C X (lasteventkeystate) empty (array) C X (lasteventtime) empty (num) C X (lasteventx) empty (num) C X (lasteventy) empty (num) C X (postcrossings) (can can name name bool) empty C X (recallevent) (event) empty C X (redistributeevent) (event) empty C X (revokeinterest) {(event)|(event process)} empty C X (sendevent) (event) empty C X (unblockinputqueue) empty empty C X end % Event X X /File 100 dict def X File begin X (acceptconnection) (listenfile) (file) C X (countfileinputtoken) (file) (integer) C X (getfileinputtoken) {(int) | (int file)} (object) C X (getsocketlocaladdress) (file) (string) C X (getsocketpeername) (file) (string) C X (setfileinputtoken) (object int <file>) empty C X (tagprint) (num) empty C X (typedprint) (object) empty C X (writeobject) (file object) empty C X end % File X X /Mathematical 100 dict def X Mathematical begin X (arccos) (num) (num) C X (arcsin) (num) (num) C X (arctan) (num) (num) C X (max) (num num) (num) C X (min) (num num) (num) C X (random) empty (num) C X end % Mathematical X X /Keyboard 100 dict def X Keyboard begin X (getkeyboardtranslation) empty (num) C X (getmousetranslation) empty (boolean) C X (keyboardtype) empty (num) C X (setkeyboardtranslation) (boolean) empty C X (setmousetranslation) (boolean) empty C X end % Keyboard X X /Font 100 dict def X Font begin X (currentfontmen) empty (integer) C X (encodefont) {(font array) | (font name)} (font) C X (enumeratefontdicts) empty (name1) (name2 ...) C X (findfilefont) (string) (font) C X (fontascent) (font) (integer) C X (fontdescent) (font) (integer) C X (fontheight) (font) (integer) C X (setfontmen) (integer) empty C X end % Font X X /Miscellaneous 100 dict def X Miscellaneous begin X (assert) (boolean errorname) empty C X (beep) empty empty C X (currentautobind) empty (boolean) C X (currentpacking) empty (boolean) C X (currentplanemask) empty (integer) C X (currentprintermatch) empty (boolean) C X (currentrasteropcode) empty (num) C X (currentstate) empty (state) C X (currenttime) empty (num) C X (getcard32) (string integer) (integer) C X (getenv) (string1) (string2) C X (harden) (object) (object) C X (localhostname) empty (string) C X (objectdump) (file) empty C X (packedarray) (objects int) (packedarray) C X (packedarraytype) (object) (boolean) C X (pathforallvec) (array) empty C X (putcard32) (string integer integer) empty C X (putenv) (string1 string2) empty C X (refcnt) (object) (integer integer) C X (reffinder) {(object) | (object boolean)} empty C X (send) {(name object) | (proc object)} empty C X (setautobind) (boolean) empty C X (setpacking) (boolean) empty C X (setplanemask) (integer) empty C X (setprintermatch) (boolean) empty C X (setrasteropcode) (num) empty C X (setshared) (boolean) empty C X (setstate) (graphicsstate) empty C X (soft) (object) (boolean) C X (soften) (object) (object) C X (truetype) (object) (name) C X (undef) (dictionary key) empty C X (vmstatus) empty (avail used size) C X end % Miscellaneous X end % Operators X Xend % NeWSDoc X XNeWSDoc //go.sysin dd * if [ `wc -c < doc.ps` != 12549 ]; then made=false echo error transmitting doc.ps -- echo length should be 12549, not `wc -c < doc.ps` else made=true fi if $made; then chmod 644 doc.ps echo -n ' '; ls -ld doc.ps fi echo Extracting cyber sed 's/^X//' <<'//go.sysin dd *' >cyber X#!/bin/csh -f Xecho "systemdict /CyberDir (`pwd`) put" | psh Xpsh cyber.ps //go.sysin dd * if [ `wc -c < cyber` != 73 ]; then made=false echo error transmitting cyber -- echo length should be 73, not `wc -c < cyber` else made=true fi if $made; then chmod 775 cyber echo -n ' '; ls -ld cyber fi echo Extracting arpa.map sed 's/^X//' <<'//go.sysin dd *' >arpa.map Xsystemdict begin X X /ArpaMap 100 dict def X Xend % systemdict X XArpaMap begin X X /ARADC 20 dict def X ARADC begin X /@ARADC: (ARADC IMP) def X /LINC /replaceme def X /UROCH /replaceme def X end % ARADC X X /ARPA 20 dict def X ARPA begin X /@ARPA: (ARPA IMP) def X /CSS /replaceme def X /USC /replaceme def X /DCEC /replaceme def X end % ARPA X X /BBN63 20 dict def X BBN63 begin X /@BBN63: (BBN63 IMP) def X /RCC5 /replaceme def X /BRX25 /replaceme def X /BBN82 /replaceme def X end % BBN63 X X /BBN82 20 dict def X BBN82 begin X /@BBN82: (BBN82 IMP) def X /COLUM /replaceme def X /BBN63 /replaceme def X /RCC5 /replaceme def X /HARV /replaceme def X end % BBN82 X X /BERK 20 dict def X BERK begin X /@BERK: (BERK IMP) def X /WASH /replaceme def X /LBL2 /replaceme def X /XEROX /replaceme def X /SRI2 /replaceme def X end % BERK X X /BRAGG 20 dict def X BRAGG begin X /@BRAGG: (BRAGG IMP) def X /TEXAS /replaceme def X /DCEC /replaceme def X end % BRAGG X X /BRX25 20 dict def X BRX25 begin X /@BRX25: (BRX25 IMP) def X /BBN63 /replaceme def X end % BRX25 X X /CCA 20 dict def X CCA begin X /@CCA: (CCA IMP) def X /UDEL /replaceme def X /MIT6 /replaceme def X /RCC5 /replaceme def X end % CCA X X /CIT 20 dict def X CIT begin X /@CIT: (CIT IMP) def X /USC /replaceme def X /UCLA /replaceme def X end % CIT X X /CMU 20 dict def X CMU begin X /@CMU: (CMU IMP) def X /COLUM /replaceme def X /PURDU /replaceme def X /DCEC /replaceme def X end % CMU X X /COLNS 20 dict def X COLNS begin X /@COLNS: (COLNS IMP) def X /TEXAS /replaceme def X /SRI2 /replaceme def X /SAC /replaceme def X end % COLNS X X /COLUM 20 dict def X COLUM begin X /@COLUM: (COLUM IMP) def X /BBN82 /replaceme def X /CMU /replaceme def X end % COLUM X X /CSS 20 dict def X CSS begin X /@CSS: (CSS IMP) def X /MTR2 /replaceme def X /UDEL /replaceme def X /ARPA /replaceme def X end % CSS X X /DCEC 20 dict def X DCEC begin X /@DCEC: (DCEC IMP) def X /ARPA /replaceme def X /NSA2 /replaceme def X /CMU /replaceme def X /BRAGG /replaceme def X end % DCEC X X /DEC 20 dict def X DEC begin X /@DEC: (DEC IMP) def X /LINC /replaceme def X /HARV /replaceme def X end % DEC X X /HARV 20 dict def X HARV begin X /@HARV: (HARV IMP) def X /BBN82 /replaceme def X /DEC /replaceme def X end % HARV X X /ISI22 20 dict def X ISI22 begin X /@ISI22: (ISI22 IMP) def X /ISI27 /replaceme def X /ISI52 /replaceme def X /STAN /replaceme def X end % ISI22 X X /ISI27 20 dict def X ISI27 begin X /@ISI27: (ISI27 IMP) def X /ISI52 /replaceme def X /ISI22 /replaceme def X /UCLA /replaceme def X end % ISI27 X X /ISI52 20 dict def X ISI52 begin X /@ISI52: (ISI52 IMP) def X /ISI22 /replaceme def X /ISI27 /replaceme def X /RAND /replaceme def X end % ISI52 X X /LBL2 20 dict def X LBL2 begin X /@LBL2: (LBL2 IMP) def X /UTAH /replaceme def X /BERK /replaceme def X end % LBL2 X X /LINC 20 dict def X LINC begin X /@LINC: (LINC IMP) def X /ARADC /replaceme def X /MIT77 /replaceme def X /DEC /replaceme def X /MTR2 /replaceme def X end % LINC X X /MIT44 20 dict def X MIT44 begin X /@MIT44: (MIT44 IMP) def X /MIT6 /replaceme def X /MIT77 /replaceme def X end % MIT44 X X /MIT6 20 dict def X MIT6 begin X /@MIT6: (MIT6 IMP) def X /CCA /replaceme def X /MIT44 /replaceme def X /MIT77 /replaceme def X end % MIT6 X X /MIT77 20 dict def X MIT77 begin X /@MIT77: (MIT77 IMP) def X /MIT44 /replaceme def X /LINC /replaceme def X /MIT6 /replaceme def X end % MIT77 X X /MTR2 20 dict def X MTR2 begin X /@MTR2: (MTR2 IMP) def X /CSS /replaceme def X /LINC /replaceme def X end % MTR2 X X /NSA2 20 dict def X NSA2 begin X /@NSA2: (NSA2 IMP) def X /DCEC /replaceme def X end % NSA2 X X /PURDU 20 dict def X PURDU begin X /@PURDU: (PURDU IMP) def X /CMU /replaceme def X end % PURDU X X /RAND 20 dict def X RAND begin X /@RAND: (RAND IMP) def X /ISI52 /replaceme def X /USC /replaceme def X end % RAND X X /RCC5 20 dict def X RCC5 begin X /@RCC5: (RCC5 IMP) def X /UROCH /replaceme def X /CCA /replaceme def X /BBN82 /replaceme def X /BBN63 /replaceme def X end % RCC5 X X /SAC 20 dict def X SAC begin X /@SAC: (SAC IMP) def X /SAC2 /replaceme def X /WISC /replaceme def X /UTAH /replaceme def X /COLNS /replaceme def X end % SAC X X /SAC2 20 dict def X SAC2 begin X /@SAC2: (SAC2 IMP) def X /SAC /replaceme def X end % SAC2 X X /SR107 20 dict def X SR107 begin X /@SR107: (SR107 IMP) def X /SRI2 /replaceme def X /SRI51 /replaceme def X /SRI12 /replaceme def X end % SR107 X X /SRI12 20 dict def X SRI12 begin X /@SRI12: (SRI12 IMP) def X /SR107 /replaceme def X end % SRI12 X X /SRI2 20 dict def X SRI2 begin X /@SRI2: (SRI2 IMP) def X /XEROX /replaceme def X /SRI51 /replaceme def X /SR107 /replaceme def X /COLNS /replaceme def X /BERK /replaceme def X end % SRI2 X X /SRI51 20 dict def X SRI51 begin X /@SRI51: (SRI51 IMP) def X /STAN /replaceme def X /SR107 /replaceme def X /SRI2 /replaceme def X end % SRI51 X X /STAN 20 dict def X STAN begin X /@STAN: (STAN IMP) def X /ISI22 /replaceme def X /SUMEX /replaceme def X /SRI51 /replaceme def X end % STAN X X /SUMEX 20 dict def X SUMEX begin X /@SUMEX: (SUMEX IMP) def X /STAN /replaceme def X /XEROX /replaceme def X end % SUMEX X X /TEXAS 20 dict def X TEXAS begin X /@TEXAS: (TEXAS IMP) def X /COLNS /replaceme def X /BRAGG /replaceme def X /UCLA /replaceme def X end % TEXAS X X /UCLA 20 dict def X UCLA begin X /@UCLA: (UCLA IMP) def X /CIT /replaceme def X /TEXAS /replaceme def X /XEROX /replaceme def X /ISI27 /replaceme def X end % UCLA X X /UDEL 20 dict def X UDEL begin X /@UDEL: (UDEL IMP) def X /CSS /replaceme def X /CCA /replaceme def X end % UDEL X X /UROCH 20 dict def X UROCH begin X /@UROCH: (UROCH IMP) def X /ARADC /replaceme def X /WISC /replaceme def X /RCC5 /replaceme def X end % UROCH X X /US121 20 dict def X US121 begin X /@US121: (US121 IMP) def X /USC /replaceme def X end % US121 X X /USC 20 dict def X USC begin X /@USC: (USC IMP) def X /ARPA /replaceme def X /RAND /replaceme def X /CIT /replaceme def X /US121 /replaceme def X end % USC X X /UTAH 20 dict def X UTAH begin X /@UTAH: (UTAH IMP) def X /LBL2 /replaceme def X /SAC /replaceme def X /WASH /replaceme def X end % UTAH X X /WASH 20 dict def X WASH begin X /@WASH: (WASH IMP) def X /BERK /replaceme def X /UTAH /replaceme def X end % WASH X X /WISC 20 dict def X WISC begin X /@WISC: (WISC IMP) def X /SAC /replaceme def X /UROCH /replaceme def X end % WISC X X /XEROX 20 dict def X XEROX begin X /@XEROX: (XEROX IMP) def X /SUMEX /replaceme def X /SRI2 /replaceme def X /BERK /replaceme def X /UCLA /replaceme def X end % XEROX X Xend % ArpaMap X XArpaMap { X begin pop X currentdict { X /replaceme eq { X ArpaMap 1 index get def X } { pop } ifelse X } forall X end X} forall X XArpaMap //go.sysin dd * if [ `wc -c < arpa.map` != 6964 ]; then made=false echo error transmitting arpa.map -- echo length should be 6964, not `wc -c < arpa.map` else made=true fi if $made; then chmod 644 arpa.map echo -n ' '; ls -ld arpa.map fi echo Extracting advent.map sed 's/^X//' <<'//go.sysin dd *' >advent.map X/def-descr { % descr# str => - X currentdict 2 index known not { X 1 index nullarray def X } if X [ exch ] 1 index load exch append def X} def X X/room-descriptions dictbegin X1 (You are standing at the end of a road before a small brick building.) Xdef-descr X1 (Around you is a forest. A small stream flows out of the building and) Xdef-descr X1 (down a gully.) Xdef-descr X2 (You have walked up a hill, still in the forest. The road slopes back) Xdef-descr X2 (down the other side of the hill. There is a building in the distance.) Xdef-descr X3 (You are inside a building, a well house for a large spring.) Xdef-descr X4 (You are in a valley in the forest beside a stream tumbling along a) Xdef-descr X4 (rocky bed.) Xdef-descr X5 (You are in open forest, with a deep valley to one side.) Xdef-descr X6 (You are in open forest near both a valley and a road.) Xdef-descr X7 (At your feet all the water of the stream splashes into a 2-inch slit) Xdef-descr X7 (in the rock. Downstream the streambed is bare rock.) Xdef-descr X8 (You are in a 20-foot depression floored with bare dirt. Set into the) Xdef-descr X8 (dirt is a strong steel grate mounted in concrete. A dry streambed) Xdef-descr X8 (leads into the depression.) Xdef-descr X9 (You are in a small chamber beneath a 3x3 steel grate to the surface.) Xdef-descr X9 (A low crawl over cobbles leads inward to the west.) Xdef-descr X10 (You are crawling over cobbles in a low passage. There is a dim light) Xdef-descr X10 (at the east end of the passage.) Xdef-descr X11 (You are in a debris room filled with stuff washed in from the surface.) Xdef-descr X11 (A low wide passage with cobbles becomes plugged with mud and debris) Xdef-descr X11 (here, but an awkward canyon leads upward and west. A note on the wall) Xdef-descr X11 (says "magic word xyzzy".) Xdef-descr X12 (You are in an awkward sloping east/west canyon.) Xdef-descr X13 (You are in a splendid chamber thirty feet high. The walls are frozen) Xdef-descr X13 (rivers of orange stone. An awkward canyon and a good passage exit) Xdef-descr X13 (From east and west sides of the chamber.) Xdef-descr X14 (At your feet is a small pit breathing traces of white mist. An east) Xdef-descr X14 (passage ends here except for a small crack leading on.) Xdef-descr X15 (You are at one end of a vast hall stretching forward out of sight to) Xdef-descr X15 (the west. There are openings to either side. Nearby, a wide stone) Xdef-descr X15 (staircase leads downward. The hall is filled with wisps of white mist) Xdef-descr X15 (swaying to and fro almost as if alive. A cold wind blows up the) Xdef-descr X15 (staircase. There is a passage at the top of a dome behind you.) Xdef-descr X16 (The crack is far too small for you to follow.) Xdef-descr X17 (You are on the east bank of a fissure slicing clear across the hall.) Xdef-descr X17 (The mist is quite thick here, and the fissure is too wide to jump.) Xdef-descr X18 (This is a low room with a crude note on the wall. The note says,) Xdef-descr X18 ("You won't get it up the steps".) Xdef-descr X19 (You are in the hall of the mountain king, with passages off in all) Xdef-descr X19 (directions.) Xdef-descr X20 (You are at the bottom of the pit with a broken neck.) Xdef-descr X21 (You didn't make it.) Xdef-descr X22 (The dome is unclimbable.) Xdef-descr X23 (You are at the west end of the twopit room. There is a large hole in) Xdef-descr X23 (the wall above the pit at this end of the room.) Xdef-descr X24 (You are at the bottom of the eastern pit in the twopit room. There is) Xdef-descr X24 (a small pool of oil in one corner of the pit.) Xdef-descr X25 (You are at the bottom of the western pit in the twopit room. There is) Xdef-descr X25 (a large hole in the wall about 25 feet above you.) Xdef-descr X26 (You clamber up the plant and scurry through the hole at the top.) Xdef-descr X27 (You are on the west side of the fissure in the hall of mists.) Xdef-descr X28 (You are in a low n/s passage at a hole in the floor. The hole goes) Xdef-descr X28 (down to an e/w passage.) Xdef-descr X29 (You are in the south side chamber.) Xdef-descr X30 (You are in the west side chamber of the hall of the mountain king.) Xdef-descr X30 (A passage continues west and up here.) Xdef-descr X31 (>$<) Xdef-descr X32 (You can't get by the snake.) Xdef-descr X33 (You are in a large room, with a passage to the south, a passage to the) Xdef-descr X33 (west, and a wall of broken rock to the east. There is a large "y2" on) Xdef-descr X33 (A rock in the room's center.) Xdef-descr X34 (You are in a jumble of rock, with cracks everywhere.) Xdef-descr X35 (You're at a low window overlooking a huge pit, which extends up out of) Xdef-descr X35 (sight. A floor is indistinctly visible over 50 feet below. Traces of) Xdef-descr X35 (White mist cover the floor of the pit, becoming thicker to the right.) Xdef-descr X35 (Marks in the dust around the window would seem to indicate that) Xdef-descr X35 (someone has been here recently. Directly across the pit from you and) Xdef-descr X35 (25 Feet away there is a similar window looking into a lighted room. A) Xdef-descr X35 (shadowy figure can be seen there peering back at you.) Xdef-descr X36 (You are in a dirty broken passage. To the east is a crawl. To the) Xdef-descr X36 (west is a large passage. Above you is a hole to another passage.) Xdef-descr X37 (You are on the brink of a small clean climbable pit. A crawl leads) Xdef-descr X37 (west.) Xdef-descr X38 (You are in the bottom of a small pit with a little stream, which) Xdef-descr X38 (Enters and exits through tiny slits.) Xdef-descr X39 (You are in a large room full of dusty rocks. There is a big hole in) Xdef-descr X39 (the floor. There are cracks everywhere, and a passage leading east.) Xdef-descr X40 (You have crawled through a very low wide passage parallel to and north) Xdef-descr X40 (of the hall of mists.) Xdef-descr X41 (You are at the west end of hall of mists. A low wide crawl continues) Xdef-descr X41 (west and another goes north. To the south is a little passage 6 feet) Xdef-descr X41 (Off the floor.) Xdef-descr X42 (You are in a maze of twisty little passages, all alike.) Xdef-descr X43 (You are in a maze of twisty little passages, all alike.) Xdef-descr X44 (You are in a maze of twisty little passages, all alike.) Xdef-descr X45 (You are in a maze of twisty little passages, all alike.) Xdef-descr X46 (Dead end) Xdef-descr X47 (Dead end) Xdef-descr X48 (Dead end) Xdef-descr X49 (You are in a maze of twisty little passages, all alike.) Xdef-descr X50 (You are in a maze of twisty little passages, all alike.) Xdef-descr X51 (You are in a maze of twisty little passages, all alike.) Xdef-descr X52 (You are in a maze of twisty little passages, all alike.) Xdef-descr X53 (You are in a maze of twisty little passages, all alike.) Xdef-descr X54 (Dead end) Xdef-descr X55 (You are in a maze of twisty little passages, all alike.) Xdef-descr X56 (Dead end) Xdef-descr X57 (You are on the brink of a thirty foot pit with a massive orange column) Xdef-descr X57 (down one wall. You could climb down here but you could not get back) Xdef-descr X57 (up. The maze continues at this level.) Xdef-descr X58 (Dead end) Xdef-descr X59 (You have crawled through a very low wide passage parallel to and north) Xdef-descr X59 (of the hall of mists.) Xdef-descr X60 (You are at the east end of a very long hall apparently without side) Xdef-descr X60 (chambers. To the east a low wide crawl slants up. To the north a) Xdef-descr X60 (round two foot hole slants down.) Xdef-descr X61 (You are at the west end of a very long featureless hall. The hall) Xdef-descr X61 (joins up with a narrow north/south passage.) Xdef-descr X62 (You are at a crossover of a high n/s passage and a low e/w one.) Xdef-descr X63 (Dead end) Xdef-descr X64 (You are at a complex junction. A low hands and knees passage from the) Xdef-descr X64 (north joins a higher crawl from the east to make a walking passage) Xdef-descr X64 (going west. There is also a large room above. The air is damp here.) Xdef-descr X65 (You are in bedquilt, a long east/west passage with holes everywhere.) Xdef-descr X65 (To explore at random select north, south, up, or down.) Xdef-descr X66 (You are in a room whose walls resemble swiss cheese. Obvious passages) Xdef-descr X66 (go west, east, ne, and nw. Part of the room is occupied by a large) Xdef-descr X66 (bedrock block.) Xdef-descr X67 (You are at the east end of the twopit room. The floor here is) Xdef-descr X67 (littered with thin rock slabs, which make it easy to descend the pits.) Xdef-descr X67 (There is a path here bypassing the pits to connect passages from east) Xdef-descr X67 (and west. There are holes all over, but the only big one is on the) Xdef-descr X67 (wall directly over the west pit where you can't get to it.) Xdef-descr X68 (You are in a large low circular chamber whose floor is an immense slab) Xdef-descr X68 (fallen from the ceiling (slab room). East and west there once were) Xdef-descr X68 (large passages, but they are now filled with boulders. Low small) Xdef-descr X68 (passages go north and south, and the south one quickly bends west) Xdef-descr X68 (around the boulders.) Xdef-descr X69 (You are in a secret n/s canyon above a large room.) Xdef-descr X70 (You are in a secret n/s canyon above a sizable passage.) Xdef-descr X71 (You are in a secret canyon at a junction of three canyons, bearing) Xdef-descr X71 (north, south, and se. The north one is as tall as the other two) Xdef-descr X71 (combined.) Xdef-descr X72 (You are in a large low room. Crawls lead north, se, and sw.) Xdef-descr X73 (Dead end crawl.) Xdef-descr X74 (You are in a secret canyon which here runs e/w. It crosses over a) Xdef-descr X74 (very tight canyon 15 feet below. If you go down you may not be able) Xdef-descr X74 (to get back up.) Xdef-descr X75 (You are at a wide place in a very tight n/s canyon.) Xdef-descr X76 (The canyon here becomes too tight to go further south.) Xdef-descr X77 (You are in a tall e/w canyon. A low tight crawl goes 3 feet north and) Xdef-descr X77 (seems to open up.) Xdef-descr X78 (The canyon runs into a mass of boulders -- dead end.) Xdef-descr X79 (The stream flows out through a pair of 1 foot diameter sewer pipes.) Xdef-descr X79 (It would be advisable to use the exit.) Xdef-descr X80 (You are in a maze of twisty little passages, all alike.) Xdef-descr X81 (Dead end) Xdef-descr X82 (Dead end) Xdef-descr X83 (You are in a maze of twisty little passages, all alike.) Xdef-descr X84 (You are in a maze of twisty little passages, all alike.) Xdef-descr X85 (Dead end) Xdef-descr X86 (Dead end) Xdef-descr X87 (You are in a maze of twisty little passages, all alike.) Xdef-descr X88 (You are in a long, narrow corridor stretching out of sight to the) Xdef-descr X88 (west. At the eastern end is a hole through which you can see a) Xdef-descr X88 (profusion of leaves.) Xdef-descr X89 (There is nothing here to climb. Use "up" or "out" to leave the pit.) Xdef-descr X90 (You have climbed up the plant and out of the pit.) Xdef-descr X91 (You are at the top of a steep incline above a large room. You could) Xdef-descr X91 (climb down here, but you would not be able to climb up. There is a) Xdef-descr X91 (passage leading back to the north.) Xdef-descr X92 (You are in the giant room. The ceiling here is too high up for your) Xdef-descr X92 (lamp to show it. Cavernous passages lead east, north, and south. On) Xdef-descr X92 (the west wall is scrawled the inscription, "fee fie foe foo" [sic].) Xdef-descr X93 (The passage here is blocked by a recent cave-in.) Xdef-descr X94 (You are at one end of an immense north/south passage.) Xdef-descr X95 (You are in a magnificent cavern with a rushing stream, which cascades) Xdef-descr X95 (over a sparkling waterfall into a roaring whirlpool which disappears) Xdef-descr X95 (through a hole in the floor. Passages exit to the south and west.) Xdef-descr X96 (You are in the soft room. The walls are covered with heavy curtains,) Xdef-descr X96 (the floor with a thick pile carpet. Moss covers the ceiling.) Xdef-descr X97 (This is the oriental room. Ancient oriental cave drawings cover the) Xdef-descr X97 (walls. A gently sloping passage leads upward to the north, another) Xdef-descr X97 (passage leads se, and a hands and knees crawl leads west.) Xdef-descr X98 (You are following a wide path around the outer edge of a large cavern.) Xdef-descr X98 (Far below, through a heavy white mist, strange splashing noises can be) Xdef-descr X98 (heard. The mist rises up through a fissure in the ceiling. The path) Xdef-descr X98 (exits to the south and west.) Xdef-descr X99 (You are in an alcove. A small nw path seems to widen after a short) Xdef-descr X99 (distance. An extremely tight tunnel leads east. It looks like a very) Xdef-descr X99 (tight squeeze. An eerie light can be seen at the other end.) Xdef-descr X100 (You're in a small chamber lit by an eerie green light. An extremely) Xdef-descr X100 (narrow tunnel exits to the west. A dark corridor leads ne.) Xdef-descr X101 (You're in the dark-room. A corridor leading south is the only exit.) Xdef-descr X102 (You are in an arched hall. A coral passage once continued up and east) Xdef-descr X102 (from here, but is now blocked by debris. The air smells of sea water.) Xdef-descr X103 (You're in a large room carved out of sedimentary rock. The floor and) Xdef-descr X103 (walls are littered with bits of shells imbedded in the stone. A) Xdef-descr X103 (shallow passage proceeds downward, and a somewhat steeper one leads) Xdef-descr X103 (up. A low hands and knees passage enters from the south.) Xdef-descr X104 (You are in a long sloping corridor with ragged sharp walls.) Xdef-descr X105 (You are in a cul-de-sac about eight feet across.) Xdef-descr X106 (You are in an anteroom leading to a large passage to the east. Small) Xdef-descr X106 (passages go west and up. The remnants of recent digging are evident.) Xdef-descr X106 (A sign in midair here says "Cave under construction beyond this point.) Xdef-descr X106 (Proceed at own risk. [Witt construction company]") Xdef-descr X107 (You are in a maze of twisty little passages, all different.) Xdef-descr X108 (You are at Witt's end. Passages lead off in *all* directions.) Xdef-descr X109 (You are in a north/south canyon about 25 feet across. The floor is) Xdef-descr X109 (covered by white mist seeping in from the north. The walls extend) Xdef-descr X109 (upward for well over 100 feet. Suspended from some unseen point far) Xdef-descr X109 (above you, an enormous two-sided mirror is hanging parallel to and) Xdef-descr X109 (Midway between the canyon walls. (The mirror is obviously provided) Xdef-descr X109 (for the use of the dwarves, who as you know, are extremely vain.) A) Xdef-descr X109 (Small window can be seen in either wall, some fifty feet up.) Xdef-descr X110 (You're at a low window overlooking a huge pit, which extends up out of) Xdef-descr X110 (sight. A floor is indistinctly visible over 50 feet below. Traces of) Xdef-descr X110 (white mist cover the floor of the pit, becoming thicker to the left.) Xdef-descr X110 (Marks in the dust around the window would seem to indicate that) Xdef-descr X110 (someone has been here recently. Directly across the pit from you and) Xdef-descr X110 (25 Feet away there is a similar window looking into a lighted room. A) Xdef-descr X110 (shadowy figure can be seen there peering back at you.) Xdef-descr X111 (A large stalactite extends from the roof and almost reaches the floor) Xdef-descr X111 (below. You could climb down it, and jump from it to the floor, but) Xdef-descr X111 (having done so you would be unable to reach it to climb back up.) Xdef-descr X112 (You are in a little maze of twisting passages, all different.) Xdef-descr X113 (You are at the edge of a large underground reservoir. An opaque cloud) Xdef-descr X113 (of white mist fills the room and rises rapidly upward. The lake is) Xdef-descr X113 (fed by a stream, which tumbles out of a hole in the wall about 10 feet) Xdef-descr X113 (overhead and splashes noisily into the water somewhere within the) Xdef-descr X113 (Mist. The only passage goes back toward the south.) Xdef-descr X114 (Dead end) Xdef-descr X115 (You are at the northeast end of an immense room, even larger than the) Xdef-descr X115 (giant room. It appears to be a repository for the "adventure") Xdef-descr X115 (program. Massive torches far overhead bathe the room with smoky) Xdef-descr X115 (yellow light. Scattered about you can be seen a pile of bottles (all) Xdef-descr X115 (of them empty), a nursery of young beanstalks murmuring quietly, a bed) Xdef-descr X115 (of oysters, a bundle of black rods with rusty stars on their ends, and) Xdef-descr X115 (a collection of brass lanterns. Off to one side a great many dwarves) Xdef-descr X115 (are sleeping on the floor, snoring loudly. A sign nearby reads: "Do) Xdef-descr X115 (not disturb the dwarves!" An immense mirror is hanging against one) Xdef-descr X115 (wall, and stretches to the other end of the room, where various other) Xdef-descr X115 (sundry objects can be glimpsed dimly in the distance.) Xdef-descr X116 (You are at the southwest end of the repository. To one side is a pit) Xdef-descr X116 (full of fierce green snakes. On the other side is a row of small) Xdef-descr X116 (wicker cages, each of which contains a little sulking bird. In one) Xdef-descr X116 (corner is a bundle of black rods with rusty marks on their ends. A) Xdef-descr X116 (large number of velvet pillows are scattered about on the floor. A) Xdef-descr X116 (vast mirror stretches off to the northeast. At your feet is a large) Xdef-descr X116 (steel grate, next to which is a sign which reads, "Treasure vault.) Xdef-descr X116 (Keys in main office.") Xdef-descr X117 (You are on one side of a large, deep chasm. A heavy white mist rising) Xdef-descr X117 (up from below obscures all view of the far side. A sw path leads away) Xdef-descr X117 (from the chasm into a winding corridor.) Xdef-descr X118 (You are in a long winding corridor sloping out of sight in both) Xdef-descr X118 (directions.) Xdef-descr X119 (You are in a secret canyon which exits to the north and east.) Xdef-descr X120 (You are in a secret canyon which exits to the north and east.) Xdef-descr X121 (You are in a secret canyon which exits to the north and east.) Xdef-descr X122 (You are on the far side of the chasm. A ne path leads away from the) Xdef-descr X122 (chasm on this side.) Xdef-descr X123 (You're in a long east/west corridor. A faint rumbling noise can be) Xdef-descr X123 (heard in the distance.) Xdef-descr X124 (The path forks here. The left fork leads northeast. A dull rumbling) Xdef-descr X124 (seems to get louder in that direction. The right fork leads southeast) Xdef-descr X124 (down a gentle slope. The main corridor enters from the west.) Xdef-descr X125 (The walls are quite warm here. From the north can be heard a steady) Xdef-descr X125 (roar, so loud that the entire cave seems to be trembling. Another) Xdef-descr X125 (passage leads south, and a low crawl goes east.) Xdef-descr X126 (You are on the edge of a breath-taking view. Far below you is an) Xdef-descr X126 (active volcano, from which great gouts of molten lava come surging) Xdef-descr X126 (out, cascading back down into the depths. The glowing rock fills the) Xdef-descr X126 (farthest reaches of the cavern with a blood-red glare, giving every-) Xdef-descr X126 (thing an eerie, macabre appearance. The air is filled with flickering) Xdef-descr X126 (sparks of ash and a heavy smell of brimstone. The walls are hot to) Xdef-descr X126 (the touch, and the thundering of the volcano drowns out all other) Xdef-descr X126 (sounds. Embedded in the jagged roof far overhead are myriad twisted) Xdef-descr X126 (formations composed of pure white alabaster, which scatter the murky) Xdef-descr X126 (light into sinister apparitions upon the walls. To one side is a deep) Xdef-descr X126 (gorge, filled with a bizarre chaos of tortured rock which seems to) Xdef-descr X126 (have been crafted by the devil himself. An immense river of fire) Xdef-descr X126 (crashes out from the depths of the volcano, burns its way through the) Xdef-descr X126 (gorge, and plummets into a bottomless pit far off to your left. To) Xdef-descr X126 (the right, an immense geyser of blistering steam erupts continuously) Xdef-descr X126 (from a barren island in the center of a sulfurous lake, which bubbles) Xdef-descr X126 (ominously. The far right wall is aflame with an incandescence of its) Xdef-descr X126 (own, which lends an additional infernal splendor to the already) Xdef-descr X126 (hellish scene. A dark, foreboding passage exits to the south.) Xdef-descr X127 (You are in a small chamber filled with large boulders. The walls are) Xdef-descr X127 (very warm, causing the air in the room to be almost stifling from the) Xdef-descr X127 (heat. The only exit is a crawl heading west, through which is coming) Xdef-descr X127 (a low rumbling.) Xdef-descr X128 (You are walking along a gently sloping north/south passage lined with) Xdef-descr X128 (oddly shaped limestone formations.) Xdef-descr X129 (You are standing at the entrance to a large, barren room. A sign) Xdef-descr X129 (posted above the entrance reads: "Caution! Bear in room!") Xdef-descr X130 (You are inside a barren room. The center of the room is completely) Xdef-descr X130 (empty except for some dust. Marks in the dust lead away toward the) Xdef-descr X130 (far end of the room. The only exit is the way you came in.) Xdef-descr X131 (You are in a maze of twisting little passages, all different.) Xdef-descr X132 (You are in a little maze of twisty passages, all different.) Xdef-descr X133 (You are in a twisting maze of little passages, all different.) Xdef-descr X134 (You are in a twisting little maze of passages, all different.) Xdef-descr X135 (You are in a twisty little maze of passages, all different.) Xdef-descr X136 (You are in a twisty maze of little passages, all different.) Xdef-descr X137 (You are in a little twisty maze of passages, all different.) Xdef-descr X138 (You are in a maze of little twisting passages, all different.) Xdef-descr X139 (You are in a maze of little twisty passages, all different.) Xdef-descr X140 (Dead end) Xdef-descr Xdictend def X X/def-verb { % index name => - X currentdict 1 index known not { X 2 copy def X } if X exch def X} def X X/verbs dictbegin X 1 /yow! def-verb X 2 /road def-verb X 2 /hill def-verb X 3 /enter def-verb X 4 /upstr def-verb X 5 /downs def-verb X 6 /fores def-verb X 7 /forwa def-verb X 7 /conti def-verb X 7 /onwar def-verb X 8 /back def-verb X 8 /retur def-verb X 8 /retre def-verb X 9 /valle def-verb X 10 /stair def-verb X 11 /out def-verb X 11 /outsi def-verb X 11 /exit def-verb X 11 /leave def-verb X 12 /build def-verb X 12 /house def-verb X 13 /gully def-verb X 14 /strea def-verb X 15 /rock def-verb X 16 /bed def-verb X 17 /crawl def-verb X 18 /cobbl def-verb X 19 /inwar def-verb X 19 /insid def-verb X 19 /in def-verb X 20 /surfa def-verb X 21 /null def-verb X 21 /nowhe def-verb X 22 /dark def-verb X 23 /passa def-verb X 23 /tunne def-verb X 24 /low def-verb X 25 /canyo def-verb X 26 /awkwa def-verb X 27 /giant def-verb X 28 /view def-verb X 29 /upwar def-verb X 29 /up def-verb X 29 /u def-verb X 29 /above def-verb X 29 /ascen def-verb X 30 /d def-verb X 30 /downw def-verb X 30 /down def-verb X 30 /desce def-verb X 31 /pit def-verb X 32 /outdo def-verb X 33 /crack def-verb X 34 /steps def-verb X 35 /dome def-verb X 36 /left def-verb X 37 /right def-verb X 38 /hall def-verb X 39 /jump def-verb X 40 /barre def-verb X 41 /over def-verb X 42 /acros def-verb X 43 /east def-verb X 43 /e def-verb X 44 /west def-verb X 44 /w def-verb X 45 /north def-verb X 45 /n def-verb X 46 /south def-verb X 46 /s def-verb X 47 /ne def-verb X 48 /se def-verb X 49 /sw def-verb X 50 /nw def-verb X 51 /debri def-verb X 52 /hole def-verb X 53 /wall def-verb X 54 /broke def-verb X 55 /y2 def-verb X 56 /climb def-verb X 57 /look def-verb X 57 /exami def-verb X 57 /touch def-verb X 57 /descr def-verb X 58 /floor def-verb X 59 /room def-verb X 60 /slit def-verb X 61 /slab def-verb X 61 /slabr def-verb X 62 /xyzzy def-verb X 63 /depre def-verb X 64 /entra def-verb X 65 /plugh def-verb X 66 /secre def-verb X 67 /cave def-verb X 69 /cross def-verb X 70 /bedqu def-verb X 71 /plove def-verb X 72 /orien def-verb X 73 /caver def-verb X 74 /shell def-verb X 75 /reser def-verb X 76 /main def-verb X 76 /offic def-verb X 77 /fork def-verb Xdictend def X X/def-travel { % room# [ neighbor# verb# ... ] X currentdict 2 index known not { X 1 index dictbegin X /Room# 1 index def X 0 room-descriptions Room# get { X 1 index ( %) sprintf exch def X 1 add X } forall X pop X dictend def X } if X exch load % [ neighbor# verb# ... ] roomdict X begin X 0 2 getinterval aload pop % neighbor# verb# X verbs exch get % neighbor# verb X exch def % X end X} def X X/travel-table dictbegin X 1 [ 2 2 44 29 ] def-travel X 1 [ 3 3 12 19 43 ] def-travel X 1 [ 4 5 13 14 46 30 ] def-travel X 1 [ 5 6 45 43 ] def-travel X 1 [ 8 63 ] def-travel X 2 [ 1 2 12 7 43 45 30 ] def-travel X 2 [ 5 6 45 46 ] def-travel X 3 [ 1 3 11 32 44 ] def-travel X 3 [ 11 62 ] def-travel X 3 [ 33 65 ] def-travel X 3 [ 79 5 14 ] def-travel X 4 [ 1 4 12 45 ] def-travel X 4 [ 5 6 43 44 29 ] def-travel X 4 [ 7 5 46 30 ] def-travel X 4 [ 8 63 ] def-travel X 5 [ 4 9 43 30 ] def-travel X 5 [ 50005 6 7 45 ] def-travel X 5 [ 6 6 ] def-travel X 5 [ 5 44 46 ] def-travel X 6 [ 1 2 45 ] def-travel X 6 [ 4 9 43 44 30 ] def-travel X 6 [ 5 6 46 ] def-travel X 7 [ 1 12 ] def-travel X 7 [ 4 4 45 ] def-travel X 7 [ 5 6 43 44 ] def-travel X 7 [ 8 5 15 16 46 ] def-travel X 7 [ 595 60 14 30 ] def-travel X 8 [ 5 6 43 44 46 ] def-travel X 8 [ 1 12 ] def-travel X 8 [ 7 4 13 45 ] def-travel X 8 [ 303009 3 19 30 ] def-travel X 8 [ 593 3 ] def-travel X 9 [ 303008 11 29 ] def-travel X 9 [ 593 11 ] def-travel X 9 [ 10 17 18 19 44 ] def-travel X 9 [ 14 31 ] def-travel X 9 [ 11 51 ] def-travel X 10 [ 9 11 20 21 43 ] def-travel X 10 [ 11 19 22 44 51 ] def-travel X 10 [ 14 31 ] def-travel X 11 [ 303008 63 ] def-travel X 11 [ 9 64 ] def-travel X 11 [ 10 17 18 23 24 43 ] def-travel X 11 [ 12 25 19 29 44 ] def-travel X 11 [ 3 62 ] def-travel X 11 [ 14 31 ] def-travel X 12 [ 303008 63 ] def-travel X 12 [ 9 64 ] def-travel X 12 [ 11 30 43 51 ] def-travel X 12 [ 13 19 29 44 ] def-travel X 12 [ 14 31 ] def-travel X 13 [ 303008 63 ] def-travel X 13 [ 9 64 ] def-travel X 13 [ 11 51 ] def-travel X 13 [ 12 25 43 ] def-travel X 13 [ 14 23 31 44 ] def-travel X 14 [ 303008 63 ] def-travel X 14 [ 9 64 ] def-travel X 14 [ 11 51 ] def-travel X 14 [ 13 23 43 ] def-travel X 14 [ 150020 30 31 34 ] def-travel X 14 [ 15 30 ] def-travel X 14 [ 16 33 44 ] def-travel X 15 [ 18 36 46 ] def-travel X 15 [ 17 7 38 44 ] def-travel X 15 [ 19 10 30 45 ] def-travel X 15 [ 150022 29 31 34 35 23 43 ] def-travel X 15 [ 14 29 ] def-travel X 15 [ 34 55 ] def-travel X 16 [ 14 1 ] def-travel X 17 [ 15 38 43 ] def-travel X 17 [ 312596 39 ] def-travel X 17 [ 412021 7 ] def-travel X 17 [ 412597 41 42 44 69 ] def-travel X 17 [ 27 41 ] def-travel X 18 [ 15 38 11 45 ] def-travel X 19 [ 15 10 29 43 ] def-travel X 19 [ 311028 45 36 ] def-travel X 19 [ 311029 46 37 ] def-travel X 19 [ 311030 44 7 ] def-travel X 19 [ 32 45 ] def-travel X 19 [ 35074 49 ] def-travel X 19 [ 211032 49 ] def-travel X 19 [ 74 66 ] def-travel X 20 [ 0 1 ] def-travel X 21 [ 0 1 ] def-travel X 22 [ 15 1 ] def-travel X 23 [ 67 43 42 ] def-travel X 23 [ 68 44 61 ] def-travel X 23 [ 25 30 31 ] def-travel X 23 [ 648 52 ] def-travel X 24 [ 67 29 11 ] def-travel X 25 [ 23 29 11 ] def-travel X 25 [ 724031 56 ] def-travel X 25 [ 26 56 ] def-travel X 26 [ 88 1 ] def-travel X 27 [ 312596 39 ] def-travel X 27 [ 412021 7 ] def-travel X 27 [ 412597 41 42 43 69 ] def-travel X 27 [ 17 41 ] def-travel X 27 [ 40 45 ] def-travel X 27 [ 41 44 ] def-travel X 28 [ 19 38 11 46 ] def-travel X 28 [ 33 45 55 ] def-travel X 28 [ 36 30 52 ] def-travel X 29 [ 19 38 11 45 ] def-travel X 30 [ 19 38 11 43 ] def-travel X 30 [ 62 44 29 ] def-travel X 31 [ 524089 1 ] def-travel X 31 [ 90 1 ] def-travel X 32 [ 19 1 ] def-travel X 33 [ 3 65 ] def-travel X 33 [ 28 46 ] def-travel X 33 [ 34 43 53 54 ] def-travel X 33 [ 35 44 ] def-travel X 33 [ 159302 71 ] def-travel X 33 [ 100 71 ] def-travel X 34 [ 33 30 55 ] def-travel X 34 [ 15 29 ] def-travel X 35 [ 33 43 55 ] def-travel X 35 [ 20 39 ] def-travel X 36 [ 37 43 17 ] def-travel X 36 [ 28 29 52 ] def-travel X 36 [ 39 44 ] def-travel X 36 [ 65 70 ] def-travel X 37 [ 36 44 17 ] def-travel X 37 [ 38 30 31 56 ] def-travel X 38 [ 37 56 29 11 ] def-travel X 38 [ 595 60 14 30 4 5 ] def-travel X 39 [ 36 43 23 ] def-travel X 39 [ 64 30 52 58 ] def-travel X 39 [ 65 70 ] def-travel X 40 [ 41 1 ] def-travel X 41 [ 42 46 29 23 56 ] def-travel X 41 [ 27 43 ] def-travel X 41 [ 59 45 ] def-travel X 41 [ 60 44 17 ] def-travel X 42 [ 41 29 ] def-travel X 42 [ 42 45 ] def-travel X 42 [ 43 43 ] def-travel X 42 [ 45 46 ] def-travel X 42 [ 80 44 ] def-travel X 43 [ 42 44 ] def-travel X 43 [ 44 46 ] def-travel X 43 [ 45 43 ] def-travel X 44 [ 43 43 ] def-travel X 44 [ 48 30 ] def-travel X 44 [ 50 46 ] def-travel X 44 [ 82 45 ] def-travel X 45 [ 42 44 ] def-travel X 45 [ 43 45 ] def-travel X 45 [ 46 43 ] def-travel X 45 [ 47 46 ] def-travel X 45 [ 87 29 30 ] def-travel X 46 [ 45 44 11 ] def-travel X 47 [ 45 43 11 ] def-travel X 48 [ 44 29 11 ] def-travel X 49 [ 50 43 ] def-travel X 49 [ 51 44 ] def-travel X 50 [ 44 43 ] def-travel X 50 [ 49 44 ] def-travel X 50 [ 51 30 ] def-travel X 50 [ 52 46 ] def-travel X 51 [ 49 44 ] def-travel X 51 [ 50 29 ] def-travel X 51 [ 52 43 ] def-travel X 51 [ 53 46 ] def-travel X 52 [ 50 44 ] def-travel X 52 [ 51 43 ] def-travel X 52 [ 52 46 ] def-travel X 52 [ 53 29 ] def-travel X 52 [ 55 45 ] def-travel X 52 [ 86 30 ] def-travel X 53 [ 51 44 ] def-travel X 53 [ 52 45 ] def-travel X 53 [ 54 46 ] def-travel X 54 [ 53 44 11 ] def-travel X 55 [ 52 44 ] def-travel X 55 [ 55 45 ] def-travel X 55 [ 56 30 ] def-travel X 55 [ 57 43 ] def-travel X 56 [ 55 29 11 ] def-travel X 57 [ 13 30 56 ] def-travel X 57 [ 55 44 ] def-travel X 57 [ 58 46 ] def-travel X 57 [ 83 45 ] def-travel X 57 [ 84 43 ] def-travel X 58 [ 57 43 11 ] def-travel X 59 [ 27 1 ] def-travel X 60 [ 41 43 29 17 ] def-travel X 60 [ 61 44 ] def-travel X 60 [ 62 45 30 52 ] def-travel X 61 [ 60 43 ] def-travel X 61 [ 62 45 ] def-travel X 61 [ 100107 46 ] def-travel X 62 [ 60 44 ] def-travel X 62 [ 63 45 ] def-travel X 62 [ 30 43 ] def-travel X 62 [ 61 46 ] def-travel X 63 [ 62 46 11 ] def-travel X 64 [ 39 29 56 59 ] def-travel X 64 [ 65 44 70 ] def-travel X 64 [ 103 45 74 ] def-travel X 64 [ 106 43 ] def-travel X 65 [ 64 43 ] def-travel X 65 [ 66 44 ] def-travel X 65 [ 80556 46 ] def-travel X 65 [ 68 61 ] def-travel X 65 [ 80556 29 ] def-travel X 65 [ 50070 29 ] def-travel X 65 [ 39 29 ] def-travel X 65 [ 60556 45 ] def-travel X 65 [ 75072 45 ] def-travel X 65 [ 71 45 ] def-travel X 65 [ 80556 30 ] def-travel X 65 [ 106 30 ] def-travel X 66 [ 65 47 ] def-travel X 66 [ 67 44 ] def-travel X 66 [ 80556 46 ] def-travel X 66 [ 77 25 ] def-travel X 66 [ 96 43 ] def-travel X 66 [ 50556 50 ] def-travel X 66 [ 97 72 ] def-travel X 67 [ 66 43 ] def-travel X 67 [ 23 44 42 ] def-travel X 67 [ 24 30 31 ] def-travel X 68 [ 23 46 ] def-travel X 68 [ 69 29 56 ] def-travel X 68 [ 65 45 ] def-travel X 69 [ 68 30 61 ] def-travel X 69 [ 331120 46 ] def-travel X 69 [ 119 46 ] def-travel X 69 [ 109 45 ] def-travel X 69 [ 113 75 ] def-travel X 70 [ 71 45 ] def-travel X 70 [ 65 30 23 ] def-travel X 70 [ 111 46 ] def-travel X 71 [ 65 48 ] def-travel X 71 [ 70 46 ] def-travel X 71 [ 110 45 ] def-travel X 72 [ 65 70 ] def-travel X 72 [ 118 49 ] def-travel X 72 [ 73 45 ] def-travel X 72 [ 97 48 72 ] def-travel X 73 [ 72 46 17 11 ] def-travel X 74 [ 19 43 ] def-travel X 74 [ 331120 44 ] def-travel X 74 [ 121 44 ] def-travel X 74 [ 75 30 ] def-travel X 75 [ 76 46 ] def-travel X 75 [ 77 45 ] def-travel X 76 [ 75 45 ] def-travel X 77 [ 75 43 ] def-travel X 77 [ 78 44 ] def-travel X 77 [ 66 45 17 ] def-travel X 78 [ 77 46 ] def-travel X 79 [ 3 1 ] def-travel X 80 [ 42 45 ] def-travel X 80 [ 80 44 ] def-travel X 80 [ 80 46 ] def-travel X 80 [ 81 43 ] def-travel X 81 [ 80 44 11 ] def-travel X 82 [ 44 46 11 ] def-travel X 83 [ 57 46 ] def-travel X 83 [ 84 43 ] def-travel X 83 [ 85 44 ] def-travel X 84 [ 57 45 ] def-travel X 84 [ 83 44 ] def-travel X 84 [ 114 50 ] def-travel X 85 [ 83 43 11 ] def-travel X 86 [ 52 29 11 ] def-travel X 87 [ 45 29 30 ] def-travel X 88 [ 25 30 56 43 ] def-travel X 88 [ 20 39 ] def-travel X 88 [ 92 44 27 ] def-travel X 89 [ 25 1 ] def-travel X 90 [ 23 1 ] def-travel X 91 [ 95 45 73 23 ] def-travel X 91 [ 72 30 56 ] def-travel X 92 [ 88 46 ] def-travel X 92 [ 93 43 ] def-travel X 92 [ 94 45 ] def-travel X 93 [ 92 46 27 11 ] def-travel X 94 [ 92 46 27 23 ] def-travel X 94 [ 309095 45 3 73 ] def-travel X 94 [ 611 45 ] def-travel X 95 [ 94 46 11 ] def-travel X 95 [ 92 27 ] def-travel X 95 [ 91 44 ] def-travel X 96 [ 66 44 11 ] def-travel X 97 [ 66 48 ] def-travel X 97 [ 72 44 17 ] def-travel X 97 [ 98 29 45 73 ] def-travel X 98 [ 97 46 72 ] def-travel X 98 [ 99 44 ] def-travel X 99 [ 98 50 73 ] def-travel X 99 [ 301 43 23 ] def-travel X 99 [ 100 43 ] def-travel X 100 [ 301 44 23 11 ] def-travel X 100 [ 99 44 ] def-travel X 100 [ 159302 71 ] def-travel X 100 [ 33 71 ] def-travel X 100 [ 101 47 22 ] def-travel X 101 [ 100 46 71 11 ] def-travel X 102 [ 103 30 74 11 ] def-travel X 103 [ 102 29 38 ] def-travel X 103 [ 104 30 ] def-travel X 103 [ 114618 46 ] def-travel X 103 [ 115619 46 ] def-travel X 103 [ 64 46 ] def-travel X 104 [ 103 29 74 ] def-travel X 104 [ 105 30 ] def-travel X 105 [ 104 29 11 ] def-travel X 105 [ 103 74 ] def-travel X 106 [ 64 29 ] def-travel X 106 [ 65 44 ] def-travel X 106 [ 108 43 ] def-travel X 107 [ 131 46 ] def-travel X 107 [ 132 49 ] def-travel X 107 [ 133 47 ] def-travel X 107 [ 134 48 ] def-travel X 107 [ 135 29 ] def-travel X 107 [ 136 50 ] def-travel X 107 [ 137 43 ] def-travel X 107 [ 138 44 ] def-travel X 107 [ 139 45 ] def-travel X 107 [ 61 30 ] def-travel X 108 [ 95556 43 45 46 47 48 49 50 29 30 ] def-travel X 108 [ 106 43 ] def-travel X 108 [ 626 44 ] def-travel X 109 [ 69 46 ] def-travel X 109 [ 113 45 75 ] def-travel X 110 [ 71 44 ] def-travel X 110 [ 20 39 ] def-travel X 111 [ 70 45 ] def-travel X 111 [ 40050 30 39 56 ] def-travel X 111 [ 50053 30 ] def-travel X 111 [ 45 30 ] def-travel X 112 [ 131 49 ] def-travel X 112 [ 132 45 ] def-travel X 112 [ 133 43 ] def-travel X 112 [ 134 50 ] def-travel X 112 [ 135 48 ] def-travel X 112 [ 136 47 ] def-travel X 112 [ 137 44 ] def-travel X 112 [ 138 30 ] def-travel X 112 [ 139 29 ] def-travel X 112 [ 140 46 ] def-travel X 113 [ 109 46 11 109 ] def-travel X 114 [ 84 48 ] def-travel X 115 [ 116 49 ] def-travel X 116 [ 115 47 ] def-travel X 116 [ 593 30 ] def-travel X 117 [ 118 49 ] def-travel X 117 [ 233660 41 42 69 47 ] def-travel X 117 [ 332661 41 ] def-travel X 117 [ 303 41 ] def-travel X 117 [ 332021 39 ] def-travel X 117 [ 596 39 ] def-travel X 118 [ 72 30 ] def-travel X 118 [ 117 29 ] def-travel X 119 [ 69 45 11 ] def-travel X 119 [ 653 43 7 ] def-travel X 120 [ 69 45 ] def-travel X 120 [ 74 43 ] def-travel X 121 [ 74 43 11 ] def-travel X 121 [ 653 45 7 ] def-travel X 122 [ 123 47 ] def-travel X 122 [ 233660 41 42 69 49 ] def-travel X 122 [ 303 41 ] def-travel X 122 [ 596 39 ] def-travel X 122 [ 124 77 ] def-travel X 122 [ 126 28 ] def-travel X 122 [ 129 40 ] def-travel X 123 [ 122 44 ] def-travel X 123 [ 124 43 77 ] def-travel X 123 [ 126 28 ] def-travel X 123 [ 129 40 ] def-travel X 124 [ 123 44 ] def-travel X 124 [ 125 47 36 ] def-travel X 124 [ 128 48 37 30 ] def-travel X 124 [ 126 28 ] def-travel X 124 [ 129 40 ] def-travel X 125 [ 124 46 77 ] def-travel X 125 [ 126 45 28 ] def-travel X 125 [ 127 43 17 ] def-travel X 126 [ 125 46 23 11 ] def-travel X 126 [ 124 77 ] def-travel X 126 [ 610 30 39 ] def-travel X 127 [ 125 44 11 17 ] def-travel X 127 [ 124 77 ] def-travel X 127 [ 126 28 ] def-travel X 128 [ 124 45 29 77 ] def-travel X 128 [ 129 46 30 40 ] def-travel X 128 [ 126 28 ] def-travel X 129 [ 128 44 29 ] def-travel X 129 [ 124 77 ] def-travel X 129 [ 130 43 19 40 3 ] def-travel X 129 [ 126 28 ] def-travel X 130 [ 129 44 11 ] def-travel X 130 [ 124 77 ] def-travel X 130 [ 126 28 ] def-travel X 131 [ 107 44 ] def-travel X 131 [ 132 48 ] def-travel X 131 [ 133 50 ] def-travel X 131 [ 134 49 ] def-travel X 131 [ 135 47 ] def-travel X 131 [ 136 29 ] def-travel X 131 [ 137 30 ] def-travel X 131 [ 138 45 ] def-travel X 131 [ 139 46 ] def-travel X 131 [ 112 43 ] def-travel X 132 [ 107 50 ] def-travel X 132 [ 131 29 ] def-travel X 132 [ 133 45 ] def-travel X 132 [ 134 46 ] def-travel X 132 [ 135 44 ] def-travel X 132 [ 136 49 ] def-travel X 132 [ 137 47 ] def-travel X 132 [ 138 43 ] def-travel X 132 [ 139 30 ] def-travel X 132 [ 112 48 ] def-travel X 133 [ 107 29 ] def-travel X 133 [ 131 30 ] def-travel X 133 [ 132 44 ] def-travel X 133 [ 134 47 ] def-travel X 133 [ 135 49 ] def-travel X 133 [ 136 43 ] def-travel X 133 [ 137 45 ] def-travel X 133 [ 138 50 ] def-travel X 133 [ 139 48 ] def-travel X 133 [ 112 46 ] def-travel X 134 [ 107 47 ] def-travel X 134 [ 131 45 ] def-travel X 134 [ 132 50 ] def-travel X 134 [ 133 48 ] def-travel X 134 [ 135 43 ] def-travel X 134 [ 136 30 ] def-travel X 134 [ 137 46 ] def-travel X 134 [ 138 29 ] def-travel X 134 [ 139 44 ] def-travel X 134 [ 112 49 ] def-travel X 135 [ 107 45 ] def-travel X 135 [ 131 48 ] def-travel X 135 [ 132 30 ] def-travel X 135 [ 133 46 ] def-travel X 135 [ 134 43 ] def-travel X 135 [ 136 44 ] def-travel X 135 [ 137 49 ] def-travel X 135 [ 138 47 ] def-travel X 135 [ 139 50 ] def-travel X 135 [ 112 29 ] def-travel X 136 [ 107 43 ] def-travel X 136 [ 131 44 ] def-travel X 136 [ 132 29 ] def-travel X 136 [ 133 49 ] def-travel X 136 [ 134 30 ] def-travel X 136 [ 135 46 ] def-travel X 136 [ 137 50 ] def-travel X 136 [ 138 48 ] def-travel X 136 [ 139 47 ] def-travel X 136 [ 112 45 ] def-travel X 137 [ 107 48 ] def-travel X 137 [ 131 47 ] def-travel X 137 [ 132 46 ] def-travel X 137 [ 133 30 ] def-travel X 137 [ 134 29 ] def-travel X 137 [ 135 50 ] def-travel X 137 [ 136 45 ] def-travel X 137 [ 138 49 ] def-travel X 137 [ 139 43 ] def-travel X 137 [ 112 44 ] def-travel X 138 [ 107 30 ] def-travel X 138 [ 131 43 ] def-travel X 138 [ 132 47 ] def-travel X 138 [ 133 29 ] def-travel X 138 [ 134 44 ] def-travel X 138 [ 135 45 ] def-travel X 138 [ 136 46 ] def-travel X 138 [ 137 48 ] def-travel X 138 [ 139 49 ] def-travel X 138 [ 112 50 ] def-travel X 139 [ 107 49 ] def-travel X 139 [ 131 50 ] def-travel X 139 [ 132 43 ] def-travel X 139 [ 133 44 ] def-travel X 139 [ 134 45 ] def-travel X 139 [ 135 30 ] def-travel X 139 [ 136 48 ] def-travel X 139 [ 137 29 ] def-travel X 139 [ 138 46 ] def-travel X 139 [ 112 47 ] def-travel X 140 [ 112 45 11 ] def-travel Xdictend def X Xtravel-table { % room# dict X exch pop X begin X currentdict { % verb neighbor# X verbs 2 index known not { pop pop } { X travel-table exch X dup 999 gt { X dup 1000 div floor 1000 mul sub X cvi X } if X 2 copy known { X get % verb dict X def X } { X pop pop pop X } ifelse X } ifelse X } forall X end X} forall X Xsystemdict begin X /ColossalCave travel-table def X ColossalCave Xend % systemdict //go.sysin dd * if [ `wc -c < advent.map` != 38413 ]; then made=false echo error transmitting advent.map -- echo length should be 38413, not `wc -c < advent.map` else made=true fi if $made; then chmod 644 advent.map echo -n ' '; ls -ld advent.map fi ======== END OF cyber.shar.splitah ========