[
  {
    "path": "README.md",
    "content": "# Planetfall Source Code Collection\n\nPlanetfall is a 1983 interactive fiction game written by Steve Meretzky and published by Infocom.\n\nFurther information on Planetfall:\n\n* [Wikipedia](https://en.wikipedia.org/wiki/Planetfall)\n* [The Digital Antiquarian](https://www.filfre.net/2013/03/planetfall/)\n* [The Interactive Fiction Database](https://ifdb.tads.org/viewgame?id=xe6kb3cuqwie2q38)\n* [The Infocom Gallery](http://infocom.elsewhere.org/gallery/planetfall/planetfall.html)\n* [IFWiki](http://www.ifwiki.org/index.php/Planetfall)\n\n__What is this Repository?__\n\nThis repository is a directory of source code for the Infocom game \"Planetfall\", including a variety of files both used and discarded in the production of the game. It is written in ZIL (Zork Implementation Language), a refactoring of MDL (Muddle), itself a dialect of LISP created by MIT students and staff.\n\nThe source code was contributed anonymously and represents a snapshot of the Infocom development system at time of shutdown - there is no remaining way to compare it against any official version as of this writing, and so it should be considered canonical, but not necessarily the exact source code arrangement for production.\n\n__Basic Information on the Contents of This Repository__\n\nIt is mostly important to note that there is currently no known way to compile the source code in this repository into a final \"Z-machine Interpreter Program\" (ZIP) file. There are .ZIP files in some of the Infocom Source Code repositories but they were there as of final spin-down of the Infocom Drive and the means to create them is currently lost.\n\nThroughout its history, Infocom used a TOPS20 mainframe with a compiler (ZILCH) to create and edit language files - this repository is a mirror of the source code directory archive of Infocom but could represent years of difference from what was originally released.\n\nIn general, Infocom games were created by taking previous Infocom source code, copying the directory, and making changes until the game worked the way the current Implementor needed. Structure, therefore, tended to follow from game to game and may or may not accurately reflect the actual function of the code.\n\nThere are also multiple versions of the \"Z-Machine\" and code did change notably between the first years of Infocom and a decade later. Addition of graphics, sound and memory expansion are all slowly implemented over time.\n\n__What is the Purpose of this Repository__\n\nThis collection is meant for education, discussion, and historical work, allowing researchers and students to study how code was made for these interactive fiction games and how the system dealt with input and processing. It is not considered to be under an open license.\n\nResearchers are encouraged to share their discoveries about the information in this source code and the history of Infocom and its many innovative employees.\n\n__Some Trivia and Notes on this Repository__\n\n* First game created by Steve Meretzky after working as a tester for Infocom.\n"
  },
  {
    "path": "compone.zabstr",
    "content": "\n<ROOM UNDERWATER (IN ROOMS) (DESC \"Underwater\") (LDESC\n\"You are momentarily disoriented as you enter the turbulent waters.\nCurrents buffet you against the sharp rocks of an underwater\ncliff. A dim light filters down from above.\") (C-MOVE <TABLE 0 0 0 35 0 0 0 0 0\n0 0 0>) (UP TO CRAG) (DOWN TO UNDERWATER) (WEST TO UNDERWATER) (NORTH TO\nUNDERWATER) (SOUTH TO UNDERWATER) (FLAGS ONBIT RWATERBIT) (ACTION UNDERWATER-F)\n> \n<GLOBAL DROWN 0 %<> WORD> \n<DEFINE-ROUTINE UNDERWATER-F> \n<ROOM CRAG (IN ROOMS) (DESC \"Crag\") (LDESC\n\"You have reached a cleft in the cliff wall where the island rises from the\nwater. The edge of the cleft displays recently exposed rock where it collapsed\nunder the weight of the escape pod. About two meters below, turbulent waters\nswirl against sharp rocks. A small structure clings to the face of the cliff\nabout eight meters above you. Even an out-of-shape Ensign Seventh Class could\nprobably climb up to it.\") (C-MOVE <TABLE 0 0 10 40 0 0 0 0 0 0 0 0>) (DOWN TO\nUNDERWATER) (UP TO BALCONY) (FLAGS ONBIT RLANDBIT) (VALUE 3) (GLOBAL CLIFF\nOCEAN) (PSEUDO \"STRUCTURE\" STRUCTURE-PSEUDO \"CLEFT\" CLEFT-PSEUDO) (ACTION\nCRAG-F)> \n<DEFINE-ROUTINE CRAG-F> \n<ROOM BALCONY (IN ROOMS) (DESC \"Balcony\") (C-MOVE <TABLE 0 0 25 30 0 0 0 0 0 0\n0 0>) (DOWN PER WATER-LEVEL-F) (UP TO WINDING-STAIR) (FLAGS ONBIT RLANDBIT) (\nPSEUDO \"PLAQUE\" PLAQUE-PSEUDO) (GLOBAL CLIFF OCEAN STAIRS WINDOW) (ACTION\nBALCONY-F)> \n<DEFINE-ROUTINE BALCONY-F> \n<ROOM WINDING-STAIR (IN ROOMS) (DESC \"Winding Stair\") (C-MOVE <TABLE 0 0 15 30\n0 0 0 0 0 0 0 0>) (DOWN PER WATER-LEVEL-F) (UP TO COURTYARD) (FLAGS ONBIT\nRLANDBIT) (GLOBAL CLIFF STAIRS) (ACTION WINDING-STAIR-F)> \n<DEFINE-ROUTINE WINDING-STAIR-F> \n<ROOM COURTYARD (IN ROOMS) (DESC \"Courtyard\") (C-MOVE <TABLE 0 0 15 0 0 0 0 0 0\n0 0 0>) (DOWN TO WINDING-STAIR) (SOUTH TO WINDING-STAIR) (WEST TO WEST-WING) (\nNORTH TO PLAIN-HALL) (FLAGS ONBIT RLANDBIT FLOYDBIT) (GLOBAL STAIRS) (PSEUDO\n\"CASTLE\" CASTLE-PSEUDO \"RUBBLE\" RUBBLE-PSEUDO) (ACTION COURTYARD-F)> \n<DEFINE-ROUTINE COURTYARD-F> \n<DEFINE-ROUTINE WATER-LEVEL-F> \n<ROOM WEST-WING (IN ROOMS) (DESC \"West Wing\") (LDESC\n\"This was once the west wing of the castle, but the walls are now mostly\nrubble, allowing a view of the cliff and ocean below. Rubble blocks all exits\nsave one, eastward to the courtyard.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>)\n(EAST TO COURTYARD) (DOWN \"Certain death.\") (FLAGS ONBIT RLANDBIT FLOYDBIT) (\nGLOBAL CLIFF OCEAN) (PSEUDO \"CASTLE\" CASTLE-PSEUDO \"RUBBLE\" RUBBLE-PSEUDO)> \n<ROOM PLAIN-HALL (IN ROOMS) (DESC \"Plain Hall\") (LDESC\n\"This is a featureless hall leading north and south. Although the hallway is\nold and dusty, the construction is of a much more modern style than the\ncastle to the south. A similar hall branches off to the northeast.\") (C-MOVE <\nTABLE 0 0 0 0 0 0 0 0 0 0 25 0>) (SOUTH TO COURTYARD) (NORTH TO REC-AREA) (NE\nTO REC-CORRIDOR) (FLAGS ONBIT RLANDBIT)> \n<ROOM REC-AREA (IN ROOMS) (DESC \"Rec Area\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0\n0 0>) (NORTH TO CONFERENCE-ROOM IF CONFERENCE-DOOR IS OPEN) (SOUTH TO\nPLAIN-HALL) (EAST TO REC-CORRIDOR) (FLAGS ONBIT RLANDBIT FLOYDBIT) (GLOBAL\nCONFERENCE-DOOR) (PSEUDO \"GAMES\" GAMES-PSEUDO \"TAPES\" TAPES-PSEUDO) (ACTION\nREC-AREA-F)> \n<GLOBAL DIAL-NUMBER 0 %<> WORD> \n<GLOBAL NUMBER-NEEDED 0 %<> WORD> \n<DEFINE-ROUTINE REC-AREA-F> \n<ROOM CONFERENCE-ROOM (IN ROOMS) (DESC \"Conference Room\") (C-MOVE <TABLE 0 0 0\n0 0 0 0 0 0 0 0 0>) (SOUTH TO REC-AREA IF CONFERENCE-DOOR IS OPEN) (OUT TO\nREC-AREA IF CONFERENCE-DOOR IS OPEN) (IN TO BOOTH-1) (NORTH TO BOOTH-1) (FLAGS\nRLANDBIT ONBIT) (PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO) (GLOBAL CONFERENCE-DOOR\nTABLES) (ACTION CONFERENCE-ROOM-F)> \n<DEFINE-ROUTINE CONFERENCE-ROOM-F> \n<OBJECT CONFERENCE-DOOR (IN LOCAL-GLOBALS) (DESC \"door\") (SYNONYM DOOR) (FLAGS\nDOORBIT NDESCBIT) (ACTION CONFERENCE-DOOR-F)> \n<OBJECT COMBINATION-DIAL (IN REC-AREA) (DESC \"combination dial\") (SYNONYM DIAL)\n(ADJECTIVE COMBINATION) (FLAGS MUNGBIT NDESCBIT) (ACTION COMBINATION-DIAL-F)> \n<DEFINE-ROUTINE COMBINATION-DIAL-F> \n<DEFINE-ROUTINE CONFERENCE-DOOR-F> \n<ROOM BOOTH-1 (IN ROOMS) (DESC \"Booth 1\") (LDESC\n\"This is a tiny room with a large \\\"1\\\" painted on the wall. A panel contains\na slot about ten centimeters wide, a beige button labelled \\\"2\\\" and a tan\nbutton labelled \\\"3.\\\"\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO\nCONFERENCE-ROOM) (OUT TO CONFERENCE-ROOM) (PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO) (\nFLAGS ONBIT RLANDBIT) (GLOBAL CONTROLS SLOT TELEPORTATION-BUTTON-2\nTELEPORTATION-BUTTON-3)> \n<ROOM REC-CORRIDOR (IN ROOMS) (DESC \"Rec Corridor\") (LDESC\n\"This is a wide, east-west hallway. Portals lead north and south, and another\ncorridor branches southwest.\") (C-MOVE <TABLE 0 0 0 0 0 0 25 0 0 0 0 0>) (WEST\nTO REC-AREA) (NORTH TO DORM-B) (SOUTH TO DORM-A) (EAST TO MESS-CORRIDOR) (SW TO\nPLAIN-HALL) (FLAGS ONBIT RLANDBIT)> \n<ROOM DORM-A (IN ROOMS) (DESC \"Dorm A\") (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO SANFAC-A) (NORTH TO\nREC-CORRIDOR) (FLAGS FLOYDBIT ONBIT RLANDBIT) (GLOBAL BED) (PSEUDO \"PARTITION\"\nPARTITION-PSEUDO)> \n<ROOM SANFAC-A (IN ROOMS) (DESC \"SanFac A\") (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nnorth.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO DORM-A) (FLAGS\nONBIT RLANDBIT FLOYDBIT) (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\"\nTOILET-PSEUDO)> \n<ROOM DORM-B (IN ROOMS) (DESC \"Dorm B\") (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO REC-CORRIDOR) (NORTH TO\nSANFAC-B) (FLAGS FLOYDBIT ONBIT RLANDBIT) (GLOBAL BED) (PSEUDO \"PARTITION\"\nPARTITION-PSEUDO)> \n<ROOM SANFAC-B (IN ROOMS) (DESC \"SanFac B\") (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nsouth.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO DORM-B) (FLAGS\nFLOYDBIT ONBIT RLANDBIT) (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\"\nTOILET-PSEUDO)> \n<ROOM DORM-C (IN ROOMS) (DESC \"Dorm C\") (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO DORM-CORRIDOR) (SOUTH TO\nSANFAC-C) (FLAGS ONBIT FLOYDBIT RLANDBIT) (GLOBAL BED) (PSEUDO \"PARTITION\"\nPARTITION-PSEUDO)> \n<ROOM SANFAC-C (IN ROOMS) (DESC \"SanFac C\") (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nnorth.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO DORM-C) (FLAGS\nFLOYDBIT ONBIT RLANDBIT) (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\"\nTOILET-PSEUDO)> \n<ROOM DORM-D (IN ROOMS) (DESC \"Dorm D\") (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO DORM-CORRIDOR) (NORTH TO\nSANFAC-D) (FLAGS FLOYDBIT ONBIT RLANDBIT) (GLOBAL BED) (PSEUDO \"PARTITION\"\nPARTITION-PSEUDO)> \n<ROOM SANFAC-D (IN ROOMS) (DESC \"SanFac D\") (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nsouth.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO DORM-D) (FLAGS\nONBIT FLOYDBIT RLANDBIT) (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\"\nTOILET-PSEUDO)> \n<ROOM MESS-CORRIDOR (IN ROOMS) (DESC \"Mess Corridor\") (C-MOVE <TABLE 0 0 0 0 0\n0 0 0 0 0 0 0>) (SOUTH TO MESS-HALL) (NORTH TO STORAGE-WEST IF\nSTORAGE-WEST-DOOR IS OPEN) (EAST TO DORM-CORRIDOR) (WEST TO REC-CORRIDOR) (\nFLAGS ONBIT RLANDBIT) (GLOBAL STORAGE-WEST-DOOR) (ACTION MESS-CORRIDOR-F)> \n<DEFINE-ROUTINE MESS-CORRIDOR-F> \n<OBJECT STORAGE-WEST-DOOR (IN LOCAL-GLOBALS) (DESC \"door\") (SYNONYM DOOR) (\nFLAGS DOORBIT NDESCBIT) (ACTION STORAGE-WEST-DOOR-F)> \n<DEFINE-ROUTINE STORAGE-WEST-DOOR-F> \n<OBJECT PADLOCK (IN MESS-CORRIDOR) (DESC \"padlock\") (SYNONYM PADLOCK PAD LOCK)\n(ADJECTIVE SIMPLE STEEL METAL) (SIZE 10) (FLAGS MUNGBIT NDESCBIT TAKEBIT\nTRYTAKEBIT) (ACTION PADLOCK-F)> \n<GLOBAL PADLOCK-REMOVED <> %<> WORD> \n<DEFINE-ROUTINE PADLOCK-F> \n<ROOM STORAGE-WEST (IN ROOMS) (DESC \"Storage West\") (LDESC\n\"This is a small room obviously intended as a storage area.\") (C-MOVE <TABLE 0\n0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO MESS-CORRIDOR IF STORAGE-WEST-DOOR IS OPEN) (\nOUT TO MESS-CORRIDOR IF STORAGE-WEST-DOOR IS OPEN) (FLAGS RLANDBIT ONBIT) (\nVALUE 4) (GLOBAL SHELVES STORAGE-WEST-DOOR)> \n<OBJECT CAN (IN STORAGE-WEST) (DESC \"tin can\") (LDESC\n\"There is a large tin can, labelled \\\"Spam and Egz,\\\" sitting here.\") (FDESC\n\"On a small shelf is a large, unopened tin can. It has a plain white\nlabel which reads \\\"Spam and Egz.\\\"\") (SIZE 15) (SYNONYM CAN) (ADJECTIVE LARGE\nTIN UNOPENED) (FLAGS TAKEBIT) (ACTION CAN-F)> \n<DEFINE-ROUTINE CAN-F> \n<OBJECT LADDER (IN STORAGE-WEST) (DESC \"ladder\") (FDESC\n\"A heavy-duty extendable ladder is leaning against the rear wall.\") (LDESC\n\"There is a large aluminum ladder here.\") (SYNONYM LADDER) (ADJECTIVE HEAVY\nDUTY ALUMINUM LARGE) (SIZE 80) (FLAGS TAKEBIT) (ACTION LADDER-F)> \n<GLOBAL LADDER-EXTENDED <> %<> WORD> \n<GLOBAL LADDER-FLAG <> %<> WORD> \n<DEFINE-ROUTINE LADDER-F> \n<ROOM DORM-CORRIDOR (IN ROOMS) (DESC \"Dorm Corridor\") (LDESC\n\"This is a wide, east-west hallway with openings to the north and south.\nTo the east, the corridor stretches off into the distance. That section of\nthe hallway is lined with a motorized walkway (no longer running) that\nwas probably intended to transport people or cargo down that tremendously\nlong hall.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 160 0 0>) (NORTH TO DORM-D) (\nSOUTH TO DORM-C) (WEST TO MESS-CORRIDOR) (EAST PER LONG-HALL-F) (FLAGS ONBIT\nRLANDBIT) (PSEUDO \"WALKWAY\" WALKWAY-PSEUDO)> \n<ROOM MESS-HALL (IN ROOMS) (DESC \"Mess Hall\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0\n0 0 0>) (NORTH TO MESS-CORRIDOR) (OUT TO MESS-CORRIDOR) (SOUTH TO KITCHEN IF\nKITCHEN-DOOR IS OPEN) (IN TO KITCHEN IF KITCHEN-DOOR IS OPEN) (GLOBAL TABLES\nKITCHEN-DOOR SLOT) (FLAGS ONBIT FLOYDBIT RLANDBIT) (PSEUDO \"BENCH\" BENCH-PSEUDO\n\"BENCHE\" BENCH-PSEUDO) (ACTION MESS-HALL-F)> \n<DEFINE-ROUTINE MESS-HALL-F> \n<OBJECT KITCHEN-DOOR (IN LOCAL-GLOBALS) (DESC \"door\") (SYNONYM DOOR) (ADJECTIVE\nKITCHEN) (FLAGS DOORBIT NDESCBIT) (ACTION KITCHEN-DOOR-F)> \n<DEFINE-ROUTINE KITCHEN-DOOR-F> \n<ROOM KITCHEN (IN ROOMS) (DESC \"Kitchen\") (LDESC\n\"This is the food production and dispensary area for the dining hall to the\nnorth. Of particular interest is a machine near the door. You should probably\nexamine it more closely.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO\nMESS-HALL) (OUT TO MESS-HALL) (GLOBAL KITCHEN-DOOR) (PSEUDO \"SPOUT\"\nSPOUT-PSEUDO \"BUTTON\" BUTTON-PSEUDO) (FLAGS ONBIT RLANDBIT) (VALUE 4)> \n<OBJECT DISPENSER (IN KITCHEN) (DESC \"dispenser unit\") (SYNONYM UNIT NICHE\nMACHIN DISPEN) (ADJECTIVE DISPEN) (FLAGS MUNGBIT CONTBIT SEARCHBIT OPENBIT\nTRANSBIT NDESCBIT) (ACTION DISPENSER-F)> \n<OBJECT CANTEEN (IN MESS-HALL) (DESC \"canteen\") (FDESC\n\"Although the room is quite barren, an octagonally-shaped\ncanteen is sitting on one of the benches.\") (SYNONYM CANTEEN) (ADJECTIVE\nOCTAGONAL) (CAPACITY 5) (SIZE 10) (FLAGS TAKEBIT CONTBIT SEARCHBIT)> \n<DEFINE-ROUTINE DISPENSER-F> \n<OBJECT HIGH-PROTEIN (DESC \"quantity of protein-rich liquid\") (SYNONYM LIQUID\nFLUID FOOD QUANTITY) (ADJECTIVE BROWN PROTEIN-RICH) (SIZE 5) (FLAGS FOODBIT) (\nACTION HIGH-PROTEIN-F)> \n<DEFINE-ROUTINE HIGH-PROTEIN-F> \n<DEFINE-ROUTINE WORTHLESS-ACTION> \n<ROOM CORRIDOR-JUNCTION (IN ROOMS) (DESC \"Corridor Junction\") (LDESC\n\"A north-south corridor intersects the main corridor here. To the west, the\nmain corridor extends as far as you can see; a non-working walkway from\nthat direction ends here. To the east, the corridor widens into a well-lit\narea.\") (C-MOVE <TABLE 0 0 0 0 0 160 0 0 0 30 0 0>) (NORTH TO ADMIN-CORRIDOR-S)\n(SOUTH TO MECH-CORRIDOR-N) (WEST PER LONG-HALL-F) (EAST TO ELEVATOR-LOBBY) (\nFLAGS FLOYDBIT RLANDBIT ONBIT) (PSEUDO \"WALKWAY\" WALKWAY-PSEUDO)> \n<DEFINE-ROUTINE LONG-HALL-F> \n<ROOM ADMIN-CORRIDOR-S (IN ROOMS) (DESC \"Admin Corridor South\") (LDESC\n\"This section of hallway seems to have suffered some minor structural\ndamage. The walls are cracked, and a jagged crevice crosses the floor.\nAn opening leads east and the corridor heads north and south.\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO CORRIDOR-JUNCTION) (NORTH TO ADMIN-CORRIDOR\n) (EAST TO SANFAC-E) (FLAGS RLANDBIT ONBIT) (ACTION ADMIN-CORRIDOR-S-F)> \n<DEFINE-ROUTINE ADMIN-CORRIDOR-S-F> \n<OBJECT CREVICE (IN ADMIN-CORRIDOR-S) (DESC \"crevice\") (SYNONYM CREVICE CRACK\nHOLE) (ADJECTIVE NARROW JAGGED) (FLAGS NDESCBIT) (ACTION CREVICE-F)> \n<DEFINE-ROUTINE CREVICE-F> \n<OBJECT KEY (IN ADMIN-CORRIDOR-S) (DESC \"key\") (FDESC\n\"Lying at the bottom of a narrow crevice is a shiny object.\") (SIZE 3) (SYNONYM\nKEY METAL OBJECT) (ADJECTIVE PIECE STEEL IRON SHINY) (FLAGS ACIDBIT TAKEBIT\nTOOLBIT INVISIBLE TRYTAKEBIT) (ACTION KEY-F)> \n<DEFINE-ROUTINE KEY-F> \n<ROOM ADMIN-CORRIDOR (IN ROOMS) (DESC \"Admin Corridor\") (C-MOVE <TABLE 0 0 0 0\n0 0 0 0 0 0 0 0>) (SOUTH TO ADMIN-CORRIDOR-S) (NORTH PER LADDER-EXIT-F) (WEST\nTO SYSTEMS-MONITORS) (FLAGS RLANDBIT ONBIT) (GLOBAL RIFT) (PSEUDO \"RUBBLE\"\nRUBBLE-PSEUDO) (ACTION ADMIN-CORRIDOR-F)> \n<DEFINE-ROUTINE ADMIN-CORRIDOR-F> \n<ROOM ADMIN-CORRIDOR-N (IN ROOMS) (DESC \"Admin Corridor North\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH PER LADDER-EXIT-F) (NORTH TO\nTRANSPORTATION-SUPPLY) (EAST TO PLAN-ROOM) (WEST TO SMALL-OFFICE) (FLAGS\nRLANDBIT ONBIT) (VALUE 4) (GLOBAL RIFT) (ACTION ADMIN-CORRIDOR-N-F)> \n<DEFINE-ROUTINE ADMIN-CORRIDOR-N-F> \n<DEFINE-ROUTINE LADDER-EXIT-F> \n<OBJECT RIFT (IN LOCAL-GLOBALS) (DESC \"rift\") (SYNONYM RIFT GULF PRECIPICE HOLE\n) (ADJECTIVE WIDE DEEP GAPING) (FLAGS NDESCBIT) (ACTION RIFT-F)> \n<DEFINE-ROUTINE RIFT-F> \n<ROOM SANFAC-E (IN ROOMS) (DESC \"SanFac E\") (LDESC\n\"Here is another sanitary facility. Like the others, it is dusty and\nnon-functional.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO\nADMIN-CORRIDOR-S) (OUT TO ADMIN-CORRIDOR-S) (FLAGS FLOYDBIT RLANDBIT ONBIT) (\nPSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)> \n<ROOM SYSTEMS-MONITORS (IN ROOMS) (DESC \"Systems Monitors\") (C-MOVE <TABLE 0 0\n0 0 0 0 0 0 0 0 0 0>) (EAST TO ADMIN-CORRIDOR) (OUT TO ADMIN-CORRIDOR) (FLAGS\nFLOYDBIT RLANDBIT ONBIT) (GLOBAL TABLES) (PSEUDO \"MONITORS\" MONITORS-PSEUDO\n\"EQUIPM\" EQUIPMENT-PSEUDO) (ACTION SYSTEMS-MONITORS-F)> \n<DEFINE-ROUTINE SYSTEMS-MONITORS-F> \n<DEFINE-ROUTINE DESCRIBE-MONITORS> \n<ROOM PLAN-ROOM (IN ROOMS) (DESC \"Plan Room\") (LDESC\n\"This is a small room whose far wall is covered with many small cubbyholes,\nall empty. The left wall is covered with an enormous map, labelled\n\\\"Kalamontee Kompleks\\\", showing two installations connected by a long\nhallway. Near the upper part of this map is a red arrow saying \\\"Yuu ar\nheer.\\\" The right wall is covered with a similar map, labelled \\\"Lawanda\nKompleks\\\", showing two installations, one apparently buried deep\nunderground.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO\nADMIN-CORRIDOR-N) (FLAGS RLANDBIT ONBIT FLOYDBIT) (PSEUDO \"CUBBYHOLE\"\nCUBBYHOLE-PSEUDO \"MAPS\" MAPS-PSEUDO)> \n<ROOM TRANSPORTATION-SUPPLY (IN ROOMS) (DESC \"Transportation Supply\") (LDESC\n\"You have just located a serious bug.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>\n) (SOUTH TO ADMIN-CORRIDOR-N) (NORTH TO TRANSPORTATION-SUPPLY) (EAST TO\nTRANSPORTATION-SUPPLY) (WEST TO TRANSPORTATION-SUPPLY) (OUT TO ADMIN-CORRIDOR-N\n) (FLAGS RLANDBIT)> \n<ROOM SMALL-OFFICE (IN ROOMS) (DESC \"Small Office\") (LDESC\n\"You have entered a small office of some sort. A small desk faces the main\ndoorway which lies to the east. Another exit leads west.\") (C-MOVE <TABLE 0 0 0\n0 0 0 0 0 0 0 0 0>) (EAST TO ADMIN-CORRIDOR-N) (WEST TO LARGE-OFFICE) (FLAGS\nRLANDBIT FLOYDBIT ONBIT)> \n<OBJECT SMALL-DESK (IN SMALL-OFFICE) (DESC \"small desk\") (SYNONYM DESK DRAWER)\n(ADJECTIVE SMALL) (CAPACITY 10) (FLAGS NDESCBIT CONTBIT SEARCHBIT) (ACTION\nDESK-F)> \n<OBJECT KITCHEN-CARD (IN SMALL-DESK) (DESC \"kitchen access card\") (SYNONYM CARD\nCARDS) (ADJECTIVE KITCHEN ACCESS) (SIZE 3) (FLAGS TAKEBIT READBIT) (TEXT\n\"The card is embossed \\\"kitcin akses kard.\\\"\") (VALUE 1)> \n<OBJECT UPPER-ELEVATOR-CARD (IN SMALL-DESK) (DESC \"upper elevator access card\")\n(SYNONYM CARD CARDS) (ADJECTIVE UPPER ELEVATOR ACCESS) (SIZE 3) (FLAGS VOWELBIT\nTAKEBIT READBIT) (TEXT \"The card is embossed \\\"upur elivaatur akses kard.\\\"\") (\nVALUE 1)> \n<OBJECT SHUTTLE-CARD (IN LARGE-DESK) (DESC \"shuttle access card\") (SYNONYM CARD\nCARDS) (ADJECTIVE SHUTTL ACCESS) (SIZE 3) (FLAGS TAKEBIT READBIT) (TEXT\n\"The card is embossed \\\"shutul akses kard.\\\"\") (VALUE 1)> \n<OBJECT LOWER-ELEVATOR-CARD (DESC \"lower elevator access card\") (SYNONYM CARD\nCARDS) (ADJECTIVE LOWER ELEVATOR ACCESS) (SIZE 3) (FLAGS TAKEBIT READBIT) (TEXT\n\"The card is embossed \\\"loowur elivaatur akses kard.\\\"\") (VALUE 1)> \n<ROOM LARGE-OFFICE (IN ROOMS) (DESC \"Large Office\") (LDESC\n\"This is a large, plush office. The far wall is one large picture window,\nscratched but unbroken, offering a view of this installation and the ocean\nbeyond. In front of the window is a wide wooden desk. The only exit is east.\")\n(C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO SMALL-OFFICE) (FLAGS FLOYDBIT\nRLANDBIT ONBIT) (GLOBAL WINDOW OCEAN)> \n<OBJECT LARGE-DESK (IN LARGE-OFFICE) (DESC \"large desk\") (SYNONYM DESK DRAWER)\n(ADJECTIVE LARGE WIDE WOODEN) (CAPACITY 20) (FLAGS CONTBIT SEARCHBIT NDESCBIT)\n(ACTION DESK-F)> \n<DEFINE-ROUTINE DESK-F> \n<ROOM MECH-CORRIDOR-N (IN ROOMS) (DESC \"Mech Corridor North\") (LDESC\n\"Entrances to rooms lie to the east and west from this north-south hall.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO STORAGE-EAST) (WEST TO\nPHYSICAL-PLANT) (NORTH TO CORRIDOR-JUNCTION) (SOUTH TO MECH-CORRIDOR) (FLAGS\nRLANDBIT ONBIT)> \n<ROOM MECH-CORRIDOR (IN ROOMS) (DESC \"Mech Corridor\") (LDESC\n\"Entrances to rooms lie to the east and west from this north-south hall.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO REACTOR-CONTROL) (WEST TO\nPHYSICAL-PLANT) (NORTH TO MECH-CORRIDOR-N) (SOUTH TO MECH-CORRIDOR-S) (FLAGS\nRLANDBIT ONBIT)> \n<ROOM MECH-CORRIDOR-S (IN ROOMS) (DESC \"Mech Corridor South\") (LDESC\n\"The corridor ends here with doorways to the southwest, south, and southeast.\")\n(C-MOVE <TABLE 0 0 0 0 0 0 25 0 25 0 0 0>) (NORTH TO MECH-CORRIDOR) (SW TO\nTOOL-ROOM) (SOUTH TO MACHINE-SHOP) (SE TO ROBOT-SHOP) (FLAGS RLANDBIT ONBIT)> \n<ROOM STORAGE-EAST (IN ROOMS) (DESC \"Storage East\") (LDESC\n\"A small room for storage. The exit is to the west.\") (C-MOVE <TABLE 0 0 0 0 0\n0 0 0 0 0 0 0>) (WEST TO MECH-CORRIDOR-N) (FLAGS RLANDBIT FLOYDBIT ONBIT) (\nGLOBAL SHELVES)> \n<OBJECT OIL-CAN (IN STORAGE-EAST) (DESC \"oil can\") (FDESC\n\"One dusty shelf, otherwise bare, holds a small oil can.\") (SYNONYM CAN) (\nADJECTIVE SMALL OIL) (SIZE 10) (FLAGS VOWELBIT TAKEBIT) (ACTION OIL-CAN-F)> \n<DEFINE-ROUTINE OIL-CAN-F> \n<OBJECT CARTON (IN STORAGE-EAST) (DESC \"cardboard box\") (FDESC\n\"On the floor beneath the shelves sits a small cardboard box.\") (SYNONYM BOX\nCARTON) (ADJECTIVE SMALL CARDBOARD) (SIZE 10) (CAPACITY 50) (FLAGS TAKEBIT\nCONTBIT SEARCHBIT OPENBIT) (ACTION CARTON-F)> \n<DEFINE-ROUTINE CARTON-F> \n<OBJECT CRACKED-BOARD (IN CARTON) (DESC\n\"cracked seventeen-centimeter fromitz board\") (SYNONYM BOARD BOARDS) (ADJECTIVE\nCRACKED SEVENTEEN CENTIMETER FROMITZ) (SIZE 10) (FLAGS ACIDBIT TAKEBIT) (ACTION\nCRACKED-BOARD-F)> \n<DEFINE-ROUTINE CRACKED-BOARD-F> \n<OBJECT MEGAFUSE-B (IN CARTON) (DESC \"B-series megafuse\") (SYNONYM FUSE\nMEGAFUSE) (ADJECTIVE B-SERIES B SERIES MEGA) (SIZE 5) (FLAGS ACIDBIT TAKEBIT)> \n<OBJECT MEGAFUSE-K (IN CARTON) (DESC \"K-series megafuse\") (SYNONYM FUSE\nMEGAFUSE) (ADJECTIVE K-SERIES K SERIES MEGA) (SIZE 5) (FLAGS ACIDBIT TAKEBIT)> \n<OBJECT GOOD-BEDISTOR (IN CARTON) (DESC \"good ninety-ohm bedistor\") (SYNONYM\nBEDISTOR) (ADJECTIVE GOOD NINETY OHM) (SIZE 8) (FLAGS ACIDBIT TAKEBIT) (ACTION\nGOOD-BEDISTOR-F)> \n<DEFINE-ROUTINE GOOD-BEDISTOR-F> \n<ROOM PHYSICAL-PLANT (IN ROOMS) (DESC \"Physical Plant\") (LDESC\n\"This is a huge, dim room with exits in the northeast and southeast\ncorners. The room is criss-crossed with catwalks and is filled with\nheavy equipment presumably intended to heat and ventilate this complex.\nHardly any of the equipment is still operating.\") (C-MOVE <TABLE 0 0 0 0 0 0 0\n0 0 0 0 0>) (NE TO MECH-CORRIDOR-N) (SE TO MECH-CORRIDOR) (FLAGS FLOYDBIT\nRLANDBIT ONBIT) (PSEUDO \"EQUIPM\" EQUIPMENT-PSEUDO \"CATWALK\" CATWALK-PSEUDO)> \n<ROOM REACTOR-CONTROL (IN ROOMS) (DESC \"Reactor Control\") (LDESC\n\"This room contains many dials and gauges for controlling a massive planetary\npower reactor which, according to a diagram on the wall, must be buried far\nbelow this very complex. The exit is to the west. To the east is a metal door,\nand next to it, a button. A dark stairway winds downward.\") (C-MOVE <TABLE 0 0\n20 0 0 0 0 0 0 0 0 0>) (WEST TO MECH-CORRIDOR) (EAST TO REACTOR-ELEVATOR IF\nREACTOR-ELEVATOR-DOOR IS OPEN) (IN TO REACTOR-ELEVATOR IF REACTOR-ELEVATOR-DOOR\nIS OPEN) (DOWN TO REACTOR-ACCESS-STAIRS) (FLAGS RLANDBIT FLOYDBIT ONBIT) (\nPSEUDO \"BUTTON\" REACTOR-BUTTON-PSEUDO \"DIAGRAM\" DIAGRAM-PSEUDO) (GLOBAL\nCONTROLS STAIRS REACTOR-ELEVATOR-DOOR)> \n<ROOM REACTOR-ACCESS-STAIRS (IN ROOMS) (DESC \"Reactor Access Stairs\") (LDESC\n\"You have just located a serious bug.\") (C-MOVE <TABLE 0 0 0 30 0 0 0 0 0 0 0 0\n>) (DOWN TO REACTOR-ACCESS-STAIRS) (UP TO REACTOR-CONTROL) (FLAGS RLANDBIT) (\nGLOBAL STAIRS)> \n<OBJECT REACTOR-ELEVATOR-DOOR (IN LOCAL-GLOBALS) (DESC \"reactor elevator door\")\n(SYNONYM DOOR) (ADJECTIVE REACTOR ELEVATOR) (FLAGS DOORBIT) (ACTION\nREACTOR-ELEVATOR-DOOR-F)> \n<DEFINE-ROUTINE REACTOR-ELEVATOR-DOOR-F> \n<DEFINE-ROUTINE I-REACTOR-DOOR-CLOSE> \n<ROOM REACTOR-ELEVATOR (IN ROOMS) (DESC \"Reactor Elevator\") (LDESC\n\"This is an elevator with a door to the west, currently open. A control panel\ncontains an Up button, a Down button, and a small slot.\") (C-MOVE <TABLE 0 0 0\n0 0 0 0 0 0 0 0 0>) (WEST TO REACTOR-CONTROL) (OUT TO REACTOR-CONTROL) (FLAGS\nRLANDBIT ONBIT) (GLOBAL REACTOR-ELEVATOR-DOOR SLOT ELEVATOR-BUTTON CONTROLS)> \n<ROOM TOOL-ROOM (IN ROOMS) (DESC \"Tool Room\") (LDESC\n\"This is apparently a storage room for tools. Exits lead northeast and east.\")\n(C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 25 0>) (NE TO MECH-CORRIDOR-S) (EAST TO\nMACHINE-SHOP) (FLAGS RLANDBIT FLOYDBIT ONBIT) (GLOBAL SHELVES)> \n<OBJECT FLASK (IN TOOL-ROOM) (DESC \"glass flask\") (FDESC\n\"Sitting on the floor below the lowest shelf is a large glass flask.\") (SYNONYM\nFLASK) (ADJECTIVE GLASS LARGE PLASTIC) (SIZE 10) (CAPACITY 2) (FLAGS CONTBIT\nSEARCHBIT OPENBIT TAKEBIT) (ACTION FLASK-F)> \n<DEFINE-ROUTINE FLASK-F> \n<OBJECT MAGNET (IN TOOL-ROOM) (SIZE 10) (DESC \"curved metal bar\") (FDESC\n\"On an upper shelf is a metal bar, curved into a U-shape.\") (SYNONYM MAGNET BAR\n) (ADJECTIVE CURVED METAL HORSESHOE) (FLAGS TRYTAKEBIT TAKEBIT) (ACTION\nMAGNET-F)> \n<DEFINE-ROUTINE MAGNET-F> \n<DEFINE-ROUTINE I-MAGNET> \n<OBJECT PLIERS (IN TOOL-ROOM) (DESC \"pair of wide-nosed pliers\") (SYNONYM PAIR\nPLIERS) (ADJECTIVE WIDE-NOSED WIDE NOSED) (SIZE 15) (FLAGS TAKEBIT)> \n<ROOM MACHINE-SHOP (IN ROOMS) (DESC \"Machine Shop\") (C-MOVE <TABLE 0 0 0 0 0 0\n0 0 0 0 0 0>) (NORTH TO MECH-CORRIDOR-S) (EAST TO ROBOT-SHOP) (WEST TO\nTOOL-ROOM) (FLAGS RLANDBIT FLOYDBIT ONBIT) (PSEUDO \"SPOUT\" CHEM-SPOUT-PSEUDO) (\nACTION MACHINE-SHOP-F)> \n<DEFINE-ROUTINE MACHINE-SHOP-F> \n<OBJECT CHEMICAL-DISPENSER (IN MACHINE-SHOP) (DESC \"chemical dispenser\") (\nSYNONYM DISPEN MACHIN) (ADJECTIVE DISPEN LARGE CHEMICAL) (FLAGS MUNGBIT\nNDESCBIT) (ACTION CHEMICAL-DISPENSER-F)> \n<GLOBAL SPOUT-PLACED <> %<> WORD> \n<DEFINE-ROUTINE CHEMICAL-DISPENSER-F> \n<OBJECT RED-BUTTON (IN MACHINE-SHOP) (DESC \"red button\") (SYNONYM BUTTON) (\nADJECTIVE RED) (FLAGS NDESCBIT) (C-MOVE 1) (ACTION CHEM-BUTTON-F)> \n<OBJECT BLUE-BUTTON (IN MACHINE-SHOP) (DESC \"blue button\") (SYNONYM BUTTON) (\nADJECTIVE BLUE) (FLAGS NDESCBIT) (C-MOVE 2) (ACTION CHEM-BUTTON-F)> \n<OBJECT GREEN-BUTTON (IN MACHINE-SHOP) (DESC \"green button\") (SYNONYM BUTTON) (\nADJECTIVE GREEN) (FLAGS NDESCBIT) (C-MOVE 3) (ACTION CHEM-BUTTON-F)> \n<OBJECT YELLOW-BUTTON (IN MACHINE-SHOP) (DESC \"yellow button\") (SYNONYM BUTTON)\n(ADJECTIVE YELLOW) (FLAGS NDESCBIT) (C-MOVE 4) (ACTION CHEM-BUTTON-F)> \n<OBJECT GRAY-BUTTON (IN MACHINE-SHOP) (DESC \"gray button\") (SYNONYM BUTTON) (\nADJECTIVE GRAY GREY) (FLAGS NDESCBIT) (C-MOVE 5) (ACTION CHEM-BUTTON-F)> \n<OBJECT BROWN-BUTTON (IN MACHINE-SHOP) (DESC \"brown button\") (SYNONYM BUTTON) (\nADJECTIVE BROWN) (FLAGS NDESCBIT) (C-MOVE 6) (ACTION CHEM-BUTTON-F)> \n<OBJECT BLACK-BUTTON (IN MACHINE-SHOP) (DESC \"black button\") (SYNONYM BUTTON) (\nADJECTIVE BLACK) (FLAGS NDESCBIT) (C-MOVE 7) (ACTION CHEM-BUTTON-F)> \n<OBJECT ROUND-WHITE-BUTTON (IN MACHINE-SHOP) (DESC \"round white button\") (\nSYNONYM BUTTON) (ADJECTIVE WHITE ROUND) (FLAGS NDESCBIT) (C-MOVE 8) (ACTION\nCHEM-BUTTON-F)> \n<OBJECT SQUARE-WHITE-BUTTON (IN MACHINE-SHOP) (DESC \"square white button\") (\nSYNONYM BUTTON) (ADJECTIVE SQUARE WHITE) (FLAGS NDESCBIT) (C-MOVE 9) (ACTION\nCHEM-BUTTON-F)> \n<GLOBAL CHEMICAL-FLAG 0 %<> WORD> \n<GLOBAL COLOR-LTBL <PLTABLE \"red\" \"blue\" \"green\" \"yellow\" \"gray\" \"brown\"\n\"black\" \"clear\" \"clear\"> %<> WORD> \n<DEFINE-ROUTINE CHEM-BUTTON-F> \n<ROOM ROBOT-SHOP (IN ROOMS) (DESC \"Robot Shop\") (LDESC\n\"This room, with exits west and northwest, is filled with robot-like\ndevices of every conceivable description, all in various states of\ndisassembly.\") (C-MOVE <TABLE 0 0 0 0 25 0 0 0 0 0 0 0>) (WEST TO MACHINE-SHOP)\n(NW TO MECH-CORRIDOR-S) (FLAGS RLANDBIT FLOYDBIT ONBIT) (PSEUDO \"DEVICE\"\nDEVICES-PSEUDO)> \n<OBJECT FLOYD (IN ROBOT-SHOP) (DESC \"multiple purpose robot\") (FDESC\n\"Only one robot, about four feet high, looks even remotely close to being\nin working order.\") (SYNONYM FLOYD COMPAR ROBOT COMPAN) (ADJECTIVE MULTIP\nPURPOS DIM- DIM WITTED) (FLAGS CONTBIT SEARCHBIT TRANSBIT OPENBIT LIGHTBIT) (\nCAPACITY 5) (ACTION FLOYD-F)> \n<GLOBAL CARD-STOLEN <> %<> WORD> \n<DEFINE-ROUTINE FLOYD-F> \n<DEFINE-ROUTINE FLOYDS-FAMOUS-DOOR-ROUTINE> \n<DEFINE-ROUTINE FLUSH> \n<DEFINE-ROUTINE FLOYD-INTO-LAB> \n<DEFINE-ROUTINE FLOYD-NOT-HAVE> \n<GLOBAL FLOYD-SCORE-FLAG <> %<> WORD> \n<GLOBAL FLOYD-SPOKE <> %<> WORD> \n<GLOBAL FLOYD-FOLLOW <> %<> WORD> \n<GLOBAL FLOYD-REACTIVATED <> %<> WORD> \n<GLOBAL FLOYD-INTRODUCED <> %<> WORD> \n<DEFINE-ROUTINE FLOYD-COMES-ALIVE> \n<DEFINE-ROUTINE I-FLOYD> \n<DEFINE-ROUTINE CALL-ME-FLOYD> \n<DEFINE-ROUTINE KLUDGE> \n<OBJECT DEAD-FLOYD (DESC \"mangled robot\") (LDESC\n\"Your former companion, Floyd, is lying on the ground in a pool of oil.\") (\nSYNONYM FLOYD ROBOT COMPAN) (ADJECTIVE MANGLE DEAD FORMER) (ACTION DEAD-FLOYD-F\n)> \n<DEFINE-ROUTINE DEAD-FLOYD-F> \n<GLOBAL FLOYDISMS <PLTABLE \"paces impatiently\"\n\"absent-mindedly recites the first six hundred digits of pi\"\n\"lowers his voice and tells you the latest rumors about Dr. Fizpick\"\n\"recalls the time he bruised his knee\" \"chants the death scene from \\\"Carmen\\\"\"\n\"cranes his neck to see what you are doing\"\n\"rubs his head affectionately against your shoulder\"\n\"asks if you want to play Hucka-Bucka-Beanstalk\"\n\"examines himself for signs of rust\" \"absent-mindedly oils one of his joints\"\n\"wanders restlessly around the room\"\n\"notices a mouse scurrying by and tries to hide behind you\"\n\"sings an ancient ballad, totally out of key\"\n\"frets about the possibility of his batteries failing\"\n\"reminisces about his friend Lazarus, a medical robot\"\n\"relates some fond memories about his robotic friend Lazarus\"\n\"whistles tunelessly\"\n\"tells you about the time he helped someone sharpen a pencil\"\n\"yawns and looks bored\"\n\"produces a crayon from one of his compartments and scrawls\nhis name on the wall\"> %<> WORD> \n<ROOM ELEVATOR-LOBBY (IN ROOMS) (DESC \"Elevator Lobby\") (C-MOVE <TABLE 0 0 0 0\n0 30 0 0 0 0 0 0>) (NORTH PER ELEVATOR-ENTER-F) (SOUTH PER ELEVATOR-ENTER-F) (\nWEST TO CORRIDOR-JUNCTION) (EAST TO BOOTH-2) (IN TO BOOTH-2) (FLAGS RLANDBIT\nFLOYDBIT ONBIT) (GLOBAL UPPER-ELEVATOR-DOOR LOWER-ELEVATOR-DOOR) (PSEUDO\n\"BOOTH\" NEAR-BOOTH-PSEUDO) (ACTION ELEVATOR-LOBBY-F)> \n<DEFINE-ROUTINE ELEVATOR-LOBBY-F> \n<ROOM UPPER-ELEVATOR (IN ROOMS) (DESC \"Upper Elevator\") (C-MOVE <TABLE 0 0 0 0\n0 0 0 0 0 0 0 0>) (OUT PER ELEVATOR-EXIT-F) (SOUTH PER ELEVATOR-EXIT-F) (UP\n\"You'll have to use the elevator controls.\") (DOWN\n\"You'll have to use the elevator controls.\") (FLAGS RLANDBIT ONBIT) (GLOBAL\nLIGHTS CONTROLS SLOT ELEVATOR-BUTTON UPPER-ELEVATOR-DOOR) (ACTION\nUPPER-ELEVATOR-F)> \n<DEFINE-ROUTINE UPPER-ELEVATOR-F> \n<ROOM LOWER-ELEVATOR (IN ROOMS) (DESC \"Lower Elevator\") (C-MOVE <TABLE 0 0 0 0\n0 0 0 0 0 0 0 0>) (NORTH PER ELEVATOR-EXIT-F) (OUT PER ELEVATOR-EXIT-F) (UP\n\"You'll have to use the elevator controls.\") (DOWN\n\"You'll have to use the elevator controls.\") (FLAGS RLANDBIT ONBIT) (GLOBAL\nLIGHTS CONTROLS SLOT ELEVATOR-BUTTON LOWER-ELEVATOR-DOOR) (ACTION\nLOWER-ELEVATOR-F)> \n<DEFINE-ROUTINE LOWER-ELEVATOR-F> \n<DEFINE-ROUTINE ELEVATOR-ENTER-F> \n<DEFINE-ROUTINE ELEVATOR-EXIT-F> \n<OBJECT UPPER-ELEVATOR-DOOR (IN LOCAL-GLOBALS) (DESC \"blue door\") (SYNONYM DOOR\n) (ADJECTIVE UPPER ELEVATOR BLUE) (FLAGS NDESCBIT DOORBIT) (ACTION\nUPPER-ELEVATOR-DOOR-F)> \n<DEFINE-ROUTINE UPPER-ELEVATOR-DOOR-F> \n<OBJECT LOWER-ELEVATOR-DOOR (IN LOCAL-GLOBALS) (DESC \"red door\") (SYNONYM DOOR)\n(ADJECTIVE RED LOWER ELEVATOR METAL) (FLAGS NDESCBIT DOORBIT) (ACTION\nLOWER-ELEVATOR-DOOR-F)> \n<DEFINE-ROUTINE LOWER-ELEVATOR-DOOR-F> \n<DEFINE-ROUTINE DOOR-CLOSED> \n<OBJECT BLUE-ELEVATOR-BUTTON (IN ELEVATOR-LOBBY) (DESC \"blue button\") (SYNONYM\nBUTTON) (ADJECTIVE BLUE NORTH) (FLAGS NDESCBIT) (ACTION BLUE-ELEVATOR-BUTTON-F)\n> \n<OBJECT RED-ELEVATOR-BUTTON (IN ELEVATOR-LOBBY) (DESC \"red button\") (SYNONYM\nBUTTON) (ADJECTIVE RED SOUTH) (FLAGS NDESCBIT) (ACTION RED-ELEVATOR-BUTTON-F)> \n<DEFINE-ROUTINE BLUE-ELEVATOR-BUTTON-F> \n<DEFINE-ROUTINE RED-ELEVATOR-BUTTON-F> \n<DEFINE-ROUTINE I-UPPER-ELEVATOR-ARRIVE> \n<DEFINE-ROUTINE I-LOWER-ELEVATOR-ARRIVE> \n<OBJECT ELEVATOR-BUTTON (IN LOCAL-GLOBALS) (DESC \"button\") (SYNONYM BUTTON) (\nFLAGS NDESCBIT) (ACTION ELEVATOR-BUTTON-F)> \n<GLOBAL LOWER-ELEVATOR-UP <> %<> WORD> \n<GLOBAL UPPER-ELEVATOR-UP T %<> WORD> \n<GLOBAL ELEVATOR-IN-TRANSIT <> %<> WORD> \n<GLOBAL LOWER-ELEVATOR-ON <> %<> WORD> \n<GLOBAL UPPER-ELEVATOR-ON <> %<> WORD> \n<DEFINE-ROUTINE ELEVATOR-BUTTON-F> \n<DEFINE-ROUTINE I-TURNOFF-UPPER-ELEVATOR> \n<DEFINE-ROUTINE I-TURNOFF-LOWER-ELEVATOR> \n<GLOBAL ELEVATOR-LIGHT-OFF \"A recording says \\\"Elevator no longer enabled.\\\"\" %\n<> WORD> \n<GLOBAL ELEVATOR-STARTS\n\"The elevator door slides shut. After a moment, you feel a sensation of\nvertical movement.\" %<> WORD> \n<DEFINE-ROUTINE I-UPPER-ELEVATOR-TRIP> \n<DEFINE-ROUTINE I-LOWER-ELEVATOR-TRIP> \n<DEFINE-ROUTINE ELEVATOR-DOOR-OPENS> \n<ROOM BOOTH-2 (IN ROOMS) (DESC \"Booth 2\") (LDESC\n\"This is a tiny room with a large \\\"2\\\" painted on the wall. A panel contains\na slot about ten centimeters wide, a brown button labelled \\\"1\\\" and a tan\nbutton labelled \\\"3.\\\"\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO\nELEVATOR-LOBBY) (OUT TO ELEVATOR-LOBBY) (FLAGS RLANDBIT ONBIT) (PSEUDO \"BOOTH\"\nIN-BOOTH-PSEUDO) (GLOBAL CONTROLS SLOT TELEPORTATION-BUTTON-1\nTELEPORTATION-BUTTON-3)> \n<ROOM TOWER-CORE (IN ROOMS) (DESC \"Tower Core\") (LDESC\n\"This is a small, circular room. A sliding door leads north, and a spiral\nstaircase heads upwards. Other exits lie to the northeast and southwest.\") (\nC-MOVE <TABLE 0 0 0 30 0 0 0 0 0 0 0 0>) (NORTH TO UPPER-ELEVATOR) (UP TO\nHELIPAD) (SW TO OBSERVATION-DECK) (NE TO COMM-ROOM) (FLAGS RLANDBIT ONBIT) (\nVALUE 4) (GLOBAL STAIRS UPPER-ELEVATOR-DOOR)> \n<ROOM HELIPAD (IN ROOMS) (DESC \"Helipad\") (LDESC\n\"You are at the center of a wide, flat area atop the tower. A fence\nprevents you from approaching the perimeter, so your view is limited to\ncloud-filled sky. A large vehicle, severely weathered and topped with rotor\nblades, lies nearby. A spiral staircase leads down into the tower.\") (C-MOVE <\nTABLE 0 0 15 0 0 0 0 0 0 0 0 0>) (DOWN TO TOWER-CORE) (IN TO HELICOPTER) (EAST\n\"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\") (WEST\n\"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\") (NORTH\n\"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\") (SOUTH\n\"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\") (FLAGS RLANDBIT ONBIT) (PSEUDO\n\"FENCE\" FENCE-PSEUDO) (GLOBAL STAIRS HELICOPTER-OBJECT)> \n<OBJECT HELICOPTER-OBJECT (IN LOCAL-GLOBALS) (DESC \"large vehicle\") (SYNONYM\nVEHICLE HELICOPTER) (ADJECTIVE LARGE) (FLAGS VEHBIT NDESCBIT) (ACTION\nHELICOPTER-OBJECT-F)> \n<DEFINE-ROUTINE HELICOPTER-OBJECT-F> \n<ROOM HELICOPTER (IN ROOMS) (DESC \"Helicopter\") (LDESC\n\"This is a large vehicle with a lot of cargo space. A complex control panel\nis closed and locked. Everything is covered with a thick layer of rust.\nThrough the windows of the vehicle you can see a wide Helipad, and beyond\nthat, endless ocean far below. Several doors lead out to the Helipad.\") (C-MOVE\n<TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (OUT TO HELIPAD) (FLAGS RLANDBIT ONBIT) (\nPSEUDO \"LOCK\" LOCK-PSEUDO) (GLOBAL OCEAN CONTROLS WINDOW HELICOPTER-OBJECT)> \n<ROOM COMM-ROOM (IN ROOMS) (DESC \"Comm Room\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0\n0 0 0>) (SW TO TOWER-CORE) (FLAGS RLANDBIT ONBIT) (GLOBAL LIGHTS) (PSEUDO\n\"CABLES\" CABLES-PSEUDO \"ENUNCI\" ENUNCIATOR-PSEUDO) (ACTION COMM-ROOM-F)> \n<DEFINE-ROUTINE COMM-ROOM-F> \n<GLOBAL JUST-ENTERED T %<> WORD> \n<DEFINE-ROUTINE I-UNENTER> \n<OBJECT RECEIVE-CONSOLE (IN COMM-ROOM) (DESC \"communications receive console\")\n(C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SYNONYM CONSOLE CONTRO) (ADJECTIVE\nCOMMUNICATIONS RECEIVE LEFT FIRST) (FLAGS NDESCBIT)> \n<OBJECT PLAYBACK-BUTTON (IN COMM-ROOM) (DESC \"glowing button\") (SYNONYM BUTTON)\n(ADJECTIVE GLOWIN PLAYBA) (FLAGS NDESCBIT) (ACTION PLAYBACK-BUTTON-F)> \n<DEFINE-ROUTINE PLAYBACK-BUTTON-F> \n<OBJECT SEND-CONSOLE (IN COMM-ROOM) (DESC \"communication send console\") (\nSYNONYM CONSOLE CONTRO) (ADJECTIVE COMMUNICATIONS SEND RIGHT SECOND) (FLAGS\nNDESCBIT)> \n<OBJECT COMM-SCREEN (IN COMM-ROOM) (DESC \"screen\") (SYNONYM COMMUNICATIONS\nMESSAGE SCREEN) (FLAGS NDESCBIT READBIT) (TEXT\n\"\\\"Tuu enee ship uv xe Sekund Galaktik Yuunyun: Planitwiid plaag haz struk\nentiir popyuulaashun. Tiim iz kritikul. Eemurjensee asistins reekwestid.\n<reepeet mesij>\\\"\")> \n<OBJECT FUNNEL-HOLE (IN COMM-ROOM) (DESC \"funnel-shaped hole\") (SYNONYM HOLE) (\nADJECTIVE FUNNEL SHAPED) (FLAGS NDESCBIT)> \n<OBJECT CHEMICAL-FLUID (DESC \"quantity of chemical fluid\") (SYNONYM QUANTITY\nLIQUID FLUID CHEMICAL) (ADJECTIVE MILKY WHITE CHEMICAL) (ACTION\nCHEMICAL-FLUID-F)> \n<DEFINE-ROUTINE RANDOMIZE-ORDER> \n<GLOBAL ORDER-LTBL <LTABLE 0 0 0 0 0 0 0> %<> WORD> \n<DEFINE-ROUTINE CHEMICAL-FLUID-F> \n<DEFINE-ROUTINE CUBE-SEEMS> \n<DEFINE-ROUTINE CHEMICAL-POURS> \n<DEFINE-ROUTINE STRIP-DISSOLVES> \n<GLOBAL COMM-SHUTDOWN <> %<> WORD> \n<DEFINE-ROUTINE SHUTDOWN> \n<DEFINE-ROUTINE COMM-SETUP> \n<GLOBAL COMM-FIXED <> %<> WORD> \n<GLOBAL CHEMICAL-REQUIRED 0 %<> WORD> \n<GLOBAL STEPS-TO-GO 0 %<> WORD> \n<ROOM OBSERVATION-DECK (IN ROOMS) (DESC \"Observation Deck\") (LDESC\n\"This is a balcony girdling the tower. The view is breathtaking; the tower\nmust be half a kilometer tall. From here it is clear that you are on an\nisland. The dormitory section of the complex is visible on the other side\nof the island, and the rest of the complex sprawls out directly below. In\nthe distance, about 20 kilometers to the east, you can spot another island\nsimilar to this one. The only exit is a doorway leading northeast.\") (C-MOVE <\nTABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NE TO TOWER-CORE) (FLAGS RLANDBIT ONBIT) (\nGLOBAL OCEAN)> \n<ROOM WAITING-AREA (IN ROOMS) (DESC \"Waiting Area\") (LDESC\n\"This is a concrete platform sparsely furnished with benches. The platform\ncontinues to the east, and to the south is a metal door.\") (C-MOVE <TABLE 0 0 0\n0 0 0 0 0 0 0 0 0>) (EAST TO KALAMONTEE-PLATFORM) (SOUTH PER\nOTHER-ELEVATOR-ENTER-F) (IN PER OTHER-ELEVATOR-ENTER-F) (PSEUDO \"BENCH\"\nBENCH-PSEUDO \"BENCHE\" BENCH-PSEUDO) (GLOBAL LOWER-ELEVATOR-DOOR) (FLAGS\nRLANDBIT ONBIT)> \n<DEFINE-ROUTINE OTHER-ELEVATOR-ENTER-F> \n<ROOM KALAMONTEE-PLATFORM (IN ROOMS) (DESC \"Kalamontee Platform\") (C-MOVE <\nTABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO WAITING-AREA) (SOUTH PER\nSHUTTLE-ENTER-F) (NORTH PER SHUTTLE-ENTER-F) (FLAGS RLANDBIT ONBIT) (VALUE 4) (\nGLOBAL GLOBAL-SHUTTLE) (ACTION KALAMONTEE-PLATFORM-F)> \n<DEFINE-ROUTINE KALAMONTEE-PLATFORM-F> "
  },
  {
    "path": "compone.zap",
    "content": "\n\n\t.FUNCT\tUNDERWATER-F,RARG\n\tEQUAL?\tRARG,M-END \\FALSE\n\tIGRTR?\t'DROWN,2 \\FALSE\n\tCALL\tJIGS-UP,STR?101\n\tRSTACK\t\n\n\n\t.FUNCT\tCRAG-F,RARG\n\tEQUAL?\tRARG,M-ENTER \\FALSE\n\tSET\t'DROWN,3\n\tRETURN\tDROWN\n\n\n\t.FUNCT\tBALCONY-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is an octagonal room, half carved into and half built out from the cliff wall. Through the shattered windows which ring the outer wall you can see ocean to the horizon. A weathered metal plaque with barely readable lettering rests below the windows. The language seems to be a corrupt form of Galalingua. A steep stairway, roughly cut into the face of the cliff, leads upward. \"\n\tEQUAL?\tDAY,1 \\?CCL6\n\tPRINTR\t\"A rocky crag can be seen about eight meters below.\"\n?CCL6:\tEQUAL?\tDAY,2 \\?CCL8\n\tPRINTR\t\"The ocean waters swirl below. The crag where you landed yesterday is now underwater!\"\n?CCL8:\tEQUAL?\tDAY,3 \\FALSE\n\tPRINTR\t\"Ocean waters are lapping at the base of the balcony.\"\n\n\n\t.FUNCT\tWINDING-STAIR-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"The middle of a long, steep stairway carved into the face of a cliff.\"\n\tEQUAL?\tDAY,4 \\?CCL6\n\tPRINTR\t\" You hear the lapping of water from below.\"\n?CCL6:\tEQUAL?\tDAY,5 \\?CND4\n\tPRINTR\t\" You can see ocean water splashing against the steps below you.\"\n?CND4:\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tCOURTYARD-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"You are in the courtyard of an ancient stone edifice, vaguely reminiscent of the castles you saw during your leave on Ramos Two. It has decayed to the point where it can probably be termed a ruin. Openings lead north and west, and a stairway downward is visible to the south. \"\n\tEQUAL?\tDAY,6,7 \\?CCL6\n\tPRINTR\t\"From the direction of the stairway comes the sound of ocean surf.\"\n?CCL6:\tEQUAL?\tDAY,8 \\?CND4\n\tPRINTR\t\"Ocean water washes against the top few steps.\"\n?CND4:\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tWATER-LEVEL-F\n\tEQUAL?\tHERE,BALCONY \\?CCL3\n\tEQUAL?\tDAY,1 \\?CCL6\n\tRETURN\tCRAG\n?CCL6:\tRETURN\tUNDERWATER\n?CCL3:\tEQUAL?\tHERE,WINDING-STAIR \\?CCL8\n\tLESS?\tDAY,4 \\?CCL11\n\tRETURN\tBALCONY\n?CCL11:\tRETURN\tUNDERWATER\n?CCL8:\tEQUAL?\tHERE,COURTYARD \\FALSE\n\tLESS?\tDAY,6 \\?CCL16\n\tRETURN\tWINDING-STAIR\n?CCL16:\tRETURN\tUNDERWATER\n\n\n\t.FUNCT\tREC-AREA-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a recreational facility of some sort. Games and tapes are scattered about the room. Hallways head off to the east and south, and to the north is a door which is \"\n\tFSET?\tCONFERENCE-DOOR,OPENBIT \\?CCL6\n\tPRINTI\t\"open\"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"closed and locked. A dial on the door is currently set to \"\n\tPRINTN\tDIAL-NUMBER\n?CND4:\tPRINTR\t\".\"\n\n\n\t.FUNCT\tCONFERENCE-ROOM-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a fairly square room, almost filled by a round conference table. To the south is a door which is \"\n\tCALL\tDDESC,CONFERENCE-DOOR\n\tPRINTR\t\". To the north is a small room about the size of a phone booth.\"\n\n\n\t.FUNCT\tCOMBINATION-DIAL-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"The dial can be turned to any number between 0 and 1000.\"\n?CCL3:\tEQUAL?\tPRSA,V?SET \\FALSE\n\tEQUAL?\tPRSI,INTNUM \\FALSE\n\tFSET?\tCOMBINATION-DIAL,MUNGEDBIT \\?CCL10\n\tPRINTR\t\"The dial has somehow become fused and won't move.\"\n?CCL10:\tEQUAL?\tP-NUMBER,DIAL-NUMBER \\?CCL12\n\tPRINTR\t\"That's what the dial is set to now!\"\n?CCL12:\tEQUAL?\tP-NUMBER,NUMBER-NEEDED \\?CCL14\n\tSET\t'DIAL-NUMBER,0\n\tFSET\tCONFERENCE-DOOR,OPENBIT\n\tPRINTR\t\"The door swings open, and the dial resets to 0.\"\n?CCL14:\tGRTR?\tP-NUMBER,1000 \\?CCL16\n\tPRINTR\t\"The dial cannot be turned to a number that high.\"\n?CCL16:\tSET\t'DIAL-NUMBER,P-NUMBER\n\tPRINTI\t\"The dial is now set to \"\n\tPRINTN\tP-NUMBER\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tCONFERENCE-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tCONFERENCE-DOOR,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tEQUAL?\tHERE,REC-AREA \\?CCL9\n\tPRINTR\t\"The door is locked. You probably have to turn the dial to some number to open it.\"\n?CCL9:\tPRINTR\t\"The door seems to be locked from the other side.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tCONFERENCE-DOOR,OPENBIT \\?CCL14\n\tFCLEAR\tCONFERENCE-DOOR,OPENBIT\n\tPRINTR\t\"The door closes and you hear a click as it locks.\"\n?CCL14:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tMESS-CORRIDOR-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a wide, east-west hallway with a large portal to the south. A small door to the north is \"\n\tCALL\tDDESC,STORAGE-WEST-DOOR\n\tZERO?\tPADLOCK-REMOVED \\?CND4\n\tPRINTI\t\" and hooked with a simple steel padlock\"\n\tFSET?\tPADLOCK,OPENBIT \\?CCL8\n\tPRINTI\t\" which hangs unlocked\"\n\tJUMP\t?CND4\n?CCL8:\tPRINTI\t\" which is also closed\"\n?CND4:\tPRINTR\t\".\"\n\n\n\t.FUNCT\tSTORAGE-WEST-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tSTORAGE-WEST-DOOR,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tZERO?\tPADLOCK-REMOVED /?CCL8\n\tFSET\tSTORAGE-WEST-DOOR,OPENBIT\n\tPRINTR\t\"Opened.\"\n?CCL8:\tPRINTR\t\"The door cannot be opened until the padlock is removed.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL10\n\tFSET?\tSTORAGE-WEST-DOOR,OPENBIT \\?CCL13\n\tFCLEAR\tSTORAGE-WEST-DOOR,OPENBIT\n\tPRINTR\t\"The door is now closed.\"\n?CCL13:\tCALL\tIS-CLOSED\n\tRSTACK\t\n?CCL10:\tEQUAL?\tPRSA,V?UNLOCK \\FALSE\n\tPRINTI\t\"The door itself isn't locked.\"\n\tFSET?\tPADLOCK,OPENBIT /?CND16\n\tPRINTR\t\" It is the padlock on the door which is locked.\"\n?CND16:\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tPADLOCK-F\n\tEQUAL?\tHERE,BRIG \\?CCL3\n\tPRINTR\t\"You can't see or reach the lock from inside the cell.\"\n?CCL3:\tEQUAL?\tPRSA,V?OPEN-WITH \\?CCL5\n\tEQUAL?\tPADLOCK,PRSO \\?CCL5\n\tCALL\tPERFORM,V?UNLOCK,PADLOCK,PRSI\n\tRTRUE\t\n?CCL5:\tEQUAL?\tPRSA,V?OPEN,V?UNLOCK \\?CCL9\n\tFSET?\tPADLOCK,OPENBIT /?CCL12\n\tZERO?\tPRSI \\?CCL15\n\tPRINTR\t\"You can't open it with your hands.\"\n?CCL15:\tEQUAL?\tPRSI,KEY \\?CCL17\n\tFSET?\tPADLOCK,MUNGEDBIT \\?CCL20\n\tPRINTR\t\"Tsk, tsk ... the padlock seems to be fused shut.\"\n?CCL20:\tFSET\tPADLOCK,OPENBIT\n\tPRINTR\t\"The padlock springs open.\"\n?CCL17:\tPRINTR\t\"That doesn't work.\"\n?CCL12:\tPRINTR\t\"The padlock is already unlocked.\"\n?CCL9:\tEQUAL?\tPRSA,V?LOCK,V?CLOSE \\?CCL22\n\tFSET?\tPADLOCK,OPENBIT \\?CCL25\n\tFCLEAR\tPADLOCK,OPENBIT\n\tPRINTR\t\"The padlock closes with a sharp click.\"\n?CCL25:\tPRINTR\t\"The padlock is already locked.\"\n?CCL22:\tEQUAL?\tPRSA,V?TAKE \\?CCL27\n\tZERO?\tPADLOCK-REMOVED \\?CCL27\n\tFSET?\tPADLOCK,OPENBIT \\?CCL32\n\tSET\t'PADLOCK-REMOVED,TRUE-VALUE\n\tFCLEAR\tPADLOCK,TRYTAKEBIT\n\tFCLEAR\tPADLOCK,NDESCBIT\n\tRFALSE\t\n?CCL32:\tFSET?\tPADLOCK,OPENBIT /FALSE\n\tPRINTR\t\"The padlock is locked to the door.\"\n?CCL27:\tEQUAL?\tPRSA,V?MUNG \\FALSE\n\tPRINTR\t\"And, as we go into the next round, it's Padlock 1, Adventurer 0...\"\n\n\n\t.FUNCT\tCAN-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"This is a rather normal tin can. It is large and is labelled \"\"Spam and Egz.\"\"\"\n?CCL3:\tEQUAL?\tPRSA,V?OPEN \\FALSE\n\tPRINTR\t\"You certainly can't open it with your hands, and you don't seem to have found a can opener yet.\"\n\n\n\t.FUNCT\tLADDER-F\n\tEQUAL?\tPRSA,V?TAKE \\?CCL3\n\tZERO?\tLADDER-EXTENDED /FALSE\n\tPRINTR\t\"You can't possibly carry the ladder while it's extended.\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL8\n\tPRINTI\t\"It is a heavy-duty ladder built of sturdy aluminum tubing. It is currently \"\n\tZERO?\tLADDER-EXTENDED /?CCL11\n\tPRINTR\t\"extended to its full length of about 8 meters, but could be collapsed to a shorter length for easier carrying.\"\n?CCL11:\tPRINTR\t\"collapsed and is around two-and-a-half meters long, but if extended would obviously be much longer.\"\n?CCL8:\tEQUAL?\tPRSA,V?OPEN \\?CCL13\n\tZERO?\tLADDER-EXTENDED /?CCL16\n\tPRINTR\t\"The ladder is already extended.\"\n?CCL16:\tEQUAL?\tHERE,STORAGE-EAST,STORAGE-WEST,BOOTH-2 /?CTR17\n\tEQUAL?\tHERE,UPPER-ELEVATOR,LOWER-ELEVATOR \\?CCL18\n?CTR17:\tPRINTR\t\"You can't extend the ladder in this tiny space!\"\n?CCL18:\tIN?\tLADDER,ADVENTURER \\?CCL22\n\tPRINTR\t\"You couldn't possibly extend the ladder while you're holding it.\"\n?CCL22:\tFSET\tLADDER,TRYTAKEBIT\n\tSET\t'LADDER-EXTENDED,TRUE-VALUE\n\tSET\t'C-ELAPSED,36\n\tPRINTR\t\"The ladder extends to a length of around eight meters.\"\n?CCL13:\tEQUAL?\tPRSA,V?CLOSE \\?CCL24\n\tZERO?\tLADDER-EXTENDED /?CCL27\n\tSET\t'C-ELAPSED,21\n\tZERO?\tLADDER-FLAG /?CCL30\n\tSET\t'LADDER-FLAG,FALSE-VALUE\n\tREMOVE\tLADDER\n\tPRINTR\t\"As the ladder shortens it plunges into the rift.\"\n?CCL30:\tSET\t'LADDER-EXTENDED,FALSE-VALUE\n\tFCLEAR\tLADDER,TRYTAKEBIT\n\tPRINTR\t\"The ladder collapses to a length of around two-and-a-half meters.\"\n?CCL27:\tPRINTR\t\"The ladder is already in its collapsed state.\"\n?CCL24:\tEQUAL?\tPRSA,V?ATTRACT,V?SPAN \\?CCL32\n\tEQUAL?\tPRSI,RIFT \\?CCL32\n\tZERO?\tLADDER-FLAG /?CCL37\n\tPRINTR\t\"The ladder already spans the rift.\"\n?CCL37:\tZERO?\tLADDER-EXTENDED /?CCL40\n\tSET\t'LADDER-FLAG,TRUE-VALUE\n\tFSET\tLADDER,NDESCBIT\n\tPRINTR\t\"The ladder swings out across the rift and comes to rest on the far edge, spanning the precipice.\"\n?CCL40:\tREMOVE\tLADDER\n\tPRINTR\t\"The ladder, far too short to reach the other edge of the rift, plunges into the rift and is lost forever.\"\n?CCL32:\tEQUAL?\tPRSA,V?CLIMB-FOO,V?CLIMB-UP \\FALSE\n\tZERO?\tLADDER-FLAG /?CCL45\n\tPRINTR\t\"You can't climb a horizontal ladder!\"\n?CCL45:\tIN?\tLADDER,ADVENTURER \\FALSE\n\tPRINTR\t\"That would be a neat trick, considering that you're holding it.\"\n\n\n\t.FUNCT\tMESS-HALL-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a large hall lined with tables and benches. An opening to the north leads back to the corridor. A door to the south is \"\n\tCALL\tDDESC,KITCHEN-DOOR\n\tPRINTR\t\". Next to the door is a small slot.\"\n\n\n\t.FUNCT\tKITCHEN-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\FALSE\n\tPRINTR\t\"A light flashes \"\"Pleez yuuz kitcin akses kard.\"\"\"\n\n\n\t.FUNCT\tDISPENSER-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTI\t\"This wall-mounted unit contains an octagonal niche beneath a spout. \"\n\tIN?\tCANTEEN,DISPENSER \\?CND4\n\tPRINTI\t\"A canteen is resting in the niche, its mouth lying just below the spout. \"\n?CND4:\tPRINTR\t\"Above the spout is a button. The machine is labelled \"\"Hii Prooteen Likwid Dispensur.\"\"\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL7\n\tCALL\tNO-CLOSE\n\tRTRUE\t\n?CCL7:\tEQUAL?\tPRSA,V?PUT \\FALSE\n\tEQUAL?\tPRSO,CANTEEN \\?CCL12\n\tMOVE\tCANTEEN,DISPENSER\n\tPRINTR\t\"The canteen fits snugly into the octagonal niche, its mouth resting just below the spout of the machine.\"\n?CCL12:\tPRINTR\t\"It doesn't fit in the niche.\"\n\n\n\t.FUNCT\tHIGH-PROTEIN-F,X=0\n\tEQUAL?\tPRSA,V?EAT \\?CCL3\n\tIN?\tCANTEEN,ADVENTURER /?CCL6\n\tSET\t'PRSO,CANTEEN\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n?CCL6:\tZERO?\tHUNGER-LEVEL \\?CCL9\n\tPRINT\tNOT-HUNGRY\n\tCRLF\t\n\tRTRUE\t\n?CCL9:\tREMOVE\tHIGH-PROTEIN\n\tSET\t'C-ELAPSED,15\n\tSET\t'HUNGER-LEVEL,0\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,3600\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"Mmmm....that was good. It certainly quenched your thirst and satisfied your hunger.\"\n?CCL3:\tEQUAL?\tPRSA,V?POUR \\FALSE\n\tEQUAL?\tPRSO,HIGH-PROTEIN \\FALSE\n\tIN?\tCANTEEN,ADVENTURER /?CCL16\n\tPRINTR\t\"Maybe if you were holding the canteen...\"\n?CCL16:\tZERO?\tPRSI \\?CND14\n\tSET\t'PRSI,GROUND\n?CND14:\tEQUAL?\tPRSI,FLASK \\?CCL20\n\tCALL\tWORTHLESS-ACTION\n\tRSTACK\t\n?CCL20:\tEQUAL?\tPRSI,FUNNEL-HOLE \\?CCL22\n\tIN?\tCHEMICAL-FLUID,FLASK \\?CND23\n\tSET\t'X,TRUE-VALUE\n?CND23:\tSET\t'CHEMICAL-REQUIRED,10\n\tREMOVE\tHIGH-PROTEIN\n\tCALL\tPERFORM,V?POUR,CHEMICAL-FLUID,FUNNEL-HOLE\n\tZERO?\tX /TRUE\n\tMOVE\tCHEMICAL-FLUID,FLASK\n\tRTRUE\t\n?CCL22:\tREMOVE\tHIGH-PROTEIN\n\tPRINTI\t\"The protein-rich fluid pours over the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\" and then dries up.\"\n\n\n\t.FUNCT\tWORTHLESS-ACTION\n\tPRINTR\t\"A worthless action -- and much too difficult for a poorly-written program like this one to handle.\"\n\n\n\t.FUNCT\tLONG-HALL-F\n\tPRINTI\t\"You walk down the long, featureless hallway for a long time. Finally, you see \"\n\tSET\t'C-ELAPSED,160\n\tEQUAL?\tHERE,CORRIDOR-JUNCTION \\?CCL3\n\tPRINTI\t\"some doorways ahead...\"\n\tCRLF\t\n\tCRLF\t\n\tRETURN\tDORM-CORRIDOR\n?CCL3:\tPRINTI\t\"an intersection ahead...\"\n\tCRLF\t\n\tCRLF\t\n\tRETURN\tCORRIDOR-JUNCTION\n\n\n\t.FUNCT\tADMIN-CORRIDOR-S-F,RARG\n\tEQUAL?\tRARG,M-END \\FALSE\n\tFSET?\tKEY,INVISIBLE \\FALSE\n\tRANDOM\t100\n\tLESS?\t20,STACK /FALSE\n\tPRINTR\t\"You catch, out of the corner of your eye, a glint of light from the direction of the floor.\"\n\n\n\t.FUNCT\tCREVICE-F\n\tEQUAL?\tPRSA,V?REACH \\?CCL3\n\tPRINTR\t\"The crevice is too narrow to reach into.\"\n?CCL3:\tEQUAL?\tPRSA,V?SEARCH,V?EXAMINE,V?LOOK-INSIDE \\FALSE\n\tFSET?\tKEY,TOUCHBIT \\?CCL8\n\tPRINTR\t\"Nothing there but bunches of dust.\"\n?CCL8:\tFCLEAR\tKEY,INVISIBLE\n\tPRINTR\t\"Lying at the bottom of the narrow crack, partly covered by layers of dust, is a shiny steel key!\"\n\n\n\t.FUNCT\tKEY-F\n\tEQUAL?\tPRSA,V?MOVE,V?ZATTRACT,V?TAKE \\?CCL3\n\tFSET?\tKEY,TOUCHBIT /?CCL3\n\tEQUAL?\tPRSI,PLIERS \\?CCL8\n\tPRINTR\t\"These are heavy-duty pliers, too large to reach into this narrow crack.\"\n?CCL8:\tEQUAL?\tPRSI,MAGNET \\?CCL10\n\tCALL\tPERFORM,V?ATTRACT,MAGNET,KEY\n\tRTRUE\t\n?CCL10:\tZERO?\tPRSI /?CCL12\n\tPRINTR\t\"Nice try.\"\n?CCL12:\tPRINTR\t\"Either the crevice is too narrow, or your fingers are too large.\"\n?CCL3:\tEQUAL?\tPRSA,V?PUT \\FALSE\n\tEQUAL?\tPRSI,CREVICE \\FALSE\n\tPRINTR\t\"And you wonder why you're still only an Ensign Seventh Class?\"\n\n\n\t.FUNCT\tADMIN-CORRIDOR-F,RARG\n\tZERO?\tLADDER-FLAG /?CCL3\n\tEQUAL?\tRARG,M-ENTER \\?CCL3\n\tMOVE\tLADDER,HERE\n\tRTRUE\t\n?CCL3:\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"The hallway, in fact the entire building, has been rent apart here, presumably by seismic upheaval. You can see the sky through the severed roof above, and the ground is thick with rubble. To the north is a gaping rift, at least eight meters across and thirty meters deep. \"\n\tZERO?\tLADDER-FLAG /?CND8\n\tPRINTI\t\"A metal ladder spans the rift. \"\n?CND8:\tPRINTR\t\"A wide doorway, labelled \"\"Sistumz Moniturz,\"\" leads west.\"\n\n\n\t.FUNCT\tADMIN-CORRIDOR-N-F,RARG\n\tZERO?\tLADDER-FLAG /?CCL3\n\tEQUAL?\tRARG,M-ENTER \\?CCL3\n\tMOVE\tLADDER,HERE\n\tRTRUE\t\n?CCL3:\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"The corridor ends here. Portals lead west, north, and east. Signs above these portals read, respectively, \"\"Administraativ Awfisiz,\"\" \"\"Tranzportaashun Suplii,\"\" and \"\"Plan Ruum.\"\" To the south is a wide rift\"\n\tZERO?\tLADDER-FLAG /?CND8\n\tPRINTI\t\", spanned by a metal ladder,\"\n?CND8:\tPRINTR\t\" separating this area from the rest of the building.\"\n\n\n\t.FUNCT\tLADDER-EXIT-F\n\tZERO?\tLADDER-FLAG /?CCL3\n\tSET\t'C-ELAPSED,33\n\tPRINTI\t\"You slowly make your way across the swaying ladder. You can see sharp, pointy rocks at the bottom of the rift, far below...\"\n\tCRLF\t\n\tCRLF\t\n\tEQUAL?\tHERE,ADMIN-CORRIDOR-N \\?CCL6\n\tRETURN\tADMIN-CORRIDOR\n?CCL6:\tRETURN\tADMIN-CORRIDOR-N\n?CCL3:\tPRINTI\t\"The rift is too wide to jump across.\"\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tRIFT-F\n\tEQUAL?\tPRSA,V?LEAP \\?CCL3\n\tCALL\tJIGS-UP,STR?122\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?PUT \\?CCL5\n\tEQUAL?\tRIFT,PRSI \\?CCL5\n\tEQUAL?\tPRSO,LASER \\?CND8\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n?CND8:\tREMOVE\tPRSO\n\tEQUAL?\tPRSO,SCRUB-BRUSH \\?CCL12\n\tPRINTR\t\"You watch with tremendous satisfaction as the brush is lost forever.\"\n?CCL12:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" sails gracefully into the rift.\"\n?CCL5:\tEQUAL?\tPRSA,V?LOOK-INSIDE,V?EXAMINE \\FALSE\n\tPRINTR\t\"The rift is at least eight meters wide and more than thirty meters deep. The bottom is covered with sharp and nasty rocks.\"\n\n\n\t.FUNCT\tSYSTEMS-MONITORS-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a large room filled with tables full of strange equipment. \"\n\tCALL\tDESCRIBE-MONITORS\n\tRSTACK\t\n\n\n\t.FUNCT\tDESCRIBE-MONITORS\n\tPRINTI\t\"The far wall is filled with a number of monitors. Of these, the ones labelled \"\n\tZERO?\tDEFENSE-FIXED /?CND1\n\tPRINTI\t\"PLANATEREE DEFENS, \"\n?CND1:\tZERO?\tCOURSE-CONTROL-FIXED /?CND3\n\tPRINTI\t\"PLANATEREE KORS KUNTROOL, \"\n?CND3:\tZERO?\tCOMM-FIXED /?CND5\n\tPRINTI\t\"KUMUUNIKAASHUNZ, \"\n?CND5:\tPRINTI\t\"LIIBREREE, REEAKTURZ, and LIIF SUPORT are green, but the one\"\n\tZERO?\tDEFENSE-FIXED /?CCL8\n\tZERO?\tCOURSE-CONTROL-FIXED /?CCL8\n\tZERO?\tCOMM-FIXED \\?CND7\n?CCL8:\tPRINTC\t115\n?CND7:\tPRINTI\t\" labelled \"\n\tZERO?\tDEFENSE-FIXED \\?CND12\n\tPRINTI\t\"PLANATEREE DEFENS, \"\n?CND12:\tZERO?\tCOURSE-CONTROL-FIXED \\?CND14\n\tPRINTI\t\"PLANATEREE KORS KUNTROOL, \"\n?CND14:\tZERO?\tCOMM-FIXED \\?CND16\n\tPRINTI\t\"KUMUUNIKAASHUNZ, \"\n?CND16:\tZERO?\tDEFENSE-FIXED /?CCL19\n\tZERO?\tCOURSE-CONTROL-FIXED /?CCL19\n\tZERO?\tCOMM-FIXED \\?CND18\n?CCL19:\tPRINTI\t\"and \"\n?CND18:\tPRINTI\t\"PRAJEKT KUNTROOL indicate\"\n\tZERO?\tDEFENSE-FIXED /?CND23\n\tZERO?\tCOURSE-CONTROL-FIXED /?CND23\n\tZERO?\tCOMM-FIXED /?CND23\n\tPRINTC\t115\n?CND23:\tPRINTR\t\" a malfunctioning condition.\"\n\n\n\t.FUNCT\tDESK-F\n\tEQUAL?\tPRSA,V?EXAMINE,V?SEARCH \\FALSE\n\tPRINTI\t\"The desk has a drawer which is currently \"\n\tCALL\tDDESC,PRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tOIL-CAN-F\n\tEQUAL?\tPRSA,V?POUR \\?CCL3\n\tZERO?\tPRSI \\?CND4\n\tSET\t'PRSI,GROUND\n?CND4:\tCALL\tPERFORM,V?OIL,PRSI\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?EMPTY \\FALSE\n\tPRINTR\t\"Pretty much impossible -- you could only do that one drop at a time.\"\n\n\n\t.FUNCT\tCARTON-F\n\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tCALL\tNO-CLOSE\n\tRTRUE\t\n\n\n\t.FUNCT\tCRACKED-BOARD-F\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tCALL\tEXAMINE-BOARD\n\tPRINTR\t\" This one looks as though it's been dropped.\"\n\n\n\t.FUNCT\tGOOD-BEDISTOR-F\n\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tZERO?\tCOURSE-CONTROL-FIXED /FALSE\n\tCALL\tJIGS-UP,STR?137\n\tRSTACK\t\n\n\n\t.FUNCT\tREACTOR-ELEVATOR-DOOR-F\n\tEQUAL?\tPRSA,V?CLOSE,V?OPEN \\FALSE\n\tPRINTR\t\"It won't budge.\"\n\n\n\t.FUNCT\tI-REACTOR-DOOR-CLOSE\n\tCALL\tQUEUE,I-REACTOR-DOOR-CLOSE,-1\n\tPUT\tSTACK,0,1\n\tEQUAL?\tHERE,REACTOR-ELEVATOR /FALSE\n\tFCLEAR\tREACTOR-ELEVATOR-DOOR,OPENBIT\n\tEQUAL?\tHERE,REACTOR-CONTROL \\?CND4\n\tCRLF\t\n\tPRINTI\t\"The elevator door slides shut.\"\n\tCRLF\t\n?CND4:\tCALL\tINT,I-REACTOR-DOOR-CLOSE\n\tPUT\tSTACK,0,0\n\tRTRUE\t\n\n\n\t.FUNCT\tFLASK-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTI\t\"The flask has a wide mouth and looks large enough to hold one or two liters. It is made of glass, or perhaps some tough plastic\"\n\tIN?\tCHEMICAL-FLUID,FLASK \\?CND4\n\tPRINTI\t\", and is filled with a milky white fluid\"\n?CND4:\tPRINTR\t\".\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL7\n\tCALL\tNO-CLOSE\n\tRTRUE\t\n?CCL7:\tEQUAL?\tPRSA,V?EMPTY \\FALSE\n\tIN?\tCHEMICAL-FLUID,FLASK \\FALSE\n\tEQUAL?\tPRSI,FUNNEL-HOLE \\FALSE\n\tCALL\tPERFORM,V?POUR,CHEMICAL-FLUID,FUNNEL-HOLE\n\tRTRUE\t\n\n\n\t.FUNCT\tMAGNET-F\n\tEQUAL?\tPRSA,V?TAKE \\?CCL3\n\tCALL\tQUEUE,I-MAGNET,-1\n\tPUT\tSTACK,0,1\n\tRFALSE\t\n?CCL3:\tEQUAL?\tPRSA,V?PUT-ON,V?ATTRACT \\FALSE\n\tEQUAL?\tPRSO,MAGNET \\?CCL8\n\tIN?\tMAGNET,ADVENTURER /?CCL8\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n?CCL8:\tFSET?\tKEY,TOUCHBIT \\?CCL12\n\tEQUAL?\tPRSI,KEY \\?CCL12\n\tMOVE\tKEY,ADVENTURER\n\tPRINTR\t\"The key jumps against the ends of the magnet and sticks there. Proud of your feat, you remove the key from the magnet.\"\n?CCL12:\tFSET?\tKEY,TOUCHBIT /FALSE\n\tEQUAL?\tPRSI,KEY,CREVICE \\FALSE\n\tMOVE\tKEY,ADVENTURER\n\tFCLEAR\tKEY,INVISIBLE\n\tFCLEAR\tKEY,TRYTAKEBIT\n\tFSET\tKEY,TOUCHBIT\n\tPRINTR\t\"With a spray of dust and a loud clank, a piece of metal leaps from the crevice and affixes itself to the magnet. It is a steel key! With a tug, you remove the key from the magnet.\"\n\n\n\t.FUNCT\tI-MAGNET\n\tIN?\tMAGNET,ADVENTURER \\?CCL3\n\tCALL\tHELD?,KITCHEN-CARD\n\tZERO?\tSTACK /?CCL6\n\tFSET\tKITCHEN-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL6:\tCALL\tHELD?,SHUTTLE-CARD\n\tZERO?\tSTACK /?CCL8\n\tFSET\tSHUTTLE-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL8:\tCALL\tHELD?,TELEPORTATION-CARD\n\tZERO?\tSTACK /?CCL10\n\tFSET\tTELEPORTATION-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL10:\tCALL\tHELD?,UPPER-ELEVATOR-CARD\n\tZERO?\tSTACK /?CCL12\n\tFSET\tUPPER-ELEVATOR-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL12:\tCALL\tHELD?,LOWER-ELEVATOR-CARD\n\tZERO?\tSTACK /?CCL14\n\tFSET\tLOWER-ELEVATOR-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL14:\tCALL\tHELD?,MINI-CARD\n\tZERO?\tSTACK /?CCL16\n\tFSET\tMINI-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL16:\tCALL\tHELD?,ID-CARD\n\tZERO?\tSTACK /FALSE\n\tFSET\tID-CARD,SCRAMBLEDBIT\n\tRFALSE\t\n?CCL3:\tCALL\tINT,I-MAGNET\n\tPUT\tSTACK,0,0\n\tRFALSE\t\n\n\n\t.FUNCT\tMACHINE-SHOP-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"This room is probably some sort of machine shop filled with a variety of unusual machines. Doorways lead north, east, and west.\n\nStanding against the rear wall is a large dispensing machine with a spout. \"\n\tEQUAL?\tSPOUT-PLACED,GROUND /?CND4\n\tPRINTI\t\"Sitting under the spout is \"\n\tFSET?\tSPOUT-PLACED,VOWELBIT \\?CCL8\n\tPRINTI\t\"an \"\n\tJUMP\t?CND6\n?CCL8:\tPRINTI\t\"a \"\n?CND6:\tPRINTD\tSPOUT-PLACED\n\tPRINTI\t\". \"\n?CND4:\tPRINTR\t\"The dispenser is lined with brightly-colored buttons. The first four buttons, labelled \"\"KUULINTS 1 - 4\"\", are colored red, blue, green, and yellow. The next three buttons, labelled \"\"KATALISTS 1 - 3\"\", are colored gray, brown, and black. The last two buttons are both white. One of these is square and says \"\"BAAS.\"\" The other white button is round and says \"\"ASID.\"\"\"\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tEQUAL?\tSPOUT-PLACED,GROUND \\FALSE\n\tIN?\tFLOYD,HERE \\FALSE\n\tFSET?\tFLOYD,RLANDBIT \\FALSE\n\tRANDOM\t100\n\tLESS?\t15,STACK /FALSE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTR\t\"Floyd pushes one of the dispenser buttons. Fluid pours from the spout and splashes across the floor. Floyd jumps up and down, giggling.\"\n\n\n\t.FUNCT\tCHEMICAL-DISPENSER-F\n\tEQUAL?\tPRSA,V?PUT-UNDER \\FALSE\n\tEQUAL?\tPRSI,CHEMICAL-DISPENSER \\FALSE\n\tEQUAL?\tSPOUT-PLACED,GROUND \\?CCL8\n\tMOVE\tPRSO,HERE\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" is now sitting under the spout.\"\n\tCRLF\t\n\tSET\t'SPOUT-PLACED,PRSO\n\tRETURN\tSPOUT-PLACED\n?CCL8:\tPRINTI\t\"The \"\n\tPRINTD\tSPOUT-PLACED\n\tPRINTR\t\" is already resting under the spout.\"\n\n\n\t.FUNCT\tCHEM-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tFSET?\tCHEMICAL-DISPENSER,MUNGEDBIT \\?CCL6\n\tPRINTR\t\"The machine coughs a few times, but nothing else happens.\"\n?CCL6:\tEQUAL?\tSPOUT-PLACED,FLASK \\?CCL8\n\tIN?\tCHEMICAL-FLUID,FLASK \\?CCL11\n\tPRINTR\t\"Another dose of the chemical fluid pours out of the spout, splashes over the already-full flask, spills onto the floor, and dries up.\"\n?CCL11:\tMOVE\tCHEMICAL-FLUID,FLASK\n\tPRINTI\t\"The flask fills with some \"\n\tGETP\tPRSO,P?C-MOVE >CHEMICAL-FLAG\n\tGETP\tPRSO,P?C-MOVE\n\tGET\tCOLOR-LTBL,STACK\n\tPRINT\tSTACK\n\tPRINTR\t\" chemical fluid. The fluid gradually turns milky white.\"\n?CCL8:\tEQUAL?\tSPOUT-PLACED,CANTEEN \\?CCL13\n\tFSET?\tCANTEEN,OPENBIT \\?CCL13\n\tPRINTR\t\"Chemical fluid gushes from the spout. Unfortunately, the mouth of the canteen is very narrow, and the fluid just splashes over it.\"\n?CCL13:\tPRINTI\t\"Some sort of chemical fluid pours out of the spout, spills all over the \"\n\tPRINTD\tSPOUT-PLACED\n\tPRINTI\t\", and dries up.\"\n\tCRLF\t\n\tEQUAL?\tPRSO,ROUND-WHITE-BUTTON,SQUARE-WHITE-BUTTON \\TRUE\n\tFSET?\tSPOUT-PLACED,ACIDBIT /?CCL17\n\tFSET?\tSPOUT-PLACED,MUNGBIT \\TRUE\n?CCL17:\tSET\t'CHEMICAL-FLAG,9\n\tCALL\tPERFORM,V?POUR,CHEMICAL-FLUID,SPOUT-PLACED\n\tRTRUE\t\n\n\n\t.FUNCT\tFLOYD-F,X,N\n\tEQUAL?\tFLOYD,WINNER \\?CCL3\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tEQUAL?\tPRSA,V?GIVE \\?CCL6\n\tEQUAL?\tPRSI,ME \\?CCL6\n\tSET\t'WINNER,ADVENTURER\n\tCALL\tPERFORM,V?ASK-FOR,FLOYD,PRSO\n\tRTRUE\t\n?CCL6:\tEQUAL?\tPRSA,V?SGIVE \\?CCL10\n\tEQUAL?\tPRSO,ME \\?CCL10\n\tSET\t'WINNER,ADVENTURER\n\tCALL\tPERFORM,V?ASK-FOR,FLOYD,PRSI\n\tRTRUE\t\n?CCL10:\tEQUAL?\tPRSA,V?WALK \\?CCL14\n\tEQUAL?\tHERE,REPAIR-ROOM \\?CCL17\n\tEQUAL?\tPRSO,P?NORTH,P?IN \\?CCL17\n\tCALL\tFLOYD-THROUGH-HOLE\n\tJUMP\t?CND15\n?CCL17:\tEQUAL?\tHERE,BIO-LOCK-EAST \\?CCL21\n\tEQUAL?\tPRSO,P?EAST \\?CCL21\n\tCALL\tFLOYD-INTO-LAB\n\tJUMP\t?CND15\n?CCL21:\tEQUAL?\tHERE,RADIATION-LOCK-EAST \\?CCL25\n\tEQUAL?\tPRSO,P?EAST \\?CCL25\n\tPRINTI\t\"\"\"After you.\"\"\"\n\tCRLF\t\n\tJUMP\t?CND15\n?CCL25:\tPRINTI\t\"Floyd looks slightly embarrassed. \"\"You know me and my sense of direction.\"\" Then he looks up at you with wide, trusting eyes. \"\"Tell Floyd a story?\"\"\"\n\tCRLF\t\n?CND15:\tCALL\tFLUSH\n\tZERO?\tSTACK /TRUE\n\tRETURN\t2\n?CCL14:\tEQUAL?\tPRSA,V?THROUGH \\?CCL33\n\tCALL\tFLOYDS-FAMOUS-DOOR-ROUTINE\n\tCALL\tFLUSH\n\tZERO?\tSTACK /TRUE\n\tRETURN\t2\n?CCL33:\tEQUAL?\tPRSA,V?TAKE \\?CCL39\n\tEQUAL?\tPRSO,GOOD-BOARD \\?CCL39\n\tIN?\tGOOD-BOARD,ROBOT-HOLE /?CCL44\n\tPRINTI\t\"Floyd looks half-bored and half-annoyed. \"\n\tPRINTR\t\"Floyd already did that. How about some leap-frogger?\"\"\"\n?CCL44:\tZERO?\tBOARD-REPORTED /?CCL46\n\tMOVE\tGOOD-BOARD,ADVENTURER\n\tFCLEAR\tGOOD-BOARD,NDESCBIT\n\tFSET\tGOOD-BOARD,TAKEBIT\n\tSET\t'C-ELAPSED,22\n\tPRINTR\t\"Floyd shrugs. \"\"If you say so.\"\" He vanishes for a few minutes, and returns holding the fromitz board. It seems to be in good shape. He tosses it toward you, and you just manage to catch it before it smashes.\"\n?CCL46:\tPRINTR\t\"\"\"Huh?\"\" asks Floyd. \"\"What fromitz board?\"\"\"\n?CCL39:\tEQUAL?\tPRSA,V?FOLLOW \\?CCL48\n\tEQUAL?\tPRSO,ME \\?CCL48\n\tPRINTR\t\"\"\"Okay!\"\"\"\n?CCL48:\tEQUAL?\tPRSA,V?HELLO \\?CCL52\n\tSET\t'WINNER,ADVENTURER\n\tCALL\tPERFORM,V?HELLO,FLOYD\n\tRTRUE\t\n?CCL52:\tEQUAL?\tPRSA,V?DROP \\?CCL54\n\tIN?\tPRSO,FLOYD \\?CCL57\n\tRANDOM\t100\n\tLESS?\t50,STACK /?CCL60\n\tMOVE\tPRSO,HERE\n\tPRINTI\t\"Floyd shrugs and drops the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL60:\tPRINTI\t\"Floyd clutches the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" even more tightly. \"\"Floyd won't,\"\" he says defiantly.\"\n?CCL57:\tCALL\tFLOYD-NOT-HAVE\n\tRSTACK\t\n?CCL54:\tPRINTI\t\"Floyd whines, \"\"Enough talking! Let's play Hider-and-Seeker.\"\"\"\n\tCRLF\t\n\tRETURN\t2\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL64\n\tPRINTR\t\"Huh?\"\n?CCL64:\tEQUAL?\tPRSA,V?REACH,V?LOOK-INSIDE \\?CCL66\n\tCALL\tPERFORM,V?OPEN,FLOYD\n\tRTRUE\t\n?CCL66:\tFSET?\tFLOYD,RLANDBIT \\?CCL68\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tEQUAL?\tPRSA,V?LAMP-ON \\?CCL71\n\tPRINTR\t\"He's already been activated.\"\n?CCL71:\tEQUAL?\tPRSA,V?LAMP-OFF \\?CCL73\n\tFCLEAR\tFLOYD,RLANDBIT\n\tFCLEAR\tFLOYD,ACTORBIT\n\tCALL\tINT,I-FLOYD\n\tPUT\tSTACK,0,0\n\tPRINTI\t\"Floyd, shocked by this betrayal from his new-found friend, whimpers and keels over\"\n\tFIRST?\tFLOYD \\?CCL76\n\tPRINTI\t\", dropping what he was carrying.\"\n\tCRLF\t\n\tJUMP\t?CND74\n?CCL76:\tPRINTC\t46\n\tCRLF\t\n?CND74:\tFIRST?\tFLOYD >X /?PRG78\n?PRG78:\tZERO?\tX /TRUE\n\tNEXT?\tX >N /?BOGUS83\n?BOGUS83:\tMOVE\tX,HERE\n\tSET\t'X,N\n\tJUMP\t?PRG78\n?CCL73:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL85\n\tPRINTR\t\"From its design, the robot seems to be of the multi-purpose sort. It is slightly cross-eyed, and its mechanical mouth forms a lopsided grin.\"\n?CCL85:\tEQUAL?\tPRSA,V?KISS \\?CCL87\n\tPRINTR\t\"You receive a painful electric shock.\"\n?CCL87:\tEQUAL?\tPRSA,V?SCOLD \\?CCL89\n\tPRINTR\t\"Floyd looks defensive. \"\"What did Floyd do wrong?\"\"\"\n?CCL89:\tEQUAL?\tPRSA,V?PLAY-WITH \\?CCL91\n\tSET\t'C-ELAPSED,30\n\tCALL\tQUEUE,I-FLOYD,1\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"You play with Floyd for several centichrons until you drop to the floor, exhausted. Floyd pokes at you gleefully. \"\"C'mon! Let's play some more!\"\"\"\n?CCL91:\tEQUAL?\tPRSA,V?LISTEN \\?CCL93\n\tPRINTR\t\"Floyd is babbling about this and that.\"\n?CCL93:\tEQUAL?\tPRSA,V?TAKE \\?CCL95\n\tEQUAL?\tPRSO,FLOYD \\?CCL95\n\tPRINTR\t\"You manage to lift Floyd a few inches off the ground, but he is too heavy and you drop him suddenly. Floyd gives a surprised squeal and moves a respectable distance away.\"\n?CCL95:\tEQUAL?\tPRSA,V?MUNG,V?ATTACK \\?CCL99\n\tPRINTR\t\"Floyd starts dashing around the room. \"\"Oh boy oh boy oh boy! I haven't played Chase and Tag for years! You be It! Nah, nah!\"\"\"\n?CCL99:\tEQUAL?\tPRSA,V?SHAKE,V?KICK \\?CCL101\n\tPRINTR\t\"\"\"Why you do that?\"\" Floyd whines. \"\"I think a wire now shaken loose.\"\" He goes off into a corner and sulks.\"\n?CCL101:\tEQUAL?\tPRSA,V?TALK,V?HELLO \\?CCL103\n\tPRINTR\t\"\"\"Hi!\"\" Floyd grins and bounces up and down.\"\n?CCL103:\tEQUAL?\tPRSA,V?OPEN,V?SCRUB,V?SEARCH \\?CCL105\n\tPRINTR\t\"Floyd giggles and pushes you away. \"\"You're tickling Floyd!\"\" He clutches at his side panels, laughing hysterically. Oil drops stream from his eyes.\"\n?CCL105:\tEQUAL?\tPRSA,V?PUT,V?GIVE \\?CCL107\n\tEQUAL?\tFLOYD,PRSI \\?CCL107\n\tEQUAL?\tPRSO,LAZARUS-PART \\?CCL112\n\tREMOVE\tFLOYD\n\tSET\t'FLOYD-FOLLOW,FALSE-VALUE\n\tMOVE\tLAZARUS-PART,HERE\n\tCALL\tQUEUE,I-FLOYD,40\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"At first, Floyd is all grins because of your gift. Then, he realizes what it is, begins weeping, drops the breastplate, and rushes out of the room.\"\n?CCL112:\tEQUAL?\tPRSO,RED-GOO,GREEN-GOO,BROWN-GOO \\?CCL114\n\tPRINTR\t\"Floyd looks at the goo. \"\"Yech! Got any Number Seven Heavy Grease?\"\"\"\n?CCL114:\tFIRST?\tFLOYD /?CTR115\n\tRANDOM\t100\n\tLESS?\t25,STACK /?CCL116\n?CTR115:\tMOVE\tPRSO,HERE\n\tPRINTI\t\"Floyd examines the \"\n\tPRINTD\tPRSO\n\tPRINTI\t\", shrugs, and drops \"\n\tEQUAL?\tPRSO,PLIERS \\?CCL121\n\tPRINTR\t\"them.\"\n?CCL121:\tPRINTR\t\"it.\"\n?CCL116:\tMOVE\tPRSO,FLOYD\n\tPRINTR\t\"\"\"Neat!\"\" exclaims Floyd. He thanks you profusely.\"\n?CCL107:\tEQUAL?\tPRSA,V?SHOW \\?CCL123\n\tEQUAL?\tFLOYD,PRSI \\?CCL123\n\tEQUAL?\tPRSO,PRINT-OUT \\?CCL128\n\tZERO?\tCOMPUTER-FLAG \\?CCL128\n\tCALL\tCOMPUTER-ACTION\n\tRSTACK\t\n?CCL128:\tEQUAL?\tPRSO,ROBOT-HOLE \\?CCL132\n\tCALL\tFLOYD-THROUGH-HOLE\n\tRSTACK\t\n?CCL132:\tEQUAL?\tHERE,REC-AREA \\?CCL134\n\tEQUAL?\tPRSO,PSEUDO-OBJECT \\?CCL134\n\tPRINTR\t\"\"\"Too intellectual for Floyd. Any paddleball sets around?\"\"\"\n?CCL134:\tEQUAL?\tPRSO,ID-CARD,SHUTTLE-CARD /?CTR137\n\tEQUAL?\tPRSO,KITCHEN-CARD,UPPER-ELEVATOR-CARD \\?CCL138\n?CTR137:\tPRINTR\t\"Floyd scratches his head. \"\"Aren't those things usually blue?\"\"\"\n?CCL138:\tEQUAL?\tPRSO,LOWER-ELEVATOR-CARD \\?CCL142\n\tZERO?\tCARD-REVEALED \\?CCL142\n\tSET\t'CARD-REVEALED,TRUE-VALUE\n\tPRINTR\t\"\"\"I've got one just like that!\"\" says Floyd. He looks through several of his compartments, then glances at you suspiciously.\"\n?CCL142:\tPRINTI\t\"Floyd looks over the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\". \"\"Can you play any games with it?\"\" he asks.\"\n?CCL123:\tEQUAL?\tPRSA,V?RUB \\?CCL146\n\tPRINTR\t\"Floyd gives a contented sigh.\"\n?CCL146:\tEQUAL?\tPRSA,V?SMELL \\?CCL148\n\tPRINTR\t\"Floyd smells faintly of ozone and light machine oil.\"\n?CCL148:\tEQUAL?\tPRSA,V?ASK-FOR \\FALSE\n\tIN?\tPRSI,FLOYD \\?CCL153\n\tMOVE\tPRSI,ADVENTURER\n\tPRINTI\t\"\"\"Okay,\"\" says Floyd, handing you the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\", \"\"but only because you're Floyd's best friend.\"\"\"\n?CCL153:\tCALL\tFLOYD-NOT-HAVE\n\tRSTACK\t\n?CCL68:\tEQUAL?\tPRSA,V?LAMP-ON \\?CCL156\n\tZERO?\tFLOYD-INTRODUCED /?CCL159\n\tCALL\tQUEUE,I-FLOYD,-1\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL159:\tCALL\tQUEUE,I-FLOYD,25\n\tPUT\tSTACK,0,1\n\tPRINTI\t\"Nothing happens.\"\n\tCRLF\t\n\tZERO?\tFLOYD-SCORE-FLAG \\TRUE\n\tSET\t'FLOYD-SCORE-FLAG,TRUE-VALUE\n\tADD\tSCORE,2 >SCORE\n\tRTRUE\t\n?CCL156:\tEQUAL?\tPRSA,V?LAMP-OFF \\?CCL163\n\tPRINTR\t\"The robot doesn't seem to be on.\"\n?CCL163:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL165\n\tPRINTR\t\"The de-activated robot is leaning against the wall, its head lolling to the side. It is short, and seems to be equipped for general-purpose work. It has apparently been turned off.\"\n?CCL165:\tEQUAL?\tPRSA,V?OPEN,V?SEARCH \\FALSE\n\tZERO?\tCARD-REVEALED \\?CCL170\n\tZERO?\tCARD-STOLEN \\?CCL170\n\tFCLEAR\tLOWER-ELEVATOR-CARD,INVISIBLE\n\tMOVE\tLOWER-ELEVATOR-CARD,ADVENTURER\n\tCALL\tSCORE-OBJ,LOWER-ELEVATOR-CARD\n\tSET\t'CARD-STOLEN,TRUE-VALUE\n\tPRINTR\t\"In one of the robot's compartments you find and take a magnetic-striped card embossed \"\"Loowur Elavaatur Akses Kard.\"\"\"\n?CCL170:\tPRINTR\t\"Your search discovers nothing in the robot's compartments except a single crayon which you leave where you found it.\"\n\n\n\t.FUNCT\tFLOYDS-FAMOUS-DOOR-ROUTINE\n\tEQUAL?\tPRSO,ROBOT-HOLE \\?CCL3\n\tCALL\tFLOYD-THROUGH-HOLE\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSO,BIO-DOOR-EAST \\?CCL5\n\tCALL\tFLOYD-INTO-LAB\n\tRSTACK\t\n?CCL5:\tFSET?\tPRSO,DOORBIT \\?CCL7\n\tPRINTR\t\"\"\"You go first,\"\" says Floyd.\"\n?CCL7:\tPRINTR\t\"Floyd scratches his head and looks at you.\"\n\n\n\t.FUNCT\tFLUSH\n\tZERO?\tP-CONT /FALSE\n\tSET\t'P-CONT,FALSE-VALUE\n\tCRLF\t\n\tPRINTR\t\"Floyd scratches his head and looks at you. \"\"What else were you saying to Floyd? I can't remember.\"\"\"\n\n\n\t.FUNCT\tFLOYD-INTO-LAB\n\tZERO?\tFLOYD-WAITING /?CCL3\n\tPRINTR\t\"\"\"As soon as you open the door, dummy.\"\"\"\n?CCL3:\tPRINTR\t\"\"\"Are you kidding? Floyd not going in THERE without a good reason.\"\"\"\n\n\n\t.FUNCT\tFLOYD-NOT-HAVE\n\tPRINTR\t\"\"\"Floyd does not one of those have!\"\"\"\n\n\n\t.FUNCT\tFLOYD-COMES-ALIVE,FOO\n\tIN?\tFLOYD,HERE \\?CND1\n\tZERO?\tFLOYD-REACTIVATED /?CCL5\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Floyd jumps to his feet, hopping mad. \"\"Why you turn Floyd off?\"\" he asks accusingly.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL5:\tSET\t'FLOYD-INTRODUCED,TRUE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Suddenly, the robot comes to life and its head starts swivelling about. It notices you and bounds over. \"\"Hi! I'm B-19-7, but to everyperson I'm called Floyd. Are you a doctor-person or a planner-person? \"\n\tFIRST?\tADVENTURER >FOO \\?CND6\n\tPRINTI\t\"That's a nice \"\n\tPRINTD\tFOO\n\tPRINTI\t\" you are having there. \"\n?CND6:\tPRINTI\t\"Let's play Hider-and-Seeker you with me.\"\"\"\n\tCRLF\t\n?CND1:\tFSET\tFLOYD,RLANDBIT\n\tFSET\tFLOYD,ACTORBIT\n\tFSET\tFLOYD,TOUCHBIT\n\tSET\t'FLOYD-REACTIVATED,TRUE-VALUE\n\tRETURN\tFLOYD-REACTIVATED\n\n\n\t.FUNCT\tI-FLOYD\n\tCALL\tQUEUE,I-FLOYD,-1\n\tPUT\tSTACK,0,1\n\tFSET?\tFLOYD,RLANDBIT /?CCL3\n\tFSET\tFLOYD,ACTORBIT\n\tCRLF\t\n\tCALL\tFLOYD-COMES-ALIVE\n\tJUMP\t?CND1\n?CCL3:\tIN?\tFLOYD,HERE \\?CCL5\n\tZERO?\tFLOYD-INTRODUCED \\?CCL8\n\tSET\t'FLOYD-INTRODUCED,TRUE-VALUE\n\tCRLF\t\n\tPRINTI\t\"The robot, now apparently active, notices you enter. \"\"Hi,\"\" he says. \"\"I'm Floyd!\"\"\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL8:\tZERO?\tFLOYD-FOLLOW /?CCL10\n\tFSET?\tHERE,FLOYDBIT \\?CCL10\n\tRANDOM\t100\n\tLESS?\t6,STACK /?CCL10\n\tREMOVE\tFLOYD\n\tSET\t'FLOYD-FOLLOW,FALSE-VALUE\n\tCRLF\t\n\tPRINTI\t\"Floyd says \"\"Floyd going exploring. See you later.\"\" He glides out of the room.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL10:\tSET\t'FLOYD-FOLLOW,TRUE-VALUE\n\tRANDOM\t100\n\tLESS?\t40,STACK /?CND1\n\tZERO?\tFLOYD-SPOKE \\?CND1\n\tPRINTI\t\"Floyd \"\n\tCALL\tPICK-ONE,FLOYDISMS\n\tPRINT\tSTACK\n\tPRINTR\t\".\"\n?CCL5:\tZERO?\tFLOYD-FOLLOW /?CCL20\n\tRANDOM\t100\n\tLESS?\t80,STACK /?CCL20\n\tIN?\tLAZARUS-PART,HERE \\?CND23\n\tSET\t'FLOYD-FOLLOW,FALSE-VALUE\n\tCRLF\t\n\tPRINTR\t\"Floyd starts to follow you but notices the Lazarus breast plate. He sniffs and leaves the room.\"\n?CND23:\tMOVE\tFLOYD,HERE\n\tPRINTI\t\"Floyd follows you.\"\n\tCRLF\t\n\tCALL\tKLUDGE\n\tJUMP\t?CND1\n?CCL20:\tSET\t'FLOYD-FOLLOW,FALSE-VALUE\n\tEQUAL?\tHERE,BOOTH-1,BOOTH-2,BOOTH-3 \\?CCL27\n\tMOVE\tFLOYD,HERE\n\tZERO?\tFLOYD-INTRODUCED \\?CND28\n\tCRLF\t\n\tCALL\tCALL-ME-FLOYD\n\tRTRUE\t\n?CND28:\tCRLF\t\n\tPRINTI\t\"Floyd scampers into the booth. \"\"Oooo, this is a tiny room,\"\" he remarks.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL27:\tEQUAL?\tHERE,BIO-LOCK-EAST,BIO-LOCK-WEST \\?PRD33\n\tZERO?\tFLOYD-GAVE-UP /?CTR30\n?PRD33:\tEQUAL?\tHERE,RADIATION-LOCK-EAST,RADIATION-LOCK-WEST \\?CCL31\n?CTR30:\tMOVE\tFLOYD,HERE\n\tZERO?\tFLOYD-INTRODUCED \\?CND36\n\tCRLF\t\n\tCALL\tCALL-ME-FLOYD\n\tRTRUE\t\n?CND36:\tCRLF\t\n\tPRINTI\t\"Floyd glides after you. \"\"Is this...is this a squash court?\"\" he asks.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL31:\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST /?CTR38\n\tEQUAL?\tHERE,BETTY-CONTROL-EAST,BETTY-CONTROL-WEST /?CTR38\n\tEQUAL?\tHERE,UPPER-ELEVATOR,LOWER-ELEVATOR,REACTOR-ELEVATOR /?CTR38\n\tEQUAL?\tHERE,MESS-HALL \\?CCL39\n\tIN?\tFLOYD,KITCHEN \\?CCL39\n?CTR38:\tMOVE\tFLOYD,HERE\n\tZERO?\tFLOYD-INTRODUCED \\?CND46\n\tCRLF\t\n\tCALL\tCALL-ME-FLOYD\n\tRTRUE\t\n?CND46:\tCRLF\t\n\tPRINTI\t\"Floyd bounces into the \"\n\tEQUAL?\tHERE,UPPER-ELEVATOR,LOWER-ELEVATOR,REACTOR-ELEVATOR \\?CCL50\n\tPRINTI\t\"elevator\"\n\tJUMP\t?CND48\n?CCL50:\tEQUAL?\tHERE,MESS-HALL \\?CCL52\n\tPRINTI\t\"room\"\n\tJUMP\t?CND48\n?CCL52:\tPRINTI\t\"cabin\"\n?CND48:\tPRINTI\t\". \"\"Hey, wait for Floyd!\"\" he yells, smiling broadly.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL39:\tEQUAL?\tHERE,MINI-BOOTH \\?CCL54\n\tMOVE\tFLOYD,HERE\n\tZERO?\tFLOYD-INTRODUCED \\?CND55\n\tCRLF\t\n\tCALL\tCALL-ME-FLOYD\n\tRTRUE\t\n?CND55:\tCRLF\t\n\tPRINTI\t\"\"\"Hi,\"\" whispers Floyd, tiptoeing in. \"\"Are we going to teleport into the computer like Achilles always used to do?\"\"\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL54:\tRANDOM\t100\n\tLESS?\t30,STACK /?CND1\n\tEQUAL?\tHERE,INFIRMARY \\?CND58\n\tZERO?\tLAZARUS-FLAG \\FALSE\n?CND58:\tMOVE\tFLOYD,HERE\n\tZERO?\tFLOYD-INTRODUCED /?CCL64\n\tRANDOM\t100\n\tLESS?\t15,STACK /?CCL67\n\tIN?\tADVENTURER,BED /?CCL67\n\tCRLF\t\n\tPRINTI\t\"Floyd rushes into the room and barrels into you. \"\"Oops, sorry,\"\" he says. \"\"Floyd not looking at where he was going to.\"\"\"\n\tCRLF\t\n\tJUMP\t?CND65\n?CCL67:\tCRLF\t\n\tPRINTI\t\"Floyd bounds into the room. \"\"Floyd here now!\"\" he cries.\"\n\tCRLF\t\n?CND65:\tCALL\tKLUDGE\n\tJUMP\t?CND1\n?CCL64:\tCRLF\t\n\tCALL\tCALL-ME-FLOYD\n?CND1:\tSET\t'FLOYD-SPOKE,FALSE-VALUE\n\tRETURN\tFLOYD-SPOKE\n\n\n\t.FUNCT\tCALL-ME-FLOYD\n\tSET\t'FLOYD-INTRODUCED,TRUE-VALUE\n\tPRINTR\t\"The robot you were fiddling with in the Robot Shop bounds into the room. \"\"Hi!\"\" he says, with a wide and friendly smile. \"\"You turn Floyd on? Be Floyd's friend, yes?\"\"\"\n\n\n\t.FUNCT\tKLUDGE\n\tEQUAL?\tHERE,REPAIR-ROOM \\?CCL3\n\tZERO?\tACHILLES-FLAG \\?CCL3\n\tSET\t'ACHILLES-FLAG,TRUE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTR\t\"Floyd points at the fallen robot. \"\"That's Achilles. He was in charge of repairing machinery. He repaired Floyd once. I never liked him much; he wasn't friendly like other robots. Looks like he fell down the stairs. He always had trouble with one of his feet working right. A Planner-person once told me that's why they named him Achilles.\"\"\"\n?CCL3:\tEQUAL?\tHERE,COMPUTER-ROOM \\FALSE\n\tZERO?\tCOMPUTER-FLAG \\FALSE\n\tCALL\tCOMPUTER-ACTION\n\tRSTACK\t\n\n\n\t.FUNCT\tDEAD-FLOYD-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"You turn to look at Floyd, but a tremendous sense of loss overcomes you, and you turn away.\"\n?CCL3:\tEQUAL?\tPRSA,V?LAMP-ON \\?CCL5\n\tPRINTR\t\"As you touch Floyd's on-off switch, it falls off in your hands.\"\n?CCL5:\tEQUAL?\tPRSA,V?LAMP-OFF \\FALSE\n\tPRINTR\t\"I'm afraid that Floyd has already been turned off, permanently, and gone to that great robot shop in the sky.\"\n\n\n\t.FUNCT\tELEVATOR-LOBBY-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a wide, brightly lit lobby. A blue metal door to the north is \"\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CCL6\n\tEQUAL?\tUPPER-ELEVATOR-UP,FALSE-VALUE \\?CCL6\n\tPRINTI\t\"open\"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"closed\"\n?CND4:\tPRINTI\t\" and a larger red metal door to the south is \"\n\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL11\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL11\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CND14\n\tEQUAL?\tUPPER-ELEVATOR-UP,FALSE-VALUE \\?CND14\n\tPRINTI\t\"also \"\n?CND14:\tPRINTI\t\"open\"\n\tJUMP\t?CND9\n?CCL11:\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CCL19\n\tEQUAL?\tUPPER-ELEVATOR-UP,TRUE-VALUE \\?CND18\n?CCL19:\tPRINTI\t\"also \"\n?CND18:\tPRINTI\t\"closed\"\n?CND9:\tPRINTR\t\". Beside the blue door is a blue button, and beside the red door is a red button. A corridor leads west. To the east is a small room about the size of a telephone booth.\"\n\n\n\t.FUNCT\tUPPER-ELEVATOR-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"You have entered a tiny room with a sliding door to the south which is \"\n\tCALL\tDDESC,UPPER-ELEVATOR-DOOR\n\tPRINTR\t\". A control panel contains an Up button, a Down button, and a narrow slot.\"\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT /FALSE\n\tRANDOM\t100\n\tLESS?\t10,STACK /FALSE\n\tPRINTR\t\"Some innocuous Hawaiian music oozes from the elevator's intercom.\"\n\n\n\t.FUNCT\tLOWER-ELEVATOR-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a medium-sized room with a door to the north which is \"\n\tCALL\tDDESC,LOWER-ELEVATOR-DOOR\n\tPRINTR\t\". A control panel contains an Up button, a Down button, and a narrow slot.\"\n\n\n\t.FUNCT\tELEVATOR-ENTER-F\n\tEQUAL?\tPRSO,P?NORTH \\?CCL3\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CCL6\n\tEQUAL?\tUPPER-ELEVATOR-UP,FALSE-VALUE \\?CCL6\n\tRETURN\tUPPER-ELEVATOR\n?CCL6:\tCALL\tDOOR-CLOSED\n\tRFALSE\t\n?CCL3:\tEQUAL?\tPRSO,P?SOUTH \\FALSE\n\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL13\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL13\n\tRETURN\tLOWER-ELEVATOR\n?CCL13:\tCALL\tDOOR-CLOSED\n\tRFALSE\t\n\n\n\t.FUNCT\tELEVATOR-EXIT-F\n\tEQUAL?\tHERE,UPPER-ELEVATOR \\?CCL3\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CCL6\n\tEQUAL?\tUPPER-ELEVATOR-UP,TRUE-VALUE \\?CCL9\n\tRETURN\tTOWER-CORE\n?CCL9:\tRETURN\tELEVATOR-LOBBY\n?CCL6:\tCALL\tDOOR-CLOSED\n\tRFALSE\t\n?CCL3:\tEQUAL?\tHERE,LOWER-ELEVATOR \\FALSE\n\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL14\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL17\n\tRETURN\tELEVATOR-LOBBY\n?CCL17:\tRETURN\tWAITING-AREA\n?CCL14:\tCALL\tDOOR-CLOSED\n\tRFALSE\t\n\n\n\t.FUNCT\tUPPER-ELEVATOR-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tPRINTR\t\"It won't budge.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tUPPER-ELEVATOR-DOOR,OPENBIT \\?CCL11\n\tPRINTR\t\"You can't close it yourself.\"\n?CCL11:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tLOWER-ELEVATOR-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL6\n\tEQUAL?\tHERE,ELEVATOR-LOBBY \\?CCL6\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL11\n\tEQUAL?\tHERE,WAITING-AREA \\?CCL11\n\tEQUAL?\tLOWER-ELEVATOR-UP,FALSE-VALUE \\?CCL11\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL11:\tPRINTR\t\"It won't budge.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL19\n\tEQUAL?\tHERE,ELEVATOR-LOBBY \\?CCL19\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL19\n\tPRINTR\t\"You can't close it yourself.\"\n?CCL19:\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL24\n\tEQUAL?\tHERE,WAITING-AREA \\?CCL24\n\tEQUAL?\tLOWER-ELEVATOR-UP,FALSE-VALUE \\?CCL24\n\tPRINTR\t\"You can't close it yourself.\"\n?CCL24:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tDOOR-CLOSED\n\tPRINTR\t\"The door is closed.\"\n\n\n\t.FUNCT\tBLUE-ELEVATOR-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tEQUAL?\tUPPER-ELEVATOR-UP,TRUE-VALUE \\FALSE\n\tCALL\tINT,I-UPPER-ELEVATOR-ARRIVE\n\tGET\tSTACK,C-ENABLED?\n\tEQUAL?\tSTACK,1 \\?CCL8\n\tPRINTR\t\"Patience, patience...\"\n?CCL8:\tRANDOM\t20\n\tADD\tSTACK,40\n\tCALL\tQUEUE,I-UPPER-ELEVATOR-ARRIVE,STACK\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"You hear a faint whirring noise from behind the blue door.\"\n\n\n\t.FUNCT\tRED-ELEVATOR-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tEQUAL?\tLOWER-ELEVATOR-UP,FALSE-VALUE \\FALSE\n\tCALL\tINT,I-LOWER-ELEVATOR-ARRIVE\n\tGET\tSTACK,C-ENABLED?\n\tEQUAL?\tSTACK,1 \\?CCL8\n\tPRINTR\t\"Patience, patience...\"\n?CCL8:\tRANDOM\t40\n\tADD\tSTACK,80\n\tCALL\tQUEUE,I-LOWER-ELEVATOR-ARRIVE,STACK\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"The red door begins vibrating a bit.\"\n\n\n\t.FUNCT\tI-UPPER-ELEVATOR-ARRIVE\n\tFSET\tUPPER-ELEVATOR-DOOR,OPENBIT\n\tSET\t'UPPER-ELEVATOR-UP,FALSE-VALUE\n\tCALL\tINT,I-UPPER-ELEVATOR-ARRIVE\n\tPUT\tSTACK,0,0\n\tEQUAL?\tHERE,ELEVATOR-LOBBY \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The door at the north end of the room slides open.\"\n\n\n\t.FUNCT\tI-LOWER-ELEVATOR-ARRIVE\n\tFSET\tLOWER-ELEVATOR-DOOR,OPENBIT\n\tSET\t'LOWER-ELEVATOR-UP,TRUE-VALUE\n\tCALL\tINT,I-LOWER-ELEVATOR-ARRIVE\n\tPUT\tSTACK,0,0\n\tEQUAL?\tHERE,ELEVATOR-LOBBY \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The door at the south end of the room slides open.\"\n\n\n\t.FUNCT\tELEVATOR-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH-UP \\?CCL3\n\tEQUAL?\tHERE,LOWER-ELEVATOR \\?CCL6\n\tEQUAL?\tLOWER-ELEVATOR-UP,FALSE-VALUE \\?CCL6\n\tEQUAL?\tLOWER-ELEVATOR-ON,TRUE-VALUE \\?CCL6\n\tEQUAL?\tELEVATOR-IN-TRANSIT,FALSE-VALUE \\?CCL6\n\tPRINT\tELEVATOR-STARTS\n\tCRLF\t\n\tFCLEAR\tLOWER-ELEVATOR-DOOR,OPENBIT\n\tSET\t'ELEVATOR-IN-TRANSIT,TRUE-VALUE\n\tCALL\tQUEUE,I-LOWER-ELEVATOR-TRIP,100\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL6:\tEQUAL?\tHERE,UPPER-ELEVATOR \\?CCL12\n\tEQUAL?\tUPPER-ELEVATOR-UP,FALSE-VALUE \\?CCL12\n\tEQUAL?\tUPPER-ELEVATOR-ON,TRUE-VALUE \\?CCL12\n\tEQUAL?\tELEVATOR-IN-TRANSIT,FALSE-VALUE \\?CCL12\n\tPRINT\tELEVATOR-STARTS\n\tCRLF\t\n\tFCLEAR\tUPPER-ELEVATOR-DOOR,OPENBIT\n\tSET\t'ELEVATOR-IN-TRANSIT,TRUE-VALUE\n\tCALL\tQUEUE,I-UPPER-ELEVATOR-TRIP,50\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL12:\tPRINTR\t\"Nothing happens.\"\n?CCL3:\tEQUAL?\tPRSA,V?PUSH-DOWN \\?CCL18\n\tEQUAL?\tHERE,LOWER-ELEVATOR \\?CCL21\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL21\n\tEQUAL?\tLOWER-ELEVATOR-ON,TRUE-VALUE \\?CCL21\n\tEQUAL?\tELEVATOR-IN-TRANSIT,FALSE-VALUE \\?CCL21\n\tPRINT\tELEVATOR-STARTS\n\tCRLF\t\n\tFCLEAR\tLOWER-ELEVATOR-DOOR,OPENBIT\n\tSET\t'ELEVATOR-IN-TRANSIT,TRUE-VALUE\n\tCALL\tQUEUE,I-LOWER-ELEVATOR-TRIP,100\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL21:\tEQUAL?\tHERE,UPPER-ELEVATOR \\?CCL27\n\tEQUAL?\tUPPER-ELEVATOR-UP,TRUE-VALUE \\?CCL27\n\tEQUAL?\tUPPER-ELEVATOR-ON,TRUE-VALUE \\?CCL27\n\tEQUAL?\tELEVATOR-IN-TRANSIT,FALSE-VALUE \\?CCL27\n\tPRINT\tELEVATOR-STARTS\n\tCRLF\t\n\tFCLEAR\tUPPER-ELEVATOR-DOOR,OPENBIT\n\tSET\t'ELEVATOR-IN-TRANSIT,TRUE-VALUE\n\tCALL\tQUEUE,I-UPPER-ELEVATOR-TRIP,50\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL27:\tPRINTR\t\"Nothing happens.\"\n?CCL18:\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tPRINTR\t\"You must specify whether you want to push the Up button or the Down button.\"\n\n\n\t.FUNCT\tI-TURNOFF-UPPER-ELEVATOR\n\tZERO?\tELEVATOR-IN-TRANSIT /?CCL3\n\tCALL\tQUEUE,I-TURNOFF-UPPER-ELEVATOR,120\n\tPUT\tSTACK,0,1\n\tRFALSE\t\n?CCL3:\tSET\t'UPPER-ELEVATOR-ON,FALSE-VALUE\n\tEQUAL?\tHERE,UPPER-ELEVATOR \\FALSE\n\tCRLF\t\n\tPRINT\tELEVATOR-LIGHT-OFF\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tI-TURNOFF-LOWER-ELEVATOR\n\tZERO?\tELEVATOR-IN-TRANSIT /?CCL3\n\tCALL\tQUEUE,I-TURNOFF-LOWER-ELEVATOR,120\n\tPUT\tSTACK,0,1\n\tRFALSE\t\n?CCL3:\tSET\t'LOWER-ELEVATOR-ON,FALSE-VALUE\n\tEQUAL?\tHERE,LOWER-ELEVATOR \\FALSE\n\tCRLF\t\n\tPRINT\tELEVATOR-LIGHT-OFF\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tI-UPPER-ELEVATOR-TRIP\n\tEQUAL?\tUPPER-ELEVATOR-UP,TRUE-VALUE \\?CCL3\n\tSET\t'UPPER-ELEVATOR-UP,FALSE-VALUE\n\tSET\t'ELEVATOR-IN-TRANSIT,FALSE-VALUE\n\tFSET\tUPPER-ELEVATOR-DOOR,OPENBIT\n\tCRLF\t\n\tCALL\tELEVATOR-DOOR-OPENS\n\tRSTACK\t\n?CCL3:\tSET\t'UPPER-ELEVATOR-UP,TRUE-VALUE\n\tSET\t'ELEVATOR-IN-TRANSIT,FALSE-VALUE\n\tFSET\tUPPER-ELEVATOR-DOOR,OPENBIT\n\tCRLF\t\n\tCALL\tELEVATOR-DOOR-OPENS\n\tRSTACK\t\n\n\n\t.FUNCT\tI-LOWER-ELEVATOR-TRIP\n\tEQUAL?\tLOWER-ELEVATOR-UP,TRUE-VALUE \\?CCL3\n\tSET\t'LOWER-ELEVATOR-UP,FALSE-VALUE\n\tSET\t'ELEVATOR-IN-TRANSIT,FALSE-VALUE\n\tFSET\tLOWER-ELEVATOR-DOOR,OPENBIT\n\tCRLF\t\n\tCALL\tELEVATOR-DOOR-OPENS\n\tRSTACK\t\n?CCL3:\tSET\t'LOWER-ELEVATOR-UP,TRUE-VALUE\n\tSET\t'ELEVATOR-IN-TRANSIT,FALSE-VALUE\n\tFSET\tLOWER-ELEVATOR-DOOR,OPENBIT\n\tCRLF\t\n\tCALL\tELEVATOR-DOOR-OPENS\n\tRSTACK\t\n\n\n\t.FUNCT\tELEVATOR-DOOR-OPENS\n\tPRINTR\t\"The elevator door slides open.\"\n\n\n\t.FUNCT\tHELICOPTER-OBJECT-F\n\tEQUAL?\tPRSA,V?WALK-TO,V?BOARD,V?THROUGH \\?CCL3\n\tEQUAL?\tHERE,HELIPAD \\?CCL6\n\tCALL\tGOTO,HELICOPTER\n\tRSTACK\t\n?CCL6:\tPRINTR\t\"You're in it!\"\n?CCL3:\tEQUAL?\tPRSA,V?DISEMBARK,V?DROP,V?EXIT \\?CCL8\n\tEQUAL?\tHERE,HELICOPTER \\?CCL11\n\tCALL\tGOTO,HELIPAD\n\tRSTACK\t\n?CCL11:\tPRINTR\t\"You're not in it!\"\n?CCL8:\tEQUAL?\tPRSA,V?FLY \\FALSE\n\tEQUAL?\tHERE,HELICOPTER \\?CCL16\n\tPRINTR\t\"The controls seem to be locked.\"\n?CCL16:\tPRINTR\t\"You're not even in it!\"\n\n\n\t.FUNCT\tCOMM-ROOM-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"This is a small room with no windows. The sole exit is southwest. Two wide consoles fill either end of the room; thick cables lead up into the ceiling.\n\nThe console on the left side of the room is labelled \"\"Reeseev Staashun.\"\" A bright red light, labelled \"\"Tranzmishun Reeseevd\"\", is blinking rapidly. Next to the light is a glowing button marked \"\"Mesij Plaabak.\"\"\n\nThe console on the right side of the room is labelled \"\"Send Staashun.\"\" A screen on the console displays a message. Next to the screen is a flashing sign which says \"\n\tZERO?\tCOMM-SHUTDOWN /?CCL6\n\tCALL\tSHUTDOWN\n\tJUMP\t?CND4\n?CCL6:\tZERO?\tCOMM-FIXED /?CCL8\n\tPRINTI\t\"\"\"Tranzmishun in pragres.\"\"\"\n\tJUMP\t?CND4\n?CCL8:\tPRINTI\t\"\"\"Malfunkshun in Sendeeng Kuulint Sistum.\"\"\"\n?CND4:\tPRINTI\t\" Next to this console is an enunciator\"\n\tZERO?\tCOMM-FIXED \\?CCL10\n\tZERO?\tCOMM-SHUTDOWN /?CND9\n?CCL10:\tPRINTI\t\" whose lights are all dark\"\n?CND9:\tPRINTR\t\". On the console next to the enunciator panel is a funnel-shaped hole labelled \"\"Kuulint Sistum Manyuuwul Oovuriid.\"\"\"\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tZERO?\tCOMM-FIXED \\FALSE\n\tZERO?\tCOMM-SHUTDOWN \\FALSE\n\tZERO?\tJUST-ENTERED /FALSE\n\tCALL\tQUEUE,I-UNENTER,-1\n\tPUT\tSTACK,0,1\n\tSET\t'JUST-ENTERED,FALSE-VALUE\n\tPRINTI\t\"A \"\n\tEQUAL?\tCHEMICAL-REQUIRED,1 \\?CCL21\n\tPRINTI\t\"red\"\n\tJUMP\t?CND19\n?CCL21:\tEQUAL?\tCHEMICAL-REQUIRED,2 \\?CCL23\n\tPRINTI\t\"blue\"\n\tJUMP\t?CND19\n?CCL23:\tEQUAL?\tCHEMICAL-REQUIRED,3 \\?CCL25\n\tPRINTI\t\"green\"\n\tJUMP\t?CND19\n?CCL25:\tEQUAL?\tCHEMICAL-REQUIRED,4 \\?CCL27\n\tPRINTI\t\"yellow\"\n\tJUMP\t?CND19\n?CCL27:\tEQUAL?\tCHEMICAL-REQUIRED,5 \\?CCL29\n\tPRINTI\t\"gray\"\n\tJUMP\t?CND19\n?CCL29:\tEQUAL?\tCHEMICAL-REQUIRED,6 \\?CCL31\n\tPRINTI\t\"brown\"\n\tJUMP\t?CND19\n?CCL31:\tEQUAL?\tCHEMICAL-REQUIRED,7 \\?CND19\n\tPRINTI\t\"black\"\n?CND19:\tPRINTR\t\" colored light is flashing on the enunciator panel.\"\n\n\n\t.FUNCT\tI-UNENTER\n\tEQUAL?\tHERE,COMM-ROOM /FALSE\n\tSET\t'JUST-ENTERED,TRUE-VALUE\n\tCALL\tINT,I-UNENTER\n\tPUT\tSTACK,0,0\n\tRFALSE\t\n\n\n\t.FUNCT\tPLAYBACK-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tPRINTR\t\"A voice fills the room ... the voice of the Feinstein's communications officer! \"\"Stellar Patrol Ship Feinstein to planetside ... Please respond on frequency 48.5 ... SPS Feinstein to planetside ... Please come in ...\"\" After a pause you hear the officer, in a quieter voice, say \"\"Admiral, no response on any of the standard frequen...\"\" The sentence is cut short by the sound of an explosion and a loud burst of static, followed by silence.\"\n\n\n\t.FUNCT\tRANDOMIZE-ORDER,COUNT=0,TEMP,?TMP1,?TMP2\n?PRG1:\tIGRTR?\t'COUNT,7 /?REP2\n\tPUT\tORDER-LTBL,COUNT,FALSE-VALUE\n\tJUMP\t?PRG1\n?REP2:\tSET\t'COUNT,0\n?PRG6:\tIGRTR?\t'COUNT,7 /TRUE\n\tRANDOM\t7 >TEMP\n\tGET\tORDER-LTBL,1 >?TMP2\n\tGET\tORDER-LTBL,2 >?TMP1\n\tGET\tORDER-LTBL,3\n\tEQUAL?\tTEMP,?TMP2,?TMP1,STACK /?CTR12\n\tGET\tORDER-LTBL,4 >?TMP2\n\tGET\tORDER-LTBL,5 >?TMP1\n\tGET\tORDER-LTBL,6\n\tEQUAL?\tTEMP,?TMP2,?TMP1,STACK /?CTR12\n\tGET\tORDER-LTBL,7\n\tEQUAL?\tTEMP,STACK \\?CCL13\n?CTR12:\tDEC\t'COUNT\n\tJUMP\t?PRG6\n?CCL13:\tPUT\tORDER-LTBL,COUNT,TEMP\n\tJUMP\t?PRG6\n\n\n\t.FUNCT\tCHEMICAL-FLUID-F\n\tEQUAL?\tPRSA,V?EAT \\?CCL3\n\tCALL\tJIGS-UP,STR?184\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?PUT \\?CCL5\n\tEQUAL?\tPRSI,CHEMICAL-FLUID \\?CCL5\n\tCALL\tPERFORM,V?PUT,PRSO,FLASK\n\tRTRUE\t\n?CCL5:\tEQUAL?\tPRSA,V?POUR,V?THROW \\?CCL9\n\tEQUAL?\tPRSI,RAT-ANT,TROLL /?CTR8\n\tEQUAL?\tPRSI,GRUE,TRIFFID \\?CCL9\n?CTR8:\tCALL\tHELD?,FLASK\n\tZERO?\tSTACK \\?CND14\n\tPRINTR\t\"You're not holding the flask.\"\n?CND14:\tREMOVE\tCHEMICAL-FLUID\n\tPRINTR\t\"The mutants lap up the chemical, howling with delight. One immediately grows three new mouths.\"\n?CCL9:\tEQUAL?\tPRSA,V?POUR,V?PUT \\FALSE\n\tCALL\tHELD?,FLASK\n\tZERO?\tSTACK \\?CCL20\n\tPRINTR\t\"You're not holding the flask.\"\n?CCL20:\tEQUAL?\tPRSI,CANTEEN \\?CND18\n\tCALL\tWORTHLESS-ACTION\n\tRTRUE\t\n?CND18:\tREMOVE\tCHEMICAL-FLUID\n\tZERO?\tPRSI \\?CND22\n\tSET\t'PRSI,GROUND\n?CND22:\tEQUAL?\tPRSI,FUNNEL-HOLE \\?CCL26\n\tEQUAL?\tCHEMICAL-FLAG,CHEMICAL-REQUIRED \\?CCL29\n\tGET\tORDER-LTBL,STEPS-TO-GO >CHEMICAL-REQUIRED\n\tDEC\t'STEPS-TO-GO\n\tPRINTI\t\"The liquid disappears into the hole. The lights on the enunciator panel blink rapidly \"\n\tZERO?\tSTEPS-TO-GO \\?CCL32\n\tSET\t'COMM-FIXED,TRUE-VALUE\n\tADD\tSCORE,6 >SCORE\n\tSET\t'CHEMICAL-REQUIRED,10\n\tPRINTR\t\"and then go dark. The coolant system warning light goes off, and another flashes, indicating that the help message is now being sent.\"\n?CCL32:\tPRINTI\t\"and all go off except one, a \"\n\tEQUAL?\tCHEMICAL-REQUIRED,1 \\?CCL35\n\tPRINTI\t\"red\"\n\tJUMP\t?CND33\n?CCL35:\tEQUAL?\tCHEMICAL-REQUIRED,2 \\?CCL37\n\tPRINTI\t\"blue\"\n\tJUMP\t?CND33\n?CCL37:\tEQUAL?\tCHEMICAL-REQUIRED,3 \\?CCL39\n\tPRINTI\t\"green\"\n\tJUMP\t?CND33\n?CCL39:\tEQUAL?\tCHEMICAL-REQUIRED,4 \\?CCL41\n\tPRINTI\t\"yellow\"\n\tJUMP\t?CND33\n?CCL41:\tEQUAL?\tCHEMICAL-REQUIRED,5 \\?CCL43\n\tPRINTI\t\"gray\"\n\tJUMP\t?CND33\n?CCL43:\tEQUAL?\tCHEMICAL-REQUIRED,6 \\?CCL45\n\tPRINTI\t\"brown\"\n\tJUMP\t?CND33\n?CCL45:\tEQUAL?\tCHEMICAL-REQUIRED,7 \\?CND33\n\tPRINTI\t\"black\"\n?CND33:\tPRINTR\t\" light.\"\n?CCL29:\tSET\t'COMM-SHUTDOWN,TRUE-VALUE\n\tZERO?\tCOMM-FIXED /?CND47\n\tSUB\tSCORE,6 >SCORE\n\tSET\t'COMM-FIXED,FALSE-VALUE\n?CND47:\tPRINTI\t\"An alarm sounds briefly, and a sign flashes \"\n\tCALL\tSHUTDOWN\n\tPRINTR\t\" A moment later, the lights in the room dim and the send console shuts down.\"\n?CCL26:\tEQUAL?\tCHEMICAL-FLAG,8,9 \\?CCL50\n\tFSET?\tPRSI,ACIDBIT \\?CCL53\n\tEQUAL?\tPRSI,SPOUT-PLACED \\?CND54\n\tSET\t'SPOUT-PLACED,GROUND\n?CND54:\tREMOVE\tPRSI\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSI\n\tPRINTI\t\" dissolves right before your eyes!\"\n\tEQUAL?\tPRSI,BAD-BEDISTOR \\?CCL58\n\tFSET?\tBAD-BEDISTOR,TOUCHBIT /?CCL58\n\tFSET\tCUBE,MUNGEDBIT\n\tCALL\tCUBE-SEEMS\n\tJUMP\t?CND56\n?CCL58:\tEQUAL?\tPRSI,GOOD-BEDISTOR \\?CND56\n\tZERO?\tCOURSE-CONTROL-FIXED /?CND56\n\tFSET\tCUBE,MUNGEDBIT\n\tSUB\tSCORE,6 >SCORE\n\tSET\t'COURSE-CONTROL-FIXED,FALSE-VALUE\n\tCALL\tCUBE-SEEMS\n?CND56:\tCRLF\t\n\tRTRUE\t\n?CCL53:\tEQUAL?\tCREVICE,PRSI \\?CCL65\n\tFSET?\tKEY,TOUCHBIT /?CCL65\n\tFSET?\tKEY,INVISIBLE \\?CCL70\n\tPRINTI\t\"A puff of smoke rises from the crevice.\"\n\tCRLF\t\n\tJUMP\t?CND68\n?CCL70:\tPRINTI\t\"Although the chemical has no effect on the crevice, it does seem to have dissolved the key that was lying in it.\"\n\tCRLF\t\n?CND68:\tREMOVE\tKEY\n\tFSET\tKEY,TOUCHBIT\n\tFCLEAR\tKEY,INVISIBLE\n\tRTRUE\t\n?CCL65:\tEQUAL?\tPRSI,HIGH-PROTEIN,MEDICINE \\?CCL72\n\tCALL\tJIGS-UP,STR?185\n\tRSTACK\t\n?CCL72:\tEQUAL?\tPRSI,ME,ADVENTURER,HANDS \\?CCL74\n\tCALL\tJIGS-UP,STR?186\n\tRSTACK\t\n?CCL74:\tEQUAL?\tPRSI,FLOYD \\?CCL76\n\tFSET?\tFLOYD,RLANDBIT \\?CCL76\n\tPRINTR\t\"Floyd yelps. \"\"Hey, cut it out! That stuff burns!\"\"\"\n?CCL76:\tEQUAL?\tPRSI,MICROBE \\?CCL80\n\tPRINTI\t\"The microbe writhes in pain. \"\n\tCALL\tSTRIP-DISSOLVES\n\tRSTACK\t\n?CCL80:\tEQUAL?\tPRSI,STRIP,RELAY \\?CCL82\n\tCALL\tSTRIP-DISSOLVES\n\tRSTACK\t\n?CCL82:\tFSET?\tPRSI,MUNGBIT \\?CCL84\n\tFSET\tPRSI,MUNGEDBIT\n\tEQUAL?\tPRSI,CHRONOMETER \\?CND85\n\tSET\t'MUNGED-TIME,INTERNAL-MOVES\n?CND85:\tPRINTI\t\"The \"\n\tPRINTD\tPRSI\n\tPRINTI\t\" seems to undergo some damage as a result of your action.\"\n\tCRLF\t\n\tEQUAL?\tPRSI,CUBE \\TRUE\n\tZERO?\tCOURSE-CONTROL-FIXED /TRUE\n\tSET\t'COURSE-CONTROL-FIXED,FALSE-VALUE\n\tREMOVE\tGOOD-BEDISTOR\n\tSUB\tSCORE,6 >SCORE\n\tPRINTR\t\"The bedistor also happens to dissolve.\"\n?CCL84:\tCALL\tCHEMICAL-POURS\n\tRSTACK\t\n?CCL50:\tCALL\tCHEMICAL-POURS\n\tRSTACK\t\n\n\n\t.FUNCT\tCUBE-SEEMS\n\tPRINTI\t\" Unfortunately, the cube seems to undergo some damage as well.\"\n\tRTRUE\t\n\n\n\t.FUNCT\tCHEMICAL-POURS\n\tPRINTI\t\"The chemical pours all over the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\", making quite a mess.\"\n\n\n\t.FUNCT\tSTRIP-DISSOLVES\n\tCALL\tJIGS-UP,STR?187\n\tRSTACK\t\n\n\n\t.FUNCT\tSHUTDOWN\n\tPRINTI\t\"\"\"Kuulint Sistum Imbalins Kritikul -- Shuteeng Down Awl Sistumz.\"\"\"\n\tRTRUE\t\n\n\n\t.FUNCT\tCOMM-SETUP\n\tRANDOM\t3\n\tADD\t2,STACK >OLD-SHOTS\n\tRANDOM\t10\n\tADD\t20,STACK >NEW-SHOTS\n\tCALL\tRANDOMIZE-ORDER\n\tRANDOM\t2\n\tADD\t1,STACK >STEPS-TO-GO\n\tADD\tSTEPS-TO-GO,1\n\tGET\tORDER-LTBL,STACK >CHEMICAL-REQUIRED\n\tRETURN\tCHEMICAL-REQUIRED\n\n\n\t.FUNCT\tOTHER-ELEVATOR-ENTER-F\n\tFSET?\tLOWER-ELEVATOR-DOOR,OPENBIT \\?CCL3\n\tZERO?\tLOWER-ELEVATOR-UP \\?CCL3\n\tRETURN\tLOWER-ELEVATOR\n?CCL3:\tCALL\tDOOR-CLOSED\n\tCALL\tTHIS-IS-IT,LOWER-ELEVATOR-DOOR\n\tRFALSE\t\n\n\n\t.FUNCT\tKALAMONTEE-PLATFORM-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a wide, flat strip of concrete which continues westward. \"\n\tZERO?\tBETTY-AT-KALAMONTEE /?CCL6\n\tZERO?\tALFIE-AT-KALAMONTEE /?CCL6\n\tPRINTI\t\"Open shuttle cars lie on the north and south sides of the platform. \"\n\tJUMP\t?CND4\n?CCL6:\tZERO?\tBETTY-AT-KALAMONTEE /?CCL10\n\tPRINTI\t\"An open shuttle car lies to the north. \"\n\tJUMP\t?CND4\n?CCL10:\tZERO?\tALFIE-AT-KALAMONTEE /?CND4\n\tPRINTI\t\"A large transport of some sort lies to the south, its open door beckoning you to enter. \"\n?CND4:\tPRINTR\t\"A faded sign on the wall reads \"\"Shutul Platform -- Kalamontee Staashun.\"\"\"\n\n\t.ENDI\n"
  },
  {
    "path": "compone.zil",
    "content": "\"COMPONE for PLANETFALL \n(C) COPYRIGHT 1983 INFOCOM, INC. ALL RIGHTS RESERVED\n\nThis file contains all the rooms, objects, and actions associated\nwith Complex One / the Western Complex / the Kalamontee Compleks.\"\n\n<ROOM UNDERWATER\n      (IN ROOMS)\n      (DESC \"Underwater\")\n      (LDESC\n\"You are momentarily disoriented as you enter the turbulent waters.\nCurrents buffet you against the sharp rocks of an underwater\ncliff. A dim light filters down from above.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"    35\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (UP TO CRAG)\n      (DOWN TO UNDERWATER)\n      (WEST TO UNDERWATER)\n      (NORTH TO UNDERWATER)\n      (SOUTH TO UNDERWATER)\n      (FLAGS ONBIT RWATERBIT)\n      (ACTION UNDERWATER-F)>\n\n<GLOBAL DROWN 0> ;\"you die if you return to Underwater or stay too long\"\n\n<ROUTINE UNDERWATER-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-END>\n\t\t<SETG DROWN <+ ,DROWN 1>>\n\t\t<COND (<G? ,DROWN 2>\n\t\t       <JIGS-UP\n\"A mighty undertow drags you across some underwater obstructions.\">)>)>>\n\n<ROOM CRAG\n      (IN ROOMS)\n      (DESC \"Crag\")\n      (LDESC\n\"You have reached a cleft in the cliff wall where the island rises from the\nwater. The edge of the cleft displays recently exposed rock where it collapsed\nunder the weight of the escape pod. About two meters below, turbulent waters\nswirl against sharp rocks. A small structure clings to the face of the cliff\nabout eight meters above you. Even an out-of-shape Ensign Seventh Class could\nprobably climb up to it.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"10  ;\"UP\"    40\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN TO UNDERWATER)\n      (UP TO BALCONY)\n      (FLAGS ONBIT RLANDBIT)\n      (VALUE 3)\n      (GLOBAL CLIFF OCEAN)\n      (PSEUDO \"STRUCTURE\" STRUCTURE-PSEUDO \"CLEFT\" CLEFT-PSEUDO)\n      (ACTION CRAG-F)>\n\n<ROUTINE CRAG-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-ENTER>\n\t\t<SETG DROWN 3>)>>\n\n<ROOM BALCONY\n      (IN ROOMS)\n      (DESC \"Balcony\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"25  ;\"UP\"    30\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN PER WATER-LEVEL-F)\n      (UP TO WINDING-STAIR)\n      (FLAGS ONBIT RLANDBIT)\n      (PSEUDO \"PLAQUE\" PLAQUE-PSEUDO)\n      (GLOBAL CLIFF OCEAN STAIRS WINDOW)\n      (ACTION BALCONY-F)>\n\n<ROUTINE BALCONY-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is an octagonal room, half carved into and half built out from the cliff\nwall. Through the shattered windows which ring the outer wall you can see\nocean to the horizon. A weathered metal plaque with barely readable lettering\nrests below the windows. The language seems to be a corrupt form of\nGalalingua. A steep stairway, roughly cut into the face of the cliff, leads\nupward. \">\n\t\t<COND (<EQUAL? ,DAY 1>\n\t\t       <TELL\n\"A rocky crag can be seen about eight meters below.\" CR>)\n\t\t      (<EQUAL? ,DAY 2>\n\t\t       <TELL\n\"The ocean waters swirl below. The crag where you landed yesterday is\nnow underwater!\" CR>)\n\t\t      (<EQUAL? ,DAY 3>\n\t\t       <TELL\n\"Ocean waters are lapping at the base of the balcony.\" CR>)>)>>\n\n<ROOM WINDING-STAIR\n      (IN ROOMS)\n      (DESC \"Winding Stair\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"15  ;\"UP\"    30\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN PER WATER-LEVEL-F)\n      (UP TO COURTYARD)\n      (FLAGS ONBIT RLANDBIT)\n      (GLOBAL CLIFF STAIRS)\n      (ACTION WINDING-STAIR-F)>\n\n<ROUTINE WINDING-STAIR-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"The middle of a long, steep stairway carved into the face of a cliff.\">\n\t\t<COND (<EQUAL? ,DAY 4>\n\t\t       <TELL\n\" You hear the lapping of water from below.\">)\n\t\t      (<EQUAL? ,DAY 5>\n\t\t       <TELL\n\" You can see ocean water splashing against the steps below you.\">)>\n\t\t<CRLF>)>>\n\n<ROOM COURTYARD\n      (IN ROOMS)\n      (DESC \"Courtyard\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"15  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN TO WINDING-STAIR)\n      (SOUTH TO WINDING-STAIR)\n      (WEST TO WEST-WING)\n      (NORTH TO  PLAIN-HALL)\n      (FLAGS ONBIT RLANDBIT FLOYDBIT)\n      (GLOBAL STAIRS)\n      (PSEUDO \"CASTLE\" CASTLE-PSEUDO \"RUBBLE\" RUBBLE-PSEUDO)\n      (ACTION COURTYARD-F)>\n\n<ROUTINE COURTYARD-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"You are in the courtyard of an ancient stone edifice, vaguely reminiscent of\nthe castles you saw during your leave on Ramos Two. It has decayed to\nthe point where it can probably be termed a ruin. Openings lead north and west,\nand a stairway downward is visible to the south. \">\n\t\t<COND (<EQUAL? ,DAY 6 7>\n\t\t       <TELL\n\"From the direction of the stairway comes the sound of ocean surf.\">)\n\t\t      (<EQUAL? ,DAY 8>\n\t\t       <TELL\n\"Ocean water washes against the top few steps.\">)>\n\t\t<CRLF>)>>\n\n<ROUTINE WATER-LEVEL-F ()\n\t <COND (<EQUAL? ,HERE ,BALCONY>\n\t\t<COND (<EQUAL? ,DAY 1> ,CRAG)\n\t\t      (T ,UNDERWATER)>)\n\t       (<EQUAL? ,HERE ,WINDING-STAIR>\n\t\t<COND (<L? ,DAY 4> ,BALCONY)\n\t\t      (T ,UNDERWATER)>)\n\t       (<EQUAL? ,HERE ,COURTYARD>\n\t\t<COND (<L? ,DAY 6> ,WINDING-STAIR)\n\t\t      (T ,UNDERWATER)>)>>\n\n<ROOM WEST-WING\n      (IN ROOMS)\n      (DESC \"West Wing\")\n      (LDESC\n\"This was once the west wing of the castle, but the walls are now mostly\nrubble, allowing a view of the cliff and ocean below. Rubble blocks all exits\nsave one, eastward to the courtyard.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO COURTYARD)\n      (DOWN \"Certain death.\")\n      (FLAGS ONBIT RLANDBIT FLOYDBIT)\n      (GLOBAL CLIFF OCEAN)\n      (PSEUDO \"CASTLE\" CASTLE-PSEUDO \"RUBBLE\" RUBBLE-PSEUDO)>\n\n<ROOM PLAIN-HALL\n      (IN ROOMS)\n      (DESC \"Plain Hall\")\n      (LDESC\n\"This is a featureless hall leading north and south. Although the hallway is\nold and dusty, the construction is of a much more modern style than the\ncastle to the south. A similar hall branches off to the northeast.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"  25  ;\"NORTH\"  0>)\n      (SOUTH TO COURTYARD)\n      (NORTH TO REC-AREA)\n      (NE TO REC-CORRIDOR)\n      (FLAGS ONBIT RLANDBIT)>\n\n<ROOM REC-AREA\n      (IN ROOMS)\n      (DESC \"Rec Area\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO CONFERENCE-ROOM IF CONFERENCE-DOOR IS OPEN)\n      (SOUTH TO PLAIN-HALL)\n      (EAST TO REC-CORRIDOR)\n      (FLAGS ONBIT RLANDBIT FLOYDBIT)\n      (GLOBAL CONFERENCE-DOOR)\n      (PSEUDO \"GAMES\" GAMES-PSEUDO \"TAPES\" TAPES-PSEUDO)\n      (ACTION REC-AREA-F)>\n\n<GLOBAL DIAL-NUMBER 0>\n\n<GLOBAL NUMBER-NEEDED 0>\n\n<ROUTINE REC-AREA-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a recreational facility of some sort. Games and tapes are scattered\nabout the room. Hallways head off to the east and south, and to the north is\na door which is \">\n\t\t<COND (<FSET? ,CONFERENCE-DOOR ,OPENBIT>\n\t\t       <TELL \"open\">)\n\t\t      (T\n\t\t       <TELL\n\"closed and locked. A dial on the door is currently set to \"\nN ,DIAL-NUMBER>)>\n\t\t<TELL \".\" CR>)>>\n\n<ROOM CONFERENCE-ROOM\n      (IN ROOMS)\n      (DESC \"Conference Room\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO REC-AREA IF CONFERENCE-DOOR IS OPEN)\n      (OUT TO REC-AREA IF CONFERENCE-DOOR IS OPEN)\n      (IN TO BOOTH-1)\n      (NORTH TO BOOTH-1)\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)\n      (GLOBAL CONFERENCE-DOOR TABLES)\n      (ACTION CONFERENCE-ROOM-F)>\n\n<ROUTINE CONFERENCE-ROOM-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a fairly square room, almost filled by a round conference table.\nTo the south is a door which is \">\n\t\t<DDESC ,CONFERENCE-DOOR>\n\t\t<TELL\n\". To the north is a small room about the size of a phone booth.\" CR>)>>\n\n<OBJECT CONFERENCE-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"door\")\n\t(SYNONYM DOOR)\n\t(FLAGS DOORBIT NDESCBIT)\n\t(ACTION CONFERENCE-DOOR-F)>\n\n<OBJECT COMBINATION-DIAL\n\t(IN REC-AREA)\n\t(DESC \"combination dial\")\n\t(SYNONYM DIAL)\n\t(ADJECTIVE COMBINATION)\n\t(FLAGS MUNGBIT NDESCBIT)\n\t(ACTION COMBINATION-DIAL-F)>\n\n<ROUTINE COMBINATION-DIAL-F ()\n\t <COND (<VERB? EXAMINE>\n\t        <TELL\n\"The dial can be turned to any number between 0 and 1000.\" CR>)\n\t       (<AND <VERB? SET>\n\t\t     <EQUAL? ,PRSI ,INTNUM>>\n\t\t<COND (<FSET? ,COMBINATION-DIAL ,MUNGEDBIT>\n\t\t       <TELL\n\"The dial has somehow become fused and won't move.\" CR>)\n\t\t      (<EQUAL? ,P-NUMBER ,DIAL-NUMBER>\n\t\t       <TELL \"That's what the dial is set to now!\" CR>)\n\t\t      (<EQUAL? ,P-NUMBER ,NUMBER-NEEDED>\n\t\t       <SETG DIAL-NUMBER 0>\n\t\t       <FSET ,CONFERENCE-DOOR ,OPENBIT>\n\t\t       <TELL\n\"The door swings open, and the dial resets to 0.\" CR>)\n\t\t      (<G? ,P-NUMBER 1000>\n\t\t       <TELL\n\"The dial cannot be turned to a number that high.\" CR>)\n\t\t      (T\n\t\t       <SETG DIAL-NUMBER ,P-NUMBER>\n\t\t       <TELL \"The dial is now set to \" N ,P-NUMBER \".\" CR>)>)>>\n\n<ROUTINE CONFERENCE-DOOR-F ()\n\t<COND (<VERB? OPEN>\n\t       <COND (<FSET? ,CONFERENCE-DOOR ,OPENBIT>\n\t\t      <ALREADY-OPEN>)\n\t\t     (T\n\t\t      <COND (<EQUAL? ,HERE ,REC-AREA>\n\t\t\t     <TELL\n\"The door is locked. You probably have to turn the dial to some number to\nopen it.\" CR>)\n\t\t\t    (T\n\t\t\t     <TELL\n\"The door seems to be locked from the other side.\" CR>)>)>)\n\t      (<VERB? CLOSE>\n\t       <COND (<FSET? ,CONFERENCE-DOOR ,OPENBIT>\n\t\t      <FCLEAR ,CONFERENCE-DOOR ,OPENBIT>\n\t\t      <TELL\n\"The door closes and you hear a click as it locks.\" CR>)\n\t\t     (T\n\t\t      <IS-CLOSED>)>)>>\n\n<ROOM BOOTH-1\n      (IN ROOMS)\n      (DESC \"Booth 1\")\n      (LDESC\n\"This is a tiny room with a large \\\"1\\\" painted on the wall. A panel contains\na slot about ten centimeters wide, a beige button labelled \\\"2\\\" and a tan\nbutton labelled \\\"3.\\\"\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO CONFERENCE-ROOM)\n      (OUT TO CONFERENCE-ROOM)\n      (PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)\n      (FLAGS ONBIT RLANDBIT)\n      (GLOBAL CONTROLS SLOT TELEPORTATION-BUTTON-2 TELEPORTATION-BUTTON-3)>\n\n<ROOM REC-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Rec Corridor\")\n      (LDESC\n\"This is a wide, east-west hallway. Portals lead north and south, and another\ncorridor branches southwest.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"  25  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO REC-AREA)\n      (NORTH TO DORM-B)\n      (SOUTH TO DORM-A)\n      (EAST TO MESS-CORRIDOR)\n      (SW TO PLAIN-HALL)\n      (FLAGS ONBIT RLANDBIT)>\n\n<ROOM DORM-A\n      (IN ROOMS)\n      (DESC \"Dorm A\")\n      (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO SANFAC-A)\n      (NORTH TO REC-CORRIDOR)\n      (FLAGS FLOYDBIT ONBIT RLANDBIT)\n      (GLOBAL BED)\n      (PSEUDO \"PARTITION\" PARTITION-PSEUDO)>\n\n<ROOM SANFAC-A\n      (IN ROOMS)\n      (DESC \"SanFac A\")\n      (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nnorth.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO DORM-A)\n      (FLAGS ONBIT RLANDBIT FLOYDBIT)\n      (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)>\n\n<ROOM DORM-B\n      (IN ROOMS)\n      (DESC \"Dorm B\")\n      (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO REC-CORRIDOR)\n      (NORTH TO SANFAC-B)\n      (FLAGS FLOYDBIT ONBIT RLANDBIT)\n      (GLOBAL BED)\n      (PSEUDO \"PARTITION\" PARTITION-PSEUDO)>\n\n<ROOM SANFAC-B\n      (IN ROOMS)\n      (DESC \"SanFac B\")\n      (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nsouth.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO DORM-B)\n      (FLAGS FLOYDBIT ONBIT RLANDBIT)\n      (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)>\n\n<ROOM DORM-C\n      (IN ROOMS)\n      (DESC \"Dorm C\")\n      (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO DORM-CORRIDOR)\n      (SOUTH TO SANFAC-C)\n      (FLAGS ONBIT FLOYDBIT RLANDBIT)\n      (GLOBAL BED)\n      (PSEUDO \"PARTITION\" PARTITION-PSEUDO)>\n\n<ROOM SANFAC-C\n      (IN ROOMS)\n      (DESC \"SanFac C\")\n      (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nnorth.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO DORM-C)\n      (FLAGS FLOYDBIT ONBIT RLANDBIT)\n      (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)>\n\n<ROOM DORM-D\n      (IN ROOMS)\n      (DESC \"Dorm D\")\n      (LDESC\n\"This is a very long room lined with multi-tiered bunks. Flimsy partitions\nbetween the tiers may have provided a modicum of privacy. These spartan\nliving quarters could have once housed many hundreds, but it seems quite\ndeserted now. There are openings at the north and south ends of the room.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO DORM-CORRIDOR)\n      (NORTH TO SANFAC-D)\n      (FLAGS FLOYDBIT ONBIT RLANDBIT)\n      (GLOBAL BED)\n      (PSEUDO \"PARTITION\" PARTITION-PSEUDO)>\n\n<ROOM SANFAC-D\n      (IN ROOMS)\n      (DESC \"SanFac D\")\n      (LDESC\n\"This must be the sanitary facility for the adjacent dormitory. The fixtures\nare dry and dusty, the room dead and deserted. You marvel at how little the\nmillenia and cultural gulfs have changed toilet bowl design. The only exit is\nsouth.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO DORM-D)\n      (FLAGS ONBIT FLOYDBIT RLANDBIT)\n      (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)>\n\n<ROOM MESS-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Mess Corridor\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO MESS-HALL)\n      (NORTH TO STORAGE-WEST IF STORAGE-WEST-DOOR IS OPEN)\n      (EAST TO DORM-CORRIDOR)\n      (WEST TO REC-CORRIDOR)\n      (FLAGS ONBIT RLANDBIT)\n      (GLOBAL STORAGE-WEST-DOOR)\n      (ACTION MESS-CORRIDOR-F)>\n\n<ROUTINE MESS-CORRIDOR-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a wide, east-west hallway with a large portal to the south. A\nsmall door to the north is \">\n\t\t<DDESC ,STORAGE-WEST-DOOR>\n\t\t<COND (<NOT ,PADLOCK-REMOVED>\n\t\t       <TELL \" and hooked with a simple steel padlock\">\n\t\t       <COND (<FSET? ,PADLOCK ,OPENBIT>\n\t\t\t      <TELL \" which hangs unlocked\">)\n\t\t\t     (T\n\t\t\t      <TELL \" which is also closed\">)>)>\n\t\t<TELL \".\" CR>)>>\n\n<OBJECT STORAGE-WEST-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"door\")\n\t(SYNONYM DOOR)\n\t(FLAGS DOORBIT NDESCBIT)\n\t(ACTION STORAGE-WEST-DOOR-F)>\n\n<ROUTINE STORAGE-WEST-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,STORAGE-WEST-DOOR ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (,PADLOCK-REMOVED\n\t\t       <FSET ,STORAGE-WEST-DOOR ,OPENBIT>\n\t\t       <TELL \"Opened.\" CR>)\n\t\t      (T\n\t\t       <TELL \n\"The door cannot be opened until the padlock is removed.\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,STORAGE-WEST-DOOR ,OPENBIT>\n\t\t       <FCLEAR ,STORAGE-WEST-DOOR ,OPENBIT>\n\t\t       <TELL \"The door is now closed.\" CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)\n\t       (<VERB? UNLOCK>\n\t\t<TELL \"The door itself isn't locked.\">\n\t\t<COND (<NOT <FSET? ,PADLOCK ,OPENBIT>>\n\t\t       <TELL\n\" It is the padlock on the door which is locked.\">)>\n\t\t<TELL CR>)>>\n\n<OBJECT PADLOCK\n\t(IN MESS-CORRIDOR)\n\t(DESC \"padlock\")\n\t(SYNONYM PADLOCK PAD LOCK)\n\t(ADJECTIVE SIMPLE STEEL METAL)\n\t(SIZE 10)\n\t(FLAGS MUNGBIT NDESCBIT TAKEBIT TRYTAKEBIT)\n\t(ACTION PADLOCK-F)>\n\n<GLOBAL PADLOCK-REMOVED <>> ;\"is the padlock still on the door?\"\n\n<ROUTINE PADLOCK-F ()\n\t <COND (<EQUAL? ,HERE ,BRIG>\n\t\t<TELL\n\"You can't see or reach the lock from inside the cell.\" CR>)\n\t       (<AND <VERB? OPEN-WITH>\n\t\t     <EQUAL? ,PADLOCK ,PRSO>>\n\t\t<PERFORM ,V?UNLOCK ,PADLOCK ,PRSI>\n\t\t<RTRUE>)\n\t       (<VERB? UNLOCK OPEN>\n\t\t<COND (<NOT <FSET? ,PADLOCK ,OPENBIT>>\n\t\t       <COND (<NOT ,PRSI>\n\t\t\t      <TELL \"You can't open it with your hands.\" CR>)\n\t\t\t     (<EQUAL? ,PRSI ,KEY>\n\t\t\t      <COND (<FSET? ,PADLOCK ,MUNGEDBIT>\n\t\t\t             <TELL\n\"Tsk, tsk ... the padlock seems to be fused shut.\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <FSET ,PADLOCK ,OPENBIT>\n\t\t\t\t     <TELL \"The padlock springs open.\" CR>)>)\n\t\t\t     (T\n\t\t\t      <TELL \"That doesn't work.\" CR>)>)\n\t\t      (T\n\t\t       <TELL \"The padlock is already unlocked.\" CR>)>)\n\t       (<VERB? CLOSE LOCK>\n\t\t<COND (<FSET? ,PADLOCK ,OPENBIT>\n\t\t       <FCLEAR ,PADLOCK ,OPENBIT>\n\t\t       <TELL \"The padlock closes with a sharp click.\" CR>)\n\t\t      (T\n\t\t       <TELL \"The padlock is already locked.\" CR>)>)\n\t       (<AND <VERB? TAKE>\n\t\t     <NOT ,PADLOCK-REMOVED>>\n\t\t<COND (<FSET? ,PADLOCK ,OPENBIT>\n\t\t       <SETG PADLOCK-REMOVED T>\n\t\t       <FCLEAR ,PADLOCK ,TRYTAKEBIT>\n\t\t       <FCLEAR ,PADLOCK ,NDESCBIT>\n\t\t       <RFALSE>)\n\t\t      (<NOT <FSET? ,PADLOCK ,OPENBIT>>\n\t\t       <TELL \"The padlock is locked to the door.\" CR>)>)\n\t       (<VERB? MUNG>\n\t\t<TELL\n\"And, as we go into the next round, it's Padlock 1, Adventurer 0...\" CR>)>>\n\n<ROOM STORAGE-WEST\n      (IN ROOMS)\n      (DESC \"Storage West\")\n      (LDESC\n\"This is a small room obviously intended as a storage area.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO MESS-CORRIDOR IF STORAGE-WEST-DOOR IS OPEN)\n      (OUT TO MESS-CORRIDOR IF STORAGE-WEST-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 4)\n      (GLOBAL SHELVES STORAGE-WEST-DOOR)>\n\n<OBJECT CAN\n\t(IN STORAGE-WEST)\n\t(DESC \"tin can\")\n\t(LDESC \n\"There is a large tin can, labelled \\\"Spam and Egz,\\\" sitting here.\")\n\t(FDESC\n\"On a small shelf is a large, unopened tin can. It has a plain white\nlabel which reads \\\"Spam and Egz.\\\"\")\n\t(SIZE 15)\n\t(SYNONYM CAN)\n\t(ADJECTIVE LARGE TIN UNOPENED)\n\t(FLAGS TAKEBIT)\n\t(ACTION CAN-F)>\n\n<ROUTINE CAN-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"This is a rather normal tin can. It is large and is labelled \\\"Spam\nand Egz.\\\"\" CR>)\n\t       (<VERB? OPEN>\n\t\t<TELL\n\"You certainly can't open it with your hands, and you don't seem to have\nfound a can opener yet.\" CR>)>> \n\n<OBJECT LADDER\n\t(IN STORAGE-WEST)\n\t(DESC \"ladder\")\n\t(FDESC\n\"A heavy-duty extendable ladder is leaning against the rear wall.\")\n\t(LDESC\n\"There is a large aluminum ladder here.\")\n\t(SYNONYM LADDER)\n\t(ADJECTIVE HEAVY DUTY ALUMINUM LARGE)\n\t(SIZE 80)\n\t(FLAGS TAKEBIT)\n\t(ACTION LADDER-F)>\n\n<GLOBAL LADDER-EXTENDED <>> ;\"is the ladder extended?\"\n\n<GLOBAL LADDER-FLAG <>> ;\"is the ladder spanning the rift?\"\n\n<ROUTINE LADDER-F ()\n\t <COND (<VERB? TAKE>\n\t\t<COND (,LADDER-EXTENDED\n\t\t       <TELL\n\"You can't possibly carry the ladder while it's extended.\" CR>)>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL\n\"It is a heavy-duty ladder built of sturdy aluminum tubing. It is currently \">\n\t\t<COND (,LADDER-EXTENDED\n\t\t       <TELL\n\"extended to its full length of about 8 meters, but could be collapsed to\na shorter length for easier carrying.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"collapsed and is around two-and-a-half meters long, but if extended would\nobviously be much longer.\" CR>)>)\n\t       (<VERB? OPEN>\n\t\t<COND (,LADDER-EXTENDED\n\t\t       <TELL \"The ladder is already extended.\" CR>)\n\t\t      (<OR <EQUAL? ,HERE ,STORAGE-EAST ,STORAGE-WEST ,BOOTH-2>\n\t\t\t   <EQUAL? ,HERE ,UPPER-ELEVATOR ,LOWER-ELEVATOR>>\n\t\t       <TELL\n\"You can't extend the ladder in this tiny space!\" CR>)\n\t\t      (<IN? ,LADDER ,ADVENTURER>\n\t\t       <TELL\n\"You couldn't possibly extend the ladder while you're holding it.\" CR>)\n\t\t      (T\n\t\t       <FSET ,LADDER ,TRYTAKEBIT>\n\t\t       <SETG LADDER-EXTENDED T>\n\t\t       <SETG C-ELAPSED 36>\n\t\t       <TELL\n\"The ladder extends to a length of around eight meters.\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (,LADDER-EXTENDED\n\t\t       <SETG C-ELAPSED 21>\n\t\t       <COND (,LADDER-FLAG\n\t\t\t      <SETG LADDER-FLAG <>>\n\t\t\t      <REMOVE ,LADDER>\n\t\t\t      <TELL\n\"As the ladder shortens it plunges into the rift.\" CR>)\n\t\t\t     (T\n\t\t\t      <SETG LADDER-EXTENDED <>>\n\t\t\t      <FCLEAR ,LADDER ,TRYTAKEBIT>\n\t\t\t      <TELL\n\"The ladder collapses to a length of around two-and-a-half meters.\" CR>)>)\n\t\t      (T\n\t\t       <TELL\n\"The ladder is already in its collapsed state.\" CR>)>)\n\t       (<AND <VERB? SPAN ATTRACT>\n\t\t     <EQUAL? ,PRSI ,RIFT>>\n\t\t<COND (,LADDER-FLAG\n\t\t       <TELL \"The ladder already spans the rift.\" CR>)\n\t\t      (T\n\t\t       <COND (,LADDER-EXTENDED\n\t\t\t      <SETG LADDER-FLAG T>\n\t\t\t      <FSET ,LADDER ,NDESCBIT>\n\t\t\t      <TELL\n\"The ladder swings out across the rift and comes to rest on the far edge,\nspanning the precipice.\" CR>)\n\t\t\t     (T\n\t\t\t      <REMOVE ,LADDER>\n\t\t\t      <TELL\n\"The ladder, far too short to reach the other edge of the rift, plunges into\nthe rift and is lost forever.\" CR>)>)>)\n\t       (<VERB? CLIMB-UP CLIMB-FOO>\n\t\t<COND (,LADDER-FLAG\n\t\t       <TELL \"You can't climb a horizontal ladder!\" CR>)\n\t\t      (<IN? ,LADDER ,ADVENTURER>\n\t\t       <TELL\n\"That would be a neat trick, considering that you're holding it.\" CR>)>)>>\n\n<ROOM DORM-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Dorm Corridor\")\n      (LDESC\n\"This is a wide, east-west hallway with openings to the north and south.\nTo the east, the corridor stretches off into the distance. That section of\nthe hallway is lined with a motorized walkway (no longer running) that\nwas probably intended to transport people or cargo down that tremendously\nlong hall.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 160 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO DORM-D)\n      (SOUTH TO DORM-C)\n      (WEST TO MESS-CORRIDOR)\n      (EAST PER LONG-HALL-F)\n      (FLAGS ONBIT RLANDBIT)\n      (PSEUDO \"WALKWAY\" WALKWAY-PSEUDO)>\n\n<ROOM MESS-HALL\n      (IN ROOMS)\n      (DESC \"Mess Hall\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO MESS-CORRIDOR)\n      (OUT TO MESS-CORRIDOR)\n      (SOUTH TO KITCHEN IF KITCHEN-DOOR IS OPEN)\n      (IN TO KITCHEN IF KITCHEN-DOOR IS OPEN)\n      (GLOBAL TABLES KITCHEN-DOOR SLOT)\n      (FLAGS ONBIT FLOYDBIT RLANDBIT)\n      (PSEUDO \"BENCH\" BENCH-PSEUDO \"BENCHE\" BENCH-PSEUDO)\n      (ACTION MESS-HALL-F)>\n\n<ROUTINE MESS-HALL-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a large hall lined with tables and benches. An opening to the north\nleads back to the corridor. A door to the south is \">\n\t\t<DDESC ,KITCHEN-DOOR>\n\t\t<TELL \". Next to the door is a small slot.\" CR>)>>\n\n<OBJECT KITCHEN-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE KITCHEN)\n\t(FLAGS DOORBIT NDESCBIT)\n\t(ACTION KITCHEN-DOOR-F)>\n\n<ROUTINE KITCHEN-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t        <TELL\n\"A light flashes \\\"Pleez yuuz kitcin akses kard.\\\"\" CR>)>>\n\n<ROOM KITCHEN\n      (IN ROOMS)\n      (DESC \"Kitchen\")\n      (LDESC\n\"This is the food production and dispensary area for the dining hall to the\nnorth. Of particular interest is a machine near the door. You should probably\nexamine it more closely.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO MESS-HALL)\n      (OUT TO MESS-HALL)\n      (GLOBAL KITCHEN-DOOR)\n      (PSEUDO \"SPOUT\" SPOUT-PSEUDO \"BUTTON\" BUTTON-PSEUDO)\n      (FLAGS ONBIT RLANDBIT)\n      (VALUE 4)>\n\n<OBJECT DISPENSER\n\t(IN KITCHEN)\n\t(DESC \"dispenser unit\")\n\t(SYNONYM UNIT NICHE MACHIN DISPEN)\n\t(ADJECTIVE DISPEN)\n\t(FLAGS MUNGBIT CONTBIT SEARCHBIT OPENBIT TRANSBIT NDESCBIT)\n\t(ACTION DISPENSER-F)>\n\n<OBJECT CANTEEN\n\t(IN MESS-HALL)\n\t(DESC \"canteen\")\n\t(FDESC \n\"Although the room is quite barren, an octagonally-shaped\ncanteen is sitting on one of the benches.\")\n\t(SYNONYM CANTEEN)\n\t(ADJECTIVE OCTAGONAL)\n\t(CAPACITY 5)\n\t(SIZE 10)\n\t(FLAGS TAKEBIT CONTBIT SEARCHBIT)>\n\n<ROUTINE DISPENSER-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"This wall-mounted unit contains an octagonal niche beneath a spout. \">\n\t\t<COND (<IN? ,CANTEEN ,DISPENSER>\n\t\t       <TELL\n\"A canteen is resting in the niche, its mouth lying just below the spout. \">)>\n\t\t<TELL\n\"Above the spout is a button. The machine is labelled \\\"Hii Prooteen Likwid\nDispensur.\\\"\" CR>)\n\t       (<VERB? CLOSE>\n\t\t<NO-CLOSE>\n\t\t<RTRUE>)\n\t       (<VERB? PUT>\n\t\t<COND (<EQUAL? ,PRSO ,CANTEEN>\n\t\t       <MOVE ,CANTEEN ,DISPENSER>\n\t\t       <TELL \"The canteen fits snugly into the octagonal niche,\nits mouth resting just below the spout of the machine.\" CR>)\n\t\t      (T\n\t\t       <TELL \"It doesn't fit in the niche.\" CR>)>)>>\n\n<OBJECT HIGH-PROTEIN\n\t(DESC \"quantity of protein-rich liquid\")\n\t(SYNONYM LIQUID FLUID FOOD QUANTITY)\n\t(ADJECTIVE BROWN PROTEIN-RICH)\n\t(SIZE 5)\n\t(FLAGS FOODBIT)\n\t(ACTION HIGH-PROTEIN-F)>\n\n<ROUTINE HIGH-PROTEIN-F (\"AUX\" (X <>))\n\t <COND (<VERB? EAT>\n\t\t<COND (<NOT <IN? ,CANTEEN ,ADVENTURER>>\n\t\t       <SETG PRSO ,CANTEEN>\n\t\t       <NOT-HOLDING>)\n\t\t      (T\n\t\t       <COND (<EQUAL? ,HUNGER-LEVEL 0>\n\t\t\t      <TELL ,NOT-HUNGRY CR>)\n\t\t\t     (T\n\t\t\t      <REMOVE ,HIGH-PROTEIN>\n\t\t\t      <SETG C-ELAPSED 15>\n\t\t\t      <SETG HUNGER-LEVEL 0>\n\t\t\t      <ENABLE <QUEUE I-HUNGER-WARNINGS 3600>>\n\t\t\t      <TELL\n\"Mmmm....that was good. It certainly quenched your thirst and satisfied your\nhunger.\" CR>)>)>)\n\t       (<AND <VERB? POUR>\n\t\t     <EQUAL? ,PRSO ,HIGH-PROTEIN>>\n\t\t<COND (<NOT <IN? ,CANTEEN ,ADVENTURER>>\n\t\t       <TELL \"Maybe if you were holding the canteen...\" CR>\n\t\t       <RTRUE>)\n\t\t      (<NOT ,PRSI>\n\t\t       <SETG PRSI ,GROUND>)>\n\t\t<COND (<EQUAL? ,PRSI ,FLASK>\n\t\t       <WORTHLESS-ACTION>)\n\t\t      (<EQUAL? ,PRSI ,FUNNEL-HOLE>\n\t\t       <COND (<IN? ,CHEMICAL-FLUID ,FLASK>\n\t\t\t      <SET X T>)>\n\t\t       <SETG CHEMICAL-REQUIRED 10>\n\t\t       <REMOVE ,HIGH-PROTEIN>\n\t\t       <PERFORM ,V?POUR ,CHEMICAL-FLUID ,FUNNEL-HOLE>\n\t\t       <COND (.X\n\t\t\t      <MOVE ,CHEMICAL-FLUID ,FLASK>)>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <REMOVE ,HIGH-PROTEIN>\n\t\t       <TELL\n\"The protein-rich fluid pours over the \" D ,PRSI \" and then dries up.\" CR>)>)>>\n\n<ROUTINE WORTHLESS-ACTION ()\n\t <TELL\n\"A worthless action -- and much too difficult for a poorly-written program\nlike this one to handle.\" CR>>\n\n<ROOM CORRIDOR-JUNCTION\n      (IN ROOMS)\n      (DESC \"Corridor Junction\")\n      (LDESC\n\"A north-south corridor intersects the main corridor here. To the west, the\nmain corridor extends as far as you can see; a non-working walkway from\nthat direction ends here. To the east, the corridor widens into a well-lit\narea.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 160 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\"  30 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO ADMIN-CORRIDOR-S)\n      (SOUTH TO MECH-CORRIDOR-N)\n      (WEST PER LONG-HALL-F)\n      (EAST TO ELEVATOR-LOBBY)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (PSEUDO \"WALKWAY\" WALKWAY-PSEUDO)>\n\n<ROUTINE LONG-HALL-F ()\n\t <TELL\n\"You walk down the long, featureless hallway for a long time. Finally,\nyou see \">\n\t <SETG C-ELAPSED 160>\n\t <COND (<EQUAL? ,HERE ,CORRIDOR-JUNCTION>\n\t\t<TELL \"some doorways ahead...\" CR CR>\n\t\t,DORM-CORRIDOR)\n\t       (T\n\t\t<TELL \"an intersection ahead...\" CR CR>\n\t\t,CORRIDOR-JUNCTION)>>\n\t\t\n<ROOM ADMIN-CORRIDOR-S\n      (IN ROOMS)\n      (DESC \"Admin Corridor South\")\n      (LDESC\n\"This section of hallway seems to have suffered some minor structural\ndamage. The walls are cracked, and a jagged crevice crosses the floor.\nAn opening leads east and the corridor heads north and south.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO CORRIDOR-JUNCTION)\n      (NORTH TO ADMIN-CORRIDOR)\n      (EAST TO SANFAC-E)\n      (FLAGS RLANDBIT ONBIT)\n      (ACTION ADMIN-CORRIDOR-S-F)>\n\n<ROUTINE ADMIN-CORRIDOR-S-F (RARG)\n\t <COND (<AND <EQUAL? .RARG ,M-END>\n\t\t     <FSET? ,KEY ,INVISIBLE>\n\t\t     <PROB 20>>\n\t\t<TELL\n\"You catch, out of the corner of your eye, a glint of light from the direction\nof the floor.\" CR>)>>\n\n<OBJECT CREVICE\n\t(IN ADMIN-CORRIDOR-S)\n\t(DESC \"crevice\")\n\t(SYNONYM CREVICE CRACK HOLE)\n\t(ADJECTIVE NARROW JAGGED)\n\t(FLAGS NDESCBIT)\n\t(ACTION CREVICE-F)>\n\n<ROUTINE CREVICE-F ()\n\t <COND (<VERB? REACH>\n\t\t<TELL \"The crevice is too narrow to reach into.\" CR>)\n\t       (<VERB? LOOK-INSIDE EXAMINE SEARCH>\n\t\t<COND (<FSET? ,KEY ,TOUCHBIT>\n\t\t       <TELL \"Nothing there but bunches of dust.\" CR>)\n\t\t      (T\n\t\t       <FCLEAR ,KEY ,INVISIBLE>\n\t\t       <TELL\n\"Lying at the bottom of the narrow crack, partly covered by layers of dust,\nis a shiny steel key!\" CR>)>)>>\n\n<OBJECT KEY\n\t(IN ADMIN-CORRIDOR-S)\n\t(DESC \"key\")\n\t(FDESC \"Lying at the bottom of a narrow crevice is a shiny object.\")\n\t(SIZE 3)\n\t(SYNONYM KEY METAL OBJECT)\n\t(ADJECTIVE PIECE STEEL IRON SHINY)\n\t(FLAGS ACIDBIT TAKEBIT TOOLBIT INVISIBLE TRYTAKEBIT)\n\t(ACTION KEY-F)>\n\n<ROUTINE KEY-F ()\n\t <COND (<AND <VERB? TAKE ZATTRACT MOVE>\n\t\t     <NOT <FSET? ,KEY ,TOUCHBIT>>>\n\t        <COND (<EQUAL? ,PRSI ,PLIERS>\n\t\t       <TELL\n\"These are heavy-duty pliers, too large to reach into this narrow crack.\" CR>)\n\t\t      (<EQUAL? ,PRSI ,MAGNET>\n\t\t       <PERFORM ,V?ATTRACT ,MAGNET ,KEY>\n\t\t       <RTRUE>)\n\t\t      (,PRSI\n\t\t       <TELL \"Nice try.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"Either the crevice is too narrow, or your fingers are too large.\" CR>)>)\n\t       (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,CREVICE>>\n\t\t<TELL\n\"And you wonder why you're still only an Ensign Seventh Class?\" CR>)>>\n\n<ROOM ADMIN-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Admin Corridor\") \n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO ADMIN-CORRIDOR-S)\n      (NORTH PER LADDER-EXIT-F)\n      (WEST TO SYSTEMS-MONITORS)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL RIFT)\n      (PSEUDO \"RUBBLE\" RUBBLE-PSEUDO)\n      (ACTION ADMIN-CORRIDOR-F)>\n\n<ROUTINE ADMIN-CORRIDOR-F (RARG)\n\t <COND (<AND ,LADDER-FLAG\n\t\t     <EQUAL? .RARG ,M-ENTER>>\n\t\t<MOVE ,LADDER ,HERE>)\n\t       (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL \n\"The hallway, in fact the entire building, has been rent apart here, presumably\nby seismic upheaval. You can see the sky through the severed roof above, and\nthe ground is thick with rubble. To the north is a gaping rift, at least eight\nmeters across and thirty meters deep. \">\n\t\t<COND (,LADDER-FLAG\n\t\t       <TELL \"A metal ladder spans the rift. \">)>\n\t\t<TELL\n\"A wide doorway, labelled \\\"Sistumz Moniturz,\\\" leads west.\" CR>)>>\n\n<ROOM ADMIN-CORRIDOR-N\n      (IN ROOMS)\n      (DESC \"Admin Corridor North\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH PER LADDER-EXIT-F)\n      (NORTH TO TRANSPORTATION-SUPPLY)\n      (EAST TO PLAN-ROOM)\n      (WEST TO SMALL-OFFICE)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 4)\n      (GLOBAL RIFT)\n      (ACTION ADMIN-CORRIDOR-N-F)>\n\n<ROUTINE ADMIN-CORRIDOR-N-F (RARG)\n\t <COND (<AND ,LADDER-FLAG\n\t\t     <EQUAL? .RARG ,M-ENTER>>\n\t\t<MOVE ,LADDER ,HERE>)\n\t       (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"The corridor ends here. Portals lead west, north, and east. Signs above these\nportals read, respectively, \\\"Administraativ Awfisiz,\\\" \\\"Tranzportaashun\nSuplii,\\\" and \\\"Plan Ruum.\\\" To the south is a wide rift\">\n\t\t<COND (,LADDER-FLAG\n\t\t       <TELL \", spanned by a metal ladder,\">)>\n\t\t<TELL\n\" separating this area from the rest of the building.\" CR>)>>\n\n<ROUTINE LADDER-EXIT-F ()\n\t <COND (,LADDER-FLAG\n\t\t<SETG C-ELAPSED 33>\n\t\t<TELL\n\"You slowly make your way across the swaying ladder. You can see sharp,\npointy rocks at the bottom of the rift, far below...\" CR CR>\n\t\t<COND (<EQUAL? ,HERE ,ADMIN-CORRIDOR-N>\n\t\t       ,ADMIN-CORRIDOR)\n\t\t      (T\n\t\t       ,ADMIN-CORRIDOR-N)>)\n\t       (T\n\t\t<TELL \"The rift is too wide to jump across.\" CR>\n\t\t<RFALSE>)>>\n\n<OBJECT RIFT\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"rift\")\n\t(SYNONYM RIFT GULF PRECIPICE HOLE)\n\t(ADJECTIVE WIDE DEEP GAPING)\n\t(FLAGS NDESCBIT)\n\t(ACTION RIFT-F)>\n\n<ROUTINE RIFT-F ()\n\t <COND (<VERB? LEAP>\n\t\t<JIGS-UP\n\"You get a brief (but much closer) view of the sharp and nasty rocks at\nthe bottom of the rift.\">)\n\t       (<AND <VERB? PUT>\n\t\t     <EQUAL? ,RIFT ,PRSI>>\n\t\t<COND (<EQUAL? ,PRSO ,LASER>\n\t\t\t      <DISABLE <INT I-WARMTH>>)>\n\t\t<REMOVE ,PRSO>\n\t\t<COND (<EQUAL? ,PRSO ,SCRUB-BRUSH>\n\t\t       <TELL\n\"You watch with tremendous satisfaction as the brush is lost forever.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"The \" D, PRSO \" sails gracefully into the rift.\" CR>)>)\n\t       (<VERB? EXAMINE LOOK-INSIDE>\n\t\t<TELL\n\"The rift is at least eight meters wide and more than thirty meters deep. The\nbottom is covered with sharp and nasty rocks.\" CR>)>>\n\n<ROOM SANFAC-E\n      (IN ROOMS)\n      (DESC \"SanFac E\")\n      (LDESC\n\"Here is another sanitary facility. Like the others, it is dusty and\nnon-functional.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO ADMIN-CORRIDOR-S)\n      (OUT TO ADMIN-CORRIDOR-S)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)>\n\n<ROOM SYSTEMS-MONITORS\n      (IN ROOMS)\n      (DESC \"Systems Monitors\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO ADMIN-CORRIDOR)\n      (OUT TO ADMIN-CORRIDOR)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (GLOBAL TABLES)\n      (PSEUDO \"MONITORS\" MONITORS-PSEUDO \"EQUIPM\" EQUIPMENT-PSEUDO)\n      (ACTION SYSTEMS-MONITORS-F)>\n\n<ROUTINE SYSTEMS-MONITORS-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a large room filled with tables full of strange equipment. \">\n\t\t<DESCRIBE-MONITORS>)>>\n\n<ROUTINE DESCRIBE-MONITORS ()\n\t <TELL\n\"The far wall is filled with a number of monitors. Of these,\nthe ones labelled \">\n\t <COND (,DEFENSE-FIXED\n\t\t<TELL \"PLANATEREE DEFENS, \">)>\n\t <COND (,COURSE-CONTROL-FIXED\n\t\t<TELL \"PLANATEREE KORS KUNTROOL, \">)>\n\t <COND (,COMM-FIXED\n\t\t<TELL \"KUMUUNIKAASHUNZ, \">)>\n\t <TELL\n\"LIIBREREE, REEAKTURZ, and LIIF SUPORT are green, but the one\">\n\t <COND (<NOT <AND ,DEFENSE-FIXED\n\t\t\t  ,COURSE-CONTROL-FIXED\n\t\t\t  ,COMM-FIXED>>\n\t\t<TELL \"s\">)>\n\t <TELL \" labelled \">\n\t <COND (<NOT ,DEFENSE-FIXED>\n\t\t<TELL \"PLANATEREE DEFENS, \">)>\n\t <COND (<NOT ,COURSE-CONTROL-FIXED>\n\t\t<TELL \"PLANATEREE KORS KUNTROOL, \">)>\n\t <COND (<NOT ,COMM-FIXED>\n\t\t<TELL \"KUMUUNIKAASHUNZ, \">)>\n\t <COND (<NOT <AND ,DEFENSE-FIXED\n\t\t\t  ,COURSE-CONTROL-FIXED\n\t\t\t  ,COMM-FIXED>>\n\t\t<TELL \"and \">)>\n\t <TELL \"PRAJEKT KUNTROOL indicate\">\n\t <COND (<AND ,DEFENSE-FIXED ,COURSE-CONTROL-FIXED ,COMM-FIXED>\n\t\t<TELL \"s\">)>\n\t <TELL \" a malfunctioning condition.\" CR>>\n\n<ROOM PLAN-ROOM\n      (IN ROOMS)\n      (DESC \"Plan Room\")\n      (LDESC\n\"This is a small room whose far wall is covered with many small cubbyholes,\nall empty. The left wall is covered with an enormous map, labelled\n\\\"Kalamontee Kompleks\\\", showing two installations connected by a long\nhallway. Near the upper part of this map is a red arrow saying \\\"Yuu ar\nheer.\\\" The right wall is covered with a similar map, labelled \\\"Lawanda\nKompleks\\\", showing two installations, one apparently buried deep\nunderground.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO ADMIN-CORRIDOR-N)\n      (FLAGS RLANDBIT ONBIT FLOYDBIT)\n      (PSEUDO \"CUBBYHOLE\" CUBBYHOLE-PSEUDO \"MAPS\" MAPS-PSEUDO)>\n\n<ROOM TRANSPORTATION-SUPPLY\n      (IN ROOMS)\n      (DESC \"Transportation Supply\")\n      (LDESC \"You have just located a serious bug.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH TO ADMIN-CORRIDOR-N)\n      (NORTH TO TRANSPORTATION-SUPPLY)\n      (EAST TO TRANSPORTATION-SUPPLY)\n      (WEST TO TRANSPORTATION-SUPPLY)\n      (OUT TO ADMIN-CORRIDOR-N)\n      (FLAGS RLANDBIT)>\n\n<ROOM SMALL-OFFICE\n      (IN ROOMS)\n      (DESC \"Small Office\")\n      (LDESC\n\"You have entered a small office of some sort. A small desk faces the main\ndoorway which lies to the east. Another exit leads west.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO ADMIN-CORRIDOR-N)\n      (WEST TO LARGE-OFFICE)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)>\n\n<OBJECT SMALL-DESK\n\t(IN SMALL-OFFICE)\n\t(DESC \"small desk\")\n\t(SYNONYM DESK DRAWER)\n\t(ADJECTIVE SMALL)\n\t(CAPACITY 10)\n\t(FLAGS NDESCBIT CONTBIT SEARCHBIT)\n\t(ACTION DESK-F)>\n\n<OBJECT KITCHEN-CARD\n\t(IN SMALL-DESK)\n\t(DESC \"kitchen access card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE KITCHEN ACCESS)\n\t(SIZE 3)\n\t(FLAGS TAKEBIT READBIT)\n        (TEXT \"The card is embossed \\\"kitcin akses kard.\\\"\")\n\t(VALUE 1)>\n\n<OBJECT UPPER-ELEVATOR-CARD\n\t(IN SMALL-DESK)\n\t(DESC \"upper elevator access card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE UPPER ELEVATOR ACCESS)\n\t(SIZE 3)\n\t(FLAGS VOWELBIT TAKEBIT READBIT)\n\t(TEXT \"The card is embossed \\\"upur elivaatur akses kard.\\\"\")\n\t(VALUE 1)>\n\n<OBJECT SHUTTLE-CARD\n\t(IN LARGE-DESK)\n\t(DESC \"shuttle access card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE SHUTTL ACCESS)\n\t(SIZE 3)\n\t(FLAGS TAKEBIT READBIT)\n\t(TEXT \"The card is embossed \\\"shutul akses kard.\\\"\")\n\t(VALUE 1)>\n\n<OBJECT LOWER-ELEVATOR-CARD\n\t(DESC \"lower elevator access card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE LOWER ELEVATOR ACCESS)\n\t(SIZE 3)\n\t(FLAGS TAKEBIT READBIT)\n\t(TEXT \"The card is embossed \\\"loowur elivaatur akses kard.\\\"\")\n\t(VALUE 1)>\n\n<ROOM LARGE-OFFICE\n      (IN ROOMS)\n      (DESC \"Large Office\")\n      (LDESC\n\"This is a large, plush office. The far wall is one large picture window,\nscratched but unbroken, offering a view of this installation and the ocean\nbeyond. In front of the window is a wide wooden desk. The only exit is east.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO SMALL-OFFICE)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (GLOBAL WINDOW OCEAN)>\n\n<OBJECT LARGE-DESK\n\t(IN LARGE-OFFICE)\n\t(DESC \"large desk\")\n\t(SYNONYM DESK DRAWER)\n\t(ADJECTIVE LARGE WIDE WOODEN)\n\t(CAPACITY 20)\n\t(FLAGS CONTBIT SEARCHBIT NDESCBIT)\n\t(ACTION DESK-F)>\n\n<ROUTINE DESK-F ()\n\t <COND (<VERB? SEARCH EXAMINE>\n\t\t<TELL \"The desk has a drawer which is currently \">\n\t\t<DDESC ,PRSO>\n\t\t<TELL \".\" CR>)>>\n\n<ROOM MECH-CORRIDOR-N\n      (IN ROOMS)\n      (DESC \"Mech Corridor North\")\n      (LDESC\n\"Entrances to rooms lie to the east and west from this north-south hall.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO STORAGE-EAST)\n      (WEST TO PHYSICAL-PLANT)\n      (NORTH TO CORRIDOR-JUNCTION)\n      (SOUTH TO MECH-CORRIDOR)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM MECH-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Mech Corridor\")\n      (LDESC\n\"Entrances to rooms lie to the east and west from this north-south hall.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO REACTOR-CONTROL)\n      (WEST TO PHYSICAL-PLANT)\n      (NORTH TO MECH-CORRIDOR-N)\n      (SOUTH TO MECH-CORRIDOR-S)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM MECH-CORRIDOR-S\n      (IN ROOMS)\n      (DESC \"Mech Corridor South\")\n      (LDESC\n\"The corridor ends here with doorways to the southwest, south, and southeast.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"  25  ;\"SOUTH\"  0 \n\t ;\"SE\" 25 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO MECH-CORRIDOR)\n      (SW TO TOOL-ROOM)\n      (SOUTH TO MACHINE-SHOP)\n      (SE TO ROBOT-SHOP)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM STORAGE-EAST\n      (IN ROOMS)\n      (DESC \"Storage East\")\n      (LDESC\n\"A small room for storage. The exit is to the west.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO MECH-CORRIDOR-N)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL SHELVES)>\n\n<OBJECT OIL-CAN\n\t(IN STORAGE-EAST)\n\t(DESC \"oil can\")\n\t(FDESC\n\"One dusty shelf, otherwise bare, holds a small oil can.\")\n\t(SYNONYM CAN)\n\t(ADJECTIVE SMALL OIL)\n\t(SIZE 10)\n\t(FLAGS VOWELBIT TAKEBIT)\n\t(ACTION OIL-CAN-F)>\n\n<ROUTINE OIL-CAN-F ()\n\t <COND (<VERB? POUR>\n\t\t<COND (<NOT ,PRSI>\n\t\t       <SETG PRSI ,GROUND>)>\n\t\t<PERFORM ,V?OIL ,PRSI>\n\t\t<RTRUE>)\n\t       (<VERB? EMPTY>\n\t\t<TELL\n\"Pretty much impossible -- you could only do that one drop at a time.\" CR>)>>\n\n<OBJECT CARTON\n\t(IN STORAGE-EAST)\n\t(DESC \"cardboard box\")\n\t(FDESC\n\"On the floor beneath the shelves sits a small cardboard box.\")\n\t(SYNONYM BOX CARTON)\n\t(ADJECTIVE SMALL CARDBOARD)\n\t(SIZE 10)\n\t(CAPACITY 50)\n\t(FLAGS TAKEBIT CONTBIT SEARCHBIT OPENBIT)\n\t(ACTION CARTON-F)>\n\n<ROUTINE CARTON-F ()\n\t <COND (<VERB? CLOSE>\n\t\t<NO-CLOSE>\n\t\t<RTRUE>)>>\n\n<OBJECT CRACKED-BOARD\n\t(IN CARTON)\n\t(DESC \"cracked seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE CRACKED SEVENTEEN CENTIMETER FROMITZ)\n\t(SIZE 10)\n\t(FLAGS ACIDBIT TAKEBIT)\n\t(ACTION CRACKED-BOARD-F)>\n\n<ROUTINE CRACKED-BOARD-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<EXAMINE-BOARD>\n\t\t<TELL \" This one looks as though it's been dropped.\" CR>)>>\n\n<OBJECT MEGAFUSE-B\n\t(IN CARTON)\n\t(DESC \"B-series megafuse\")\n\t(SYNONYM FUSE MEGAFUSE)\n\t(ADJECTIVE B-SERIES B SERIES MEGA)\n\t(SIZE 5)\n\t(FLAGS ACIDBIT TAKEBIT)>\n\n<OBJECT MEGAFUSE-K\n\t(IN CARTON)\n\t(DESC \"K-series megafuse\")\n\t(SYNONYM FUSE MEGAFUSE)\n\t(ADJECTIVE K-SERIES K SERIES MEGA)\n\t(SIZE 5)\n\t(FLAGS ACIDBIT TAKEBIT)>\n\n<OBJECT GOOD-BEDISTOR\n\t(IN CARTON)\n\t(DESC \"good ninety-ohm bedistor\")\n\t(SYNONYM BEDISTOR)\n\t(ADJECTIVE GOOD NINETY OHM)\n\t(SIZE 8)\n\t(FLAGS ACIDBIT TAKEBIT)\n\t(ACTION GOOD-BEDISTOR-F)>\n\n<ROUTINE GOOD-BEDISTOR-F ()\n\t <COND (<AND <VERB? TAKE>\n\t\t     ,COURSE-CONTROL-FIXED>\n\t\t<JIGS-UP\n\"Kerzap!! You should know better than to touch an active bedistor!\">)>>\n\n<ROOM PHYSICAL-PLANT\n      (IN ROOMS)\n      (DESC \"Physical Plant\")\n      (LDESC\n\"This is a huge, dim room with exits in the northeast and southeast\ncorners. The room is criss-crossed with catwalks and is filled with\nheavy equipment presumably intended to heat and ventilate this complex.\nHardly any of the equipment is still operating.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NE TO MECH-CORRIDOR-N)\n      (SE TO MECH-CORRIDOR)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (PSEUDO \"EQUIPM\" EQUIPMENT-PSEUDO \"CATWALK\" CATWALK-PSEUDO)>\n\n<ROOM REACTOR-CONTROL\n      (IN ROOMS)\n      (DESC \"Reactor Control\")\n      (LDESC\n\"This room contains many dials and gauges for controlling a massive planetary\npower reactor which, according to a diagram on the wall, must be buried far\nbelow this very complex. The exit is to the west. To the east is a metal door,\nand next to it, a button. A dark stairway winds downward.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"20  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO MECH-CORRIDOR)\n      (EAST TO REACTOR-ELEVATOR IF REACTOR-ELEVATOR-DOOR IS OPEN)\n      (IN TO REACTOR-ELEVATOR IF REACTOR-ELEVATOR-DOOR IS OPEN)\n      (DOWN TO REACTOR-ACCESS-STAIRS)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (PSEUDO \"BUTTON\" REACTOR-BUTTON-PSEUDO \"DIAGRAM\" DIAGRAM-PSEUDO)\n      (GLOBAL CONTROLS STAIRS REACTOR-ELEVATOR-DOOR)>\n\n<ROOM REACTOR-ACCESS-STAIRS\n      (IN ROOMS)\n      (DESC \"Reactor Access Stairs\")\n      (LDESC \"You have just located a serious bug.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"    30\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN TO REACTOR-ACCESS-STAIRS)\n      (UP TO REACTOR-CONTROL)\n      (FLAGS RLANDBIT)\n      (GLOBAL STAIRS)> \n\n<OBJECT REACTOR-ELEVATOR-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"reactor elevator door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE REACTOR ELEVATOR)\n\t(FLAGS DOORBIT)\n\t(ACTION REACTOR-ELEVATOR-DOOR-F)>\n\n<ROUTINE REACTOR-ELEVATOR-DOOR-F ()\n\t <COND (<VERB? OPEN CLOSE>\n\t\t<TELL \"It won't budge.\" CR>)>>\n\n<ROUTINE I-REACTOR-DOOR-CLOSE ()\n\t <ENABLE <QUEUE I-REACTOR-DOOR-CLOSE -1>>\n\t <COND (<NOT <EQUAL? ,HERE ,REACTOR-ELEVATOR>>\n\t\t<FCLEAR ,REACTOR-ELEVATOR-DOOR ,OPENBIT>\n\t\t<COND (<EQUAL? ,HERE ,REACTOR-CONTROL>\n\t\t       <TELL CR \"The elevator door slides shut.\" CR>)>\n\t\t<DISABLE <INT I-REACTOR-DOOR-CLOSE>>)>>\n\n<ROOM REACTOR-ELEVATOR\n      (IN ROOMS)\n      (DESC \"Reactor Elevator\")\n      (LDESC\n\"This is an elevator with a door to the west, currently open. A control panel\ncontains an Up button, a Down button, and a small slot.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO REACTOR-CONTROL)\n      (OUT TO REACTOR-CONTROL)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL REACTOR-ELEVATOR-DOOR SLOT ELEVATOR-BUTTON CONTROLS)> \n\n<ROOM TOOL-ROOM\n      (IN ROOMS)\n      (DESC \"Tool Room\")\n      (LDESC\n\"This is apparently a storage room for tools. Exits lead northeast and east.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"  25  ;\"NORTH\"  0>)\n      (NE TO MECH-CORRIDOR-S)\n      (EAST TO MACHINE-SHOP)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL SHELVES)>\n\n;\"LASER stuff has been moved to COMPTWO with the inside-the-computer stuff\"\n\n<OBJECT FLASK\n\t(IN TOOL-ROOM)\n\t(DESC \"glass flask\")\n\t(FDESC\n\"Sitting on the floor below the lowest shelf is a large glass flask.\")\n\t(SYNONYM FLASK)\n\t(ADJECTIVE GLASS LARGE PLASTIC)\n\t(SIZE 10)\n\t(CAPACITY 2)\n\t(FLAGS CONTBIT SEARCHBIT OPENBIT TAKEBIT)\n\t(ACTION FLASK-F)>\n\n<ROUTINE FLASK-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"The flask has a wide mouth and looks large enough to hold one or two liters.\nIt is made of glass, or perhaps some tough plastic\">\n\t\t<COND (<IN? ,CHEMICAL-FLUID ,FLASK>\n\t\t       <TELL \", and is filled with a milky white fluid\">)>\n\t\t<TELL \".\" CR>)\n\t       (<VERB? CLOSE>\n\t\t<NO-CLOSE>\n\t\t<RTRUE>)\n\t       (<AND <VERB? EMPTY>\n\t\t     <IN? ,CHEMICAL-FLUID ,FLASK>\n\t\t     <EQUAL?  ,PRSI ,FUNNEL-HOLE>>\n\t\t<PERFORM ,V?POUR ,CHEMICAL-FLUID ,FUNNEL-HOLE>\n\t\t<RTRUE>)>>\n\n<OBJECT MAGNET\n\t(IN TOOL-ROOM)\n\t(SIZE 10)\n\t(DESC \"curved metal bar\")\n\t(FDESC \"On an upper shelf is a metal bar, curved into a U-shape.\")\n\t(SYNONYM MAGNET BAR)\n\t(ADJECTIVE CURVED METAL HORSESHOE)\n\t(FLAGS TRYTAKEBIT TAKEBIT)\n\t(ACTION MAGNET-F)>\n\n<ROUTINE MAGNET-F ()\n\t <COND (<VERB? TAKE>\n\t\t<ENABLE <QUEUE I-MAGNET -1>>\n\t\t<RFALSE>)\n\t       (<VERB? ATTRACT PUT-ON>\n\t\t<COND (<AND <EQUAL? ,PRSO ,MAGNET>\n\t\t\t    <NOT <IN? ,MAGNET ,ADVENTURER>>>\n\t\t       <NOT-HOLDING>)\n\t\t      (<AND <FSET? ,KEY ,TOUCHBIT>\n\t\t\t    <EQUAL? ,PRSI ,KEY>>\n\t\t       <MOVE ,KEY ,ADVENTURER>\n\t\t       <TELL\n\"The key jumps against the ends of the magnet and sticks there. Proud of your\nfeat, you remove the key from the magnet.\" CR>)\n\t\t      (<AND <NOT <FSET? ,KEY ,TOUCHBIT>>\n\t\t\t    <EQUAL? ,PRSI ,KEY ,CREVICE>>\n\t\t       <MOVE ,KEY ,ADVENTURER>\n\t\t       <FCLEAR ,KEY ,INVISIBLE>\n\t\t       <FCLEAR ,KEY ,TRYTAKEBIT>\n\t\t       <FSET ,KEY ,TOUCHBIT>\n\t\t       <TELL \n\"With a spray of dust and a loud clank, a piece of metal leaps from the\ncrevice and affixes itself to the magnet. It is a steel key! With a tug,\nyou remove the key from the magnet.\" CR>)>)>>\n\n<ROUTINE I-MAGNET ()\n\t <COND (<IN? ,MAGNET ,ADVENTURER>\n\t\t<COND (<HELD? ,KITCHEN-CARD>\n\t\t       <FSET ,KITCHEN-CARD ,SCRAMBLEDBIT>)\n\t\t      (<HELD? ,SHUTTLE-CARD>\n\t\t       <FSET ,SHUTTLE-CARD ,SCRAMBLEDBIT>)\n\t\t      (<HELD? ,TELEPORTATION-CARD>\n\t\t       <FSET ,TELEPORTATION-CARD ,SCRAMBLEDBIT>)\n\t\t      (<HELD? ,UPPER-ELEVATOR-CARD>\n\t\t       <FSET ,UPPER-ELEVATOR-CARD ,SCRAMBLEDBIT>)\n\t\t      (<HELD? ,LOWER-ELEVATOR-CARD>\n\t\t       <FSET ,LOWER-ELEVATOR-CARD ,SCRAMBLEDBIT>)\n\t\t      (<HELD? ,MINI-CARD>\n\t\t       <FSET ,MINI-CARD ,SCRAMBLEDBIT>)\n\t\t      (<HELD? ,ID-CARD>\n\t\t       <FSET ,ID-CARD ,SCRAMBLEDBIT>)>)\n\t       (T\n\t\t<DISABLE <INT I-MAGNET>>)>\n\t <RFALSE>>\n\n<OBJECT PLIERS\n\t(IN TOOL-ROOM)\n\t(DESC \"pair of wide-nosed pliers\")\n\t(SYNONYM PAIR PLIERS)\n\t(ADJECTIVE WIDE-NOSED WIDE NOSED)\n\t(SIZE 15)\n\t(FLAGS TAKEBIT)>\n\n<ROOM MACHINE-SHOP\n      (IN ROOMS)\n      (DESC \"Machine Shop\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO MECH-CORRIDOR-S)\n      (EAST TO ROBOT-SHOP)\n      (WEST TO TOOL-ROOM)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (PSEUDO \"SPOUT\" CHEM-SPOUT-PSEUDO)\n      (ACTION MACHINE-SHOP-F)>\n\n<ROUTINE MACHINE-SHOP-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This room is probably some sort of machine shop filled with a variety\nof unusual machines. Doorways lead north, east, and west.|\n|\nStanding against the rear wall is a large dispensing machine with a\nspout. \">\n\t\t<COND (<NOT <EQUAL? ,SPOUT-PLACED ,GROUND>>\n\t\t       <TELL\n\"Sitting under the spout is \">\n\t\t       <COND (<FSET? ,SPOUT-PLACED ,VOWELBIT>\n\t\t\t      <TELL \"an \">)\n\t\t\t     (T\n\t\t\t      <TELL \"a \">)>\n\t\t       <TELL D ,SPOUT-PLACED\". \">)>\n\t\t<TELL\n\"The dispenser is lined with brightly-colored buttons. The first four\nbuttons, labelled \\\"KUULINTS 1 - 4\\\", are colored red, blue, green, and\nyellow. The next three buttons, labelled \\\"KATALISTS 1 - 3\\\", are colored\ngray, brown, and black. The last two buttons are both white. One of\nthese is square and says \\\"BAAS.\\\" The other white button is round and\nsays \\\"ASID.\\\"\" CR>)\n\t       (<AND <EQUAL? .RARG ,M-END>\n\t\t     <EQUAL? ,SPOUT-PLACED ,GROUND>\n\t\t     <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>\n\t\t     <PROB 15>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL\n\"Floyd pushes one of the dispenser buttons. Fluid pours from the spout and\nsplashes across the floor. Floyd jumps up and down, giggling.\" CR>)>>\n\n<OBJECT CHEMICAL-DISPENSER\n\t(IN MACHINE-SHOP)\n\t(DESC \"chemical dispenser\")\n\t(SYNONYM DISPEN MACHIN)\n\t(ADJECTIVE DISPEN LARGE CHEMICAL)\n\t(FLAGS MUNGBIT NDESCBIT)\n\t(ACTION CHEMICAL-DISPENSER-F)>\n\n<GLOBAL SPOUT-PLACED <>>\n\n<ROUTINE CHEMICAL-DISPENSER-F ()\n\t <COND (<AND <VERB? PUT-UNDER>\n\t\t     <EQUAL? ,PRSI ,CHEMICAL-DISPENSER>>\n\t\t<COND (<EQUAL? ,SPOUT-PLACED ,GROUND>\n\t\t       <MOVE ,PRSO ,HERE>\n\t\t       <TELL\n\"The \" D ,PRSO \" is now sitting under the spout.\" CR>\n\t\t       <SETG SPOUT-PLACED ,PRSO>)\n\t\t      (T\n\t\t       <TELL\n\"The \" D ,SPOUT-PLACED \" is already resting under the spout.\" CR>)>)>>\n\n<OBJECT RED-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"red button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE RED)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 1)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT BLUE-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"blue button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BLUE)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 2)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT GREEN-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"green button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE GREEN)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 3)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT YELLOW-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"yellow button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE YELLOW)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 4)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT GRAY-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"gray button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE GRAY GREY)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 5)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT BROWN-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"brown button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BROWN)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 6)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT BLACK-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"black button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BLACK)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 7)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT ROUND-WHITE-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"round white button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE WHITE ROUND)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 8)\n\t(ACTION CHEM-BUTTON-F)>\n\n<OBJECT SQUARE-WHITE-BUTTON\n\t(IN MACHINE-SHOP)\n\t(DESC \"square white button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE SQUARE WHITE)\n\t(FLAGS NDESCBIT)\n\t(C-MOVE 9)\n\t(ACTION CHEM-BUTTON-F)>\n\n<GLOBAL CHEMICAL-FLAG 0>\n\n<GLOBAL COLOR-LTBL\n\t <PLTABLE\n\t  \"red\"\n\t  \"blue\"\n\t  \"green\"\n\t  \"yellow\"\n\t  \"gray\"\n\t  \"brown\"\n\t  \"black\"\n\t  \"clear\"\n\t  \"clear\">>\n\n<ROUTINE CHEM-BUTTON-F ()\n\t <COND (<VERB? PUSH>\n\t\t<COND (<FSET? ,CHEMICAL-DISPENSER ,MUNGEDBIT>\n\t\t       <TELL\n\"The machine coughs a few times, but nothing else happens.\" CR>)\n\t\t      (<EQUAL? ,SPOUT-PLACED ,FLASK>\n\t\t       <COND (<IN? ,CHEMICAL-FLUID ,FLASK>\n\t\t\t      <TELL\n\"Another dose of the chemical fluid pours out of the spout, splashes over\nthe already-full flask, spills onto the floor, and dries up.\" CR>)\n\t\t\t     (T\n\t\t\t      <MOVE ,CHEMICAL-FLUID ,FLASK>\n\t\t\t      <TELL \"The flask fills with some \">\n\t\t\t      <SETG CHEMICAL-FLAG <GETP ,PRSO ,P?C-MOVE>>\n\t\t\t      <TELL <GET ,COLOR-LTBL <GETP ,PRSO ,P?C-MOVE>>>\n\t\t\t      <TELL\n\" chemical fluid. The fluid gradually turns milky white.\" CR>)>)\n\t\t      (<AND <EQUAL? ,SPOUT-PLACED ,CANTEEN>\n\t\t\t    <FSET? ,CANTEEN ,OPENBIT>>\n\t\t       <TELL\n\"Chemical fluid gushes from the spout. Unfortunately, the mouth of the canteen\nis very narrow, and the fluid just splashes over it.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"Some sort of chemical fluid pours out of the spout, spills all over the \"\nD ,SPOUT-PLACED \", and dries up.\" CR>\n\t\t       <COND (<AND <EQUAL? ,PRSO ,ROUND-WHITE-BUTTON\n\t\t\t\t\t         ,SQUARE-WHITE-BUTTON>\n\t\t\t\t   <OR <FSET? ,SPOUT-PLACED ,ACIDBIT>\n\t\t\t\t       <FSET? ,SPOUT-PLACED ,MUNGBIT>>>\n\t\t\t      <SETG CHEMICAL-FLAG 9>\n\t\t\t      <PERFORM ,V?POUR ,CHEMICAL-FLUID ,SPOUT-PLACED>\n\t\t\t      <RTRUE>)>\n\t\t       <RTRUE>)>)>>\n\n<ROOM ROBOT-SHOP\n      (IN ROOMS)\n      (DESC \"Robot Shop\")\n      (LDESC\n\"This room, with exits west and northwest, is filled with robot-like\ndevices of every conceivable description, all in various states of\ndisassembly.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\" 25 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO MACHINE-SHOP)\n      (NW TO MECH-CORRIDOR-S)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (PSEUDO \"DEVICE\" DEVICES-PSEUDO)>\n\n<OBJECT FLOYD\n\t(IN ROBOT-SHOP)\n\t(DESC \"multiple purpose robot\")\n\t(FDESC\n\"Only one robot, about four feet high, looks even remotely close to being\nin working order.\")\n\t(SYNONYM FLOYD COMPAR ROBOT COMPAN)\n\t(ADJECTIVE MULTIP PURPOS DIM- DIM WITTED)\n\t(FLAGS CONTBIT SEARCHBIT TRANSBIT OPENBIT LIGHTBIT)\n\t(CAPACITY 5)\n\t(ACTION FLOYD-F)>\n\n<GLOBAL CARD-STOLEN <>> ;\"true if you took elev. card from turned-off Floyd\"\n\n<ROUTINE FLOYD-F (\"AUX\" X N)\n\t <COND (<EQUAL? ,FLOYD ,WINNER>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<COND (<AND <VERB? GIVE>\n\t\t\t    <EQUAL? ,PRSI ,ME>>\n\t\t       <SETG WINNER ,ADVENTURER>\n\t\t       <PERFORM ,V?ASK-FOR ,FLOYD ,PRSO>\n\t\t       <RTRUE>)\n\t\t      (<AND <VERB? SGIVE>\n\t\t\t    <EQUAL? ,PRSO ,ME>>\n\t\t       <SETG WINNER ,ADVENTURER>\n\t\t       <PERFORM ,V?ASK-FOR ,FLOYD ,PRSI>\n\t\t       <RTRUE>)\n\t\t      (<VERB? WALK>\n\t\t       <COND (<AND <EQUAL? ,HERE ,REPAIR-ROOM>\n\t\t\t\t   <EQUAL? ,PRSO ,P?NORTH ,P?IN>>\n\t\t\t      <FLOYD-THROUGH-HOLE>)\n\t\t\t     (<AND <EQUAL? ,HERE ,BIO-LOCK-EAST>\n\t\t\t\t   <EQUAL? ,PRSO ,P?EAST>>\n\t\t\t      <FLOYD-INTO-LAB>)\n\t\t\t     (<AND <EQUAL? ,HERE ,RADIATION-LOCK-EAST>\n\t\t\t\t   <EQUAL? ,PRSO ,P?EAST>>\n\t\t\t      <TELL\"\\\"After you.\\\"\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"Floyd looks slightly embarrassed. \\\"You know me and my sense of direction.\\\"\nThen he looks up at you with wide, trusting eyes. \\\"Tell Floyd\na story?\\\"\" CR>)>\n\t\t       <COND (<FLUSH>\n\t\t\t      <RFATAL>)>\n\t\t       <RTRUE>)\n\t\t      (<VERB? THROUGH>\n\t\t       <FLOYDS-FAMOUS-DOOR-ROUTINE>\n\t\t       <COND (<FLUSH> <RFATAL>)>\n\t\t       <RTRUE>)\n\t\t      (<AND <VERB? TAKE>\n\t\t\t    <EQUAL? ,PRSO ,GOOD-BOARD>>\n\t\t       <COND (<NOT <IN? ,GOOD-BOARD ,ROBOT-HOLE>>\n\t\t\t      <TELL\n\"Floyd looks half-bored and half-annoyed. \"\"Floyd already did that.\nHow about some leap-frogger?\\\"\" CR>)\n\t\t\t     (,BOARD-REPORTED\n\t\t\t      <MOVE ,GOOD-BOARD ,ADVENTURER>\n\t\t\t      <FCLEAR ,GOOD-BOARD ,NDESCBIT>\n\t\t\t      <FSET ,GOOD-BOARD ,TAKEBIT>\n\t\t\t      <SETG C-ELAPSED 22>\n\t\t\t      <TELL\n\"Floyd shrugs. \\\"If you say so.\\\" He vanishes for a few minutes, and returns\nholding the fromitz board. It seems to be in good shape. He tosses it toward\nyou, and you just manage to catch it before it smashes.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"\\\"Huh?\\\" asks Floyd. \\\"What fromitz board?\\\"\" CR>)>)\n\t\t      (<AND <VERB? FOLLOW>\n\t\t\t    <EQUAL? ,PRSO ,ME>>\n\t\t       <TELL \"\\\"Okay!\\\"\" CR>)\n\t\t      (<VERB? HELLO>\n\t\t       <SETG WINNER ,ADVENTURER>\n\t\t       <PERFORM ,V?HELLO ,FLOYD>\n\t\t       <RTRUE>)\n\t\t      (<VERB? DROP>\n\t\t       <COND (<IN? ,PRSO ,FLOYD>\n\t\t\t      <COND (<PROB 50>\n\t\t\t\t     <MOVE ,PRSO ,HERE>\n\t\t\t\t     <TELL\n\"Floyd shrugs and drops the \" D ,PRSO \".\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <TELL\n\"Floyd clutches the \" D ,PRSO \" even more tightly. \\\"Floyd won't,\\\" he says\ndefiantly.\" CR>)>)\n\t\t\t     (T\n\t\t\t      <FLOYD-NOT-HAVE>)>)\n\t\t      (T\n\t\t       <TELL\n\"Floyd whines, \\\"Enough talking! Let's play Hider-and-Seeker.\\\"\" CR>\n\t\t       <RFATAL>)>)\n\t       (<VERB? CLOSE>\n\t\t<TELL \"Huh?\" CR>)\n\t       (<VERB? LOOK-INSIDE REACH>\n\t\t<PERFORM ,V?OPEN ,FLOYD>\n\t\t<RTRUE>)\n\t       (<FSET? ,FLOYD ,RLANDBIT>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<COND (<VERB? LAMP-ON>\n\t\t       <TELL \"He's already been activated.\" CR>)\n\t\t      (<VERB? LAMP-OFF>\n\t\t       <FCLEAR ,FLOYD ,RLANDBIT>\n\t\t       <FCLEAR ,FLOYD ,ACTORBIT>\n\t\t       <DISABLE <INT I-FLOYD>>\n\t\t       <TELL\n\"Floyd, shocked by this betrayal from his new-found friend, whimpers\nand keels over\">\n\t\t       <COND (<FIRST? ,FLOYD>\n\t\t\t      <TELL\n\", dropping what he was carrying.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL \".\" CR>)>\n\t\t       <SET X <FIRST? ,FLOYD>>\n\t\t       <REPEAT ()\n\t\t\t       <COND (.X\n\t\t\t\t      <SET N <NEXT? .X>>\n\t\t\t\t      <MOVE .X ,HERE>\n\t\t\t\t      <SET X .N>)\n\t\t\t\t     (T\n\t\t\t\t      <RETURN>)>>)\n\t\t      (<VERB? EXAMINE>\n\t\t       <TELL\n\"From its design, the robot seems to be of the multi-purpose sort. It is\nslightly cross-eyed, and its mechanical mouth forms a lopsided grin.\" CR>)\n\t\t      (<VERB? KISS>\n\t\t       <TELL \n\"You receive a painful electric shock.\" CR>)\n\t\t      (<VERB? SCOLD>\n\t\t       <TELL\n\"Floyd looks defensive. \\\"What did Floyd do wrong?\\\"\" CR>)\n\t\t      (<VERB? PLAY-WITH>\n\t\t       <SETG C-ELAPSED 30>\n\t\t       <ENABLE <QUEUE I-FLOYD 1>>\n\t\t       <TELL\n\"You play with Floyd for several centichrons until you drop to the floor,\nexhausted. Floyd pokes at you gleefully. \\\"C'mon! Let's play some more!\\\"\" CR>)\n\t\t      (<VERB? LISTEN>\n\t\t       <TELL \"Floyd is babbling about this and that.\" CR>)\n\t\t      (<AND <VERB? TAKE>\n\t\t\t    <EQUAL? ,PRSO ,FLOYD>>\n\t\t       <TELL\n\"You manage to lift Floyd a few inches off the ground, but he is too heavy\nand you drop him suddenly. Floyd gives a surprised squeal and moves\na respectable distance away.\" CR>)\n\t\t      (<VERB? ATTACK MUNG>\n\t\t       <TELL\n\"Floyd starts dashing around the room. \\\"Oh boy oh boy oh boy! I haven't played\nChase and Tag for years! You be It! Nah, nah!\\\"\"CR>)\n\t\t      (<VERB? KICK SHAKE>\n\t\t       <TELL\n\"\\\"Why you do that?\\\" Floyd whines. \\\"I think a wire now shaken loose.\\\"\nHe goes off into a corner and sulks.\" CR>)\n\t\t      (<VERB? HELLO TALK>\n\t\t       <TELL\n\"\\\"Hi!\\\" Floyd grins and bounces up and down.\" CR>)\n\t\t      (<VERB? SEARCH SCRUB OPEN>\n\t\t       <TELL\n\"Floyd giggles and pushes you away. \\\"You're tickling Floyd!\\\" He clutches at\nhis side panels, laughing hysterically. Oil drops stream from his eyes.\" CR>)\n\t\t      (<AND <VERB? GIVE PUT>\n\t\t\t    <EQUAL? ,FLOYD ,PRSI>>\n\t\t       <COND (<EQUAL? ,PRSO ,LAZARUS-PART>\n\t\t\t      <REMOVE ,FLOYD>\n\t\t\t      <SETG FLOYD-FOLLOW <>>\n\t\t\t      <MOVE ,LAZARUS-PART ,HERE>\n\t\t\t      <ENABLE <QUEUE I-FLOYD 40>>\n\t\t\t      <TELL\n\"At first, Floyd is all grins because of your gift. Then, he realizes what\nit is, begins weeping, drops the breastplate, and rushes out of the room.\" CR>)\n\t\t\t     (<EQUAL? ,PRSO ,RED-GOO ,GREEN-GOO ,BROWN-GOO>\n\t\t\t      <TELL\n\"Floyd looks at the goo. \\\"Yech! Got any Number Seven Heavy Grease?\\\"\" CR>)\n\t\t\t     (<OR <FIRST? ,FLOYD>\n\t\t\t\t  <PROB 25>>\n\t\t\t      <MOVE ,PRSO ,HERE>\n\t\t\t      <TELL\n\"Floyd examines the \" D, PRSO \", shrugs, and drops \">\n\t\t\t      <COND (<EQUAL? ,PRSO ,PLIERS>\n\t\t\t\t     <TELL \"them.\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <TELL \"it.\" CR>)>)\n\t\t\t     (T\n\t\t\t      <MOVE ,PRSO ,FLOYD>\n\t\t\t      <TELL\n\"\\\"Neat!\\\" exclaims Floyd. He thanks you profusely.\" CR>)>)\n\t\t      (<AND <VERB? SHOW>\n\t\t\t    <EQUAL? ,FLOYD ,PRSI>>\n\t\t       <COND (<AND <EQUAL? ,PRSO ,PRINT-OUT>\n\t\t\t\t   <NOT ,COMPUTER-FLAG>>\n\t\t\t      <COMPUTER-ACTION>)\n\t\t\t     (<EQUAL? ,PRSO ,ROBOT-HOLE>\n\t\t\t      <FLOYD-THROUGH-HOLE>)\n\t\t\t     (<AND <EQUAL? ,HERE ,REC-AREA>\n\t\t\t\t   <EQUAL? ,PRSO ,PSEUDO-OBJECT>>\n\t\t\t      <TELL\n\"\\\"Too intellectual for Floyd. Any paddleball sets around?\\\"\" CR>)\n\t\t\t     (<OR <EQUAL? ,PRSO ,ID-CARD ,SHUTTLE-CARD>\n\t\t\t\t  <EQUAL? ,PRSO ,KITCHEN-CARD\n\t\t\t\t\t        ,UPPER-ELEVATOR-CARD>>\n\t\t\t      <TELL\n\"Floyd scratches his head. \\\"Aren't those things usually blue?\\\"\" CR>)\n\t\t\t     (<AND <EQUAL? ,PRSO ,LOWER-ELEVATOR-CARD>\n\t\t\t\t   <NOT ,CARD-REVEALED>>\n\t\t\t      <SETG CARD-REVEALED T>\n\t\t\t      <TELL\n\"\\\"I've got one just like that!\\\" says Floyd. He looks through several\nof his compartments, then glances at you suspiciously.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"Floyd looks over the \" D, PRSO \". \\\"Can you play any games with it?\\\"\nhe asks.\" CR>)>)\n\t\t      (<VERB? RUB>\n\t\t       <TELL \"Floyd gives a contented sigh.\" CR>)\n\t\t      (<VERB? SMELL>\n\t\t       <TELL\n\"Floyd smells faintly of ozone and light machine oil.\" CR>)\n\t\t      (<VERB? ASK-FOR>\n\t\t       <COND (<IN? ,PRSI ,FLOYD>\n\t\t\t      <MOVE ,PRSI ,ADVENTURER>\n\t\t\t      <TELL\n\"\\\"Okay,\\\" says Floyd, handing you the \" D, PRSI \", \\\"but only\nbecause you're Floyd's best friend.\\\"\" CR>)\n\t\t\t     (T\n\t\t\t      <FLOYD-NOT-HAVE>)>)>)\n\t       (T\n\t\t<COND (<VERB? LAMP-ON>\n\t\t       <COND (,FLOYD-INTRODUCED\n\t\t\t      <ENABLE <QUEUE I-FLOYD -1>>)\n\t\t\t     (T\n\t\t\t      <ENABLE <QUEUE I-FLOYD 25>>\n\t\t\t      <TELL \"Nothing happens.\" CR>\n\t\t\t      <COND (<NOT ,FLOYD-SCORE-FLAG>\n\t\t\t\t     <SETG FLOYD-SCORE-FLAG T>\n\t\t\t\t     <SETG SCORE <+ ,SCORE 2>>)>\n\t\t\t      <RTRUE>)>)\n\t\t      (<VERB? LAMP-OFF>\n\t\t       <TELL \"The robot doesn't seem to be on.\" CR>)\n\t\t      (<VERB? EXAMINE>\n\t\t       <TELL\n\"The de-activated robot is leaning against the wall, its head lolling to the\nside. It is short, and seems to be equipped for general-purpose work. It has\napparently been turned off.\" CR>)\n\t\t      (<VERB? SEARCH OPEN>\n\t\t       <COND (<AND <NOT ,CARD-REVEALED>\n\t\t\t\t   <NOT ,CARD-STOLEN>>\n\t\t\t      <FCLEAR ,LOWER-ELEVATOR-CARD ,INVISIBLE>\n\t\t\t      <MOVE ,LOWER-ELEVATOR-CARD ,ADVENTURER>\n\t\t\t      <SCORE-OBJ ,LOWER-ELEVATOR-CARD>\n\t\t\t      <SETG CARD-STOLEN T>\n\t\t\t      <TELL\n\"In one of the robot's compartments you find and take a magnetic-striped card\nembossed \\\"Loowur Elavaatur Akses Kard.\\\"\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"Your search discovers nothing in the robot's compartments except a\nsingle crayon which you leave where you found it.\" CR>)>)>)>>\n\n<ROUTINE FLOYDS-FAMOUS-DOOR-ROUTINE ()\n\t <COND (<EQUAL? ,PRSO ,ROBOT-HOLE>\n\t\t<FLOYD-THROUGH-HOLE>)\n\t       (<EQUAL? ,PRSO ,BIO-DOOR-EAST>\n\t\t<FLOYD-INTO-LAB>)\n\t       (<FSET? ,PRSO ,DOORBIT>\n\t\t<TELL \"\\\"You go first,\\\" says Floyd.\" CR>)\n\t       (T\n\t\t<TELL \"Floyd scratches his head and looks at you.\" CR>)>>\n\n<ROUTINE FLUSH ()\n\t <COND (,P-CONT\n\t\t<SETG P-CONT <>>\n\t\t<TELL CR\n\"Floyd scratches his head and looks at you. \\\"What else were you saying to\nFloyd? I can't remember.\\\"\" CR>\n\t\t<RTRUE>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<ROUTINE FLOYD-INTO-LAB ()\n\t <COND (,FLOYD-WAITING\n\t\t<TELL \"\\\"As soon as you open the door, dummy.\\\"\" CR>)\n\t       (T\n\t\t<TELL\n\"\\\"Are you kidding? Floyd not going in THERE without a good reason.\\\"\" CR>)>>\n\n<ROUTINE FLOYD-NOT-HAVE ()\n\t <TELL \"\\\"Floyd does not one of those have!\\\"\" CR>>\n\n<GLOBAL FLOYD-SCORE-FLAG <>>\n\n<GLOBAL FLOYD-SPOKE <>> ;\"so Floyd doesn't do two things on the same turn\"\n\n<GLOBAL FLOYD-FOLLOW <>> ;\"checks if Floyd was in room where you just were\"\n\n<GLOBAL FLOYD-REACTIVATED <>> ;\"checks if Floyd has been turned on before\"\n\n<GLOBAL FLOYD-INTRODUCED <>> ;\"checks if Floyd has met you before\"\n\n<ROUTINE FLOYD-COMES-ALIVE (\"AUX\" FOO)\n\t <COND (<IN? ,FLOYD ,HERE>\n\t\t<COND (,FLOYD-REACTIVATED\n\t\t       <SETG FLOYD-SPOKE T>\n\t\t       <TELL\n\"Floyd jumps to his feet, hopping mad. \\\"Why you turn Floyd off?\\\" he\nasks accusingly.\" CR>)\n\t\t      (T\n\t\t       <SETG FLOYD-INTRODUCED T>\n\t\t       <SETG FLOYD-SPOKE T>\n\t\t       <TELL \n\"Suddenly, the robot comes to life and its head starts swivelling about.\nIt notices you and bounds over. \\\"Hi! I'm B-19-7, but to everyperson I'm\ncalled Floyd. Are you a doctor-person or a planner-person? \">\n\t\t       <COND (<SET FOO <FIRST? ,ADVENTURER>>\n\t\t\t      <TELL\n\"That's a nice \" D .FOO \" you are having there. \">)>\n\t\t       <TELL\n\"Let's play Hider-and-Seeker you with me.\\\"\" CR>)>)>\n\t <FSET ,FLOYD ,RLANDBIT>\n\t <FSET ,FLOYD ,ACTORBIT>\n\t <FSET ,FLOYD ,TOUCHBIT>\n\t <SETG FLOYD-REACTIVATED T>>\n\n<ROUTINE I-FLOYD ()\n\t <ENABLE <QUEUE I-FLOYD -1>>\n\t <COND (<NOT <FSET? ,FLOYD ,RLANDBIT>>\n\t\t<FSET ,FLOYD ,ACTORBIT>\n\t\t<CRLF>\n\t\t<FLOYD-COMES-ALIVE>)\n\t       (<IN? ,FLOYD ,HERE>\n\t\t<COND (<NOT ,FLOYD-INTRODUCED>\n\t\t       <SETG FLOYD-INTRODUCED T>\n\t\t       <TELL CR\n\"The robot, now apparently active, notices you enter. \\\"Hi,\\\"\nhe says. \\\"I'm Floyd!\\\"\" CR>)\n\t\t      (<AND ,FLOYD-FOLLOW\n\t\t\t    <FSET? ,HERE ,FLOYDBIT>\n\t\t\t    <PROB 6>>\n\t\t       <REMOVE ,FLOYD>\n\t\t       <SETG FLOYD-FOLLOW <>>\n\t\t       <TELL CR\n\"Floyd says \\\"Floyd going exploring. See you later.\\\"\nHe glides out of the room.\" CR>)\n\t\t      (T\n\t\t       <SETG FLOYD-FOLLOW T>\n\t\t       <COND (<AND <PROB 40>\n\t\t\t\t   <NOT ,FLOYD-SPOKE>>\n\t\t\t      <TELL \"Floyd \">\n\t\t\t      <TELL <PICK-ONE ,FLOYDISMS>>\n\t\t\t      <TELL \".\" CR>\n\t\t\t      <RTRUE>)>)>)\n\t       (T\t;\"Floyd is active but not present\"\n\t\t<COND (<AND ,FLOYD-FOLLOW <PROB 80>>\n\t\t       <COND (<IN? ,LAZARUS-PART ,HERE>\n\t\t\t      <SETG FLOYD-FOLLOW <>>\n\t\t\t      <TELL CR\n\"Floyd starts to follow you but notices the Lazarus breast plate.\nHe sniffs and leaves the room.\" CR>\n\t\t\t      <RTRUE>)>\n\t\t       <MOVE ,FLOYD ,HERE>\n\t\t       <TELL \"Floyd follows you.\" CR>\n\t\t       <KLUDGE>)\n\t\t      (T\n\t\t       <SETG FLOYD-FOLLOW <>>\n\t\t       <COND (<EQUAL? ,HERE ,BOOTH-1 ,BOOTH-2 ,BOOTH-3>\n\t\t\t      <MOVE ,FLOYD ,HERE>\n\t\t\t      <COND (<NOT ,FLOYD-INTRODUCED>\n\t\t\t\t     <CRLF>\n\t\t\t\t     <CALL-ME-FLOYD>\n\t\t\t\t     <RTRUE>)>\n\t\t\t      <TELL CR\n\"Floyd scampers into the booth. \\\"Oooo,\nthis is a tiny room,\\\" he remarks.\" CR>)\n\t\t\t     (<OR\n\t\t\t       <AND <EQUAL? ,HERE ,BIO-LOCK-EAST\n\t\t\t\t                  ,BIO-LOCK-WEST>\n\t\t\t\t    <NOT ,FLOYD-GAVE-UP>>\n\t\t\t       <EQUAL? ,HERE ,RADIATION-LOCK-EAST\n\t\t\t\t             ,RADIATION-LOCK-WEST>>\n\t\t\t      <MOVE ,FLOYD ,HERE>\n\t\t\t      <COND (<NOT ,FLOYD-INTRODUCED>\n\t\t\t\t     <CRLF>\n\t\t\t\t     <CALL-ME-FLOYD>\n\t\t\t\t     <RTRUE>)>\n\t\t\t      <TELL CR\n\"Floyd glides after you. \\\"Is this...is this a squash court?\\\" he asks.\" CR>)\n\t\t\t     (<OR <EQUAL? ,HERE ,ALFIE-CONTROL-EAST\n\t\t\t\t\t        ,ALFIE-CONTROL-WEST>\n\t\t\t          <EQUAL? ,HERE ,BETTY-CONTROL-EAST\n\t\t\t\t\t        ,BETTY-CONTROL-WEST>\n\t\t\t          <EQUAL? ,HERE ,UPPER-ELEVATOR ,LOWER-ELEVATOR\n\t\t\t\t\t        ,REACTOR-ELEVATOR>\n\t\t\t\t  <AND <EQUAL? ,HERE ,MESS-HALL>\n\t\t\t\t       <IN? ,FLOYD ,KITCHEN>>>\n\t\t\t      <MOVE ,FLOYD ,HERE>\n\t\t\t      <COND (<NOT ,FLOYD-INTRODUCED>\n\t\t\t\t     <CRLF>\n\t\t\t\t     <CALL-ME-FLOYD>\n\t\t\t\t     <RTRUE>)>\n\t\t\t      <TELL CR \"Floyd bounces into the \">\n\t\t\t      <COND (<EQUAL? ,HERE ,UPPER-ELEVATOR\n\t\t\t\t             ,LOWER-ELEVATOR ,REACTOR-ELEVATOR>\n\t\t\t\t     <TELL \"elevator\">)\n\t\t\t\t    (<EQUAL? ,HERE ,MESS-HALL>\n\t\t\t\t     <TELL \"room\">)\n\t\t\t\t    (T\n\t\t\t\t     <TELL \"cabin\">)>\n\t\t\t      <TELL\n\". \\\"Hey, wait for Floyd!\\\" he yells, smiling broadly.\" CR>)\n\t\t\t     (<EQUAL? ,HERE ,MINI-BOOTH>\n\t\t\t      <MOVE ,FLOYD ,HERE>\n\t\t\t      <COND (<NOT ,FLOYD-INTRODUCED>\n\t\t\t\t     <CRLF>\n\t\t\t\t     <CALL-ME-FLOYD>\n\t\t\t\t     <RTRUE>)>\n\t\t\t      <TELL CR\n\"\\\"Hi,\\\" whispers Floyd, tiptoeing in. \\\"Are we going to teleport into\nthe computer like Achilles always used to do?\\\"\" CR>)\n\t\t\t     (<PROB 30>\n\t\t\t      <COND (<AND <EQUAL? ,HERE ,INFIRMARY>\n\t\t\t\t\t  ,LAZARUS-FLAG>\n\t\t\t\t     <RFALSE>)>\n\t\t\t      <MOVE ,FLOYD ,HERE>\n\t\t\t      <COND (,FLOYD-INTRODUCED\n\t\t\t\t     <COND (<AND <PROB 15>\n\t\t\t\t\t\t <NOT <IN? ,ADVENTURER ,BED>>>\n\t\t\t\t\t    <TELL CR\n\"Floyd rushes into the room and barrels into you. \\\"Oops, sorry,\\\" he says.\n\\\"Floyd not looking at where he was going to.\\\"\" CR>)\n\t\t\t\t\t   (T\n\t\t\t\t\t    <TELL CR\n\"Floyd bounds into the room. \\\"Floyd here now!\\\" he cries.\" CR>)>\n\t\t\t\t     <KLUDGE>)\n\t\t\t\t    (T\n\t\t\t\t     <CRLF>\n\t\t\t\t     <CALL-ME-FLOYD>)>)>)>)>\n\t <SETG FLOYD-SPOKE <>>>\n\n<ROUTINE CALL-ME-FLOYD ()\n\t <SETG FLOYD-INTRODUCED T>\n\t <TELL\n\"The robot you were fiddling with in the Robot Shop bounds into the room.\n\\\"Hi!\\\" he says, with a wide and friendly smile. \\\"You turn Floyd on?\nBe Floyd's friend, yes?\\\"\" CR>>\n\n<ROUTINE KLUDGE ()\n\t <COND (<AND <EQUAL? ,HERE ,REPAIR-ROOM>\n\t\t     <NOT ,ACHILLES-FLAG>>\n\t\t<SETG ACHILLES-FLAG T>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL\n\"Floyd points at the fallen robot. \\\"That's Achilles. He was in charge of\nrepairing machinery. He repaired Floyd once. I never liked him much; he\nwasn't friendly like other robots. Looks like he fell down the stairs.\nHe always had trouble with one of his feet working right. A Planner-person\nonce told me that's why they named him Achilles.\\\"\" CR>)\n\t       (<AND <EQUAL? ,HERE ,COMPUTER-ROOM>\n\t\t     <NOT ,COMPUTER-FLAG>>\n\t\t<COMPUTER-ACTION>)>>\n\n<OBJECT DEAD-FLOYD\n\t(DESC \"mangled robot\")\n\t(LDESC\n\"Your former companion, Floyd, is lying on the ground in a pool of oil.\")\n\t(SYNONYM FLOYD ROBOT COMPAN)\n\t(ADJECTIVE MANGLE DEAD FORMER)\n\t(ACTION DEAD-FLOYD-F)>\n\n<ROUTINE DEAD-FLOYD-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"You turn to look at Floyd, but a tremendous sense of loss overcomes you, and\nyou turn away.\" CR>)\n\t       (<VERB? LAMP-ON>\n\t\t<TELL\n\"As you touch Floyd's on-off switch, it falls off in your hands.\" CR>)\n\t       (<VERB? LAMP-OFF>\n\t\t<TELL\n\"I'm afraid that Floyd has already been turned off, permanently, and gone to\nthat great robot shop in the sky.\" CR>)>>\n\n<GLOBAL FLOYDISMS\n\t<PLTABLE\n\t \"paces impatiently\"\n\t \"absent-mindedly recites the first six hundred digits of pi\"\n\t \"lowers his voice and tells you the latest rumors about Dr. Fizpick\"\n\t \"recalls the time he bruised his knee\"\n\t \"chants the death scene from \\\"Carmen\\\"\"\n\t \"cranes his neck to see what you are doing\"\n\t \"rubs his head affectionately against your shoulder\"\n\t \"asks if you want to play Hucka-Bucka-Beanstalk\"\n\t \"examines himself for signs of rust\"\n\t \"absent-mindedly oils one of his joints\"\n\t \"wanders restlessly around the room\"\n\t \"notices a mouse scurrying by and tries to hide behind you\"\n\t \"sings an ancient ballad, totally out of key\"\n\t \"frets about the possibility of his batteries failing\"\n\t \"reminisces about his friend Lazarus, a medical robot\"\n\t \"relates some fond memories about his robotic friend Lazarus\"\n\t \"whistles tunelessly\"\n\t \"tells you about the time he helped someone sharpen a pencil\"\n\t \"yawns and looks bored\"\n\t \"produces a crayon from one of his compartments and scrawls\nhis name on the wall\">>\n\n\f\n\n\"Elevator department\"\n\n<ROOM ELEVATOR-LOBBY\n      (IN ROOMS)\n      (DESC \"Elevator Lobby\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\"30 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH PER ELEVATOR-ENTER-F)\n      (SOUTH PER ELEVATOR-ENTER-F)\n      (WEST TO CORRIDOR-JUNCTION)\n      (EAST TO BOOTH-2)\n      (IN TO BOOTH-2)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL UPPER-ELEVATOR-DOOR LOWER-ELEVATOR-DOOR)\n      (PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)\n      (ACTION ELEVATOR-LOBBY-F)>\n\n<ROUTINE ELEVATOR-LOBBY-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a wide, brightly lit lobby. A blue metal door to the north is \">\n\t\t<COND (<AND <FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,UPPER-ELEVATOR-UP <>>>\n\t\t       <TELL \"open\">)\n\t\t      (T\n\t\t       <TELL \"closed\">)>\n\t\t<TELL\n\" and a larger red metal door to the south is \">\n\t\t<COND (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP T>>\n\t\t       <COND (<AND <FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t\t   <EQUAL? ,UPPER-ELEVATOR-UP <>>>\n\t\t\t      <TELL \"also \">)>\n\t\t       <TELL \"open\">)\n\t\t      (T\n\t\t       <COND (<OR <NOT <FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>>\n\t\t\t\t  <EQUAL? ,UPPER-ELEVATOR-UP T>>\n\t\t\t      <TELL \"also \">)>\n\t\t       <TELL \"closed\">)>\n\t\t<TELL\n\". Beside the blue door is a blue button, and beside the red door is\na red button. A corridor leads west. To the east is a small room\nabout the size of a telephone booth.\" CR>)>>\n\n<ROOM UPPER-ELEVATOR\n      (IN ROOMS)\n      (DESC \"Upper Elevator\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (OUT PER ELEVATOR-EXIT-F)\n      (SOUTH PER ELEVATOR-EXIT-F)\n      (UP \"You'll have to use the elevator controls.\")\n      (DOWN \"You'll have to use the elevator controls.\")\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL LIGHTS CONTROLS SLOT ELEVATOR-BUTTON UPPER-ELEVATOR-DOOR)\n      (ACTION UPPER-ELEVATOR-F)>\n\n<ROUTINE UPPER-ELEVATOR-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"You have entered a tiny room with a sliding door to the south which is \">\n\t\t<DDESC ,UPPER-ELEVATOR-DOOR>\n\t\t<TELL\n\". A control panel contains an Up button, a Down button, and a\nnarrow slot.\" CR>)\n\t       (<AND <EQUAL? .RARG ,M-END>\n\t\t     <NOT <FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>>\n\t\t     <PROB 10>>\n\t\t<TELL\n\"Some innocuous Hawaiian music oozes from the elevator's intercom.\" CR>)>>\n\n<ROOM LOWER-ELEVATOR\n       (IN ROOMS)\n       (DESC \"Lower Elevator\")\n       (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n       (NORTH PER ELEVATOR-EXIT-F)\n       (OUT PER ELEVATOR-EXIT-F)\n       (UP \"You'll have to use the elevator controls.\")\n       (DOWN \"You'll have to use the elevator controls.\")\n       (FLAGS RLANDBIT ONBIT)\n       (GLOBAL LIGHTS CONTROLS SLOT ELEVATOR-BUTTON LOWER-ELEVATOR-DOOR)\n       (ACTION LOWER-ELEVATOR-F)>\n\n<ROUTINE LOWER-ELEVATOR-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a medium-sized room with a door to the north which is \">\n\t\t<DDESC ,LOWER-ELEVATOR-DOOR>\n\t\t<TELL\n\". A control panel contains an Up button, a Down button, and\na narrow slot.\" CR>)>>\n\n<ROUTINE ELEVATOR-ENTER-F ()\n\t <COND (<EQUAL? ,PRSO ,P?NORTH>\n\t\t<COND (<AND <FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,UPPER-ELEVATOR-UP <>>>\n\t\t       ,UPPER-ELEVATOR)\n\t\t      (T\n\t\t       <DOOR-CLOSED>\n\t\t       <RFALSE>)>)\n\t       (<EQUAL? ,PRSO ,P?SOUTH>\n\t\t<COND (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP T>>\n\t\t       ,LOWER-ELEVATOR)\n\t\t      (T\n\t\t       <DOOR-CLOSED>\n\t\t       <RFALSE>)>)>>\n\n<ROUTINE ELEVATOR-EXIT-F ()\n\t <COND (<EQUAL? ,HERE ,UPPER-ELEVATOR>\n\t\t<COND (<FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>\t\t\n\t\t       <COND (<EQUAL? ,UPPER-ELEVATOR-UP T>\n\t\t\t      ,TOWER-CORE)\n\t\t\t     (T\n\t\t\t      ,ELEVATOR-LOBBY)>)\n\t\t      (T\n\t\t       <DOOR-CLOSED>\n\t\t       <RFALSE>)>)\n\t       (<EQUAL? ,HERE ,LOWER-ELEVATOR>\n\t\t<COND (<FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\t\t\n\t\t       <COND (<EQUAL? ,LOWER-ELEVATOR-UP T>\n\t\t\t      ,ELEVATOR-LOBBY)\n\t\t\t     (T\n\t\t\t      ,WAITING-AREA)>)\n\t\t      (T\n\t\t       <DOOR-CLOSED>\n\t\t       <RFALSE>)>)>>\n\n<OBJECT UPPER-ELEVATOR-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"blue door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE UPPER ELEVATOR BLUE)\n\t(FLAGS NDESCBIT DOORBIT)\n\t(ACTION UPPER-ELEVATOR-DOOR-F)>\n\n<ROUTINE UPPER-ELEVATOR-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (T\n\t\t       <TELL \"It won't budge.\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t       <TELL \"You can't close it yourself.\" CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<OBJECT LOWER-ELEVATOR-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"red door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE RED LOWER ELEVATOR METAL)\n\t(FLAGS NDESCBIT DOORBIT)\n\t(ACTION LOWER-ELEVATOR-DOOR-F)>\n\n<ROUTINE LOWER-ELEVATOR-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,HERE ,ELEVATOR-LOBBY>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP T>>\n\t\t       <ALREADY-OPEN>)\n\t\t      (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,HERE ,WAITING-AREA>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP <>>>\n\t\t       <ALREADY-OPEN>)\n\t\t      (T\n\t\t       <TELL \"It won't budge.\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,HERE ,ELEVATOR-LOBBY>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP T>>\n\t\t       <TELL \"You can't close it yourself.\" CR>)\n\t\t      (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t    <EQUAL? ,HERE ,WAITING-AREA>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP <>>>\n\t\t       <TELL \"You can't close it yourself.\" CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<ROUTINE DOOR-CLOSED ()\n\t <TELL \"The door is closed.\" CR>>\n\n<OBJECT BLUE-ELEVATOR-BUTTON\n\t(IN ELEVATOR-LOBBY)\n\t(DESC \"blue button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BLUE NORTH)\n\t(FLAGS NDESCBIT)\n\t(ACTION BLUE-ELEVATOR-BUTTON-F)>\n\n<OBJECT RED-ELEVATOR-BUTTON\n\t(IN ELEVATOR-LOBBY)\n\t(DESC \"red button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE RED SOUTH)\n\t(FLAGS NDESCBIT)\n\t(ACTION RED-ELEVATOR-BUTTON-F)>\n\n<ROUTINE BLUE-ELEVATOR-BUTTON-F ()\n\t <COND (<AND <VERB? PUSH>\n\t\t     <EQUAL? ,UPPER-ELEVATOR-UP T>>\n\t\t<COND (<EQUAL? <GET <INT I-UPPER-ELEVATOR-ARRIVE> ,C-ENABLED?> 1>\n\t\t       <TELL \"Patience, patience...\" CR>)\n\t\t      (T\n\t\t       <ENABLE<QUEUE I-UPPER-ELEVATOR-ARRIVE<+<RANDOM 20> 40>>>\n\t\t       <TELL\n\"You hear a faint whirring noise from behind the blue door.\" CR>)>)>>\n\n<ROUTINE RED-ELEVATOR-BUTTON-F ()\n\t <COND (<AND <VERB? PUSH>\n\t\t     <EQUAL? ,LOWER-ELEVATOR-UP <>>>\n\t        <COND (<EQUAL? <GET <INT I-LOWER-ELEVATOR-ARRIVE> ,C-ENABLED?> 1>\n\t\t       <TELL \"Patience, patience...\" CR>)\n\t\t      (T\n\t\t       <ENABLE<QUEUE I-LOWER-ELEVATOR-ARRIVE<+<RANDOM 40> 80>>>\n\t\t       <TELL \"The red door begins vibrating a bit.\" CR>)>)>>\n\n<ROUTINE I-UPPER-ELEVATOR-ARRIVE ()\n\t <FSET ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t <SETG UPPER-ELEVATOR-UP <>>\n\t <DISABLE <INT I-UPPER-ELEVATOR-ARRIVE>>\n\t <COND (<EQUAL? ,HERE ,ELEVATOR-LOBBY>\n\t\t<TELL CR \n\"The door at the north end of the room slides open.\" CR>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<ROUTINE I-LOWER-ELEVATOR-ARRIVE ()\n\t <FSET ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t <SETG LOWER-ELEVATOR-UP T>\n\t <DISABLE <INT I-LOWER-ELEVATOR-ARRIVE>>\n\t <COND (<EQUAL? ,HERE ,ELEVATOR-LOBBY>\n\t\t<TELL CR\n\"The door at the south end of the room slides open.\" CR>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<OBJECT ELEVATOR-BUTTON\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"button\")\n\t(SYNONYM BUTTON)\n\t(FLAGS NDESCBIT)\n        (ACTION ELEVATOR-BUTTON-F)>\n\n;\"*-ELEVATOR-UP should be <> if elevator is at bottom of shaft and T if\nelevator is at top of shaft\"\n\n<GLOBAL LOWER-ELEVATOR-UP <>>\n\n<GLOBAL UPPER-ELEVATOR-UP T>\n\n<GLOBAL ELEVATOR-IN-TRANSIT <>> ;\"should be T if elevator is in transit\"\n\n<GLOBAL LOWER-ELEVATOR-ON <>> ;\"elevator enabled by card in slot?\"\n\n<GLOBAL UPPER-ELEVATOR-ON <>> ;\"elevator enabled by card in slot?\"\n\n<ROUTINE ELEVATOR-BUTTON-F ()\n\t <COND (<VERB? PUSH-UP>\n\t\t<COND (<AND <EQUAL? ,HERE ,LOWER-ELEVATOR>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP <>>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-ON T>\n\t\t\t    <EQUAL? ,ELEVATOR-IN-TRANSIT <>>>\n\t\t       <TELL ,ELEVATOR-STARTS CR>\n\t\t       <FCLEAR ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t       <SETG ELEVATOR-IN-TRANSIT T>\n\t\t       <ENABLE <QUEUE I-LOWER-ELEVATOR-TRIP 100>>)\n\t\t      (<AND <EQUAL? ,HERE ,UPPER-ELEVATOR>\n\t\t\t    <EQUAL? ,UPPER-ELEVATOR-UP <>>\n\t\t\t    <EQUAL? ,UPPER-ELEVATOR-ON T>\n\t\t\t    <EQUAL? ,ELEVATOR-IN-TRANSIT <>>>\n\t\t       <TELL ,ELEVATOR-STARTS CR>\n\t\t       <FCLEAR ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t       <SETG ELEVATOR-IN-TRANSIT T>\n\t\t       <ENABLE <QUEUE I-UPPER-ELEVATOR-TRIP 50>>)\n\t\t      (T\n\t\t       <TELL \"Nothing happens.\" CR>)>)\n\t       (<VERB? PUSH-DOWN>\n\t\t<COND (<AND <EQUAL? ,HERE ,LOWER-ELEVATOR>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-UP T>\n\t\t\t    <EQUAL? ,LOWER-ELEVATOR-ON T>\n\t\t\t    <EQUAL? ,ELEVATOR-IN-TRANSIT <>>>\n\t\t       <TELL ,ELEVATOR-STARTS CR>\n\t\t       <FCLEAR ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t       <SETG ELEVATOR-IN-TRANSIT T>\n\t\t       <ENABLE <QUEUE I-LOWER-ELEVATOR-TRIP 100>>)\n\t\t      (<AND <EQUAL? ,HERE ,UPPER-ELEVATOR>\n\t\t\t    <EQUAL? ,UPPER-ELEVATOR-UP T>\n\t\t\t    <EQUAL? ,UPPER-ELEVATOR-ON T>\n\t\t\t    <EQUAL? ,ELEVATOR-IN-TRANSIT <>>>\n\t\t       <TELL ,ELEVATOR-STARTS CR>\n\t\t       <FCLEAR ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t       <SETG ELEVATOR-IN-TRANSIT T>\n\t\t       <ENABLE <QUEUE I-UPPER-ELEVATOR-TRIP 50>>)\n\t\t      (T\n\t\t       <TELL \"Nothing happens.\" CR>)>)\n\t       (<VERB? PUSH>\n\t\t<TELL\n\"You must specify whether you want to push the Up button or\nthe Down button.\" CR>)>>\n\n<ROUTINE I-TURNOFF-UPPER-ELEVATOR ()\n\t <COND (,ELEVATOR-IN-TRANSIT\n\t\t<ENABLE <QUEUE I-TURNOFF-UPPER-ELEVATOR 120>>)\n\t       (T\n\t\t<SETG UPPER-ELEVATOR-ON <>>\n\t\t<COND (<EQUAL? ,HERE ,UPPER-ELEVATOR>\n\t\t       <TELL CR ,ELEVATOR-LIGHT-OFF CR>)>)>\n\t <RFALSE>>\n\n<ROUTINE I-TURNOFF-LOWER-ELEVATOR ()\n\t <COND (,ELEVATOR-IN-TRANSIT\n\t\t<ENABLE <QUEUE I-TURNOFF-LOWER-ELEVATOR 120>>)\n\t       (T\n\t\t<SETG LOWER-ELEVATOR-ON <>>\n\t\t<COND (<EQUAL? ,HERE ,LOWER-ELEVATOR>\n\t\t       <TELL CR ,ELEVATOR-LIGHT-OFF CR>)>)>\n\t <RFALSE>>\n\n<GLOBAL ELEVATOR-LIGHT-OFF \"A recording says \\\"Elevator no longer enabled.\\\"\">\n\n<GLOBAL ELEVATOR-STARTS\n\"The elevator door slides shut. After a moment, you feel a sensation of\nvertical movement.\">\n\n<ROUTINE I-UPPER-ELEVATOR-TRIP ()\n\t <COND (<EQUAL? ,UPPER-ELEVATOR-UP T>\n\t\t<SETG UPPER-ELEVATOR-UP <>>\n\t\t<SETG ELEVATOR-IN-TRANSIT <>>\n\t\t<FSET ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t<CRLF>\n\t\t<ELEVATOR-DOOR-OPENS>)\n\t       (T\n\t\t<SETG UPPER-ELEVATOR-UP T>\n\t\t<SETG ELEVATOR-IN-TRANSIT <>>\n\t\t<FSET ,UPPER-ELEVATOR-DOOR ,OPENBIT>\n\t\t<CRLF>\n\t\t<ELEVATOR-DOOR-OPENS>)>>\n\n<ROUTINE I-LOWER-ELEVATOR-TRIP ()\n\t <COND (<EQUAL? ,LOWER-ELEVATOR-UP T>\n\t\t<SETG LOWER-ELEVATOR-UP <>>\n\t\t<SETG ELEVATOR-IN-TRANSIT <>>\n\t\t<FSET ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t<CRLF>\n\t\t<ELEVATOR-DOOR-OPENS>)\n\t       (T\n\t\t<SETG LOWER-ELEVATOR-UP T>\n\t\t<SETG ELEVATOR-IN-TRANSIT <>>\n\t\t<FSET ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t<CRLF>\n\t\t<ELEVATOR-DOOR-OPENS>)>>\n\n<ROUTINE ELEVATOR-DOOR-OPENS ()\n\t <TELL \"The elevator door slides open.\" CR>>\n\n<ROOM BOOTH-2\n      (IN ROOMS)\n      (DESC \"Booth 2\")\n      (LDESC\n\"This is a tiny room with a large \\\"2\\\" painted on the wall. A panel contains\na slot about ten centimeters wide, a brown button labelled \\\"1\\\" and a tan\nbutton labelled \\\"3.\\\"\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO ELEVATOR-LOBBY)\n      (OUT TO ELEVATOR-LOBBY)\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)\n      (GLOBAL CONTROLS SLOT TELEPORTATION-BUTTON-1 TELEPORTATION-BUTTON-3)>\n\n<ROOM TOWER-CORE\n      (IN ROOMS)\n      (DESC \"Tower Core\")\n      (LDESC\n\"This is a small, circular room. A sliding door leads north, and a spiral\nstaircase heads upwards. Other exits lie to the northeast and southwest.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"    30\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH TO UPPER-ELEVATOR)\n      (UP TO HELIPAD)\n      (SW TO OBSERVATION-DECK)\n      (NE TO COMM-ROOM)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 4)\n      (GLOBAL STAIRS UPPER-ELEVATOR-DOOR)>\n\n<ROOM HELIPAD\n      (IN ROOMS)\n      (DESC \"Helipad\")\n      (LDESC\n\"You are at the center of a wide, flat area atop the tower. A fence\nprevents you from approaching the perimeter, so your view is limited to\ncloud-filled sky. A large vehicle, severely weathered and topped with rotor\nblades, lies nearby. A spiral staircase leads down into the tower.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"15  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN TO TOWER-CORE)\n      (IN TO HELICOPTER)\n      (EAST \"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\")\n      (WEST \"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\")\n      (NORTH \"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\")\n      (SOUTH \"A fence keeps you away from the edge, where you would probably\nbe swept over the brink by the high winds.\")\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"FENCE\" FENCE-PSEUDO)\n      (GLOBAL STAIRS HELICOPTER-OBJECT)>\n\n<OBJECT HELICOPTER-OBJECT\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"large vehicle\")\n\t(SYNONYM VEHICLE HELICOPTER)\n\t(ADJECTIVE LARGE)\n\t(FLAGS VEHBIT NDESCBIT)\n\t(ACTION HELICOPTER-OBJECT-F)>\n\n<ROUTINE HELICOPTER-OBJECT-F ()\n\t <COND (<VERB? THROUGH BOARD WALK-TO>\n\t\t<COND (<EQUAL? ,HERE ,HELIPAD>\n\t\t       <GOTO ,HELICOPTER>)\n\t\t      (T\n\t\t       <TELL \"You're in it!\" CR>)>)\n\t       (<VERB? EXIT DROP DISEMBARK>\n\t\t<COND (<EQUAL? ,HERE ,HELICOPTER>\n\t\t       <GOTO ,HELIPAD>)\n\t\t      (T\n\t\t       <TELL \"You're not in it!\" CR>)>)\n\t       (<VERB? FLY>\n\t\t<COND (<EQUAL? ,HERE ,HELICOPTER>\n\t\t       <TELL \"The controls seem to be locked.\" CR>)\n\t\t      (T\n\t\t       <TELL \"You're not even in it!\" CR>)>)>>\n\n<ROOM HELICOPTER\n      (IN ROOMS)\n      (DESC \"Helicopter\")\n      (LDESC\n\"This is a large vehicle with a lot of cargo space. A complex control panel\nis closed and locked. Everything is covered with a thick layer of rust.\nThrough the windows of the vehicle you can see a wide Helipad, and beyond\nthat, endless ocean far below. Several doors lead out to the Helipad.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (OUT TO HELIPAD)\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"LOCK\" LOCK-PSEUDO)\n      (GLOBAL OCEAN CONTROLS WINDOW HELICOPTER-OBJECT)>\n\n<ROOM COMM-ROOM\n      (IN ROOMS)\n      (DESC \"Comm Room\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SW TO TOWER-CORE)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL LIGHTS)\n      (PSEUDO \"CABLES\" CABLES-PSEUDO \"ENUNCI\" ENUNCIATOR-PSEUDO)\n      (ACTION COMM-ROOM-F)>\n\n<ROUTINE COMM-ROOM-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a small room with no windows. The sole exit is southwest. Two wide\nconsoles fill either end of the room; thick cables lead up into the ceiling.|\n|\nThe console on the left side of the room is labelled \\\"Reeseev Staashun.\\\" A\nbright red light, labelled \\\"Tranzmishun Reeseevd\\\", is blinking rapidly.\nNext to the light is a glowing button marked \\\"Mesij Plaabak.\\\"|\n|\nThe console on the right side of the room is labelled \\\"Send Staashun.\\\" A\nscreen on the console displays a message. Next to the screen is a flashing\nsign which says \">\n\t\t<COND (,COMM-SHUTDOWN\n\t\t       <SHUTDOWN>)\n\t\t      (,COMM-FIXED\n\t\t       <TELL \"\\\"Tranzmishun in pragres.\\\"\">)\n\t\t      (T\n\t\t       <TELL \"\\\"Malfunkshun in Sendeeng Kuulint Sistum.\\\"\">)>\n\t\t<TELL \" Next to this console is an enunciator\">\n\t\t<COND (<OR ,COMM-FIXED ,COMM-SHUTDOWN>\n\t\t       <TELL \" whose lights are all dark\">)>\n\t\t<TELL\n\". On the console next to the enunciator panel is a funnel-shaped hole\nlabelled \\\"Kuulint Sistum Manyuuwul Oovuriid.\\\"\" CR>)\n\t       (<AND <EQUAL? .RARG ,M-END>\n\t\t     <NOT ,COMM-FIXED>\n\t\t     <NOT ,COMM-SHUTDOWN>\n\t\t     ,JUST-ENTERED>\n\t\t<ENABLE <QUEUE I-UNENTER -1>>\n\t\t<SETG JUST-ENTERED <>>\n\t        <TELL \"A \">\n\t\t<COND (<EQUAL? ,CHEMICAL-REQUIRED 1>\n\t\t       <TELL \"red\">)\n\t\t      (<EQUAL? ,CHEMICAL-REQUIRED 2>\n\t\t       <TELL \"blue\">)\n\t\t      (<EQUAL? ,CHEMICAL-REQUIRED 3>\n\t\t       <TELL \"green\">)\n\t\t      (<EQUAL? ,CHEMICAL-REQUIRED 4>\n\t\t       <TELL \"yellow\">)\n\t\t      (<EQUAL? ,CHEMICAL-REQUIRED 5>\n\t\t       <TELL \"gray\">)\n\t\t      (<EQUAL? ,CHEMICAL-REQUIRED 6>\n\t\t       <TELL \"brown\">)\n\t\t      (<EQUAL? ,CHEMICAL-REQUIRED 7>\n\t\t       <TELL \"black\">)>\n\t\t<TELL\n\" colored light is flashing on the enunciator panel.\" CR>)>>\n\n<GLOBAL JUST-ENTERED T>\n\n<ROUTINE I-UNENTER ()\n\t <COND (<NOT <EQUAL? ,HERE ,COMM-ROOM>>\n\t\t<SETG JUST-ENTERED T>\n\t\t<DISABLE <INT I-UNENTER>>)>\n\t <RFALSE>>\n\n<OBJECT RECEIVE-CONSOLE\n\t(IN COMM-ROOM)\n\t(DESC \"communications receive console\")\n\t(C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n\t(SYNONYM CONSOLE CONTRO)\n\t(ADJECTIVE COMMUNICATIONS RECEIVE LEFT FIRST)\n\t(FLAGS NDESCBIT)>\n\n<OBJECT PLAYBACK-BUTTON\n\t(IN COMM-ROOM)\n\t(DESC \"glowing button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE GLOWIN PLAYBA)\n\t(FLAGS NDESCBIT)\n\t(ACTION PLAYBACK-BUTTON-F)>\n\n<ROUTINE PLAYBACK-BUTTON-F ()\n\t <COND (<VERB? PUSH>\n\t\t<TELL\n\"A voice fills the room ... the voice of the Feinstein's communications\nofficer! \\\"Stellar Patrol Ship Feinstein to planetside ... Please respond\non frequency 48.5 ... SPS Feinstein to planetside ... Please come in ...\\\"\nAfter a pause you hear the officer, in a quieter voice, say \\\"Admiral, no\nresponse on any of the standard frequen...\\\" The sentence is cut short by the\nsound of an explosion and a loud burst of static, followed by silence.\" CR>)>>\n\n<OBJECT SEND-CONSOLE\n\t(IN COMM-ROOM)\n\t(DESC \"communication send console\")\n\t(SYNONYM CONSOLE CONTRO)\n\t(ADJECTIVE COMMUNICATIONS SEND RIGHT SECOND)\n\t(FLAGS NDESCBIT)>\n\n<OBJECT COMM-SCREEN\n\t(IN COMM-ROOM)\n\t(DESC \"screen\")\n\t(SYNONYM COMMUNICATIONS MESSAGE SCREEN)\n\t(FLAGS NDESCBIT READBIT)\n\t(TEXT\n\"\\\"Tuu enee ship uv xe Sekund Galaktik Yuunyun: Planitwiid plaag haz struk\nentiir popyuulaashun. Tiim iz kritikul. Eemurjensee asistins reekwestid.\n<reepeet mesij>\\\"\")>\n\n<OBJECT FUNNEL-HOLE\n\t(IN COMM-ROOM)\n\t(DESC \"funnel-shaped hole\")\n\t(SYNONYM HOLE)\n\t(ADJECTIVE FUNNEL SHAPED)\n\t(FLAGS NDESCBIT)>\n\n<OBJECT CHEMICAL-FLUID\n\t(DESC \"quantity of chemical fluid\")\n\t(SYNONYM QUANTITY LIQUID FLUID CHEMICAL)\n\t(ADJECTIVE MILKY WHITE CHEMICAL)\n\t(ACTION CHEMICAL-FLUID-F)>\n\n<ROUTINE RANDOMIZE-ORDER (\"AUX\" (COUNT 0) TEMP)\n\t <REPEAT ()\n\t\t <COND (<G? <SET COUNT <+ .COUNT 1>> 7>\n\t\t\t<RETURN>)\n\t\t       (T\n\t\t\t<PUT ,ORDER-LTBL .COUNT <>>)>>\n\t <SET COUNT 0>\n\t <REPEAT ()\n\t\t <COND (<G? <SET COUNT <+ .COUNT 1>> 7>\n\t\t\t<RETURN>)\n\t\t       (T\n\t\t\t<SET TEMP <RANDOM 7>>\n\t\t\t<COND (<OR <EQUAL? .TEMP <GET ,ORDER-LTBL 1>\n\t\t\t\t\t         <GET ,ORDER-LTBL 2>\n\t\t\t\t\t         <GET ,ORDER-LTBL 3>>\n\t\t\t\t   <EQUAL? .TEMP <GET ,ORDER-LTBL 4>\n\t\t\t\t\t         <GET ,ORDER-LTBL 5>\n\t\t\t\t\t\t <GET ,ORDER-LTBL 6>>\n\t\t\t\t   <EQUAL? .TEMP <GET ,ORDER-LTBL 7>>>\n\t\t\t       <SET COUNT <- .COUNT 1>>)\n\t\t\t      (T\n\t\t\t       <PUT ,ORDER-LTBL .COUNT .TEMP>)>)>>>\n\n<GLOBAL ORDER-LTBL\n\t<LTABLE 0 0 0 0 0 0 0>>\n\n<ROUTINE CHEMICAL-FLUID-F ()\n\t <COND (<VERB? EAT>\n\t\t<JIGS-UP\n\"Mmmmm....that tasted just like delicious poisonous chemicals!\">)\n\t       (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,CHEMICAL-FLUID>>\n\t\t<PERFORM ,V?PUT ,PRSO ,FLASK>\n\t\t<RTRUE>)\n\t       (<AND <VERB? THROW POUR>\n\t\t     <OR <EQUAL? ,PRSI ,RAT-ANT ,TROLL>\n\t\t\t <EQUAL? ,PRSI ,GRUE ,TRIFFID>>>\n\t\t<COND (<NOT <HELD? ,FLASK>>\n\t\t       <TELL \"You're not holding the flask.\" CR>\n\t\t       <RTRUE>)>\n\t\t<REMOVE ,CHEMICAL-FLUID>\n\t\t<TELL\n\"The mutants lap up the chemical, howling with delight. One immediately\ngrows three new mouths.\" CR>)\n\t       (<VERB? PUT POUR>\n\t\t<COND (<NOT <HELD? ,FLASK>>\n\t\t       <TELL \"You're not holding the flask.\" CR>\n\t\t       <RTRUE>)\n\t\t      (<EQUAL? ,PRSI ,CANTEEN>\n\t\t       <WORTHLESS-ACTION>\n\t\t       <RTRUE>)>\n\t\t<REMOVE ,CHEMICAL-FLUID>\n\t\t<COND (<NOT ,PRSI>\n\t\t       <SETG PRSI ,GROUND>)>\n\t\t<COND (<EQUAL? ,PRSI ,FUNNEL-HOLE>\n\t\t       <COND (<EQUAL? ,CHEMICAL-FLAG ,CHEMICAL-REQUIRED>\n\t\t\t      <SETG CHEMICAL-REQUIRED \n\t\t\t\t    <GET ,ORDER-LTBL ,STEPS-TO-GO>>\n\t\t\t      <SETG STEPS-TO-GO <- ,STEPS-TO-GO 1>>\n\t\t\t      <TELL\n\"The liquid disappears into the hole. The lights on the enunciator\npanel blink rapidly \">\n\t\t\t      <COND (<EQUAL? ,STEPS-TO-GO 0>\n\t\t\t\t     <SETG COMM-FIXED T>\n\t\t\t\t     <SETG SCORE <+ ,SCORE 6>>\n\t\t\t\t     <SETG CHEMICAL-REQUIRED 10>\n\t\t\t\t     <TELL\n\"and then go dark. The coolant system warning light goes off, and another\nflashes, indicating that the help message is now being sent.\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <TELL \"and all go off except one, a \">\n\t\t\t\t     <COND (<EQUAL? ,CHEMICAL-REQUIRED 1>\n\t\t\t\t\t    <TELL \"red\">)\n\t\t\t\t\t   (<EQUAL? ,CHEMICAL-REQUIRED 2>\n\t\t\t\t\t    <TELL \"blue\">)\n\t\t\t\t\t   (<EQUAL? ,CHEMICAL-REQUIRED 3>\n\t\t\t\t\t    <TELL \"green\">)\n\t\t\t\t\t   (<EQUAL? ,CHEMICAL-REQUIRED 4>\n\t\t\t\t\t    <TELL \"yellow\">)\n\t\t\t\t\t   (<EQUAL? ,CHEMICAL-REQUIRED 5>\n\t\t\t\t\t    <TELL \"gray\">)\n\t\t\t\t\t   (<EQUAL? ,CHEMICAL-REQUIRED 6>\n\t\t\t\t\t    <TELL \"brown\">)\n\t\t\t\t\t   (<EQUAL? ,CHEMICAL-REQUIRED 7>\n\t\t\t\t\t    <TELL \"black\">)>\n\t\t\t\t     <TELL \" light.\" CR>)>)\n\t\t\t     (T\n\t\t\t      <SETG COMM-SHUTDOWN T>\n\t\t\t      <COND (,COMM-FIXED\n\t\t\t\t     <SETG SCORE <- ,SCORE 6>>\n\t\t\t\t     <SETG COMM-FIXED <>>)>\n\t\t\t      <TELL\n\"An alarm sounds briefly, and a sign flashes \">\n\t\t\t      <SHUTDOWN>\n\t\t\t      <TELL \n\" A moment later, the lights in the room dim and the send\nconsole shuts down.\" CR>)>)\n\t\t      (<EQUAL? ,CHEMICAL-FLAG 8 9>\n\t\t       <COND (<FSET? ,PRSI ,ACIDBIT>\n\t\t\t      <COND (<EQUAL? ,PRSI ,SPOUT-PLACED>\n\t\t\t\t     <SETG SPOUT-PLACED ,GROUND>)>\n\t\t\t      <REMOVE ,PRSI>\n\t\t\t      <TELL\n\"The \" D ,PRSI \" dissolves right before your eyes!\">\n\t\t\t      <COND (<AND <EQUAL? ,PRSI ,BAD-BEDISTOR>\n\t\t\t\t\t <NOT <FSET? ,BAD-BEDISTOR ,TOUCHBIT>>>\n\t\t\t\t     <FSET ,CUBE ,MUNGEDBIT>\n\t\t\t\t     <CUBE-SEEMS>)\n\t\t\t\t    (<AND <EQUAL? ,PRSI ,GOOD-BEDISTOR>\n\t\t\t\t\t  ,COURSE-CONTROL-FIXED>\n\t\t\t\t     <FSET ,CUBE ,MUNGEDBIT>\n\t\t\t\t     <SETG SCORE <- ,SCORE 6>>\n\t\t\t\t     <SETG COURSE-CONTROL-FIXED <>>\n\t\t\t\t     <CUBE-SEEMS>)>\n\t\t\t      <CRLF>\n\t\t\t      <RTRUE>)\n\t\t\t     (<AND <EQUAL? ,CREVICE ,PRSI>\n\t\t\t\t   <NOT <FSET? ,KEY ,TOUCHBIT>>>\n\t\t\t      <COND (<FSET? ,KEY ,INVISIBLE>\n\t\t\t\t     <TELL\n\"A puff of smoke rises from the crevice.\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <TELL\n\"Although the chemical has no effect on the crevice, it does seem to have\ndissolved the key that was lying in it.\" CR>)>\n\t\t\t      <REMOVE ,KEY>\n\t\t\t      <FSET ,KEY ,TOUCHBIT>\n\t\t\t      <FCLEAR ,KEY ,INVISIBLE>)\n\t\t\t     (<EQUAL? ,PRSI ,HIGH-PROTEIN ,MEDICINE>\n\t\t\t      <JIGS-UP\n\"Unfortunately, those two liquids seem to react quite violently with each\nother. The resulting exothermic reaction might have been interesting to\nwatch from a distance of, say, several hundred feet.\">)\n\t\t\t     (<EQUAL? ,PRSI ,ME ,ADVENTURER ,HANDS>\n\t\t\t      <JIGS-UP\n\"Have you always had this desire to see melting flesh?\">)\n\t\t\t     (<AND <EQUAL? ,PRSI ,FLOYD>\n\t\t\t\t   <FSET? ,FLOYD ,RLANDBIT>>\n\t\t\t      <TELL\n\"Floyd yelps. \\\"Hey, cut it out! That stuff burns!\\\"\" CR>)\n\t\t\t     (<EQUAL? ,PRSI ,MICROBE>\n\t\t\t      <TELL \"The microbe writhes in pain. \">\n\t\t\t      <STRIP-DISSOLVES>)\n\t\t\t     (<EQUAL? ,PRSI ,STRIP ,RELAY>\n\t\t\t      <STRIP-DISSOLVES>)\n\t\t\t     (<FSET? ,PRSI ,MUNGBIT>\n\t\t\t      <FSET ,PRSI ,MUNGEDBIT>\n\t\t\t      <COND (<EQUAL? ,PRSI ,CHRONOMETER>\n\t\t\t\t     <SETG MUNGED-TIME ,INTERNAL-MOVES>)>\n\t\t\t      <TELL\n\"The \" D ,PRSI \" seems to undergo some damage as a result of your action.\" CR>\n\t\t\t      <COND (<AND <EQUAL? ,PRSI ,CUBE>\n\t\t\t\t\t  ,COURSE-CONTROL-FIXED>\n\t\t\t\t     <SETG COURSE-CONTROL-FIXED <>>\n\t\t\t\t     <REMOVE ,GOOD-BEDISTOR>\n\t\t\t\t     <SETG SCORE <- ,SCORE 6>>\n\t\t\t\t     <TELL\n\"The bedistor also happens to dissolve.\" CR>)>\n\t\t\t      <RTRUE>)\n\t\t\t     (T\n\t\t\t      <CHEMICAL-POURS>)>)\n\t\t      (T\n\t\t       <CHEMICAL-POURS>)>)>>\n\n<ROUTINE CUBE-SEEMS ()\n\t <TELL\n\" Unfortunately, the cube seems to undergo some damage as well.\">>\n\n<ROUTINE CHEMICAL-POURS ()\n\t <TELL\n\"The chemical pours all over the \" D ,PRSI \", making quite a mess.\" CR>>\n\n<ROUTINE STRIP-DISSOLVES ()\n\t <JIGS-UP\n\"The chemical drips all over the silicon strip, which immediately begins to\ndissolve. As it does so, you plunge into the void below.\">> \n\n<GLOBAL COMM-SHUTDOWN <>>\n\n<ROUTINE SHUTDOWN ()\n\t <TELL\n\"\\\"Kuulint Sistum Imbalins Kritikul -- Shuteeng Down Awl Sistumz.\\\"\">>\n\n<ROUTINE COMM-SETUP () ;\"was called by GO - now by I-RANDOM-INTERRUPTS\"\n\t <SETG OLD-SHOTS <+ 2 <RANDOM 3>>>\n\t <SETG NEW-SHOTS <+ 20 <RANDOM 10>>>\n\t <RANDOMIZE-ORDER>\n\t <SETG STEPS-TO-GO <+ 1 <RANDOM 2>>>\n\t <SETG CHEMICAL-REQUIRED <GET ,ORDER-LTBL <+ ,STEPS-TO-GO 1>>>>\n\n<GLOBAL COMM-FIXED <>>\n\n<GLOBAL CHEMICAL-REQUIRED 0>\n\n<GLOBAL STEPS-TO-GO 0>\n\n<ROOM OBSERVATION-DECK\n      (IN ROOMS)\n      (DESC \"Observation Deck\")\n      (LDESC\n\"This is a balcony girdling the tower. The view is breathtaking; the tower\nmust be half a kilometer tall. From here it is clear that you are on an\nisland. The dormitory section of the complex is visible on the other side\nof the island, and the rest of the complex sprawls out directly below. In\nthe distance, about 20 kilometers to the east, you can spot another island\nsimilar to this one. The only exit is a doorway leading northeast.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NE TO TOWER-CORE)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL OCEAN)>\n\n<ROOM WAITING-AREA\n      (IN ROOMS)\n      (DESC \"Waiting Area\")\n      (LDESC\n\"This is a concrete platform sparsely furnished with benches. The platform\ncontinues to the east, and to the south is a metal door.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO KALAMONTEE-PLATFORM)\n      (SOUTH PER OTHER-ELEVATOR-ENTER-F)\n      (IN PER OTHER-ELEVATOR-ENTER-F)\n      (PSEUDO \"BENCH\" BENCH-PSEUDO \"BENCHE\" BENCH-PSEUDO)\n      (GLOBAL LOWER-ELEVATOR-DOOR)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROUTINE OTHER-ELEVATOR-ENTER-F ()\n\t <COND (<AND <FSET? ,LOWER-ELEVATOR-DOOR ,OPENBIT>\n\t\t     <NOT ,LOWER-ELEVATOR-UP>>\n\t\t,LOWER-ELEVATOR)\n\t       (T\n\t\t<DOOR-CLOSED>\n\t\t<THIS-IS-IT ,LOWER-ELEVATOR-DOOR>\n\t\t<RFALSE>)>>\n\n<ROOM KALAMONTEE-PLATFORM\n      (IN ROOMS)\n      (DESC \"Kalamontee Platform\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO WAITING-AREA)\n      (SOUTH PER SHUTTLE-ENTER-F)\n      (NORTH PER SHUTTLE-ENTER-F)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 4)\n      (GLOBAL GLOBAL-SHUTTLE)\n      (ACTION KALAMONTEE-PLATFORM-F)>\n\n<ROUTINE KALAMONTEE-PLATFORM-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a wide, flat strip of concrete which continues westward. \">\n\t\t<COND (<AND ,BETTY-AT-KALAMONTEE ,ALFIE-AT-KALAMONTEE>\n\t\t       <TELL\n\"Open shuttle cars lie on the north and south sides of the platform. \">)\n\t\t      (,BETTY-AT-KALAMONTEE\n\t\t       <TELL\n\"An open shuttle car lies to the north. \">)\n\t\t      (,ALFIE-AT-KALAMONTEE\n\t\t       <TELL\n\"A large transport of some sort lies to the south, its open door\nbeckoning you to enter. \">)>\n\t\t<TELL \"A faded sign on the wall reads \\\"Shutul Platform --\nKalamontee Staashun.\\\"\" CR>)>>"
  },
  {
    "path": "comptwo.zabstr",
    "content": "\n<ROOM LAWANDA-PLATFORM (IN ROOMS) (DESC \"Lawanda Platform\") (C-MOVE <TABLE 0 0\n0 30 0 0 0 0 0 0 0 0>) (NORTH PER SHUTTLE-ENTER-F) (SOUTH PER SHUTTLE-ENTER-F)\n(EAST TO ESCALATOR) (UP TO ESCALATOR) (FLAGS FLOYDBIT RLANDBIT ONBIT) (VALUE 4)\n(GLOBAL GLOBAL-SHUTTLE STAIRS) (PSEUDO \"ESCALATOR\" ESCALATOR-PSEUDO) (ACTION\nLAWANDA-PLATFORM-F)> \n<GLOBAL LAWANDA-PLATFORM-FLAG <> %<> WORD> \n<DEFINE-ROUTINE LAWANDA-PLATFORM-F> \n<ROOM ESCALATOR (IN ROOMS) (DESC \"Escalator\") (LDESC\n\"You are in the middle of a long mechanical stairway. It is not running,\nand seems to be in disrepair.\") (C-MOVE <TABLE 0 0 15 30 0 0 0 0 0 0 0 0>) (UP\nTO FORK) (EAST TO FORK) (DOWN TO LAWANDA-PLATFORM) (WEST TO LAWANDA-PLATFORM) (\nGLOBAL STAIRS) (PSEUDO \"ESCALATOR\" ESCALATOR-PSEUDO) (FLAGS RLANDBIT FLOYDBIT\nONBIT)> \n<ROOM FORK (IN ROOMS) (DESC \"Fork\") (LDESC\n\"This is a hallway which forks to the northeast and southeast. To the west\nis the top of a long escalator.\") (C-MOVE <TABLE 0 0 15 0 0 0 0 0 25 0 25 0>) (\nWEST TO ESCALATOR) (DOWN TO ESCALATOR) (NE TO SYSTEMS-CORRIDOR-WEST) (SE TO\nPROJECT-CORRIDOR-WEST) (GLOBAL STAIRS) (PSEUDO \"ESCALATOR\" ESCALATOR-PSEUDO) (\nFLAGS FLOYDBIT RLANDBIT ONBIT)> \n<ROOM INFIRMARY (IN ROOMS) (DESC \"Infirmary\") (LDESC\n\"You have entered a clean, well-lighted place. There are a number of beds,\nsome complicated looking equipment, and many shelves that are mostly bare.\") (\nC-MOVE <TABLE 25 0 0 0 0 0 0 0 25 0 0 0>) (SE TO SYSTEMS-CORRIDOR-WEST) (OUT TO\nSYSTEMS-CORRIDOR-WEST) (FLAGS RLANDBIT ONBIT) (GLOBAL BED SHELVES) (PSEUDO\n\"EQUIPM\" EQUIPMENT-PSEUDO \"MACHIN\" EQUIPMENT-PSEUDO) (ACTION INFIRMARY-F)> \n<OBJECT LAZARUS-PART (DESC \"medical robot breastplate\") (SYNONYM LAZARUS PART\nBREAST PLATE) (ADJECTIVE MEDICAL BREAST) (SIZE 35) (FLAGS TAKEBIT)> \n<GLOBAL LAZARUS-FLAG <> %<> WORD> \n<DEFINE-ROUTINE INFIRMARY-F> \n<OBJECT RED-SPOOL (IN INFIRMARY) (DESC \"red spool\") (FDESC\n\"Lying on one of the beds is a small red spool.\") (SYNONYM SPOOL SPOOLS OBJECT)\n(ADJECTIVE RED SMALL) (SIZE 3) (TEXT\n\"The spool is labelled \\\"Simptumz uv Xe Dizeez.\\\"\") (FLAGS TAKEBIT ACIDBIT\nREADBIT) (ACTION RED-SPOOL-F)> \n<DEFINE-ROUTINE RED-SPOOL-F> \n<OBJECT MEDICINE-BOTTLE (IN INFIRMARY) (DESC \"medicine bottle\") (FDESC\n\"On a low shelf is a translucent bottle with a small white label.\") (SYNONYM\nBOTTLE LABEL) (ADJECTIVE MEDICINE SMALL WHITE TRANSL) (SIZE 7) (CAPACITY 7) (\nTEXT \"\\\"Dizeez supreshun medisin -- eksperimentul\\\"\") (FLAGS CONTBIT SEARCHBIT\nTAKEBIT TRANSBIT READBIT)> \n<OBJECT MEDICINE (IN MEDICINE-BOTTLE) (DESC \"quantity of medicine\") (FDESC\n\"At the bottom of the bottle is a small quantity of medicine.\") (SYNONYM\nMEDICINE) (ADJECTIVE SMALL QUANTITY EXPERIMENTAL) (SIZE 7) (FLAGS FOODBIT) (\nACTION MEDICINE-F)> \n<DEFINE-ROUTINE MEDICINE-F> \n<ROOM REPAIR-ROOM (IN ROOMS) (DESC \"Repair Room\") (LDESC\n\"You are in a dimly lit room, filled with strange machines and wide storage\ncabinets, all locked. To the south, a narrow stairway leads upward. On the\nnorth wall of the room is a very small doorway.\") (C-MOVE <TABLE 0 0 0 30 0 0 0\n0 0 0 0 0>) (UP TO SYSTEMS-CORRIDOR-WEST) (SOUTH TO SYSTEMS-CORRIDOR-WEST) (\nNORTH \"It is a robot-sized doorway -- a bit too small for you.\") (FLAGS\nRLANDBIT FLOYDBIT ONBIT) (GLOBAL STAIRS) (PSEUDO \"CABINETS\" CABINETS-PSEUDO\n\"MACHIN\" EQUIPMENT-PSEUDO)> \n<GLOBAL ACHILLES-FLAG <> %<> WORD> \n<OBJECT ACHILLES (IN REPAIR-ROOM) (DESC \"broken robot\") (LDESC\n\"Lying face down at the bottom of the stairs is a motionless robot. It\nappears to be damaged beyond repair.\") (SYNONYM ROBOT ACHILLES) (ADJECTIVE\nBROKEN DEAD)> \n<OBJECT ROBOT-HOLE (IN REPAIR-ROOM) (DESC \"small doorway\") (SYNONYM DOOR DOORWA\nHOLE) (ADJECTIVE SMALL VERY) (FLAGS NDESCBIT TRANSBIT CONTBIT) (CAPACITY 0) (\nACTION ROBOT-HOLE-F)> \n<DEFINE-ROUTINE ROBOT-HOLE-F> \n<GLOBAL HOLE-TRIP-FLAG <> %<> WORD> \n<DEFINE-ROUTINE FLOYD-THROUGH-HOLE> \n<OBJECT GOOD-BOARD (IN ROBOT-HOLE) (DESC\n\"shiny seventeen-centimeter fromitz board\") (SYNONYM BOARD BOARDS) (ADJECTIVE\nSHINY GOOD SEVENTEEN CENTIMETER FROMITZ) (SIZE 10) (FLAGS ACIDBIT INVISIBLE\nNDESCBIT) (ACTION GOOD-BOARD-F)> \n<DEFINE-ROUTINE GOOD-BOARD-F> \n<GLOBAL BOARD-REPORTED <> %<> WORD> \n<ROOM SYSTEMS-CORRIDOR-WEST (IN ROOMS) (DESC \"Systems Corridor West\") (LDESC\n\"The corridor bends here, leading east and southwest. A doorway opens\nto the northwest, and a narrow stairway leads down to the north.\") (C-MOVE <\nTABLE 0 0 15 0 0 0 25 0 0 0 0 0>) (NW TO INFIRMARY) (NORTH TO REPAIR-ROOM) (\nDOWN TO REPAIR-ROOM) (EAST TO SYSTEMS-CORRIDOR) (SW TO FORK) (FLAGS ONBIT\nRLANDBIT) (GLOBAL STAIRS)> \n<ROOM SYSTEMS-CORRIDOR (IN ROOMS) (DESC \"Systems Corridor\") (LDESC\n\"This section of hallway has a doorway to the north labelled \\\"Planateree\nDeefens.\\\" The corridor continues east and west.\") (C-MOVE <TABLE 0 0 0 0 0 0 0\n0 0 0 0 0>) (NORTH TO PLANETARY-DEFENSE) (WEST TO SYSTEMS-CORRIDOR-WEST) (EAST\nTO SYSTEMS-CORRIDOR-EAST) (FLAGS RLANDBIT ONBIT)> \n<ROOM SYSTEMS-CORRIDOR-EAST (IN ROOMS) (DESC \"Systems Corridor East\") (LDESC\n\"The hallway ends here with a large doorway leading east, and smaller doorways\nto the north and south. The northern doorway is labelled \\\"Planateree Kors\nKontrool.\\\" The hallway itself leads west.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0\n0 0>) (WEST TO SYSTEMS-CORRIDOR) (SOUTH TO LIBRARY-LOBBY) (NORTH TO\nPLANETARY-COURSE-CONTROL) (EAST TO PHYSICAL-PLANT-TWO) (FLAGS RLANDBIT ONBIT)> \n<ROOM PHYSICAL-PLANT-TWO (IN ROOMS) (DESC \"Physical Plant\") (LDESC\n\"This is an enormous room full of environmental control equipment presumably\nintended to heat and ventilate the Lawanda Complex. Oddly, although the\nLawanda Complex is slightly smaller than its counterpart, this plant is much\nlarger than the one in the Kalamontee Complex. The only exit is westward.\") (\nC-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO SYSTEMS-CORRIDOR-EAST) (OUT TO\nSYSTEMS-CORRIDOR-EAST) (FLAGS FLOYDBIT RLANDBIT ONBIT) (PSEUDO \"EQUIPM\"\nEQUIPMENT-PSEUDO)> \n<GLOBAL DEFENSE-FIXED <> %<> WORD> \n<GLOBAL COURSE-CONTROL-FIXED <> %<> WORD> \n<GLOBAL ACCESS-PANEL-FULL T %<> WORD> \n<ROOM PLANETARY-DEFENSE (IN ROOMS) (DESC \"Planetary Defense\") (C-MOVE <TABLE 0\n0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO SYSTEMS-CORRIDOR) (OUT TO SYSTEMS-CORRIDOR) (\nFLAGS RLANDBIT FLOYDBIT ONBIT) (GLOBAL CONTROLS LIGHTS) (ACTION\nPLANETARY-DEFENSE-F)> \n<DEFINE-ROUTINE PLANETARY-DEFENSE-F> \n<OBJECT ACCESS-PANEL (IN PLANETARY-DEFENSE) (DESC \"access panel\") (SYNONYM\nPANEL DOOR SOCKET) (ADJECTIVE SMALL ACCESS REPAIR) (FLAGS VOWELBIT NDESCBIT\nCONTBIT SEARCHBIT) (CAPACITY 40) (ACTION ACCESS-PANEL-F)> \n<DEFINE-ROUTINE ACCESS-PANEL-F> \n<OBJECT FIRST-BOARD (IN ACCESS-PANEL) (DESC\n\"first seventeen-centimeter fromitz board\") (SYNONYM BOARD BOARDS) (ADJECTIVE\nFIRST SEVENTEEN CENTIMETER FROMITZ) (ACTION BOARD-F)> \n<OBJECT FOURTH-BOARD (IN ACCESS-PANEL) (DESC\n\"fourth seventeen-centimeter fromitz board\") (SYNONYM BOARD BOARDS) (ADJECTIVE\nFOURTH SEVENTEEN CENTIMETER FROMITZ) (ACTION BOARD-F)> \n<OBJECT THIRD-BOARD (IN ACCESS-PANEL) (DESC\n\"third seventeen-centimeter fromitz board\") (SYNONYM BOARD BOARDS) (ADJECTIVE\nTHIRD SEVENTEEN CENTIMETER FROMITZ) (ACTION BOARD-F)> \n<OBJECT SECOND-BOARD (IN ACCESS-PANEL) (DESC\n\"second seventeen-centimeter fromitz board\") (SYNONYM BOARD BOARDS) (ADJECTIVE\nSECOND SEVENTEEN CENTIMETER FROMITZ) (FLAGS TRYTAKEBIT TAKEBIT) (ACTION BOARD-F\n)> \n<OBJECT FRIED-BOARD (DESC \"fried seventeen-centimeter fromitz board\") (SYNONYM\nBOARD BOARDS) (ADJECTIVE FRIED SEVENTEEN CENTIMETER FROMITZ) (SIZE 10) (FLAGS\nACIDBIT TAKEBIT) (ACTION FRIED-BOARD-F)> \n<DEFINE-ROUTINE FRIED-BOARD-F> \n<GLOBAL ITS-CRACKED <> %<> WORD> \n<DEFINE-ROUTINE BOARD-F> \n<DEFINE-ROUTINE EXAMINE-BOARD> \n<DEFINE-ROUTINE PUT-BOARD> \n<DEFINE-ROUTINE BOARD-SHOCK> \n<ROOM PLANETARY-COURSE-CONTROL (IN ROOMS) (DESC \"Course Control\") (C-MOVE <\nTABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (SOUTH TO SYSTEMS-CORRIDOR-EAST) (OUT TO\nSYSTEMS-CORRIDOR-EAST) (FLAGS FLOYDBIT RLANDBIT ONBIT) (GLOBAL CONTROLS LIGHTS)\n(ACTION PLANETARY-COURSE-CONTROL-F)> \n<DEFINE-ROUTINE PLANETARY-COURSE-CONTROL-F> \n<OBJECT CUBE (IN PLANETARY-COURSE-CONTROL) (DESC \"large metal cube\") (SYNONYM\nCUBE LID SOCKET) (ADJECTIVE LARGE METAL) (FLAGS MUNGBIT NDESCBIT CONTBIT\nSEARCHBIT) (ACTION CUBE-F)> \n<DEFINE-ROUTINE CUBE-F> \n<OBJECT BAD-BEDISTOR (IN CUBE) (DESC \"fused ninety-ohm bedistor\") (SYNONYM\nBEDISTOR) (ADJECTIVE FUSED NINETY OHM) (SIZE 8) (FLAGS ACIDBIT TRYTAKEBIT\nTAKEBIT) (ACTION BAD-BEDISTOR-F)> \n<DEFINE-ROUTINE BAD-BEDISTOR-F> \n<ROOM LIBRARY-LOBBY (IN ROOMS) (DESC \"Library Lobby\") (LDESC\n\"This is a carpeted room, thick with dust, with exits to the north and south.\nTo the west, up a few steps, is a wide doorway. A small booth lies to the\neast.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (UP TO LIBRARY) (WEST TO\nLIBRARY) (NORTH TO SYSTEMS-CORRIDOR-EAST) (SOUTH TO PROJECT-CORRIDOR-EAST) (\nEAST TO BOOTH-3) (IN TO BOOTH-3) (FLAGS FLOYDBIT RLANDBIT ONBIT) (GLOBAL TABLES\nSTAIRS) (PSEUDO \"CARPET\" CARPET-PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)> \n<OBJECT GREEN-SPOOL (IN LIBRARY-LOBBY) (DESC \"green spool\") (FDESC\n\"You catch a glimpse of a small object nestled among the dust.\") (SYNONYM SPOOL\nSPOOLS OBJECT) (ADJECTIVE GREEN SMALL) (SIZE 3) (TEXT\n\"The spool is labelled \\\"Helikoptur Opuraateeng Manyuuwul.\\\"\") (FLAGS ACIDBIT\nTAKEBIT READBIT) (ACTION GREEN-SPOOL-F)> \n<DEFINE-ROUTINE GREEN-SPOOL-F> \n<ROOM BOOTH-3 (IN ROOMS) (DESC \"Booth 3\") (LDESC\n\"This is a tiny room with a large \\\"3\\\" painted on the wall. A panel contains\na slot about ten centimeters wide, a brown button labelled \\\"1\\\" and a beige\nbutton labelled \\\"2.\\\"\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO\nLIBRARY-LOBBY) (OUT TO LIBRARY-LOBBY) (FLAGS RLANDBIT ONBIT) (GLOBAL CONTROLS\nSLOT TELEPORTATION-BUTTON-1 TELEPORTATION-BUTTON-2) (PSEUDO \"BOOTH\"\nIN-BOOTH-PSEUDO)> \n<ROOM LIBRARY (IN ROOMS) (DESC \"Library\") (LDESC\n\"This is a large carpeted room with a desk and many small tables. The sole\nexit is down a few steps to the east.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>\n) (EAST TO LIBRARY-LOBBY) (OUT TO LIBRARY-LOBBY) (FLAGS RLANDBIT ONBIT FLOYDBIT\n) (GLOBAL TABLES STAIRS) (PSEUDO \"CARPET\" CARPET-PSEUDO \"DESK\" DESK-PSEUDO)> \n<OBJECT TERMINAL (IN LIBRARY-LOBBY) (DESC \"terminal\") (FDESC\n\"Sitting on a wide table is a machine of sorts, consisting of a video\nscreen and a keyboard. It is currently turned off.\") (LDESC\n\"On the table is a computer terminal.\") (SYNONYM TERMINAL KEYBOARD SCREEN\nMACHIN) (ADJECTIVE COMPUTER VIDEO) (FLAGS LIGHTBIT) (ACTION TERMINAL-F)> \n<GLOBAL MENU-LEVEL 0 %<> WORD> \n<DEFINE-ROUTINE TERMINAL-F> \n<DEFINE-ROUTINE LIBRARY-TYPE> \n<GLOBAL SCREEN-TEXT <> %<> WORD> \n<GLOBAL NO-MEANING\n\"The terminal feeps, and a message briefly appears on the\nscreen explaining that typing that character has no meaning at the moment.\" %<>\nWORD> \n<GLOBAL SCREEN-CLEARS \"The screen clears and a different menu appears:|\" %<>\nWORD> \n<GLOBAL TEXT-APPEARS \"The screen clears and some text appears:|\" %<> WORD> \n<GLOBAL MORE-INFO\n\"|\n\\\"Foor moor deetaald infoormaashun on xis tapik, konsult xe\nliibrereein foor xe aproopreeit spuulz. Tiip zeeroo tuu goo tuu\naa hiiyur levul.\\\"\" %<> WORD> \n<GLOBAL LOW-END \"\\\"Yuu hav reect xe loowist levul uv xe liibreree indeks.\nPleez tiip zeeroo tuu goo tuu aa hiiyur levul. If yuu reekwiir\nasistins, kawl xe liibrereein.\\\"\" %<> WORD> \n<GLOBAL MAIN-MENU\n\"    1. Histooree|\n    2. Kulcur|\n    3. Teknolojee|\n    4. Jeeografee|\n    5. Xe Prajekt|\n    6. Inturlajik Gaamz\" %<> WORD> \n<GLOBAL HISTORY-MENU\n\"    0. Maan Menyuu|\n    1. Raashul Orijinz|\n    2. Graat Hiiaatus|\n    3. Riiz uv xe Nuu Teknakrasee\" %<> WORD> \n<GLOBAL CULTURE-MENU\n\"    0. Maan Menyuu|\n    1. Lituracur|\n    2. Art|\n    3. Muusik\" %<> WORD> \n<GLOBAL TECHNOLOGY-MENU\n\"    0. Maan Menyuu|\n    1. Medisin|\n    2. Agrikultcur|\n    3. Tranzportaashun|\n    4. Roobotiks|\n    5. Planateree Sistumz\" %<> WORD> \n<GLOBAL GEOGRAPHY-MENU\n\"    0. Maan Menyuu|\n    1. Planit Landmasiz|\n    2. Undursee Reejunz|\n    3. Spaas Kolooneez\" %<> WORD> \n<GLOBAL PROJECT-MENU\n\"    0. Maan Menyuu|\n    1. Orijinz uv xe Dizeez|\n    2. Xe Instalaashunz|\n    3. Prajekt Kuntrool|\" %<> WORD> \n<GLOBAL INTERLOGIC-MENU\n\"    0. Maan Menyuu|\n    1. Zoork|\n    2. Dedliin and Witnis|\n    3. Starkros and Suspendid\" %<> WORD> \n<GLOBAL 11-TEXT \"\\\"Xe aancint lejindz saa xat ships frum xe Sekund Yuunyun wuns fild ar skiis\nand wil wun daa kum agen. Madern siientists, huu wuns dismist suc lejindz\nand felt xat liif eevolvd heer on Resida, now feel xat ar planit wuz reelee\nsetuld bii men uv xe Sekund Yuunyun.\\\"\" %<> WORD> \n<GLOBAL 12-TEXT \"\\\"Wexur oor not xe lejindz uv xe Sekund Yuunyun ar truu, arkeeoloojists ar\nsurtin xat aa peereeid uv hii teknoolojikul and sooshul deevelupmint egzistid\nxowzindz uv yeerz agoo, but foor sum reezin sivilizaashun slid intuu aa dark\naaj lasteeng senshureez.\\\"\" %<> WORD> \n<GLOBAL 13-TEXT \"\\\"Wixin xe last fiiv senshureez, xe riiz uv xe Nuu Teknakrasee haz reeturnd\nsivilizaashun tuu xe levul ataand beefoor xe Hiiaatus. Sooshul histooreeunz\nxink xat wen xe Dizeez struk, ar raas had aceevd aa levul uv sufistikaashun\neekwal tuu xe pree-Hiiaatus.\\\"\" %<> WORD> \n<GLOBAL 21-TEXT \"\\\"Menee volyuumz on xe deevelupmint uv Residan lituracur ar on fiil in xe\nliibreree. Alsoo, kopeez uv awl graat wurks uv riiteeng, sum daateeng bak tuu\nxe mixikul daaz uv xe Sekund Yuunyun, ar lookaatid heer.\\\"\" %<> WORD> \n<GLOBAL 22-TEXT \"\\\"Histoorikul studeez and reeproodukshunz uv Residan art ar avaalibul heer\nfoor awl xree maajur peereeids uv art deevelupmint: xe Primitiv peereeid, xe\nRenasans peereeid uv xe urlee poost-Hiiaatus, and xe moost reesint peereeid\nuv videeoo and laazur art.\\\"\" %<> WORD> \n<GLOBAL 23-TEXT \"\\\"Reekoordeengz uv awl impoortint kompoozishunz uv xe last fiiv hundrid yeerz\nar lookaatid in xe liibrereez data banks.\\\"\" %<> WORD> \n<GLOBAL 31-TEXT \"\\\"Awl maajur dizeezuz hav bin kyuuribul foor oovur aa senshuree. Xe\ndeevelupmint uv kriioojeniks now alowz dokturz tuu put paashints in staasis\nuntil aa kyuur iz fownd. Avurij Residan liif ekspektinsee iz now 147\nrevooluushunz.\\\"\" %<> WORD> \n<GLOBAL 32-TEXT \"\\\"Durt farmeeng iz awl but obsooleet, wix moost fuud kumeeng frum xe\nhiidrooponiks kompleksiz oor xe undurwatur aljee farmz.\\\"\" %<> WORD> \n<GLOBAL 33-TEXT \"\\\"Planateree travul iz noormulee priivit skuutur foor shoort hops, and aarbus\nfoor longur trips.  Spaas travul haz reesintlee bin revooluushuniizd bii xe\ninvenshun uv nuukleeur-fyuuld enjinz.\\\"\" %<> WORD> \n<GLOBAL 34-TEXT \"\\\"Untoold senshureez agoo, entiir teemz uv roobots wur reekwiird tuu purfoorm\neevin xe simplist tasks...wun roobot wud handul viszuuwul funkshunz, wun roobot\nwud handul awditooree funkshunz, and soo foorx. Now, xanks tuu advansis in\nmineeatshurizaashun, xeez tasks kan bee purfoormd bii singul roobots, suc az\nxe multiipurpis B-19 seereez.\\\"\" %<> WORD> \n<GLOBAL 35-TEXT \"\\\"Xe priimeree Planateree Sistumz ar Kors Kuntrool (foor maantaaneeng an\niideel kliimit), Deefens (foor destroieeng pootenshulee daanjuris meeteeoorz),\nand xe reesintlee adid Prajekt Kuntrool (foor monitureeng proogres uv\nXe Prajekt).\\\"\" %<> WORD> \n<GLOBAL 41-TEXT \"\\\"Sins xe staabulizaashun uv xe oorbit uv Resida, preesiislee 47.79 pursent\nuv xe planits surfis iz land. Xe land iz diviidid intuu tuu priimeree\nlandmasiz, Andoor and Fruulik, plus siks lesur landmasiz. Xe gloobul kapitul,\nPilandoor, iz on xe eesturn koost uv Andoor.\\\"\" %<> WORD> \n<GLOBAL 42-TEXT \"\\\"Xe furst undursee habutats wur oopind in 2992, and tuudaa, neerlee tuu\nsenshureez laatur, abowt 9 pursent uv Residaz popyuulaashun livz in wun\nuv xe twentee sprawleeng undursee siteez.\\\"\" %<> WORD> \n<GLOBAL 43-TEXT \"\\\"Alxoo setulmints hav bin establisht on Fristin, and on sevrul uv xe muunz\nuv xe gas jiiunt Blustin, xe vast majooritee uv of-woorldurz liv in xe\nspaas kolooneez establisht at Residaz troojin points.\\\"\" %<> WORD> \n<GLOBAL 51-TEXT \"\\\"Xe oorijin uv Xe Dizeez haz bin linkt tuu xe Sentur foor Advanst Kriioojenik\nReesurc, wic wuz kondukteeng reesurc intuu waaz uv ekstendeeng xe Kriioojenik\npeereeid indefinitlee. Alxoo xis reesurc wuz aa sukses, sumhow Xe Dizeez\nwuz reeleest and beegan spredeeng.\\\"\" %<> WORD> \n<GLOBAL 52-TEXT \"\\\"Xe tuu kompleksiz wur establisht on xe twin peek platooz uv Kalamontee and\nLawanda. Xeez lookaashunz wur coozin beekawz xaar hiit wud maak\ntranspoortaashun and komyuunikaashunz eezeeur, and soo xat xe vast reeakturz\nand kriioojeniks caamburz kud bee kunstruktid in xe mowntinz beeloo.\\\"\" %<>\nWORD> \n<GLOBAL 53-TEXT \"\\\"Faaz Wun: xe kunstrukshun uv xe Kalamontee and Lawanda Kompleksiz. Faaz\nTuu: mass kriioojenik freezeeng uv Residan popyuulaashun. Faaz Xree:\nsiimultaaneeus monitureeng uv kriioojeniks wiil awtoomaatid reesurc iz\nkonduktid bii inkrediblee soofistikaatid kumpyuuturiizd fasiliteez. Faaz\nFoor: reeviivul and inokyuulaashun uv xe popyuulaashun.\\\"\" %<> WORD> \n<GLOBAL 61-TEXT \"\\\"Xe Zoork triloojee, an adventshur klasik, taaks plaas in aa deeliitful\nbut daanjuris undurgrownd seteeng.\\\"\" %<> WORD> \n<GLOBAL 62-TEXT \"\\\"Dedliin iz xe furst graat misturee uv xe kumpyuutur aaj, and Witnis iz\nits wurxee suksesur.\\\"\" %<> WORD> \n<GLOBAL 63-TEXT \"\\\"Starkros iz Infookamz miind-bendeeng siiens-fikshun adventshur. Suspendid\niz aa kriioojenik siiens-fikshun niitmaar.\\\"\" %<> WORD> \n<OBJECT SPOOL-READER (IN LIBRARY) (DESC \"microfilm reader\") (FDESC\n\"On the desk is a machine with a screen and a small circular opening. It\nseems to be turned off.\") (LDESC\n\"There is a microfilm reader on one of the tables.\") (SYNONYM READER SCREEN\nOPENIN MACHIN) (ADJECTIVE MICROF SMALL CIRCUL) (CAPACITY 3) (FLAGS LIGHTBIT\nCONTBIT SEARCHBIT OPENBIT) (ACTION SPOOL-READER-F)> \n<GLOBAL SPOOL-TEXT <> %<> WORD> \n<DEFINE-ROUTINE SPOOL-READER-F> \n<GLOBAL SPOOL-FITS \"The spool fits neatly into the opening.\" %<> WORD> \n<GLOBAL SOME-INFO \" Some information appears on the screen.\" %<> WORD> \n<GLOBAL GREEN-TEXT\n\"\\\"Oonlee peepul wix propur traaneeng shud piilot xe helikopturz. Reekwiird\nekwipmint inkluudz aa Helikoptur Akses Kard and aa Kuntrool Panul Kee. Xeez\nkan bee obtaand frum Tranzportaashun Stoorij.\\\"|\nThe rest is all very technical.\" %<> WORD> \n<GLOBAL RED-TEXT\n\"\\\"Xe jestaashun peereeid uv Xe Dizeez, folooweeng ekspoozur, vaareez\ntreemenduslee frum pursin tuu pursin, raanjeeng frum wun daa tuu sevrul\nrootaashunz. Wuns xe furst simptumz ar shoon, dex alwaaz okurz in aat tuu\nten daaz.|\nXe priimeree simptum iz aa hii feevur. Xe sekunderee simptum iz aa sharp\ninkrees in xe amownt uv sleep needid eec niit.\\\"|\nThe rest of the information is about symptoms which can be detected only by\nusing complicated medical procedures.\" %<> WORD> \n<ROOM PROJECT-CORRIDOR-WEST (IN ROOMS) (DESC \"Project Corridor West\") (LDESC\n\"This is a curving hallway leading east and northwest. There is an opening\nto the west.\") (C-MOVE <TABLE 0 0 0 0 25 0 0 0 0 0 0 0>) (WEST TO SANFAC-F) (\nEAST TO PROJECT-CORRIDOR) (NW TO FORK) (FLAGS RLANDBIT ONBIT)> \n<ROOM SANFAC-F (IN ROOMS) (DESC \"SanFac F\") (LDESC\n\"This is another dusty sanitary facility. Unlike the ones near the dorms,\nthis one is smaller and has no bathing fixtures.\") (C-MOVE <TABLE 0 0 0 0 0 0 0\n0 0 0 0 0>) (EAST TO PROJECT-CORRIDOR-WEST) (OUT TO PROJECT-CORRIDOR-WEST) (\nFLAGS FLOYDBIT RLANDBIT ONBIT) (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\"\nTOILET-PSEUDO)> \n<ROOM PROJECT-CORRIDOR (IN ROOMS) (DESC \"Project Corridor\") (LDESC\n\"You are at the center of a long east-west hallway. A doorway, labelled\n\\\"PrajKon Awfis\\\", opens to the south.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0\n>) (EAST TO PROJECT-CORRIDOR-EAST) (WEST TO PROJECT-CORRIDOR-WEST) (SOUTH TO\nPROJCON-OFFICE) (FLAGS RLANDBIT ONBIT)> \n<ROOM PROJCON-OFFICE (IN ROOMS) (DESC \"ProjCon Office\") (C-MOVE <TABLE 0 0 0 0\n0 0 0 0 0 0 0 0>) (NORTH TO PROJECT-CORRIDOR) (SOUTH TO CRYO-ELEVATOR IF\nCRYO-ELEVATOR-DOOR IS OPEN ELSE \"You can't go that way.\") (EAST TO\nCOMPUTER-ROOM) (FLAGS RLANDBIT FLOYDBIT ONBIT) (GLOBAL CRYO-ELEVATOR-DOOR) (\nPSEUDO \"MURAL\" MURAL-PSEUDO \"LOGO\" LOGO-PSEUDO) (ACTION PROJCON-OFFICE-F)> \n<DEFINE-ROUTINE PROJCON-OFFICE-F> \n<GLOBAL MURAL-FLAG <> %<> WORD> \n<OBJECT CRYO-ELEVATOR-DOOR (IN LOCAL-GLOBALS) (DESC \"cryo-elevator door\") (\nSYNONYM DOOR) (ADJECTIVE CRYO-ELEVATOR ELEVATOR) (FLAGS NDESCBIT INVISIBLE)> \n<ROOM CRYO-ELEVATOR (IN ROOMS) (DESC \"Cryo-Elevator\") (C-MOVE <TABLE 0 0 0 0 0\n0 0 0 0 0 0 0>) (NORTH PER CRYO-EXIT-F) (GLOBAL CRYO-ELEVATOR-DOOR) (FLAGS\nRLANDBIT ONBIT) (PSEUDO \"BUTTON\" CRYO-BUTTON-PSEUDO) (ACTION CRYO-ELEVATOR-F)> \n<DEFINE-ROUTINE CRYO-ELEVATOR-F> \n<DEFINE-ROUTINE CRYO-EXIT-F> \n<GLOBAL CRYO-SCORE-FLAG <> %<> WORD> \n<DEFINE-ROUTINE I-CRYO-ELEVATOR-ARRIVE> \n<ROOM CRYO-ANTEROOM (IN ROOMS) (DESC \"Cryo-Anteroom\") (C-MOVE <TABLE 0 0 0 0 0\n0 0 0 0 0 0 0>) (FLAGS RLANDBIT ONBIT) (ACTION CRYO-ANTEROOM-F)> \n<DEFINE-ROUTINE CRYO-ANTEROOM-F> \n<ROOM PROJECT-CORRIDOR-EAST (IN ROOMS) (DESC \"Project Corridor East\") (LDESC\n\"The hallway ends here but continues back toward the west. Doorways lead\nnorth, south and east.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO\nLIBRARY-LOBBY) (SOUTH TO COMPUTER-ROOM) (WEST TO PROJECT-CORRIDOR) (EAST TO\nMAIN-LAB) (FLAGS RLANDBIT ONBIT)> \n<ROOM COMPUTER-ROOM (IN ROOMS) (DESC \"Computer Room\") (LDESC\n\"This is the main computer room for the Project. The only sign of activity is\na glowing red light. The exits are north, west, and northeast. To the south\nis a small booth.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 25 0>) (NORTH TO\nPROJECT-CORRIDOR-EAST) (WEST TO PROJCON-OFFICE) (SOUTH TO MINI-BOOTH) (IN TO\nMINI-BOOTH) (NE TO MAIN-LAB) (FLAGS RLANDBIT FLOYDBIT ONBIT) (GLOBAL LIGHTS) (\nPSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)> \n<GLOBAL COMPUTER-FLAG <> %<> WORD> \n<DEFINE-ROUTINE COMPUTER-ACTION> \n<OBJECT PRINT-OUT (IN COMPUTER-ROOM) (DESC \"pile of computer output\") (SYNONYM\nPILE PAPER OUTPUT PRINTOUT) (ADJECTIVE COMPUTER) (SIZE 20) (FLAGS ACIDBIT\nTAKEBIT READBIT) (ACTION PRINT-OUT-F)> \n<DEFINE-ROUTINE PRINT-OUT-F> \n<ROOM MINI-BOOTH (IN ROOMS) (DESC \"Miniaturization Booth\") (LDESC\n\"This is a small room barely large enough for one person. Mounted on the wall\nis a small slot, and next to it a keyboard with numeric keys. The exit is to\nthe north.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO COMPUTER-ROOM)\n(OUT TO COMPUTER-ROOM) (FLAGS RLANDBIT ONBIT) (GLOBAL SLOT) (PSEUDO \"KEYBOARD\"\nKEYBOARD-PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)> \n<OBJECT MINI-CARD (IN BIO-LOCK-EAST) (DESC \"miniaturization access card\") (\nSYNONYM CARD CARDS) (ADJECTIVE MINIAT MINI ACCESS) (SIZE 3) (FLAGS TAKEBIT\nNDESCBIT INVISIBLE READBIT) (VALUE 1) (TEXT\n\"The card is embossed \\\"minitcurizaashun akses kard.\\\"\") (ACTION MINI-CARD-F)> \n<DEFINE-ROUTINE MINI-CARD-F> \n<ROOM MAIN-LAB (IN ROOMS) (DESC \"Main Lab\") (LDESC\n\"This is the heart of the Project's vast laboratory complex. There are exits\nto the west and southwest, and heavy metal doors to the northeast and\nsoutheast. A small doorway leads south.\") (C-MOVE <TABLE 0 0 0 0 0 0 25 0 0 0 0\n0>) (WEST TO PROJECT-CORRIDOR-EAST) (SOUTH TO LAB-STORAGE) (SW TO COMPUTER-ROOM\n) (SE TO BIO-LOCK-WEST IF BIO-DOOR-WEST IS OPEN) (NE TO RADIATION-LOCK-WEST IF\nRAD-DOOR-WEST IS OPEN) (FLAGS RLANDBIT FLOYDBIT ONBIT) (GLOBAL BIO-DOOR-WEST\nRAD-DOOR-WEST)> \n<ROOM LAB-STORAGE (IN ROOMS) (DESC \"Lab Storage\") (LDESC\n\"This is a tiny room for the storage of laboratory supplies. The sole exit is\nto the north.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO MAIN-LAB) (\nOUT TO MAIN-LAB) (FLAGS RLANDBIT FLOYDBIT ONBIT) (GLOBAL SHELVES) (PSEUDO\n\"RACK\" CARPET-PSEUDO \"SUPPLIES\" SUPPLIES-PSEUDO)> \n<OBJECT LAB-UNIFORM (IN LAB-STORAGE) (DESC \"lab uniform\") (FDESC\n\"Hanging on a rack is a pale blue lab uniform. Sewn onto its pocket is a\nnon-descript logo.\") (SYNONYM UNIFORM SUIT POCKET LOGO) (ADJECTIVE PALE BLUE\nLAB) (SIZE 10) (CAPACITY 5) (FLAGS TAKEBIT CONTBIT SEARCHBIT WEARBIT) (ACTION\nLAB-UNIFORM-F)> \n<GLOBAL UNIFORM-OPENED <> %<> WORD> \n<DEFINE-ROUTINE LAB-UNIFORM-F> \n<OBJECT TELEPORTATION-CARD (IN LAB-UNIFORM) (DESC \"teleportation access card\")\n(SYNONYM CARD CARDS) (ADJECTIVE TELEPO ACCESS) (SIZE 3) (FLAGS TAKEBIT READBIT)\n(TEXT \"The card is embossed \\\"teliportaashun akses kard.\\\"\")> \n<OBJECT COMBINATION-PAPER (IN LAB-UNIFORM) (DESC \"piece of paper\") (SYNONYM\nPIECE PAPER) (FLAGS ACIDBIT TAKEBIT READBIT) (SIZE 2) (ACTION\nCOMBINATION-PAPER-F)> \n<DEFINE-ROUTINE COMBINATION-PAPER-F> \n<ROOM BIO-LOCK-WEST (IN ROOMS) (DESC \"Bio Lock West\") (LDESC\n\"This is the first half of a sterilization chamber to prevent contamination\nof the delicate biological experiments in the Bio Lab which lies beyond. The\ndoor to the west leads to the main lab, and the bio lock continues eastward.\")\n(C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 10 0 0>) (EAST TO BIO-LOCK-EAST) (WEST TO\nMAIN-LAB IF BIO-DOOR-WEST IS OPEN) (FLAGS RLANDBIT ONBIT) (GLOBAL BIO-DOOR-WEST\n)> \n<ROOM BIO-LOCK-EAST (IN ROOMS) (DESC \"Bio Lock East\") (LDESC\n\"The is the second half of the sterilization chamber leading from the main\nlab to the Bio Lab. The door to the east, leading to the Bio Lab, has a\nwindow. The bio lock continues to the west.\") (C-MOVE <TABLE 0 0 0 0 0 10 0 0 0\n0 0 0>) (EAST TO BIO-LAB IF BIO-DOOR-EAST IS OPEN) (WEST TO BIO-LOCK-WEST) (\nFLAGS RLANDBIT ONBIT) (GLOBAL BIO-DOOR-EAST WINDOW) (ACTION BIO-LOCK-EAST-F)> \n<DEFINE-ROUTINE BIO-LOCK-EAST-F> \n<GLOBAL FLOYD-PEERED <> %<> WORD> \n<DEFINE-ROUTINE I-CLEAR-FLOYD-PEER> \n<ROOM RADIATION-LOCK-WEST (IN ROOMS) (DESC \"Radiation Lock West\") (LDESC\n\"This is the western half of a decontamination chamber to prevent dangerous\nradioactive materials from leaving the Radiation Lab which lies to the east.\nThe door leads west to the main lab.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>)\n(EAST TO RADIATION-LOCK-EAST) (WEST TO MAIN-LAB IF RAD-DOOR-WEST IS OPEN) (\nFLAGS RLANDBIT ONBIT) (GLOBAL RAD-DOOR-WEST)> \n<ROOM RADIATION-LOCK-EAST (IN ROOMS) (DESC \"Radiation Lock East\") (LDESC\n\"This is the eastern half of the decontamination chamber. The door to the\neast leads to the Radiation Lab, and the chamber continues westward. A sign\non the wall reads \\\"WORNEENG! Raadeeaashun suuts must bee worn beeyond xis\npoint.\\\"\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO RADIATION-LAB IF\nRAD-DOOR-EAST IS OPEN) (WEST TO RADIATION-LOCK-WEST) (FLAGS RLANDBIT ONBIT) (\nGLOBAL RAD-DOOR-EAST)> \n<OBJECT BIO-DOOR-EAST (IN LOCAL-GLOBALS) (DESC \"lab door\") (SYNONYM DOOR) (\nADJECTIVE LAB) (FLAGS DOORBIT NDESCBIT) (ACTION BIO-DOOR-EAST-F)> \n<OBJECT BIO-DOOR-WEST (IN LOCAL-GLOBALS) (DESC \"bio-lock door\") (SYNONYM DOOR)\n(ADJECTIVE BIO-LOCK) (FLAGS DOORBIT NDESCBIT) (ACTION BIO-DOOR-WEST-F)> \n<OBJECT RAD-DOOR-EAST (IN LOCAL-GLOBALS) (DESC \"lab door\") (SYNONYM DOOR) (\nADJECTIVE LAB) (FLAGS DOORBIT NDESCBIT) (ACTION RAD-DOOR-EAST-F)> \n<OBJECT RAD-DOOR-WEST (IN LOCAL-GLOBALS) (DESC \"radiation-lock door\") (SYNONYM\nDOOR) (ADJECTIVE RADIATION) (FLAGS DOORBIT NDESCBIT) (ACTION RAD-DOOR-WEST-F)> \n<DEFINE-ROUTINE BIO-DOOR-EAST-F> \n<DEFINE-ROUTINE I-BIO-EAST-CLOSES> \n<DEFINE-ROUTINE BIO-DOOR-WEST-F> \n<DEFINE-ROUTINE I-BIO-WEST-CLOSES> \n<DEFINE-ROUTINE RAD-DOOR-EAST-F> \n<DEFINE-ROUTINE RAD-DOOR-WEST-F> \n<GLOBAL BOTH-DOORS\n\"A very bored-sounding recorded voice explains that, in order to prevent\ncontamination, both lock doors cannot be open simultaneously.\" %<> WORD> \n<GLOBAL DOOR-OPENS \"The door opens.\" %<> WORD> \n<GLOBAL DOOR-CLOSES \"The door closes.\" %<> WORD> \n<GLOBAL FLOYD-WAITING <> %<> WORD> \n<GLOBAL WAITING-COUNTER 0 %<> WORD> \n<GLOBAL FLOYD-GAVE-UP <> %<> WORD> \n<GLOBAL FLOYD-FORAYED <> %<> WORD> \n<GLOBAL FORAY-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE I-FLOYD-FORAY> \n<DEFINE-ROUTINE MONSTER-DEATH> \n<ROOM BIO-LAB (IN ROOMS) (DESC \"Bio Lab\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0\n0>) (EAST TO LAB-OFFICE IF OFFICE-DOOR IS OPEN) (WEST TO BIO-LOCK-EAST IF\nBIO-DOOR-EAST IS OPEN) (FLAGS RLANDBIT ONBIT) (GLOBAL BIO-DOOR-EAST WINDOW\nOFFICE-DOOR) (PSEUDO \"CRACK\" CRACK-PSEUDO) (ACTION BIO-LAB-F)> \n<DEFINE-ROUTINE BIO-LAB-F> \n<GLOBAL EXTRA-MOVE-FLAG <> %<> WORD> \n<GLOBAL CRYO-MOVE-FLAG <> %<> WORD> \n<GLOBAL LAST-CHASE-ROOM <> %<> WORD> \n<GLOBAL SECOND-TO-LAST-ROOM <> %<> WORD> \n<DEFINE-ROUTINE I-CHASE-SCENE> \n<GLOBAL MONSTER-ENTRANCES <PLTABLE\n\"The growling humanoid is charging straight at you, waving his\naxe-like implement!\" \"A pair of slavering fangs removes part of your clothing!\"\n\"Needle-sharp mandibles nip at your arms!\"\n\"The mobile plant whips its poisonous tentacles against\nyour ankles!\"> %<> WORD> \n<ROOM RADIATION-LAB (IN ROOMS) (DESC \"Radiation Lab\") (LDESC\n\"This room is filled with unfathomable equipment and large canisters bearing\nradioactive warnings. Many of the canisters are split open. You can see the\nBio Lab through a large crack in the south wall. Sinister-looking forms move\nabout within the Bio Lab. Although the lights here are off, the room is\nsuffused with a pale blue glow.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (\nWEST TO RADIATION-LOCK-EAST IF RAD-DOOR-EAST IS OPEN) (FLAGS RLANDBIT ONBIT) (\nGLOBAL TABLES RAD-DOOR-EAST) (PSEUDO \"CRACK\" CRACK-PSEUDO \"EQUIPM\"\nEQUIPMENT-PSEUDO) (ACTION RADIATION-LAB-F)> \n<DEFINE-ROUTINE RADIATION-LAB-F> \n<GLOBAL NUKED-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE I-NUKED-BLUE> \n<OBJECT BROWN-SPOOL (IN RADIATION-LAB) (DESC \"brown spool\") (FDESC\n\"Sitting on a long table is a small brown spool.\") (SYNONYM SPOOL SPOOLS OBJECT\n) (ADJECTIVE BROWN SMALL) (SIZE 3) (TEXT\n\"The spool is labelled \\\"Instrukshunz foor Reepaareeng Reepaar Roobots.\\\"\") (\nFLAGS ACIDBIT TAKEBIT READBIT)> \n<OBJECT LAMP (IN RADIATION-LAB) (DESC \"portable lamp\") (FDESC\n\"There is a powerful portable lamp here, currently off.\") (SYNONYM LAMP LANTERN\nLIGHT) (ADJECTIVE POWERFUL PORTABLE) (SIZE 20) (FLAGS TAKEBIT) (ACTION LAMP-F)>\n\n<DEFINE-ROUTINE LAMP-F> \n<ROOM LAB-OFFICE (IN ROOMS) (DESC \"Lab Office\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0\n0 0 0 0>) (WEST TO BIO-LAB IF OFFICE-DOOR IS OPEN) (SOUTH TO AUXILIARY-BOOTH) (\nIN TO AUXILIARY-BOOTH) (GLOBAL OFFICE-DOOR) (FLAGS RLANDBIT ONBIT) (PSEUDO\n\"FILES\" CABINETS-PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO) (ACTION LAB-OFFICE-F)> \n<DEFINE-ROUTINE LAB-OFFICE-F> \n<OBJECT OFFICE-DOOR (IN LOCAL-GLOBALS) (DESC \"office door\") (SYNONYM DOOR) (\nADJECTIVE OFFICE) (FLAGS VOWELBIT DOORBIT NDESCBIT)> \n<OBJECT LAB-DESK (IN LAB-OFFICE) (DESC \"desk\") (SYNONYM DESK) (ADJECTIVE LARGE\nMESSY) (FLAGS CONTBIT SEARCHBIT NDESCBIT) (CAPACITY 10) (ACTION LAB-DESK-F)> \n<DEFINE-ROUTINE LAB-DESK-F> \n<OBJECT GAS-MASK (IN LAB-DESK) (DESC \"gas mask\") (SYNONYM MASK) (ADJECTIVE GAS)\n(FLAGS ACIDBIT TAKEBIT WEARBIT) (SIZE 10)> \n<OBJECT MEMO (DESC \"memo\") (SYNONYM MEMO) (FLAGS READBIT ACIDBIT TAKEBIT) (TEXT\n\"\\\"Memoo tuu awl lab pursunel: Duu tuu xe daanjuris naatshur uv xe biioo\neksperiments, an eemurjensee sistum haz bin instawld. Xis sistum wud flud\nxe entiir Biioo Lab wic aa dedlee fungasiid. Propur preecawshunz shud bee\ntaakin if xis sistum iz evur yuuzd.\\\"\")> \n<OBJECT LIGHT-BUTTON (IN LAB-OFFICE) (DESC \"white button\") (SYNONYM BUTTON) (\nADJECTIVE WHITE LIGHT) (FLAGS NDESCBIT) (ACTION LIGHT-BUTTON-F)> \n<OBJECT DARK-BUTTON (IN LAB-OFFICE) (DESC \"black button\") (SYNONYM BUTTON) (\nADJECTIVE BLACK DARK DARKNESS) (FLAGS NDESCBIT) (ACTION DARK-BUTTON-F)> \n<OBJECT FUNGICIDE-BUTTON (IN LAB-OFFICE) (DESC \"red button\") (SYNONYM BUTTON) (\nADJECTIVE RED FUNGICIDE EMERGENCY) (FLAGS NDESCBIT) (ACTION FUNGICIDE-BUTTON-F)\n> \n<GLOBAL LAB-LIGHTS-ON <> %<> WORD> \n<GLOBAL LAB-FLOODED <> %<> WORD> \n<DEFINE-ROUTINE LIGHT-BUTTON-F> \n<DEFINE-ROUTINE DARK-BUTTON-F> \n<GLOBAL FAINT-SOUND \"You hear the faint sound of a relay clicking.\" %<> WORD> \n<DEFINE-ROUTINE FUNGICIDE-BUTTON-F> \n<DEFINE-ROUTINE I-UNFLOOD> \n<ROOM AUXILIARY-BOOTH (IN ROOMS) (DESC \"Auxiliary Booth\") (LDESC\n\"This is another small booth. Unlike the Miniaturization Booth, this room\nhas no slot or keyboard, so presumably it is intended only as a receiving\nstation. The exit is on the northern side.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0\n0 0>) (NORTH TO LAB-OFFICE) (OUT TO LAB-OFFICE) (FLAGS RLANDBIT ONBIT) (VALUE 4\n) (PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)> \n<GLOBAL MINI-ACTIVATED <> %<> WORD> \n<DEFINE-ROUTINE I-TURNOFF-MINI> \n<ROOM STATION-384 (IN ROOMS) (DESC \"Station 384\") (LDESC\n\"You are standing on a square plate of heavy metal. Above your head, parallel\nto the plate beneath you, is an identical metal plate. To the east is a wide,\nmetallic strip.\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO\nSTRIP-NEAR-STATION) (FLAGS RLANDBIT ONBIT) (GLOBAL STRIP) (PSEUDO \"PLATE\"\nPLATE-PSEUDO \"PLATES\" PLATE-PSEUDO) (ACTION STATION-384-F)> \n<DEFINE-ROUTINE STATION-384-F> \n<DEFINE-ROUTINE I-ANNOUNCEMENT> \n<GLOBAL BEEN-HERE <> %<> WORD> \n<GLOBAL COMPUTER-FIXED <> %<> WORD> \n<GLOBAL FAMILIAR-WRENCHING\n\"You feel the familiar wrenching of your innards, and find yourself in a vast\nroom whose distant walls are rushing straight toward you...|\" %<> WORD> \n<ROOM STRIP-NEAR-STATION (IN ROOMS) (DESC \"Strip Near Station\") (LDESC\n\"You are standing on a silicon filament, which looks to you like a wide\nmetal highway. South of here, the filament makes a right angle and heads\nstraight down, like a cliff overlooking a black void. The filament can be\nfollowed north, however. Station 384 lies westward.\") (C-MOVE <TABLE 0 0 0 0 0\n0 0 0 0 0 0 0>) (SOUTH \"The plunge would probably be fatal.\") (EAST\n\"The plunge would probably be fatal.\") (NORTH TO MIDDLE-OF-STRIP) (WEST TO\nSTATION-384) (FLAGS RLANDBIT ONBIT) (VALUE 4) (PSEUDO \"VOID\" VOID-PSEUDO) (\nGLOBAL STRIP)> \n<ROOM MIDDLE-OF-STRIP (IN ROOMS) (DESC \"Middle of Strip\") (LDESC\n\"You are standing on a section of the strip with a bottomless void stretching\nout on both sides. The strip continues to the north and south.\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (NORTH TO STRIP-NEAR-RELAY) (SOUTH TO\nSTRIP-NEAR-STATION IF NO-MICROBE ELSE\n\"Not a chance -- unless,\nof course, you don't mind walking into the gullet of a hungry microbe.\") (EAST\n\"Do you have a penchant for bottomless voids?\") (WEST\n\"Do you have a penchant for bottomless voids?\") (FLAGS RLANDBIT ONBIT) (ACTION\nMIDDLE-OF-STRIP-F) (PSEUDO \"VOID\" VOID-PSEUDO) (GLOBAL STRIP)> \n<GLOBAL NO-MICROBE T %<> WORD> \n<GLOBAL MICROBE-DISPATCHED <> %<> WORD> \n<DEFINE-ROUTINE MIDDLE-OF-STRIP-F> \n<ROOM STRIP-NEAR-RELAY (IN ROOMS) (DESC \"Strip Near Relay\") (C-MOVE <TABLE 0 0\n0 0 0 0 0 0 0 0 0 0>) (NORTH\n\"There is a huge featureless wall there, remember?\") (SOUTH TO MIDDLE-OF-STRIP\nIF NO-MICROBE ELSE\n\"Not a chance -- unless,\nof course, you don't mind walking into the gullet of a hungry microbe.\") (EAST\nPER RELAY-EXIT-F) (WEST \"Do you have a penchant for bottomless voids?\") (FLAGS\nRLANDBIT ONBIT) (GLOBAL STRIP) (PSEUDO \"VOID\" VOID-PSEUDO) (ACTION\nSTRIP-NEAR-RELAY-F)> \n<DEFINE-ROUTINE STRIP-NEAR-RELAY-F> \n<DEFINE-ROUTINE RELAY-EXIT-F> \n<OBJECT RELAY (IN STRIP-NEAR-RELAY) (DESC \"micro-relay\") (SYNONYM MICRO RELAY)\n(ADJECTIVE MICRO) (FLAGS NDESCBIT TRANSBIT) (ACTION RELAY-F)> \n<DEFINE-ROUTINE RELAY-F> \n<OBJECT SPECK (IN RELAY) (DESC \"speck\") (SYNONYM SPECK BOULDER IMPURITY) (\nADJECTIVE BLUE) (FLAGS NDESCBIT)> \n<OBJECT LASER (IN TOOL-ROOM) (DESC \"laser\") (FDESC\n\"A small device, labelled \\\"Akmee Portabul Laazur\\\", is resting on one of\nthe lower shelves.\") (SYNONYM DEVICE LASER UNIT DEPRES) (ADJECTIVE PORTABLE\nACME) (SIZE 25) (CAPACITY 5) (FLAGS MUNGBIT TAKEBIT OPENBIT TRANSBIT CONTBIT) (\nACTION LASER-F)> \n<OBJECT LASER-DIAL (IN LASER) (DESC \"laser setting dial\") (SYNONYM DIAL) (\nADJECTIVE LASER SETTING) (FLAGS MUNGBIT NDESCBIT) (ACTION LASER-DIAL-F)> \n<DEFINE-ROUTINE LASER-DIAL-F> \n<OBJECT OLD-BATTERY (IN LASER) (DESC \"old battery\") (LDESC\n\"There is a worn-out laser battery here.\") (SYNONYM BATTERY) (ADJECTIVE LASER\nWORN-OUT OLD) (SIZE 5) (FLAGS VOWELBIT ACIDBIT TAKEBIT)> \n<OBJECT NEW-BATTERY (IN LAB-STORAGE) (DESC \"new battery\") (FDESC\n\"The odds and ends on the shelves include a small round object, which closer\ninspection reveals to be a fresh laser battery.\") (SYNONYM OBJECT BATTERY) (\nADJECTIVE LASER SMALL ROUND FRESH NEW) (SIZE 5) (FLAGS ACIDBIT TAKEBIT)> \n<GLOBAL LASER-SETTING 5 %<> WORD> \n<GLOBAL SPECK-HIT <> %<> WORD> \n<GLOBAL OLD-SHOTS 0 %<> WORD> \n<GLOBAL NEW-SHOTS 0 %<> WORD> \n<DEFINE-ROUTINE ZAP-COUNT> \n<DEFINE-ROUTINE LASER-F> \n<DEFINE-ROUTINE ALREADY-BATTERY> \n<DEFINE-ROUTINE BATTERY-NOW> \n<GLOBAL WARMTH-FLAG 0 %<> WORD> \n<GLOBAL LASER-JUST-SHOT <> %<> WORD> \n<DEFINE-ROUTINE I-WARMTH> \n<DEFINE-ROUTINE LASER-FEELS> \n<DEFINE-ROUTINE LASER-COOLS> \n<GLOBAL LASER-SCORE-FLAG <> %<> WORD> \n<GLOBAL MARKSMANSHIP-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE BEAM-COLOR> \n<DEFINE-ROUTINE SHOOT-SPECK> \n<GLOBAL BEAM-MISSES <PLTABLE \"The beam just misses the speck!\" \"A near miss!\"\n\"A good shot, but just a little wide of the target.\"> %<> WORD> \n<DEFINE-ROUTINE I-FRY> \n<OBJECT MICROBE (DESC \"microbe\") (LDESC\n\"A hungry microbe blocks your way, its cilia waving and its pseudopods\ntowering over you.\") (SYNONYM MICROBE BUG MONSTER) (ADJECTIVE HUNGRY) (FLAGS\nACTORBIT) (ACTION MICROBE-F)> \n<DEFINE-ROUTINE MICROBE-F> \n<DEFINE-ROUTINE I-MICROBE> \n<GLOBAL WINNER-ATTACKED <PLTABLE\n\"A pseudopod extends toward you. You jump back just in time\nto avoid being engulfed.\"\n\"A slimy pseudopod brushes against your shoulder. You twist\naway in the nick of time.\"\n\"A pseudopod shoots out toward your head! Ducking quickly,\nyou save your life.\"\n\"Two protoplasm-filled blobs sneak toward you from the left.\nYou jump to the side and almost fall off the strip into the void below!\"> %<>\nWORD> \n<GLOBAL MONSTER-CLOSES <PLTABLE\n\"The microbe slithers closer. The cilia around its gullet glisten\nwith mucus, giving the impression that the microbe is salivating.\"\n\"The microbe flows toward you. It towers above you, its cilia\nwaving madly in your face.\"\n\"The monster wriggles nearer. It is now so close that you can make\nout details in the protoplasm beneath its translucent skin.\"> %<> WORD> \n<GLOBAL MICROBE-HIT <> %<> WORD> \n<GLOBAL MICROBE-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE SHOOT-MICROBE> \n<GLOBAL MICROBE-STRIKES <PLTABLE\n\"The microbe's outer membrane sizzles a bit, and some protoplasm\noozes out. The microbe recoils momentarily, but quickly recovers.\"\n\"The beam slices through the microbe's skin! A tremendous shudder\npasses through the microbe, but the wound quickly seals itself.\"\n\"The monster rears back for a moment, but almost as soon as the\nbeam goes off, it advances again.\"> %<> WORD> \n<OBJECT STRIP (IN LOCAL-GLOBALS) (DESC \"silicon strip\") (SYNONYM STRIP SIDE\nEDGE) (ADJECTIVE SILICON) (FLAGS NDESCBIT) (ACTION STRIP-F)> \n<DEFINE-ROUTINE STRIP-F> \n<OBJECT RAT-ANT (IN BIO-LAB) (DESC \"rat-like, ant-like man-sized monster\") (\nLDESC \"A ferocious feral creature, with a hairy shelled body and\na whip-like tail snaps its enormous mandibles at you.\") (SYNONYM MONSTER MUTANT\nRAT-ANT) (ADJECTIVE RAT-LIKE ANT-LIKE MAN-SIZED) (FLAGS ACTORBIT)> \n<OBJECT TROLL (IN BIO-LAB) (DESC \"hairy growling biped\") (LDESC\n\"Rushing toward you is an ugly, deformed humanoid, bellowing\nin a guttural tongue. It brandishes a piece of lab equipment shaped\nsomewhat like a battle axe.\") (SYNONYM TROLL BIPED MUTANT MONSTER) (ADJECTIVE\nHAIRY GROWLING UGLY DEFORMED) (FLAGS ACTORBIT)> \n<OBJECT GRUE (IN BIO-LAB) (DESC \"lurking fanged creature\") (LDESC\n\"Lurking nearby is a vicious-looking creature with slavering\nfangs. Squinting in the light, it eyes you hungrily.\") (SYNONYM GRUE CREATURE\nMUTANT MONSTER) (ADJECTIVE LURKING SINISTER FANGED VICIOUS HUNGRY SILENT) (\nFLAGS ACTORBIT) (ACTION GRUE-F)> \n<DEFINE-ROUTINE GRUE-F> \n<OBJECT TRIFFID (IN BIO-LAB) (DESC \"mobile man-eating plant\") (LDESC\n\"A giant plant, teeming with poisonous tentacles, is shuffling\ntoward you on three leg-like stalks.\") (SYNONYM TRIFFID PLANT MUTANT MONSTER) (\nADJECTIVE MOBILE MAN-EATING GIANT) (FLAGS ACTORBIT)> "
  },
  {
    "path": "comptwo.zap",
    "content": "\n\n\t.FUNCT\tLAWANDA-PLATFORM-F,RARG\n\tZERO?\tLAWANDA-PLATFORM-FLAG \\?CND1\n\tSET\t'LAWANDA-PLATFORM-FLAG,TRUE-VALUE\n\tSET\t'SICKNESS-WARNING-FLAG,TRUE-VALUE\n?CND1:\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a wide, flat strip of concrete. \"\n\tZERO?\tALFIE-AT-KALAMONTEE \\?CCL8\n\tZERO?\tBETTY-AT-KALAMONTEE \\?CCL8\n\tPRINTI\t\"Open shuttle cars lie to the north and south.\"\n\tJUMP\t?CND6\n?CCL8:\tZERO?\tALFIE-AT-KALAMONTEE /?CCL11\n\tZERO?\tBETTY-AT-KALAMONTEE \\?CND6\n?CCL11:\tPRINTI\t\"An open shuttle car lies to the \"\n\tZERO?\tALFIE-AT-KALAMONTEE /?CCL16\n\tPRINTI\t\"north.\"\n\tJUMP\t?CND6\n?CCL16:\tPRINTI\t\"south.\"\n?CND6:\tPRINTR\t\" A wide escalator, not currently operating, beckons upward at the east end of the platform. A faded sign reads \"\"Shutul Platform -- Lawanda Staashun.\"\"\"\n\n\n\t.FUNCT\tINFIRMARY-F,RARG\n\tEQUAL?\tRARG,M-END \\FALSE\n\tZERO?\tLAZARUS-FLAG \\FALSE\n\tIN?\tFLOYD,HERE \\FALSE\n\tFSET?\tFLOYD,RLANDBIT \\FALSE\n\tRANDOM\t100\n\tLESS?\t30,STACK /FALSE\n\tSET\t'LAZARUS-FLAG,TRUE-VALUE\n\tMOVE\tLAZARUS-PART,HERE\n\tMOVE\tFLOYD,FORK\n\tSET\t'FLOYD-FOLLOW,FALSE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTR\t\"Floyd, rummaging in a corner, finds something and carries it to the center of the room to examine it in the brighter light. It seems to be the breast plate of a robot, along with some connected inner circuitry. The entire piece is bent and rusting. Floyd stares at it in complete silence. A moment later, he begins sobbing quietly, awkwardly excuses himself, and runs out of the room. You look at the breast plate, and notice the name \"\"Lazarus\"\" engraved on it.\"\n\n\n\t.FUNCT\tRED-SPOOL-F\n\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tIN?\tRED-SPOOL,SPOOL-READER \\FALSE\n\tFSET?\tSPOOL-READER,ONBIT \\FALSE\n\tMOVE\tRED-SPOOL,ADVENTURER\n\tFCLEAR\tRED-SPOOL,TRYTAKEBIT\n\tPRINTR\t\"The screen goes blank as you take the spool.\"\n\n\n\t.FUNCT\tMEDICINE-F,X=0\n\tEQUAL?\tPRSA,V?POUR,V?EAT,V?TASTE \\?CCL3\n\tIN?\tMEDICINE-BOTTLE,ADVENTURER /?CCL3\n\tSET\t'PRSO,MEDICINE-BOTTLE\n\tCALL\tNOT-HOLDING\n\tCALL\tTHIS-IS-IT,MEDICINE-BOTTLE\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?POUR,V?EAT,V?TASTE \\?CCL7\n\tFSET?\tMEDICINE-BOTTLE,OPENBIT /?CCL7\n\tPRINTR\t\"The bottle is closed.\"\n?CCL7:\tEQUAL?\tPRSA,V?TASTE \\?CCL11\n\tPRINTR\t\"It tastes fairly bitter.\"\n?CCL11:\tEQUAL?\tPRSA,V?EAT \\?CCL13\n\tREMOVE\tMEDICINE\n\tSET\t'C-ELAPSED,15\n\tSUB\tSICKNESS-LEVEL,2 >SICKNESS-LEVEL\n\tADD\tLOAD-ALLOWED,20 >LOAD-ALLOWED\n\tPRINTR\t\"The medicine tasted extremely bitter.\"\n?CCL13:\tEQUAL?\tPRSA,V?POUR \\?CCL15\n\tREMOVE\tMEDICINE\n\tZERO?\tPRSI \\?CND16\n\tSET\t'PRSI,GROUND\n?CND16:\tEQUAL?\tPRSI,FUNNEL-HOLE \\?CCL20\n\tIN?\tCHEMICAL-FLUID,FLASK \\?CND21\n\tSET\t'X,TRUE-VALUE\n?CND21:\tSET\t'CHEMICAL-REQUIRED,10\n\tCALL\tPERFORM,V?POUR,CHEMICAL-FLUID,FUNNEL-HOLE\n\tZERO?\tX /TRUE\n\tMOVE\tCHEMICAL-FLUID,FLASK\n\tRTRUE\t\n?CCL20:\tPRINTI\t\"It pours over the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\" and evaporates.\"\n?CCL15:\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tGET\tP-VTBL,0\n\tEQUAL?\tSTACK,W?TAKE \\FALSE\n\tCALL\tPERFORM,V?EAT,MEDICINE\n\tRTRUE\t\n\n\n\t.FUNCT\tROBOT-HOLE-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"It's too small for you to get through. It was presumably intended for robots, such as the broken repair robot lying over there.\"\n?CCL3:\tEQUAL?\tPRSA,V?LOOK-INSIDE \\?CCL5\n\tPRINTR\t\"You can make out a small supply room of some sort.\"\n?CCL5:\tEQUAL?\tPRSA,V?CLOSE,V?OPEN \\FALSE\n\tPRINTR\t\"There's no door, just an opening in the wall.\"\n\n\n\t.FUNCT\tFLOYD-THROUGH-HOLE\n\tZERO?\tHOLE-TRIP-FLAG /?CCL3\n\tPRINTR\t\"\"\"Not again,\"\" whines Floyd.\"\n?CCL3:\tSET\t'C-ELAPSED,50\n\tSET\t'HOLE-TRIP-FLAG,TRUE-VALUE\n\tSET\t'BOARD-REPORTED,TRUE-VALUE\n\tFCLEAR\tGOOD-BOARD,INVISIBLE\n\tPRINTR\t\"Floyd squeezes through the opening and is gone for quite a while. You hear thudding noises and squeals of enjoyment. After a while the noise stops, and Floyd emerges, looking downcast. \"\"Floyd found a rubber ball inside. Lots of fun for a while, but must have been old, because it fell apart. Nothing else interesting inside. Just a shiny fromitz board.\"\"\"\n\n\n\t.FUNCT\tGOOD-BOARD-F\n\tFSET?\tGOOD-BOARD,NDESCBIT \\?CCL3\n\tEQUAL?\tPRSA,V?LOOK-UNDER /?PRD6\n\tEQUAL?\tPRSA,V?MOVE,V?PULL,V?PUSH /?PRD6\n\tEQUAL?\tPRSA,V?RUB,V?EXAMINE,V?TAKE \\?CCL3\n?PRD6:\tEQUAL?\tGOOD-BOARD,PRSO \\?CCL3\n\tPRINTI\t\"You can't see any \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" here.\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tCALL\tEXAMINE-BOARD\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tPLANETARY-DEFENSE-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This room is filled with a dazzling array of lights and controls. \"\n\tZERO?\tDEFENSE-FIXED \\?CND4\n\tPRINTI\t\"One light, blinking quickly, catches your eye. It reads \"\"Surkit Boord Faalyur. WORNEENG: xis boord kuntroolz xe diskriminaashun surkits.\"\"\"\n?CND4:\tPRINTI\t\" There is a small access panel on one wall which is \"\n\tCALL\tDDESC,ACCESS-PANEL\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tACCESS-PANEL-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tACCESS-PANEL,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET\tACCESS-PANEL,OPENBIT\n\tPRINTI\t\"The panel swings open.\"\n\tCRLF\t\n\tCALL\tPERFORM,V?LOOK-INSIDE,ACCESS-PANEL\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL8\n\tFSET?\tACCESS-PANEL,OPENBIT \\?CCL11\n\tFCLEAR\tACCESS-PANEL,OPENBIT\n\tPRINTR\t\"The panel swings closed.\"\n?CCL11:\tCALL\tIS-CLOSED\n\tRSTACK\t\n?CCL8:\tEQUAL?\tPRSA,V?PUT \\FALSE\n\tEQUAL?\tPRSI,ACCESS-PANEL \\FALSE\n\tFSET?\tACCESS-PANEL,OPENBIT /?CCL18\n\tPRINTR\t\"The panel is closed.\"\n?CCL18:\tZERO?\tACCESS-PANEL-FULL /?CCL20\n\tPRINTR\t\"There's no room.\"\n?CCL20:\tEQUAL?\tPRSO,GOOD-BOARD \\?CCL22\n\tREMOVE\tGOOD-BOARD\n\tMOVE\tSECOND-BOARD,ACCESS-PANEL\n\tCALL\tTHIS-IS-IT,SECOND-BOARD\n\tSET\t'DEFENSE-FIXED,TRUE-VALUE\n\tADD\tSCORE,6 >SCORE\n\tSET\t'ACCESS-PANEL-FULL,TRUE-VALUE\n\tCALL\tPUT-BOARD\n\tPRINTR\t\" The warning lights stop flashing.\"\n?CCL22:\tEQUAL?\tPRSO,CRACKED-BOARD,FRIED-BOARD \\?CCL24\n\tREMOVE\tPRSO\n\tCALL\tTHIS-IS-IT,SECOND-BOARD\n\tMOVE\tSECOND-BOARD,ACCESS-PANEL\n\tSET\t'ACCESS-PANEL-FULL,TRUE-VALUE\n\tEQUAL?\tPRSO,CRACKED-BOARD \\?CND25\n\tSET\t'ITS-CRACKED,TRUE-VALUE\n?CND25:\tCALL\tPUT-BOARD\n\tCRLF\t\n\tRTRUE\t\n?CCL24:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" doesn't fit.\"\n\tRTRUE\t\n\n\n\t.FUNCT\tFRIED-BOARD-F\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tCALL\tEXAMINE-BOARD\n\tPRINTR\t\" This one is a bit blackened around the edges, though.\"\n\n\n\t.FUNCT\tBOARD-F\n\tEQUAL?\tPRSA,V?TAKE \\?CCL3\n\tEQUAL?\tPRSO,SECOND-BOARD \\?CCL6\n\tZERO?\tDEFENSE-FIXED /?CCL9\n\tCALL\tBOARD-SHOCK\n\tRSTACK\t\n?CCL9:\tPRINTI\t\"The fromitz board slides out of the panel, producing an empty socket for another board.\"\n\tCRLF\t\n\tREMOVE\tSECOND-BOARD\n\tSET\t'ACCESS-PANEL-FULL,FALSE-VALUE\n\tEQUAL?\tITS-CRACKED,TRUE-VALUE \\?CCL12\n\tMOVE\tCRACKED-BOARD,ADVENTURER\n\tJUMP\t?CND10\n?CCL12:\tMOVE\tFRIED-BOARD,ADVENTURER\n?CND10:\tCALL\tTHIS-IS-IT,FRIED-BOARD\n\tRSTACK\t\n?CCL6:\tCALL\tBOARD-SHOCK\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tCALL\tEXAMINE-BOARD\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tEXAMINE-BOARD\n\tPRINTI\t\"Like most fromitz boards, it is a twisted maze of silicon circuits. It is square, approximately seventeen centimeters on each side.\"\n\tRTRUE\t\n\n\n\t.FUNCT\tPUT-BOARD\n\tPRINTI\t\"The card clicks neatly into the socket.\"\n\tRTRUE\t\n\n\n\t.FUNCT\tBOARD-SHOCK\n\tPRINTR\t\"You jerk your hand back as you receive a powerful shock from the fromitz board.\"\n\n\n\t.FUNCT\tPLANETARY-COURSE-CONTROL-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a long room whose walls are covered with complicated controls and colored lights. \"\n\tZERO?\tCOURSE-CONTROL-FIXED /?CCL6\n\tPRINTI\t\"One blinking light says \"\"Kors diivurjins minimiizeeng.\"\"\"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"Two of these lights are blinking. The first one reads \"\"Bedistur Faalyur!\"\" The other light reads \"\"Kritikul diivurjins frum pland kors.\"\"\"\n?CND4:\tPRINTI\t\" In one corner is a large metal cube whose lid is \"\n\tFSET?\tCUBE,OPENBIT \\?CCL9\n\tPRINTI\t\"open\"\n\tJUMP\t?CND7\n?CCL9:\tPRINTI\t\"closed\"\n?CND7:\tPRINTR\t\".\"\n\n\n\t.FUNCT\tCUBE-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tCUBE,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET\tCUBE,OPENBIT\n\tPRINTI\t\"The lid swings open.\"\n\tCRLF\t\n\tCALL\tPERFORM,V?LOOK-INSIDE,CUBE\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL8\n\tFSET?\tCUBE,OPENBIT \\?CCL11\n\tFCLEAR\tCUBE,OPENBIT\n\tPRINTR\t\"The lid swings closed.\"\n?CCL11:\tCALL\tIS-CLOSED\n\tRSTACK\t\n?CCL8:\tEQUAL?\tPRSA,V?PUT \\FALSE\n\tEQUAL?\tPRSI,CUBE \\FALSE\n\tFSET?\tCUBE,OPENBIT /?CCL18\n\tPRINTR\t\"The cube is closed.\"\n?CCL18:\tIN?\tBAD-BEDISTOR,CUBE \\?CCL20\n\tPRINTR\t\"There's a fused bedistor in the way.\"\n?CCL20:\tEQUAL?\tPRSO,GOOD-BEDISTOR \\?CCL22\n\tMOVE\tGOOD-BEDISTOR,CUBE\n\tFSET?\tCUBE,MUNGEDBIT /?CCL25\n\tSET\t'COURSE-CONTROL-FIXED,TRUE-VALUE\n\tFSET\tGOOD-BEDISTOR,TRYTAKEBIT\n\tADD\tSCORE,6 >SCORE\n\tPRINTR\t\"Done. The warning lights go out and another light goes on.\"\n?CCL25:\tPRINTR\t\"Done.\"\n?CCL22:\tEQUAL?\tPRSO,BAD-BEDISTOR \\?CCL27\n\tMOVE\tBAD-BEDISTOR,CUBE\n\tPRINTR\t\"Done.\"\n?CCL27:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" doesn't fit.\"\n\tRTRUE\t\n\n\n\t.FUNCT\tBAD-BEDISTOR-F\n\tEQUAL?\tPRSA,V?TAKE \\?CCL3\n\tIN?\tBAD-BEDISTOR,CUBE \\?CCL3\n\tPRINTR\t\"It seems to be fused to its socket.\"\n?CCL3:\tEQUAL?\tPRSA,V?ZATTRACT \\FALSE\n\tEQUAL?\tPRSI,PLIERS \\?CCL10\n\tMOVE\tBAD-BEDISTOR,ADVENTURER\n\tFCLEAR\tBAD-BEDISTOR,TRYTAKEBIT\n\tPRINTR\t\"With a tug, you manage to remove the fused bedistor.\"\n?CCL10:\tPRINTR\t\"You can't get a grip on the bedistor with that.\"\n\n\n\t.FUNCT\tGREEN-SPOOL-F\n\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tIN?\tGREEN-SPOOL,SPOOL-READER \\FALSE\n\tFSET?\tSPOOL-READER,ONBIT \\FALSE\n\tMOVE\tGREEN-SPOOL,ADVENTURER\n\tFCLEAR\tGREEN-SPOOL,TRYTAKEBIT\n\tPRINTR\t\"The screen goes blank as you take the spool.\"\n\n\n\t.FUNCT\tTERMINAL-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTI\t\"The computer terminal consists of a video display screen, a keyboard with ten keys numbered from zero through nine, and an on-off switch. \"\n\tFSET?\tTERMINAL,ONBIT \\?CCL6\n\tPRINTI\t\"The screen displays some writing:\"\n\tCRLF\t\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tGRTR?\tMENU-LEVEL,9 \\TRUE\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL6:\tPRINTR\t\"The screen is dark.\"\n?CCL3:\tEQUAL?\tPRSA,V?READ \\?CCL10\n\tFSET?\tTERMINAL,ONBIT \\?CCL13\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tGRTR?\tMENU-LEVEL,9 \\TRUE\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL13:\tPRINTR\t\"The screen is blank.\"\n?CCL10:\tEQUAL?\tPRSA,V?LAMP-ON \\?CCL17\n\tFSET?\tTERMINAL,ONBIT \\?CCL20\n\tPRINTR\t\"It's already on.\"\n?CCL20:\tFSET\tTERMINAL,ONBIT\n\tFSET\tTERMINAL,TOUCHBIT\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINTI\t\"The screen gives off a green flash, and then some writing appears on the screen:\"\n\tCRLF\t\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL17:\tEQUAL?\tPRSA,V?LAMP-OFF \\FALSE\n\tFSET?\tTERMINAL,ONBIT \\?CCL25\n\tFCLEAR\tTERMINAL,ONBIT\n\tSET\t'MENU-LEVEL,0\n\tPRINTR\t\"The screen goes dark.\"\n?CCL25:\tPRINTR\t\"It isn't on!\"\n\n\n\t.FUNCT\tLIBRARY-TYPE\n\tEQUAL?\tPRSO,INTNUM /?CCL3\n\tCALL\tNUMBERS-ONLY\n\tRSTACK\t\n?CCL3:\tZERO?\tMENU-LEVEL \\?CCL5\n\tZERO?\tP-NUMBER \\?CCL8\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL8:\tEQUAL?\tP-NUMBER,1 \\?CCL10\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,HISTORY-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tSET\t'MENU-LEVEL,1\n\tRETURN\tMENU-LEVEL\n?CCL10:\tEQUAL?\tP-NUMBER,2 \\?CCL12\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,CULTURE-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tSET\t'MENU-LEVEL,2\n\tRETURN\tMENU-LEVEL\n?CCL12:\tEQUAL?\tP-NUMBER,3 \\?CCL14\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,TECHNOLOGY-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tSET\t'MENU-LEVEL,3\n\tRETURN\tMENU-LEVEL\n?CCL14:\tEQUAL?\tP-NUMBER,4 \\?CCL16\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,GEOGRAPHY-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tSET\t'MENU-LEVEL,4\n\tRETURN\tMENU-LEVEL\n?CCL16:\tEQUAL?\tP-NUMBER,5 \\?CCL18\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,PROJECT-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tSET\t'MENU-LEVEL,5\n\tRETURN\tMENU-LEVEL\n?CCL18:\tEQUAL?\tP-NUMBER,6 \\?CCL20\n\tSET\t'MENU-LEVEL,6\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,INTERLOGIC-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL20:\tGRTR?\tP-NUMBER,6 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL5:\tEQUAL?\tMENU-LEVEL,1 \\?CCL24\n\tZERO?\tP-NUMBER \\?CCL27\n\tSET\t'MENU-LEVEL,0\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL27:\tEQUAL?\tP-NUMBER,1 \\?CCL29\n\tSET\t'MENU-LEVEL,11\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,11-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL29:\tEQUAL?\tP-NUMBER,2 \\?CCL31\n\tSET\t'MENU-LEVEL,12\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,12-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL31:\tEQUAL?\tP-NUMBER,3 \\?CCL33\n\tSET\t'MENU-LEVEL,13\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,13-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL33:\tGRTR?\tP-NUMBER,3 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL24:\tEQUAL?\tMENU-LEVEL,2 \\?CCL37\n\tZERO?\tP-NUMBER \\?CCL40\n\tSET\t'MENU-LEVEL,0\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL40:\tEQUAL?\tP-NUMBER,1 \\?CCL42\n\tSET\t'MENU-LEVEL,21\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,21-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL42:\tEQUAL?\tP-NUMBER,2 \\?CCL44\n\tSET\t'MENU-LEVEL,22\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,22-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL44:\tEQUAL?\tP-NUMBER,3 \\?CCL46\n\tSET\t'MENU-LEVEL,23\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,23-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL46:\tGRTR?\tP-NUMBER,4 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL37:\tEQUAL?\tMENU-LEVEL,3 \\?CCL50\n\tZERO?\tP-NUMBER \\?CCL53\n\tSET\t'MENU-LEVEL,0\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL53:\tEQUAL?\tP-NUMBER,1 \\?CCL55\n\tSET\t'MENU-LEVEL,31\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,31-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL55:\tEQUAL?\tP-NUMBER,2 \\?CCL57\n\tSET\t'MENU-LEVEL,32\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,32-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL57:\tEQUAL?\tP-NUMBER,3 \\?CCL59\n\tSET\t'MENU-LEVEL,33\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,33-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL59:\tEQUAL?\tP-NUMBER,4 \\?CCL61\n\tSET\t'MENU-LEVEL,34\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,34-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL61:\tEQUAL?\tP-NUMBER,5 \\?CCL63\n\tSET\t'MENU-LEVEL,35\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,35-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL63:\tGRTR?\tP-NUMBER,5 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL50:\tEQUAL?\tMENU-LEVEL,4 \\?CCL67\n\tZERO?\tP-NUMBER \\?CCL70\n\tSET\t'MENU-LEVEL,0\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL70:\tEQUAL?\tP-NUMBER,1 \\?CCL72\n\tSET\t'MENU-LEVEL,41\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,41-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL72:\tEQUAL?\tP-NUMBER,2 \\?CCL74\n\tSET\t'MENU-LEVEL,42\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,42-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL74:\tEQUAL?\tP-NUMBER,3 \\?CCL76\n\tSET\t'MENU-LEVEL,43\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,43-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL76:\tGRTR?\tP-NUMBER,3 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL67:\tEQUAL?\tMENU-LEVEL,5 \\?CCL80\n\tZERO?\tP-NUMBER \\?CCL83\n\tSET\t'MENU-LEVEL,0\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL83:\tEQUAL?\tP-NUMBER,1 \\?CCL85\n\tSET\t'MENU-LEVEL,51\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,51-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL85:\tEQUAL?\tP-NUMBER,2 \\?CCL87\n\tSET\t'MENU-LEVEL,52\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,52-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL87:\tEQUAL?\tP-NUMBER,3 \\?CCL89\n\tSET\t'MENU-LEVEL,53\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,53-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL89:\tGRTR?\tP-NUMBER,3 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL80:\tEQUAL?\tMENU-LEVEL,6 \\?CCL93\n\tZERO?\tP-NUMBER \\?CCL96\n\tSET\t'MENU-LEVEL,0\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,MAIN-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL96:\tEQUAL?\tP-NUMBER,1 \\?CCL98\n\tSET\t'MENU-LEVEL,61\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,61-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tIN?\tFLOYD,HERE \\FALSE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTR\t\"Floyd, peering over your shoulder, says \"\"Oh, I love that game! Solved every problem, except couldn't figure out how to get into white house.\"\"\"\n?CCL98:\tEQUAL?\tP-NUMBER,2 \\?CCL103\n\tSET\t'MENU-LEVEL,62\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,62-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL103:\tEQUAL?\tP-NUMBER,3 \\?CCL105\n\tSET\t'MENU-LEVEL,63\n\tPRINT\tTEXT-APPEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,63-TEXT\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tPRINT\tMORE-INFO\n\tCRLF\t\n\tRTRUE\t\n?CCL105:\tGRTR?\tP-NUMBER,3 \\FALSE\n\tPRINT\tNO-MEANING\n\tCRLF\t\n\tRTRUE\t\n?CCL93:\tGRTR?\tMENU-LEVEL,10 \\?CCL109\n\tLESS?\tMENU-LEVEL,20 \\?CCL109\n\tZERO?\tP-NUMBER \\?CCL114\n\tSET\t'MENU-LEVEL,1\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,HISTORY-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL114:\tPRINT\tLOW-END\n\tCRLF\t\n\tRTRUE\t\n?CCL109:\tGRTR?\tMENU-LEVEL,20 \\?CCL116\n\tLESS?\tMENU-LEVEL,30 \\?CCL116\n\tZERO?\tP-NUMBER \\?CCL121\n\tSET\t'MENU-LEVEL,2\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,CULTURE-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL121:\tPRINT\tLOW-END\n\tCRLF\t\n\tRTRUE\t\n?CCL116:\tGRTR?\tMENU-LEVEL,30 \\?CCL123\n\tLESS?\tMENU-LEVEL,40 \\?CCL123\n\tZERO?\tP-NUMBER \\?CCL128\n\tSET\t'MENU-LEVEL,3\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,TECHNOLOGY-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL128:\tPRINT\tLOW-END\n\tCRLF\t\n\tRTRUE\t\n?CCL123:\tGRTR?\tMENU-LEVEL,40 \\?CCL130\n\tLESS?\tMENU-LEVEL,50 \\?CCL130\n\tZERO?\tP-NUMBER \\?CCL135\n\tSET\t'MENU-LEVEL,4\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,GEOGRAPHY-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL135:\tPRINT\tLOW-END\n\tCRLF\t\n\tRTRUE\t\n?CCL130:\tGRTR?\tMENU-LEVEL,50 \\?CCL137\n\tLESS?\tMENU-LEVEL,60 \\?CCL137\n\tZERO?\tP-NUMBER \\?CCL142\n\tSET\t'MENU-LEVEL,5\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,PROJECT-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL142:\tPRINT\tLOW-END\n\tCRLF\t\n\tRTRUE\t\n?CCL137:\tGRTR?\tMENU-LEVEL,60 \\FALSE\n\tLESS?\tMENU-LEVEL,70 \\FALSE\n\tZERO?\tP-NUMBER \\?CCL149\n\tSET\t'MENU-LEVEL,6\n\tPRINT\tSCREEN-CLEARS\n\tCRLF\t\n\tSET\t'SCREEN-TEXT,INTERLOGIC-MENU\n\tPRINT\tSCREEN-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL149:\tPRINT\tLOW-END\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tSPOOL-READER-F\n\tEQUAL?\tPRSA,V?LAMP-ON \\?CCL3\n\tFSET?\tSPOOL-READER,ONBIT \\?CCL6\n\tPRINTR\t\"The spool reader is already on.\"\n?CCL6:\tFSET\tSPOOL-READER,ONBIT\n\tFSET\tSPOOL-READER,TOUCHBIT\n\tFIRST?\tSPOOL-READER \\?CCL9\n\tPRINT\tSPOOL-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL9:\tPRINTR\t\"The machine hums quietly, and the screen lights up with the phrase \"\"Pleez insurt spuul.\"\"\"\n?CCL3:\tEQUAL?\tPRSA,V?LAMP-OFF \\?CCL11\n\tFSET?\tSPOOL-READER,ONBIT \\?CCL14\n\tFCLEAR\tSPOOL-READER,ONBIT\n\tPRINTR\t\"The spool reader is now off.\"\n?CCL14:\tPRINTR\t\"It's not on!\"\n?CCL11:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL16\n\tPRINTI\t\"The machine has a small screen, and below that, a small circular opening. The screen is currently \"\n\tFSET?\tSPOOL-READER,ONBIT \\?CCL19\n\tFIRST?\tSPOOL-READER \\?CCL19\n\tPRINTI\t\"displaying some information:\"\n\tCRLF\t\n\tPRINT\tSPOOL-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL19:\tPRINTR\t\"blank.\"\n?CCL16:\tEQUAL?\tPRSA,V?READ \\?CCL23\n\tFSET?\tSPOOL-READER,ONBIT \\?CCL26\n\tFIRST?\tSPOOL-READER \\?CCL26\n\tPRINT\tSPOOL-TEXT\n\tCRLF\t\n\tRTRUE\t\n?CCL26:\tPRINTR\t\"The screen is blank.\"\n?CCL23:\tEQUAL?\tPRSA,V?PUT \\?CCL30\n\tEQUAL?\tPRSI,SPOOL-READER \\?CCL30\n\tFIRST?\tSPOOL-READER \\?CCL35\n\tPRINTR\t\"There's already a spool in the reader.\"\n?CCL35:\tEQUAL?\tPRSO,GREEN-SPOOL \\?CCL37\n\tSET\t'SPOOL-TEXT,GREEN-TEXT\n\tMOVE\tGREEN-SPOOL,SPOOL-READER\n\tFSET\tGREEN-SPOOL,TRYTAKEBIT\n\tPRINT\tSPOOL-FITS\n\tFSET?\tSPOOL-READER,ONBIT \\?CND38\n\tPRINT\tSOME-INFO\n?CND38:\tCRLF\t\n\tRTRUE\t\n?CCL37:\tEQUAL?\tPRSO,RED-SPOOL \\?CCL41\n\tSET\t'SPOOL-TEXT,RED-TEXT\n\tMOVE\tRED-SPOOL,SPOOL-READER\n\tFSET\tRED-SPOOL,TRYTAKEBIT\n\tPRINT\tSPOOL-FITS\n\tFSET?\tSPOOL-READER,ONBIT \\?CND42\n\tPRINT\tSOME-INFO\n?CND42:\tCRLF\t\n\tRTRUE\t\n?CCL41:\tPRINTR\t\"It doesn't fit in the circular opening.\"\n?CCL30:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tCALL\tNO-CLOSE\n\tRTRUE\t\n\n\n\t.FUNCT\tPROJCON-OFFICE-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"This office looks like a headquarters of some kind. Exits lead north and east. The west wall displays a logo. \"\n\tZERO?\tCOMPUTER-FIXED /?CCL6\n\tPRINTR\t\"The mural that previously adorned the south wall has slid away, revealing an open doorway to a large elevator!\"\n?CCL6:\tPRINTR\t\"The south wall is completely covered by a garish mural which clashes with the other decor of the room.\"\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tIN?\tFLOYD,HERE \\FALSE\n\tZERO?\tMURAL-FLAG \\FALSE\n\tSET\t'MURAL-FLAG,TRUE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTR\t\"Floyd surveys the mural and scratches his head. \"\"I don't remember seeing this before,\"\" he comments.\"\n\n\n\t.FUNCT\tCRYO-ELEVATOR-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a large, plain elevator with one solitary button and a door to the north which is \"\n\tCALL\tDDESC,CRYO-ELEVATOR-DOOR\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tCRYO-EXIT-F\n\tFSET?\tCRYO-ELEVATOR-DOOR,OPENBIT \\?CCL3\n\tZERO?\tCRYO-SCORE-FLAG /?CCL6\n\tRETURN\tCRYO-ANTEROOM\n?CCL6:\tRETURN\tPROJCON-OFFICE\n?CCL3:\tCALL\tDOOR-CLOSED\n\tRFALSE\t\n\n\n\t.FUNCT\tI-CRYO-ELEVATOR-ARRIVE\n\tFSET\tCRYO-ELEVATOR-DOOR,OPENBIT\n\tCRLF\t\n\tPRINTR\t\"The elevator door opens onto a room to the north.\"\n\n\n\t.FUNCT\tCRYO-ANTEROOM-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"The elevator closes as you leave it, and you find yourself in a small, chilly room. To the north, through a wide arch, is an enormous chamber lined from floor to ceiling with thousands of cryo-units. You can see similar chambers beyond, and your mind staggers at the thought of the millions of individuals asleep for countless centuries.\n\nIn the anteroom where you stand is a solitary cryo-unit, its cover frosted. Next to the cryo-unit is a complicated control panel.\"\n\tCRLF\t\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tPRINTI\t\"A door slides open and a medical robot glides in. It opens the cryo-unit and administers an injection to its inhabitant. As the robot glides away, a figure rises from the cryo-unit -- a handsome, middle-aged woman with flowing red hair. She spends some time studying readouts from the control panel\"\n\tZERO?\tCOMM-FIXED /?CCL8\n\tZERO?\tDEFENSE-FIXED /?CCL8\n\tPRINTI\t\", pressing several keys.\"\n\tCRLF\t\n\tJUMP\t?CND6\n?CCL8:\tPRINTC\t46\n\tCRLF\t\n?CND6:\tZERO?\tCOURSE-CONTROL-FIXED /?CCL13\n\tPRINTI\t\"\nAs other cryo-units in the chambers beyond begin opening, the woman turns to you, bows gracefully, and speaks in a beautiful, lilting voice. \"\"I am Veldina, leader of Resida. Thanks to you, the cure has been discovered, and the planetary systems repaired. We are eternally grateful.\"\"\"\n\tCRLF\t\n\tZERO?\tCOMM-FIXED /?CCL16\n\tZERO?\tDEFENSE-FIXED /?CCL16\n\tPRINTI\t\"\n\"\"You will also be glad to hear that a ship of your Stellar Patrol now orbits the planet. I have sent them the coordinates for this room.\"\" As if on cue, a landing party from the S.P.S. Flathead materializes nearby. Blather is with them, having been picked up from deep space in another escape pod, babbling cravenly. Captain Sterling of the Flathead acknowledges your heroic actions, and informs you of your promotion to Lieutenant First Class.\n\nAs a team of mutant hunters head for the cryo-elevator, Veldina mentions that the grateful people of Resida offer you leadership of their world. Captain Sterling points out that, even if you choose to remain on Resida, Blather (demoted to Ensign Twelfth Class) has been assigned as your personal toilet attendant.\n\nYou feel a sting from your arm and turn to see a medical robot moving away after administering the antidote for The Disease.\n\nA team of robot technicians step into the anteroom. They part their ranks, and a familiar figure comes bounding toward you! \"\"Hi!\"\" shouts Floyd, with uncontrolled enthusiasm. \"\"Floyd feeling better now!\"\" Smiling from ear to ear, he says, \"\"Look what Floyd found!\"\" He hands you a helicopter key, a reactor elevator card, and a paddleball set. \"\"Maybe we can use them in the sequel...\"\"\"\n\tCRLF\t\n\tCRLF\t\n\tCALL\tFINISH,FALSE-VALUE\n\tRSTACK\t\n?CCL16:\tPRINTI\t\"\n\"\"Unfortunately, a second ship from your Stellar Patrol has \"\n\tZERO?\tDEFENSE-FIXED \\?CCL21\n\tPRINTI\t\"been destroyed by our malfunctioning meteor defenses.\"\n\tJUMP\t?CND19\n?CCL21:\tPRINTI\t\"come looking for survivors, and because of our malfunctioning communications system, has given up and departed.\"\n?CND19:\tPRINTI\t\" I fear that you are stranded on Resida, possibly forever. However, we show our gratitude by offering you an unlimited bank account and a house in the country.\"\"\"\n\tCRLF\t\n\tCRLF\t\n\tCALL\tFINISH,FALSE-VALUE\n\tRSTACK\t\n?CCL13:\tPRINTI\t\"\nShe turns to you and, with a strained voice says, \"\"You have fixed our computer and a Cure has been discovered, and we are grateful. But alas, it was all in vain. Our planetary course control system has malfunctioned, and the orbit has now decayed beyond correction. Soon Resida will plunge into the sun.\"\"\"\n\tCRLF\t\n\tCRLF\t\n\tZERO?\tCOMM-FIXED /?CND22\n\tZERO?\tDEFENSE-FIXED /?CND22\n\tPRINTI\t\"Veldina examines the control panel again. \"\"Fortunately, another ship from your Stellar Patrol has arrived, so at least you will survive.\"\" At that moment, a landing party from the S.P.S. Flathead materializes, and takes you away from the doomed world.\"\n\tCRLF\t\n\tCRLF\t\n?CND22:\tCALL\tFINISH,FALSE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tCOMPUTER-ACTION\n\tSET\t'COMPUTER-FLAG,TRUE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Floyd examines the \"\n\tEQUAL?\tHERE,COMPUTER-ROOM \\?CCL3\n\tPRINTI\t\"glowing light\"\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"computer printout\"\n?CND1:\tPRINTR\t\". With a concerned frown, he says, \"\"Uh oh. Computer is broken. A Doctor-person once told Floyd that Computer is the most important part of the Project.\"\"\"\n\n\n\t.FUNCT\tPRINT-OUT-F\n\tEQUAL?\tPRSA,V?EXAMINE,V?READ \\FALSE\n\tCALL\tFIXED-FONT-ON\n\tPRINTI\t\"The printout is hundreds of pages long. It would take many chrons to read it all. The last page looks pretty interesting, though:\n\n\"\"Daalee Statis Reeport:\nPREELIMINEREE REESURC:  100.000%\nINTURMEEDEEIT REESURC:  100.000%\nFIINUL REESURC:         100.000%\nDRUG PROODUKSHUN:       100.000%\nDRUG TESTEENG:           99.985%\nProojektid tiim tuu reeviivul prooseedzur:  0 daaz, 0.8 kronz\n\n\n*** ALURT! ALURT! ***\nMalfunkshun in Sekshun 384! Sumuneeng reepaar roobot.\"\"\n\nThe printout ends at this point.\"\n\tCRLF\t\n\tCALL\tFIXED-FONT-OFF\n\tRSTACK\t\n\n\n\t.FUNCT\tMINI-CARD-F\n\tFSET?\tMINI-CARD,NDESCBIT \\FALSE\n\tEQUAL?\tPRSA,V?SMELL,V?PULL /?CCL3\n\tEQUAL?\tPRSA,V?PUSH,V?TAKE,V?SET /?CCL3\n\tEQUAL?\tPRSA,V?TURN,V?MOVE,V?RUB \\FALSE\n?CCL3:\tPRINTR\t\"It's in the next room.\"\n\n\n\t.FUNCT\tLAB-UNIFORM-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTI\t\"It is a plain lab uniform. The logo above the pocket depicts a flame burning above some kind of sleep chamber. The pocket is \"\n\tCALL\tDDESC,LAB-UNIFORM\n\tPRINTR\t\".\"\n?CCL3:\tEQUAL?\tPRSA,V?OPEN,V?SEARCH \\?CCL5\n\tFSET?\tLAB-UNIFORM,OPENBIT \\?CCL8\n\tPRINTR\t\"The pocket is already open.\"\n?CCL8:\tFSET\tLAB-UNIFORM,OPENBIT\n\tZERO?\tUNIFORM-OPENED /?CCL11\n\tFIRST?\tLAB-UNIFORM \\?CCL14\n\tPRINTI\t\"Opening the uniform's pocket reveals \"\n\tCALL\tPRINT-CONTENTS,LAB-UNIFORM\n\tPRINTR\t\".\"\n?CCL14:\tPRINTR\t\"The pocket is empty.\"\n?CCL11:\tFSET\tLAB-UNIFORM,OPENBIT\n\tSET\t'UNIFORM-OPENED,TRUE-VALUE\n\tPRINTR\t\"You discover a small piece of paper and a teleportation access card in the pocket of the uniform.\"\n?CCL5:\tEQUAL?\tPRSA,V?WEAR \\FALSE\n\tFSET?\tPATROL-UNIFORM,WORNBIT \\FALSE\n\tPRINTR\t\"It won't fit on top of the Patrol uniform.\"\n\n\n\t.FUNCT\tCOMBINATION-PAPER-F\n\tEQUAL?\tPRSA,V?EXAMINE,V?READ \\FALSE\n\tPRINTI\t\"Week uv 14-Juun--2882. Kombinaashun tuu Konfurins Ruum: \"\n\tPRINTN\tNUMBER-NEEDED\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tBIO-LOCK-EAST-F,RARG\n\tEQUAL?\tRARG,M-END \\FALSE\n\tIN?\tFLOYD,HERE \\FALSE\n\tFSET?\tFLOYD,RLANDBIT \\FALSE\n\tEQUAL?\tFLOYD,WINNER /FALSE\n\tZERO?\tFLOYD-WAITING /?CCL10\n\tGRTR?\tWAITING-COUNTER,3 \\?CCL13\n\tSET\t'FLOYD-WAITING,FALSE-VALUE\n\tSET\t'FLOYD-GAVE-UP,TRUE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tSET\t'FLOYD-FOLLOW,FALSE-VALUE\n\tMOVE\tFLOYD,BIO-LOCK-WEST\n\tCALL\tQUEUE,I-FLOYD,1\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"\"\"Okay,\"\" says Floyd with uncharacteristic annoyance. \"\"Forget about the stupid card.\"\" He goes to the other end of the bio-lock and sulks.\"\n?CCL13:\tZERO?\tFLOYD-FORAYED \\FALSE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tINC\t'WAITING-COUNTER\n\tPRINTR\t\"Floyd looks at you with a dash of impatience and a healthy helping of nervousness. \"\"Well?\"\" he asks. \"\"Are you going to open the door?\"\"\"\n?CCL10:\tZERO?\tFLOYD-GAVE-UP \\FALSE\n\tZERO?\tFLOYD-PEERED \\FALSE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tSET\t'FLOYD-PEERED,TRUE-VALUE\n\tCALL\tQUEUE,I-CLEAR-FLOYD-PEER,40\n\tPUT\tSTACK,0,1\n\tFCLEAR\tMINI-CARD,INVISIBLE\n\tPRINTI\t\"Floyd stands on his tiptoes and peers in the window. \"\n\tZERO?\tCOMPUTER-FLAG /?CCL22\n\tSET\t'FLOYD-WAITING,TRUE-VALUE\n\tPRINTR\t\"\"\"Looks dangerous in there,\"\" says Floyd. \"\"I don't think you should go inside.\"\" He peers in again. \"\"We'll need card there to fix computer. Hmmm... I know! Floyd will get card. Robots are tough. Nothing can hurt robots. You open the door, then Floyd will rush in. Then you close door. When Floyd knocks, open door again. Okay? Go!\"\" Floyd's voice trembles slightly as he waits for you to open the door.\"\n?CCL22:\tPRINTR\t\"\"\"Ooo, look,\"\" he says. \"\"There's a miniaturization booth access card!\"\"\"\n\n\n\t.FUNCT\tI-CLEAR-FLOYD-PEER\n\tSET\t'FLOYD-PEERED,FALSE-VALUE\n\tRFALSE\t\n\n\n\t.FUNCT\tBIO-DOOR-EAST-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET?\tBIO-DOOR-WEST,OPENBIT \\?CCL8\n\tPRINT\tBOTH-DOORS\n\tCRLF\t\n\tRTRUE\t\n?CCL8:\tZERO?\tFLOYD-WAITING /?CCL10\n\tFSET?\tFLOYD,RLANDBIT \\?CCL10\n\tZERO?\tFORAY-COUNTER \\?CCL10\n\tCALL\tQUEUE,I-FLOYD-FORAY,-1\n\tPUT\tSTACK,0,1\n\tSET\t'FLOYD-FORAYED,TRUE-VALUE\n\tFSET\tBIO-DOOR-EAST,OPENBIT\n\tREMOVE\tFLOYD\n\tCALL\tINT,I-FLOYD\n\tPUT\tSTACK,0,0\n\tPRINTR\t\"The door opens and Floyd, pausing only for the briefest moment, plunges into the Bio Lab. Immediately, he is set upon by hideous, mutated monsters! More are heading straight toward the open door! Floyd shrieks and yells to you to close the door.\"\n?CCL10:\tZERO?\tFLOYD-FORAYED \\?CCL15\n\tCALL\tINT,I-CHASE-SCENE\n\tGET\tSTACK,C-ENABLED?\n\tZERO?\tSTACK \\?CCL15\n\tCALL\tJIGS-UP,STR?265\n\tRSTACK\t\n?CCL15:\tFSET\tBIO-DOOR-EAST,OPENBIT\n\tCALL\tQUEUE,I-BIO-EAST-CLOSES,30\n\tPUT\tSTACK,0,1\n\tPRINT\tDOOR-OPENS\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL22\n\tEQUAL?\tFORAY-COUNTER,4 \\?CND23\n\tSET\t'C-ELAPSED,95\n?CND23:\tFCLEAR\tBIO-DOOR-EAST,OPENBIT\n\tPRINTI\t\"The door closes\"\n\tCALL\tINT,I-CHASE-SCENE\n\tGET\tSTACK,C-ENABLED?\n\tEQUAL?\tSTACK,1 \\?CCL27\n\tPRINTR\t\", but not soon enough!\"\n?CCL27:\tPRINTR\t\".\"\n?CCL22:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tI-BIO-EAST-CLOSES\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\FALSE\n\tFCLEAR\tBIO-DOOR-EAST,OPENBIT\n\tEQUAL?\tHERE,BIO-LOCK-EAST,BIO-LOCK-WEST,BIO-LAB \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The door at the eastern end of the bio-lock closes silently.\"\n\n\n\t.FUNCT\tBIO-DOOR-WEST-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tBIO-DOOR-WEST,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL8\n\tPRINT\tBOTH-DOORS\n\tCRLF\t\n\tRTRUE\t\n?CCL8:\tPRINT\tDOOR-OPENS\n\tCRLF\t\n\tCALL\tQUEUE,I-BIO-WEST-CLOSES,30\n\tPUT\tSTACK,0,1\n\tFSET\tBIO-DOOR-WEST,OPENBIT\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tBIO-DOOR-WEST,OPENBIT \\?CCL13\n\tFCLEAR\tBIO-DOOR-WEST,OPENBIT\n\tPRINT\tDOOR-CLOSES\n\tCRLF\t\n\tRTRUE\t\n?CCL13:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tI-BIO-WEST-CLOSES\n\tFSET?\tBIO-DOOR-WEST,OPENBIT \\FALSE\n\tFCLEAR\tBIO-DOOR-WEST,OPENBIT\n\tEQUAL?\tHERE,BIO-LOCK-WEST,BIO-LOCK-EAST,MAIN-LAB \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The door at the western end of the bio-lock closes silently.\"\n\n\n\t.FUNCT\tRAD-DOOR-EAST-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tRAD-DOOR-EAST,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET?\tRAD-DOOR-WEST,OPENBIT \\?CCL8\n\tPRINT\tBOTH-DOORS\n\tCRLF\t\n\tRTRUE\t\n?CCL8:\tFSET\tRAD-DOOR-EAST,OPENBIT\n\tPRINT\tDOOR-OPENS\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tRAD-DOOR-EAST,OPENBIT \\?CCL13\n\tFCLEAR\tRAD-DOOR-EAST,OPENBIT\n\tPRINT\tDOOR-CLOSES\n\tCRLF\t\n\tRTRUE\t\n?CCL13:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tRAD-DOOR-WEST-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tRAD-DOOR-WEST,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tFSET?\tRAD-DOOR-EAST,OPENBIT \\?CCL8\n\tPRINT\tBOTH-DOORS\n\tCRLF\t\n\tRTRUE\t\n?CCL8:\tPRINT\tDOOR-OPENS\n\tCRLF\t\n\tFSET\tRAD-DOOR-WEST,OPENBIT\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tRAD-DOOR-WEST,OPENBIT \\?CCL13\n\tFCLEAR\tRAD-DOOR-WEST,OPENBIT\n\tPRINT\tDOOR-CLOSES\n\tCRLF\t\n\tRTRUE\t\n?CCL13:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tI-FLOYD-FORAY\n\tINC\t'FORAY-COUNTER\n\tEQUAL?\tFORAY-COUNTER,2 \\?CCL3\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL6\n\tCRLF\t\n\tCALL\tMONSTER-DEATH\n\tRSTACK\t\n?CCL6:\tCRLF\t\n\tPRINTR\t\"From within the lab you hear ferocious growlings, the sounds of a skirmish, and then a high-pitched metallic scream!\"\n?CCL3:\tEQUAL?\tFORAY-COUNTER,3 \\?CCL8\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL11\n\tCRLF\t\n\tCALL\tMONSTER-DEATH\n\tRSTACK\t\n?CCL11:\tCRLF\t\n\tPRINTR\t\"You hear, slightly muffled by the door, three fast knocks, followed by the distinctive sound of tearing metal.\"\n?CCL8:\tEQUAL?\tFORAY-COUNTER,4 \\?CCL13\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL16\n\tMOVE\tFLOYD,HERE\n\tCRLF\t\n\tPRINTR\t\"Floyd stumbles out of the Bio Lab, clutching the mini-booth card. The mutations rush toward the open doorway!\"\n?CCL16:\tCRLF\t\n\tPRINTI\t\"The three knocks come again, followed by a wild scream. Then, all is silence from within the Bio Lab, except for an occasional metallic crunch.\"\n\tCRLF\t\n\tFCLEAR\tFLOYD,RLANDBIT\n\tCALL\tINT,I-FLOYD-FORAY\n\tPUT\tSTACK,0,0\n\tRTRUE\t\n?CCL13:\tEQUAL?\tFORAY-COUNTER,5 \\FALSE\n\tFSET?\tBIO-DOOR-EAST,OPENBIT \\?CCL21\n\tCRLF\t\n\tCALL\tMONSTER-DEATH\n\tRSTACK\t\n?CCL21:\tREMOVE\tFLOYD\n\tFCLEAR\tFLOYD,RLANDBIT\n\tCALL\tINT,I-FLOYD\n\tPUT\tSTACK,0,0\n\tFSET\tFLOYD,INVISIBLE\n\tMOVE\tDEAD-FLOYD,HERE\n\tMOVE\tMINI-CARD,BIO-LOCK-EAST\n\tFSET\tMINI-CARD,TOUCHBIT\n\tADD\tSCORE,2 >SCORE\n\tCRLF\t\n\tPRINTI\t\"And not a moment too soon! You hear a pounding from the door as the monsters within vent their frustration at losing their prey.\n\nFloyd staggers to the ground, dropping the mini card. He is badly torn apart, with loose wires and broken circuits everywhere. Oil flows from his lubrication system. He obviously has only moments to live.\n\nYou drop to your knees and cradle Floyd's head in your lap. Floyd looks up at his friend with half-open eyes. \"\"Floyd did it ... got card. Floyd a good friend, huh?\"\" Quietly, you sing Floyd's favorite song, the Ballad of the Starcrossed Miner:\n\nO, they ruled the solar system\nNear ten thousand years before\nIn their single starcrossed scout ships\nMining ast'roids, spinning lore.\n\nThen one true courageous miner\nSpied a spaceship from the stars\nBoarded he that alien liner\nOut beyond the orb of Mars.\n\nYes, that ship was filled with danger\nMighty monsters barred his way\nYet he solved the alien myst'ries\nMining quite a lode that day.\n\nO, they ruled the solar system\nNear ten thousand years before\n'Til one brave advent'rous spirit\nBrought that mighty ship to shore.\n\nAs you finish the last verse, Floyd smiles with contentment, and then his eyes close as his head rolls to one side. You sit in silence for a moment, in memory of a brave friend who gave his life so that you might live.\"\n\tCRLF\t\n\tFCLEAR\tFLOYD,RLANDBIT\n\tFCLEAR\tMINI-CARD,NDESCBIT\n\tCALL\tINT,I-FLOYD-FORAY\n\tPUT\tSTACK,0,0\n\tRTRUE\t\n\n\n\t.FUNCT\tMONSTER-DEATH\n\tCALL\tJIGS-UP,STR?269\n\tRSTACK\t\n\n\n\t.FUNCT\tBIO-LAB-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"This is a huge laboratory filled with many biological experiments. The lighting is \"\n\tZERO?\tLAB-LIGHTS-ON /?CCL6\n\tPRINTI\t\"bright.\"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"dim, and a faint blue glow comes from a gaping crack in the northern wall.\"\n?CND4:\tPRINTR\t\" Some of the experiments seem to be out of control...\"\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tCALL\tQUEUE,I-CHASE-SCENE,-1\n\tPUT\tSTACK,0,1\n\tZERO?\tLAB-FLOODED /?CCL11\n\tPRINTI\t\"The air is filled with mist, which is affecting the mutants. They appear to be stunned and confused, but are slowly recovering.\"\n\tCRLF\t\n\tFSET?\tGAS-MASK,WORNBIT /FALSE\n\tCALL\tJIGS-UP,STR?270\n\tRSTACK\t\n?CCL11:\tCALL\tJIGS-UP,STR?271\n\tRSTACK\t\n\n\n\t.FUNCT\tI-CHASE-SCENE\n\tIN?\tRAT-ANT,HERE \\?CCL3\n\tZERO?\tLAB-FLOODED \\?CCL3\n\tCALL\tJIGS-UP,STR?272\n\tJUMP\t?CND1\n?CCL3:\tZERO?\tLAB-FLOODED \\?CND1\n\tEQUAL?\tHERE,BIO-LOCK-WEST \\?CCL9\n\tZERO?\tEXTRA-MOVE-FLAG \\?CCL9\n\tSET\t'EXTRA-MOVE-FLAG,TRUE-VALUE\n\tCRLF\t\n\tPRINTI\t\"The monsters gallop toward you, smacking their lips.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL9:\tEQUAL?\tHERE,CRYO-ELEVATOR \\?CCL13\n\tZERO?\tCRYO-MOVE-FLAG \\?CCL13\n\tSET\t'CRYO-MOVE-FLAG,TRUE-VALUE\n\tCRLF\t\n\tPRINTI\t\"The monsters are storming straight toward the elevator door!\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL13:\tEQUAL?\tHERE,SECOND-TO-LAST-ROOM \\?CCL17\n\tEQUAL?\tPRSA,V?WALK \\?CCL17\n\tCALL\tJIGS-UP,STR?273\n\tJUMP\t?CND1\n?CCL17:\tEQUAL?\tHERE,CRYO-ELEVATOR \\?CND20\n\tCRLF\t\n\tCALL\tMONSTER-DEATH\n?CND20:\tMOVE\tRAT-ANT,HERE\n\tMOVE\tTRIFFID,HERE\n\tMOVE\tTROLL,HERE\n\tMOVE\tGRUE,HERE\n\tCRLF\t\n\tPRINTI\t\"The mutants \"\n\tEQUAL?\tHERE,BIO-LOCK-WEST \\?CCL24\n\tPRINTI\t\"are almost upon you now!\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL24:\tPRINTI\t\"burst into the room right on your heels! \"\n\tCALL\tPICK-ONE,MONSTER-ENTRANCES\n\tPRINT\tSTACK\n\tCRLF\t\n?CND1:\tSET\t'SECOND-TO-LAST-ROOM,LAST-CHASE-ROOM\n\tSET\t'LAST-CHASE-ROOM,HERE\n\tRETURN\tLAST-CHASE-ROOM\n\n\n\t.FUNCT\tRADIATION-LAB-F,RARG\n\tEQUAL?\tRARG,M-ENTER \\FALSE\n\tFSET?\tRADIATION-LAB,TOUCHBIT /FALSE\n\tCALL\tQUEUE,I-NUKED-BLUE,50\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n\n\n\t.FUNCT\tI-NUKED-BLUE\n\tCALL\tQUEUE,I-NUKED-BLUE,-1\n\tPUT\tSTACK,0,1\n\tINC\t'NUKED-COUNTER\n\tEQUAL?\tNUKED-COUNTER,1 \\?CCL3\n\tCRLF\t\n\tPRINTR\t\"You suddenly feel sick and dizzy.\"\n?CCL3:\tEQUAL?\tNUKED-COUNTER,2 \\?CCL5\n\tCRLF\t\n\tPRINTI\t\"You feel incredibly nauseous and begin vomiting. Also, all your hair has fallen out.\"\n\tIN?\tFLOYD,HERE \\?CND6\n\tPRINTR\t\" Floyd points at you and laughs hysterically. \"\"You look funny with no hair,\"\" he gasps.\"\n?CND6:\tCRLF\t\n\tRTRUE\t\n?CCL5:\tEQUAL?\tNUKED-COUNTER,3 \\FALSE\n\tCALL\tJIGS-UP,STR?279\n\tRSTACK\t\n\n\n\t.FUNCT\tLAMP-F\n\tEQUAL?\tPRSA,V?LAMP-ON \\?CCL3\n\tFSET?\tLAMP,ONBIT \\?CCL6\n\tPRINTR\t\"It is on.\"\n?CCL6:\tFSET\tLAMP,ONBIT\n\tFSET\tLAMP,TOUCHBIT\n\tPRINTR\t\"The lamp is now producing a bright light.\"\n?CCL3:\tEQUAL?\tPRSA,V?LAMP-OFF \\FALSE\n\tFSET?\tLAMP,ONBIT \\?CCL11\n\tFCLEAR\tLAMP,ONBIT\n\tPRINTR\t\"The lamp goes dark.\"\n?CCL11:\tPRINTR\t\"It isn't on.\"\n\n\n\t.FUNCT\tLAB-OFFICE-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"This is the office for storing files on Bio Lab experiments. A large and messy desk is surrounded by locked files. A small booth lies to the south. \"\n\tFSET?\tOFFICE-DOOR,OPENBIT \\?CCL6\n\tPRINTI\t\"An open\"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"A closed\"\n?CND4:\tPRINTR\t\" door to the west is labelled \"\"Biioo Lab.\"\" You realize with shock and horror that the only way out is through the mutant-infested Bio Lab.\n\nOn the wall are three buttons: a white button labelled \"\"Lab Liits On\"\", a black button labelled \"\"Lab Liits Of\"\", and a red button labelled \"\"Eemurjensee Sistum.\"\"\"\n?CCL3:\tEQUAL?\tRARG,M-END \\FALSE\n\tFSET?\tOFFICE-DOOR,OPENBIT \\FALSE\n\tZERO?\tLAB-FLOODED /?CCL13\n\tPRINTR\t\"Through the open doorway you can see the Bio Lab. It seems to be filled with a light mist. Horrifying biological nightmares stagger about making choking noises.\"\n?CCL13:\tCALL\tJIGS-UP,STR?283\n\tRSTACK\t\n\n\n\t.FUNCT\tLAB-DESK-F\n\tEQUAL?\tPRSA,V?SEARCH,V?EXAMINE \\?CCL3\n\tFSET?\tLAB-DESK,TOUCHBIT /?CCL3\n\tMOVE\tMEMO,ADVENTURER\n\tFSET\tLAB-DESK,TOUCHBIT\n\tPRINTI\t\"After inspecting the various papers on the desk, you find only one item of interest, a memo of some sort. The desk itself is \"\n\tFSET?\tLAB-DESK,OPENBIT \\?CCL8\n\tPRINTI\t\"open\"\n\tJUMP\t?CND6\n?CCL8:\tPRINTI\t\"closed, but it doesn't look locked\"\n?CND6:\tPRINTR\t\".\"\n?CCL3:\tEQUAL?\tPRSA,V?OPEN \\FALSE\n\tIN?\tGAS-MASK,LAB-DESK \\FALSE\n\tCALL\tTHIS-IS-IT,GAS-MASK\n\tRFALSE\t\n\n\n\t.FUNCT\tLIGHT-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tZERO?\tLAB-LIGHTS-ON /?CCL6\n\tPRINTR\t\"Nothing happens.\"\n?CCL6:\tSET\t'LAB-LIGHTS-ON,TRUE-VALUE\n\tPRINT\tFAINT-SOUND\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tDARK-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tZERO?\tLAB-LIGHTS-ON /?CCL6\n\tSET\t'LAB-LIGHTS-ON,FALSE-VALUE\n\tPRINT\tFAINT-SOUND\n\tCRLF\t\n\tRTRUE\t\n?CCL6:\tPRINTR\t\"Nothing happens.\"\n\n\n\t.FUNCT\tFUNGICIDE-BUTTON-F\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tSET\t'LAB-FLOODED,TRUE-VALUE\n\tCALL\tQUEUE,I-UNFLOOD,50\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"You hear a hissing from beyond the door to the west.\"\n\n\n\t.FUNCT\tI-UNFLOOD\n\tSET\t'LAB-FLOODED,FALSE-VALUE\n\tEQUAL?\tHERE,BIO-LAB \\?CCL3\n\tCRLF\t\n\tPRINTR\t\"The last traces of mist in the air vanish. The mutants, recovering quickly, notice you and begin salivating.\"\n?CCL3:\tEQUAL?\tHERE,LAB-OFFICE \\FALSE\n\tFSET?\tOFFICE-DOOR,OPENBIT \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The mist in the Bio Lab clears. The mutants recover and rush toward the door!\"\n\n\n\t.FUNCT\tI-TURNOFF-MINI\n\tSET\t'MINI-ACTIVATED,FALSE-VALUE\n\tEQUAL?\tHERE,MINI-BOOTH \\FALSE\n\tCRLF\t\n\tPRINTR\t\"A recorded voice says \"\"Miniaturization booth de-activated.\"\"\"\n\n\n\t.FUNCT\tSTATION-384-F,RARG\n\tEQUAL?\tRARG,M-ENTER \\FALSE\n\tZERO?\tBEEN-HERE /FALSE\n\tSET\t'BEEN-HERE,FALSE-VALUE\n\tZERO?\tCOMPUTER-FIXED /?CCL9\n\tPRINTI\t\"A voice seems to whisper in your ear \"\"Main Miniaturization and Teleportation Booth has malfunctioned...switching to Auxiliary Booth...\"\" \"\n\tCALL\tQUEUE,I-ANNOUNCEMENT,130\n\tPUT\tSTACK,0,1\n\tPRINT\tFAMILIAR-WRENCHING\n\tCRLF\t\n\tCALL\tGOTO,AUXILIARY-BOOTH\n\tRETURN\t2\n?CCL9:\tPRINT\tFAMILIAR-WRENCHING\n\tCRLF\t\n\tCALL\tGOTO,MINI-BOOTH,FALSE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tI-ANNOUNCEMENT\n\tCRLF\t\n\tPRINTR\t\"A recorded announcement blares from the public address system. \"\"Revival procedure beginning. Cryo-chamber access from Project Control Office now open.\"\"\"\n\n\n\t.FUNCT\tMIDDLE-OF-STRIP-F,RARG\n\tEQUAL?\tRARG,M-ENTER \\FALSE\n\tZERO?\tCOMPUTER-FIXED /FALSE\n\tZERO?\tNO-MICROBE /FALSE\n\tZERO?\tMICROBE-DISPATCHED \\FALSE\n\tMOVE\tMICROBE,HERE\n\tCALL\tQUEUE,I-MICROBE,-1\n\tPUT\tSTACK,0,1\n\tSET\t'NO-MICROBE,FALSE-VALUE\n\tPRINTI\t\"Suddenly, with a loud plop, a giant elephant-sized monster lands on the strip just in front of you. It is amorphously shaped, its skin a slimy translucent red membrane. While most of your brain screams with panic about the disgusting monster that now blocks your exit, some small section in the back of your mind calmly realizes that this is merely some tiny microbe which has somehow violated the sterile environment of the computer interior.\n\nAs you stand frozen with fear, the microbe slithers toward you, extending slimy pseudopods thick with waving cilia. It looks pretty hungry, and seems intent on having you for lunch.\"\n\tCRLF\t\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tSTRIP-NEAR-RELAY-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\?CCL3\n\tPRINTI\t\"North of here, the filament ends at a huge featureless wall, presumably the side of some micro-component. \"\n\tIN?\tRELAY,HERE \\?CCL6\n\tPRINTR\t\"To the east is a vacuu-sealed micro-relay, sealed in transparent red plastic. You could probably see into the micro-relay.\"\n?CCL6:\tPRINTR\t\"To the east are the shattered remains of some large object.\"\n?CCL3:\tEQUAL?\tRARG,M-ENTER \\FALSE\n\tZERO?\tNO-MICROBE \\FALSE\n\tMOVE\tMICROBE,HERE\n\tSET\t'MICROBE-COUNTER,0\n\tPRINTR\t\"The microbe, writhing angrily, follows you northward.\"\n\n\n\t.FUNCT\tRELAY-EXIT-F\n\tIN?\tRELAY,HERE \\?CCL3\n\tPRINTI\t\"The relay is sealed. Although you cannot enter it, you could look into it.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL3:\tPRINTI\t\"You would slice yourself to ribbons on the shattered relay.\"\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tRELAY-F\n\tEQUAL?\tPRSA,V?LOOK-INSIDE,V?EXAMINE \\FALSE\n\tPRINTI\t\"This is a vacuum-sealed micro-relay, encased in red translucent plastic.\"\n\tZERO?\tCOMPUTER-FIXED \\?CND4\n\tPRINTR\t\" Within, you can see that some sort of speck or impurity has wedged itself into the contact point of the relay, preventing it from closing. The speck, presumably of microscopic size, resembles a blue boulder to you in your current size.\"\n?CND4:\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tLASER-DIAL-F\n\tEQUAL?\tPRSA,V?SET \\?CCL3\n\tEQUAL?\tPRSI,INTNUM \\?CCL3\n\tFSET?\tLASER-DIAL,MUNGEDBIT \\?CCL8\n\tPRINTR\t\"The laser dial seems to have become damaged and will not turn.\"\n?CCL8:\tEQUAL?\tP-NUMBER,LASER-SETTING \\?CCL10\n\tPRINTR\t\"That's where it's set now!\"\n?CCL10:\tGRTR?\tP-NUMBER,6 /?CTR11\n\tZERO?\tP-NUMBER \\?CCL12\n?CTR11:\tPRINTR\t\"The dial can only be set from 1 to 6.\"\n?CCL12:\tSET\t'LASER-SETTING,P-NUMBER\n\tPRINTI\t\"The dial is now set to \"\n\tPRINTN\tP-NUMBER\n\tPRINTR\t\".\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTI\t\"The dial is currently set to \"\n\tPRINTN\tLASER-SETTING\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tZAP-COUNT\n\tIN?\tOLD-BATTERY,LASER \\?CCL3\n\tGRTR?\tOLD-SHOTS,0 \\TRUE\n\tDEC\t'OLD-SHOTS\n\tRFALSE\t\n?CCL3:\tIN?\tNEW-BATTERY,LASER \\TRUE\n\tGRTR?\tNEW-SHOTS,0 \\TRUE\n\tDEC\t'NEW-SHOTS\n\tRFALSE\t\n\n\n\t.FUNCT\tLASER-F,RARG=0\n\tEQUAL?\tPRSA,V?SET \\?CCL3\n\tEQUAL?\tPRSI,INTNUM \\?CCL3\n\tCALL\tPERFORM,V?SET,LASER-DIAL,PRSI\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL7\n\tPRINTI\t\"The laser, though portable, is still fairly heavy. It has a long, slender barrel and a dial with six settings, labelled \"\"1\"\" through \"\"6.\"\" This dial is currently on setting \"\n\tPRINTN\tLASER-SETTING\n\tPRINTI\t\". There is a depression on the top of the laser which \"\n\tIN?\tOLD-BATTERY,LASER \\?CCL10\n\tPRINTI\t\"contains an \"\n\tPRINTD\tOLD-BATTERY\n\tJUMP\t?CND8\n?CCL10:\tIN?\tNEW-BATTERY,LASER \\?CCL12\n\tPRINTI\t\"contains a \"\n\tPRINTD\tNEW-BATTERY\n\tJUMP\t?CND8\n?CCL12:\tPRINTI\t\"is empty\"\n?CND8:\tPRINTR\t\".\"\n?CCL7:\tEQUAL?\tPRSA,V?CLOSE,V?OPEN \\?CCL14\n\tPRINTR\t\"There doesn't seem to be any way to do that to this laser.\"\n?CCL14:\tEQUAL?\tPRSA,V?PUT \\?CCL16\n\tEQUAL?\tPRSO,OLD-BATTERY \\?CCL19\n\tIN?\tNEW-BATTERY,LASER \\?CCL22\n\tCALL\tALREADY-BATTERY\n\tRSTACK\t\n?CCL22:\tMOVE\tOLD-BATTERY,LASER\n\tCALL\tBATTERY-NOW\n\tRSTACK\t\n?CCL19:\tEQUAL?\tPRSO,NEW-BATTERY \\?CCL24\n\tIN?\tOLD-BATTERY,LASER \\?CCL27\n\tCALL\tALREADY-BATTERY\n\tRSTACK\t\n?CCL27:\tMOVE\tNEW-BATTERY,LASER\n\tCALL\tBATTERY-NOW\n\tRSTACK\t\n?CCL24:\tEQUAL?\tLASER,PRSO /FALSE\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" doesn't fit the depression.\"\n?CCL16:\tEQUAL?\tPRSA,V?ZAP \\?CCL31\n\tIN?\tLASER,ADVENTURER /?CND32\n\tCALL\tNOT-HOLDING\n\tRTRUE\t\n?CND32:\tZERO?\tLASER-SCORE-FLAG \\?CND34\n\tSET\t'LASER-SCORE-FLAG,TRUE-VALUE\n\tADD\tSCORE,2 >SCORE\n?CND34:\tEQUAL?\tPRSI,LASER /?CTR37\n\tEQUAL?\tPRSI,LASER-DIAL /?CTR37\n\tEQUAL?\tPRSI,OLD-BATTERY \\?PRD42\n\tIN?\tOLD-BATTERY,LASER /?CTR37\n?PRD42:\tEQUAL?\tPRSI,NEW-BATTERY \\?CCL38\n\tIN?\tNEW-BATTERY,LASER \\?CCL38\n?CTR37:\tPRINTR\t\"Sorry, the laser doesn't have a rubber barrel.\"\n?CCL38:\tCALL\tZAP-COUNT\n\tZERO?\tSTACK /?CCL48\n\tPRINTR\t\"Click.\"\n?CCL48:\tFSET?\tLASER,MUNGEDBIT \\?CCL50\n\tPRINTR\t\"The laser sparks a few times, whines, and then stops.\"\n?CCL50:\tCALL\tQUEUE,I-WARMTH,-1\n\tPUT\tSTACK,0,1\n\tSET\t'LASER-JUST-SHOT,TRUE-VALUE\n\tEQUAL?\tPRSI,SPECK \\?CCL53\n\tCALL\tSHOOT-SPECK\n\tRTRUE\t\n?CCL53:\tEQUAL?\tPRSI,MICROBE \\?CCL55\n\tCALL\tSHOOT-MICROBE\n\tRTRUE\t\n?CCL55:\tEQUAL?\tPRSI,ME,HANDS,ADVENTURER \\?CCL57\n\tPRINTR\t\"Ouch! You managed to burn yourself nicely.\"\n?CCL57:\tPRINTI\t\"The laser emits a narrow \"\n\tCALL\tBEAM-COLOR\n\tPRINTI\t\" beam of light\"\n\tZERO?\tPRSI /?CCL60\n\tEQUAL?\tPRSI,TOWEL,BROCHURE,COMBINATION-PAPER /?CTR62\n\tEQUAL?\tPRSI,PRINT-OUT,LAB-UNIFORM,PATROL-UNIFORM /?CTR62\n\tEQUAL?\tPRSI,ID-CARD,KITCHEN-CARD,MINI-CARD /?CTR62\n\tEQUAL?\tPRSI,TELEPORTATION-CARD,SHUTTLE-CARD,UPPER-ELEVATOR-CARD /?CTR62\n\tEQUAL?\tPRSI,LOWER-ELEVATOR-CARD \\?CCL63\n?CTR62:\tREMOVE\tPRSI\n\tEQUAL?\tPRSI,SPOUT-PLACED \\?CND69\n\tSET\t'SPOUT-PLACED,GROUND\n?CND69:\tPRINTI\t\" which strikes the \"\n\tPRINTD\tPRSI\n\tPRINTI\t\". The \"\n\tPRINTD\tPRSI\n\tPRINTR\t\" bursts into flame, blinding you momentarily, and is quickly consumed.\"\n?CCL63:\tEQUAL?\tPRSI,FLOYD \\?CCL72\n\tFSET?\tFLOYD,RLANDBIT \\?CCL72\n\tPRINTR\t\" which strikes Floyd. \"\"Yow!\"\" yells Floyd. He jumps to the other end of the room and eyes you warily.\"\n?CCL72:\tEQUAL?\tPRSI,PSEUDO-OBJECT \\?CCL76\n\tEQUAL?\tHERE,PROJCON-OFFICE \\?CCL76\n\tPRINTI\t\" which strikes the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\". However, this doesn't seem to affect it.\"\n?CCL76:\tPRINTI\t\" which strikes the \"\n\tPRINTD\tPRSI\n\tPRINTI\t\". The \"\n\tPRINTD\tPRSI\n\tPRINTR\t\" grows a bit warm, but nothing else happens.\"\n?CCL60:\tPRINTR\t\".\"\n?CCL31:\tEQUAL?\tPRSA,V?DROP \\FALSE\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n\tIN?\tMICROBE,HERE \\FALSE\n\tGRTR?\tWARMTH-FLAG,7 \\FALSE\n\tREMOVE\tLASER\n\tPRINTR\t\"The microbe rushes to envelop the laser. You hear a faint burp as the monster begins to look around for other morsels...\"\n\n\n\t.FUNCT\tALREADY-BATTERY\n\tPRINTR\t\"There's already a battery there.\"\n\n\n\t.FUNCT\tBATTERY-NOW\n\tPRINTR\t\"The battery is now resting in the depression, attached to the laser.\"\n\n\n\t.FUNCT\tI-WARMTH\n\tZERO?\tLASER-JUST-SHOT /?CCL3\n\tSET\t'LASER-JUST-SHOT,FALSE-VALUE\n\tINC\t'WARMTH-FLAG\n\tEQUAL?\tWARMTH-FLAG,3 \\?CCL6\n\tCALL\tLASER-FEELS,STR?298\n\tRSTACK\t\n?CCL6:\tEQUAL?\tWARMTH-FLAG,6 \\?CCL8\n\tCALL\tLASER-FEELS,STR?299\n\tRSTACK\t\n?CCL8:\tEQUAL?\tWARMTH-FLAG,9 \\?CCL10\n\tCALL\tLASER-FEELS,STR?300\n\tRSTACK\t\n?CCL10:\tEQUAL?\tWARMTH-FLAG,12 \\FALSE\n\tCALL\tLASER-FEELS,STR?301\n\tRSTACK\t\n?CCL3:\tZERO?\tWARMTH-FLAG \\?CCL15\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n\tRTRUE\t\n?CCL15:\tDEC\t'WARMTH-FLAG\n\tEQUAL?\tWARMTH-FLAG,12 \\?CCL18\n\tCALL\tLASER-COOLS,STR?301\n\tRSTACK\t\n?CCL18:\tEQUAL?\tWARMTH-FLAG,9 \\?CCL20\n\tCALL\tLASER-COOLS,STR?302\n\tRSTACK\t\n?CCL20:\tEQUAL?\tWARMTH-FLAG,6 \\?CCL22\n\tCALL\tLASER-COOLS,STR?303\n\tRSTACK\t\n?CCL22:\tEQUAL?\tWARMTH-FLAG,3 \\FALSE\n\tCALL\tLASER-COOLS,STR?304\n\tRSTACK\t\n\n\n\t.FUNCT\tLASER-FEELS,STRING\n\tCRLF\t\n\tPRINTI\t\"The laser feels \"\n\tPRINT\tSTRING\n\tPRINTR\t\", but that doesn't seem to affect its performance at all.\"\n\n\n\t.FUNCT\tLASER-COOLS,STRING\n\tCRLF\t\n\tPRINTI\t\"The laser has cooled, but it still feels \"\n\tPRINT\tSTRING\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tBEAM-COLOR\n\tEQUAL?\tLASER-SETTING,1 \\?CCL3\n\tPRINTI\t\"red\"\n\tRTRUE\t\n?CCL3:\tEQUAL?\tLASER-SETTING,2 \\?CCL5\n\tPRINTI\t\"orange\"\n\tRTRUE\t\n?CCL5:\tEQUAL?\tLASER-SETTING,3 \\?CCL7\n\tPRINTI\t\"yellow\"\n\tRTRUE\t\n?CCL7:\tEQUAL?\tLASER-SETTING,4 \\?CCL9\n\tPRINTI\t\"green\"\n\tRTRUE\t\n?CCL9:\tEQUAL?\tLASER-SETTING,5 \\?CCL11\n\tPRINTI\t\"blue\"\n\tRTRUE\t\n?CCL11:\tEQUAL?\tLASER-SETTING,6 \\FALSE\n\tPRINTI\t\"violet\"\n\tRTRUE\t\n\n\n\t.FUNCT\tSHOOT-SPECK\n\tEQUAL?\tLASER-SETTING,1 \\?CCL3\n\tRANDOM\t100\n\tLESS?\tMARKSMANSHIP-COUNTER,STACK /?CCL6\n\tZERO?\tSPECK-HIT /?CCL9\n\tSET\t'COMPUTER-FIXED,TRUE-VALUE\n\tFSET\tCRYO-ELEVATOR-DOOR,OPENBIT\n\tFCLEAR\tPROJCON-OFFICE,TOUCHBIT\n\tFCLEAR\tCRYO-ELEVATOR-DOOR,INVISIBLE\n\tCALL\tQUEUE,I-FRY,200\n\tPUT\tSTACK,0,1\n\tADD\tSCORE,8 >SCORE\n\tREMOVE\tSPECK\n\tPRINTR\t\"The beam hits the speck again! This time, it vaporizes into a fine cloud of ash. The relay slowly begins to close, and a voice whispers in your ear \"\"Sector 384 will activate in 200 millichrons. Proceed to exit station.\"\"\"\n?CCL9:\tSET\t'SPECK-HIT,TRUE-VALUE\n\tPRINTR\t\"The speck is hit by the beam! It sizzles a little, but isn't destroyed yet.\"\n?CCL6:\tADD\tMARKSMANSHIP-COUNTER,12 >MARKSMANSHIP-COUNTER\n\tCALL\tPICK-ONE,BEAM-MISSES\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tREMOVE\tRELAY\n\tPRINTI\t\"A thin \"\n\tCALL\tBEAM-COLOR\n\tPRINTR\t\" beam shoots from the laser and slices through the red plastic covering of the relay like a hot knife through butter. Air rushes into the relay, which collapses into a heap of plastic shards.\"\n\n\n\t.FUNCT\tI-FRY\n\tEQUAL?\tHERE,MIDDLE-OF-STRIP,STRIP-NEAR-STATION,STRIP-NEAR-RELAY \\FALSE\n\tCRLF\t\n\tCALL\tJIGS-UP,STR?308\n\tRSTACK\t\n\n\n\t.FUNCT\tMICROBE-F\n\tEQUAL?\tPRSA,V?TALK,V?HELLO /?CTR2\n\tEQUAL?\tMICROBE,WINNER \\?CCL3\n?CTR2:\tPRINTI\t\"You don't seem to have bridged the vast communication gulf between yourself and the microbe.\"\n\tCRLF\t\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRETURN\t2\n?CCL3:\tEQUAL?\tPRSA,V?GIVE,V?THROW \\FALSE\n\tEQUAL?\tPRSI,MICROBE \\FALSE\n\tEQUAL?\tPRSO,LASER \\?CCL14\n\tGRTR?\tWARMTH-FLAG,7 \\?CCL14\n\tREMOVE\tLASER\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n\tGRTR?\tWARMTH-FLAG,10 \\?CCL19\n\tCALL\tINT,I-MICROBE\n\tPUT\tSTACK,0,0\n\tPRINTI\t\"The microbe gobbles up the laser and turns toward you. A moment later, it begins writhing in pain. Apparently, eating the hot laser was a bit too much for it. With a bellow of agony, it rolls off the edge of the strip. (Whew!)\"\n\tCRLF\t\n\tREMOVE\tLASER\n\tREMOVE\tMICROBE\n\tSET\t'NO-MICROBE,TRUE-VALUE\n\tSET\t'MICROBE-DISPATCHED,TRUE-VALUE\n\tRETURN\tMICROBE-DISPATCHED\n?CCL19:\tPRINTR\t\"The microbe greedily devours the laser, and turns toward you.\"\n?CCL14:\tPRINTI\t\"The microbe ignores the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\", but does attempt to digest your arm.\"\n\n\n\t.FUNCT\tI-MICROBE\n\tEQUAL?\tMICROBE-HIT,TRUE-VALUE \\?CCL3\n\tCRLF\t\n\tCALL\tPICK-ONE,WINNER-ATTACKED\n\tPRINT\tSTACK\n\tGRTR?\tWARMTH-FLAG,13 \\?CCL6\n\tIN?\tLASER,ADVENTURER \\?CCL6\n\tCALL\tJIGS-UP,STR?310\n\tJUMP\t?CND4\n?CCL6:\tGRTR?\tWARMTH-FLAG,7 \\?CND4\n\tIN?\tLASER,ADVENTURER \\?CND4\n\tPRINTI\t\" Another pseudopod, perhaps attracted by the warmth of the laser, tries to envelop the weapon. You snatch it away from the monster's grasp.\"\n?CND4:\tCRLF\t\n\tJUMP\t?CND1\n?CCL3:\tEQUAL?\tMICROBE-COUNTER,2 \\?CCL14\n\tCALL\tJIGS-UP,STR?311\n\tJUMP\t?CND1\n?CCL14:\tINC\t'MICROBE-COUNTER\n\tCRLF\t\n\tCALL\tPICK-ONE,MONSTER-CLOSES\n\tPRINT\tSTACK\n\tCRLF\t\n?CND1:\tSET\t'MICROBE-HIT,FALSE-VALUE\n\tRETURN\tMICROBE-HIT\n\n\n\t.FUNCT\tSHOOT-MICROBE\n\tPRINTI\t\"The laser beam strikes the microbe\"\n\tEQUAL?\tLASER-SETTING,1 \\?CCL3\n\tPRINTR\t\", but passes harmlessly through its red skin.\"\n?CCL3:\tSET\t'MICROBE-HIT,TRUE-VALUE\n\tPRINTI\t\". \"\n\tCALL\tPICK-ONE,MICROBE-STRIKES\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tSTRIP-F\n\tEQUAL?\tPRSA,V?THROW-OFF \\FALSE\n\tEQUAL?\tPRSO,LASER \\?CCL6\n\tGRTR?\tWARMTH-FLAG,7 \\?CCL6\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n\tCALL\tINT,I-MICROBE\n\tPUT\tSTACK,0,0\n\tPRINTI\t\"As the laser flies over the edge of the strip, the hungry microbe lunges after it. Both the laser and the microbe plummet into the void. (Whew!)\"\n\tCRLF\t\n\tREMOVE\tLASER\n\tREMOVE\tMICROBE\n\tSET\t'NO-MICROBE,TRUE-VALUE\n\tSET\t'MICROBE-DISPATCHED,TRUE-VALUE\n\tRETURN\tMICROBE-DISPATCHED\n?CCL6:\tEQUAL?\tPRSO,LASER \\?CND9\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n?CND9:\tREMOVE\tPRSO\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" flies over the edge of the strip and disappears into the void.\"\n\n\n\t.FUNCT\tGRUE-F\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tIN?\tGRUE,HERE /FALSE\n\tPRINTR\t\"Grues are vicious, carnivorous beasts first introduced to Earth by a visiting alien spaceship during the late 22nd century. Grues spread throughout the galaxy alongside man. Although now extinct on all civilized planets, they still exist in some backwater corners of the galaxy. Their favorite diet is Ensigns Seventh Class, but their insatiable appetite is tempered by their fear of light.\"\n\n\t.ENDI\n"
  },
  {
    "path": "comptwo.zil",
    "content": "\"COMPTWO for PLANETFALL \n(C) COPYRIGHT 1983 INFOCOM, INC. ALL RIGHTS RESERVED\n\nThis file contains all the rooms, objects, and actions associated\nwith Complex Two / the Eastern Complex / the Lawanda Compleks.\"\n\n<ROOM LAWANDA-PLATFORM\n      (IN ROOMS)\n      (DESC \"Lawanda Platform\")\n      (C-MOVE  <TABLE 0 0 0 30 0 0 0 0 0 0 0 0>)\n      (NORTH PER SHUTTLE-ENTER-F)\n      (SOUTH PER SHUTTLE-ENTER-F)\n      (EAST TO ESCALATOR)\n      (UP TO ESCALATOR)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (VALUE 4)\n      (GLOBAL GLOBAL-SHUTTLE STAIRS)\n      (PSEUDO \"ESCALATOR\" ESCALATOR-PSEUDO)\n      (ACTION LAWANDA-PLATFORM-F)>\n\n<GLOBAL LAWANDA-PLATFORM-FLAG <>>\n\n<ROUTINE LAWANDA-PLATFORM-F (RARG)\n\t <COND (<NOT ,LAWANDA-PLATFORM-FLAG>\n\t\t<SETG LAWANDA-PLATFORM-FLAG T>\n\t\t<SETG SICKNESS-WARNING-FLAG T>)>\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL \"This is a wide, flat strip of concrete. \">\n\t\t<COND (<AND <NOT ,ALFIE-AT-KALAMONTEE>\n\t\t\t    <NOT ,BETTY-AT-KALAMONTEE>>\n\t\t       <TELL\n\"Open shuttle cars lie to the north and south.\">)\n\t\t      (<OR <NOT ,ALFIE-AT-KALAMONTEE>\n\t\t\t   <NOT ,BETTY-AT-KALAMONTEE>>\n\t\t       <TELL \"An open shuttle car lies to the \">\n\t\t       <COND (,ALFIE-AT-KALAMONTEE\n\t\t\t      <TELL \"north.\">)\n\t\t\t     (T\n\t\t\t      <TELL \"south.\">)>)>\n\t\t<TELL\n\" A wide escalator, not currently operating, beckons upward at the east end of\nthe platform. A faded sign reads \\\"Shutul Platform -- Lawanda Staashun.\\\"\" CR>)>>\n\n<ROOM ESCALATOR\n      (IN ROOMS)\n      (DESC \"Escalator\")\n      (LDESC\n\"You are in the middle of a long mechanical stairway. It is not running,\nand seems to be in disrepair.\")\n      (C-MOVE  <TABLE 0 0 15 30 0 0 0 0 0 0 0 0>)\n      (UP TO FORK)\n      (EAST TO FORK)\n      (DOWN TO LAWANDA-PLATFORM)\n      (WEST TO LAWANDA-PLATFORM)\n      (GLOBAL STAIRS)\n      (PSEUDO \"ESCALATOR\" ESCALATOR-PSEUDO)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)>\n\n<ROOM FORK\n      (IN ROOMS)\n      (DESC \"Fork\")\n      (LDESC\n\"This is a hallway which forks to the northeast and southeast. To the west\nis the top of a long escalator.\")\n      (C-MOVE  <TABLE 0   0 15      0\n          0 0   0   0 \n\t 25 0  25   0>)\n      (WEST TO ESCALATOR)\n      (DOWN TO ESCALATOR)\n      (NE TO SYSTEMS-CORRIDOR-WEST)\n      (SE TO PROJECT-CORRIDOR-WEST)\n      (GLOBAL STAIRS)\n      (PSEUDO \"ESCALATOR\" ESCALATOR-PSEUDO)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)>\n\n\f\n\n\"He's dead, Jim\"\n\n<ROOM INFIRMARY\n      (IN ROOMS)\n      (DESC \"Infirmary\")\n      (LDESC \n\"You have entered a clean, well-lighted place. There are a number of beds,\nsome complicated looking equipment, and many shelves that are mostly bare.\")\n      (C-MOVE  <TABLE 25   0 0      0\n          0 0   0   0 \n\t 25 0   0   0>)\n      (SE TO SYSTEMS-CORRIDOR-WEST)\n      (OUT TO SYSTEMS-CORRIDOR-WEST)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL BED SHELVES)\n      (PSEUDO \"EQUIPM\" EQUIPMENT-PSEUDO \"MACHIN\" EQUIPMENT-PSEUDO)\n      (ACTION INFIRMARY-F)>\n\n<OBJECT LAZARUS-PART\n\t(DESC \"medical robot breastplate\")\n\t(SYNONYM LAZARUS PART BREAST PLATE)\n\t(ADJECTIVE MEDICAL BREAST)\n\t(SIZE 35)\n\t(FLAGS TAKEBIT)>\n\n<GLOBAL LAZARUS-FLAG <>>\n\n<ROUTINE INFIRMARY-F (RARG)\n\t <COND (<AND <EQUAL? .RARG ,M-END>\n\t\t     <NOT ,LAZARUS-FLAG>\n\t\t     <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>\n\t\t     <PROB 30>>\n\t\t<SETG LAZARUS-FLAG T>\n\t\t<MOVE ,LAZARUS-PART ,HERE>\n\t\t<MOVE ,FLOYD ,FORK>\n\t\t<SETG FLOYD-FOLLOW <>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL\n\"Floyd, rummaging in a corner, finds something and carries it to the center of\nthe room to examine it in the brighter light. It seems to be the breast plate\nof a robot, along with some connected inner circuitry. The entire piece is\nbent and rusting. Floyd stares at it in complete silence. A moment later, he\nbegins sobbing quietly, awkwardly excuses himself, and runs out of the room.\nYou look at the breast plate, and notice the name \\\"Lazarus\\\" engraved on\nit.\" CR>)>>  \n\n<OBJECT RED-SPOOL\n\t(IN INFIRMARY)\n\t(DESC \"red spool\")\n\t(FDESC\n\"Lying on one of the beds is a small red spool.\")\n\t(SYNONYM SPOOL SPOOLS OBJECT)\n\t(ADJECTIVE RED SMALL)\n\t(SIZE 3)\n\t(TEXT\n\"The spool is labelled \\\"Simptumz uv Xe Dizeez.\\\"\")\n\t(FLAGS TAKEBIT ACIDBIT READBIT)\n\t(ACTION RED-SPOOL-F)>\n\n<ROUTINE RED-SPOOL-F ()\n\t <COND (<AND <VERB? TAKE>\n\t\t     <IN? ,RED-SPOOL ,SPOOL-READER>\n\t\t     <FSET? ,SPOOL-READER ,ONBIT>>\n\t\t<MOVE ,RED-SPOOL ,ADVENTURER>\n\t\t<FCLEAR ,RED-SPOOL ,TRYTAKEBIT>\n\t\t<TELL \"The screen goes blank as you take the spool.\" CR>)>>\n\n<OBJECT MEDICINE-BOTTLE\n\t(IN INFIRMARY)\n\t(DESC \"medicine bottle\")\n\t(FDESC\n\"On a low shelf is a translucent bottle with a small white label.\")\n\t(SYNONYM BOTTLE LABEL)\n\t(ADJECTIVE MEDICINE SMALL WHITE TRANSL)\n\t(SIZE 7)\n\t(CAPACITY 7)\n\t(TEXT\n\"\\\"Dizeez supreshun medisin -- eksperimentul\\\"\")\n\t(FLAGS CONTBIT SEARCHBIT TAKEBIT TRANSBIT READBIT)>\n\n<OBJECT MEDICINE\n\t(IN MEDICINE-BOTTLE)\n\t(DESC \"quantity of medicine\")\n\t(FDESC \"At the bottom of the bottle is a small quantity of medicine.\")\n\t(SYNONYM MEDICINE)\n\t(ADJECTIVE SMALL QUANTITY EXPERIMENTAL)\n\t(SIZE 7)\n\t(FLAGS FOODBIT)\n\t(ACTION MEDICINE-F)>\n\n<ROUTINE MEDICINE-F (\"AUX\" (X <>))\n\t <COND (<AND <VERB? TASTE EAT POUR>\n\t\t     <NOT <IN? ,MEDICINE-BOTTLE ,ADVENTURER>>>\n\t\t<SETG PRSO ,MEDICINE-BOTTLE>\n\t\t<NOT-HOLDING>\n\t\t<THIS-IS-IT ,MEDICINE-BOTTLE>)\n\t       (<AND <VERB? TASTE EAT POUR>\n\t\t     <NOT <FSET? ,MEDICINE-BOTTLE ,OPENBIT>>>\n\t\t<TELL \"The bottle is closed.\" CR>)\n\t       (<VERB? TASTE>\n\t\t<TELL \"It tastes fairly bitter.\" CR>)\n\t       (<VERB? EAT>\n\t\t<REMOVE ,MEDICINE>\n\t\t<SETG C-ELAPSED 15>\n\t\t<SETG SICKNESS-LEVEL <- ,SICKNESS-LEVEL 2>>\n\t\t<SETG LOAD-ALLOWED <+ ,LOAD-ALLOWED 20>>\n\t\t<TELL \"The medicine tasted extremely bitter.\" CR>)\n\t       (<VERB? POUR>\t\t\n\t\t<REMOVE ,MEDICINE>\n\t\t<COND (<NOT ,PRSI>\n\t\t       <SETG PRSI ,GROUND>)>\n\t\t<COND (<EQUAL? ,PRSI ,FUNNEL-HOLE>\n\t\t       <COND (<IN? ,CHEMICAL-FLUID ,FLASK>\n\t\t\t      <SET X T>)>\n\t\t       <SETG CHEMICAL-REQUIRED 10>\n\t\t       <PERFORM ,V?POUR ,CHEMICAL-FLUID ,FUNNEL-HOLE>\n\t\t       <COND (.X\n\t\t\t      <MOVE ,CHEMICAL-FLUID ,FLASK>)>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL\n\"It pours over the \" D ,PRSI \" and evaporates.\" CR>)>)\n\t       (<AND <VERB? TAKE>\n\t\t     <EQUAL? <GET ,P-VTBL 0> ,W?TAKE>>\n\t\t<PERFORM ,V?EAT ,MEDICINE>\n\t\t<RTRUE>)>>\n\n<ROOM REPAIR-ROOM\n      (IN ROOMS)\n      (DESC \"Repair Room\")\n      (LDESC\n\"You are in a dimly lit room, filled with strange machines and wide storage\ncabinets, all locked. To the south, a narrow stairway leads upward. On the\nnorth wall of the room is a very small doorway.\")\n      (C-MOVE  <TABLE 0   0 0     30\n          0 0   0   0 \n\t  0 0   0   0>)\n      (UP TO SYSTEMS-CORRIDOR-WEST)\n      (SOUTH TO SYSTEMS-CORRIDOR-WEST)\n      (NORTH \"It is a robot-sized doorway -- a bit too small for you.\")\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL STAIRS)\n      (PSEUDO \"CABINETS\" CABINETS-PSEUDO \"MACHIN\" EQUIPMENT-PSEUDO)>\n\n<GLOBAL ACHILLES-FLAG <>> ;\"Set to T when Floyd babbles about Achilles\"\n\n<OBJECT ACHILLES\n\t(IN REPAIR-ROOM)\n\t(DESC \"broken robot\")\n\t(LDESC\n\"Lying face down at the bottom of the stairs is a motionless robot. It\nappears to be damaged beyond repair.\")\n\t(SYNONYM ROBOT ACHILLES)\n\t(ADJECTIVE BROKEN DEAD)>\n\n<OBJECT ROBOT-HOLE\n\t(IN REPAIR-ROOM)\n\t(DESC \"small doorway\")\n\t(SYNONYM DOOR DOORWA HOLE)\n\t(ADJECTIVE SMALL VERY)\n\t(FLAGS NDESCBIT TRANSBIT CONTBIT)\n\t(CAPACITY 0)\n\t(ACTION ROBOT-HOLE-F)>\n\n<ROUTINE ROBOT-HOLE-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"It's too small for you to get through. It was presumably intended for\nrobots, such as the broken repair robot lying over there.\" CR>)\n\t       (<VERB? LOOK-INSIDE>\n\t\t<TELL\n\"You can make out a small supply room of some sort.\" CR>)\n\t       (<VERB? OPEN CLOSE>\n\t\t<TELL\n\"There's no door, just an opening in the wall.\" CR>)>>\n\n<GLOBAL HOLE-TRIP-FLAG <>>\n\n<ROUTINE FLOYD-THROUGH-HOLE ()\n\t <COND (,HOLE-TRIP-FLAG\n\t\t<TELL \"\\\"Not again,\\\" whines Floyd.\" CR>\n\t\t<RTRUE>)\n\t       (T\n\t\t<SETG C-ELAPSED 50>\n\t\t<SETG HOLE-TRIP-FLAG T>\n\t\t<SETG BOARD-REPORTED T>\n\t\t<FCLEAR ,GOOD-BOARD ,INVISIBLE>\n\t        <TELL\n\"Floyd squeezes through the opening and is gone for quite a while. You hear\nthudding noises and squeals of enjoyment. After a while the noise stops, and\nFloyd emerges, looking downcast. \\\"Floyd found a rubber ball inside. Lots of\nfun for a while, but must have been old, because it fell apart. Nothing else\ninteresting inside. Just a shiny fromitz board.\\\"\" CR>)>>\n\n<OBJECT GOOD-BOARD\n\t(IN ROBOT-HOLE)\n\t(DESC \"shiny seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE SHINY GOOD SEVENTEEN CENTIMETER FROMITZ)\n\t(SIZE 10)\n\t(FLAGS ACIDBIT INVISIBLE NDESCBIT)\n\t(ACTION GOOD-BOARD-F)>\n\n<ROUTINE GOOD-BOARD-F ()\n\t <COND (<AND <FSET? ,GOOD-BOARD ,NDESCBIT>\n\t\t     <VERB? TAKE EXAMINE RUB PUSH PULL MOVE LOOK-UNDER>\n\t\t     <EQUAL? ,GOOD-BOARD ,PRSO>>\n\t\t<TELL \"You can't see any \" D ,PRSO \" here.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<EXAMINE-BOARD>\n\t\t<CRLF>)>>\n\n<GLOBAL BOARD-REPORTED <>>\n\n<ROOM SYSTEMS-CORRIDOR-WEST\n      (IN ROOMS)\n      (DESC \"Systems Corridor West\")\n      (LDESC\n\"The corridor bends here, leading east and southwest. A doorway opens\nto the northwest, and a narrow stairway leads down to the north.\")\n      (C-MOVE  <TABLE 0   0 15      0\n          0 0  25   0 \n\t  0 0   0   0>)\n      (NW TO INFIRMARY)\n      (NORTH TO REPAIR-ROOM)\n      (DOWN TO REPAIR-ROOM)\n      (EAST TO SYSTEMS-CORRIDOR)\n      (SW TO FORK)\n      (FLAGS ONBIT RLANDBIT)\n      (GLOBAL STAIRS)>\n\n<ROOM SYSTEMS-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Systems Corridor\")\n      (LDESC\n\"This section of hallway has a doorway to the north labelled \\\"Planateree\nDeefens.\\\" The corridor continues east and west.\")\n      (C-MOVE 0)\n      (NORTH TO PLANETARY-DEFENSE)\n      (WEST TO SYSTEMS-CORRIDOR-WEST)\n      (EAST TO SYSTEMS-CORRIDOR-EAST)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM SYSTEMS-CORRIDOR-EAST\n      (IN ROOMS)\n      (DESC \"Systems Corridor East\")\n      (LDESC\n\"The hallway ends here with a large doorway leading east, and smaller doorways\nto the north and south. The northern doorway is labelled \\\"Planateree Kors\nKontrool.\\\" The hallway itself leads west.\")\n      (C-MOVE 0)\n      (WEST TO SYSTEMS-CORRIDOR)\n      (SOUTH TO LIBRARY-LOBBY)\n      (NORTH TO PLANETARY-COURSE-CONTROL)\n      (EAST TO PHYSICAL-PLANT-TWO)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM PHYSICAL-PLANT-TWO\n      (IN ROOMS)\n      (DESC \"Physical Plant\")\n      (LDESC\n\"This is an enormous room full of environmental control equipment presumably\nintended to heat and ventilate the Lawanda Complex. Oddly, although the\nLawanda Complex is slightly smaller than its counterpart, this plant is much\nlarger than the one in the Kalamontee Complex. The only exit is westward.\")\n      (C-MOVE 0)\n      (WEST TO SYSTEMS-CORRIDOR-EAST)\n      (OUT TO SYSTEMS-CORRIDOR-EAST)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (PSEUDO \"EQUIPM\" EQUIPMENT-PSEUDO)>\n\n\f\n\n\"Planetary systems and repairs\"\n\n<GLOBAL DEFENSE-FIXED <>>\n\n<GLOBAL COURSE-CONTROL-FIXED <>>\n\n<GLOBAL ACCESS-PANEL-FULL T>\n\n<ROOM PLANETARY-DEFENSE\n      (IN ROOMS)\n      (DESC \"Planetary Defense\")\n      (C-MOVE 0)\n      (SOUTH TO SYSTEMS-CORRIDOR)\n      (OUT TO SYSTEMS-CORRIDOR)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL CONTROLS LIGHTS)\n      (ACTION PLANETARY-DEFENSE-F)>\n\n<ROUTINE PLANETARY-DEFENSE-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This room is filled with a dazzling array of lights and controls. \">\n\t\t<COND (<NOT ,DEFENSE-FIXED>\n\t\t       <TELL\n\"One light, blinking quickly, catches your eye. It reads \\\"Surkit Boord\nFaalyur. WORNEENG: xis boord kuntroolz xe diskriminaashun surkits.\\\"\" >)>\n\t\t<TELL\" There is a small access panel on one wall which is \">\n\t\t<DDESC ,ACCESS-PANEL>\n\t\t<TELL \".\" CR>)>>\n\n<OBJECT ACCESS-PANEL\n\t(IN PLANETARY-DEFENSE)\n\t(DESC \"access panel\")\n\t(SYNONYM PANEL DOOR SOCKET)\n\t(ADJECTIVE SMALL ACCESS REPAIR)\n\t(FLAGS VOWELBIT NDESCBIT CONTBIT SEARCHBIT)\n\t(CAPACITY 40)\n\t(ACTION ACCESS-PANEL-F)>\n\n<ROUTINE ACCESS-PANEL-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,ACCESS-PANEL ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (T\n\t\t       <FSET ,ACCESS-PANEL ,OPENBIT>\n\t\t       <TELL \"The panel swings open.\" CR>\n\t\t       <PERFORM ,V?LOOK-INSIDE ,ACCESS-PANEL>\n\t\t       <RTRUE>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,ACCESS-PANEL ,OPENBIT>\n\t\t       <FCLEAR ,ACCESS-PANEL ,OPENBIT>\n\t\t       <TELL \"The panel swings closed.\" CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)\n\t       (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,ACCESS-PANEL>>\n\t\t<COND (<NOT <FSET? ,ACCESS-PANEL ,OPENBIT>>\n\t\t       <TELL \"The panel is closed.\" CR>)\n\t\t      (,ACCESS-PANEL-FULL\n\t\t       <TELL \"There's no room.\" CR>)\n\t\t      (<EQUAL? ,PRSO ,GOOD-BOARD>\n\t\t       <REMOVE ,GOOD-BOARD>\n\t\t       <MOVE ,SECOND-BOARD ,ACCESS-PANEL>\n\t\t       <THIS-IS-IT ,SECOND-BOARD>\n\t\t       <SETG DEFENSE-FIXED T>\n\t\t       <SETG SCORE <+ ,SCORE 6>>\n\t\t       <SETG ACCESS-PANEL-FULL T>\n\t\t       <PUT-BOARD>\n\t\t       <TELL \" The warning lights stop flashing.\" CR>)\n\t\t      (<EQUAL? ,PRSO ,CRACKED-BOARD ,FRIED-BOARD>\n\t\t       <REMOVE ,PRSO>\n\t\t       <THIS-IS-IT ,SECOND-BOARD>\n\t\t       <MOVE ,SECOND-BOARD ,ACCESS-PANEL>\n\t\t       <SETG ACCESS-PANEL-FULL T>\n\t\t       <COND (<EQUAL? ,PRSO ,CRACKED-BOARD>\n\t\t\t      <SETG ITS-CRACKED T>)>\t\t\t      \n\t\t       <PUT-BOARD>\n\t\t       <CRLF>)\n\t\t      (T\n\t\t       <TELL \"The \" D, PRSO \" doesn't fit.\">)>)>>\n\n<OBJECT FIRST-BOARD\n\t(IN ACCESS-PANEL)\n\t(DESC \"first seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE FIRST SEVENTEEN CENTIMETER FROMITZ)\n\t(ACTION BOARD-F)>\n\n<OBJECT FOURTH-BOARD\n\t(IN ACCESS-PANEL)\n\t(DESC \"fourth seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE FOURTH SEVENTEEN CENTIMETER FROMITZ)\n\t(ACTION BOARD-F)>\n\n<OBJECT THIRD-BOARD\n\t(IN ACCESS-PANEL)\n\t(DESC \"third seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE THIRD SEVENTEEN CENTIMETER FROMITZ)\n\t(ACTION BOARD-F)>\n\t\t\t \n<OBJECT SECOND-BOARD\n\t(IN ACCESS-PANEL)\n\t(DESC \"second seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE SECOND SEVENTEEN CENTIMETER FROMITZ)\n\t(FLAGS TRYTAKEBIT TAKEBIT)\n\t(ACTION BOARD-F)>\n\n<OBJECT FRIED-BOARD\n\t(DESC \"fried seventeen-centimeter fromitz board\")\n\t(SYNONYM BOARD BOARDS)\n\t(ADJECTIVE FRIED SEVENTEEN CENTIMETER FROMITZ)\n\t(SIZE 10)\n\t(FLAGS ACIDBIT TAKEBIT)\n\t(ACTION FRIED-BOARD-F)>\n\n<ROUTINE FRIED-BOARD-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<EXAMINE-BOARD>\n\t\t<TELL\n\" This one is a bit blackened around the edges, though.\" CR>)>>\n\n<GLOBAL ITS-CRACKED <>>\n\n<ROUTINE BOARD-F ()\n\t <COND (<VERB? TAKE>\n\t\t<COND (<EQUAL? ,PRSO ,SECOND-BOARD>\n\t\t       <COND (,DEFENSE-FIXED\n\t\t\t      <BOARD-SHOCK>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"The fromitz board slides out of the panel, producing an empty socket\nfor another board.\" CR>\n\t\t\t      <REMOVE ,SECOND-BOARD>\n\t\t\t      <SETG ACCESS-PANEL-FULL <>>\n\t\t\t      <COND (<EQUAL? ,ITS-CRACKED T>\n\t\t\t\t     <MOVE ,CRACKED-BOARD ,ADVENTURER>)\n\t\t\t\t    (T\n\t\t\t\t     <MOVE ,FRIED-BOARD ,ADVENTURER>)>\n\t\t\t      <THIS-IS-IT ,FRIED-BOARD>)>)\n\t\t      (T\n\t\t       <BOARD-SHOCK>)>)\n\t       (<VERB? EXAMINE>\n\t\t<EXAMINE-BOARD>\n\t\t<CRLF>)>>\n\n<ROUTINE EXAMINE-BOARD ()\n\t <TELL\n\"Like most fromitz boards, it is a twisted maze of silicon circuits. It is\nsquare, approximately seventeen centimeters on each side.\">>\n\n<ROUTINE PUT-BOARD ()\n\t <TELL \"The card clicks neatly into the socket.\">>\n\n<ROUTINE BOARD-SHOCK ()\n\t <TELL \"You jerk your hand back as you receive a powerful\nshock from the fromitz board.\" CR>>\n\n<ROOM PLANETARY-COURSE-CONTROL\n      (IN ROOMS)\n      (DESC \"Course Control\")\n      (C-MOVE 0)\n      (SOUTH TO SYSTEMS-CORRIDOR-EAST)\n      (OUT TO SYSTEMS-CORRIDOR-EAST)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (GLOBAL CONTROLS LIGHTS)\n      (ACTION PLANETARY-COURSE-CONTROL-F)>\n\n<ROUTINE PLANETARY-COURSE-CONTROL-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a long room whose walls are covered with complicated controls\nand colored lights. \">\n\t\t<COND (,COURSE-CONTROL-FIXED\n\t\t       <TELL\n\"One blinking light says \\\"Kors diivurjins minimiizeeng.\\\"\">)\n\t\t      (T\n\t\t       <TELL\n\"Two of these lights are blinking. The first one reads \\\"Bedistur Faalyur!\\\"\nThe other light reads \\\"Kritikul diivurjins frum pland kors.\\\"\">)>\n\t\t<TELL \" In one corner is a large metal cube whose lid is \">\n\t\t<COND (<FSET? ,CUBE ,OPENBIT>\n\t\t       <TELL \"open\">)\n\t\t      (T\n\t\t       <TELL \"closed\">)>\n\t\t<TELL \".\" CR>)>>\n\n<OBJECT CUBE\n\t(IN PLANETARY-COURSE-CONTROL)\n\t(DESC \"large metal cube\")\n\t(SYNONYM CUBE LID SOCKET)\n\t(ADJECTIVE LARGE METAL)\n\t(FLAGS MUNGBIT NDESCBIT CONTBIT SEARCHBIT)\n\t(ACTION CUBE-F)>\n\n<ROUTINE CUBE-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,CUBE ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (T\n\t\t       <FSET ,CUBE ,OPENBIT>\n\t\t       <TELL \"The lid swings open.\" CR>\n\t\t       <PERFORM ,V?LOOK-INSIDE ,CUBE>\n\t\t       <RTRUE>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,CUBE ,OPENBIT>\n\t\t       <FCLEAR ,CUBE ,OPENBIT>\n\t\t       <TELL \"The lid swings closed.\" CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)\n\t       (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,CUBE>>\n\t\t<COND (<NOT <FSET? ,CUBE ,OPENBIT>>\n\t\t       <TELL \"The cube is closed.\" CR>) \n\t\t      (<IN? ,BAD-BEDISTOR ,CUBE>\n\t\t       <TELL \"There's a fused bedistor in the way.\" CR>)\n\t\t      (<EQUAL? ,PRSO ,GOOD-BEDISTOR>\n\t\t       <MOVE ,GOOD-BEDISTOR ,CUBE>\n\t\t       <COND (<NOT <FSET? ,CUBE ,MUNGEDBIT>>\n\t\t\t      <SETG COURSE-CONTROL-FIXED T>\n\t\t\t      <FSET ,GOOD-BEDISTOR ,TRYTAKEBIT>\n\t\t\t      <SETG SCORE <+ ,SCORE 6>>\n\t\t\t      <TELL\n\"Done. The warning lights go out and another light goes on.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL \"Done.\" CR>)>)\n\t\t      (<EQUAL? ,PRSO ,BAD-BEDISTOR>\n\t\t       <MOVE ,BAD-BEDISTOR ,CUBE>\n\t\t       <TELL \"Done.\" CR>)\n\t\t      (T\n\t\t       <TELL \"The \" D, PRSO \" doesn't fit.\">)>)>>\n\n<OBJECT BAD-BEDISTOR\n\t(IN CUBE)\n\t(DESC \"fused ninety-ohm bedistor\")\n\t(SYNONYM BEDISTOR)\n\t(ADJECTIVE FUSED NINETY OHM)\n\t(SIZE 8)\n\t(FLAGS ACIDBIT TRYTAKEBIT TAKEBIT)\n\t(ACTION BAD-BEDISTOR-F)>\n\n<ROUTINE BAD-BEDISTOR-F ()\n\t <COND (<AND <VERB? TAKE>\n\t\t     <IN? ,BAD-BEDISTOR ,CUBE>>\n\t\t<TELL \"It seems to be fused to its socket.\" CR>)\n\t       (<VERB? ZATTRACT>\n\t\t<COND (<EQUAL? ,PRSI ,PLIERS>\n\t\t       <MOVE ,BAD-BEDISTOR ,ADVENTURER>\n\t\t       <FCLEAR ,BAD-BEDISTOR ,TRYTAKEBIT>\n\t\t       <TELL\n\"With a tug, you manage to remove the fused bedistor.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"You can't get a grip on the bedistor with that.\" CR>)>)>>\n\n\f\n\n\"The Library\"\n\n<ROOM LIBRARY-LOBBY\n      (IN ROOMS)\n      (DESC \"Library Lobby\")\n      (LDESC \n\"This is a carpeted room, thick with dust, with exits to the north and south.\nTo the west, up a few steps, is a wide doorway. A small booth lies to the\neast.\")\n      (C-MOVE 0)\n      (UP TO LIBRARY)\n      (WEST TO LIBRARY)\n      (NORTH TO SYSTEMS-CORRIDOR-EAST)\n      (SOUTH TO PROJECT-CORRIDOR-EAST)\n      (EAST TO BOOTH-3)\n      (IN TO BOOTH-3)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (GLOBAL TABLES STAIRS)\n      (PSEUDO \"CARPET\" CARPET-PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)>\n\n<OBJECT GREEN-SPOOL\n\t(IN LIBRARY-LOBBY)\n\t(DESC \"green spool\")\n\t(FDESC\n\"You catch a glimpse of a small object nestled among the dust.\")\n\t(SYNONYM SPOOL SPOOLS OBJECT)\n\t(ADJECTIVE GREEN SMALL)\n\t(SIZE 3)\n\t(TEXT\n\"The spool is labelled \\\"Helikoptur Opuraateeng Manyuuwul.\\\"\")\n\t(FLAGS ACIDBIT TAKEBIT READBIT)\n\t(ACTION GREEN-SPOOL-F)>\n\n<ROUTINE GREEN-SPOOL-F ()\n\t <COND (<AND <VERB? TAKE>\n\t\t     <IN? ,GREEN-SPOOL ,SPOOL-READER>\n\t\t     <FSET? ,SPOOL-READER ,ONBIT>>\n\t\t<MOVE ,GREEN-SPOOL ,ADVENTURER>\n\t\t<FCLEAR ,GREEN-SPOOL ,TRYTAKEBIT>\n\t\t<TELL \"The screen goes blank as you take the spool.\" CR>)>>\n\n<ROOM BOOTH-3\n      (IN ROOMS)\n      (DESC \"Booth 3\")\n      (LDESC\n\"This is a tiny room with a large \\\"3\\\" painted on the wall. A panel contains\na slot about ten centimeters wide, a brown button labelled \\\"1\\\" and a beige\nbutton labelled \\\"2.\\\"\")\n      (C-MOVE 0)\n      (WEST TO LIBRARY-LOBBY)\n      (OUT TO LIBRARY-LOBBY)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL CONTROLS SLOT TELEPORTATION-BUTTON-1 TELEPORTATION-BUTTON-2)\n      (PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)>\n\n<ROOM LIBRARY\n      (IN ROOMS)\n      (DESC \"Library\")\n      (LDESC\n\"This is a large carpeted room with a desk and many small tables. The sole\nexit is down a few steps to the east.\")\n      (C-MOVE 0)\n      (EAST TO LIBRARY-LOBBY)\n      (OUT TO LIBRARY-LOBBY)\n      (FLAGS RLANDBIT ONBIT FLOYDBIT)\n      (GLOBAL TABLES STAIRS)\n      (PSEUDO \"CARPET\" CARPET-PSEUDO \"DESK\" DESK-PSEUDO)>\n\n<OBJECT TERMINAL\n\t(IN LIBRARY-LOBBY)\n\t(DESC \"terminal\")\n\t(FDESC\n\"Sitting on a wide table is a machine of sorts, consisting of a video\nscreen and a keyboard. It is currently turned off.\")\n\t(LDESC\n\"On the table is a computer terminal.\")\n\t(SYNONYM TERMINAL KEYBOARD SCREEN MACHIN)\n\t(ADJECTIVE COMPUTER VIDEO)\n\t(FLAGS LIGHTBIT)\n\t(ACTION TERMINAL-F)>\n\n<GLOBAL MENU-LEVEL 0>\n\n<ROUTINE TERMINAL-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"The computer terminal consists of a video display screen, a keyboard with\nten keys numbered from zero through nine, and an on-off switch. \">\n\t\t<COND (<FSET? ,TERMINAL ,ONBIT>\n\t\t       <TELL\n\"The screen displays some writing:\" CR ,SCREEN-TEXT CR>\n\t\t       <COND (<G? ,MENU-LEVEL 9>\n\t\t\t      <TELL ,MORE-INFO CR>)>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL \"The screen is dark.\" CR>)>)\n\t       (<VERB? READ>\n\t\t<COND (<FSET? ,TERMINAL ,ONBIT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <COND (<G? ,MENU-LEVEL 9>\n\t\t\t      <TELL ,MORE-INFO CR>)>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL \"The screen is blank.\" CR>)>)\n\t       (<VERB? LAMP-ON>\n\t\t<COND (<FSET? ,TERMINAL ,ONBIT>\n\t\t       <TELL \"It's already on.\" CR>)\n\t\t      (T\n\t\t       <FSET ,TERMINAL ,ONBIT>\n\t\t       <FSET ,TERMINAL ,TOUCHBIT>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL\n\"The screen gives off a green flash, and then some writing appears on\nthe screen:\" CR>\n\t\t       <TELL ,SCREEN-TEXT CR>)>)\n\t       (<VERB? LAMP-OFF>\n\t\t<COND (<FSET? ,TERMINAL ,ONBIT>\n\t\t       <FCLEAR ,TERMINAL ,ONBIT>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL \"The screen goes dark.\" CR>)\n\t\t      (T\n\t\t       <TELL \"It isn't on!\" CR>)>)>>\n\n<ROUTINE LIBRARY-TYPE ()\n\t <COND (<NOT <EQUAL? ,PRSO ,INTNUM>>\n\t\t<NUMBERS-ONLY>)\n\t       (<EQUAL? ,MENU-LEVEL 0>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <TELL ,NO-MEANING CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,HISTORY-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <SETG MENU-LEVEL 1>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,CULTURE-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <SETG MENU-LEVEL 2>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,TECHNOLOGY-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <SETG MENU-LEVEL 3>)\n\t\t      (<EQUAL? ,P-NUMBER 4>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,GEOGRAPHY-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <SETG MENU-LEVEL 4>)\n\t\t      (<EQUAL? ,P-NUMBER 5>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,PROJECT-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <SETG MENU-LEVEL 5>)\n\t\t      (<EQUAL? ,P-NUMBER 6>\n\t\t       <SETG MENU-LEVEL 6>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,INTERLOGIC-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<G? ,P-NUMBER 6>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<EQUAL? ,MENU-LEVEL 1>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <SETG MENU-LEVEL 11>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,11-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <SETG MENU-LEVEL 12>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,12-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <SETG MENU-LEVEL 13>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,13-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<G? ,P-NUMBER 3>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<EQUAL? ,MENU-LEVEL 2>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <SETG MENU-LEVEL 21>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,21-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <SETG MENU-LEVEL 22>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,22-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <SETG MENU-LEVEL 23>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,23-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<G? ,P-NUMBER 4>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<EQUAL? ,MENU-LEVEL 3>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <SETG MENU-LEVEL 31>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,31-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <SETG MENU-LEVEL 32>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,32-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <SETG MENU-LEVEL 33>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,33-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 4>\n\t\t       <SETG MENU-LEVEL 34>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,34-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 5>\n\t\t       <SETG MENU-LEVEL 35>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,35-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<G? ,P-NUMBER 5>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<EQUAL? ,MENU-LEVEL 4>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <SETG MENU-LEVEL 41>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,41-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <SETG MENU-LEVEL 42>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,42-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <SETG MENU-LEVEL 43>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,43-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<G? ,P-NUMBER 3>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<EQUAL? ,MENU-LEVEL 5>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <SETG MENU-LEVEL 51>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,51-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <SETG MENU-LEVEL 52>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,52-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <SETG MENU-LEVEL 53>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,53-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<G? ,P-NUMBER 3>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<EQUAL? ,MENU-LEVEL 6>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 0>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,MAIN-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <SETG MENU-LEVEL 61>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,61-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>\n\t\t       <COND (<IN? ,FLOYD ,HERE>\n\t\t\t      <SETG FLOYD-SPOKE T>\n\t\t\t      <TELL\n\"Floyd, peering over your shoulder, says \\\"Oh, I love that game! Solved every\nproblem, except couldn't figure out how to get into white house.\\\"\" CR>)>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <SETG MENU-LEVEL 62>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,62-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <SETG MENU-LEVEL 63>\n\t\t       <TELL ,TEXT-APPEARS CR>\n\t\t       <SETG SCREEN-TEXT ,63-TEXT>\n\t\t       <TELL ,SCREEN-TEXT CR>\n\t\t       <TELL ,MORE-INFO CR>)\n\t\t      (<G? ,P-NUMBER 3>\n\t\t       <TELL ,NO-MEANING CR>)>)\n\t       (<AND <G? ,MENU-LEVEL 10>\n\t\t     <L? ,MENU-LEVEL 20>>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 1>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,HISTORY-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (T\n\t\t       <TELL ,LOW-END CR>)>)\n\t       (<AND <G? ,MENU-LEVEL 20>\n\t\t     <L? ,MENU-LEVEL 30>>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 2>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,CULTURE-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (T\n\t\t       <TELL ,LOW-END CR>)>)\n\t       (<AND <G? ,MENU-LEVEL 30>\n\t\t     <L? ,MENU-LEVEL 40>>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 3>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,TECHNOLOGY-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (T\n\t\t       <TELL ,LOW-END CR>)>)\n\t       (<AND <G? ,MENU-LEVEL 40>\n\t\t     <L? ,MENU-LEVEL 50>>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 4>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,GEOGRAPHY-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (T\n\t\t       <TELL ,LOW-END CR>)>)\n\t       (<AND <G? ,MENU-LEVEL 50>\n\t\t     <L? ,MENU-LEVEL 60>>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 5>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,PROJECT-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (T\n\t\t       <TELL ,LOW-END CR>)>)\n\t       (<AND <G? ,MENU-LEVEL 60>\n\t\t     <L? ,MENU-LEVEL 70>>\n\t\t<COND (<EQUAL? ,P-NUMBER 0>\n\t\t       <SETG MENU-LEVEL 6>\n\t\t       <TELL ,SCREEN-CLEARS CR>\n\t\t       <SETG SCREEN-TEXT ,INTERLOGIC-MENU>\n\t\t       <TELL ,SCREEN-TEXT CR>)\n\t\t      (T\n\t\t       <TELL ,LOW-END CR>)>)>>\n\n<GLOBAL SCREEN-TEXT <>>\n\n<GLOBAL NO-MEANING \"The terminal feeps, and a message briefly appears on the\nscreen explaining that typing that character has no meaning at the moment.\">\n\n<GLOBAL SCREEN-CLEARS \"The screen clears and a different menu appears:|\">\n\n<GLOBAL TEXT-APPEARS \"The screen clears and some text appears:|\">\n\n<GLOBAL MORE-INFO\n\"|\n\\\"Foor moor deetaald infoormaashun on xis tapik, konsult xe\nliibrereein foor xe aproopreeit spuulz. Tiip zeeroo tuu goo tuu\naa hiiyur levul.\\\"\">\n\n<GLOBAL LOW-END \"\\\"Yuu hav reect xe loowist levul uv xe liibreree indeks.\nPleez tiip zeeroo tuu goo tuu aa hiiyur levul. If yuu reekwiir\nasistins, kawl xe liibrereein.\\\"\">\n\n<GLOBAL MAIN-MENU\n\"    1. Histooree|\n    2. Kulcur|\n    3. Teknolojee|\n    4. Jeeografee|\n    5. Xe Prajekt|\n    6. Inturlajik Gaamz\">\n\n<GLOBAL HISTORY-MENU\n\"    0. Maan Menyuu|\n    1. Raashul Orijinz|\n    2. Graat Hiiaatus|\n    3. Riiz uv xe Nuu Teknakrasee\">\n\n<GLOBAL CULTURE-MENU\n\"    0. Maan Menyuu|\n    1. Lituracur|\n    2. Art|\n    3. Muusik\">\n\n<GLOBAL TECHNOLOGY-MENU\n\"    0. Maan Menyuu|\n    1. Medisin|\n    2. Agrikultcur|\n    3. Tranzportaashun|\n    4. Roobotiks|\n    5. Planateree Sistumz\">\n\n<GLOBAL GEOGRAPHY-MENU\n\"    0. Maan Menyuu|\n    1. Planit Landmasiz|\n    2. Undursee Reejunz|\n    3. Spaas Kolooneez\">\n\n<GLOBAL PROJECT-MENU\n\"    0. Maan Menyuu|\n    1. Orijinz uv xe Dizeez|\n    2. Xe Instalaashunz|\n    3. Prajekt Kuntrool|\">\n\n<GLOBAL INTERLOGIC-MENU\n\"    0. Maan Menyuu|\n    1. Zoork|\n    2. Dedliin and Witnis|\n    3. Starkros and Suspendid\">\n\n<GLOBAL 11-TEXT\n\"\\\"Xe aancint lejindz saa xat ships frum xe Sekund Yuunyun wuns fild ar skiis\nand wil wun daa kum agen. Madern siientists, huu wuns dismist suc lejindz\nand felt xat liif eevolvd heer on Resida, now feel xat ar planit wuz reelee\nsetuld bii men uv xe Sekund Yuunyun.\\\"\">\n\n<GLOBAL 12-TEXT\n\"\\\"Wexur oor not xe lejindz uv xe Sekund Yuunyun ar truu, arkeeoloojists ar\nsurtin xat aa peereeid uv hii teknoolojikul and sooshul deevelupmint egzistid\nxowzindz uv yeerz agoo, but foor sum reezin sivilizaashun slid intuu aa dark\naaj lasteeng senshureez.\\\"\">\n\n<GLOBAL 13-TEXT\n\"\\\"Wixin xe last fiiv senshureez, xe riiz uv xe Nuu Teknakrasee haz reeturnd\nsivilizaashun tuu xe levul ataand beefoor xe Hiiaatus. Sooshul histooreeunz\nxink xat wen xe Dizeez struk, ar raas had aceevd aa levul uv sufistikaashun\neekwal tuu xe pree-Hiiaatus.\\\"\">\n\n<GLOBAL 21-TEXT\n\"\\\"Menee volyuumz on xe deevelupmint uv Residan lituracur ar on fiil in xe\nliibreree. Alsoo, kopeez uv awl graat wurks uv riiteeng, sum daateeng bak tuu\nxe mixikul daaz uv xe Sekund Yuunyun, ar lookaatid heer.\\\"\">\n\n<GLOBAL 22-TEXT\n\"\\\"Histoorikul studeez and reeproodukshunz uv Residan art ar avaalibul heer\nfoor awl xree maajur peereeids uv art deevelupmint: xe Primitiv peereeid, xe\nRenasans peereeid uv xe urlee poost-Hiiaatus, and xe moost reesint peereeid\nuv videeoo and laazur art.\\\"\">\n\n<GLOBAL 23-TEXT\n\"\\\"Reekoordeengz uv awl impoortint kompoozishunz uv xe last fiiv hundrid yeerz\nar lookaatid in xe liibrereez data banks.\\\"\">\n\n<GLOBAL 31-TEXT\n\"\\\"Awl maajur dizeezuz hav bin kyuuribul foor oovur aa senshuree. Xe\ndeevelupmint uv kriioojeniks now alowz dokturz tuu put paashints in staasis\nuntil aa kyuur iz fownd. Avurij Residan liif ekspektinsee iz now 147\nrevooluushunz.\\\"\">\n\n<GLOBAL 32-TEXT\n\"\\\"Durt farmeeng iz awl but obsooleet, wix moost fuud kumeeng frum xe\nhiidrooponiks kompleksiz oor xe undurwatur aljee farmz.\\\"\">\n\n<GLOBAL 33-TEXT\n\"\\\"Planateree travul iz noormulee priivit skuutur foor shoort hops, and aarbus\nfoor longur trips.  Spaas travul haz reesintlee bin revooluushuniizd bii xe\ninvenshun uv nuukleeur-fyuuld enjinz.\\\"\">\n\n<GLOBAL 34-TEXT\n\"\\\"Untoold senshureez agoo, entiir teemz uv roobots wur reekwiird tuu purfoorm\neevin xe simplist tasks...wun roobot wud handul viszuuwul funkshunz, wun roobot\nwud handul awditooree funkshunz, and soo foorx. Now, xanks tuu advansis in\nmineeatshurizaashun, xeez tasks kan bee purfoormd bii singul roobots, suc az\nxe multiipurpis B-19 seereez.\\\"\">\n\n<GLOBAL 35-TEXT\n\"\\\"Xe priimeree Planateree Sistumz ar Kors Kuntrool (foor maantaaneeng an\niideel kliimit), Deefens (foor destroieeng pootenshulee daanjuris meeteeoorz),\nand xe reesintlee adid Prajekt Kuntrool (foor monitureeng proogres uv\nXe Prajekt).\\\"\">\n\n<GLOBAL 41-TEXT\n\"\\\"Sins xe staabulizaashun uv xe oorbit uv Resida, preesiislee 47.79 pursent\nuv xe planits surfis iz land. Xe land iz diviidid intuu tuu priimeree\nlandmasiz, Andoor and Fruulik, plus siks lesur landmasiz. Xe gloobul kapitul,\nPilandoor, iz on xe eesturn koost uv Andoor.\\\"\">\n\n<GLOBAL 42-TEXT\n\"\\\"Xe furst undursee habutats wur oopind in 2992, and tuudaa, neerlee tuu\nsenshureez laatur, abowt 9 pursent uv Residaz popyuulaashun livz in wun\nuv xe twentee sprawleeng undursee siteez.\\\"\">\n\n<GLOBAL 43-TEXT\n\"\\\"Alxoo setulmints hav bin establisht on Fristin, and on sevrul uv xe muunz\nuv xe gas jiiunt Blustin, xe vast majooritee uv of-woorldurz liv in xe\nspaas kolooneez establisht at Residaz troojin points.\\\"\"> \n\n<GLOBAL 51-TEXT\n\"\\\"Xe oorijin uv Xe Dizeez haz bin linkt tuu xe Sentur foor Advanst Kriioojenik\nReesurc, wic wuz kondukteeng reesurc intuu waaz uv ekstendeeng xe Kriioojenik\npeereeid indefinitlee. Alxoo xis reesurc wuz aa sukses, sumhow Xe Dizeez\nwuz reeleest and beegan spredeeng.\\\"\">\n\n<GLOBAL 52-TEXT\n\"\\\"Xe tuu kompleksiz wur establisht on xe twin peek platooz uv Kalamontee and\nLawanda. Xeez lookaashunz wur coozin beekawz xaar hiit wud maak\ntranspoortaashun and komyuunikaashunz eezeeur, and soo xat xe vast reeakturz\nand kriioojeniks caamburz kud bee kunstruktid in xe mowntinz beeloo.\\\"\">\n\n<GLOBAL 53-TEXT\n\"\\\"Faaz Wun: xe kunstrukshun uv xe Kalamontee and Lawanda Kompleksiz. Faaz\nTuu: mass kriioojenik freezeeng uv Residan popyuulaashun. Faaz Xree:\nsiimultaaneeus monitureeng uv kriioojeniks wiil awtoomaatid reesurc iz\nkonduktid bii inkrediblee soofistikaatid kumpyuuturiizd fasiliteez. Faaz\nFoor: reeviivul and inokyuulaashun uv xe popyuulaashun.\\\"\">\n\n<GLOBAL 61-TEXT\n\"\\\"Xe Zoork triloojee, an adventshur klasik, taaks plaas in aa deeliitful\nbut daanjuris undurgrownd seteeng.\\\"\">\n\n<GLOBAL 62-TEXT\n\"\\\"Dedliin iz xe furst graat misturee uv xe kumpyuutur aaj, and Witnis iz\nits wurxee suksesur.\\\"\">\n\n<GLOBAL 63-TEXT\n\"\\\"Starkros iz Infookamz miind-bendeeng siiens-fikshun adventshur. Suspendid\niz aa kriioojenik siiens-fikshun niitmaar.\\\"\">\n\n<OBJECT SPOOL-READER\n\t(IN LIBRARY)\n\t(DESC \"microfilm reader\")\n\t(FDESC\n\"On the desk is a machine with a screen and a small circular opening. It\nseems to be turned off.\")\n\t(LDESC\n\"There is a microfilm reader on one of the tables.\")\n\t(SYNONYM READER SCREEN OPENIN MACHIN) \n\t(ADJECTIVE MICROF SMALL CIRCUL)\n\t(CAPACITY 3)\n\t(FLAGS LIGHTBIT CONTBIT SEARCHBIT OPENBIT)\n\t(ACTION SPOOL-READER-F)>\n\n<GLOBAL SPOOL-TEXT <>>\n\n<ROUTINE SPOOL-READER-F ()\n\t <COND (<VERB? LAMP-ON>\n\t\t<COND (<FSET? ,SPOOL-READER ,ONBIT>\n\t\t       <TELL \"The spool reader is already on.\" CR>)\n\t\t      (T\n\t\t       <FSET ,SPOOL-READER ,ONBIT>\n\t\t       <FSET ,SPOOL-READER ,TOUCHBIT> \n\t\t       <COND (<FIRST? ,SPOOL-READER>\n\t\t\t      <TELL ,SPOOL-TEXT CR>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"The machine hums quietly, and the screen lights up with the phrase\n\\\"Pleez insurt spuul.\\\"\" CR>)>)>)\n\t       (<VERB? LAMP-OFF>\n\t\t<COND (<FSET? ,SPOOL-READER ,ONBIT>\n\t\t       <FCLEAR ,SPOOL-READER ,ONBIT>\n\t\t       <TELL \"The spool reader is now off.\" CR>)\n\t\t      (T\n\t\t       <TELL \"It's not on!\" CR>)>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL\n\"The machine has a small screen, and below that, a small circular opening.\nThe screen is currently \">\n\t\t<COND (<AND <FSET? ,SPOOL-READER ,ONBIT>\n\t\t\t    <FIRST? ,SPOOL-READER>>\n\t\t       <TELL \"displaying some information:\" CR>\n\t\t       <TELL ,SPOOL-TEXT CR>)\n\t\t      (T\n\t\t       <TELL \"blank.\" CR>)>)\n\t       (<VERB? READ>\n\t\t<COND (<AND <FSET? ,SPOOL-READER ,ONBIT>\n\t\t\t    <FIRST? ,SPOOL-READER>>\n\t\t       <TELL ,SPOOL-TEXT CR>)\n\t\t      (T\n\t\t       <TELL \"The screen is blank.\" CR>)>)\n\t       (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,SPOOL-READER>>\n\t\t<COND (<FIRST? ,SPOOL-READER>\n\t\t       <TELL \"There's already a spool in the reader.\" CR>)\n\t\t      (<EQUAL? ,PRSO ,GREEN-SPOOL>\n\t\t       <SETG SPOOL-TEXT ,GREEN-TEXT>\n\t\t       <MOVE ,GREEN-SPOOL ,SPOOL-READER>\n\t\t       <FSET ,GREEN-SPOOL ,TRYTAKEBIT>\n\t\t       <TELL ,SPOOL-FITS>\n\t\t       <COND (<FSET? ,SPOOL-READER ,ONBIT>\n\t\t\t      <TELL ,SOME-INFO>)>\n\t\t       <TELL CR>)\n\t\t      (<EQUAL? ,PRSO ,RED-SPOOL>\n\t\t       <SETG SPOOL-TEXT ,RED-TEXT>\n\t\t       <MOVE ,RED-SPOOL ,SPOOL-READER>\n\t\t       <FSET ,RED-SPOOL ,TRYTAKEBIT>\n\t\t       <TELL ,SPOOL-FITS>\n\t\t       <COND (<FSET? ,SPOOL-READER ,ONBIT>\n\t\t\t      <TELL ,SOME-INFO>)>\n\t\t       <TELL CR>)\n\t\t      (T\n\t\t       <TELL \"It doesn't fit in the circular opening.\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<NO-CLOSE>\n\t\t<RTRUE>)>>\n\n<GLOBAL SPOOL-FITS \"The spool fits neatly into the opening.\">\n\n<GLOBAL SOME-INFO \" Some information appears on the screen.\">\n\n<GLOBAL GREEN-TEXT\n\"\\\"Oonlee peepul wix propur traaneeng shud piilot xe helikopturz. Reekwiird\nekwipmint inkluudz aa Helikoptur Akses Kard and aa Kuntrool Panul Kee. Xeez\nkan bee obtaand frum Tranzportaashun Stoorij.\\\"|\nThe rest is all very technical.\">\n\n<GLOBAL RED-TEXT\n\"\\\"Xe jestaashun peereeid uv Xe Dizeez, folooweeng ekspoozur, vaareez\ntreemenduslee frum pursin tuu pursin, raanjeeng frum wun daa tuu sevrul\nrootaashunz. Wuns xe furst simptumz ar shoon, dex alwaaz okurz in aat tuu\nten daaz.|\nXe priimeree simptum iz aa hii feevur. Xe sekunderee simptum iz aa sharp\ninkrees in xe amownt uv sleep needid eec niit.\\\"|\nThe rest of the information is about symptoms which can be detected only by\nusing complicated medical procedures.\">\n\n<ROOM PROJECT-CORRIDOR-WEST\n      (IN ROOMS)\n      (DESC \"Project Corridor West\")\n      (LDESC\n\"This is a curving hallway leading east and northwest. There is an opening\nto the west.\")\n      (C-MOVE  <TABLE 0   0 0      0\n         25 0   0   0 \n\t  0 0   0   0>)\n      (WEST TO SANFAC-F)\n      (EAST TO PROJECT-CORRIDOR)\n      (NW TO FORK)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM SANFAC-F\n      (IN ROOMS)\n      (DESC \"SanFac F\")\n      (LDESC\n\"This is another dusty sanitary facility. Unlike the ones near the dorms,\nthis one is smaller and has no bathing fixtures.\")\n      (C-MOVE 0)\n      (EAST TO PROJECT-CORRIDOR-WEST)\n      (OUT TO PROJECT-CORRIDOR-WEST)\n      (FLAGS FLOYDBIT RLANDBIT ONBIT)\n      (PSEUDO \"FIXTURES\" TOILET-PSEUDO \"TOILET\" TOILET-PSEUDO)>\n\n<ROOM PROJECT-CORRIDOR\n      (IN ROOMS)\n      (DESC \"Project Corridor\")\n      (LDESC\n\"You are at the center of a long east-west hallway. A doorway, labelled\n\\\"PrajKon Awfis\\\", opens to the south.\")\n      (C-MOVE 0)\n      (EAST TO PROJECT-CORRIDOR-EAST)\n      (WEST TO PROJECT-CORRIDOR-WEST)\n      (SOUTH TO PROJCON-OFFICE)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM PROJCON-OFFICE\n      (IN ROOMS)\n      (DESC \"ProjCon Office\")\n      (C-MOVE 0)\n      (NORTH TO PROJECT-CORRIDOR)\n      (SOUTH TO CRYO-ELEVATOR IF CRYO-ELEVATOR-DOOR IS OPEN\n       ELSE \"You can't go that way.\")\n      (EAST TO COMPUTER-ROOM)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL CRYO-ELEVATOR-DOOR)\n      (PSEUDO \"MURAL\" MURAL-PSEUDO \"LOGO\" LOGO-PSEUDO)\n      (ACTION PROJCON-OFFICE-F)>\n\n<ROUTINE PROJCON-OFFICE-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This office looks like a headquarters of some kind. Exits lead north and\neast. The west wall displays a logo. \">\n\t\t<COND (,COMPUTER-FIXED\n\t\t       <TELL\n\"The mural that previously adorned the south wall has slid away, revealing\nan open doorway to a large elevator!\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"The south wall is completely covered by a garish mural which clashes\nwith the other decor of the room.\" CR>)>)\n\t       (<AND <EQUAL? .RARG ,M-END>\n\t\t     <IN? ,FLOYD ,HERE>\n\t\t     <NOT ,MURAL-FLAG>>\n\t\t<SETG MURAL-FLAG T>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL\n\"Floyd surveys the mural and scratches his head. \\\"I don't remember seeing\nthis before,\\\" he comments.\" CR>)>>\n\n<GLOBAL MURAL-FLAG <>>\n\n<OBJECT CRYO-ELEVATOR-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"cryo-elevator door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE CRYO-ELEVATOR ELEVATOR)\n\t(FLAGS NDESCBIT INVISIBLE)>\n\n<ROOM CRYO-ELEVATOR\n      (IN ROOMS)\n      (DESC \"Cryo-Elevator\")\n      (C-MOVE 0)\n      (NORTH PER CRYO-EXIT-F)\n      (GLOBAL CRYO-ELEVATOR-DOOR)\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"BUTTON\" CRYO-BUTTON-PSEUDO)\n      (ACTION CRYO-ELEVATOR-F)>\n\n<ROUTINE CRYO-ELEVATOR-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a large, plain elevator with one solitary button and a door\nto the north which is \">\n\t\t<DDESC ,CRYO-ELEVATOR-DOOR>\n\t\t<TELL \".\" CR>)>>\n\n<ROUTINE CRYO-EXIT-F ()\n\t <COND (<FSET? ,CRYO-ELEVATOR-DOOR ,OPENBIT>\n\t\t<COND (,CRYO-SCORE-FLAG\n\t\t       ,CRYO-ANTEROOM)\n\t\t      (T\n\t\t       ,PROJCON-OFFICE)>)\n\t       (T\n\t\t<DOOR-CLOSED>\n\t\t<RFALSE>)>>\n\n<GLOBAL CRYO-SCORE-FLAG <>>\n\n<ROUTINE I-CRYO-ELEVATOR-ARRIVE ()\n\t <FSET ,CRYO-ELEVATOR-DOOR ,OPENBIT>\n\t <TELL CR \"The elevator door opens onto a room to the north.\" CR>>\n\n<ROOM CRYO-ANTEROOM\n      (IN ROOMS)\n      (DESC \"Cryo-Anteroom\")\n      (C-MOVE 0)\n      (FLAGS RLANDBIT ONBIT)\n      (ACTION CRYO-ANTEROOM-F)>\n\n<ROUTINE CRYO-ANTEROOM-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"The elevator closes as you leave it, and you find yourself in a small,\nchilly room. To the north, through a wide arch, is an enormous chamber lined\nfrom floor to ceiling with thousands of cryo-units. You can see similar\nchambers beyond, and your mind staggers at the thought of the millions of\nindividuals asleep for countless centuries.|\n|\nIn the anteroom where you stand is a solitary cryo-unit, its cover frosted.\nNext to the cryo-unit is a complicated control panel.\" CR CR>)\n\t       (<EQUAL? .RARG ,M-END>\n\t\t<TELL\n\"A door slides open and a medical robot glides in. It opens the cryo-unit\nand administers an injection to its inhabitant. As the robot glides away, a\nfigure rises from the cryo-unit -- a handsome, middle-aged woman with flowing\nred hair. She spends some time studying readouts from the control panel\">\n\t\t<COND (<AND ,COMM-FIXED ,DEFENSE-FIXED>\n\t\t       <TELL \", pressing several keys.\" CR>)\n\t\t      (T\n\t\t       <TELL \".\" CR>)>\n\t\t<COND (,COURSE-CONTROL-FIXED\n\t\t       <TELL\n\"|\nAs other cryo-units in the chambers beyond begin opening, the woman turns\nto you, bows gracefully, and speaks in a beautiful, lilting\nvoice. \\\"I am Veldina, leader of Resida. Thanks to you, the cure has been\ndiscovered, and the planetary systems repaired. We are eternally\ngrateful.\\\"\" CR>\n\t\t       <COND (<AND ,COMM-FIXED ,DEFENSE-FIXED>\n\t\t\t      <TELL\n\"|\n\\\"You will also be glad to hear that a ship of your Stellar Patrol now orbits\nthe planet. I have sent them the coordinates for this room.\\\" As if on cue,\na landing party from the S.P.S. Flathead materializes nearby. Blather is with\nthem, having been picked up from deep space in another escape pod, babbling\ncravenly. Captain Sterling of the Flathead acknowledges your heroic actions,\nand informs you of your promotion to Lieutenant First Class.|\n|\nAs a team of mutant hunters head for the cryo-elevator, Veldina mentions that\nthe grateful people of Resida offer you leadership of their world. Captain\nSterling points out that, even if you choose to remain on Resida, Blather\n(demoted to Ensign Twelfth Class) has been assigned as your personal toilet\nattendant.|\n|\nYou feel a sting from your arm and turn to see a medical robot moving\naway after administering the antidote for The Disease.|\n|\nA team of robot technicians step into the anteroom. They part their ranks, and\na familiar figure comes bounding toward you! \\\"Hi!\\\" shouts Floyd, with\nuncontrolled enthusiasm. \\\"Floyd feeling better now!\\\" Smiling from ear to\near, he says, \\\"Look what Floyd found!\\\" He hands you a helicopter key,\na reactor elevator card, and a paddleball set. \\\"Maybe we can use them in\nthe sequel...\\\"\" CR CR>\n\t\t\t      <FINISH <>>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"|\n\\\"Unfortunately, a second ship from your Stellar Patrol has \">\n\t\t\t      <COND (<NOT ,DEFENSE-FIXED>\n\t\t\t\t     <TELL\n\"been destroyed by our malfunctioning meteor defenses.\">)\n\t\t\t\t    (T\n\t\t\t\t     <TELL\n\"come looking for survivors, and because of our malfunctioning communications\nsystem, has given up and departed.\">)>\n\t\t\t      <TELL\n\" I fear that you are stranded on Resida, possibly forever. However, we\nshow our gratitude by offering you an unlimited bank account and a house\nin the country.\\\"\" CR CR>\n\t\t\t      <FINISH <>>)>)\n\t\t      (T\n\t\t       <TELL\n\"|\nShe turns to you and, with a strained voice says, \\\"You have fixed our\ncomputer and a Cure has been discovered, and we are grateful. But alas,\nit was all in vain. Our planetary course control system has malfunctioned,\nand the orbit has now decayed beyond correction. Soon Resida will plunge\ninto the sun.\\\"\" CR CR>\n\t\t       <COND (<AND ,COMM-FIXED ,DEFENSE-FIXED>\n\t\t\t      <TELL\n\"Veldina examines the control panel again. \\\"Fortunately, another ship from\nyour Stellar Patrol has arrived, so at least you will survive.\\\" At that\nmoment, a landing party from the S.P.S. Flathead materializes, and takes you\naway from the doomed world.\" CR CR>)>\n\t\t       <FINISH <>>)>)>>\n\n<ROOM PROJECT-CORRIDOR-EAST\n      (IN ROOMS)\n      (DESC \"Project Corridor East\")\n      (LDESC\n\"The hallway ends here but continues back toward the west. Doorways lead\nnorth, south and east.\")\n      (C-MOVE 0)\n      (NORTH TO LIBRARY-LOBBY)\n      (SOUTH TO COMPUTER-ROOM)\n      (WEST TO PROJECT-CORRIDOR)\n      (EAST TO MAIN-LAB)\n      (FLAGS RLANDBIT ONBIT)>\n\n<ROOM COMPUTER-ROOM\n      (IN ROOMS)\n      (DESC \"Computer Room\")\n      (LDESC\n\"This is the main computer room for the Project. The only sign of activity is\na glowing red light. The exits are north, west, and northeast. To the south\nis a small booth.\")\n      (C-MOVE  <TABLE 0   0 0      0\n          0 0   0   0 \n\t  0 0  25   0>)\n      (NORTH TO PROJECT-CORRIDOR-EAST)\n      (WEST TO PROJCON-OFFICE)\n      (SOUTH TO MINI-BOOTH)\n      (IN TO MINI-BOOTH)\n      (NE TO MAIN-LAB)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL LIGHTS)\n      (PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)>\n\n<GLOBAL COMPUTER-FLAG <>>\n\n<ROUTINE COMPUTER-ACTION ()\n\t <SETG COMPUTER-FLAG T>\n\t <SETG FLOYD-SPOKE T>\n\t <TELL \"Floyd examines the \">\n\t <COND (<EQUAL? ,HERE ,COMPUTER-ROOM>\n\t\t<TELL \"glowing light\">)\n\t       (T\n\t\t<TELL \"computer printout\">)>\n\t <TELL \". With a concerned frown, he says, \\\"Uh oh. Computer is\nbroken. A Doctor-person once told Floyd that Computer is the most important\npart of the Project.\\\"\" CR>>\n\n<OBJECT PRINT-OUT\n\t(IN COMPUTER-ROOM)\n\t(DESC \"pile of computer output\")\n\t(SYNONYM PILE PAPER OUTPUT PRINTOUT)\n\t(ADJECTIVE COMPUTER)\n\t(SIZE 20)\n\t(FLAGS ACIDBIT TAKEBIT READBIT)\n\t(ACTION PRINT-OUT-F)>\n\n<ROUTINE PRINT-OUT-F ()\n\t <COND (<VERB? READ EXAMINE>\n\t\t<FIXED-FONT-ON>\n\t\t<TELL\n\"The printout is hundreds of pages long. It would take many chrons to\nread it all. The last page looks pretty interesting, though:|\n|\n\\\"Daalee Statis Reeport:|\nPREELIMINEREE REESURC:  100.000%|\nINTURMEEDEEIT REESURC:  100.000%|\nFIINUL REESURC:         100.000%|\nDRUG PROODUKSHUN:       100.000%|\nDRUG TESTEENG:           99.985%|\nProojektid tiim tuu reeviivul prooseedzur:  0 daaz, 0.8 kronz|\n|\n|\n*** ALURT! ALURT! ***|\nMalfunkshun in Sekshun 384! Sumuneeng reepaar roobot.\\\"|\n|\nThe printout ends at this point.\" CR>\n\t\t<FIXED-FONT-OFF>)>>\n\n<ROOM MINI-BOOTH\n      (IN ROOMS)\n      (DESC \"Miniaturization Booth\")\n      (LDESC\n\"This is a small room barely large enough for one person. Mounted on the wall\nis a small slot, and next to it a keyboard with numeric keys. The exit is to\nthe north.\")\n      (C-MOVE 0)\n      (NORTH TO COMPUTER-ROOM)\n      (OUT TO COMPUTER-ROOM)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL SLOT)\n      (PSEUDO \"KEYBOARD\" KEYBOARD-PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)>\n\n<OBJECT MINI-CARD\n\t(IN BIO-LOCK-EAST)\n\t(DESC \"miniaturization access card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE MINIAT MINI ACCESS)\n\t(SIZE 3)\n\t(FLAGS TAKEBIT NDESCBIT INVISIBLE READBIT)\n\t(VALUE 1)\n\t(TEXT \"The card is embossed \\\"minitcurizaashun akses kard.\\\"\")\n\t(ACTION MINI-CARD-F)>\n\n<ROUTINE MINI-CARD-F ()\n\t <COND (<AND <FSET? ,MINI-CARD ,NDESCBIT>\n\t\t     <VERB? RUB MOVE TURN SET TAKE PUSH PULL SMELL>>\n\t\t<TELL \"It's in the next room.\" CR>)>>\n\n<ROOM MAIN-LAB\n      (IN ROOMS)\n      (DESC \"Main Lab\")\n      (LDESC\n\"This is the heart of the Project's vast laboratory complex. There are exits\nto the west and southwest, and heavy metal doors to the northeast and\nsoutheast. A small doorway leads south.\")\n      (C-MOVE  <TABLE 0   0 0      0\n          0 0  25   0 \n\t  0 0   0   0>)\n      (WEST TO PROJECT-CORRIDOR-EAST)\n      (SOUTH TO LAB-STORAGE)\n      (SW TO COMPUTER-ROOM)\n      (SE TO BIO-LOCK-WEST IF BIO-DOOR-WEST IS OPEN)\n      (NE TO RADIATION-LOCK-WEST IF RAD-DOOR-WEST IS OPEN)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL BIO-DOOR-WEST RAD-DOOR-WEST)>\n\n<ROOM LAB-STORAGE\n      (IN ROOMS)\n      (DESC \"Lab Storage\")\n      (LDESC\n\"This is a tiny room for the storage of laboratory supplies. The sole exit is\nto the north.\")\n      (C-MOVE 0)\n      (NORTH TO MAIN-LAB)\n      (OUT TO MAIN-LAB)\n      (FLAGS RLANDBIT FLOYDBIT ONBIT)\n      (GLOBAL SHELVES)\n      (PSEUDO \"RACK\" CARPET-PSEUDO \"SUPPLIES\" SUPPLIES-PSEUDO)> \n\n<OBJECT LAB-UNIFORM\n\t(IN LAB-STORAGE)\n\t(DESC \"lab uniform\")\n\t(FDESC\n\"Hanging on a rack is a pale blue lab uniform. Sewn onto its pocket is a\nnon-descript logo.\")\n\t(SYNONYM UNIFORM SUIT POCKET LOGO)\n\t(ADJECTIVE PALE BLUE LAB)\n\t(SIZE 10)\n\t(CAPACITY 5)\n\t(FLAGS TAKEBIT CONTBIT SEARCHBIT WEARBIT)\n\t(ACTION LAB-UNIFORM-F)>\n\n<GLOBAL UNIFORM-OPENED <>>\n\n<ROUTINE LAB-UNIFORM-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"It is a plain lab uniform. The logo above the pocket depicts a flame burning\nabove some kind of sleep chamber. The pocket is \">\n\t\t<DDESC ,LAB-UNIFORM>\n\t\t<TELL \".\" CR>)\n\t       (<VERB? SEARCH OPEN>\n\t        <COND (<FSET? ,LAB-UNIFORM ,OPENBIT>\n\t\t       <TELL \"The pocket is already open.\" CR>)\n\t\t      (T\n\t\t       <FSET ,LAB-UNIFORM ,OPENBIT>\n\t\t       <COND (,UNIFORM-OPENED\n\t\t\t      <COND (<FIRST? ,LAB-UNIFORM>\n\t\t\t\t     <TELL\n\"Opening the uniform's pocket reveals \">\n\t\t\t\t     <PRINT-CONTENTS ,LAB-UNIFORM>\n\t\t\t\t     <TELL \".\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <TELL \"The pocket is empty.\" CR>)>)\n\t\t\t     (T\n\t\t              <FSET ,LAB-UNIFORM ,OPENBIT>\n\t\t\t      <SETG UNIFORM-OPENED T>\n\t\t\t      <TELL\n\"You discover a small piece of paper and a teleportation access card in the\npocket of the uniform.\" CR>)>)>)\n\t       (<AND <VERB? WEAR>\n\t\t     <FSET? ,PATROL-UNIFORM ,WORNBIT>>\n\t\t<TELL \"It won't fit on top of the Patrol uniform.\" CR>)>>\n\n<OBJECT TELEPORTATION-CARD\n\t(IN LAB-UNIFORM)\n\t(DESC \"teleportation access card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE TELEPO ACCESS)\n\t(SIZE 3)\n\t(FLAGS TAKEBIT READBIT)\n\t(TEXT \"The card is embossed \\\"teliportaashun akses kard.\\\"\")>\n\n<OBJECT COMBINATION-PAPER\n\t(IN LAB-UNIFORM)\n\t(DESC \"piece of paper\")\n\t(SYNONYM PIECE PAPER)\n\t(FLAGS ACIDBIT TAKEBIT READBIT)\n\t(SIZE 2)\n\t(ACTION COMBINATION-PAPER-F)>\n\n<ROUTINE COMBINATION-PAPER-F ()\n\t <COND (<VERB? READ EXAMINE>\n\t\t<TELL\n\"Week uv 14-Juun--2882. Kombinaashun tuu Konfurins Ruum: \" N ,NUMBER-NEEDED\n\".\" CR>)>>\n\n<ROOM BIO-LOCK-WEST\n      (IN ROOMS)\n      (DESC \"Bio Lock West\")\n      (LDESC\n\"This is the first half of a sterilization chamber to prevent contamination\nof the delicate biological experiments in the Bio Lab which lies beyond. The\ndoor to the west leads to the main lab, and the bio lock continues eastward.\")\n      (C-MOVE  <TABLE 0   0 0      0\n          0 0   0   0 \n\t  0 10   0   0>)\n      (EAST TO BIO-LOCK-EAST)\n      (WEST TO MAIN-LAB IF BIO-DOOR-WEST IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL BIO-DOOR-WEST)>\n\n<ROOM BIO-LOCK-EAST\n      (IN ROOMS)\n      (DESC \"Bio Lock East\")\n      (LDESC\n\"The is the second half of the sterilization chamber leading from the main\nlab to the Bio Lab. The door to the east, leading to the Bio Lab, has a\nwindow. The bio lock continues to the west.\")\n      (C-MOVE  <TABLE 0   0 0      0\n          0 10   0   0 \n\t  0 0   0   0>)\n      (EAST TO BIO-LAB IF BIO-DOOR-EAST IS OPEN)\n      (WEST TO BIO-LOCK-WEST)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL BIO-DOOR-EAST WINDOW)\n      (ACTION BIO-LOCK-EAST-F)>\n\n<ROUTINE BIO-LOCK-EAST-F (RARG)\n\t <COND (<AND <EQUAL? .RARG ,M-END>\n\t\t     <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>\n\t\t     <NOT <EQUAL? ,FLOYD ,WINNER>>>\n\t\t<COND (,FLOYD-WAITING\n\t\t       <COND (<G? ,WAITING-COUNTER 3>\n\t\t\t      <SETG FLOYD-WAITING <>>\n\t\t\t      <SETG FLOYD-GAVE-UP T>\n\t\t\t      <SETG FLOYD-SPOKE T>\n\t\t\t      <SETG FLOYD-FOLLOW <>>\n\t\t\t      <MOVE ,FLOYD ,BIO-LOCK-WEST>\n\t\t\t      <ENABLE <QUEUE I-FLOYD 1>>\n\t\t\t      <TELL\n\"\\\"Okay,\\\" says Floyd with uncharacteristic annoyance. \\\"Forget about the\nstupid card.\\\" He goes to the other end of the bio-lock and sulks.\" CR>)\n\t\t\t     (<NOT ,FLOYD-FORAYED>\n\t\t\t      <SETG FLOYD-SPOKE T>\n\t\t\t      <SETG WAITING-COUNTER <+ ,WAITING-COUNTER 1>>\n\t\t\t      <TELL\n\"Floyd looks at you with a dash of impatience and a healthy helping of\nnervousness. \\\"Well?\\\" he asks. \\\"Are you going to open the door?\\\"\" CR>)>)\n\t\t      (<AND <NOT ,FLOYD-GAVE-UP>\n\t\t\t    <NOT ,FLOYD-PEERED>>\n\t\t       <SETG FLOYD-SPOKE T>\n\t\t       <SETG FLOYD-PEERED T>\n\t\t       <ENABLE <QUEUE I-CLEAR-FLOYD-PEER 40>>\n\t\t       <FCLEAR ,MINI-CARD ,INVISIBLE>\n\t\t       <TELL\n\"Floyd stands on his tiptoes and peers in the window. \">\n\t\t       <COND (,COMPUTER-FLAG\n\t\t\t      <SETG FLOYD-WAITING T>\n\t\t\t      <TELL\n\"\\\"Looks dangerous in there,\\\" says Floyd. \\\"I don't think you should go\ninside.\\\" He peers in again. \\\"We'll need card there to fix computer. Hmmm...\nI know! Floyd will get card. Robots are tough. Nothing can hurt robots. You\nopen the door, then Floyd will rush in. Then you close door. When Floyd knocks,\nopen door again. Okay? Go!\\\" Floyd's voice trembles slightly as he waits for\nyou to open the door.\">)\n\t\t\t     (T\n\t\t\t      <TELL\n\"\\\"Ooo, look,\\\" he says. \\\"There's a miniaturization booth access card!\\\"\">)>\n\t\t       <TELL CR>)>)>> \n\n<GLOBAL FLOYD-PEERED <>>\n\n<ROUTINE I-CLEAR-FLOYD-PEER ()\n\t <SETG FLOYD-PEERED <>>\n\t <RFALSE>>\n\n<ROOM RADIATION-LOCK-WEST\n      (IN ROOMS)\n      (DESC \"Radiation Lock West\")\n      (LDESC\n\"This is the western half of a decontamination chamber to prevent dangerous\nradioactive materials from leaving the Radiation Lab which lies to the east.\nThe door leads west to the main lab.\")\n      (C-MOVE 0)\n      (EAST TO RADIATION-LOCK-EAST)\n      (WEST TO MAIN-LAB IF RAD-DOOR-WEST IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL RAD-DOOR-WEST)>\n\n<ROOM RADIATION-LOCK-EAST\n      (IN ROOMS)\n      (DESC \"Radiation Lock East\")\n      (LDESC\n\"This is the eastern half of the decontamination chamber. The door to the\neast leads to the Radiation Lab, and the chamber continues westward. A sign\non the wall reads \\\"WORNEENG! Raadeeaashun suuts must bee worn beeyond xis\npoint.\\\"\")\n      (C-MOVE 0)\n      (EAST TO RADIATION-LAB IF RAD-DOOR-EAST IS OPEN)\n      (WEST TO RADIATION-LOCK-WEST)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL RAD-DOOR-EAST)>\n\n<OBJECT BIO-DOOR-EAST\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"lab door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE LAB)\n\t(FLAGS DOORBIT NDESCBIT)\n\t(ACTION BIO-DOOR-EAST-F)>\n\n<OBJECT BIO-DOOR-WEST\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"bio-lock door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE BIO-LOCK)\n\t(FLAGS DOORBIT NDESCBIT)\n\t(ACTION BIO-DOOR-WEST-F)>\n\n<OBJECT RAD-DOOR-EAST\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"lab door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE LAB)\n\t(FLAGS DOORBIT NDESCBIT)\n        (ACTION RAD-DOOR-EAST-F)>\n\n<OBJECT RAD-DOOR-WEST\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"radiation-lock door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE RADIATION)\n\t(FLAGS DOORBIT NDESCBIT)\n\t(ACTION RAD-DOOR-WEST-F)>\n\n<ROUTINE BIO-DOOR-EAST-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (<FSET? ,BIO-DOOR-WEST ,OPENBIT>\n\t\t       <TELL ,BOTH-DOORS CR>)\n\t\t      (<AND ,FLOYD-WAITING\n\t\t\t    <FSET? ,FLOYD ,RLANDBIT>\n\t\t\t    <EQUAL? ,FORAY-COUNTER 0>>\n\t\t       <ENABLE <QUEUE I-FLOYD-FORAY -1>>\n\t\t       <SETG FLOYD-FORAYED T>\n\t\t       <FSET ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <REMOVE ,FLOYD>\n\t\t       <DISABLE <INT I-FLOYD>>\n\t\t       <TELL\n\"The door opens and Floyd, pausing only for the briefest moment, plunges into\nthe Bio Lab. Immediately, he is set upon by hideous, mutated monsters! More\nare heading straight toward the open door! Floyd shrieks and yells to you to\nclose the door.\" CR>)\n\t\t      (<AND <NOT ,FLOYD-FORAYED>\n\t\t\t    <EQUAL? <GET <INT I-CHASE-SCENE> ,C-ENABLED?> 0>>\n\t\t       <JIGS-UP\n\"Opening the door reveals a Bio-Lab full of horrible mutations. You stare at\nthem, frozen with horror. Growling with hunger and delight, the mutations\nmarch into the bio-lock and devour you.\">)\n\t\t      (T\n\t\t       <FSET ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <ENABLE <QUEUE I-BIO-EAST-CLOSES 30>>\n\t\t       <TELL ,DOOR-OPENS CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <COND (<EQUAL? ,FORAY-COUNTER 4>\n\t\t\t      <SETG C-ELAPSED 95>)>\n\t\t       <FCLEAR ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <TELL \"The door closes\">\n\t\t       <COND (<EQUAL? <GET <INT I-CHASE-SCENE> ,C-ENABLED?> 1>\n\t\t\t      <TELL \", but not soon enough!\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL \".\" CR>)>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<ROUTINE I-BIO-EAST-CLOSES ()\n\t <COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t<FCLEAR ,BIO-DOOR-EAST ,OPENBIT>\n\t\t<COND (<EQUAL? ,HERE ,BIO-LOCK-EAST ,BIO-LOCK-WEST ,BIO-LAB>\n\t\t       <TELL CR \n\"The door at the eastern end of the bio-lock closes silently.\" CR>)>)>>\n\n<ROUTINE BIO-DOOR-WEST-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,BIO-DOOR-WEST ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <TELL ,BOTH-DOORS CR>)\n\t\t      (T\n\t\t       <TELL ,DOOR-OPENS CR>\n\t\t       <ENABLE <QUEUE I-BIO-WEST-CLOSES 30>>\n\t\t       <FSET ,BIO-DOOR-WEST ,OPENBIT>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,BIO-DOOR-WEST ,OPENBIT>\n\t\t       <FCLEAR ,BIO-DOOR-WEST ,OPENBIT>\n\t\t       <TELL ,DOOR-CLOSES CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<ROUTINE I-BIO-WEST-CLOSES ()\n\t <COND (<FSET? ,BIO-DOOR-WEST ,OPENBIT>\n\t\t<FCLEAR ,BIO-DOOR-WEST ,OPENBIT>\n\t\t<COND (<EQUAL? ,HERE ,BIO-LOCK-WEST ,BIO-LOCK-EAST ,MAIN-LAB>\n\t\t       <TELL CR\n\"The door at the western end of the bio-lock closes silently.\" CR>)>)>>\n\n<ROUTINE RAD-DOOR-EAST-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,RAD-DOOR-EAST ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (<FSET? ,RAD-DOOR-WEST ,OPENBIT>\n\t\t       <TELL ,BOTH-DOORS CR>)\n\t\t      (T\n\t\t       <FSET ,RAD-DOOR-EAST ,OPENBIT>\n\t\t       <TELL ,DOOR-OPENS CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,RAD-DOOR-EAST ,OPENBIT>\n\t\t       <FCLEAR ,RAD-DOOR-EAST ,OPENBIT>\n\t\t       <TELL ,DOOR-CLOSES CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<ROUTINE RAD-DOOR-WEST-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,RAD-DOOR-WEST ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (<FSET? ,RAD-DOOR-EAST ,OPENBIT>\n\t\t       <TELL ,BOTH-DOORS CR>)\n\t\t      (T\n\t\t       <TELL ,DOOR-OPENS CR>\n\t\t       <FSET ,RAD-DOOR-WEST ,OPENBIT>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,RAD-DOOR-WEST ,OPENBIT>\n\t\t       <FCLEAR ,RAD-DOOR-WEST ,OPENBIT>\n\t\t       <TELL ,DOOR-CLOSES CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<GLOBAL BOTH-DOORS\n\"A very bored-sounding recorded voice explains that, in order to prevent\ncontamination, both lock doors cannot be open simultaneously.\">\n\n<GLOBAL DOOR-OPENS \"The door opens.\">\n\n<GLOBAL DOOR-CLOSES \"The door closes.\">\n\n<GLOBAL FLOYD-WAITING <>>\n\n<GLOBAL WAITING-COUNTER 0>\n\n<GLOBAL FLOYD-GAVE-UP <>>\n\n<GLOBAL FLOYD-FORAYED <>>\n\n<GLOBAL FORAY-COUNTER 0>\n\n<ROUTINE I-FLOYD-FORAY ()\n\t <SETG FORAY-COUNTER <+ ,FORAY-COUNTER 1>>\n\t <COND (<EQUAL? ,FORAY-COUNTER 2>\n\t\t<COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <CRLF>\n\t\t       <MONSTER-DEATH>)\n\t\t      (T\n\t\t       <TELL CR\n\"From within the lab you hear ferocious growlings, the sounds of a skirmish,\nand then a high-pitched metallic scream!\" CR>)>)\n\t       (<EQUAL? ,FORAY-COUNTER 3>\n\t\t<COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <CRLF>\n\t\t       <MONSTER-DEATH>)\n\t\t      (T\n\t\t       <TELL CR\n\"You hear, slightly muffled by the door, three fast knocks, followed\nby the distinctive sound of tearing metal.\" CR>)>)\n\t       (<EQUAL? ,FORAY-COUNTER 4>\n\t\t<COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <MOVE ,FLOYD ,HERE>\n\t\t       <TELL CR\n\"Floyd stumbles out of the Bio Lab, clutching the mini-booth card. The\nmutations rush toward the open doorway!\" CR>)\n\t\t      (T\n\t\t       <TELL CR\n\"The three knocks come again, followed by a wild scream. Then, all is silence\nfrom within the Bio Lab, except for an occasional metallic crunch.\" CR>\n\t\t       <FCLEAR ,FLOYD ,RLANDBIT>\n\t\t       <DISABLE <INT I-FLOYD-FORAY>>)>)\n\t       (<EQUAL? ,FORAY-COUNTER 5>\n\t\t<COND (<FSET? ,BIO-DOOR-EAST ,OPENBIT>\n\t\t       <CRLF>\n\t\t       <MONSTER-DEATH>)\n\t\t      (T\n\t\t       <REMOVE ,FLOYD>\n\t\t       <FCLEAR ,FLOYD ,RLANDBIT>\n\t\t       <DISABLE <INT I-FLOYD>>\n\t\t       <FSET ,FLOYD ,INVISIBLE>\n\t\t       <MOVE ,DEAD-FLOYD ,HERE>\n\t\t       <MOVE ,MINI-CARD ,BIO-LOCK-EAST>\n\t\t       <FSET ,MINI-CARD ,TOUCHBIT>\n\t\t       <SETG SCORE <+ ,SCORE 2>>\n\t\t       <TELL CR\n\"And not a moment too soon! You hear a pounding from the door as the monsters\nwithin vent their frustration at losing their prey.|\n|\nFloyd staggers to the ground, dropping the mini card. He is badly torn apart,\nwith loose wires and broken circuits everywhere. Oil flows from his\nlubrication system. He obviously has only moments to live.|\n|\nYou drop to your knees and cradle Floyd's head in your lap. Floyd looks up\nat his friend with half-open eyes. \\\"Floyd did it ... got card. Floyd a\ngood friend, huh?\\\" Quietly, you sing Floyd's favorite song, the Ballad\nof the Starcrossed Miner:|\n|\nO, they ruled the solar system|\nNear ten thousand years before|\nIn their single starcrossed scout ships|\nMining ast'roids, spinning lore.|\n|\nThen one true courageous miner|\nSpied a spaceship from the stars|\nBoarded he that alien liner|\nOut beyond the orb of Mars.|\n|\nYes, that ship was filled with danger|\nMighty monsters barred his way|\nYet he solved the alien myst'ries|\nMining quite a lode that day.|\n|\nO, they ruled the solar system|\nNear ten thousand years before|\n'Til one brave advent'rous spirit|\nBrought that mighty ship to shore.|\n|\nAs you finish the last verse, Floyd smiles with contentment, and then his\neyes close as his head rolls to one side. You sit in silence for a moment,\nin memory of a brave friend who gave his life so that you might live.\" CR>\n\t\t       <FCLEAR ,FLOYD ,RLANDBIT>\n\t\t       <FCLEAR ,MINI-CARD ,NDESCBIT>\n\t\t       <DISABLE <INT I-FLOYD-FORAY>>)>)>>\n\n<ROUTINE MONSTER-DEATH ()\n\t <JIGS-UP\n\"The biological nightmares reach you. Gripping coils wrap around your limbs\nas powerful teeth begin tearing at your flesh. Something bites your leg,\nand you feel a powerful poison begin to work its numbing effects...\">>\n\n<ROOM BIO-LAB\n      (IN ROOMS)\n      (DESC \"Bio Lab\")\n      (C-MOVE 0)\n      (EAST TO LAB-OFFICE IF OFFICE-DOOR IS OPEN)\n      (WEST TO BIO-LOCK-EAST IF BIO-DOOR-EAST IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL BIO-DOOR-EAST WINDOW OFFICE-DOOR)\n      (PSEUDO \"CRACK\" CRACK-PSEUDO)\n      (ACTION BIO-LAB-F)>\n\n<ROUTINE BIO-LAB-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a huge laboratory filled with many biological experiments.\nThe lighting is \">\n\t\t<COND (,LAB-LIGHTS-ON\n\t\t       <TELL \"bright.\">)\n\t\t      (T\n\t\t       <TELL\n\"dim, and a faint blue glow comes from a gaping crack in the northern wall.\">)>\n\t       <TELL\n\" Some of the experiments seem to be out of control...\" CR>)\n\t (<EQUAL? .RARG ,M-END>\n\t  <ENABLE <QUEUE I-CHASE-SCENE -1>>\n\t  <DISABLE <INT I-SLEEP-WARNINGS>> ;\"don't fall asleep in mid-chase\"\n\t  <COND (,LAB-FLOODED\n\t\t       <TELL\n\"The air is filled with mist, which is affecting the mutants. They appear\nto be stunned and confused, but are slowly recovering.\" CR>\n\t\t       <COND (<NOT <FSET? ,GAS-MASK ,WORNBIT>>\n\t\t\t      <JIGS-UP\n\" Unfortunately, you don't seem to be that hardy.\">)>)\n\t\t      (T\n\t\t       <JIGS-UP\n\"The mutants attack you and rip you to shreds within seconds.\">)>)>> \n\n<GLOBAL EXTRA-MOVE-FLAG <>>\n\n<GLOBAL CRYO-MOVE-FLAG <>>\n\n<GLOBAL LAST-CHASE-ROOM <>>\n\n<GLOBAL SECOND-TO-LAST-ROOM <>>\n\n<ROUTINE I-CHASE-SCENE ()\n\t <COND (<AND <IN? ,RAT-ANT ,HERE>\n\t\t     <NOT ,LAB-FLOODED>>\n\t\t<JIGS-UP\n\"|\nDozens of hungry eyes fix on you as the mutations surround you\nand begin feasting.\">)\n\t       (<NOT ,LAB-FLOODED>\n\t\t<COND (<AND <EQUAL? ,HERE ,BIO-LOCK-WEST>\n\t\t\t    <NOT ,EXTRA-MOVE-FLAG>>\n\t\t       <SETG EXTRA-MOVE-FLAG T>\n\t\t       <TELL CR\n\"The monsters gallop toward you, smacking their lips.\" CR>)\n\t\t      (<AND <EQUAL? ,HERE ,CRYO-ELEVATOR>\n\t\t\t    <NOT ,CRYO-MOVE-FLAG>>\n\t\t       <SETG CRYO-MOVE-FLAG T>\n\t\t       <TELL CR\n\"The monsters are storming straight toward the elevator door!\" CR>)\n\t\t      (<AND <EQUAL? ,HERE ,SECOND-TO-LAST-ROOM>\n\t\t\t    <VERB? WALK>>\n\t\t       <JIGS-UP\n\"|\nYou stupidly run right into the jaws of the pursuing mutants.\">)\n\t\t      (T\n\t\t       <COND (<EQUAL? ,HERE ,CRYO-ELEVATOR>\n\t\t\t      <CRLF>\n\t\t\t      <MONSTER-DEATH>)>\n\t\t       <MOVE ,RAT-ANT ,HERE>\n\t\t       <MOVE ,TRIFFID ,HERE>\n\t\t       <MOVE ,TROLL ,HERE>\n\t\t       <MOVE ,GRUE ,HERE>\n\t\t       <TELL CR \"The mutants \">\n\t\t       <COND (<EQUAL? ,HERE ,BIO-LOCK-WEST>\n\t\t\t      <TELL \"are almost upon you now!\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL \"burst into the room right on your heels! \"\n\t\t\t\t    <PICK-ONE ,MONSTER-ENTRANCES> CR>)>)>)>\n\t <SETG SECOND-TO-LAST-ROOM ,LAST-CHASE-ROOM>\n\t <SETG LAST-CHASE-ROOM ,HERE>>\n\n<GLOBAL MONSTER-ENTRANCES\n\t<PLTABLE\n\t \"The growling humanoid is charging straight at you, waving his\naxe-like implement!\"\n\t \"A pair of slavering fangs removes part of your clothing!\"\n\t \"Needle-sharp mandibles nip at your arms!\"\n\t \"The mobile plant whips its poisonous tentacles against\nyour ankles!\">>\n\n<ROOM RADIATION-LAB\n      (IN ROOMS)\n      (DESC \"Radiation Lab\")\n      (LDESC \n\"This room is filled with unfathomable equipment and large canisters bearing\nradioactive warnings. Many of the canisters are split open. You can see the\nBio Lab through a large crack in the south wall. Sinister-looking forms move\nabout within the Bio Lab. Although the lights here are off, the room is\nsuffused with a pale blue glow.\")\n      (C-MOVE 0)\n      (WEST TO RADIATION-LOCK-EAST IF RAD-DOOR-EAST IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL TABLES RAD-DOOR-EAST)\n      (PSEUDO \"CRACK\" CRACK-PSEUDO \"EQUIPM\" EQUIPMENT-PSEUDO)\n      (ACTION RADIATION-LAB-F)>\n\n<ROUTINE RADIATION-LAB-F (RARG)\n\t <COND (<AND <EQUAL? .RARG ,M-ENTER>\n\t\t     <NOT <FSET? ,RADIATION-LAB ,TOUCHBIT>>>\n\t\t<ENABLE <QUEUE I-NUKED-BLUE 50>>)>>\n\n<GLOBAL NUKED-COUNTER 0>\n\n<ROUTINE I-NUKED-BLUE ()\n\t <ENABLE <QUEUE I-NUKED-BLUE -1>>\n\t <SETG NUKED-COUNTER <+ ,NUKED-COUNTER 1>>\n\t <COND (<EQUAL? ,NUKED-COUNTER 1>\n\t\t<TELL CR \"You suddenly feel sick and dizzy.\" CR>)\n\t       (<EQUAL? ,NUKED-COUNTER 2>\n\t\t<TELL CR\n\"You feel incredibly nauseous and begin vomiting. Also, all your\nhair has fallen out.\">\n\t\t<COND (<IN? ,FLOYD ,HERE>\n\t\t       <TELL\n\" Floyd points at you and laughs hysterically. \\\"You look funny with no\nhair,\\\" he gasps.\">)>\n\t\t<CRLF>)\n\t       (<EQUAL? ,NUKED-COUNTER 3>\n\t\t<JIGS-UP\n\"|\nIt seems you have picked up a bad case of radiation poisoning.\">)>>\n\n<OBJECT BROWN-SPOOL\n\t(IN RADIATION-LAB)\n\t(DESC \"brown spool\")\n\t(FDESC\n\"Sitting on a long table is a small brown spool.\")\n\t(SYNONYM SPOOL SPOOLS OBJECT)\n\t(ADJECTIVE BROWN SMALL)\n\t(SIZE 3)\n\t(TEXT\n\"The spool is labelled \\\"Instrukshunz foor Reepaareeng Reepaar Roobots.\\\"\")\n\t(FLAGS ACIDBIT TAKEBIT READBIT)>\n\n<OBJECT LAMP\n\t(IN RADIATION-LAB)\n\t(DESC \"portable lamp\")\n\t(FDESC\n\"There is a powerful portable lamp here, currently off.\")\n\t(SYNONYM LAMP LANTERN LIGHT)\n\t(ADJECTIVE POWERFUL PORTABLE)\n\t(SIZE 20)\n\t(FLAGS TAKEBIT)\n\t(ACTION LAMP-F)>\n\n<ROUTINE LAMP-F ()\n\t <COND (<VERB? LAMP-ON>\n\t\t<COND (<FSET? ,LAMP ,ONBIT>\n\t\t       <TELL \"It is on.\" CR>)\n\t\t      (T\n\t\t       <FSET ,LAMP ,ONBIT>\n\t\t       <FSET ,LAMP ,TOUCHBIT>\n\t\t       <TELL \"The lamp is now producing a bright light.\" CR>)>)\n\t       (<VERB? LAMP-OFF>\n\t\t<COND (<FSET? ,LAMP ,ONBIT>\n\t\t       <FCLEAR ,LAMP ,ONBIT>\n\t\t       <TELL \"The lamp goes dark.\" CR>)\n\t\t      (T\n\t\t       <TELL \"It isn't on.\" CR>)>)>>\n\n<ROOM LAB-OFFICE\n      (IN ROOMS)\n      (DESC \"Lab Office\")\n      (C-MOVE 0)\n      (WEST TO BIO-LAB IF OFFICE-DOOR IS OPEN)\n      (SOUTH TO AUXILIARY-BOOTH)\n      (IN TO AUXILIARY-BOOTH)\n      (GLOBAL OFFICE-DOOR)\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"FILES\" CABINETS-PSEUDO \"BOOTH\" NEAR-BOOTH-PSEUDO)\n      (ACTION LAB-OFFICE-F)>\n\n<ROUTINE LAB-OFFICE-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL \n\"This is the office for storing files on Bio Lab experiments. A large and\nmessy desk is surrounded by locked files. A small booth lies to the south. \">\n\t\t<COND (<FSET? ,OFFICE-DOOR ,OPENBIT>\n\t\t       <TELL \"An open\">)\n\t\t      (T\n\t\t       <TELL \"A closed\">)>\n\t\t<TELL \" door to the west is labelled \\\"Biioo Lab.\\\" You\nrealize with shock and horror that the only way out is through the\nmutant-infested Bio Lab.|\n|\nOn the wall are three buttons: a white button labelled \\\"Lab Liits On\\\",\na black button labelled \\\"Lab Liits Of\\\", and a red button labelled\n\\\"Eemurjensee Sistum.\\\"\" CR>)\n\t       (<AND <EQUAL? .RARG ,M-END>\n\t\t      <FSET? ,OFFICE-DOOR ,OPENBIT>>\n\t\t<COND (,LAB-FLOODED\n\t\t       <TELL\n\"Through the open doorway you can see the Bio Lab. It seems to be filled\nwith a light mist. Horrifying biological nightmares stagger about making\nchoking noises.\" CR>)\n\t\t      (T\n\t\t       <JIGS-UP\n\"Mutated monsters from the Bio Lab pour into the office. You are\ndevoured.\">)>)>>\n\n<OBJECT OFFICE-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"office door\")\n\t(SYNONYM DOOR)\n\t(ADJECTIVE OFFICE)\n\t(FLAGS VOWELBIT DOORBIT NDESCBIT)>\n\n<OBJECT LAB-DESK\n\t(IN LAB-OFFICE)\n\t(DESC \"desk\")\n\t(SYNONYM DESK)\n\t(ADJECTIVE LARGE MESSY)\n\t(FLAGS CONTBIT SEARCHBIT NDESCBIT)\n\t(CAPACITY 10)\n\t(ACTION LAB-DESK-F)>\n\n<ROUTINE LAB-DESK-F ()\n\t <COND (<AND <VERB? EXAMINE SEARCH>\n\t\t     <NOT <FSET? ,LAB-DESK ,TOUCHBIT>>>\n\t\t<MOVE ,MEMO ,ADVENTURER>\n\t\t<FSET ,LAB-DESK ,TOUCHBIT>\n\t\t<TELL\n\"After inspecting the various papers on the desk, you find only\none item of interest, a memo of some sort. The desk itself is \">\n\t\t<COND (<FSET? ,LAB-DESK ,OPENBIT>\n\t\t       <TELL \"open\">)\n\t\t      (T\n\t\t       <TELL\n\"closed, but it doesn't look locked\">)>\n\t\t<TELL \".\" CR>)\n\t       (<AND <VERB? OPEN>\n\t\t     <IN? ,GAS-MASK ,LAB-DESK>>\n\t\t<THIS-IS-IT ,GAS-MASK>\n\t\t<RFALSE>)>>\n\n<OBJECT GAS-MASK\n\t(IN LAB-DESK)\n\t(DESC \"gas mask\")\n\t(SYNONYM MASK)\n\t(ADJECTIVE GAS)\n\t(FLAGS ACIDBIT TAKEBIT WEARBIT)\n\t(SIZE 10)>\n\n<OBJECT MEMO\n\t(DESC \"memo\")\n\t(SYNONYM MEMO)\n\t(FLAGS READBIT ACIDBIT TAKEBIT)\n\t(TEXT\n\"\\\"Memoo tuu awl lab pursunel: Duu tuu xe daanjuris naatshur uv xe biioo\neksperiments, an eemurjensee sistum haz bin instawld. Xis sistum wud flud\nxe entiir Biioo Lab wic aa dedlee fungasiid. Propur preecawshunz shud bee\ntaakin if xis sistum iz evur yuuzd.\\\"\")>\n\n<OBJECT LIGHT-BUTTON\n\t(IN LAB-OFFICE)\n\t(DESC \"white button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE WHITE LIGHT)\n\t(FLAGS NDESCBIT)\n\t(ACTION LIGHT-BUTTON-F)>\n\n<OBJECT DARK-BUTTON\n\t(IN LAB-OFFICE)\n\t(DESC \"black button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BLACK DARK DARKNESS)\n\t(FLAGS NDESCBIT)\n\t(ACTION DARK-BUTTON-F)>\n\n<OBJECT FUNGICIDE-BUTTON\n\t(IN LAB-OFFICE)\n\t(DESC \"red button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE RED FUNGICIDE EMERGENCY)\n\t(FLAGS NDESCBIT)\n\t(ACTION FUNGICIDE-BUTTON-F)>\n\n<GLOBAL LAB-LIGHTS-ON <>>\n\n<GLOBAL LAB-FLOODED <>>\n\n<ROUTINE LIGHT-BUTTON-F ()\n\t <COND (<VERB? PUSH>\n\t\t<COND (,LAB-LIGHTS-ON\n\t\t       <TELL \"Nothing happens.\" CR>)\n\t\t      (T\n\t\t       <SETG LAB-LIGHTS-ON T>\n\t\t       <TELL ,FAINT-SOUND CR>)>)>>\n\n<ROUTINE DARK-BUTTON-F ()\n\t <COND (<VERB? PUSH>\n\t\t<COND (,LAB-LIGHTS-ON\n\t\t       <SETG LAB-LIGHTS-ON <>>\n\t\t       <TELL ,FAINT-SOUND CR>)\n\t\t      (T\n\t\t       <TELL \"Nothing happens.\" CR>)>)>>\n\n<GLOBAL FAINT-SOUND \"You hear the faint sound of a relay clicking.\">\n\n<ROUTINE FUNGICIDE-BUTTON-F ()\n\t <COND (<VERB? PUSH>\n\t\t<SETG LAB-FLOODED T>\n\t\t<ENABLE <QUEUE I-UNFLOOD 50>>\n\t\t<TELL\n\"You hear a hissing from beyond the door to the west.\" CR>)>>\n\n<ROUTINE I-UNFLOOD ()\n\t <SETG LAB-FLOODED <>>\n\t <COND (<EQUAL? ,HERE ,BIO-LAB>\n\t\t<TELL CR\n\"The last traces of mist in the air vanish. The mutants, recovering\nquickly, notice you and begin salivating.\" CR>)\n\t       (<AND <EQUAL? ,HERE ,LAB-OFFICE>\n\t\t     <FSET? ,OFFICE-DOOR ,OPENBIT>>\n\t\t<TELL CR\n\"The mist in the Bio Lab clears. The mutants recover and rush\ntoward the door!\" CR>)>>\n\n<ROOM AUXILIARY-BOOTH\n      (IN ROOMS)\n      (DESC \"Auxiliary Booth\")\n      (LDESC\n\"This is another small booth. Unlike the Miniaturization Booth, this room\nhas no slot or keyboard, so presumably it is intended only as a receiving\nstation. The exit is on the northern side.\")\n      (C-MOVE 0)\n      (NORTH TO LAB-OFFICE)\n      (OUT TO LAB-OFFICE)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 4)\n      (PSEUDO \"BOOTH\" IN-BOOTH-PSEUDO)>\n\n\f\n\n;\"INSIDE THE COMPUTER\"\n\n<GLOBAL MINI-ACTIVATED <>>\n\n<ROUTINE I-TURNOFF-MINI ()\n\t <SETG MINI-ACTIVATED <>>\n\t <COND (<EQUAL? ,HERE ,MINI-BOOTH>\n\t\t<TELL CR\n\"A recorded voice says \\\"Miniaturization booth de-activated.\\\"\" CR>)>>\n\n<ROOM STATION-384\n      (IN ROOMS)\n      (DESC \"Station 384\")\n      (LDESC\n\"You are standing on a square plate of heavy metal. Above your head, parallel\nto the plate beneath you, is an identical metal plate. To the east is a wide,\nmetallic strip.\")\n      (C-MOVE 0)\n      (EAST TO STRIP-NEAR-STATION)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL STRIP)\n      (PSEUDO \"PLATE\" PLATE-PSEUDO \"PLATES\" PLATE-PSEUDO)\n      (ACTION STATION-384-F)>\n\n<ROUTINE STATION-384-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-ENTER>\n\t\t<COND (,BEEN-HERE\n\t\t       <SETG BEEN-HERE <>>\n\t\t       <COND (,COMPUTER-FIXED\n\t\t\t      <TELL\n\"A voice seems to whisper in your ear \\\"Main Miniaturization and Teleportation\nBooth has malfunctioned...switching to Auxiliary Booth...\\\" \">\n\t                      <ENABLE <QUEUE I-ANNOUNCEMENT 130>>\n\t\t\t      <TELL ,FAMILIAR-WRENCHING CR>\n\t\t\t      <GOTO ,AUXILIARY-BOOTH>\n\t\t\t      <RFATAL>)\n\t\t\t     (T\n\t\t\t      <TELL ,FAMILIAR-WRENCHING CR>\n\t\t\t      <GOTO ,MINI-BOOTH <>>)>)>)>>\n\n<ROUTINE I-ANNOUNCEMENT ()\n\t <TELL CR \"A recorded announcement blares from the public address\nsystem. \\\"Revival procedure beginning. Cryo-chamber access from Project\nControl Office now open.\\\"\" CR>>\n\n<GLOBAL BEEN-HERE <>>\n\n<GLOBAL COMPUTER-FIXED <>>\n\n<GLOBAL FAMILIAR-WRENCHING\n\"You feel the familiar wrenching of your innards, and find yourself in a vast\nroom whose distant walls are rushing straight toward you...|\">\n\n<ROOM STRIP-NEAR-STATION\n      (IN ROOMS)\n      (DESC \"Strip Near Station\")\n      (LDESC\n\"You are standing on a silicon filament, which looks to you like a wide\nmetal highway. South of here, the filament makes a right angle and heads\nstraight down, like a cliff overlooking a black void. The filament can be\nfollowed north, however. Station 384 lies westward.\")\n      (C-MOVE 0)\n      (SOUTH \"The plunge would probably be fatal.\")\n      (EAST \"The plunge would probably be fatal.\")\n      (NORTH TO MIDDLE-OF-STRIP)\n      (WEST TO STATION-384)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 4)\n      (PSEUDO \"VOID\" VOID-PSEUDO)\n      (GLOBAL STRIP)>\n\n<ROOM MIDDLE-OF-STRIP\n      (IN ROOMS)\n      (DESC \"Middle of Strip\")\n      (LDESC\n\"You are standing on a section of the strip with a bottomless void stretching\nout on both sides. The strip continues to the north and south.\")\n      (C-MOVE 0)\n      (NORTH TO STRIP-NEAR-RELAY)\n      (SOUTH TO STRIP-NEAR-STATION IF NO-MICROBE ELSE \"Not a chance -- unless,\nof course, you don't mind walking into the gullet of a hungry microbe.\")\n      (EAST \"Do you have a penchant for bottomless voids?\")\n      (WEST \"Do you have a penchant for bottomless voids?\")\n      (FLAGS RLANDBIT ONBIT)\n      (ACTION MIDDLE-OF-STRIP-F)\n      (PSEUDO \"VOID\" VOID-PSEUDO)\n      (GLOBAL STRIP)>\n\n<GLOBAL NO-MICROBE T>\n\n<GLOBAL MICROBE-DISPATCHED <>>\n\n<ROUTINE MIDDLE-OF-STRIP-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-ENTER>\n\t\t<COND (<AND ,COMPUTER-FIXED\n\t\t\t    ,NO-MICROBE\n\t\t\t    <NOT ,MICROBE-DISPATCHED>>\n\t\t       <MOVE ,MICROBE ,HERE>\n\t\t       <ENABLE <QUEUE I-MICROBE -1>>\n\t\t       <SETG NO-MICROBE <>>\n\t\t       <TELL\n\"Suddenly, with a loud plop, a giant elephant-sized monster lands on the strip\njust in front of you. It is amorphously shaped, its skin a slimy translucent\nred membrane. While most of your brain screams with panic about the disgusting\nmonster that now blocks your exit, some small section in the back of your mind\ncalmly realizes that this is merely some tiny microbe which has somehow\nviolated the sterile environment of the computer interior.|\n|\nAs you stand frozen with fear, the microbe slithers toward you,\nextending slimy pseudopods thick with waving cilia. It looks pretty\nhungry, and seems intent on having you for lunch.\" CR CR>)>)>>\n\n<ROOM STRIP-NEAR-RELAY\n      (IN ROOMS)\n      (DESC \"Strip Near Relay\")\n      (C-MOVE 0)\n      (NORTH \"There is a huge featureless wall there, remember?\")\n      (SOUTH TO MIDDLE-OF-STRIP IF NO-MICROBE ELSE \"Not a chance -- unless,\nof course, you don't mind walking into the gullet of a hungry microbe.\")\n      (EAST PER RELAY-EXIT-F)\n      (WEST \"Do you have a penchant for bottomless voids?\")\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL STRIP)\n      (PSEUDO \"VOID\" VOID-PSEUDO)\n      (ACTION STRIP-NEAR-RELAY-F)>\n\n<ROUTINE STRIP-NEAR-RELAY-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"North of here, the filament ends at a huge featureless wall, presumably the\nside of some micro-component. \">\n\t\t<COND (<IN? ,RELAY ,HERE>\n\t\t       <TELL\n\"To the east is a vacuu-sealed micro-relay, sealed in transparent red\nplastic. You could probably see into the micro-relay.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"To the east are the shattered remains of some large object.\" CR>)>)\n\t       (<AND <EQUAL? .RARG ,M-ENTER>\n\t\t     <NOT ,NO-MICROBE>>\n\t\t<MOVE ,MICROBE ,HERE>\n\t\t<SETG MICROBE-COUNTER 0>\n\t\t<TELL\n\"The microbe, writhing angrily, follows you northward.\" CR>)>>\n\n<ROUTINE RELAY-EXIT-F ()\n\t <COND (<IN? ,RELAY ,HERE>\n\t\t<TELL\n\"The relay is sealed. Although you cannot enter it, you could look into\nit.\" CR>\n\t\t<RFALSE>)\n\t       (T\n\t\t<TELL\n\"You would slice yourself to ribbons on the shattered relay.\" CR>\n\t\t<RFALSE>)>>\n\n<OBJECT RELAY\n\t(IN STRIP-NEAR-RELAY)\n\t(DESC \"micro-relay\")\n\t(SYNONYM MICRO RELAY)\n\t(ADJECTIVE MICRO)\n\t(FLAGS NDESCBIT TRANSBIT)\n\t(ACTION RELAY-F)>\n\n<ROUTINE RELAY-F ()\n\t <COND (<VERB? EXAMINE LOOK-INSIDE>\n\t\t<TELL\n\"This is a vacuum-sealed micro-relay, encased in red translucent plastic.\">\n\t\t<COND (<NOT ,COMPUTER-FIXED>\n\t\t      <TELL\n\" Within, you can see that some sort of speck or impurity has wedged itself\ninto the contact point of the relay, preventing it from closing. The speck,\npresumably of microscopic size, resembles a blue boulder to you in your\ncurrent size.\">)>\n\t\t<TELL CR>)>>\n\n<OBJECT SPECK\n\t(IN RELAY)\n\t(DESC \"speck\")\n\t(SYNONYM SPECK BOULDER IMPURITY)\n\t(ADJECTIVE BLUE)\n\t(FLAGS NDESCBIT)>\n\n\f\n\n;\"Laserium\"\n\n<OBJECT LASER\n\t(IN TOOL-ROOM)\n\t(DESC \"laser\")\n\t(FDESC\n\"A small device, labelled \\\"Akmee Portabul Laazur\\\", is resting on one of\nthe lower shelves.\")\n\t(SYNONYM DEVICE LASER UNIT DEPRES)\n\t(ADJECTIVE PORTABLE ACME)\n\t(SIZE 25)\n\t(CAPACITY 5)\n\t(FLAGS MUNGBIT TAKEBIT OPENBIT TRANSBIT CONTBIT)\n\t(ACTION LASER-F)>\n\n<OBJECT LASER-DIAL\n\t(IN LASER)\n\t(DESC \"laser setting dial\")\n\t(SYNONYM DIAL)\n\t(ADJECTIVE LASER SETTING)\n\t(FLAGS MUNGBIT NDESCBIT)\n\t(ACTION LASER-DIAL-F)>\n\n<ROUTINE LASER-DIAL-F ()\n\t <COND (<AND <VERB? SET>\n\t\t     <EQUAL? ,PRSI ,INTNUM>>\n\t\t<COND (<FSET? ,LASER-DIAL ,MUNGEDBIT>\n\t\t       <TELL\n\"The laser dial seems to have become damaged and will not turn.\" CR>)\n\t\t      (<EQUAL? ,P-NUMBER ,LASER-SETTING>\n\t\t       <TELL \"That's where it's set now!\" CR>)\n\t\t      (<OR <G? ,P-NUMBER 6>\n\t\t\t   <EQUAL? ,P-NUMBER 0>>\n\t\t       <TELL \"The dial can only be set from 1 to 6.\" CR>)\n\t\t      (T\n\t\t       <SETG LASER-SETTING ,P-NUMBER>\n\t\t       <TELL \"The dial is now set to \" N ,P-NUMBER \".\" CR>)>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL \"The dial is currently set to \" N ,LASER-SETTING \".\" CR>)>>\n\n<OBJECT OLD-BATTERY\n\t(IN LASER)\n\t(DESC \"old battery\")\n\t(LDESC \"There is a worn-out laser battery here.\")\n\t(SYNONYM BATTERY)\n\t(ADJECTIVE LASER WORN-OUT OLD)\n\t(SIZE 5)\n\t(FLAGS VOWELBIT ACIDBIT TAKEBIT)>\n\n<OBJECT NEW-BATTERY\n\t(IN LAB-STORAGE)\n\t(DESC \"new battery\")\n\t(FDESC\n\"The odds and ends on the shelves include a small round object, which closer\ninspection reveals to be a fresh laser battery.\")\n\t(SYNONYM OBJECT BATTERY)\n\t(ADJECTIVE LASER SMALL ROUND FRESH NEW)\n\t(SIZE 5)\n\t(FLAGS ACIDBIT TAKEBIT)>\n\n<GLOBAL LASER-SETTING 5> ;\"dial on laser -- 1 is red, 2 is orange, etc.\"\n\n<GLOBAL SPECK-HIT <>> ;\"set to T first time you hit speck, takes two hits\"\n\n<GLOBAL OLD-SHOTS 0> ;\"number of shots left in the old-battery\"\n\n<GLOBAL NEW-SHOTS 0> ;\"number of shots left in the new-battery\"\n\n<ROUTINE ZAP-COUNT () ;\"checks to see if if have any shots left\"\n\t <COND (<IN? ,OLD-BATTERY ,LASER>\n\t\t<COND (<G? ,OLD-SHOTS 0>\n\t\t       <SETG OLD-SHOTS <- ,OLD-SHOTS 1>>\n\t\t       <RFALSE>)>\n\t\t<RTRUE>)\n\t       (<IN? ,NEW-BATTERY ,LASER>\n\t\t<COND (<G? ,NEW-SHOTS 0>\n\t\t       <SETG NEW-SHOTS <- ,NEW-SHOTS 1>>\n\t\t       <RFALSE>)>\n\t\t<RTRUE>)\n\t       (T <RTRUE>)>>\n\n<ROUTINE LASER-F (\"OPTIONAL\" (RARG <>))\n\t <COND (<AND <VERB? SET>\n\t\t     <EQUAL? ,PRSI ,INTNUM>>\n\t\t<PERFORM ,V?SET ,LASER-DIAL ,PRSI>\n\t\t<RTRUE>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL\n\"The laser, though portable, is still fairly heavy. It has a long, slender\nbarrel and a dial with six settings, labelled \\\"1\\\" through \\\"6.\\\" This dial\nis currently on setting \" N ,LASER-SETTING \". There is a depression on the\ntop of the laser which \">\n\t\t<COND (<IN? ,OLD-BATTERY ,LASER>\n\t\t       <TELL \"contains an \" D ,OLD-BATTERY>)\n\t\t      (<IN? ,NEW-BATTERY ,LASER>\n\t\t       <TELL \"contains a \" D ,NEW-BATTERY>)\n\t\t      (T\n\t\t       <TELL \"is empty\">)>\n\t\t<TELL \".\" CR>)\n\t       (<VERB? OPEN CLOSE>\n\t\t<TELL\n\"There doesn't seem to be any way to do that to this laser.\" CR>)\n\t       (<VERB? PUT>\n\t\t<COND (<EQUAL? ,PRSO ,OLD-BATTERY>\n\t\t       <COND (<IN? ,NEW-BATTERY ,LASER>\n\t\t\t      <ALREADY-BATTERY>)\n\t\t\t     (T\n\t\t\t      <MOVE ,OLD-BATTERY ,LASER>\n\t\t\t      <BATTERY-NOW>)>)\n\t\t      (<EQUAL? ,PRSO ,NEW-BATTERY>\n\t\t       <COND (<IN? ,OLD-BATTERY ,LASER>\n\t\t\t      <ALREADY-BATTERY>)\n\t\t\t     (T\n\t\t\t      <MOVE ,NEW-BATTERY ,LASER>\n\t\t\t      <BATTERY-NOW>)>)\n\t\t      (<NOT <EQUAL? ,LASER ,PRSO>>\n\t\t       <TELL\n\"The \" D ,PRSO \" doesn't fit the depression.\" CR>)>)\n\t       (<VERB? ZAP>\n\t\t<COND (<NOT <IN? ,LASER ,ADVENTURER>>\n\t\t       <NOT-HOLDING>\n\t\t       <RTRUE>)>\n\t\t<COND (<NOT ,LASER-SCORE-FLAG>\n\t\t       <SETG LASER-SCORE-FLAG T>\n\t\t       <SETG SCORE <+ ,SCORE 2>>)>\n\t\t<COND (<OR <EQUAL? ,PRSI ,LASER>\n\t\t\t\t  <EQUAL? ,PRSI ,LASER-DIAL>\n\t\t\t\t  <AND <EQUAL? ,PRSI ,OLD-BATTERY>\n\t\t\t\t       <IN? ,OLD-BATTERY ,LASER>>\n\t\t\t\t  <AND <EQUAL? ,PRSI ,NEW-BATTERY>\n\t\t\t\t       <IN? ,NEW-BATTERY ,LASER>>>\n\t\t\t      <TELL\n\"Sorry, the laser doesn't have a rubber barrel.\" CR>)\n\t\t      (<ZAP-COUNT>\n\t\t       <TELL \"Click.\" CR>)\n\t\t      (<FSET? ,LASER ,MUNGEDBIT>\n\t\t       <TELL\n\"The laser sparks a few times, whines, and then stops.\" CR>)\n\t\t      (T\n\t\t       <ENABLE <QUEUE I-WARMTH -1>>\n\t\t       <SETG LASER-JUST-SHOT T>\n\t\t       <COND (<EQUAL? ,PRSI ,SPECK>\n\t\t\t      <SHOOT-SPECK>\n\t\t\t      <RTRUE>)\n\t\t\t     (<EQUAL? ,PRSI ,MICROBE>\n\t\t\t      <SHOOT-MICROBE>\n\t\t\t      <RTRUE>)\n\t\t\t     (<EQUAL? ,PRSI ,ME ,HANDS ,ADVENTURER>\n\t\t\t      <TELL\n\"Ouch! You managed to burn yourself nicely.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL \"The laser emits a narrow \">\n\t\t\t      <BEAM-COLOR>\n\t\t\t      <TELL \" beam of light\">\n\t\t\t      <COND (,PRSI\n\t\t\t\t     <COND (<OR <EQUAL? ,PRSI\n                                                        ,TOWEL\n\t\t\t\t\t\t        ,BROCHURE\n\t\t\t\t\t\t        ,COMBINATION-PAPER>\n\t\t\t\t\t\t<EQUAL? ,PRSI\n\t\t\t\t\t\t\t,PRINT-OUT\n\t\t\t\t\t\t\t,LAB-UNIFORM\n\t\t\t\t\t\t\t,PATROL-UNIFORM>\n\t\t\t\t\t\t<EQUAL? ,PRSI\n\t\t\t\t\t\t\t,ID-CARD\n\t\t\t\t\t\t\t,KITCHEN-CARD\n\t\t\t\t\t\t\t,MINI-CARD>\n\t\t\t\t\t\t<EQUAL? ,PRSI\n\t\t\t\t\t\t\t,TELEPORTATION-CARD\n\t\t\t\t\t\t\t,SHUTTLE-CARD\n\t\t\t\t\t\t\t,UPPER-ELEVATOR-CARD>\n\t\t\t\t\t\t<EQUAL? ,PRSI\n\t\t\t\t\t\t\t,LOWER-ELEVATOR-CARD>>\n\t\t\t\t\t    <REMOVE ,PRSI>\n\t\t\t\t\t    <COND (<EQUAL? ,PRSI\n\t\t\t\t\t\t\t   ,SPOUT-PLACED>\n\t\t\t\t\t\t   <SETG SPOUT-PLACED\n\t\t\t\t\t\t\t ,GROUND>)>\n\t\t\t\t\t    <TELL\n\" which strikes the \" D ,PRSI \". The \" D ,PRSI \" bursts into flame,\nblinding you momentarily, and is quickly consumed.\" CR>)\n\t\t\t\t\t   (<AND <EQUAL? ,PRSI ,FLOYD>\n\t\t\t\t\t\t <FSET? ,FLOYD ,RLANDBIT>>\n\t\t\t\t\t    <TELL\n\" which strikes Floyd. \\\"Yow!\\\" yells Floyd. He jumps to the other end\nof the room and eyes you warily.\" CR>)\n\t\t\t\t\t   (<AND <EQUAL? ,PRSI ,PSEUDO-OBJECT>\n\t\t\t\t\t\t<EQUAL? ,HERE ,PROJCON-OFFICE>>\n\t\t\t\t\t    <TELL\n\" which strikes the \" D ,PRSI \". However, this doesn't seem to affect it.\" CR>)\n\t\t\t\t\t   (T\n\t\t\t\t\t    <TELL\n\" which strikes the \" D ,PRSI \". The \" D ,PRSI \" grows a bit warm, but\nnothing else happens.\" CR>)>)\n\t\t\t\t    (T\n\t\t\t\t     <TELL \".\" CR>)>)>)>)\n\t       (<VERB? DROP>\n\t\t<DISABLE <INT I-WARMTH>>\n\t\t<COND (<AND <IN? ,MICROBE ,HERE>\n\t\t\t    <G? ,WARMTH-FLAG 7>>\n\t\t       <REMOVE ,LASER>\n\t\t       <TELL\n\"The microbe rushes to envelop the laser. You hear a faint burp as the\nmonster begins to look around for other morsels...\" CR>)\n\t\t      (T\n\t\t       <RFALSE>)>)>>\n\n<ROUTINE ALREADY-BATTERY ()\n\t <TELL \"There's already a battery there.\" CR>>\n\n<ROUTINE BATTERY-NOW ()\n\t <TELL \"The battery is now resting in the depression, attached\nto the laser.\" CR>>\n\n<GLOBAL WARMTH-FLAG 0>\n\n<GLOBAL LASER-JUST-SHOT <>>\n\n<ROUTINE I-WARMTH ()\n\t <COND (,LASER-JUST-SHOT\n\t\t<SETG LASER-JUST-SHOT <>>\n\t\t<SETG WARMTH-FLAG <+ ,WARMTH-FLAG 1>>\n\t\t<COND (<EQUAL? ,WARMTH-FLAG 3>\n\t\t       <LASER-FEELS \"slightly warm now\">)\n\t\t      (<EQUAL? ,WARMTH-FLAG 6>\n\t\t       <LASER-FEELS \"somewhat warm now\">)\n\t\t      (<EQUAL? ,WARMTH-FLAG 9>\n\t\t       <LASER-FEELS \"very warm now\">)\n\t\t      (<EQUAL? ,WARMTH-FLAG 12>\n\t\t       <LASER-FEELS \"quite hot\">)>)\n\t       (T\n\t\t<COND (<EQUAL? ,WARMTH-FLAG 0>\n\t\t       <DISABLE <INT I-WARMTH>>)\n\t\t      (T\n\t\t       <SETG WARMTH-FLAG <- ,WARMTH-FLAG 1>>\n\t\t       <COND (<EQUAL? ,WARMTH-FLAG 12>\n\t\t\t      <LASER-COOLS \"quite hot\">)\n\t\t\t     (<EQUAL? ,WARMTH-FLAG 9>\n\t\t\t      <LASER-COOLS \"very warm\">)\n\t\t\t     (<EQUAL? ,WARMTH-FLAG 6>\n\t\t\t      <LASER-COOLS \"somewhat warm\">)\n\t\t\t     (<EQUAL? ,WARMTH-FLAG 3>\n\t\t\t      <LASER-COOLS \"slightly warm\">)>)>)>>\n\n<ROUTINE LASER-FEELS (STRING)\n\t <TELL CR\n\"The laser feels \" .STRING\n\", but that doesn't seem to affect its performance at all.\" CR>>\n\n<ROUTINE LASER-COOLS (STRING)\n\t <TELL CR\n\"The laser has cooled, but it still feels \" .STRING \".\" CR>>\n\n<GLOBAL LASER-SCORE-FLAG <>>\n\n<GLOBAL MARKSMANSHIP-COUNTER 0>\n\n<ROUTINE BEAM-COLOR ()\n\t <COND (<EQUAL? ,LASER-SETTING 1>\n\t        <TELL \"red\">)\n               (<EQUAL? ,LASER-SETTING 2>\n\t        <TELL \"orange\">)\n\t       (<EQUAL? ,LASER-SETTING 3>\n\t\t<TELL \"yellow\">)\n\t       (<EQUAL? ,LASER-SETTING 4>\n\t        <TELL \"green\">)\n\t       (<EQUAL? ,LASER-SETTING 5>\n\t\t<TELL \"blue\">)\n\t       (<EQUAL? ,LASER-SETTING 6>\n\t\t<TELL \"violet\">)>>\n\n<ROUTINE SHOOT-SPECK ()\n\t<COND (<EQUAL? ,LASER-SETTING 1>\n\t       <COND (<PROB ,MARKSMANSHIP-COUNTER>\n\t\t      <COND (,SPECK-HIT\n\t\t\t     <SETG COMPUTER-FIXED T>\n\t\t\t     <FSET ,CRYO-ELEVATOR-DOOR ,OPENBIT>\n\t\t\t     <FCLEAR ,PROJCON-OFFICE ,TOUCHBIT>\n\t\t\t     <FCLEAR ,CRYO-ELEVATOR-DOOR ,INVISIBLE>\n\t\t\t     <ENABLE <QUEUE I-FRY 200>>\n\t\t\t     <SETG SCORE <+ ,SCORE 8>>\n\t\t\t     <REMOVE ,SPECK>\n\t\t\t     <TELL\n\"The beam hits the speck again! This time, it vaporizes into a fine cloud\nof ash. The relay slowly begins to close, and a voice whispers in your ear\n\\\"Sector 384 will activate in 200 millichrons. Proceed to exit station.\\\"\" CR>)\n\t\t\t    (T\n\t\t\t     <SETG SPECK-HIT T>\n\t\t\t     <TELL\n\"The speck is hit by the beam! It sizzles a little,\nbut isn't destroyed yet.\" CR>)>)\n\t\t     (T\n\t\t      <SETG MARKSMANSHIP-COUNTER <+ ,MARKSMANSHIP-COUNTER 12>>\n\t\t      <TELL <PICK-ONE ,BEAM-MISSES> CR>)>)\n\t      (T\n\t       <REMOVE ,RELAY>\n\t       <TELL \"A thin \">\n\t       <BEAM-COLOR>\n\t       <TELL\n\" beam shoots from the laser and slices through the red plastic covering of\nthe relay like a hot knife through butter. Air rushes into the relay, which\ncollapses into a heap of plastic shards.\" CR>)>>\n\n<GLOBAL BEAM-MISSES\n\t<PLTABLE\n\t \"The beam just misses the speck!\"\n\t \"A near miss!\"\n\t \"A good shot, but just a little wide of the target.\">>\n\n<ROUTINE I-FRY ()\n\t <COND (<EQUAL? ,HERE ,MIDDLE-OF-STRIP\n\t\t\t      ,STRIP-NEAR-STATION\n\t\t\t      ,STRIP-NEAR-RELAY>\n\t\t<CRLF>\n\t\t<JIGS-UP\n\"|\nWith a furious storm of electrical mayhem, Sector 384 comes to life. A\nfew micro-volts course through the silicon strip on which you stand.\nUnfortunately, at your current size, this is enough to barbecue you.\">)>>\n\n\f\n\n;\"The microbe battle\"\n\n<OBJECT MICROBE\n\t(DESC \"microbe\")\n\t(LDESC \n\"A hungry microbe blocks your way, its cilia waving and its pseudopods\ntowering over you.\")\n\t(SYNONYM MICROBE BUG MONSTER)\n\t(ADJECTIVE HUNGRY)\n\t(FLAGS ACTORBIT)\n\t(ACTION MICROBE-F)>\n\n<ROUTINE MICROBE-F ()\n\t <COND (<OR <VERB? HELLO TALK>\n\t\t    <EQUAL? ,MICROBE ,WINNER>>\n\t\t<TELL\n\"You don't seem to have bridged the vast communication gulf\nbetween yourself and the microbe.\" CR>\n\t\t<SETG P-CONT <>>\n\t\t<SETG QUOTE-FLAG <>>\n\t\t<RFATAL>)\n\t       (<AND <VERB? THROW GIVE>\n\t\t     <EQUAL? ,PRSI ,MICROBE>>\n\t\t<COND (<AND <EQUAL? ,PRSO ,LASER>\n\t\t\t    <G? ,WARMTH-FLAG 7>>\n\t\t       <REMOVE ,LASER>\n\t\t       <DISABLE <INT I-WARMTH>>\n\t\t       <COND (<G? ,WARMTH-FLAG 10>\n\t\t\t      <DISABLE <INT I-MICROBE>>\n\t\t\t      <TELL\n\"The microbe gobbles up the laser and turns toward you. A moment later,\nit begins writhing in pain. Apparently, eating the hot laser was a bit\ntoo much for it. With a bellow of agony, it rolls off the edge of\nthe strip. (Whew!)\" CR>\n\t\t             <REMOVE ,LASER>\n\t\t             <REMOVE ,MICROBE>\n\t\t             <SETG NO-MICROBE T>\n\t\t\t     <SETG MICROBE-DISPATCHED T>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"The microbe greedily devours the laser, and turns toward you.\" CR>)>)\n\t\t      (T\n\t\t       <TELL\n\"The microbe ignores the \" D ,PRSO \", but does attempt to digest\nyour arm.\" CR>)>)>>\n\n<ROUTINE I-MICROBE ()\n\t <COND (<EQUAL? ,MICROBE-HIT T>\n\t        <TELL CR <PICK-ONE ,WINNER-ATTACKED>>\n\t        <COND (<AND <G? ,WARMTH-FLAG 13>\n\t\t\t    <IN? ,LASER ,ADVENTURER>>\n\t\t       <JIGS-UP\n\" The microbe, whipped into a rabid frenzy by the waves of heat from the\npulsing laser, literally lunges at it. You jump back and, losing your\nbalance, fall over the edge of the strip. The microbe, writhing madly, hurls\nitself after its prey. You and the microbe both plunge into the void below.\">)\n\t\t      (<AND <G? ,WARMTH-FLAG 7>\n\t\t\t    <IN? ,LASER ,ADVENTURER>>\n\t\t       <TELL \n\" Another pseudopod, perhaps attracted by the warmth of the laser, tries to\nenvelop the weapon. You snatch it away from the monster's grasp.\">)>\n\t\t<CRLF>)\n\t       (T\n\t\t<COND (<EQUAL? ,MICROBE-COUNTER 2>\n\t\t       <JIGS-UP\n\"|\nThe microbe wraps several pseudopods around you and shoves you into its\nmucus-covered gullet. Digestive juices begin their work. The experience\nis not pleasant.\">)\n\t\t      (T\n\t\t       <SETG MICROBE-COUNTER <+ ,MICROBE-COUNTER 1>>\n\t\t       <TELL CR <PICK-ONE ,MONSTER-CLOSES> CR>)>)>\n\t <SETG MICROBE-HIT <>>>\n\n<GLOBAL WINNER-ATTACKED\n\t<PLTABLE\n\t \"A pseudopod extends toward you. You jump back just in time\nto avoid being engulfed.\"\n\t \"A slimy pseudopod brushes against your shoulder. You twist\naway in the nick of time.\"\n\t \"A pseudopod shoots out toward your head! Ducking quickly,\nyou save your life.\"\n         \"Two protoplasm-filled blobs sneak toward you from the left.\nYou jump to the side and almost fall off the strip into the void below!\">>\n\n<GLOBAL MONSTER-CLOSES\n\t<PLTABLE\n\t \"The microbe slithers closer. The cilia around its gullet glisten\nwith mucus, giving the impression that the microbe is salivating.\"\n         \"The microbe flows toward you. It towers above you, its cilia\nwaving madly in your face.\"\n\t \"The monster wriggles nearer. It is now so close that you can make\nout details in the protoplasm beneath its translucent skin.\">>\n\n<GLOBAL MICROBE-HIT <>>\n\n<GLOBAL MICROBE-COUNTER 0>\n\n<ROUTINE SHOOT-MICROBE ()\n\t <TELL \"The laser beam strikes the microbe\">\n\t <COND (<EQUAL? ,LASER-SETTING 1>\n\t\t<TELL \", but passes harmlessly through its red skin.\" CR>)\n\t       (T\n\t\t<SETG MICROBE-HIT T>\n\t\t<TELL \". \">\n\t\t<TELL <PICK-ONE ,MICROBE-STRIKES> CR>)>>\n\n<GLOBAL MICROBE-STRIKES\n\t<PLTABLE\n\t \"The microbe's outer membrane sizzles a bit, and some protoplasm\noozes out. The microbe recoils momentarily, but quickly recovers.\"\n\t \"The beam slices through the microbe's skin! A tremendous shudder\npasses through the microbe, but the wound quickly seals itself.\"\n         \"The monster rears back for a moment, but almost as soon as the\nbeam goes off, it advances again.\">> \n\n<OBJECT STRIP\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"silicon strip\")\n\t(SYNONYM STRIP SIDE EDGE)\n\t(ADJECTIVE SILICON)\n\t(FLAGS NDESCBIT)\n\t(ACTION STRIP-F)>\n\n<ROUTINE STRIP-F ()\n\t <COND (<VERB? THROW-OFF>\n\t\t<COND (<AND <EQUAL? ,PRSO ,LASER>\n\t\t\t    <G? ,WARMTH-FLAG 7>>\n\t\t       <DISABLE <INT I-WARMTH>>\n\t\t       <DISABLE <INT I-MICROBE>>\n\t\t       <TELL\n\"As the laser flies over the edge of the strip, the hungry microbe lunges after\nit. Both the laser and the microbe plummet into the void. (Whew!)\" CR>\n\t\t       <REMOVE ,LASER>\n\t\t       <REMOVE ,MICROBE>\n\t\t       <SETG NO-MICROBE T>\n\t\t       <SETG MICROBE-DISPATCHED T>)\n\t\t      (T\n\t\t       <COND (<EQUAL? ,PRSO ,LASER>\n\t\t\t      <DISABLE <INT I-WARMTH>>)>\n\t\t       <REMOVE ,PRSO>\n\t\t       <TELL\n\"The \" D ,PRSO \" flies over the edge of the strip and disappears into the\nvoid.\" CR>)>)>>\n\n\f\n\n;\"Endgame -- The mutant chase scene\"\n\n<OBJECT RAT-ANT\n\t(IN BIO-LAB)\n\t(DESC \"rat-like, ant-like man-sized monster\")\n\t(LDESC \"A ferocious feral creature, with a hairy shelled body and\na whip-like tail snaps its enormous mandibles at you.\")\n\t(SYNONYM MONSTER MUTANT RAT-ANT)\n\t(ADJECTIVE RAT-LIKE ANT-LIKE MAN-SIZED)\n\t(FLAGS ACTORBIT)>\n\n<OBJECT TROLL\n\t(IN BIO-LAB)\n\t(DESC \"hairy growling biped\")\n\t(LDESC \"Rushing toward you is an ugly, deformed humanoid, bellowing\nin a guttural tongue. It brandishes a piece of lab equipment shaped\nsomewhat like a battle axe.\")\n\t(SYNONYM TROLL BIPED MUTANT MONSTER)\n\t(ADJECTIVE HAIRY GROWLING UGLY DEFORMED)\n\t(FLAGS ACTORBIT)>\n\n<OBJECT GRUE\n\t(IN BIO-LAB)\n\t(DESC \"lurking fanged creature\")\n\t(LDESC \"Lurking nearby is a vicious-looking creature with slavering\nfangs. Squinting in the light, it eyes you hungrily.\")\n\t(SYNONYM GRUE CREATURE MUTANT MONSTER)\n\t(ADJECTIVE LURKING SINISTER FANGED VICIOUS HUNGRY SILENT)\n\t(FLAGS ACTORBIT)\n\t(ACTION GRUE-F)>\n\n<ROUTINE GRUE-F ()\n\t <COND (<AND <VERB? EXAMINE>\n\t\t     <NOT <IN? ,GRUE ,HERE>>>\n\t\t<TELL\n\"Grues are vicious, carnivorous beasts first introduced to Earth by a\nvisiting alien spaceship during the late 22nd century. Grues spread throughout\nthe galaxy alongside man. Although now extinct on all civilized planets,\nthey still exist in some backwater corners of the galaxy. Their favorite diet\nis Ensigns Seventh Class, but their insatiable appetite is tempered by their\nfear of light.\" CR>)>>\n\n<OBJECT TRIFFID\n\t(IN BIO-LAB)\n\t(DESC \"mobile man-eating plant\")\n\t(LDESC \"A giant plant, teeming with poisonous tentacles, is shuffling\ntoward you on three leg-like stalks.\")\n\t(SYNONYM TRIFFID PLANT MUTANT MONSTER)\n\t(ADJECTIVE MOBILE MAN-EATING GIANT)\n\t(FLAGS ACTORBIL M"
  },
  {
    "path": "globals.zabstr",
    "content": "\n<CONSTANT DEFAULT-MOVE 20> \n<DIRECTIONS NORTH NE EAST SE SOUTH SW WEST NW UP DOWN IN OUT> \n<GLOBAL LOAD-ALLOWED 100 %<> WORD> \n<OBJECT GLOBAL-OBJECTS (FLAGS INVISIBLE TOUCHBIT SURFACEBIT TRYTAKEBIT MUNGBIT\nMUNGEDBIT SCRAMBLEDBIT WORNBIT OPENBIT SEARCHBIT TRANSBIT WEARBIT)> \n<OBJECT LOCAL-GLOBALS (IN GLOBAL-OBJECTS) (SYNONYM ZZMGCK) (VALUE 0) (CONTFCN 0\n) (DESCFCN 0) (SIZE 0)> \n<OBJECT ROOMS> \n<OBJECT INTNUM (IN GLOBAL-OBJECTS) (SYNONYM INTNUM) (DESC \"number\")> \n<OBJECT PSEUDO-OBJECT (DESC \"pseudo\") (ACTION GO)> \n<OBJECT IT (IN GLOBAL-OBJECTS) (SYNONYM IT THAT THIS HIM) (DESC \"random object\"\n) (FLAGS NDESCBIT)> \n<OBJECT STAIRS (IN LOCAL-GLOBALS) (SYNONYM STAIRS STEPS GANGWAY STAIRWAY) (DESC\n\"stairway\") (FLAGS NDESCBIT CLIMBBIT)> \n<OBJECT GROUND (IN GLOBAL-OBJECTS) (SYNONYM GROUND EARTH FLOOR DECK) (DESC\n\"floor\") (FLAGS NDESCBIT) (ACTION GROUND-F)> \n<DEFINE-ROUTINE GROUND-F> \n<OBJECT WINDOW (IN LOCAL-GLOBALS) (DESC \"window\") (SYNONYM WINDOW PORT VIEWPORT\n) (ADJECTIVE VIEW) (FLAGS NDESCBIT) (ACTION WINDOW-F)> \n<DEFINE-ROUTINE WINDOW-F> \n<OBJECT CLIFF (IN LOCAL-GLOBALS) (DESC \"cliff\") (SYNONYM CLIFF) (FLAGS NDESCBIT\n) (ACTION CLIFF-F)> \n<DEFINE-ROUTINE CLIFF-F> \n<OBJECT OCEAN (IN LOCAL-GLOBALS) (DESC \"ocean\") (SYNONYM OCEAN) (ADJECTIVE\nENDLESS) (FLAGS VOWELBIT NDESCBIT) (ACTION OCEAN-F)> \n<DEFINE-ROUTINE OCEAN-F> \n<OBJECT TABLES (IN LOCAL-GLOBALS) (DESC \"table\") (SYNONYM TABLE TABLES) (FLAGS\nNDESCBIT) (ADJECTIVE ROUND CONFERENCE SMALL WIDE LONG) (ACTION TABLES-F)> \n<DEFINE-ROUTINE TABLES-F> \n<OBJECT SHELVES (IN LOCAL-GLOBALS) (SYNONYM SHELF SHELVES) (DESC \"shelf\") (\nFLAGS NDESCBIT) (ACTION SHELVES-F)> \n<DEFINE-ROUTINE SHELVES-F> \n<OBJECT LIGHTS (IN LOCAL-GLOBALS) (SYNONYM LIGHT LIGHTS) (ADJECTIVE RED DAZZLI\nGLOWIN BLINKI WARNIN BRIGHT COLORE FLASHI) (DESC \"light\") (FLAGS NDESCBIT) (\nACTION LIGHTS-F)> \n<DEFINE-ROUTINE LIGHTS-F> \n<OBJECT GLOBAL-DOORWAY (IN GLOBAL-OBJECTS) (SYNONYM DOORWA PORTAL OPENIN) (\nADJECTIVE NORTH SOUTH EAST WEST NE SE NW SW) (DESC \"doorway\") (FLAGS NDESCBIT)\n(ACTION GLOBAL-DOORWAY-F)> \n<DEFINE-ROUTINE GLOBAL-DOORWAY-F> \n<DEFINE-ROUTINE USE-DIRECTIONS> \n<DEFINE-ROUTINE NO-CLOSE> \n<OBJECT CONTROLS (IN LOCAL-GLOBALS) (SYNONYM CONTRO PANEL DIALS GAUGES) (\nADJECTIVE CONTRO COMPLEX) (DESC \"set of controls\") (FLAGS NDESCBIT) (ACTION\nCONTROLS-F)> \n<DEFINE-ROUTINE CONTROLS-F> \n<OBJECT GLOBAL-GAMES (IN GLOBAL-OBJECTS) (DESC \"game\") (SYNONYM BOCCI CHESS\nHIDER- HUCKA-) (FLAGS NDESCBIT) (ACTION GLOBAL-GAMES-F)> \n<DEFINE-ROUTINE GLOBAL-GAMES-F> \n<OBJECT HANDS (IN GLOBAL-OBJECTS) (SYNONYM PAIR HANDS) (ADJECTIVE BARE) (DESC\n\"pair of hands\") (FLAGS NDESCBIT) (ACTION HANDS-F)> \n<DEFINE-ROUTINE HANDS-F> \n<OBJECT SLEEP (IN GLOBAL-OBJECTS) (DESC \"sacred act of sleeping\") (SYNONYM\nSLEEP) (FLAGS NDESCBIT) (ACTION SLEEP-F)> \n<DEFINE-ROUTINE SLEEP-F> \n<OBJECT ADVENTURER (IN DECK-NINE) (SYNONYM ADMIRA SMITHE SPAM EGGS) (ADJECTIVE\nORANGE OPENER) (DESC \"player\") (FLAGS NDESCBIT INVISIBLE)> \n<OBJECT ME (IN GLOBAL-OBJECTS) (SYNONYM ME MYSELF SELF WE) (DESC \"you\") (FLAGS\nACTORBIT) (ACTION CRETIN-F)> \n<DEFINE-ROUTINE CRETIN-F> \n<DEFINE-ROUTINE DDESC> \n<DEFINE-ROUTINE ALREADY-OPEN> \n<DEFINE-ROUTINE IS-CLOSED> \n<DEFINE-ROUTINE V-THROUGH> \n<DEFINE-ROUTINE FIND-IN> \n<OBJECT NOT-HERE-OBJECT (DESC \"such thing\") (ACTION NOT-HERE-OBJECT-F)> \n<DEFINE-ROUTINE NOT-HERE-OBJECT-F> \n<DEFINE-ROUTINE FIND-NOT-HERE> \n<DEFINE-ROUTINE NOT-HERE-PRINT> \n<ROOM BRIG (IN ROOMS) (DESC \"Brig\") (LDESC\n\"You are in the Feinstein's brig. Graffiti cover\nthe walls. The cell door to the south is locked.\") (C-MOVE <TABLE 0 0 0 0 0 0 0\n0 0 0 0 0>) (SOUTH \"The cell door is locked.\") (FLAGS RLANDBIT ONBIT) (PSEUDO\n\"GRAFFITI\" GRAFFITI-PSEUDO \"DOOR\" DOOR-PSEUDO)> \n<ROOM DECK-NINE (IN ROOMS) (DESC \"Deck Nine\") (C-MOVE <TABLE 0 0 0 0 0 15 0 0 0\n15 0 0>) (EAST TO REACTOR-LOBBY IF CORRIDOR-DOOR IS OPEN) (WEST TO ESCAPE-POD\nIF POD-DOOR IS OPEN) (IN TO ESCAPE-POD IF POD-DOOR IS OPEN) (UP TO GANGWAY IF\nGANGWAY-DOOR IS OPEN) (FLAGS RLANDBIT ONBIT) (GLOBAL POD-DOOR CORRIDOR-DOOR\nGANGWAY-DOOR STAIRS GLOBAL-POD) (PSEUDO \"TRANSL\" TRANSLATOR-PSEUDO \"SLIME\"\nSLIME-PSEUDO) (ACTION DECK-NINE-F)> \n<DEFINE-ROUTINE DECK-NINE-F> \n<OBJECT SCRUB-BRUSH (IN ADVENTURER) (DESC\n\"Patrol-issue self-contained multi-purpose scrub brush\") (SYNONYM BRUSH SCRUBB\nSCRUBR) (ADJECTIVE SCRUB PATROL SELF-CONTAINED MULTI) (FLAGS TAKEBIT) (SIZE 10)\n> \n<OBJECT CHRONOMETER (IN ADVENTURER) (DESC \"chronometer\") (SYNONYM CHRONOMETER\nWRISTWATCH WATCH) (ADJECTIVE WRIST) (SIZE 10) (FLAGS MUNGBIT TAKEBIT WEARBIT\nWORNBIT) (ACTION CHRONOMETER-F)> \n<DEFINE-ROUTINE CHRONOMETER-F> \n<DEFINE-ROUTINE TELL-TIME> \n<GLOBAL MUNGED-TIME 0 %<> WORD> \n<OBJECT ID-CARD (IN PATROL-UNIFORM) (DESC \"ID card\") (SYNONYM CARD CARDS) (\nADJECTIVE PATROL ID IDENTIFICATION) (FLAGS VOWELBIT TAKEBIT READBIT) (SIZE 3) (\nTEXT \"\\\"STELLAR PATROL|\nSpecial Assignment Task Force|\nID Number:  6172-531-541\\\"\")> \n<OBJECT PATROL-UNIFORM (IN ADVENTURER) (DESC \"Patrol uniform\") (LDESC\n\"A slightly wrinkled Patrol uniform is lying here.\") (SYNONYM UNIFORM POCKET\nSUIT) (ADJECTIVE PATROL WRINKLED) (FLAGS TAKEBIT WORNBIT WEARBIT CONTBIT\nSEARCHBIT OPENBIT) (CAPACITY 10) (ACTION PATROL-UNIFORM-F)> \n<DEFINE-ROUTINE PATROL-UNIFORM-F> \n<ROOM REACTOR-LOBBY (IN ROOMS) (DESC \"Reactor Lobby\") (LDESC\n\"The corridor widens here as it nears the main drive area. To starboard is\nthe Ion Reactor that powers the vessel, and aft of here is the Auxiliary\nControl Room. The corridor continues to port.\") (C-MOVE <TABLE 0 0 0 0 0 15 0 0\n0 0 0 0>) (WEST TO DECK-NINE IF CORRIDOR-DOOR IS OPEN) (SOUTH\n\"Ensign Blather pushes you roughly back toward your post.\") (EAST\n\"Ensign Blather blocks your way, snarling angrily.\") (FLAGS RLANDBIT ONBIT) (\nGLOBAL CORRIDOR-DOOR)> \n<ROOM GANGWAY (IN ROOMS) (DESC \"Gangway\") (LDESC\n\"This is a steep metal gangway connecting Deck Eight, above, and Deck\nNine, below.\") (C-MOVE <TABLE 0 0 10 0 0 0 0 0 0 0 0 0>) (UP TO DECK-EIGHT) (\nDOWN TO DECK-NINE IF GANGWAY-DOOR IS OPEN) (FLAGS RLANDBIT ONBIT) (GLOBAL\nGANGWAY-DOOR STAIRS) (ACTION GANGWAY-F)> \n<DEFINE-ROUTINE GANGWAY-F> \n<ROOM DECK-EIGHT (IN ROOMS) (DESC \"Deck Eight\") (LDESC\n\"This is a featureless corridor leading port and starboard. A gangway leads\ndown, and to fore is the Hyperspatial Jump Machinery Room.\") (C-MOVE <TABLE 0 0\n10 0 0 0 0 0 0 0 0 0>) (DOWN TO GANGWAY) (EAST\n\"Blather throws you to the deck and makes you do 20 push-ups.\") (WEST\n\"Blather throws you to the deck and makes you do 20 push-ups.\") (NORTH\n\"Blather blocks your path, growling about extra galley duty.\") (FLAGS RLANDBIT\nONBIT) (GLOBAL STAIRS)> \n<GLOBAL BLATHER-LEAVE 0 %<> WORD> \n<GLOBAL BRIGS-UP 0 %<> WORD> \n<DEFINE-ROUTINE I-BLATHER> \n<OBJECT BLATHER (DESC \"Ensign First Class\") (LDESC\n\"Ensign First Class Blather is standing before you, furiously scribbling\ndemerits onto an oversized clipboard.\") (SYNONYM ENSIGN BLATHER) (ADJECTIVE\nENSIGN FIRST CLASS) (SIZE 150) (FLAGS VOWELBIT ACTORBIT) (ACTION BLATHER-F)> \n<DEFINE-ROUTINE BLATHER-F> \n<OBJECT AMBASSADOR (DESC \"alien ambassador\") (LDESC\n\"A high-ranking ambassador from a newly-contacted alien race is standing\nhere on three of his legs, and watching you with seven of his eyes.\") (SYNONYM\nAMBASSADOR) (ADJECTIVE VERY IMPORTANT ALIEN HIGH-RANKING HIGH RANKING) (SIZE\n150) (FLAGS VOWELBIT ACTORBIT) (ACTION AMBASSADOR-F)> \n<OBJECT CELERY (DESC \"piece of celery\") (SYNONYM CELERY PIECE STALK) (FLAGS\nNDESCBIT FOODBIT) (ACTION CELERY-F)> \n<DEFINE-ROUTINE CELERY-F> \n<GLOBAL AMBASSADOR-LEAVE 0 %<> WORD> \n<DEFINE-ROUTINE I-AMBASSADOR> \n<OBJECT BROCHURE (DESC \"brochure\") (LDESC\n\"Unfortunately, one of those stupid Blow'k-bibben-Gordo brochures is here.\") (\nSYNONYM BROCHURE PAMPHLET LEAFLET) (FLAGS ACIDBIT TAKEBIT READBIT) (SIZE 4) (\nTEXT \"\\\"The leading export of Blow'k-bibben-Gordo is the adventure game|\n|\n          *** PLANETFALL ***|\n|\nwritten by S. Eric Meretzky.|\nBuy one today. Better yet, buy a thousand.\\\"\")> \n<GLOBAL AMBASSADOR-QUOTES <PLTABLE\n\"introduces himself as Br'gun-te'elkner-ipg'nun.\"\n\"asks if you are performing some sort of religious ceremony.\"\n\"inquires whether you are interested in a game of Bocci.\"\n\"recites a plea for coexistence between your races.\"\n\"asks where Admiral Smithers can be found.\"\n\"remarks that all humans look alike to him.\" \"offers you a bit of celery.\"> %<>\nWORD> \n<DEFINE-ROUTINE AMBASSADOR-F> \n<ROOM ESCAPE-POD (IN ROOMS) (DESC \"Escape Pod\") (C-MOVE <TABLE 0 0 0 0 0 0 0 0\n0 0 0 0>) (EAST PER POD-EXIT-F) (OUT PER POD-EXIT-F) (UP PER POD-EXIT-F) (FLAGS\nRLANDBIT ONBIT) (VALUE 3) (GLOBAL POD-DOOR CONTROLS LIGHTS GLOBAL-POD WINDOW) (\nACTION ESCAPE-POD-F)> \n<OBJECT GLOBAL-POD (IN LOCAL-GLOBALS) (DESC \"escape pod\") (SYNONYM POD) (\nADJECTIVE EMERGENCY ESCAPE PRIMARY) (FLAGS VOWELBIT VEHBIT NDESCBIT) (ACTION\nGLOBAL-POD-F)> \n<DEFINE-ROUTINE GLOBAL-POD-F> \n<DEFINE-ROUTINE POD-EXIT-F> \n<OBJECT SAFETY-WEB (IN ESCAPE-POD) (DESC \"safety web\") (SYNONYM MASS WEB\nWEBBING NET) (ADJECTIVE SAFETY) (FLAGS CLIMBBIT VEHBIT NDESCBIT) (ACTION\nSAFETY-WEB-F)> \n<DEFINE-ROUTINE SAFETY-WEB-F> \n<OBJECT TOWEL (DESC \"towel\") (SYNONYM TOWEL) (SIZE 10) (FLAGS READBIT TAKEBIT)\n(TEXT \"\\\"S.P.S. FEINSTEIN|\n  Escape Pod #42|\n   Don't Panic!\\\"\") (ACTION TOWEL-F)> \n<DEFINE-ROUTINE TOWEL-F> \n<OBJECT FOOD-KIT (DESC \"survival kit\") (SYNONYM PROVISIONS KIT) (ADJECTIVE\nSURVIVAL EMERGENCY) (SIZE 10) (CAPACITY 25) (FLAGS TAKEBIT CONTBIT SEARCHBIT) (\nACTION FOOD-KIT-F)> \n<DEFINE-ROUTINE FOOD-KIT-F> \n<OBJECT RED-GOO (IN FOOD-KIT) (DESC \"blob of red goo\") (SYNONYM GOO BLOB FOOD\nPIE) (ADJECTIVE RED CHERRY) (FLAGS ACIDBIT FOODBIT) (ACTION GOO-F)> \n<OBJECT BROWN-GOO (IN FOOD-KIT) (DESC \"blob of brown goo\") (SYNONYM GOO BLOB\nFOOD STEW) (ADJECTIVE BROWN BEEF) (FLAGS ACIDBIT FOODBIT) (ACTION GOO-F)> \n<OBJECT GREEN-GOO (IN FOOD-KIT) (DESC \"blob of green goo\") (SYNONYM GOO BLOB\nFOOD BEANS) (ADJECTIVE GREEN LIMA) (FLAGS ACIDBIT FOODBIT) (ACTION GOO-F)> \n<DEFINE-ROUTINE GOO-F> \n<DEFINE-ROUTINE ESCAPE-POD-F> \n<OBJECT POD-DOOR (IN LOCAL-GLOBALS) (DESC \"escape pod bulkhead\") (SYNONYM DOOR\nBULKHEAD) (ADJECTIVE EMERGENCY ESCAPE POD) (FLAGS VOWELBIT DOORBIT NDESCBIT) (\nACTION POD-DOOR-F)> \n<DEFINE-ROUTINE POD-DOOR-F> \n<OBJECT CORRIDOR-DOOR (IN LOCAL-GLOBALS) (DESC \"wide bulkhead\") (SYNONYM DOOR\nBULKHEAD) (ADJECTIVE EMERGENCY WIDE) (FLAGS INVISIBLE DOORBIT OPENBIT NDESCBIT)\n(ACTION GANGWAY-DOOR-F)> \n<OBJECT GANGWAY-DOOR (IN LOCAL-GLOBALS) (DESC \"narrow bulkhead\") (SYNONYM DOOR\nBULKHEAD) (ADJECTIVE EMERGENCY NARROW) (FLAGS INVISIBLE DOORBIT OPENBIT\nNDESCBIT) (ACTION GANGWAY-DOOR-F)> \n<DEFINE-ROUTINE GANGWAY-DOOR-F> \n<GLOBAL BLOWUP-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE I-BLOWUP-FEINSTEIN> \n<GLOBAL TRIP-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE I-POD-TRIP> \n<GLOBAL SINK-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE I-SINK-POD> \n<OBJECT SLOT (IN LOCAL-GLOBALS) (DESC \"slot\") (SYNONYM SLOT) (ADJECTIVE SMALL)\n(FLAGS NDESCBIT) (ACTION SLOT-F)> \n<DEFINE-ROUTINE SLOT-F> \n<GLOBAL ELEVATOR-ENABLED \"A recorded voice chimes \\\"Elevator enabled.\\\"\" %<>\nWORD> \n<GLOBAL WRONG-CARD\n\"A sign flashes \\\"Inkorekt awtharazaashun kard...akses deeniid.\\\"\" %<> WORD> \n<GLOBAL CARD-REVEALED <> %<> WORD> \n<DEFINE-ROUTINE FLOYD-REVEAL-CARD-F> \n<DEFINE-ROUTINE I-KITCHEN-DOOR-CLOSES> \n<OBJECT TELEPORTATION-BUTTON-1 (IN LOCAL-GLOBALS) (DESC \"brown button\") (\nSYNONYM BUTTON) (ADJECTIVE BROWN FIRST) (FLAGS NDESCBIT) (ACTION\nTELEPORTATION-BUTTON-1-F)> \n<OBJECT TELEPORTATION-BUTTON-2 (IN LOCAL-GLOBALS) (DESC \"beige button\") (\nSYNONYM BUTTON) (ADJECTIVE BEIGE SECOND) (FLAGS NDESCBIT) (ACTION\nTELEPORTATION-BUTTON-2-F)> \n<OBJECT TELEPORTATION-BUTTON-3 (IN LOCAL-GLOBALS) (DESC \"tan button\") (SYNONYM\nBUTTON) (ADJECTIVE TAN THIRD) (FLAGS NDESCBIT) (ACTION TELEPORTATION-BUTTON-3-F\n)> \n<GLOBAL TELEPORTATION-ON <> %<> WORD> \n<DEFINE-ROUTINE TELEPORT> \n<DEFINE-ROUTINE TELEPORTATION-BUTTON-1-F> \n<DEFINE-ROUTINE TELEPORTATION-BUTTON-2-F> \n<DEFINE-ROUTINE TELEPORTATION-BUTTON-3-F> \n<DEFINE-ROUTINE I-TURNOFF-TELEPORTATION> \n<OBJECT GLOBAL-SHUTTLE (IN LOCAL-GLOBALS) (DESC \"shuttle car\") (SYNONYM CAR\nSHUTTL) (ADJECTIVE SHUTTL) (FLAGS NDESCBIT) (ACTION GLOBAL-SHUTTLE-F)> \n<DEFINE-ROUTINE GLOBAL-SHUTTLE-F> \n<ROOM SHUTTLE-CAR-ALFIE (IN ROOMS) (DESC \"Shuttle Car Alfie\") (C-MOVE <TABLE 0\n0 0 0 0 0 0 0 0 0 0 0>) (NORTH PER SHUTTLE-EXIT-F) (EAST TO ALFIE-CONTROL-EAST)\n(WEST TO ALFIE-CONTROL-WEST) (FLAGS RLANDBIT ONBIT) (GLOBAL GLOBAL-SHUTTLE\nSHUTTLE-DOOR) (ACTION SHUTTLE-CAR-F)> \n<ROOM ALFIE-CONTROL-EAST (IN ROOMS) (DESC \"Alfie Control East\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO SHUTTLE-CAR-ALFIE IF SHUTTLE-DOOR IS OPEN) (\nFLAGS RLANDBIT ONBIT) (GLOBAL SLOT WINDOW LEVER SHUTTLE-DOOR GLOBAL-SHUTTLE) (\nACTION CONTROL-CABIN-F)> \n<ROOM ALFIE-CONTROL-WEST (IN ROOMS) (DESC \"Alfie Control West\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO SHUTTLE-CAR-ALFIE IF SHUTTLE-DOOR IS OPEN) (\nFLAGS RLANDBIT ONBIT) (GLOBAL SLOT LEVER WINDOW SHUTTLE-DOOR GLOBAL-SHUTTLE) (\nACTION CONTROL-CABIN-F)> \n<OBJECT LEVER (IN LOCAL-GLOBALS) (DESC \"lever\") (SYNONYM LEVER) (FLAGS NDESCBIT\n) (ACTION LEVER-F)> \n<OBJECT SHUTTLE-DOOR (IN LOCAL-GLOBALS) (DESC \"door\") (SYNONYM DOOR) (FLAGS\nDOORBIT OPENBIT INVISIBLE) (ACTION SHUTTLE-DOOR-F)> \n<DEFINE-ROUTINE SHUTTLE-CAR-F> \n<ROOM SHUTTLE-CAR-BETTY (IN ROOMS) (DESC \"Shuttle Car Betty\") (C-MOVE <TABLE 0\n0 0 0 0 0 0 0 0 0 0 0>) (SOUTH PER SHUTTLE-EXIT-F) (EAST TO BETTY-CONTROL-EAST)\n(WEST TO BETTY-CONTROL-WEST) (FLAGS RLANDBIT ONBIT) (GLOBAL GLOBAL-SHUTTLE\nSHUTTLE-DOOR) (ACTION SHUTTLE-CAR-F)> \n<ROOM BETTY-CONTROL-EAST (IN ROOMS) (DESC \"Betty Control East\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (WEST TO SHUTTLE-CAR-BETTY IF SHUTTLE-DOOR IS OPEN) (\nFLAGS RLANDBIT ONBIT) (GLOBAL GLOBAL-SHUTTLE SLOT WINDOW LEVER SHUTTLE-DOOR) (\nACTION CONTROL-CABIN-F)> \n<ROOM BETTY-CONTROL-WEST (IN ROOMS) (DESC \"Betty Control West\") (C-MOVE <TABLE\n0 0 0 0 0 0 0 0 0 0 0 0>) (EAST TO SHUTTLE-CAR-BETTY IF SHUTTLE-DOOR IS OPEN) (\nFLAGS RLANDBIT ONBIT) (GLOBAL GLOBAL-SHUTTLE SLOT LEVER WINDOW SHUTTLE-DOOR) (\nACTION CONTROL-CABIN-F)> \n<DEFINE-ROUTINE CONTROL-CABIN-F> \n<DEFINE-ROUTINE DESCRIBE-VIEW> \n<DEFINE-ROUTINE SHUTTLE-DOOR-F> \n<DEFINE-ROUTINE SHUTTLE-ENTER-F> \n<GLOBAL CANT-GO \"You can't go that way.\" %<> WORD> \n<DEFINE-ROUTINE SHUTTLE-EXIT-F> \n<GLOBAL ALFIE-AT-KALAMONTEE T %<> WORD> \n<GLOBAL BETTY-AT-KALAMONTEE <> %<> WORD> \n<GLOBAL SHUTTLE-MOVING <> %<> WORD> \n<GLOBAL SHUTTLE-ON <> %<> WORD> \n<GLOBAL SHUTTLE-VELOCITY 0 %<> WORD> \n<GLOBAL SHUTTLE-COUNTER 0 %<> WORD> \n<DEFINE-ROUTINE SHUTTLE-ACTIVATE> \n<GLOBAL SHUTTLE-RECORDING-1\n\"A recorded voice says \\\"Shuttle controls are already activated.\\\"\" %<> WORD> \n<GLOBAL SHUTTLE-RECORDING-2\n\"A recorded voice says \\\"Use other control cabin. Control activation\noverridden.\\\"\" %<> WORD> \n<GLOBAL SHUTTLE-RECORDING-3\n\"A recording of a deep male voice says \\\"Shuttle controls activated.\\\"\" %<>\nWORD> \n<GLOBAL SHUTTLE-RECORDING-4\n\"A recorded voice says \\\"Shuttle controls are not currently activated.\\\"\" %<>\nWORD> \n<DEFINE-ROUTINE I-TURNOFF-SHUTTLE> \n<GLOBAL LEVER-SETTING 0 %<> WORD> \n<DEFINE-ROUTINE LEVER-F> \n<DEFINE-ROUTINE I-SHUTTLE> \n<DEFINE-ROUTINE DESCRIBE-SHUTTLE-TRIP> \n<GLOBAL ALFIE-BROKEN <> %<> WORD> \n<GLOBAL BETTY-BROKEN <> %<> WORD> \n<DEFINE-ROUTINE DESCRIBE-SHUTTLE-ARRIVE> \n<GLOBAL SIGN-PASS\n\"You pass a sign, surrounded by blinking red lights, which says \" %<> WORD> \n<GLOBAL SLEEPY-LEVEL 0 %<> WORD> \n<DEFINE-ROUTINE I-SLEEP-WARNINGS> \n<OBJECT BED (IN LOCAL-GLOBALS) (DESC \"bed\") (SYNONYM BUNK BED) (ADJECTIVE MULTI\nTIERED BUNK) (FLAGS NDESCBIT CLIMBBIT VEHBIT) (ACTION BED-F)> \n<DEFINE-ROUTINE BED-F> \n<DEFINE-ROUTINE I-FALL-ASLEEP> \n<DEFINE-ROUTINE DREAMING> \n<GLOBAL DREAMS <PLTABLE\n\"...You find yourself on the bridge of the Feinstein. Ensign Blather is here,\nas well as Admiral Smithers. You are diligently scrubbing the control panel.\nBlather keeps yelling at you to scrub harder. Suddenly you hit the ship's\nself-destruct switch! Smithers and Blather howl at you as the ship begins\nexploding! You try to run, but your feet seem to be fused to the deck...\"\n\"...You gulp down the last of your Ramosian Fire Nectar and ask the\nandro-waiter for another pitcher. This pub makes the finest Nectar on\nall of Ramos Two, and you and your shipmates are having a pretty rowdy\ntime. Through the windows of the pub you can see a mighty, ancient castle,\nshining in the light of the three Ramosian moons. The Fire Nectar spreads\nthrough your blood and you begin to feel drowsy...\"\n\"...Strangely, you wake to find yourself back home on Gallium. Even more\nstrangely, you are only eight years old again. You are playing with your\npet sponge-cat, Swanzo, on the edge of the pond in your backyard. Mom is\nhanging orange towels on the clothesline. Suddenly the school bully jumps\nout from behind a bush, grabs you, and pushes your head under the water.\nYou try to scream, but cannot. You feel your life draining away...\"\n\"...Your vision slowly returns. You are on a wooded cliff overlooking\na waterfall. A rainbow spans the falls. Blather stands above you, bellowing\nthat the ground is filthy -- scrub harder! You throw your brush at Blather,\nbut it passes thru him as though he were a ghost, and sails over the cliff.\nBlather leaps after the valuable piece of Patrol property, and both plummet\ninto the void...\"\n\"...At last, the Feinstein has arrived at the historic Nebulon system. It's\nbeen five months since the last shore leave, and you're anxious for\nPlanetfall. You and some other Ensigns Seventh Class enter the shuttle for\nsurfaceside. Suddenly, you're alone on the shuttle, and it's tumbling out of\ncontrol! It lands in the ocean and begins sinking! You try to clamber out,\nbut you are stuck in a giant spider web. A giant spider crawls closer and\ncloser...\"> %<> WORD> \n<DEFINE-ROUTINE WAKING-UP> \n<DEFINE-ROUTINE RESET-TIME> \n<GLOBAL HUNGER-LEVEL 0 %<> WORD> \n<DEFINE-ROUTINE I-HUNGER-WARNINGS> \n<GLOBAL NOT-HUNGRY \"Thanks, but you're not hungry.\" %<> WORD> \n<GLOBAL SICKNESS-LEVEL 0 %<> WORD> \n<GLOBAL SICKNESS-WARNING-FLAG <> %<> WORD> \n<DEFINE-ROUTINE I-SICKNESS-WARNINGS> \n<DEFINE-ROUTINE TRANSLATOR-PSEUDO> \n<DEFINE-ROUTINE SLIME-PSEUDO> \n<DEFINE-ROUTINE LIKE-SLIME> \n<DEFINE-ROUTINE GRAFFITI-PSEUDO> \n<DEFINE-ROUTINE DOOR-PSEUDO> \n<DEFINE-ROUTINE WALKWAY-PSEUDO> \n<DEFINE-ROUTINE BENCH-PSEUDO> \n<DEFINE-ROUTINE CATWALK-PSEUDO> \n<DEFINE-ROUTINE EQUIPMENT-PSEUDO> \n<DEFINE-ROUTINE MONITORS-PSEUDO> \n<DEFINE-ROUTINE MURAL-PSEUDO> \n<DEFINE-ROUTINE LOGO-PSEUDO> \n<DEFINE-ROUTINE KEYBOARD-PSEUDO> \n<DEFINE-ROUTINE CRACK-PSEUDO> \n<DEFINE-ROUTINE VOID-PSEUDO> \n<DEFINE-ROUTINE SPOUT-PSEUDO> \n<DEFINE-ROUTINE TOILET-PSEUDO> \n<DEFINE-ROUTINE GAMES-PSEUDO> \n<DEFINE-ROUTINE TAPES-PSEUDO> \n<DEFINE-ROUTINE PARTITION-PSEUDO> \n<DEFINE-ROUTINE CUBBYHOLE-PSEUDO> \n<DEFINE-ROUTINE MAPS-PSEUDO> \n<DEFINE-ROUTINE DEVICES-PSEUDO> \n<DEFINE-ROUTINE CABLES-PSEUDO> \n<DEFINE-ROUTINE STRUCTURE-PSEUDO> \n<DEFINE-ROUTINE BUTTON-PSEUDO> \n<DEFINE-ROUTINE CARPET-PSEUDO> \n<DEFINE-ROUTINE CABINETS-PSEUDO> \n<DEFINE-ROUTINE PLATE-PSEUDO> \n<DEFINE-ROUTINE ESCALATOR-PSEUDO> \n<DEFINE-ROUTINE REACTOR-BUTTON-PSEUDO> \n<DEFINE-ROUTINE SUPPLIES-PSEUDO> \n<DEFINE-ROUTINE DESK-PSEUDO> \n<DEFINE-ROUTINE CRYO-BUTTON-PSEUDO> \n<DEFINE-ROUTINE CASTLE-PSEUDO> \n<DEFINE-ROUTINE CHEM-SPOUT-PSEUDO> \n<DEFINE-ROUTINE CLEFT-PSEUDO> \n<DEFINE-ROUTINE RUBBLE-PSEUDO> \n<DEFINE-ROUTINE PLAQUE-PSEUDO> \n<DEFINE-ROUTINE FENCE-PSEUDO> \n<DEFINE-ROUTINE LOCK-PSEUDO> \n<DEFINE-ROUTINE DIAGRAM-PSEUDO> \n<DEFINE-ROUTINE ENUNCIATOR-PSEUDO> \n<DEFINE-ROUTINE NEAR-BOOTH-PSEUDO> \n<DEFINE-ROUTINE IN-BOOTH-PSEUDO> "
  },
  {
    "path": "globals.zap",
    "content": "\n\n\t.FUNCT\tGROUND-F\n\tEQUAL?\tPRSA,V?PUT \\?CCL3\n\tEQUAL?\tPRSI,GROUND \\?CCL3\n\tCALL\tPERFORM,V?DROP,PRSO\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?BOARD,V?CLIMB-ON \\?CCL7\n\tSET\t'C-ELAPSED,28\n\tPRINTR\t\"You sit down on the floor. After a brief rest, you stand again.\"\n?CCL7:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tEQUAL?\tHERE,ADMIN-CORRIDOR-S \\FALSE\n\tPRINTR\t\"A narrow, jagged crevice runs across the floor.\"\n\n\n\t.FUNCT\tWINDOW-F\n\tEQUAL?\tPRSA,V?LOOK-INSIDE \\?CCL3\n\tEQUAL?\tHERE,BIO-LOCK-EAST \\?CCL6\n\tPRINTI\t\"You can see a large laboratory, dimly illuminated. A blue glow comes from a crack in the northern wall of the lab. Shadowy, ominous shapes move about within the room.\"\n\tFSET?\tMINI-CARD,TOUCHBIT /?CND7\n\tPRINTR\t\" On the floor, just inside the door, you can see a magnetic-striped card.\"\n?CND7:\tCRLF\t\n\tRTRUE\t\n?CCL6:\tEQUAL?\tHERE,BIO-LAB \\?CCL10\n\tPRINTR\t\"You see the Bio Lock.\"\n?CCL10:\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST /?CTR11\n\tEQUAL?\tHERE,BETTY-CONTROL-EAST,BETTY-CONTROL-WEST \\?CCL12\n?CTR11:\tPRINTI\t\"You see \"\n\tCALL\tDESCRIBE-VIEW\n\tCRLF\t\n\tRTRUE\t\n?CCL12:\tEQUAL?\tHERE,BALCONY \\?CCL16\n\tPRINTR\t\"Water. Lots and lots of water.\"\n?CCL16:\tEQUAL?\tHERE,HELICOPTER \\?CCL18\n\tPRINTR\t\"You see the helipad and the ocean beyond.\"\n?CCL18:\tEQUAL?\tHERE,ESCAPE-POD \\?CCL20\n\tLESS?\tTRIP-COUNTER,2 \\?CCL23\n\tPRINTR\t\"You can see debris from the exploding Feinstein.\"\n?CCL23:\tGRTR?\tTRIP-COUNTER,8 \\?CCL25\n\tPRINTR\t\"You can see a planet, hopefully a hospitable one.\"\n?CCL25:\tPRINTR\t\"The window has polarized to blackness.\"\n?CCL20:\tEQUAL?\tHERE,LARGE-OFFICE \\FALSE\n\tPRINTR\t\"You can see the dormitories and other parts of the complex in the distance. Water is visible in every direction.\"\n?CCL3:\tEQUAL?\tPRSA,V?THROUGH \\?CCL29\n\tEQUAL?\tHERE,BALCONY \\?CCL29\n\tCALL\tJIGS-UP,STR?1\n\tRSTACK\t\n?CCL29:\tEQUAL?\tPRSA,V?OPEN \\?CCL33\n\tPRINTR\t\"This window doesn't open.\"\n?CCL33:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL35\n\tEQUAL?\tHERE,BALCONY \\?CCL35\n\tPRINTR\t\"They're shattered.\"\n?CCL35:\tEQUAL?\tPRSA,V?MUNG \\FALSE\n\tEQUAL?\tHERE,BALCONY \\?CCL42\n\tPRINTR\t\"They're already broken.\"\n?CCL42:\tPRINTR\t\"It's made of tough Zynoid plastic.\"\n\n\n\t.FUNCT\tCLIFF-F\n\tEQUAL?\tHERE,WEST-WING \\?CCL3\n\tEQUAL?\tPRSA,V?LEAP \\?CCL6\n\tCALL\tJIGS-UP,STR?2\n\tRSTACK\t\n?CCL6:\tEQUAL?\tPRSA,V?THROW-OFF \\FALSE\n\tEQUAL?\tPRSO,LASER \\?CND9\n\tCALL\tINT,I-WARMTH\n\tPUT\tSTACK,0,0\n?CND9:\tREMOVE\tPRSO\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" falls into the ocean below.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLIMB-FOO,V?CLIMB-UP \\?CCL13\n\tCALL\tDO-WALK,P?UP\n\tRSTACK\t\n?CCL13:\tEQUAL?\tPRSA,V?CLIMB-DOWN \\FALSE\n\tCALL\tDO-WALK,P?DOWN\n\tRSTACK\t\n\n\n\t.FUNCT\tOCEAN-F\n\tEQUAL?\tPRSA,V?RUB,V?THROUGH,V?TAKE \\?CCL3\n\tPRINTR\t\"You can't reach the ocean from here.\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"It stretches as far as you can see.\"\n\n\n\t.FUNCT\tTABLES-F\n\tEQUAL?\tPRSA,V?LOOK-UNDER \\?CCL3\n\tEQUAL?\tHERE,MESS-HALL \\?CCL3\n\tPRINTR\t\"Wow!!! Under the table are three keys, a sack of food, a reactor elevator access pass, one hundred gold pieces ... Just kidding. Actually, there's nothing there.\"\n?CCL3:\tEQUAL?\tPRSA,V?PUT-ON \\FALSE\n\tEQUAL?\tPRSI,TABLES \\FALSE\n\tPRINTR\t\"That would accomplish nothing useful.\"\n\n\n\t.FUNCT\tSHELVES-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"The shelves are pretty dusty.\"\n?CCL3:\tEQUAL?\tPRSA,V?PUT-ON \\FALSE\n\tEQUAL?\tPRSI,SHELVES \\FALSE\n\tPRINTR\t\"That would be a waste of time.\"\n\n\n\t.FUNCT\tLIGHTS-F\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tEQUAL?\tHERE,COMPUTER-ROOM \\FALSE\n\tPRINTR\t\"The red light would seem to indicate a malfunction in the computer.\"\n\n\n\t.FUNCT\tGLOBAL-DOORWAY-F\n\tEQUAL?\tPRSA,V?THROUGH \\?CCL3\n\tCALL\tUSE-DIRECTIONS\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE,V?OPEN \\?CCL5\n\tPRINTR\t\"It's just an opening; you can't open or close it.\"\n?CCL5:\tEQUAL?\tPRSA,V?LOOK-INSIDE \\FALSE\n\tPRINTR\t\"Can't see much from here. Try going there.\"\n\n\n\t.FUNCT\tUSE-DIRECTIONS\n\tPRINTR\t\"Use compass directions for movement.\"\n\n\n\t.FUNCT\tNO-CLOSE\n\tPRINTR\t\"There's no way to close it.\"\n\n\n\t.FUNCT\tCONTROLS-F\n\tEQUAL?\tHERE,UPPER-ELEVATOR,LOWER-ELEVATOR,BOOTH-1 /?CTR2\n\tEQUAL?\tHERE,REACTOR-ELEVATOR,BOOTH-2,BOOTH-3 \\?CCL3\n?CTR2:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"The control panel is a simple one, as described. Just a small slot and two buttons.\"\n?CCL3:\tEQUAL?\tPRSA,V?PULL,V?PUSH /?CTR9\n\tEQUAL?\tPRSA,V?EXAMINE,V?TAKE,V?SET /?CTR9\n\tEQUAL?\tPRSA,V?TURN,V?MOVE,V?RUB \\?CCL10\n?CTR9:\tEQUAL?\tHERE,HELICOPTER \\?CCL16\n\tPRINTR\t\"The controls are covered and locked.\"\n?CCL16:\tEQUAL?\tHERE,ESCAPE-POD \\?CCL18\n\tPRINTR\t\"The controls are entirely automated.\"\n?CCL18:\tPRINTR\t\"The controls are incredibly complicated and you shouldn't even be thinking about touching them.\"\n?CCL10:\tEQUAL?\tHERE,HELICOPTER \\FALSE\n\tEQUAL?\tPRSA,V?UNLOCK,V?OPEN \\FALSE\n\tPRINTR\t\"You don't even have the orange key!\"\n\n\n\t.FUNCT\tGLOBAL-GAMES-F\n\tEQUAL?\tPRSA,V?PLAY \\FALSE\n\tIN?\tFLOYD,HERE \\?CCL6\n\tCALL\tPERFORM,V?PLAY-WITH,FLOYD\n\tRTRUE\t\n?CCL6:\tPRINTR\t\"Okay. Gee, that was fun.\"\n\n\n\t.FUNCT\tHANDS-F\n\tEQUAL?\tPRSA,V?SHAKE \\FALSE\n\tIN?\tAMBASSADOR,HERE \\?CCL6\n\tPRINTR\t\"A repulsive idea.\"\n?CCL6:\tIN?\tBLATHER,HERE \\?CCL8\n\tPRINTR\t\"Saluting might be a better idea.\"\n?CCL8:\tIN?\tFLOYD,HERE \\?CCL10\n\tFSET?\tFLOYD,RLANDBIT \\?CCL10\n\tPRINTR\t\"You shake one of Floyd's grasping extensions.\"\n?CCL10:\tPRINTR\t\"There's no one to shake hands with.\"\n\n\n\t.FUNCT\tSLEEP-F\n\tEQUAL?\tPRSA,V?WALK-TO \\FALSE\n\tCALL\tV-SLEEP\n\tRSTACK\t\n\n\n\t.FUNCT\tCRETIN-F\n\tEQUAL?\tPRSA,V?GIVE \\?CCL3\n\tCALL\tPERFORM,V?TAKE,PRSO\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?SCRUB \\?CCL5\n\tPRINTR\t\"If only you'd done that before the last inspection, you wouldn't have gotten 300 demerits.\"\n?CCL5:\tEQUAL?\tPRSA,V?DROP \\?CCL7\n\tPRINTR\t\"Huh?\"\n?CCL7:\tEQUAL?\tPRSA,V?SMELL \\?CCL9\n\tPRINTR\t\"Phew!\"\n?CCL9:\tEQUAL?\tPRSA,V?FOLLOW \\?CCL11\n\tPRINTR\t\"It would be hard not to.\"\n?CCL11:\tEQUAL?\tPRSA,V?EAT \\?CCL13\n\tPRINTR\t\"Auto-cannibalism is not the answer.\"\n?CCL13:\tEQUAL?\tPRSA,V?MUNG,V?ATTACK \\?CCL15\n\tEQUAL?\tPRSO,ME \\?CCL18\n\tCALL\tJIGS-UP,STR?3\n\tRSTACK\t\n?CCL18:\tPRINTR\t\"What a silly idea!\"\n?CCL15:\tEQUAL?\tPRSA,V?TAKE \\?CCL20\n\tPRINTR\t\"How romantic!\"\n?CCL20:\tEQUAL?\tPRSA,V?DISEMBARK \\?CCL22\n\tPRINTR\t\"You'll have to do that on your own.\"\n?CCL22:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"That's difficult unless your eyes are prehensile.\"\n\n\n\t.FUNCT\tDDESC,DOOR\n\tFSET?\tDOOR,OPENBIT \\?CCL3\n\tPRINTI\t\"open\"\n\tRTRUE\t\n?CCL3:\tPRINTI\t\"closed\"\n\tRTRUE\t\n\n\n\t.FUNCT\tALREADY-OPEN\n\tPRINTR\t\"It's already open!\"\n\n\n\t.FUNCT\tIS-CLOSED\n\tPRINTR\t\"It is closed!\"\n\n\n\t.FUNCT\tV-THROUGH,OBJ=0,M\n\tZERO?\tOBJ \\?CCL3\n\tFSET?\tPRSO,VEHBIT \\?CCL3\n\tCALL\tPERFORM,V?BOARD,PRSO\n\tRTRUE\t\n?CCL3:\tZERO?\tOBJ \\?CCL7\n\tFSET?\tPRSO,TAKEBIT /?CCL7\n\tPRINTI\t\"You hit your head against the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" as you attempt this feat.\"\n?CCL7:\tZERO?\tOBJ /?CCL11\n\tPRINTR\t\"You can't do that!\"\n?CCL11:\tIN?\tPRSO,ADVENTURER \\?CCL13\n\tPRINTR\t\"That would involve quite a contortion!\"\n?CCL13:\tCALL\tPICK-ONE,YUKS\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tFIND-IN,WHERE,WHAT,W\n\tFIRST?\tWHERE >W /?BOGUS1\n?BOGUS1:\tZERO?\tW /FALSE\n?PRG4:\tFSET?\tW,WHAT \\?CCL8\n\tRETURN\tW\n?CCL8:\tNEXT?\tW >W /?PRG4\n\tRFALSE\t\n\n\n\t.FUNCT\tNOT-HERE-OBJECT-F,TBL,PRSO?=1,OBJ\n\tEQUAL?\tPRSO,NOT-HERE-OBJECT \\?CCL3\n\tEQUAL?\tPRSI,NOT-HERE-OBJECT \\?CCL3\n\tPRINTR\t\"Those things aren't here!\"\n?CCL3:\tEQUAL?\tPRSO,NOT-HERE-OBJECT \\?CCL7\n\tSET\t'TBL,P-PRSO\n\tJUMP\t?CND1\n?CCL7:\tSET\t'TBL,P-PRSI\n\tSET\t'PRSO?,FALSE-VALUE\n?CND1:\tZERO?\tPRSO? /?CND8\n\tEQUAL?\tPRSA,V?TYPE \\?CCL12\n\tCALL\tPERFORM,V?TYPE,FLOYD\n\tRTRUE\t\n?CCL12:\tEQUAL?\tPRSA,V?EXAMINE /?CCL13\n\tEQUAL?\tWINNER,FLOYD \\?CND8\n\tEQUAL?\tPRSA,V?FIND,V?TAKE \\?CND8\n?CCL13:\tCALL\tFIND-NOT-HERE,TBL,PRSO? >OBJ\n\tZERO?\tOBJ /FALSE\n\tEQUAL?\tOBJ,NOT-HERE-OBJECT \\TRUE\n?CND8:\tEQUAL?\tWINNER,ADVENTURER \\?CCL25\n\tPRINTI\t\"You can't see any\"\n\tCALL\tNOT-HERE-PRINT,PRSO?\n\tPRINTI\t\" here!\"\n\tCRLF\t\n\tEQUAL?\tPRSA,V?TELL \\TRUE\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRETURN\t2\n?CCL25:\tPRINTI\t\"The \"\n\tPRINTD\tWINNER\n\tPRINTI\t\" seems confused. \"\"I don't see any\"\n\tCALL\tNOT-HERE-PRINT,PRSO?\n\tPRINTR\t\" here!\"\"\"\n\n\n\t.FUNCT\tFIND-NOT-HERE,TBL,PRSO?,M-F,OBJ\n\tCALL\tMOBY-FIND,TBL >M-F\n\tEQUAL?\t1,M-F \\?CCL3\n\tZERO?\tPRSO? /?CCL6\n\tSET\t'PRSO,P-MOBY-FOUND\n\tRFALSE\t\n?CCL6:\tSET\t'PRSI,P-MOBY-FOUND\n\tRFALSE\t\n?CCL3:\tZERO?\tPRSO? \\?CCL8\n\tPRINTI\t\"You wouldn't find any\"\n\tCALL\tNOT-HERE-PRINT,PRSO?\n\tPRINTR\t\" there.\"\n?CCL8:\tRETURN\tNOT-HERE-OBJECT\n\n\n\t.FUNCT\tNOT-HERE-PRINT,PRSO?,?TMP1\n\tZERO?\tP-OFLAG \\?CTR2\n\tZERO?\tP-MERGED /?CCL3\n?CTR2:\tZERO?\tP-XADJ /?CND6\n\tPRINTC\t32\n\tPRINTB\tP-XADJN\n?CND6:\tZERO?\tP-XNAM /FALSE\n\tPRINTC\t32\n\tPRINTB\tP-XNAM\n\tRTRUE\t\n?CCL3:\tZERO?\tPRSO? /?CCL12\n\tGET\tP-ITBL,P-NC1 >?TMP1\n\tGET\tP-ITBL,P-NC1L\n\tCALL\tBUFFER-PRINT,?TMP1,STACK,FALSE-VALUE\n\tRSTACK\t\n?CCL12:\tGET\tP-ITBL,P-NC2 >?TMP1\n\tGET\tP-ITBL,P-NC2L\n\tCALL\tBUFFER-PRINT,?TMP1,STACK,FALSE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tDECK-NINE-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a featureless corridor similar to every other corridor on the ship. It curves away to starboard, and a gangway leads up\"\n\tFSET?\tGANGWAY-DOOR,OPENBIT \\?CCL6\n\tPRINTC\t46\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\", but both of these are blocked by closed bulkheads.\"\n?CND4:\tPRINTI\t\" To port is the entrance to one of the ship's primary escape pods. The pod bulkhead is \"\n\tCALL\tDDESC,POD-DOOR\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tCHRONOMETER-F\n\tEQUAL?\tPRSA,V?READ,V?EXAMINE \\FALSE\n\tPRINTI\t\"It is a standard wrist chronometer with a digital display. \"\n\tCALL\tTELL-TIME\n\tPRINTR\t\" The back is engraved with the message \"\"Good luck in the Patrol! Love, Mom and Dad.\"\"\"\n\n\n\t.FUNCT\tTELL-TIME\n\tPRINTI\t\"According to the chronometer, the current time is \"\n\tFSET?\tCHRONOMETER,MUNGEDBIT \\?CCL3\n\tPRINTN\tMUNGED-TIME\n\tJUMP\t?CND1\n?CCL3:\tPRINTN\tINTERNAL-MOVES\n?CND1:\tPRINTC\t46\n\tRTRUE\t\n\n\n\t.FUNCT\tPATROL-UNIFORM-F\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTI\t\"It is a standard-issue one-pocket Stellar Patrol uniform, a miracle of modern technology. It will keep its owner warm in cold climates and cool in warm locales. It provides protection against mild radiation, repels all insects, absorbs sweat, promotes healthy skin tone, and on top of everything else, it is super-comfy.\"\n\tEQUAL?\tTRIP-COUNTER,15 \\?CND4\n\tPRINTR\t\" There are definitely worse things to find yourself wearing when stranded on a strange planet.\"\n?CND4:\tCRLF\t\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?WEAR \\?CCL7\n\tFSET?\tLAB-UNIFORM,WORNBIT \\?CCL7\n\tPRINTR\t\"It won't fit over the lab uniform.\"\n?CCL7:\tEQUAL?\tPRSA,V?TAKE-OFF \\?CCL11\n\tFSET?\tPATROL-UNIFORM,WORNBIT \\?CCL11\n\tFCLEAR\tPATROL-UNIFORM,WORNBIT\n\tPRINTI\t\"You have removed your Patrol uniform.\"\n\tEQUAL?\tTRIP-COUNTER,15 \\?CND14\n\tPRINTI\t\" You suddenly realize how warm it is. You also feel naked and vulnerable.\"\n?CND14:\tIN?\tBLATHER,HERE \\?CCL18\n\tPRINTR\t\" \"\"Removing your uniform while on duty? Five hundred demerits!\"\"\"\n?CCL18:\tIN?\tFLOYD,HERE \\?CND16\n\tPRINTR\t\" Floyd giggles. \"\"You look funny without any clothes on.\"\"\"\n?CND16:\tCRLF\t\n\tRTRUE\t\n?CCL11:\tEQUAL?\tPRSA,V?CLOSE,V?OPEN \\FALSE\n\tPRINTI\t\"There's no way to open or close the pocket of the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tGANGWAY-F,RARG\n\tEQUAL?\tRARG,M-END \\FALSE\n\tRANDOM\t100\n\tLESS?\t15,STACK /FALSE\n\tZERO?\tBLOWUP-COUNTER \\FALSE\n\tPRINTR\t\"You hear a distant bellowing ... something about an Ensign Seventh Class whose life is in danger.\"\n\n\n\t.FUNCT\tI-BLATHER\n\tEQUAL?\tHERE,DECK-EIGHT,REACTOR-LOBBY \\?CCL3\n\tIN?\tBLATHER,HERE \\?CCL6\n\tIGRTR?\t'BRIGS-UP,3 \\?CCL9\n\tCRLF\t\n\tPRINTI\t\"Blather loses his last vestige of patience and drags you to the Feinstein's brig. He throws you in, and the door clangs shut behind you.\"\n\tCRLF\t\n\tCRLF\t\n\tCALL\tGOTO,BRIG\n\tCALL\tROB,ADVENTURER,CRAG\n\tMOVE\tPADLOCK,HERE\n\tFCLEAR\tPADLOCK,TAKEBIT\n\tRTRUE\t\n?CCL9:\tCRLF\t\n\tPRINTR\t\"\"\"I said to return to your post, Ensign Seventh Class!\"\" bellows Blather, turning a deepening shade of crimson.\"\n?CCL6:\tZERO?\tBLOWUP-COUNTER \\FALSE\n\tMOVE\tBLATHER,HERE\n\tCALL\tTHIS-IS-IT,BLATHER\n\tCRLF\t\n\tPRINTR\t\"Ensign Blather, his uniform immaculate, enters and notices you are away from your post. \"\"Twenty demerits, Ensign Seventh Class!\"\" bellows Blather. \"\"Forty if you're not back on Deck Nine in five seconds!\"\" He curls his face into a hideous mask of disgust at your unbelievable negligence.\"\n?CCL3:\tEQUAL?\tHERE,DECK-NINE \\FALSE\n\tEQUAL?\tBLATHER-LEAVE,3 \\?CCL16\n\tIN?\tBLATHER,HERE \\?CCL16\n\tSET\t'BLATHER-LEAVE,0\n\tREMOVE\tBLATHER\n\tCRLF\t\n\tPRINTR\t\"Blather, adding fifty more demerits for good measure, moves off in search of more young ensigns to terrorize.\"\n?CCL16:\tIN?\tBLATHER,DECK-NINE \\?CCL20\n\tINC\t'BLATHER-LEAVE\n\tRFALSE\t\n?CCL20:\tIN?\tAMBASSADOR,HERE /FALSE\n\tZERO?\tBLOWUP-COUNTER \\FALSE\n\tRANDOM\t100\n\tLESS?\t5,STACK /FALSE\n\tMOVE\tBLATHER,HERE\n\tCALL\tTHIS-IS-IT,BLATHER\n\tCRLF\t\n\tPRINTI\t\"Ensign First Class Blather swaggers in. He studies your work with half-closed eyes. \"\"You call this polishing, Ensign Seventh Class?\"\" he sneers. \"\"We have a position for an Ensign Ninth Class in the toilet-scrubbing division, you know. Thirty demerits.\"\n\tFSET?\tPATROL-UNIFORM,WORNBIT /?CND26\n\tPRINTI\t\" And another sixty for improper dress!\"\n?CND26:\tPRINTR\t\"\"\" He glares at you, his arms crossed.\"\n\n\n\t.FUNCT\tBLATHER-F\n\tEQUAL?\tPRSA,V?HELLO,V?TALK /?CTR2\n\tEQUAL?\tBLATHER,WINNER \\?CCL3\n?CTR2:\tPRINTI\t\"Blather shouts \"\"Speak when you're spoken to, Ensign Seventh Class!\"\" He breaks three pencil points in a frenzied rush to give you more demerits.\"\n\tCRLF\t\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRETURN\t2\n?CCL3:\tEQUAL?\tPRSA,V?KICK,V?ATTACK \\?CCL9\n\tCALL\tJIGS-UP,STR?16\n\tRSTACK\t\n?CCL9:\tEQUAL?\tPRSA,V?SALUTE \\?CCL11\n\tPRINTR\t\"Blather's sneer softens a bit. \"\"First right thing you've done today. Only five demerits.\"\"\"\n?CCL11:\tEQUAL?\tPRSA,V?THROW \\?CCL13\n\tEQUAL?\tBLATHER,PRSI \\?CCL13\n\tMOVE\tPRSO,HERE\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" bounces off Blather's bulbous nose. He becomes livid, orders you to do five hundred push-ups, gives you ten thousand demerits, and assigns you five years of extra galley duty.\"\n?CCL13:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL17\n\tPRINTR\t\"Ensign Blather is a tall, beefy officer with a tremendous, misshapen nose. His uniform is perfect in every respect, and the crease in his trousers could probably slice diamonds in half.\"\n?CCL17:\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tPRINTR\t\"Blather brushes you away, muttering about suspended shore leave.\"\n\n\n\t.FUNCT\tCELERY-F\n\tEQUAL?\tPRSA,V?EAT \\?CCL3\n\tCALL\tJIGS-UP,STR?18\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tPRINTR\t\"The ambassador seems perturbed by your lack of normal protocol.\"\n\n\n\t.FUNCT\tI-AMBASSADOR\n\tGRTR?\tAMBASSADOR-LEAVE,2 \\?CCL3\n\tIN?\tAMBASSADOR,HERE \\?CCL3\n\tREMOVE\tAMBASSADOR\n\tREMOVE\tCELERY\n\tEQUAL?\tHERE,DECK-NINE \\?CND6\n\tCRLF\t\n\tPRINTI\t\"The ambassador grunts a polite farewell, and disappears up the gangway, leaving a trail of dripping slime.\"\n\tCRLF\t\n?CND6:\tCALL\tINT,I-AMBASSADOR\n\tPUT\tSTACK,0,0\n\tRTRUE\t\n?CCL3:\tIN?\tAMBASSADOR,DECK-NINE \\?CCL9\n\tINC\t'AMBASSADOR-LEAVE\n\tEQUAL?\tHERE,DECK-NINE \\FALSE\n\tCRLF\t\n\tPRINTI\t\"The ambassador \"\n\tCALL\tPICK-ONE,AMBASSADOR-QUOTES\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n?CCL9:\tEQUAL?\tHERE,DECK-NINE \\FALSE\n\tIN?\tAMBASSADOR,HERE /FALSE\n\tIN?\tBLATHER,HERE /FALSE\n\tZERO?\tBLOWUP-COUNTER \\FALSE\n\tRANDOM\t100\n\tLESS?\t15,STACK /FALSE\n\tMOVE\tAMBASSADOR,HERE\n\tMOVE\tCELERY,HERE\n\tCALL\tTHIS-IS-IT,AMBASSADOR\n\tMOVE\tBROCHURE,ADVENTURER\n\tCRLF\t\n\tPRINTR\t\"The alien ambassador from the planet Blow'k-bibben-Gordo ambles toward you from down the corridor. He is munching on something resembling an enormous stalk of celery, and he leaves a trail of green slime on the deck. He stops nearby, and you wince as a pool of slime begins forming beneath him on your newly-polished deck. The ambassador wheezes loudly and hands you a brochure outlining his planet's major exports.\"\n\n\n\t.FUNCT\tAMBASSADOR-F\n\tEQUAL?\tPRSA,V?HELLO,V?TALK /?CTR2\n\tEQUAL?\tAMBASSADOR,WINNER \\?CCL3\n?CTR2:\tPRINTI\t\"The ambassador taps his translator, and then touches his center knee to his left ear (the Blow'k-bibben-Gordoan equivalent of shrugging).\"\n\tCRLF\t\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRETURN\t2\n?CCL3:\tEQUAL?\tPRSA,V?ASK-FOR \\?CCL9\n\tEQUAL?\tPRSI,CELERY \\?CCL9\n\tPRINTR\t\"The ambassador seems willing to let you eat some of it, but I doubt he wants to part with the entire stalk.\"\n?CCL9:\tEQUAL?\tPRSA,V?KICK,V?ATTACK \\?CCL13\n\tPRINTR\t\"The ambassador is startled, and emits an amazing quantity of slime which spreads across the section of the deck you just polished.\"\n?CCL13:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL15\n\tPRINTR\t\"The ambassador has around twenty eyes, seven of which are currently open. Half of his six legs are retracted. Green slime oozes from multiple orifices in his scaly skin. He speaks through a mechanical translator slung around his neck.\"\n?CCL15:\tEQUAL?\tPRSA,V?LISTEN \\FALSE\n\tPRINTR\t\"The alien makes a wheezing noise as he breathes.\"\n\n\n\t.FUNCT\tGLOBAL-POD-F\n\tEQUAL?\tPRSA,V?WALK-TO,V?BOARD,V?THROUGH \\?CCL3\n\tEQUAL?\tHERE,ESCAPE-POD \\?CCL6\n\tPRINTR\t\"You're already in it!\"\n?CCL6:\tCALL\tDO-WALK,P?WEST\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?DROP,V?DISEMBARK,V?EXIT \\?CCL8\n\tEQUAL?\tHERE,DECK-NINE \\?CCL11\n\tPRINTR\t\"You're not in it!\"\n?CCL11:\tCALL\tDO-WALK,P?OUT\n\tRTRUE\t\n?CCL8:\tEQUAL?\tPRSA,V?OPEN \\FALSE\n\tCALL\tPERFORM,V?OPEN,POD-DOOR\n\tRTRUE\t\n\n\n\t.FUNCT\tPOD-EXIT-F\n\tGRTR?\tBLOWUP-COUNTER,4 \\?CCL3\n\tEQUAL?\tPRSO,P?EAST \\?CCL6\n\tPRINT\tCANT-GO\n\tCRLF\t\n\tRFALSE\t\n?CCL6:\tFSET?\tPOD-DOOR,OPENBIT /?CCL8\n\tPRINTI\t\"The pod door is closed.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL8:\tSET\t'C-ELAPSED,30\n\tRETURN\tUNDERWATER\n?CCL3:\tEQUAL?\tPRSO,P?UP \\?CCL11\n\tPRINT\tCANT-GO\n\tCRLF\t\n\tRFALSE\t\n?CCL11:\tFSET?\tPOD-DOOR,OPENBIT /?CCL13\n\tPRINTI\t\"The pod door is closed.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL13:\tRETURN\tDECK-NINE\n\n\n\t.FUNCT\tSAFETY-WEB-F,RARG=M-OBJECT\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tZERO?\tRARG \\?CCL3\n\tPRINTR\t\"The safety webbing fills most of the pod. It could accomodate from one to, perhaps, twenty people.\"\n?CCL3:\tEQUAL?\tPRSA,V?TAKE \\?CCL7\n\tZERO?\tRARG \\?CCL7\n\tPRINTR\t\"The safety web seems to be more intended for getting into than grabbing onto.\"\n?CCL7:\tEQUAL?\tPRSA,V?CLIMB-ON,V?BOARD \\?CCL11\n\tZERO?\tRARG \\?CCL11\n\tMOVE\tADVENTURER,SAFETY-WEB\n\tPRINTR\t\"You are now safely cushioned within the web.\"\n?CCL11:\tEQUAL?\tPRSA,V?TAKE,V?OPEN \\?CCL15\n\tEQUAL?\tRARG,M-BEG \\?CCL15\n\tEQUAL?\tPRSO,SAFETY-WEB \\?CCL20\n\tPRINTR\t\"You're in it!\"\n?CCL20:\tPRINTR\t\"You can't reach it from here.\"\n?CCL15:\tEQUAL?\tPRSA,V?WALK \\?CCL22\n\tEQUAL?\tRARG,M-BEG \\?CCL22\n\tPRINTR\t\"You'll have to stand up, first.\"\n?CCL22:\tEQUAL?\tPRSA,V?STAND /?PRD28\n\tEQUAL?\tPRSA,V?DROP,V?DISEMBARK,V?EXIT \\FALSE\n?PRD28:\tZERO?\tRARG \\FALSE\n\tIN?\tADVENTURER,SAFETY-WEB \\FALSE\n\tMOVE\tADVENTURER,HERE\n\tGRTR?\tTRIP-COUNTER,14 \\?CCL34\n\tCALL\tINT,I-SINK-POD\n\tGET\tSTACK,C-ENABLED?\n\tZERO?\tSTACK \\?CCL34\n\tCALL\tQUEUE,I-SINK-POD,-1\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"As you stand, the pod shifts slightly and you feel it falling. A moment later, the fall stops with a shock, and you see water rising past the viewport.\"\n?CCL34:\tPRINTR\t\"You are standing again.\"\n\n\n\t.FUNCT\tTOWEL-F\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"A pretty ordinary towel. Something is written in its corner.\"\n\n\n\t.FUNCT\tFOOD-KIT-F\n\tEQUAL?\tPRSA,V?EMPTY \\FALSE\n\tFSET?\tFOOD-KIT,OPENBIT /?CCL6\n\tPRINTR\t\"The kit is closed!\"\n?CCL6:\tFIRST?\tPRSO \\FALSE\n\tPRINTR\t\"The goo, being gooey, sticks to the inside of the kit. You would probably have to shake the kit to get the goo out.\"\n\n\n\t.FUNCT\tGOO-F\n\tEQUAL?\tPRSA,V?EAT \\?CCL3\n\tZERO?\tHUNGER-LEVEL \\?CCL6\n\tPRINT\tNOT-HUNGRY\n\tCRLF\t\n\tRTRUE\t\n?CCL6:\tIN?\tFOOD-KIT,ADVENTURER /?CCL8\n\tSET\t'PRSO,FOOD-KIT\n\tCALL\tNOT-HOLDING\n\tCALL\tTHIS-IS-IT,FOOD-KIT\n\tRSTACK\t\n?CCL8:\tREMOVE\tPRSO\n\tSET\t'C-ELAPSED,15\n\tSET\t'HUNGER-LEVEL,0\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,1450\n\tPUT\tSTACK,0,1\n\tPRINTI\t\"Mmmm...that tasted just like \"\n\tEQUAL?\tPRSO,BROWN-GOO \\?CCL11\n\tPRINTI\t\"delicious Nebulan fungus pudding\"\n\tJUMP\t?CND9\n?CCL11:\tEQUAL?\tPRSO,RED-GOO \\?CCL13\n\tPRINTI\t\"scrumptious cherry pie\"\n\tJUMP\t?CND9\n?CCL13:\tPRINTI\t\"yummy lima beans\"\n?CND9:\tPRINTR\t\".\"\n?CCL3:\tEQUAL?\tPRSA,V?DROP,V?TAKE \\FALSE\n\tEQUAL?\tPRSA,V?DROP \\?CCL18\n\tPRINTI\t\"The goo, being gooey, sticks where it is\"\n\tJUMP\t?CND16\n?CCL18:\tEQUAL?\tPRSA,V?TAKE \\?CND16\n\tPRINTI\t\"It would ooze through your fingers\"\n?CND16:\tPRINTR\t\". You'll have to eat it right from the survival kit.\"\n\n\n\t.FUNCT\tESCAPE-POD-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is one of the Feinstein's primary escape pods, for use in extreme emergencies. A mass of safety webbing, large enough to hold several dozen people, fills half the pod. The controls are entirely automated. The bulkhead leading out is \"\n\tCALL\tDDESC,POD-DOOR\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tPOD-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tPOD-DOOR,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tGRTR?\tTRIP-COUNTER,14 \\?CCL8\n\tFSET\tPOD-DOOR,OPENBIT\n\tPRINTR\t\"The bulkhead opens and cold ocean water rushes in!\"\n?CCL8:\tGRTR?\tBLOWUP-COUNTER,0 \\?CCL10\n\tEQUAL?\tHERE,DECK-NINE \\?CCL13\n\tPRINTR\t\"Too late. The pod's launching procedure has already begun.\"\n?CCL13:\tPRINTR\t\"Opening the door now would be a phenomenally stupid idea.\"\n?CCL10:\tPRINTR\t\"Why open the door to the emergency escape pod if there's no emergency?\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\?CCL15\n\tFSET?\tPOD-DOOR,OPENBIT /?CCL18\n\tCALL\tIS-CLOSED\n\tRSTACK\t\n?CCL18:\tPRINTR\t\"You can't close it yourself.\"\n?CCL15:\tEQUAL?\tPRSA,V?THROUGH \\FALSE\n\tEQUAL?\tHERE,DECK-NINE \\?CCL23\n\tCALL\tDO-WALK,P?WEST\n\tRSTACK\t\n?CCL23:\tCALL\tDO-WALK,P?OUT\n\tRSTACK\t\n\n\n\t.FUNCT\tGANGWAY-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tFSET?\tPRSO,OPENBIT \\?CCL6\n\tCALL\tALREADY-OPEN\n\tRSTACK\t\n?CCL6:\tPRINTR\t\"There doesn't seem to be any way to open it.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLOSE \\FALSE\n\tFSET?\tPRSO,OPENBIT \\?CCL11\n\tPRINTR\t\"You can't close it yourself.\"\n?CCL11:\tCALL\tIS-CLOSED\n\tRSTACK\t\n\n\n\t.FUNCT\tI-BLOWUP-FEINSTEIN\n\tCALL\tQUEUE,I-BLOWUP-FEINSTEIN,-1\n\tPUT\tSTACK,0,1\n\tINC\t'BLOWUP-COUNTER\n\tEQUAL?\tBLOWUP-COUNTER,5 \\?CCL3\n\tEQUAL?\tHERE,DECK-NINE \\?CCL6\n\tCALL\tJIGS-UP,STR?29\n\tRSTACK\t\n?CCL6:\tCRLF\t\n\tPRINTI\t\"Through the viewport of the pod you see the Feinstein dwindle as you head away. Bursts of light dot its hull. Suddenly, a huge explosion blows the Feinstein into tiny pieces, sending the escape pod tumbling away! \"\n\tCRLF\t\n\tCALL\tQUEUE,I-POD-TRIP,-1\n\tPUT\tSTACK,0,1\n\tCALL\tINT,I-BLOWUP-FEINSTEIN\n\tPUT\tSTACK,0,0\n\tIN?\tADVENTURER,SAFETY-WEB /?CCL9\n\tRANDOM\t100\n\tLESS?\t20,STACK /?CCL9\n\tCALL\tJIGS-UP,STR?30\n\tRSTACK\t\n?CCL9:\tIN?\tADVENTURER,SAFETY-WEB /FALSE\n\tCRLF\t\n\tPRINTR\t\"You are thrown against the bulkhead, bruising a few limbs. The safety webbing might have offered a bit more protection.\"\n?CCL3:\tEQUAL?\tBLOWUP-COUNTER,4 \\?CCL15\n\tCALL\tINT,I-BLATHER\n\tPUT\tSTACK,0,0\n\tCALL\tINT,I-AMBASSADOR\n\tPUT\tSTACK,0,0\n\tEQUAL?\tHERE,DECK-NINE \\?CCL18\n\tCRLF\t\n\tPRINTR\t\"Explosions continue to rock the ship.\"\n?CCL18:\tCRLF\t\n\tPRINTR\t\"You feel the pod begin to slide down its ejection tube as explosions shake the mother ship.\"\n?CCL15:\tEQUAL?\tBLOWUP-COUNTER,3 \\?CCL20\n\tFCLEAR\tPOD-DOOR,OPENBIT\n\tEQUAL?\tHERE,DECK-NINE \\?CCL23\n\tCRLF\t\n\tPRINTR\t\"More powerful explosions buffet the ship. The lights flicker madly, and the escape-pod bulkhead clangs shut.\"\n?CCL23:\tEQUAL?\tHERE,ESCAPE-POD \\?CCL25\n\tCRLF\t\n\tPRINTR\t\"The pod door clangs shut as heavy explosions continue to buffet the Feinstein.\"\n?CCL25:\tCALL\tJIGS-UP,STR?31\n\tRSTACK\t\n?CCL20:\tEQUAL?\tBLOWUP-COUNTER,2 \\?CCL27\n\tFCLEAR\tCORRIDOR-DOOR,OPENBIT\n\tFCLEAR\tCORRIDOR-DOOR,INVISIBLE\n\tFCLEAR\tGANGWAY-DOOR,OPENBIT\n\tFCLEAR\tGANGWAY-DOOR,INVISIBLE\n\tEQUAL?\tHERE,DECK-NINE \\?CCL30\n\tCRLF\t\n\tPRINTR\t\"More distant explosions! A narrow emergency bulkhead at the base of the gangway and a wider one along the corridor to starboard both crash shut!\"\n?CCL30:\tEQUAL?\tHERE,ESCAPE-POD,BRIG \\?CCL32\n\tCRLF\t\n\tPRINTR\t\"The ship shakes again. You hear, from close by, the sounds of emergency bulkheads closing.\"\n?CCL32:\tEQUAL?\tHERE,GANGWAY \\?CCL34\n\tCRLF\t\n\tPRINTR\t\"Another explosion. A narrow bulkhead at the base of the gangway slams shut!\"\n?CCL34:\tCRLF\t\n\tPRINTI\t\"You are deafened by more explosions and by the sound of emergency bulkheads slamming closed. \"\n\tIN?\tBLATHER,HERE \\?CCL37\n\tPRINTI\t\"Blather, foaming slightly at the mouth, screams at you to swab the decks\"\n\tJUMP\t?CND35\n?CCL37:\tMOVE\tBLATHER,HERE\n\tPRINTI\t\"Blather enters, looking confused, and begins ranting madly at you\"\n?CND35:\tPRINTR\t\".\"\n?CCL27:\tEQUAL?\tBLOWUP-COUNTER,1 \\FALSE\n\tSET\t'BRIGS-UP,0\n\tFSET\tPOD-DOOR,OPENBIT\n\tCRLF\t\n\tPRINTI\t\"A massive explosion rocks the ship. Echoes from the explosion resound deafeningly down the halls. \"\n\tEQUAL?\tHERE,DECK-NINE \\?CCL42\n\tPRINTI\t\"The door to port slides open. \"\n\tIN?\tAMBASSADOR,HERE \\?CCL45\n\tREMOVE\tAMBASSADOR\n\tREMOVE\tCELERY\n\tPRINTR\t\"The ambassador squawks frantically, evacuates a massive load of gooey slime, and rushes away.\"\n?CCL45:\tIN?\tBLATHER,HERE \\?CCL47\n\tREMOVE\tBLATHER\n\tPRINTR\t\"Blather, confused by this non-routine occurrence, orders you to continue scrubbing the floor, and then dashes off.\"\n?CCL47:\tCRLF\t\n\tRTRUE\t\n?CCL42:\tEQUAL?\tHERE,ESCAPE-POD,GANGWAY,BRIG \\?CCL49\n\tCRLF\t\n\tRTRUE\t\n?CCL49:\tPRINTR\t\"Blather, looking slightly disoriented, barks at you to resume your assigned duties.\"\n\n\n\t.FUNCT\tI-POD-TRIP\n\tINC\t'TRIP-COUNTER\n\tEQUAL?\tTRIP-COUNTER,1 \\?CCL3\n\tCRLF\t\n\tPRINTR\t\"As the escape pod tumbles away from the former location of the Feinstein, its gyroscopes whine. The pod slowly stops tumbling. Lights on the control panel blink furiously as the autopilot searches for a reasonable destination.\"\n?CCL3:\tEQUAL?\tTRIP-COUNTER,2 \\?CCL5\n\tCRLF\t\n\tPRINTR\t\"The auxiliary rockets fire briefly, and a nearby planet swings into view through the port. It appears to be almost entirely ocean, with just a few visible islands and an unusually small polar ice cap. A moment later, the system's sun swings into view, and the viewport polarizes into a featureless black rectangle.\"\n?CCL5:\tEQUAL?\tTRIP-COUNTER,3 \\?CCL7\n\tCRLF\t\n\tPRINTR\t\"The main thrusters fire a long, gentle burst. A monotonic voice issues from the control panel. \"\"Approaching planet...human-habitable.\"\"\"\n?CCL7:\tEQUAL?\tTRIP-COUNTER,7 \\?CCL9\n\tCRLF\t\n\tPRINTR\t\"The pod is buffeted as it enters the planet's atmosphere.\"\n?CCL9:\tEQUAL?\tTRIP-COUNTER,8 \\?CCL11\n\tCRLF\t\n\tPRINTR\t\"You feel the temperature begin to rise, and the pod's climate control system roars as it labors to compensate.\"\n?CCL11:\tEQUAL?\tTRIP-COUNTER,9 \\?CCL13\n\tCRLF\t\n\tPRINTR\t\"The viewport suddenly becomes transparent again, giving you a view of endless ocean below. The lights on the control panel flash madly as the pod's computer searches for a suitable landing site. The thrusters fire long and hard, slowing the pod's descent.\"\n?CCL13:\tEQUAL?\tTRIP-COUNTER,10 \\?CCL15\n\tCRLF\t\n\tPRINTR\t\"The pod is now approaching the closer of a pair of islands. It appears to be surrounded by sheer cliffs rising from the water, and is topped by a wide plateau. The plateau seems to be covered by a sprawling complex of buildings.\"\n?CCL15:\tEQUAL?\tTRIP-COUNTER,11 \\FALSE\n\tIN?\tADVENTURER,SAFETY-WEB \\?CCL20\n\tMOVE\tFOOD-KIT,HERE\n\tMOVE\tTOWEL,HERE\n\tCRLF\t\n\tPRINTI\t\"The pod lands with a thud. Through the viewport you can see a rocky cleft and some water below. The pod rocks gently back and forth as if it was precariously balanced. A previously unseen panel slides open, revealing some emergency provisions, including a survival kit and a towel.\"\n\tCRLF\t\n\tSET\t'TRIP-COUNTER,15\n\tCALL\tINT,I-POD-TRIP\n\tPUT\tSTACK,0,0\n\tRTRUE\t\n?CCL20:\tCALL\tJIGS-UP,STR?32\n\tRSTACK\t\n\n\n\t.FUNCT\tI-SINK-POD\n\tINC\t'SINK-COUNTER\n\tEQUAL?\tSINK-COUNTER,3 \\?CCL3\n\tEQUAL?\tHERE,ESCAPE-POD \\?CCL3\n\tCRLF\t\n\tPRINTR\t\"The pod is now completely submerged, and you feel it smash against underwater rocks. Bubbles streaming upward past the window indicate that the pod is continuing to sink.\"\n?CCL3:\tEQUAL?\tSINK-COUNTER,4 \\?CCL7\n\tEQUAL?\tHERE,ESCAPE-POD \\?CCL7\n\tFSET?\tPOD-DOOR,OPENBIT /?CCL7\n\tCRLF\t\n\tPRINTR\t\"The pod creaks ominously from the increasing pressure.\"\n?CCL7:\tEQUAL?\tSINK-COUNTER,5 \\FALSE\n\tEQUAL?\tHERE,ESCAPE-POD \\FALSE\n\tFSET?\tPOD-DOOR,OPENBIT \\?CCL17\n\tCALL\tJIGS-UP,STR?33\n\tRSTACK\t\n?CCL17:\tCALL\tJIGS-UP,STR?34\n\tRSTACK\t\n\n\n\t.FUNCT\tSLOT-F\n\tEQUAL?\tPRSA,V?PUT \\?CCL3\n\tEQUAL?\tSLOT,PRSI \\?CCL3\n\tPRINTR\t\"The slot is shallow, so you can't put anything in it. It may be possible to slide something through the slot, though.\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL7\n\tPRINTR\t\"The slot is about ten centimeters wide, but only about two centimeters deep. It is surrounded on its long sides by parallel ridges of metal.\"\n?CCL7:\tEQUAL?\tPRSA,V?SLIDE \\FALSE\n\tEQUAL?\tSLOT,PRSI \\FALSE\n\tMOVE\tPRSO,ADVENTURER\n\tFSET?\tPRSO,SCRAMBLEDBIT \\?CCL14\n\tPRINTR\t\"A sign flashes \"\"Magnetik striip randumiizd...konsult Prajekt Handbuk abowt propur kaar uv awtharazaashun kardz.\"\"\"\n?CCL14:\tEQUAL?\tPRSO,KITCHEN-CARD \\?CCL16\n\tEQUAL?\tHERE,MESS-HALL \\?CCL19\n\tFSET?\tKITCHEN-DOOR,OPENBIT \\?CCL22\n\tPRINTR\t\"Nothing happens.\"\n?CCL22:\tFSET\tKITCHEN-DOOR,OPENBIT\n\tCALL\tQUEUE,I-KITCHEN-DOOR-CLOSES,50\n\tPUT\tSTACK,0,1\n\tPRINTI\t\"The kitchen door quietly slides open.\"\n\tCRLF\t\n\tCALL\tFLOYD-REVEAL-CARD-F\n\tRTRUE\t\n?CCL19:\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n?CCL16:\tEQUAL?\tPRSO,UPPER-ELEVATOR-CARD \\?CCL24\n\tEQUAL?\tHERE,UPPER-ELEVATOR \\?CCL27\n\tSET\t'UPPER-ELEVATOR-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-UPPER-ELEVATOR,180\n\tPUT\tSTACK,0,1\n\tPRINT\tELEVATOR-ENABLED\n\tCRLF\t\n\tCALL\tFLOYD-REVEAL-CARD-F\n\tRTRUE\t\n?CCL27:\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n?CCL24:\tEQUAL?\tPRSO,LOWER-ELEVATOR-CARD \\?CCL29\n\tEQUAL?\tHERE,LOWER-ELEVATOR \\?CCL32\n\tSET\t'LOWER-ELEVATOR-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-LOWER-ELEVATOR,200\n\tPUT\tSTACK,0,1\n\tPRINT\tELEVATOR-ENABLED\n\tCRLF\t\n\tRTRUE\t\n?CCL32:\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n?CCL29:\tEQUAL?\tPRSO,TELEPORTATION-CARD \\?CCL34\n\tEQUAL?\tHERE,BOOTH-1,BOOTH-2,BOOTH-3 \\?CCL37\n\tSET\t'TELEPORTATION-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-TELEPORTATION,30\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"Nothing happens for a moment. Then a light flashes \"\"Redee.\"\"\"\n?CCL37:\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n?CCL34:\tEQUAL?\tPRSO,SHUTTLE-CARD \\?CCL39\n\tCALL\tSHUTTLE-ACTIVATE\n\tRSTACK\t\n?CCL39:\tEQUAL?\tPRSO,MINI-CARD \\?CCL41\n\tEQUAL?\tHERE,MINI-BOOTH \\?CCL44\n\tSET\t'MINI-ACTIVATED,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-MINI,30\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"A melodic high-pitched voice says \"\"Miniaturization and teleportation booth activated. Please type in damaged sector number.\"\"\"\n?CCL44:\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n?CCL41:\tEQUAL?\tPRSO,ID-CARD \\FALSE\n\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tFLOYD-REVEAL-CARD-F\n\tIN?\tFLOYD,HERE \\FALSE\n\tZERO?\tCARD-REVEALED \\FALSE\n\tEQUAL?\tDAY,2 \\?PRD8\n\tLESS?\tINTERNAL-MOVES,5000 \\?PRD8\n\tRANDOM\t100\n\tLESS?\t5,STACK \\?CCL3\n?PRD8:\tEQUAL?\tDAY,2 \\?PRD12\n\tGRTR?\tINTERNAL-MOVES,4999 \\?PRD12\n\tRANDOM\t100\n\tLESS?\t10,STACK \\?CCL3\n?PRD12:\tEQUAL?\tDAY,3 \\?PRD16\n\tLESS?\tINTERNAL-MOVES,5000 \\?PRD16\n\tRANDOM\t100\n\tLESS?\t20,STACK \\?CCL3\n?PRD16:\tEQUAL?\tDAY,3 \\?PRD20\n\tGRTR?\tINTERNAL-MOVES,4999 \\?PRD20\n\tRANDOM\t100\n\tLESS?\t40,STACK \\?CCL3\n?PRD20:\tGRTR?\tDAY,3 \\FALSE\n?CCL3:\tSET\t'CARD-REVEALED,TRUE-VALUE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tZERO?\tCARD-STOLEN \\?CCL26\n\tMOVE\tLOWER-ELEVATOR-CARD,FLOYD\n\tPRINTR\t\"Floyd claps his hands with excitement. \"\"Those cards are really neat, huh? Floyd has one for himself--see?\"\" He reaches behind one of his panels and retrieves a magnetic-striped card. He waves it exuberantly in the air.\"\n?CCL26:\tPRINTR\t\"Floyd bobs up and down with excitement. \"\"Those cards are really neat! Floyd has one, too.\"\" He begins searching through his compartments, but finds nothing. He scratches his head and looks confused.\"\n\n\n\t.FUNCT\tI-KITCHEN-DOOR-CLOSES\n\tEQUAL?\tHERE,KITCHEN \\?CCL3\n\tCALL\tQUEUE,I-KITCHEN-DOOR-CLOSES,-1\n\tPUT\tSTACK,0,1\n\tRFALSE\t\n?CCL3:\tFCLEAR\tKITCHEN-DOOR,OPENBIT\n\tCALL\tINT,I-KITCHEN-DOOR-CLOSES\n\tPUT\tSTACK,0,0\n\tEQUAL?\tHERE,MESS-HALL \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The kitchen door slides quietly closed.\"\n\n\n\t.FUNCT\tTELEPORT,BOOTH\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tEQUAL?\tTELEPORTATION-ON,TRUE-VALUE \\?CCL6\n\tPRINTI\t\"You experience a strange feeling in the pit of your stomach.\"\n\tCRLF\t\n\tIN?\tFLOYD,HERE \\?CND7\n\tPRINTI\t\"Floyd gives a terrified squeal, and clutches at his guidance mechanism.\"\n\tCRLF\t\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tCALL\tQUEUE,I-FLOYD,1\n\tPUT\tSTACK,0,1\n?CND7:\tCALL\tROB,HERE,BOOTH\n\tCALL\tGOTO,BOOTH,FALSE-VALUE\n\tCALL\tINT,I-TURNOFF-TELEPORTATION\n\tPUT\tSTACK,0,0\n\tSET\t'TELEPORTATION-ON,FALSE-VALUE\n\tRTRUE\t\n?CCL6:\tPRINTR\t\"A sign flashes \"\"Teleportaashun buux not aktivaatid.\"\"\"\n\n\n\t.FUNCT\tTELEPORTATION-BUTTON-1-F\n\tCALL\tTELEPORT,BOOTH-1\n\tRSTACK\t\n\n\n\t.FUNCT\tTELEPORTATION-BUTTON-2-F\n\tCALL\tTELEPORT,BOOTH-2\n\tRSTACK\t\n\n\n\t.FUNCT\tTELEPORTATION-BUTTON-3-F\n\tCALL\tTELEPORT,BOOTH-3\n\tRSTACK\t\n\n\n\t.FUNCT\tI-TURNOFF-TELEPORTATION\n\tSET\t'TELEPORTATION-ON,FALSE-VALUE\n\tEQUAL?\tHERE,BOOTH-1,BOOTH-2,BOOTH-3 \\FALSE\n\tCRLF\t\n\tPRINTR\t\"The ready light goes dark.\"\n\n\n\t.FUNCT\tGLOBAL-SHUTTLE-F\n\tEQUAL?\tPRSA,V?BOARD /?CTR2\n\tEQUAL?\tPRSA,V?WALK-TO,V?THROUGH,V?ENTER \\?CCL3\n?CTR2:\tEQUAL?\tHERE,SHUTTLE-CAR-ALFIE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST /?CTR7\n\tEQUAL?\tHERE,SHUTTLE-CAR-BETTY,BETTY-CONTROL-EAST,BETTY-CONTROL-WEST \\?CCL8\n?CTR7:\tPRINTR\t\"You ARE in the shuttle car.\"\n?CCL8:\tPRINTR\t\"Use 'north' or 'south'.\"\n?CCL3:\tEQUAL?\tPRSA,V?DROP,V?DISEMBARK,V?EXIT \\FALSE\n\tEQUAL?\tHERE,SHUTTLE-CAR-ALFIE \\?CCL15\n\tCALL\tDO-WALK,P?NORTH\n\tRSTACK\t\n?CCL15:\tEQUAL?\tHERE,SHUTTLE-CAR-BETTY \\?CCL17\n\tCALL\tDO-WALK,P?SOUTH\n\tRSTACK\t\n?CCL17:\tEQUAL?\tHERE,BETTY-CONTROL-EAST,BETTY-CONTROL-WEST /?CTR18\n\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST \\?CCL19\n?CTR18:\tPRINTR\t\"You can't exit the shuttle car from here.\"\n?CCL19:\tPRINTR\t\"You're not in the shuttle car!\"\n\n\n\t.FUNCT\tSHUTTLE-CAR-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is the cabin of a large transport, with seating for around 20 people plus space for freight. There are open doors at the eastern and western ends of the cabin, and a doorway leads out to a wide platform to the \"\n\tEQUAL?\tHERE,SHUTTLE-CAR-ALFIE \\?CCL6\n\tPRINTI\t\"north\"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"south\"\n?CND4:\tPRINTR\t\".\"\n\n\n\t.FUNCT\tCONTROL-CABIN-F,RARG\n\tEQUAL?\tRARG,M-LOOK \\FALSE\n\tPRINTI\t\"This is a small control cabin. A control panel contains a slot, a lever, and a display. The lever can be set at a central position, or it could be pushed up to a position labelled \"\"+\"\", or pulled down to a position labelled \"\"-\"\". It is currently at the \"\n\tZERO?\tLEVER-SETTING \\?CCL6\n\tPRINTI\t\"center\"\n\tJUMP\t?CND4\n?CCL6:\tEQUAL?\tLEVER-SETTING,1 \\?CCL8\n\tPRINTI\t\"upper\"\n\tJUMP\t?CND4\n?CCL8:\tPRINTI\t\"lower\"\n?CND4:\tPRINTI\t\" setting. The display, a digital readout, currently reads \"\n\tPRINTN\tSHUTTLE-VELOCITY\n\tPRINTI\t\". Through the cabin window you can see \"\n\tCALL\tDESCRIBE-VIEW\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tDESCRIBE-VIEW\n\tEQUAL?\tHERE,ALFIE-CONTROL-WEST \\?PRD5\n\tZERO?\tALFIE-AT-KALAMONTEE \\?CTR2\n?PRD5:\tEQUAL?\tHERE,BETTY-CONTROL-WEST \\?PRD8\n\tZERO?\tBETTY-AT-KALAMONTEE \\?CTR2\n?PRD8:\tEQUAL?\tHERE,ALFIE-CONTROL-EAST \\?PRD11\n\tZERO?\tALFIE-AT-KALAMONTEE /?CTR2\n?PRD11:\tEQUAL?\tHERE,BETTY-CONTROL-EAST \\?CCL3\n\tZERO?\tBETTY-AT-KALAMONTEE \\?CCL3\n?CTR2:\tPRINTI\t\"a featureless concrete wall.\"\n\tRTRUE\t\n?CCL3:\tZERO?\tSHUTTLE-MOVING /?CCL17\n\tEQUAL?\tSHUTTLE-COUNTER,23 \\?CCL17\n\tPRINTI\t\"parallel rails ending at a brightly-lit station ahead.\"\n\tRTRUE\t\n?CCL17:\tPRINTI\t\"parallel rails running along the floor of a long tunnel, vanishing in the distance.\"\n\tRTRUE\t\n\n\n\t.FUNCT\tSHUTTLE-DOOR-F\n\tEQUAL?\tPRSA,V?OPEN \\FALSE\n\tZERO?\tSHUTTLE-MOVING /?CCL6\n\tPRINTR\t\"A recorded voice says \"\"Operator should remain in control cabin while shuttle car is between stations.\"\"\"\n?CCL6:\tPRINTR\t\"Are you sure it isn't?\"\n\n\n\t.FUNCT\tSHUTTLE-ENTER-F\n\tEQUAL?\tHERE,KALAMONTEE-PLATFORM \\?CCL3\n\tEQUAL?\tPRSO,P?NORTH \\?CCL6\n\tZERO?\tBETTY-AT-KALAMONTEE /?CCL9\n\tRETURN\tSHUTTLE-CAR-BETTY\n?CCL9:\tPRINT\tCANT-GO\n\tCRLF\t\n\tRFALSE\t\n?CCL6:\tEQUAL?\tPRSO,P?SOUTH \\FALSE\n\tZERO?\tALFIE-AT-KALAMONTEE /?CCL14\n\tRETURN\tSHUTTLE-CAR-ALFIE\n?CCL14:\tPRINT\tCANT-GO\n\tCRLF\t\n\tRFALSE\t\n?CCL3:\tEQUAL?\tHERE,LAWANDA-PLATFORM \\FALSE\n\tEQUAL?\tPRSO,P?NORTH \\?CCL19\n\tZERO?\tBETTY-AT-KALAMONTEE /?CCL22\n\tPRINT\tCANT-GO\n\tCRLF\t\n\tRFALSE\t\n?CCL22:\tRETURN\tSHUTTLE-CAR-BETTY\n?CCL19:\tEQUAL?\tPRSO,P?SOUTH \\FALSE\n\tZERO?\tALFIE-AT-KALAMONTEE /?CCL27\n\tPRINT\tCANT-GO\n\tCRLF\t\n\tRFALSE\t\n?CCL27:\tRETURN\tSHUTTLE-CAR-ALFIE\n\n\n\t.FUNCT\tSHUTTLE-EXIT-F\n\tEQUAL?\tHERE,SHUTTLE-CAR-ALFIE \\?CCL3\n\tZERO?\tALFIE-AT-KALAMONTEE /?CCL6\n\tRETURN\tKALAMONTEE-PLATFORM\n?CCL6:\tRETURN\tLAWANDA-PLATFORM\n?CCL3:\tEQUAL?\tHERE,SHUTTLE-CAR-BETTY \\FALSE\n\tZERO?\tBETTY-AT-KALAMONTEE /?CCL11\n\tRETURN\tKALAMONTEE-PLATFORM\n?CCL11:\tRETURN\tLAWANDA-PLATFORM\n\n\n\t.FUNCT\tSHUTTLE-ACTIVATE\n\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST /?CCL3\n\tEQUAL?\tHERE,BETTY-CONTROL-EAST,BETTY-CONTROL-WEST /?CCL3\n\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tZERO?\tALFIE-BROKEN /?PRD9\n\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST /?CTR6\n?PRD9:\tZERO?\tBETTY-BROKEN /?CCL7\n\tEQUAL?\tHERE,BETTY-CONTROL-EAST,BETTY-CONTROL-WEST \\?CCL7\n?CTR6:\tPRINTR\t\"A garbled recording mentions that the shuttle car has undergone some damage and that the repair robot has been summoned.\"\n?CCL7:\tGRTR?\tINTERNAL-MOVES,6000 \\?CND1\n\tPRINTR\t\"A recorded voice explains that using the shuttle car during the evening hours requires special authorization.\"\n?CND1:\tEQUAL?\tHERE,ALFIE-CONTROL-EAST \\?CCL17\n\tZERO?\tSHUTTLE-ON /?CCL20\n\tPRINT\tSHUTTLE-RECORDING-1\n\tCRLF\t\n\tRTRUE\t\n?CCL20:\tZERO?\tALFIE-AT-KALAMONTEE \\?CCL22\n\tPRINT\tSHUTTLE-RECORDING-2\n\tCRLF\t\n\tRTRUE\t\n?CCL22:\tSET\t'SHUTTLE-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-SHUTTLE,80\n\tPUT\tSTACK,0,1\n\tPRINT\tSHUTTLE-RECORDING-3\n\tCRLF\t\n\tRTRUE\t\n?CCL17:\tEQUAL?\tHERE,ALFIE-CONTROL-WEST \\?CCL24\n\tZERO?\tSHUTTLE-ON /?CCL27\n\tPRINT\tSHUTTLE-RECORDING-1\n\tCRLF\t\n\tRTRUE\t\n?CCL27:\tZERO?\tALFIE-AT-KALAMONTEE /?CCL29\n\tPRINT\tSHUTTLE-RECORDING-2\n\tCRLF\t\n\tRTRUE\t\n?CCL29:\tSET\t'SHUTTLE-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-SHUTTLE,80\n\tPUT\tSTACK,0,1\n\tPRINT\tSHUTTLE-RECORDING-3\n\tCRLF\t\n\tRTRUE\t\n?CCL24:\tEQUAL?\tHERE,BETTY-CONTROL-EAST \\?CCL31\n\tZERO?\tSHUTTLE-ON /?CCL34\n\tPRINT\tSHUTTLE-RECORDING-1\n\tCRLF\t\n\tRTRUE\t\n?CCL34:\tZERO?\tBETTY-AT-KALAMONTEE \\?CCL36\n\tPRINT\tSHUTTLE-RECORDING-2\n\tCRLF\t\n\tRTRUE\t\n?CCL36:\tSET\t'SHUTTLE-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-SHUTTLE,80\n\tPUT\tSTACK,0,1\n\tPRINT\tSHUTTLE-RECORDING-3\n\tCRLF\t\n\tRTRUE\t\n?CCL31:\tEQUAL?\tHERE,BETTY-CONTROL-WEST \\?CCL38\n\tZERO?\tSHUTTLE-ON /?CCL41\n\tPRINT\tSHUTTLE-RECORDING-1\n\tCRLF\t\n\tRTRUE\t\n?CCL41:\tZERO?\tBETTY-AT-KALAMONTEE /?CCL43\n\tPRINT\tSHUTTLE-RECORDING-2\n\tCRLF\t\n\tRTRUE\t\n?CCL43:\tSET\t'SHUTTLE-ON,TRUE-VALUE\n\tCALL\tQUEUE,I-TURNOFF-SHUTTLE,80\n\tPUT\tSTACK,0,1\n\tPRINT\tSHUTTLE-RECORDING-3\n\tCRLF\t\n\tRTRUE\t\n?CCL38:\tPRINT\tWRONG-CARD\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tI-TURNOFF-SHUTTLE\n\tZERO?\tSHUTTLE-MOVING /?CCL3\n\tCALL\tQUEUE,I-TURNOFF-SHUTTLE,80\n\tPUT\tSTACK,0,1\n\tRFALSE\t\n?CCL3:\tSET\t'SHUTTLE-ON,FALSE-VALUE\n\tRFALSE\t\n\n\n\t.FUNCT\tLEVER-F\n\tEQUAL?\tPRSA,V?PUSH-UP,V?PUSH \\?CCL3\n\tZERO?\tSHUTTLE-ON /?CCL6\n\tEQUAL?\tLEVER-SETTING,1 \\?CCL9\n\tPRINTR\t\"The lever is already in the upper position.\"\n?CCL9:\tZERO?\tLEVER-SETTING \\?CCL11\n\tSET\t'LEVER-SETTING,1\n\tCALL\tQUEUE,I-SHUTTLE,1\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"The lever is now in the upper position.\"\n?CCL11:\tSET\t'LEVER-SETTING,0\n\tPRINTR\t\"The lever is now in the central position.\"\n?CCL6:\tPRINT\tSHUTTLE-RECORDING-4\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?PUSH-DOWN,V?PULL \\FALSE\n\tZERO?\tSHUTTLE-ON /?CCL16\n\tEQUAL?\tLEVER-SETTING,1 \\?CCL19\n\tSET\t'LEVER-SETTING,0\n\tPRINTR\t\"The lever is now in the central position.\"\n?CCL19:\tZERO?\tLEVER-SETTING \\?CCL21\n\tZERO?\tSHUTTLE-VELOCITY \\?CCL24\n\tPRINTR\t\"The lever immediately pops back to the central position.\"\n?CCL24:\tSET\t'LEVER-SETTING,-1\n\tCALL\tQUEUE,I-SHUTTLE,1\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"The lever is now in the lower position.\"\n?CCL21:\tPRINTR\t\"The lever is already in the lower position.\"\n?CCL16:\tPRINT\tSHUTTLE-RECORDING-4\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tI-SHUTTLE\n\tCALL\tQUEUE,I-SHUTTLE,-1\n\tPUT\tSTACK,0,1\n\tZERO?\tSHUTTLE-MOVING \\?CCL3\n\tSET\t'SHUTTLE-MOVING,TRUE-VALUE\n\tFCLEAR\tSHUTTLE-DOOR,OPENBIT\n\tFCLEAR\tSHUTTLE-DOOR,INVISIBLE\n\tPRINTI\t\"The control cabin door slides shut and the shuttle car begins to move \"\n\tEQUAL?\tLEVER-SETTING,1 \\FALSE\n\tADD\tSHUTTLE-VELOCITY,5 >SHUTTLE-VELOCITY\n\tPRINTR\t\"forward! The display changes to 5.\"\n?CCL3:\tGRTR?\tSHUTTLE-VELOCITY,0 \\?CND7\n\tINC\t'SHUTTLE-COUNTER\n?CND7:\tEQUAL?\tLEVER-SETTING,1 \\?CCL11\n\tADD\tSHUTTLE-VELOCITY,5 >SHUTTLE-VELOCITY\n\tJUMP\t?CND9\n?CCL11:\tEQUAL?\tLEVER-SETTING,-1 \\?CND9\n\tGRTR?\tSHUTTLE-VELOCITY,0 \\?CCL15\n\tSUB\tSHUTTLE-VELOCITY,5 >SHUTTLE-VELOCITY\n\tJUMP\t?CND9\n?CCL15:\tSET\t'LEVER-SETTING,0\n\tPRINTI\t\"The shuttle car comes to a stop and the lever pops back to the central position.\"\n\tCRLF\t\n?CND9:\tEQUAL?\tSHUTTLE-COUNTER,24 \\?CCL18\n\tCALL\tDESCRIBE-SHUTTLE-ARRIVE\n\tRSTACK\t\n?CCL18:\tGRTR?\tSHUTTLE-VELOCITY,0 \\FALSE\n\tCALL\tDESCRIBE-SHUTTLE-TRIP\n\tRTRUE\t\n\n\n\t.FUNCT\tDESCRIBE-SHUTTLE-TRIP\n\tPRINTI\t\"The shuttle car continues to move. The display \"\n\tZERO?\tLEVER-SETTING \\?CCL3\n\tPRINTI\t\"still reads \"\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"blinks, and now reads \"\n?CND1:\tPRINTN\tSHUTTLE-VELOCITY\n\tPRINTC\t46\n\tCRLF\t\n\tEQUAL?\tSHUTTLE-COUNTER,2 \\?CND4\n\tPRINTI\t\"You pass a sign which says \"\"Limit 45.\"\"\"\n\tCRLF\t\n?CND4:\tEQUAL?\tSHUTTLE-COUNTER,12 \\?CND6\n\tPRINTI\t\"The tunnel levels out and begins to slope upward. A sign flashes by which reads \"\"Hafwaa Mark -- Beegin Deeseluraashun.\"\"\"\n\tCRLF\t\n?CND6:\tEQUAL?\tSHUTTLE-COUNTER,20 \\?CND8\n\tPRINT\tSIGN-PASS\n\tPRINTI\t\"\"\"15.\"\"\"\n\tCRLF\t\n?CND8:\tEQUAL?\tSHUTTLE-COUNTER,21 \\?CND10\n\tPRINT\tSIGN-PASS\n\tPRINTI\t\"\"\"10.\"\"\"\n\tCRLF\t\n?CND10:\tEQUAL?\tSHUTTLE-COUNTER,22 \\?CND12\n\tPRINT\tSIGN-PASS\n\tPRINTI\t\"\"\"5.\"\"\"\n\tCRLF\t\n?CND12:\tEQUAL?\tSHUTTLE-COUNTER,23 \\FALSE\n\tPRINTR\t\"The shuttle car is approaching a brightly-lit area. As you near it, you make out the concrete platforms of a shuttle station.\"\n\n\n\t.FUNCT\tDESCRIBE-SHUTTLE-ARRIVE\n\tEQUAL?\tSHUTTLE-COUNTER,24 \\FALSE\n\tZERO?\tSHUTTLE-VELOCITY \\?CCL6\n\tPRINTI\t\"The shuttle car glides into the station and comes to rest at the concrete platform. You hear the cabin doors slide open.\"\n\tCRLF\t\n\tJUMP\t?CND4\n?CCL6:\tLESS?\tSHUTTLE-VELOCITY,20 \\?CCL8\n\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST \\?CCL11\n\tSET\t'ALFIE-BROKEN,TRUE-VALUE\n\tJUMP\t?CND9\n?CCL11:\tSET\t'BETTY-BROKEN,TRUE-VALUE\n?CND9:\tPRINTI\t\"The shuttle car rumbles through the station and smashes into the wall at the far end. You are thrown forward into the control panel. Both you and the shuttle car produce unhealthy crunching sounds as the cabin doors creak slowly open.\"\n\tCRLF\t\n\tJUMP\t?CND4\n?CCL8:\tCALL\tJIGS-UP,STR?42\n?CND4:\tSET\t'SHUTTLE-VELOCITY,0\n\tSET\t'SHUTTLE-MOVING,FALSE-VALUE\n\tSET\t'SHUTTLE-COUNTER,0\n\tSET\t'LEVER-SETTING,0\n\tSET\t'SHUTTLE-ON,FALSE-VALUE\n\tFSET\tSHUTTLE-DOOR,INVISIBLE\n\tFSET\tSHUTTLE-DOOR,OPENBIT\n\tCALL\tINT,I-SHUTTLE\n\tPUT\tSTACK,0,0\n\tEQUAL?\tHERE,ALFIE-CONTROL-EAST,ALFIE-CONTROL-WEST \\?CCL14\n\tZERO?\tALFIE-AT-KALAMONTEE /?CCL17\n\tSET\t'ALFIE-AT-KALAMONTEE,FALSE-VALUE\n\tRETURN\tALFIE-AT-KALAMONTEE\n?CCL17:\tSET\t'ALFIE-AT-KALAMONTEE,TRUE-VALUE\n\tRETURN\tALFIE-AT-KALAMONTEE\n?CCL14:\tZERO?\tBETTY-AT-KALAMONTEE /?CCL20\n\tSET\t'BETTY-AT-KALAMONTEE,FALSE-VALUE\n\tRETURN\tBETTY-AT-KALAMONTEE\n?CCL20:\tSET\t'BETTY-AT-KALAMONTEE,TRUE-VALUE\n\tRETURN\tBETTY-AT-KALAMONTEE\n\n\n\t.FUNCT\tI-SLEEP-WARNINGS\n\tINC\t'SLEEPY-LEVEL\n\tIN?\tADVENTURER,BED \\?CND1\n\tCRLF\t\n\tPRINTI\t\"You suddenly realize how tired you were and how comfortable the bed is. You should be asleep in no time.\"\n\tCRLF\t\n\tCALL\tINT,I-SLEEP-WARNINGS\n\tPUT\tSTACK,0,0\n\tCALL\tQUEUE,I-FALL-ASLEEP,16\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CND1:\tEQUAL?\tSLEEPY-LEVEL,1 \\?CCL5\n\tCRLF\t\n\tPRINTI\t\"You begin to feel weary. It might be time to think about finding a nice safe place to sleep.\"\n\tCRLF\t\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,400\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL5:\tEQUAL?\tSLEEPY-LEVEL,2 \\?CCL7\n\tCRLF\t\n\tPRINTI\t\"You're really tired now. You'd better find a place to sleep real soon.\"\n\tCRLF\t\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,135\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL7:\tEQUAL?\tSLEEPY-LEVEL,3 \\?CCL9\n\tCRLF\t\n\tPRINTI\t\"If you don't get some sleep soon you'll probably drop.\"\n\tCRLF\t\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,60\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL9:\tEQUAL?\tSLEEPY-LEVEL,4 \\?CCL11\n\tCRLF\t\n\tPRINTI\t\"You can barely keep your eyes open.\"\n\tCRLF\t\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,50\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL11:\tEQUAL?\tSLEEPY-LEVEL,5 \\FALSE\n\tEQUAL?\tHERE,BED \\?CCL16\n\tCRLF\t\n\tPRINTI\t\"You slowly sink into a deep and blissful sleep.\"\n\tCRLF\t\n\tCALL\tDREAMING\n\tRSTACK\t\n?CCL16:\tEQUAL?\tHERE,DORM-A,DORM-B /?CTR17\n\tEQUAL?\tHERE,DORM-C,DORM-D \\?CCL18\n?CTR17:\tCRLF\t\n\tPRINTI\t\"You climb into one of the bunk beds and immediately fall asleep.\"\n\tCRLF\t\n\tMOVE\tADVENTURER,BED\n\tCALL\tDREAMING\n\tRSTACK\t\n?CCL18:\tCRLF\t\n\tPRINTI\t\"You can't stay awake a moment longer. You drop to the ground and fall into a deep but fitful sleep.\"\n\tCRLF\t\n\tEQUAL?\tDAY,1 \\?PRD25\n\tEQUAL?\tHERE,CRAG /?CTR22\n?PRD25:\tEQUAL?\tDAY,3 \\?PRD28\n\tEQUAL?\tHERE,BALCONY /?CTR22\n?PRD28:\tEQUAL?\tDAY,5 \\?CCL23\n\tEQUAL?\tHERE,WINDING-STAIR \\?CCL23\n?CTR22:\tCALL\tJIGS-UP,STR?44\n\tRSTACK\t\n?CCL23:\tRANDOM\t100\n\tLESS?\t30,STACK /?CCL34\n\tCALL\tJIGS-UP,STR?45\n\tRSTACK\t\n?CCL34:\tCALL\tDREAMING\n\tRSTACK\t\n\n\n\t.FUNCT\tBED-F,RARG=M-OBJECT\n\tEQUAL?\tPRSA,V?WALK \\?CCL3\n\tEQUAL?\tRARG,M-BEG \\?CCL3\n\tPRINTR\t\"You'll have to stand up, first.\"\n?CCL3:\tEQUAL?\tPRSA,V?RUB /?PRD9\n\tEQUAL?\tPRSA,V?CLOSE,V?OPEN,V?TAKE \\?CCL7\n?PRD9:\tEQUAL?\tRARG,M-BEG \\?CCL7\n\tEQUAL?\tPRSO,BED /?CCL7\n\tPRINTR\t\"You can't reach it from here.\"\n?CCL7:\tZERO?\tRARG \\FALSE\n\tEQUAL?\tPRSA,V?WALK-TO,V?BOARD,V?THROUGH \\?CCL16\n\tEQUAL?\tHERE,INFIRMARY \\?CCL19\n\tCALL\tJIGS-UP,STR?46\n\tRSTACK\t\n?CCL19:\tGRTR?\tSLEEPY-LEVEL,0 \\?CCL21\n\tMOVE\tADVENTURER,BED\n\tCALL\tQUEUE,I-FALL-ASLEEP,16\n\tPUT\tSTACK,0,1\n\tCALL\tINT,I-SLEEP-WARNINGS\n\tPUT\tSTACK,0,0\n\tPRINTR\t\"Ahhh...the bed is soft and comfortable. You should be asleep in short order.\"\n?CCL21:\tMOVE\tADVENTURER,BED\n\tPRINTR\t\"You are now in bed.\"\n?CCL16:\tEQUAL?\tPRSA,V?DROP /?PRD25\n\tEQUAL?\tPRSA,V?EXIT,V?STAND,V?DISEMBARK \\?CCL23\n?PRD25:\tCALL\tINT,I-FALL-ASLEEP\n\tGET\tSTACK,C-TICK\n\tZERO?\tSTACK /?CCL23\n\tPRINTR\t\"How could you suggest such a thing when you're so tired and this bed is so comfy?\"\n?CCL23:\tEQUAL?\tPRSA,V?DROP,V?EXIT,V?LEAVE \\?CCL29\n\tCALL\tPERFORM,V?DISEMBARK,BED\n\tRTRUE\t\n?CCL29:\tEQUAL?\tPRSA,V?PUT \\FALSE\n\tEQUAL?\tBED,PRSI \\FALSE\n\tMOVE\tPRSO,HERE\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" bounces off the bed and lands on the floor.\"\n\n\n\t.FUNCT\tI-FALL-ASLEEP\n\tCRLF\t\n\tPRINTI\t\"You slowly sink into a deep and restful sleep.\"\n\tCRLF\t\n\tCALL\tINT,I-FALL-ASLEEP\n\tPUT\tSTACK,0,0\n\tCALL\tDREAMING\n\tRSTACK\t\n\n\n\t.FUNCT\tDREAMING\n\tFSET?\tFORK,TOUCHBIT \\?CCL3\n\tRANDOM\t100\n\tLESS?\t13,STACK /?CCL3\n\tPRINTI\t\"You are in a busy office crowded with people. The only one you recognize is Floyd. He rushes back and forth between the desks, carrying papers and delivering coffee. He notices you, and asks how your project is coming, and whether you have time to tell him a story. You look into his deep, trusting eyes...\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL3:\tRANDOM\t100\n\tLESS?\t60,STACK /?CND1\n\tCRLF\t\n\tCALL\tPICK-ONE,DREAMS\n\tPRINT\tSTACK\n\tCRLF\t\n?CND1:\tCALL\tWAKING-UP\n\tRSTACK\t\n\n\n\t.FUNCT\tWAKING-UP,X,N\n\tINC\t'DAY\n\tSET\t'SICKNESS-WARNING-FLAG,TRUE-VALUE\n\tSET\t'SLEEPY-LEVEL,0\n\tCALL\tRESET-TIME\n\tFIRST?\tADVENTURER >X /?PRG2\n?PRG2:\tZERO?\tX /?REP3\n\tNEXT?\tX >N /?BOGUS7\n?BOGUS7:\tFSET?\tX,WORNBIT /?CND8\n\tMOVE\tX,HERE\n?CND8:\tEQUAL?\tX,CANTEEN \\?CND10\n\tIN?\tHIGH-PROTEIN,CANTEEN \\?CND10\n\tFSET?\tCANTEEN,OPENBIT \\?CND10\n\tREMOVE\tHIGH-PROTEIN\n?CND10:\tEQUAL?\tX,FLASK \\?CND15\n\tIN?\tCHEMICAL-FLUID,FLASK \\?CND15\n\tREMOVE\tCHEMICAL-FLUID\n?CND15:\tSET\t'X,N\n\tJUMP\t?PRG2\n?REP3:\tPRINTI\t\"\n***** SEPTEM \"\n\tADD\tDAY,5\n\tPRINTN\tSTACK\n\tPRINTI\t\", 11344 *****\n\n\"\n\tIN?\tADVENTURER,BED /?CCL21\n\tPRINTI\t\"You wake and slowly stand up, feeling stiff from your night on the floor.\"\n\tJUMP\t?CND19\n?CCL21:\tLESS?\tSICKNESS-LEVEL,3 \\?CCL23\n\tPRINTI\t\"You wake up feeling refreshed and ready to face the challenges of this mysterious world.\"\n\tJUMP\t?CND19\n?CCL23:\tLESS?\tSICKNESS-LEVEL,6 \\?CCL25\n\tPRINTI\t\"You wake after sleeping restlessly. You feel weak and listless.\"\n\tJUMP\t?CND19\n?CCL25:\tPRINTI\t\"You wake feeling weak and worn-out. It will be an effort just to stand up.\"\n?CND19:\tGRTR?\tHUNGER-LEVEL,0 \\?CCL28\n\tSET\t'HUNGER-LEVEL,4\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,100\n\tPUT\tSTACK,0,1\n\tPRINTI\t\" You are also incredibly famished. Better get some breakfast!\"\n\tJUMP\t?CND26\n?CCL28:\tCALL\tQUEUE,I-HUNGER-WARNINGS,400\n\tPUT\tSTACK,0,1\n?CND26:\tCRLF\t\n\tFSET?\tFLOYD,RLANDBIT \\FALSE\n\tZERO?\tFLOYD-INTRODUCED /FALSE\n\tMOVE\tFLOYD,HERE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tIN?\tADVENTURER,BED \\?CCL36\n\tPRINTR\t\"Floyd bounces impatiently at the foot of the bed. \"\"About time you woke up, you lazy bones! Let's explore around some more!\"\"\"\n?CCL36:\tPRINTR\t\"Floyd gives you a nudge with his foot and giggles. \"\"You sure look silly sleeping on the floor,\"\" he says.\"\n\n\n\t.FUNCT\tRESET-TIME\n\tEQUAL?\tDAY,2 \\?CCL3\n\tFCLEAR\tBALCONY,TOUCHBIT\n\tRANDOM\t80\n\tADD\t1600,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,5800\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL3:\tEQUAL?\tDAY,3 \\?CCL5\n\tFCLEAR\tBALCONY,TOUCHBIT\n\tRANDOM\t80\n\tADD\t1750,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,5550\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL5:\tEQUAL?\tDAY,4 \\?CCL7\n\tFCLEAR\tWINDING-STAIR,TOUCHBIT\n\tRANDOM\t80\n\tADD\t1950,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,5200\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL7:\tEQUAL?\tDAY,5 \\?CCL9\n\tFCLEAR\tWINDING-STAIR,TOUCHBIT\n\tRANDOM\t80\n\tADD\t2150,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,4800\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL9:\tEQUAL?\tDAY,6 \\?CCL11\n\tFCLEAR\tCOURTYARD,TOUCHBIT\n\tRANDOM\t80\n\tADD\t2450,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,4300\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL11:\tEQUAL?\tDAY,7 \\?CCL13\n\tFCLEAR\tCOURTYARD,TOUCHBIT\n\tRANDOM\t80\n\tADD\t2800,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,3700\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL13:\tEQUAL?\tDAY,8 \\?CCL15\n\tRANDOM\t80\n\tADD\t3200,STACK >INTERNAL-MOVES\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,3000\n\tPUT\tSTACK,0,1\n\tRTRUE\t\n?CCL15:\tEQUAL?\tDAY,9 \\FALSE\n\tCALL\tJIGS-UP,STR?52\n\tRSTACK\t\n\n\n\t.FUNCT\tI-HUNGER-WARNINGS\n\tINC\t'HUNGER-LEVEL\n\tEQUAL?\tHUNGER-LEVEL,1 \\?CCL3\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,450\n\tPUT\tSTACK,0,1\n\tCRLF\t\n\tPRINTR\t\"A growl from your stomach warns that you're getting pretty hungry and thirsty.\"\n?CCL3:\tEQUAL?\tHUNGER-LEVEL,2 \\?CCL5\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,150\n\tPUT\tSTACK,0,1\n\tCRLF\t\n\tPRINTR\t\"You're now really ravenous and your lips are quite parched.\"\n?CCL5:\tEQUAL?\tHUNGER-LEVEL,3 \\?CCL7\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,100\n\tPUT\tSTACK,0,1\n\tCRLF\t\n\tPRINTR\t\"You're starting to feel faint from lack of food and liquid.\"\n?CCL7:\tEQUAL?\tHUNGER-LEVEL,4 \\?CCL9\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,50\n\tPUT\tSTACK,0,1\n\tCRLF\t\n\tPRINTR\t\"If you don't eat or drink something in a few millichrons, you'll probably pass out.\"\n?CCL9:\tEQUAL?\tHUNGER-LEVEL,5 \\FALSE\n\tCALL\tJIGS-UP,STR?53\n\tRSTACK\t\n\n\n\t.FUNCT\tI-SICKNESS-WARNINGS\n\tCALL\tQUEUE,I-SICKNESS-WARNINGS,700\n\tPUT\tSTACK,0,1\n\tZERO?\tSICKNESS-WARNING-FLAG /FALSE\n\tSET\t'SICKNESS-WARNING-FLAG,FALSE-VALUE\n\tSUB\tLOAD-ALLOWED,10 >LOAD-ALLOWED\n\tINC\t'SICKNESS-LEVEL\n\tEQUAL?\tSICKNESS-LEVEL,1 \\?CCL6\n\tCRLF\t\n\tPRINTR\t\"You notice that you feel a bit weak and slightly flushed, but you're not sure why.\"\n?CCL6:\tEQUAL?\tSICKNESS-LEVEL,2 \\?CCL8\n\tCRLF\t\n\tPRINTR\t\"You notice that you feel unusually weak, and you suspect that you have a fever.\"\n?CCL8:\tEQUAL?\tSICKNESS-LEVEL,3 \\?CCL10\n\tCRLF\t\n\tPRINTR\t\"You are now feeling quite under the weather, not unlike a bad flu.\"\n?CCL10:\tEQUAL?\tSICKNESS-LEVEL,4 \\?CCL12\n\tCRLF\t\n\tPRINTR\t\"Your fever seems to have gotten worse, and you're developing a bad headache.\"\n?CCL12:\tEQUAL?\tSICKNESS-LEVEL,5 \\?CCL14\n\tCRLF\t\n\tPRINTR\t\"Your health has deteriorated further. You feel hot and weak, and your head is throbbing.\"\n?CCL14:\tEQUAL?\tSICKNESS-LEVEL,6 \\?CCL16\n\tCRLF\t\n\tPRINTR\t\"You feel very, very sick, and have almost no strength left.\"\n?CCL16:\tEQUAL?\tSICKNESS-LEVEL,7 \\?CCL18\n\tCRLF\t\n\tPRINTR\t\"You feel like you're on fire, burning up from the fever. You're almost too weak to move, and your brain is reeling from the pounding headache.\"\n?CCL18:\tEQUAL?\tSICKNESS-LEVEL,8 \\?CCL20\n\tCRLF\t\n\tPRINTR\t\"You're no longer sure of where you are and what you're doing. You stumble about, your pain subsiding into a dull numbness.\"\n?CCL20:\tEQUAL?\tSICKNESS-LEVEL,9 \\FALSE\n\tCALL\tJIGS-UP,STR?55\n\tRSTACK\t\n\n\n\t.FUNCT\tTRANSLATOR-PSEUDO\n\tIN?\tAMBASSADOR,HERE \\?CCL3\n\tEQUAL?\tPRSA,V?TAKE \\?CCL6\n\tPRINTR\t\"The ambassador whimpers and slaps your wrist.\"\n?CCL6:\tEQUAL?\tPRSA,V?MUNG \\FALSE\n\tPRINTR\t\"Are you trying to create an interplanetary incident?\"\n?CCL3:\tPRINTR\t\"What translator?\"\n\n\n\t.FUNCT\tSLIME-PSEUDO\n\tIN?\tAMBASSADOR,HERE /?CTR2\n\tGRTR?\tAMBASSADOR-LEAVE,0 \\?CCL3\n?CTR2:\tEQUAL?\tPRSA,V?TASTE,V?EAT \\?CCL8\n\tCALL\tLIKE-SLIME,STR?56\n\tRSTACK\t\n?CCL8:\tEQUAL?\tPRSA,V?RUB,V?TAKE \\?CCL10\n\tCALL\tLIKE-SLIME,STR?57\n\tRSTACK\t\n?CCL10:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL12\n\tCALL\tLIKE-SLIME,STR?58\n\tRSTACK\t\n?CCL12:\tEQUAL?\tPRSA,V?SMELL \\?CCL14\n\tCALL\tLIKE-SLIME,STR?59\n\tRSTACK\t\n?CCL14:\tEQUAL?\tPRSA,V?REMOVE,V?SCRUB \\FALSE\n\tPRINTI\t\"Whew. You've cleaned up maybe one ten-thousandth of the slime.\"\n\tIN?\tBLATHER,HERE /?CND17\n\tPRINTR\t\" If you hurry, it might be all cleaned up before Ensign Blather gets here.\"\n?CND17:\tCRLF\t\n\tRTRUE\t\n?CCL3:\tPRINTR\t\"What slime?\"\n\n\n\t.FUNCT\tLIKE-SLIME,STRING\n\tPRINTI\t\"It \"\n\tPRINT\tSTRING\n\tPRINTR\t\" like slime. Aren't you glad you didn't step in it?\"\n\n\n\t.FUNCT\tGRAFFITI-PSEUDO\n\tEQUAL?\tPRSA,V?READ \\FALSE\n\tSET\t'C-ELAPSED,28\n\tPRINTR\t\"All the graffiti seem to be about Blather. One of the least obscene items reads:\n\nThere once was a krip, name of Blather\nWho told a young Ensign named Smather\n\"\"I'll make you inherit\nA trotting demerit\nAnd ship you off to those stinking fawg-infested tar-pools of Krather.\"\"\n\nIt's not a very good limerick, is it?\"\n\n\n\t.FUNCT\tDOOR-PSEUDO\n\tEQUAL?\tPRSA,V?UNLOCK,V?OPEN \\FALSE\n\tPRINTR\t\"No way, Jose.\"\n\n\n\t.FUNCT\tWALKWAY-PSEUDO\n\tEQUAL?\tPRSA,V?LAMP-ON,V?EXAMINE \\FALSE\n\tPRINTR\t\"The walkway, which hastened the trip down that long corridor, is no longer in service.\"\n\n\n\t.FUNCT\tBENCH-PSEUDO\n\tEQUAL?\tPRSA,V?BOARD,V?CLIMB-ON \\FALSE\n\tPRINTR\t\"The benches look uncomfortable.\"\n\n\n\t.FUNCT\tCATWALK-PSEUDO\n\tEQUAL?\tPRSA,V?CLIMB-FOO,V?CLIMB-UP,V?CLIMB-ON \\FALSE\n\tPRINTR\t\"The catwalks are too high for you to access.\"\n\n\n\t.FUNCT\tEQUIPMENT-PSEUDO\n\tEQUAL?\tPRSA,V?LAMP-OFF /?CCL3\n\tEQUAL?\tPRSA,V?LAMP-ON,V?RUB,V?EXAMINE \\FALSE\n?CCL3:\tPRINTR\t\"The equipment here is so complicated that you couldn't even begin to figure out how to operate it.\"\n\n\n\t.FUNCT\tMONITORS-PSEUDO\n\tEQUAL?\tPRSA,V?READ,V?EXAMINE \\FALSE\n\tCALL\tDESCRIBE-MONITORS\n\tRSTACK\t\n\n\n\t.FUNCT\tMURAL-PSEUDO\n\tZERO?\tCOMPUTER-FIXED /?CCL3\n\tCALL\tANYMORE\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\?CCL6\n\tPRINTR\t\"It's a gaudy work of orange and purple abstract shapes, reminiscent of the early works of Burstini Bonz. It doesn't appear to fit the decor of the room at all. The mural seems to ripple now and then, as though a breeze were blowing behind it.\"\n?CCL6:\tEQUAL?\tPRSA,V?MUNG \\?CCL8\n\tPRINTR\t\"My sentiments also, but let's be civil.\"\n?CCL8:\tEQUAL?\tPRSA,V?LOOK-BEHIND,V?MOVE \\FALSE\n\tPRINTR\t\"It won't budge.\"\n\n\n\t.FUNCT\tLOGO-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE,V?READ \\FALSE\n\tPRINTR\t\"The logo shows a flame burning over a sleep chamber of some type. Under that is the phrase \"\"Prajekt Kuntrool.\"\"\"\n\n\n\t.FUNCT\tKEYBOARD-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"It is a standard numeric keyboard with ten keys labelled from 0 through 9.\"\n\n\n\t.FUNCT\tCRACK-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"The crack is too small to go through, but large enough to look through.\"\n?CCL3:\tEQUAL?\tPRSA,V?LOOK-INSIDE \\FALSE\n\tEQUAL?\tHERE,RADIATION-LAB \\?CCL8\n\tPRINTR\t\"You see a dimly lit Bio Lab. Sinister shapes lurk about within.\"\n?CCL8:\tPRINTR\t\"You see a laboratory suffused with a pale blue glow.\"\n\n\n\t.FUNCT\tVOID-PSEUDO\n\tEQUAL?\tPRSA,V?PUT \\?CCL3\n\tEQUAL?\tPRSI,PSEUDO-OBJECT \\?CCL3\n\tCALL\tPERFORM,V?THROW-OFF,PRSO,STRIP\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?ZAP \\?CCL7\n\tEQUAL?\tPRSO,LASER \\?CCL7\n\tEQUAL?\tPRSI,PSEUDO-OBJECT \\?CCL7\n\tSET\t'PRSI,FALSE-VALUE\n\tCALL\tPERFORM,V?ZAP,LASER\n\tRTRUE\t\n?CCL7:\tEQUAL?\tPRSA,V?LEAP,V?THROUGH \\?CCL12\n\tCALL\tJIGS-UP,STR?60\n\tRSTACK\t\n?CCL12:\tEQUAL?\tPRSA,V?EXAMINE,V?LOOK-INSIDE \\FALSE\n\tPRINTR\t\"The void extends downward into the gloom far below.\"\n\n\n\t.FUNCT\tSPOUT-PSEUDO\n\tEQUAL?\tPRSA,V?PUT-UNDER \\?CCL3\n\tEQUAL?\tPRSO,CANTEEN \\?CCL3\n\tCALL\tPERFORM,V?PUT,CANTEEN,DISPENSER\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?LOOK-UNDER \\FALSE\n\tIN?\tCANTEEN,DISPENSER \\FALSE\n\tPRINTR\t\"The canteen is sitting under the spout.\"\n\n\n\t.FUNCT\tTOILET-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"The fixtures are all dry and dusty.\"\n?CCL3:\tEQUAL?\tPRSA,V?FLUSH \\FALSE\n\tPRINTR\t\"The water seems to be turned off.\"\n\n\n\t.FUNCT\tGAMES-PSEUDO\n\tEQUAL?\tPRSA,V?PLAY \\?CCL3\n\tCALL\tPERFORM,V?PLAY,GLOBAL-GAMES\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"All the usual games -- Chess, Cribbage, Galactic Overlord, Double Fannucci...\"\n\n\n\t.FUNCT\tTAPES-PSEUDO\n\tEQUAL?\tPRSA,V?TAKE,V?PLAY,V?READ \\?CCL3\n\tPRINTR\t\"Hardly the time or place for reading recreational tapes.\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"Let's see...here are some musical selections, here are some bestselling romantic novels, here is a biography of a famous Double Fannucci champion...\"\n\n\n\t.FUNCT\tPARTITION-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"The partitions are very plain, and were obviously intended to separate this huge room into smaller areas.\"\n\n\n\t.FUNCT\tCUBBYHOLE-PSEUDO\n\tEQUAL?\tPRSA,V?LOOK-INSIDE,V?EXAMINE \\FALSE\n\tPRINTR\t\"The cubbyholes look like the kind that are used to hold maps or blueprints. They are all empty now.\"\n\n\n\t.FUNCT\tMAPS-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"Examining the maps reveals no new information.\"\n\n\n\t.FUNCT\tDEVICES-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"They are components of disassembled robots, beyond repair.\"\n\n\n\t.FUNCT\tCABLES-PSEUDO\n\tEQUAL?\tPRSA,V?FOLLOW,V?EXAMINE \\?CCL3\n\tPRINTR\t\"These heavy cables merely run from the two consoles up into the ceiling.\"\n?CCL3:\tEQUAL?\tPRSA,V?MUNG \\FALSE\n\tCALL\tJIGS-UP,STR?61\n\tRSTACK\t\n\n\n\t.FUNCT\tSTRUCTURE-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\?CCL3\n\tPRINTR\t\"You'd be able to tell more about it if you climbed up to it.\"\n?CCL3:\tEQUAL?\tPRSA,V?CLIMB-UP \\FALSE\n\tCALL\tDO-WALK,P?UP\n\tRSTACK\t\n\n\n\t.FUNCT\tBUTTON-PSEUDO\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tFSET?\tDISPENSER,MUNGEDBIT \\?CCL6\n\tPRINTR\t\"The dispenser sputters a few times.\"\n?CCL6:\tIN?\tCANTEEN,DISPENSER \\?CCL8\n\tFSET?\tCANTEEN,OPENBIT /?CCL11\n\tPRINTR\t\"A thick, brown liquid spills over the closed canteen, dribbles down the side of the machine, and forms a puddle on the floor which quickly dries up.\"\n?CCL11:\tIN?\tHIGH-PROTEIN,CANTEEN \\?CCL13\n\tPRINTI\t\"The brown liquid splashes over the mouth of the already-filled canteen, creating a mess\"\n\tFSET?\tPATROL-UNIFORM,WORNBIT \\?CND14\n\tPRINTI\t\" and staining your uniform\"\n?CND14:\tPRINTR\t\".\"\n?CCL13:\tMOVE\tHIGH-PROTEIN,CANTEEN\n\tPRINTR\t\"The canteen fills almost to the brim with a brown liquid.\"\n?CCL8:\tPRINTR\t\"A thick, brownish liquid pours from the spout and splashes to the floor, where it quickly evaporates.\"\n\n\n\t.FUNCT\tCARPET-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"It's pretty dusty.\"\n\n\n\t.FUNCT\tCABINETS-PSEUDO\n\tEQUAL?\tPRSA,V?OPEN,V?EXAMINE \\?CCL3\n\tPRINTR\t\"The cabinets are locked.\"\n?CCL3:\tEQUAL?\tPRSA,V?UNLOCK \\FALSE\n\tPRINTR\t\"You don't have the correct key.\"\n\n\n\t.FUNCT\tPLATE-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"The plates seem to be featureless metal squares.\"\n\n\n\t.FUNCT\tESCALATOR-PSEUDO\n\tEQUAL?\tPRSA,V?CLIMB-FOO,V?CLIMB-UP \\?CCL3\n\tEQUAL?\tHERE,FORK \\?CCL6\n\tPRINTR\t\"You're already at the top of the escalator.\"\n?CCL6:\tCALL\tDO-WALK,P?UP\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSA,V?CLIMB-DOWN \\?CCL8\n\tEQUAL?\tHERE,LAWANDA-PLATFORM \\?CCL11\n\tPRINTR\t\"You're already at the bottom of the escalator.\"\n?CCL11:\tCALL\tDO-WALK,P?DOWN\n\tRSTACK\t\n?CCL8:\tEQUAL?\tPRSA,V?LAMP-ON \\FALSE\n\tCALL\tPICK-ONE,YUKS\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tREACTOR-BUTTON-PSEUDO\n\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tFSET\tREACTOR-ELEVATOR-DOOR,OPENBIT\n\tCALL\tQUEUE,I-REACTOR-DOOR-CLOSE,30\n\tPUT\tSTACK,0,1\n\tPRINTR\t\"The metal doors slide open, revealing a small room to the east.\"\n\n\n\t.FUNCT\tSUPPLIES-PSEUDO\n\tEQUAL?\tPRSA,V?TAKE \\FALSE\n\tPRINTR\t\"These supplies are of absolutely no use.\"\n\n\n\t.FUNCT\tDESK-PSEUDO\n\tEQUAL?\tPRSA,V?OPEN \\?CCL3\n\tPRINTR\t\"All the drawers are empty.\"\n?CCL3:\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"It is bare except for the microfilm reader.\"\n\n\n\t.FUNCT\tCRYO-BUTTON-PSEUDO\n\tEQUAL?\tPRSA,V?PUSH \\?CCL3\n\tZERO?\tCRYO-SCORE-FLAG \\?CCL3\n\tCALL\tQUEUE,I-CRYO-ELEVATOR-ARRIVE,100\n\tPUT\tSTACK,0,1\n\tCALL\tINT,I-CHASE-SCENE\n\tPUT\tSTACK,0,0\n\tFCLEAR\tCRYO-ELEVATOR-DOOR,OPENBIT\n\tSET\t'CRYO-SCORE-FLAG,TRUE-VALUE\n\tADD\tSCORE,5 >SCORE\n\tPRINTR\t\"The elevator door closes just as the monsters reach it! You slump back against the wall, exhausted from the chase. The elevator begins to move downward.\"\n?CCL3:\tEQUAL?\tPRSA,V?PUSH \\FALSE\n\tZERO?\tCRYO-SCORE-FLAG /FALSE\n\tFSET?\tCRYO-ELEVATOR-DOOR,OPENBIT \\FALSE\n\tCALL\tJIGS-UP,STR?62\n\tRSTACK\t\n\n\n\t.FUNCT\tCASTLE-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE \\FALSE\n\tPRINTR\t\"The castle is ancient and crumbling.\"\n\n\n\t.FUNCT\tCHEM-SPOUT-PSEUDO\n\tEQUAL?\tPRSA,V?PUT-UNDER \\?CCL3\n\tEQUAL?\tPRSI,PSEUDO-OBJECT \\?CCL3\n\tCALL\tPERFORM,V?PUT-UNDER,PRSO,CHEMICAL-DISPENSER\n\tRTRUE\t\n?CCL3:\tEQUAL?\tPRSA,V?LOOK-UNDER \\FALSE\n\tZERO?\tSPOUT-PLACED /FALSE\n\tPRINTI\t\"There is \"\n\tCALL\tA-AN\n\tPRINTD\tSPOUT-PLACED\n\tPRINTR\t\" under the spout.\"\n\n\n\t.FUNCT\tCLEFT-PSEUDO\n\tEQUAL?\tPRSA,V?CLIMB-FOO,V?CLIMB-UP \\FALSE\n\tCALL\tDO-WALK,P?UP\n\tRSTACK\t\n\n\n\t.FUNCT\tRUBBLE-PSEUDO\n\tEQUAL?\tPRSA,V?MOVE \\FALSE\n\tCALL\tPICK-ONE,YUKS\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tPLAQUE-PSEUDO\n\tEQUAL?\tPRSA,V?EXAMINE,V?READ \\FALSE\n\tPRINTR\t\"\nSEENIK VISTA \nXis stuneeng vuu uf xee Kalamontee Valee kuvurz oovur fortee skwaar miilz uf xat faamus tuurist spot. Xee larj bildeeng at xee bend in xee Gulmaan Rivur iz xee formur pravincul kapitul bildeeng.\"\n\n\n\t.FUNCT\tFENCE-PSEUDO\n\tEQUAL?\tPRSA,V?LEAP,V?CLIMB-FOO,V?CLIMB-UP \\FALSE\n\tPRINTR\t\"You can't.\"\n\n\n\t.FUNCT\tLOCK-PSEUDO\n\tEQUAL?\tPRSA,V?UNLOCK,V?OPEN \\FALSE\n\tZERO?\tPRSI /?CCL6\n\tPRINTR\t\"That won't unlock it.\"\n?CCL6:\tPRINTR\t\"But you don't have the orange key!\"\n\n\n\t.FUNCT\tDIAGRAM-PSEUDO\n\tEQUAL?\tPRSA,V?READ \\FALSE\n\tPRINTR\t\"Not unless you've taken a special twelve-year course in ninth-order molecular physics.\"\n\n\n\t.FUNCT\tENUNCIATOR-PSEUDO\n\tEQUAL?\tPRSA,V?MOVE,V?PUSH,V?LOOK-INSIDE \\FALSE\n\tCALL\tPICK-ONE,YUKS\n\tPRINT\tSTACK\n\tRTRUE\t\n\n\n\t.FUNCT\tNEAR-BOOTH-PSEUDO\n\tEQUAL?\tPRSA,V?DISEMBARK,V?EXIT,V?DROP \\?CCL3\n\tPRINTR\t\"You're not in the booth!\"\n?CCL3:\tEQUAL?\tPRSA,V?WALK-TO,V?BOARD,V?THROUGH \\FALSE\n\tCALL\tDO-WALK,P?IN\n\tRSTACK\t\n\n\n\t.FUNCT\tIN-BOOTH-PSEUDO\n\tEQUAL?\tPRSA,V?WALK-TO,V?BOARD,V?THROUGH \\?CCL3\n\tPRINTR\t\"You're already in the booth!\"\n?CCL3:\tEQUAL?\tPRSA,V?DISEMBARK,V?EXIT,V?DROP \\FALSE\n\tCALL\tDO-WALK,P?OUT\n\tRSTACK\t\n\n\t.ENDI\n"
  },
  {
    "path": "globals.zil",
    "content": "\"GLOBALS for PLANETFALL\n(C) COPYRIGHT 1983 INFOCOM INC. ALL RIGHTS RESERVED\n\nThis file contains Global Objects and their associated routines,\nas well as all routines associated with BOTH complexes. It also\ncontains the opening sequence which occurs prior to planetfall.\"\n\n<CONSTANT DEFAULT-MOVE 20>\n\n;\"REM OFFSETS 31  30  29  28   27  26  25  24 23  22  21  20  ,LOW-DIRECTION \"\n<DIRECTIONS NORTH NE EAST SE SOUTH SW WEST NW UP DOWN IN OUT>\n\n\"SUBTITLE GLOBAL OBJECTS\"\n\n<GLOBAL LOAD-ALLOWED 100>\n\n<OBJECT GLOBAL-OBJECTS\n\t(FLAGS INVISIBLE TOUCHBIT SURFACEBIT TRYTAKEBIT MUNGBIT MUNGEDBIT\n\t       SCRAMBLEDBIT WORNBIT OPENBIT SEARCHBIT TRANSBIT WEARBIT)>\n\n<OBJECT LOCAL-GLOBALS\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM ZZMGCK)\n\t(VALUE 0)\n\t(CONTFCN 0)\n\t(DESCFCN 0)\n\t(SIZE 0)\n\t;(PSEUDO \"FOO\")>\n\n;\"Yes, this synonym for LOCAL-GLOBALS needs to exist... sigh\"\n\n<OBJECT ROOMS>\n\n<OBJECT INTNUM\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM INTNUM)\n\t(DESC \"number\")>\n\n<OBJECT PSEUDO-OBJECT\n\t(DESC \"pseudo\")\n\t(ACTION GO)>\n\n<OBJECT IT\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM IT THAT THIS HIM)\n\t(DESC \"random object\")\n\t(FLAGS NDESCBIT)>\n\n<OBJECT STAIRS\n\t(IN LOCAL-GLOBALS)\n\t(SYNONYM STAIRS STEPS GANGWAY STAIRWAY)\n\t(DESC \"stairway\")\n\t(FLAGS NDESCBIT CLIMBBIT)>\n\n<OBJECT GROUND\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM GROUND EARTH FLOOR DECK)\n\t(DESC \"floor\")\n\t(FLAGS NDESCBIT)\n\t(ACTION GROUND-F)>\n\n<ROUTINE GROUND-F ()\n\t <COND (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,GROUND>>\n\t\t<PERFORM ,V?DROP ,PRSO>\n\t\t<RTRUE>)\n\t       (<VERB? CLIMB-ON BOARD>\n\t\t<SETG C-ELAPSED 28>\n\t\t<TELL\n\"You sit down on the floor. After a brief rest, you stand again.\" CR>)\n\t       (<AND <VERB? EXAMINE>\n\t\t     <EQUAL? ,HERE ,ADMIN-CORRIDOR-S>>\n\t\t<TELL \"A narrow, jagged crevice runs across the floor.\" CR>)>>\n\n<OBJECT WINDOW\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"window\")\n\t(SYNONYM WINDOW PORT VIEWPORT)\n\t(ADJECTIVE VIEW)\n\t(FLAGS NDESCBIT)\n\t(ACTION WINDOW-F)>\n\n<ROUTINE WINDOW-F ()\n\t <COND (<VERB? LOOK-INSIDE>\n\t\t<COND (<EQUAL? ,HERE ,BIO-LOCK-EAST>\n\t\t       <TELL\n\"You can see a large laboratory, dimly illuminated. A blue glow comes from\na crack in the northern wall of the lab. Shadowy, ominous shapes move about\nwithin the room.\">\n\t\t       <COND (<NOT <FSET? ,MINI-CARD ,TOUCHBIT>>\n\t\t\t      <TELL\n\" On the floor, just inside the door, you can see a magnetic-striped card.\">)>\n\t\t       <CRLF>)\n\t\t      (<EQUAL? ,HERE ,BIO-LAB>\n\t\t       <TELL \"You see the Bio Lock.\" CR>)\n\t\t      (<OR\n\t\t\t<EQUAL? ,HERE ,ALFIE-CONTROL-EAST ,ALFIE-CONTROL-WEST>\n\t\t        <EQUAL? ,HERE ,BETTY-CONTROL-EAST ,BETTY-CONTROL-WEST>>\n\t\t       <TELL \"You see \">\n\t\t       <DESCRIBE-VIEW>\n\t\t       <TELL CR>)\n\t              (<EQUAL? ,HERE ,BALCONY>\n\t\t       <TELL \"Water. Lots and lots of water.\" CR>)\n\t\t      (<EQUAL? ,HERE ,HELICOPTER>\n\t\t       <TELL \"You see the helipad and the ocean beyond.\" CR>)\n\t\t      (<EQUAL? ,HERE ,ESCAPE-POD>\n\t\t       <COND (<L? ,TRIP-COUNTER 2>\n\t\t\t      <TELL\n\"You can see debris from the exploding Feinstein.\" CR>)\n\t\t             (<G? ,TRIP-COUNTER 8>\n\t\t              <TELL\n\"You can see a planet, hopefully a hospitable one.\" CR>)\n\t\t             (T\n\t\t              <TELL\n\"The window has polarized to blackness.\" CR>)>)\n\t\t      (<EQUAL? ,HERE ,LARGE-OFFICE>\n\t\t       <TELL\n\"You can see the dormitories and other parts of the\ncomplex in the distance. Water is visible in every direction.\" CR>)>)\n\t       (<AND <VERB? THROUGH>\n\t\t     <EQUAL? ,HERE ,BALCONY>>\n\t\t<JIGS-UP\n\"You slice yourself to ribbons on the broken windows and then plummet\ninto the swirling ocean below. Very clever.\">)\n\t       (<VERB? OPEN>\n\t\t<TELL \"This window doesn't open.\" CR>)\n\t       (<AND <VERB? EXAMINE>\n\t\t     <EQUAL? ,HERE ,BALCONY>>\n\t\t<TELL \"They're shattered.\" CR>)\n\t       (<VERB? MUNG>\n\t\t<COND (<EQUAL? ,HERE ,BALCONY>\n\t\t       <TELL \"They're already broken.\" CR>)\n\t\t      (T\n\t\t       <TELL \"It's made of tough Zynoid plastic.\" CR>)>)>>\n\n<OBJECT CLIFF\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"cliff\")\n\t(SYNONYM CLIFF)\n\t(FLAGS NDESCBIT)\n\t(ACTION CLIFF-F)>\n\n<ROUTINE CLIFF-F ()\n\t <COND (<EQUAL? ,HERE ,WEST-WING>\n\t\t<COND (<VERB? LEAP>\n\t\t       <JIGS-UP \"Brilliant idea!\">)\n\t\t      (<VERB? THROW-OFF>\n\t\t       <COND (<EQUAL? ,PRSO ,LASER>\n\t\t\t      <DISABLE <INT I-WARMTH>>)>\n\t\t       <REMOVE ,PRSO>\n\t\t       <TELL\n\"The \" D ,PRSO \" falls into the ocean below.\" CR>)>)\n\t       (T\n\t\t<COND (<VERB? CLIMB-UP CLIMB-FOO>\n\t\t       <DO-WALK ,P?UP>)\n\t\t      (<VERB? CLIMB-DOWN>\n\t\t       <DO-WALK ,P?DOWN>)>)>>\n\n<OBJECT OCEAN\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"ocean\")\n\t(SYNONYM OCEAN)\n\t(ADJECTIVE ENDLESS)\n\t(FLAGS VOWELBIT NDESCBIT)\n\t(ACTION OCEAN-F)>\n\n<ROUTINE OCEAN-F ()\n\t <COND (<VERB? TAKE THROUGH RUB>\n\t\t<TELL \"You can't reach the ocean from here.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL \"It stretches as far as you can see.\" CR>)>>\n\n<OBJECT TABLES\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"table\")\n\t(SYNONYM TABLE TABLES)\n\t(FLAGS NDESCBIT)\n\t(ADJECTIVE ROUND CONFERENCE SMALL WIDE LONG)\n\t(ACTION TABLES-F)>\n\n<ROUTINE TABLES-F ()\n\t <COND (<AND <VERB? LOOK-UNDER>\n\t\t     <EQUAL? ,HERE ,MESS-HALL>>\n\t\t<TELL\n\"Wow!!! Under the table are three keys, a sack of food, a reactor elevator\naccess pass, one hundred gold pieces ... Just kidding. Actually, there's\nnothing there.\" CR>)\n\t       (<AND <VERB? PUT-ON>\n\t\t     <EQUAL? ,PRSI ,TABLES>>\n\t\t<TELL\n\"That would accomplish nothing useful.\" CR>)>> \n\n<OBJECT SHELVES\n\t(IN LOCAL-GLOBALS)\n\t(SYNONYM SHELF SHELVES)\n\t(DESC \"shelf\")\n\t(FLAGS NDESCBIT)\n\t(ACTION SHELVES-F)>\n\n<ROUTINE SHELVES-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"The shelves are pretty dusty.\" CR>)\n\t       (<AND <VERB? PUT-ON>\n\t\t     <EQUAL? ,PRSI ,SHELVES>>\n\t\t<TELL \"That would be a waste of time.\" CR>)>>\n\n<OBJECT LIGHTS\n\t(IN LOCAL-GLOBALS)\n\t(SYNONYM LIGHT LIGHTS)\n\t(ADJECTIVE RED DAZZLI GLOWIN BLINKI WARNIN BRIGHT COLORE FLASHI)\n\t(DESC \"light\")\n\t(FLAGS NDESCBIT)\n\t(ACTION LIGHTS-F)>\n\n<ROUTINE LIGHTS-F ()\n\t <COND (<AND <VERB? EXAMINE>\n\t\t     <EQUAL? ,HERE ,COMPUTER-ROOM>>\n\t\t<TELL\n\"The red light would seem to indicate a malfunction in the computer.\" CR>)>>\n\n<OBJECT GLOBAL-DOORWAY\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM DOORWA PORTAL OPENIN)\n\t(ADJECTIVE NORTH SOUTH EAST WEST NE SE NW SW)\n\t(DESC \"doorway\")\n\t(FLAGS NDESCBIT)\n\t(ACTION GLOBAL-DOORWAY-F)>\n\n<ROUTINE GLOBAL-DOORWAY-F ()\n\t <COND (<VERB? THROUGH>\n\t\t<USE-DIRECTIONS>)\n\t       (<VERB? OPEN CLOSE>\n\t\t<TELL \"It's just an opening; you can't open or close it.\" CR>)\n\t       (<VERB? LOOK-INSIDE>\n\t\t<TELL \"Can't see much from here. Try going there.\" CR>)>>\n\n<ROUTINE USE-DIRECTIONS ()\n\t <TELL \"Use compass directions for movement.\" CR>>\n\n<ROUTINE NO-CLOSE ()\n\t <TELL \"There's no way to close it.\" CR>>\n\n<OBJECT CONTROLS\n\t(IN LOCAL-GLOBALS)\n\t(SYNONYM CONTRO PANEL DIALS GAUGES)\n\t(ADJECTIVE CONTRO COMPLEX)\n\t(DESC \"set of controls\")\n\t(FLAGS NDESCBIT)\n\t(ACTION CONTROLS-F)>\n\n<ROUTINE CONTROLS-F ()\n\t<COND (<OR <EQUAL? ,HERE ,UPPER-ELEVATOR ,LOWER-ELEVATOR ,BOOTH-1>\n\t\t   <EQUAL? ,HERE ,REACTOR-ELEVATOR ,BOOTH-2 ,BOOTH-3>>\n\t       <COND (<VERB? EXAMINE>\n\t\t      <TELL\n\"The control panel is a simple one, as described. Just a small slot\nand two buttons.\" CR>)>)\n\t      (<VERB? RUB MOVE TURN SET TAKE EXAMINE PUSH PULL>\n\t       <COND (<EQUAL? ,HERE ,HELICOPTER>\n\t\t      <TELL\n\"The controls are covered and locked.\" CR>)\n\t\t     (<EQUAL? ,HERE ,ESCAPE-POD>\n\t\t      <TELL\n\"The controls are entirely automated.\" CR>)\n\t\t     (T\n\t\t      <TELL\n\"The controls are incredibly complicated and you shouldn't even\nbe thinking about touching them.\" CR>)>)\n\t      (<AND <EQUAL? ,HERE ,HELICOPTER>\n\t\t    <VERB? OPEN UNLOCK>>\n\t       <TELL\n\"You don't even have the orange key!\" CR>)>>\n\n<OBJECT GLOBAL-GAMES\n\t(IN GLOBAL-OBJECTS)\n\t(DESC \"game\")\n\t(SYNONYM BOCCI CHESS HIDER- HUCKA-)\n\t(FLAGS NDESCBIT)\n\t(ACTION GLOBAL-GAMES-F)>\n\n<ROUTINE GLOBAL-GAMES-F ()\n\t <COND (<VERB? PLAY>\n\t\t<COND (<IN? ,FLOYD ,HERE>\n\t\t       <PERFORM ,V?PLAY-WITH ,FLOYD>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL \"Okay. Gee, that was fun.\" CR>)>)>>\n\n<OBJECT HANDS\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM PAIR HANDS)\n\t(ADJECTIVE BARE)\n\t(DESC \"pair of hands\")\n\t(FLAGS NDESCBIT)\n\t(ACTION HANDS-F)>\n\n<ROUTINE HANDS-F ()\n\t <COND (<VERB? SHAKE>\n\t\t<COND (<IN? ,AMBASSADOR ,HERE>\n\t\t       <TELL \"A repulsive idea.\" CR>)\n\t\t      (<IN? ,BLATHER ,HERE>\n\t\t       <TELL \"Saluting might be a better idea.\" CR>)\n\t\t      (<AND <IN? ,FLOYD ,HERE>\n\t\t\t    <FSET? ,FLOYD ,RLANDBIT>>\n\t\t       <TELL\n\"You shake one of Floyd's grasping extensions.\" CR>)\n\t\t      (T\n\t\t       <TELL \"There's no one to shake hands with.\" CR>)>)>>\n\n<OBJECT SLEEP\n\t(IN GLOBAL-OBJECTS)\n\t(DESC \"sacred act of sleeping\")\n\t(SYNONYM SLEEP)\n\t(FLAGS NDESCBIT)\n\t(ACTION SLEEP-F)>\n\n<ROUTINE SLEEP-F ()\n\t <COND (<VERB? WALK-TO>\n\t\t<V-SLEEP>)>>\n\n<OBJECT ADVENTURER\n\t(IN DECK-NINE)\n\t(SYNONYM ADMIRA SMITHE SPAM EGGS)\n\t(ADJECTIVE ORANGE OPENER)\n\t(DESC \"player\")\n        (FLAGS NDESCBIT INVISIBLE)>\n\n<OBJECT ME\n\t(IN GLOBAL-OBJECTS)\n\t(SYNONYM ME MYSELF SELF WE)\n\t(DESC \"you\")\n\t(FLAGS ACTORBIT)\n\t(ACTION CRETIN-F)>\n\n<ROUTINE CRETIN-F ()\n\t <COND (<VERB? GIVE>\n\t\t<PERFORM ,V?TAKE ,PRSO>\n\t\t<RTRUE>)\n\t       (<VERB? SCRUB>\n\t\t<TELL\n\"If only you'd done that before the last inspection, you wouldn't have\ngotten 300 demerits.\" CR>)\n\t       (<VERB? DROP>\n\t\t<TELL \"Huh?\" CR>)\n\t       (<VERB? SMELL>\n\t\t<TELL \"Phew!\" CR>)\n\t       (<VERB? FOLLOW>\n\t\t<TELL \"It would be hard not to.\" CR>)\n\t       (<VERB? EAT>\n\t\t<TELL \"Auto-cannibalism is not the answer.\" CR>)\n\t       (<VERB? ATTACK MUNG>\n\t\t<COND (<==? ,PRSO ,ME>\n\t\t       <JIGS-UP \"If you insist.... Poof, you're dead!\">)\n\t\t      (ELSE <TELL \"What a silly idea!\" CR>)>)\n\t       (<VERB? TAKE>\n\t\t<TELL \"How romantic!\" CR>)\n\t       (<VERB? DISEMBARK>\n\t\t<TELL \"You'll have to do that on your own.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL \"That's difficult unless your eyes are prehensile.\"\n\t\t      CR>)>>\n\n<ROUTINE DDESC (DOOR)\n\t <COND (<FSET? .DOOR ,OPENBIT>\n\t\t<TELL \"open\">)\n\t       (T\n\t\t<TELL \"closed\">)>>\n\n<ROUTINE ALREADY-OPEN ()\n\t <TELL \"It's already open!\" CR>>\n\n<ROUTINE IS-CLOSED ()\n\t <TELL \"It is closed!\" CR>>\n\n<ROUTINE V-THROUGH (\"OPTIONAL\" (OBJ <>) \"AUX\" M)\n\t<COND (<AND <NOT .OBJ> <FSET? ,PRSO ,VEHBIT>>\n\t       <PERFORM ,V?BOARD ,PRSO>\n\t       <RTRUE>)\n\t      (<AND <NOT .OBJ> <NOT <FSET? ,PRSO ,TAKEBIT>>>\n\t       <TELL\n\"You hit your head against the \" D ,PRSO \" as you attempt this feat.\" CR>)\n\t      (.OBJ\n\t       <TELL \"You can't do that!\" CR>)\n\t      (<IN? ,PRSO ,ADVENTURER>\n\t       <TELL \"That would involve quite a contortion!\" CR>)\n\t      (T\n\t       <TELL <PICK-ONE ,YUKS> CR>)>>\n\n<ROUTINE FIND-IN (WHERE WHAT \"AUX\" W)\n\t <SET W <FIRST? .WHERE>>\n\t <COND (<NOT .W> <RFALSE>)>\n\t <REPEAT ()\n\t\t <COND (<FSET? .W .WHAT> <RETURN .W>)\n\t\t       (<NOT <SET W <NEXT? .W>>> <RETURN <>>)>>>\n\n;\"Stuff added for the NOT-HERE object\"\n\n<OBJECT NOT-HERE-OBJECT\n\t(DESC \"such thing\" ;\"[not here]\")\n\t(ACTION NOT-HERE-OBJECT-F)>\n\n<ROUTINE NOT-HERE-OBJECT-F (\"AUX\" TBL (PRSO? T) OBJ)\n\t;\"Protocol: return T if case was handled and msg TELLed,\n\t\t\t  <> if PRSO/PRSI ready to use\"\n\t ;\"This COND is game independent (except the TELL)\"\n\t <COND (<AND <EQUAL? ,PRSO ,NOT-HERE-OBJECT>\n\t\t     <EQUAL? ,PRSI ,NOT-HERE-OBJECT>>\n\t\t<TELL \"Those things aren't here!\" CR>\n\t\t<RTRUE>)\n\t       (<EQUAL? ,PRSO ,NOT-HERE-OBJECT>\n\t\t<SET TBL ,P-PRSO>)\n\t       (T\n\t\t<SET TBL ,P-PRSI>\n\t\t<SET PRSO? <>>)>\n\t <COND (.PRSO?\n\t\t<COND (<VERB? TYPE>\n\t\t       <PERFORM ,V?TYPE ,FLOYD>\n\t\t       <RTRUE>)\n\t\t      (<OR <VERB? EXAMINE>\n\t\t\t   <AND <EQUAL? ,WINNER ,FLOYD>\n\t\t\t\t<VERB? TAKE FIND>>>\n\t\t       <COND (<SET OBJ <FIND-NOT-HERE .TBL .PRSO?>>\n\t\t\t      <COND (<NOT <==? .OBJ ,NOT-HERE-OBJECT>>\n\t\t\t\t     <RTRUE>)>)\n\t\t\t     (T\n\t\t\t      <RFALSE>)>)>)>\n\t ;\"Here is the default 'cant see any' printer\"\n\t <COND (<EQUAL? ,WINNER ,ADVENTURER>\n\t\t<TELL \"You can't see any\">\n\t\t<NOT-HERE-PRINT .PRSO?>\n\t\t<TELL \" here!\" CR>\n\t\t<COND (<VERB? TELL>\n\t\t       <SETG P-CONT <>>\n\t\t       <SETG QUOTE-FLAG <>>\n\t\t       <RFATAL>)>)\n\t       (T\n\t\t<TELL \"The \" D ,WINNER \" seems confused. \\\"I don't see any\">\n\t\t<NOT-HERE-PRINT .PRSO?>\n\t\t<TELL \" here!\\\"\" CR>)>\n\t <RTRUE>>\n\n<ROUTINE FIND-NOT-HERE (TBL PRSO? \"AUX\" M-F OBJ)\n\t;\"Protocol: return T if case was handled and msg TELLed,\n\t    ,NOT-HERE-OBJECT if 'can't see' msg TELLed,\n\t\t\t  <> if PRSO/PRSI ready to use\"\n\t;\"Here is where special-case code goes. <MOBY-FIND .TBL> returns\n\t   number of matches. If 1, then P-MOBY-FOUND is it. One may treat\n\t   the 0 and >1 cases alike or different. It doesn't matter. Always\n\t   return RFALSE (not handled) if you have resolved the problem.\"\n\t<SET M-F <MOBY-FIND .TBL>>\n\t;<COND (<AND <G? .M-F 1>\n\t\t    <SET OBJ <GETP <1 .TBL> ,P?GLOBAL>>>\n\t       <SET M-F 1>\n\t       <SETG P-MOBY-FOUND .OBJ>)>\n\t<COND (<==? 1 .M-F>\n\t       <COND (.PRSO? <SETG PRSO ,P-MOBY-FOUND>)\n\t\t     (T <SETG PRSI ,P-MOBY-FOUND>)>\n\t       <RFALSE>)\n\t      (<NOT .PRSO?>\n\t       <TELL \"You wouldn't find any\">\n\t       <NOT-HERE-PRINT .PRSO?>\n\t       <TELL \" there.\" CR>\n\t       <RTRUE>)\n\t      (T ,NOT-HERE-OBJECT)>>\n\n<ROUTINE NOT-HERE-PRINT (PRSO?)\n <COND (<OR ,P-OFLAG ,P-MERGED>\n\t<COND (,P-XADJ <TELL \" \"> <PRINTB ,P-XADJN>)>\n\t<COND (,P-XNAM <TELL \" \"> <PRINTB ,P-XNAM>)>)\n       (.PRSO?\n\t<BUFFER-PRINT <GET ,P-ITBL ,P-NC1> <GET ,P-ITBL ,P-NC1L> <>>)\n       (T\n\t<BUFFER-PRINT <GET ,P-ITBL ,P-NC2> <GET ,P-ITBL ,P-NC2L> <>>)>>\n\n\f\n\n;\"Begin-game stuff aboard the Feinstein\"\n\n<ROOM BRIG\n      (IN ROOMS)\n      (DESC \"Brig\")\n      (LDESC\n\"You are in the Feinstein's brig. Graffiti cover\nthe walls. The cell door to the south is locked.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH \"The cell door is locked.\")\n      (FLAGS RLANDBIT ONBIT)\n      (PSEUDO \"GRAFFITI\" GRAFFITI-PSEUDO \"DOOR\" DOOR-PSEUDO)>\n\n<ROOM DECK-NINE\n      (IN ROOMS)\n      (DESC \"Deck Nine\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\"15 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\"15 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO REACTOR-LOBBY IF CORRIDOR-DOOR IS OPEN)\n      (WEST TO ESCAPE-POD IF POD-DOOR IS OPEN)\n      (IN TO ESCAPE-POD IF POD-DOOR IS OPEN)\n      (UP TO GANGWAY IF GANGWAY-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL POD-DOOR CORRIDOR-DOOR GANGWAY-DOOR STAIRS GLOBAL-POD)\n      (PSEUDO \"TRANSL\" TRANSLATOR-PSEUDO \"SLIME\" SLIME-PSEUDO)\n      (ACTION DECK-NINE-F)>\n\n<ROUTINE DECK-NINE-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is a featureless corridor similar to every other corridor on the ship.\nIt curves away to starboard, and a gangway leads up\">\n\t\t<COND (<FSET? ,GANGWAY-DOOR ,OPENBIT>\n\t\t       <TELL \".\">)\n\t\t      (T\n\t\t       <TELL\n\", but both of these are blocked by closed bulkheads.\">)>\n\t\t<TELL\n\" To port is the entrance to one of the ship's primary escape pods. The\npod bulkhead is \">\n\t\t<DDESC ,POD-DOOR>\n\t\t<TELL \".\" CR>)>>\n\n<OBJECT SCRUB-BRUSH\n\t(IN ADVENTURER)\n\t(DESC \"Patrol-issue self-contained multi-purpose scrub brush\")\n\t(SYNONYM BRUSH SCRUBB SCRUBR)\n\t(ADJECTIVE SCRUB PATROL SELF-CONTAINED MULTI)\n\t(FLAGS TAKEBIT)\n\t(SIZE 10)>\n\n<OBJECT CHRONOMETER\n\t(IN ADVENTURER)\n\t(DESC \"chronometer\")\n\t(SYNONYM CHRONOMETER WRISTWATCH WATCH)\n\t(ADJECTIVE WRIST)\n\t(SIZE 10)\n\t(FLAGS MUNGBIT TAKEBIT WEARBIT WORNBIT)\n\t(ACTION CHRONOMETER-F)>\n\n<ROUTINE CHRONOMETER-F ()\n\t <COND (<VERB? EXAMINE READ>\n\t\t<TELL\n\"It is a standard wrist chronometer with a digital display. \">\n\t\t<TELL-TIME>\n\t\t<TELL \" The back is engraved with\nthe message \\\"Good luck in the Patrol! Love, Mom and Dad.\\\"\" CR>)>>\n\n<ROUTINE TELL-TIME ()\n\t <TELL \"According to the chronometer, the current time is \">\n\t <COND (<FSET? ,CHRONOMETER ,MUNGEDBIT>\n\t\t<TELL N ,MUNGED-TIME>)\n\t       (T\n\t\t<TELL N ,INTERNAL-MOVES>)>\n\t <TELL \".\">>\n\n<GLOBAL MUNGED-TIME 0>\n\n<OBJECT ID-CARD\n\t(IN PATROL-UNIFORM)\n\t(DESC \"ID card\")\n\t(SYNONYM CARD CARDS)\n\t(ADJECTIVE PATROL ID IDENTIFICATION)\n\t(FLAGS VOWELBIT TAKEBIT READBIT)\n\t(SIZE 3)\n\t(TEXT\n\"\\\"STELLAR PATROL|\nSpecial Assignment Task Force|\nID Number:  6172-531-541\\\"\")>  \n\n<OBJECT PATROL-UNIFORM\n\t(IN ADVENTURER)\n\t(DESC \"Patrol uniform\")\n\t(LDESC\n\"A slightly wrinkled Patrol uniform is lying here.\")\n\t(SYNONYM UNIFORM POCKET SUIT)\n\t(ADJECTIVE PATROL WRINKLED)\n        (FLAGS TAKEBIT WORNBIT WEARBIT CONTBIT SEARCHBIT OPENBIT)\n\t(CAPACITY 10)\n\t(ACTION PATROL-UNIFORM-F)>\n\n<ROUTINE PATROL-UNIFORM-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"It is a standard-issue one-pocket Stellar Patrol uniform, a miracle of modern\ntechnology. It will keep its owner warm in cold climates and cool in warm\nlocales. It provides protection against mild radiation, repels all insects,\nabsorbs sweat, promotes healthy skin tone, and on top of everything else,\nit is super-comfy.\">\n\t\t<COND (<EQUAL? ,TRIP-COUNTER 15>\n\t\t       <TELL\n\" There are definitely worse things to find yourself wearing when stranded\non a strange planet.\">)>\n\t\t<TELL CR>)\n\t       (<AND <VERB? WEAR>\n\t\t     <FSET? ,LAB-UNIFORM ,WORNBIT>>\n\t\t<TELL\n\"It won't fit over the lab uniform.\" CR>)\n\t       (<AND <VERB? TAKE-OFF>\n\t\t     <FSET? ,PATROL-UNIFORM ,WORNBIT>>\n\t\t<FCLEAR ,PATROL-UNIFORM ,WORNBIT>\n\t\t<TELL \"You have removed your Patrol uniform.\">\n\t\t<COND (<EQUAL? ,TRIP-COUNTER 15>\n\t\t       <TELL\n\" You suddenly realize how warm it is. You also feel naked and vulnerable.\">)>\n\t\t<COND (<IN? ,BLATHER ,HERE>\n\t\t       <TELL\n\" \\\"Removing your uniform while on duty? Five hundred demerits!\\\"\">)\n\t\t      (<IN? ,FLOYD ,HERE>\n\t\t       <TELL\n\" Floyd giggles. \\\"You look funny without any clothes on.\\\"\">)>\n\t\t<TELL CR>)\n\t       (<VERB? OPEN CLOSE>\n\t\t<TELL\n\"There's no way to open or close the pocket of the \" D ,PRSO \".\" CR>)>>\n\n<ROOM REACTOR-LOBBY\n      (IN ROOMS)\n      (DESC \"Reactor Lobby\")\n      (LDESC\n\"The corridor widens here as it nears the main drive area. To starboard is\nthe Ion Reactor that powers the vessel, and aft of here is the Auxiliary\nControl Room. The corridor continues to port.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\"15 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO DECK-NINE IF CORRIDOR-DOOR IS OPEN)\n      (SOUTH \"Ensign Blather pushes you roughly back toward your post.\")\n      (EAST \"Ensign Blather blocks your way, snarling angrily.\")\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL CORRIDOR-DOOR)>\n\n<ROOM GANGWAY\n      (IN ROOMS)\n      (DESC \"Gangway\")\n      (LDESC\n\"This is a steep metal gangway connecting Deck Eight, above, and Deck\nNine, below.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"10  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (UP TO DECK-EIGHT)\n      (DOWN TO DECK-NINE IF GANGWAY-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL GANGWAY-DOOR STAIRS)\n      (ACTION GANGWAY-F)>\n\n<ROUTINE GANGWAY-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-END>\n\t\t<COND (<AND <PROB 15>\n\t\t\t    <EQUAL? ,BLOWUP-COUNTER 0>>\n\t\t       <TELL\n\"You hear a distant bellowing ... something about an Ensign Seventh Class\nwhose life is in danger.\" CR>)>)>>\n\n<ROOM DECK-EIGHT\n      (IN ROOMS)\n      (DESC \"Deck Eight\")\n      (LDESC\n\"This is a featureless corridor leading port and starboard. A gangway leads\ndown, and to fore is the Hyperspatial Jump Machinery Room.\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\"10  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (DOWN TO GANGWAY)\n      (EAST \"Blather throws you to the deck and makes you do 20 push-ups.\")\n      (WEST \"Blather throws you to the deck and makes you do 20 push-ups.\")\n      (NORTH \"Blather blocks your path, growling about extra galley duty.\")\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL STAIRS)> \n\n<GLOBAL BLATHER-LEAVE 0>\n\n<GLOBAL BRIGS-UP 0>\n\n<ROUTINE I-BLATHER ()\n\t <COND (<EQUAL? ,HERE ,DECK-EIGHT ,REACTOR-LOBBY>\n\t\t<COND (<IN? ,BLATHER ,HERE>\n\t\t       <SETG BRIGS-UP <+ ,BRIGS-UP 1>>\n\t\t       <COND (<G? ,BRIGS-UP 3>\n\t\t\t      <TELL CR\n\"Blather loses his last vestige of patience and drags you to the Feinstein's\nbrig. He throws you in, and the door clangs shut behind you.\" CR CR>\n\t\t\t      <GOTO ,BRIG>\n\t\t\t      <ROB ,ADVENTURER ,CRAG>\n\t\t\t      <MOVE ,PADLOCK ,HERE>\n\t\t\t      <FCLEAR ,PADLOCK ,TAKEBIT>)\n\t\t\t     (T\n\t\t\t      <TELL CR\n\"\\\"I said to return to your post, Ensign Seventh Class!\\\" bellows Blather,\nturning a deepening shade of crimson.\" CR>)>)\n\t\t      (<EQUAL? ,BLOWUP-COUNTER 0>\n\t\t       <MOVE ,BLATHER ,HERE>\n\t\t       <THIS-IS-IT ,BLATHER>\n\t\t       <TELL CR\n\"Ensign Blather, his uniform immaculate, enters and notices you are away\nfrom your post. \\\"Twenty demerits, Ensign Seventh Class!\\\" bellows Blather.\n\\\"Forty if you're not back on Deck Nine in five seconds!\\\" He curls his face\ninto a hideous mask of disgust at your unbelievable negligence.\" CR>)>) \n\t       (<EQUAL? ,HERE ,DECK-NINE>\n\t\t<COND (<AND <EQUAL? ,BLATHER-LEAVE 3>\n\t\t\t    <IN? ,BLATHER ,HERE>>\n\t\t       <SETG BLATHER-LEAVE 0>\n\t\t       <REMOVE ,BLATHER>\n\t\t       <TELL CR\n\"Blather, adding fifty more demerits for good measure, moves off in search\nof more young ensigns to terrorize.\" CR>)\n\t\t      (<IN? ,BLATHER ,DECK-NINE>\n\t\t       <SETG BLATHER-LEAVE <+ ,BLATHER-LEAVE 1>>\n\t\t       <RFALSE>)\n\t\t      (<AND <NOT <IN? ,AMBASSADOR ,HERE>>\n\t\t\t    <EQUAL? ,BLOWUP-COUNTER 0>\n\t\t\t    <PROB 5>>\n\t\t       <MOVE ,BLATHER ,HERE>\n\t\t       <THIS-IS-IT ,BLATHER>\n\t\t       <TELL CR\n\"Ensign First Class Blather swaggers in. He studies your work with half-closed\neyes. \\\"You call this polishing, Ensign Seventh Class?\\\" he sneers. \\\"We have\na position for an Ensign Ninth Class in the toilet-scrubbing division,\nyou know. Thirty demerits.\">\n\t\t       <COND (<NOT <FSET? ,PATROL-UNIFORM ,WORNBIT>>\n\t\t\t      <TELL\n\" And another sixty for improper dress!\">)>\n\t\t       <TELL\n\"\\\" He glares at you, his arms crossed.\" CR>)>)>>\n\n<OBJECT BLATHER\n\t(DESC \"Ensign First Class\")\n\t(LDESC \n\"Ensign First Class Blather is standing before you, furiously scribbling\ndemerits onto an oversized clipboard.\")\n\t(SYNONYM ENSIGN BLATHER)\n\t(ADJECTIVE ENSIGN FIRST CLASS)\n\t(SIZE 150)\n\t(FLAGS VOWELBIT ACTORBIT)\n\t(ACTION BLATHER-F)>\n\n<ROUTINE BLATHER-F ()\n\t <COND (<OR <VERB? TALK HELLO>\n\t\t    <EQUAL? ,BLATHER ,WINNER>>\t\t\n\t\t<TELL\n\"Blather shouts \\\"Speak when you're spoken to, Ensign Seventh Class!\\\" He\nbreaks three pencil points in a frenzied rush to give you more demerits.\" CR>\n\t\t<SETG P-CONT <>>\n\t\t<SETG QUOTE-FLAG <>>\n\t\t<RFATAL>)\n\t       (<VERB? ATTACK KICK>\n\t\t<JIGS-UP\n\"Blather removes several of your appendages and internal organs.\">)\n\t       (<VERB? SALUTE>\n\t\t<TELL\n\"Blather's sneer softens a bit. \\\"First right thing you've done today. Only\nfive demerits.\\\"\" CR>)\n\t       (<AND <VERB? THROW>\n\t\t     <EQUAL? ,BLATHER ,PRSI>>\n\t\t<MOVE ,PRSO ,HERE>\n\t\t<TELL\n\"The \" D ,PRSO \" bounces off Blather's bulbous nose. He becomes livid, orders\nyou to do five hundred push-ups, gives you ten thousand demerits, and assigns\nyou five years of extra galley duty.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL\n\"Ensign Blather is a tall, beefy officer with a tremendous, misshapen nose.\nHis uniform is perfect in every respect, and the crease in his trousers\ncould probably slice diamonds in half.\" CR>)\n\t       (<VERB? TAKE>\n\t\t<TELL\n\"Blather brushes you away, muttering about suspended shore leave.\" CR>)>>\n\n<OBJECT AMBASSADOR\n\t(DESC \"alien ambassador\")\n\t(LDESC \n\"A high-ranking ambassador from a newly-contacted alien race is standing\nhere on three of his legs, and watching you with seven of his eyes.\")\n\t(SYNONYM AMBASSADOR)\n\t(ADJECTIVE VERY IMPORTANT ALIEN HIGH-RANKING HIGH RANKING)\n\t(SIZE 150)\n\t(FLAGS VOWELBIT ACTORBIT)\n\t(ACTION AMBASSADOR-F)>\n\n<OBJECT CELERY\n\t(DESC \"piece of celery\")\n\t(SYNONYM CELERY PIECE STALK)\n\t(FLAGS NDESCBIT FOODBIT)\n\t(ACTION CELERY-F)>\n\n<ROUTINE CELERY-F ()\n\t <COND (<VERB? EAT>\n\t\t<JIGS-UP\n\"Oops. Looks like Blow'k-Bibben-Gordoan metabolism is not\ncompatible with our own. You die of all sorts of convulsions.\">)\n\t       (<VERB? TAKE>\n\t\t<TELL\n\"The ambassador seems perturbed by your lack of normal protocol.\" CR>)>>\n\n<GLOBAL AMBASSADOR-LEAVE 0>\n\n<ROUTINE I-AMBASSADOR ()\n\t <COND (<AND <G? ,AMBASSADOR-LEAVE 2>\n\t\t     <IN? ,AMBASSADOR ,HERE>>\n\t\t<REMOVE ,AMBASSADOR>\n\t\t<REMOVE ,CELERY>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL CR\n\"The ambassador grunts a polite farewell, and disappears up the gangway,\nleaving a trail of dripping slime.\" CR>)>\n\t\t<DISABLE <INT I-AMBASSADOR>>)\n\t       (<IN? ,AMBASSADOR ,DECK-NINE>\n\t\t<SETG AMBASSADOR-LEAVE <+ ,AMBASSADOR-LEAVE 1>>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL CR \"The ambassador \">\n\t\t       <TELL <PICK-ONE ,AMBASSADOR-QUOTES> CR>)\n\t\t      (T\n\t\t\t<RFALSE>)>)\n\t       (<EQUAL? ,HERE ,DECK-NINE>\n\t\t<COND (<AND <NOT <IN? ,AMBASSADOR ,HERE>>\n\t\t\t    <NOT <IN? ,BLATHER ,HERE>>\n\t\t\t    <EQUAL? ,BLOWUP-COUNTER 0>\n\t\t\t    <PROB 15>>\n\t\t       <MOVE ,AMBASSADOR ,HERE>\n\t\t       <MOVE ,CELERY ,HERE>\n\t\t       <THIS-IS-IT ,AMBASSADOR>\n\t\t       <MOVE ,BROCHURE ,ADVENTURER>\n\t\t       <TELL CR\n\"The alien ambassador from the planet Blow'k-bibben-Gordo ambles toward you\nfrom down the corridor. He is munching on something resembling an enormous\nstalk of celery, and he leaves a trail of green slime on the deck. He stops\nnearby, and you wince as a pool of slime begins forming beneath him on your\nnewly-polished deck. The ambassador wheezes loudly and hands you a brochure\noutlining his planet's major exports.\"CR>)>)>>\n\n<OBJECT BROCHURE\n\t(DESC \"brochure\")\n\t(LDESC\n\"Unfortunately, one of those stupid Blow'k-bibben-Gordo brochures is here.\")\n\t(SYNONYM BROCHURE PAMPHLET LEAFLET)\n\t(FLAGS ACIDBIT TAKEBIT READBIT)\n\t(SIZE 4)\n\t(TEXT\n\"\\\"The leading export of Blow'k-bibben-Gordo is the adventure game|\n|\n          *** PLANETFALL ***|\n|\nwritten by S. Eric Meretzky.|\nBuy one today. Better yet, buy a thousand.\\\"\")>\n\n<GLOBAL AMBASSADOR-QUOTES\n\t<PLTABLE\n\t \"introduces himself as Br'gun-te'elkner-ipg'nun.\"\n\t \"asks if you are performing some sort of religious ceremony.\"\n\t \"inquires whether you are interested in a game of Bocci.\"\t\n\t \"recites a plea for coexistence between your races.\"\n\t \"asks where Admiral Smithers can be found.\"\n\t \"remarks that all humans look alike to him.\"\n\t \"offers you a bit of celery.\">>\n\n<ROUTINE AMBASSADOR-F ()\n\t <COND (<OR <VERB? TALK HELLO>\n\t\t    <EQUAL? ,AMBASSADOR ,WINNER>>\n\t\t<TELL\n\"The ambassador taps his translator, and then touches his center knee to his\nleft ear (the Blow'k-bibben-Gordoan equivalent of shrugging).\" CR>\n\t\t<SETG P-CONT <>>\n\t\t<SETG QUOTE-FLAG <>>\n\t\t<RFATAL>)\n\t       (<AND <VERB? ASK-FOR>\n\t\t     <EQUAL? ,PRSI ,CELERY>>\n\t\t<TELL\n\"The ambassador seems willing to let you eat some of it, but I doubt he wants\nto part with the entire stalk.\" CR>)\n\t       (<VERB? ATTACK KICK>\n\t\t<TELL\n\"The ambassador is startled, and emits an amazing quantity of slime which\nspreads across the section of the deck you just polished.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL\n\"The ambassador has around twenty eyes, seven of which are currently\nopen. Half of his six legs are retracted. Green slime oozes from\nmultiple orifices in his scaly skin. He speaks through a mechanical\ntranslator slung around his neck.\" CR>)\n\t       (<VERB? LISTEN>\n\t\t<TELL\n\"The alien makes a wheezing noise as he breathes.\" CR>)>>\n\n<ROOM ESCAPE-POD\n      (IN ROOMS)\n      (DESC \"Escape Pod\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST PER POD-EXIT-F)\n      (OUT PER POD-EXIT-F)\n      (UP PER POD-EXIT-F)\n      (FLAGS RLANDBIT ONBIT)\n      (VALUE 3)\n      (GLOBAL POD-DOOR CONTROLS LIGHTS GLOBAL-POD WINDOW)\n      (ACTION ESCAPE-POD-F)>\n\n<OBJECT GLOBAL-POD\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"escape pod\")\n\t(SYNONYM POD)\n\t(ADJECTIVE EMERGENCY ESCAPE PRIMARY)\n\t(FLAGS VOWELBIT VEHBIT NDESCBIT)\n\t(ACTION GLOBAL-POD-F)>\n\n<ROUTINE GLOBAL-POD-F ()\n\t <COND (<VERB? THROUGH BOARD WALK-TO>\n\t\t<COND (<EQUAL? ,HERE ,ESCAPE-POD>\n\t\t       <TELL \"You're already in it!\" CR>)\n\t\t      (T\n\t\t       <DO-WALK ,P?WEST>\n\t\t       <RTRUE>)>)\n\t       (<VERB? EXIT DISEMBARK DROP>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL \"You're not in it!\" CR>)\n\t\t      (T\n\t\t       <DO-WALK ,P?OUT>\n\t\t       <RTRUE>)>)\n\t       (<VERB? OPEN>\n\t\t<PERFORM ,V?OPEN ,POD-DOOR>\n\t\t<RTRUE>)>>\n\n<ROUTINE POD-EXIT-F ()\n\t <COND (<G? ,BLOWUP-COUNTER 4>\n\t\t<COND (<EQUAL? ,PRSO ,P?EAST>\n\t\t       <TELL ,CANT-GO CR>\n\t\t       <RFALSE>)\n\t\t      (<NOT <FSET? ,POD-DOOR ,OPENBIT>>\n\t\t       <TELL \"The pod door is closed.\" CR>\n\t\t       <RFALSE>)\n\t\t      (T\n\t\t       <SETG C-ELAPSED 30>\n\t\t       ,UNDERWATER)>)\n\t       (T\n\t\t<COND (<EQUAL? ,PRSO ,P?UP>\n\t\t       <TELL ,CANT-GO CR>\n\t\t       <RFALSE>)\n\t\t      (<NOT <FSET? ,POD-DOOR ,OPENBIT>>\n\t\t       <TELL \"The pod door is closed.\" CR>\n\t\t       <RFALSE>)\n\t\t      (T\n\t\t       ,DECK-NINE)>)>>\n\n<OBJECT SAFETY-WEB\n\t(IN ESCAPE-POD)\n\t(DESC \"safety web\")\n\t(SYNONYM MASS WEB WEBBING NET)\n\t(ADJECTIVE SAFETY)\n\t(FLAGS CLIMBBIT VEHBIT NDESCBIT)\n\t(ACTION SAFETY-WEB-F)>\n\n<ROUTINE SAFETY-WEB-F (\"OPTIONAL\" (RARG ,M-OBJECT))\n\t <COND (<AND <VERB? EXAMINE>\n\t\t     <EQUAL? .RARG ,M-OBJECT>>\n\t\t<TELL\n\"The safety webbing fills most of the pod. It could accomodate\nfrom one to, perhaps, twenty people.\" CR>)\n\t       (<AND <VERB? TAKE>\n\t\t     <EQUAL? .RARG ,M-OBJECT>>\n\t\t<TELL\n\"The safety web seems to be more intended for getting into than\ngrabbing onto.\" CR>)\n\t       (<AND <VERB? BOARD CLIMB-ON>\n\t\t     <EQUAL? .RARG ,M-OBJECT>>\n\t\t<MOVE ,ADVENTURER ,SAFETY-WEB>\n\t\t<TELL\n\"You are now safely cushioned within the web.\" CR>)\n\t       (<AND <VERB? OPEN TAKE>\n\t\t     <EQUAL? .RARG ,M-BEG>>\n\t\t<COND (<EQUAL? ,PRSO ,SAFETY-WEB>\n\t\t       <TELL \"You're in it!\" CR>)\n\t\t      (T\n\t\t       <TELL \"You can't reach it from here.\" CR>)>)\n\t       (<AND <VERB? WALK>\n\t\t     <EQUAL? .RARG ,M-BEG>>\n\t\t<TELL \"You'll have to stand up, first.\" CR>)\n\t       (<AND <VERB? EXIT DISEMBARK DROP STAND>\n\t\t     <EQUAL? .RARG ,M-OBJECT>\n\t\t     <IN? ,ADVENTURER ,SAFETY-WEB>>\n\t\t<MOVE ,ADVENTURER ,HERE>\n\t\t<COND (<AND <G? ,TRIP-COUNTER 14>\n\t\t\t    <EQUAL? <GET <INT I-SINK-POD> ,C-ENABLED?> 0>>\n\t\t       <ENABLE <QUEUE I-SINK-POD -1>>\n\t\t       <TELL\n\"As you stand, the pod shifts slightly and you feel it falling.\nA moment later, the fall stops with a shock, and you see water\nrising past the viewport.\" CR>)\n\t\t      (T\n\t\t       <TELL \"You are standing again.\" CR>)>)>> \n\n<OBJECT TOWEL\n\t(DESC \"towel\")\n\t(SYNONYM TOWEL)\n\t(SIZE 10)\n\t(FLAGS READBIT TAKEBIT)\n\t(TEXT\n\"\\\"S.P.S. FEINSTEIN|\n  Escape Pod #42|\n   Don't Panic!\\\"\")\n\t(ACTION TOWEL-F)>\n\n<ROUTINE TOWEL-F ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"A pretty ordinary towel. Something is written in its corner.\" CR>)>>\n\n<OBJECT FOOD-KIT\n\t(DESC \"survival kit\")\n\t(SYNONYM PROVISIONS KIT)\n\t(ADJECTIVE SURVIVAL EMERGENCY)\n\t(SIZE 10)\n\t(CAPACITY 25)\n\t(FLAGS TAKEBIT CONTBIT SEARCHBIT)\n\t(ACTION FOOD-KIT-F)>\n\n<ROUTINE FOOD-KIT-F ()\n\t <COND (<VERB? EMPTY>\n\t\t<COND (<NOT <FSET? ,FOOD-KIT ,OPENBIT>>\n\t\t       <TELL \"The kit is closed!\" CR>)\n\t\t      (<FIRST? ,PRSO>\n\t\t       <TELL\n\"The goo, being gooey, sticks to the inside of the kit. You would probably\nhave to shake the kit to get the goo out.\" CR>)>)>>\n\n<OBJECT RED-GOO\n\t(IN FOOD-KIT)\n\t(DESC \"blob of red goo\")\n\t(SYNONYM GOO BLOB FOOD PIE)\n\t(ADJECTIVE RED CHERRY)\n\t(FLAGS ACIDBIT FOODBIT)\n\t(ACTION GOO-F)>\n\n<OBJECT BROWN-GOO\n\t(IN FOOD-KIT)\n\t(DESC \"blob of brown goo\")\n\t(SYNONYM GOO BLOB FOOD STEW)\n\t(ADJECTIVE BROWN BEEF)\n\t(FLAGS ACIDBIT FOODBIT)\n\t(ACTION GOO-F)>\n\n<OBJECT GREEN-GOO\n\t(IN FOOD-KIT)\n\t(DESC \"blob of green goo\")\n\t(SYNONYM GOO BLOB FOOD BEANS)\n\t(ADJECTIVE GREEN LIMA)\n\t(FLAGS ACIDBIT FOODBIT)\n\t(ACTION GOO-F)>\n\n<ROUTINE GOO-F ()\n\t<COND (<VERB? EAT>\n\t       <COND (<EQUAL? ,HUNGER-LEVEL 0>\n\t\t      <TELL ,NOT-HUNGRY CR>)\n\t\t     (<NOT <IN? ,FOOD-KIT ,ADVENTURER>>\n\t\t      <SETG PRSO ,FOOD-KIT>\n\t\t      <NOT-HOLDING>\n\t\t      <THIS-IS-IT ,FOOD-KIT>)\n\t\t     (T\n\t\t      <REMOVE ,PRSO>\n\t\t      <SETG C-ELAPSED 15>\n\t\t      <SETG HUNGER-LEVEL 0>\n\t\t      <ENABLE <QUEUE I-HUNGER-WARNINGS 1450>>\n\t\t      <TELL \"Mmmm...that tasted just like \">\n\t\t      <COND (<EQUAL? ,PRSO ,BROWN-GOO>\n\t\t\t     <TELL \"delicious Nebulan fungus pudding\">)\n\t\t\t    (<EQUAL? ,PRSO ,RED-GOO>\n\t\t\t     <TELL \"scrumptious cherry pie\">)\n\t\t\t    (T\n\t\t\t     <TELL \"yummy lima beans\">)>\n\t\t      <TELL \".\" CR>)>)\n\t      (<VERB? TAKE DROP>\n\t       <COND (<VERB? DROP>\t\n\t       \t      <TELL \"The goo, being gooey, sticks where it is\">)\n\t             (<VERB? TAKE>\n\t              <TELL \"It would ooze through your fingers\">)>\n\t       <TELL\n\". You'll have to eat it right from the survival kit.\" CR>)>>\n\n<ROUTINE ESCAPE-POD-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is one of the Feinstein's primary escape pods, for use in extreme\nemergencies. A mass of safety webbing, large enough to hold several dozen\npeople, fills half the pod. The controls are entirely automated. The\nbulkhead leading out is \">\n\t\t<DDESC ,POD-DOOR>\n\t\t<TELL \".\" CR>)>>\n\n<OBJECT POD-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"escape pod bulkhead\")\n\t(SYNONYM DOOR BULKHEAD)\n\t(ADJECTIVE EMERGENCY ESCAPE POD)\n\t(FLAGS VOWELBIT DOORBIT NDESCBIT)\n\t(ACTION POD-DOOR-F)>\n\n<ROUTINE POD-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,POD-DOOR ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (<G? ,TRIP-COUNTER 14>\n\t\t       <FSET ,POD-DOOR ,OPENBIT>\n\t\t       <TELL \n\"The bulkhead opens and cold ocean water rushes in!\" CR>)\n\t\t      (<G? ,BLOWUP-COUNTER 0>\n\t\t       <COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t\t      <TELL\n\"Too late. The pod's launching procedure has already begun.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"Opening the door now would be a phenomenally stupid idea.\" CR>)>)\n\t\t      (T\n\t\t       <TELL\n\"Why open the door to the emergency escape pod if there's no emergency?\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<NOT <FSET? ,POD-DOOR ,OPENBIT>>\n\t\t       <IS-CLOSED>)\n\t\t      (T\n\t\t       <TELL \"You can't close it yourself.\" CR>)>)\n\t       (<VERB? THROUGH>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <DO-WALK ,P?WEST>)\n\t\t      (T\n\t\t       <DO-WALK ,P?OUT>)>)>>\n\n<OBJECT CORRIDOR-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"wide bulkhead\")\n\t(SYNONYM DOOR BULKHEAD)\n\t(ADJECTIVE EMERGENCY WIDE)\n\t(FLAGS INVISIBLE DOORBIT OPENBIT NDESCBIT)\n\t(ACTION GANGWAY-DOOR-F)>\n\n<OBJECT GANGWAY-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"narrow bulkhead\")\n\t(SYNONYM DOOR BULKHEAD)\n\t(ADJECTIVE EMERGENCY NARROW)\n\t(FLAGS INVISIBLE DOORBIT OPENBIT NDESCBIT)\n\t(ACTION GANGWAY-DOOR-F)>\n\n<ROUTINE GANGWAY-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (<FSET? ,PRSO ,OPENBIT>\n\t\t       <ALREADY-OPEN>)\n\t\t      (T\n\t\t       <TELL\n\"There doesn't seem to be any way to open it.\" CR>)>)\n\t       (<VERB? CLOSE>\n\t\t<COND (<FSET? ,PRSO ,OPENBIT>\n\t\t       <TELL \"You can't close it yourself.\" CR>)\n\t\t      (T\n\t\t       <IS-CLOSED>)>)>>\n\n<GLOBAL BLOWUP-COUNTER 0>\n\n<ROUTINE I-BLOWUP-FEINSTEIN ()\n\t <ENABLE <QUEUE I-BLOWUP-FEINSTEIN -1>>\n\t <SETG BLOWUP-COUNTER <+ ,BLOWUP-COUNTER 1>>\n\t <COND (<EQUAL? ,BLOWUP-COUNTER 5>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <JIGS-UP\n\"|\nAn enormous explosion tears the walls of the ship apart. If only you\nhad made it to an escape pod...\">)\n\t\t      (T\n\t\t       <TELL CR\n\"Through the viewport of the pod you see the Feinstein dwindle as you head\naway. Bursts of light dot its hull. Suddenly, a huge explosion blows the\nFeinstein into tiny pieces, sending the escape pod tumbling away! \" CR>\n\t\t       <ENABLE <QUEUE I-POD-TRIP -1>>\n\t\t       <DISABLE <INT I-BLOWUP-FEINSTEIN>>\n\t\t       <COND (<AND <NOT <IN? ,ADVENTURER ,SAFETY-WEB>>\n\t\t\t\t   <PROB 20>>\n\t\t\t      <JIGS-UP\n\"|\nYou are thrown against the bulkhead, head first. It seems that getting in\nthe safety webbing would have been a good idea.\">)\n\t\t\t     (<NOT <IN? ,ADVENTURER ,SAFETY-WEB>>\n\t\t\t      <TELL CR\n\"You are thrown against the bulkhead, bruising a few limbs. The safety\nwebbing might have offered a bit more protection.\" CR>)>)>)\n\t       (<EQUAL? ,BLOWUP-COUNTER 4>\n\t\t<DISABLE <INT I-BLATHER>>\n\t\t<DISABLE <INT I-AMBASSADOR>>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL CR \"Explosions continue to rock the ship.\" CR>)\n\t\t      (T\n\t\t       <TELL CR\n\"You feel the pod begin to slide down its ejection tube as explosions shake\nthe mother ship.\" CR>)>)\n\t       (<EQUAL? ,BLOWUP-COUNTER 3>\n\t\t<FCLEAR ,POD-DOOR ,OPENBIT>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL CR\n\"More powerful explosions buffet the ship. The lights flicker madly,\nand the escape-pod bulkhead clangs shut.\" CR>)\n\t\t      (<EQUAL? ,HERE ,ESCAPE-POD>\n\t\t       <TELL CR\n\"The pod door clangs shut as heavy explosions continue to buffet the\nFeinstein.\" CR>)\n\t\t      (T\n\t\t       <JIGS-UP\n\"|\nThe ship rocks from the force of multiple explosions. The lights go out, and\nyou feel a sudden drop in pressure accompanied by a loud hissing. Too bad you\nweren't in the escape pod...\">)>)\n\t       (<EQUAL? ,BLOWUP-COUNTER 2>\n\t\t<FCLEAR ,CORRIDOR-DOOR ,OPENBIT>\n\t\t<FCLEAR ,CORRIDOR-DOOR ,INVISIBLE>\n\t\t<FCLEAR ,GANGWAY-DOOR ,OPENBIT>\n\t\t<FCLEAR ,GANGWAY-DOOR ,INVISIBLE>\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL CR\n\"More distant explosions! A narrow emergency bulkhead at the base of the\ngangway and a wider one along the corridor to starboard both crash shut!\" CR>)\n\t\t      (<EQUAL? ,HERE ,ESCAPE-POD ,BRIG>\n\t\t       <TELL CR\n\"The ship shakes again. You hear, from close by, the sounds of emergency\nbulkheads closing.\" CR>)\n\t\t      (<EQUAL? ,HERE ,GANGWAY>\n\t\t       <TELL CR\n\"Another explosion. A narrow bulkhead at the base of the\ngangway slams shut!\" CR>)\n\t\t      (T\n\t\t       <TELL CR\n\"You are deafened by more explosions and by the sound of emergency bulkheads\nslamming closed. \">\n\t\t       <COND (<IN? ,BLATHER ,HERE>\n\t\t\t      <TELL\n\"Blather, foaming slightly at the mouth, screams at you to swab the decks\">)\n\t\t\t     (T\n\t\t\t      <MOVE ,BLATHER ,HERE>\n\t\t\t      <TELL\n\"Blather enters, looking confused, and begins ranting madly at you\">)>\n\t\t       <TELL \".\" CR>)>)\n\t       (<EQUAL? ,BLOWUP-COUNTER 1>\n\t\t<SETG BRIGS-UP 0>\n\t\t<FSET ,POD-DOOR ,OPENBIT>\n\t\t<TELL CR\n\"A massive explosion rocks the ship. Echoes from the explosion resound\ndeafeningly down the halls. \">\n\t\t<COND (<EQUAL? ,HERE ,DECK-NINE>\n\t\t       <TELL \"The door to port slides open. \">\n\t\t       <COND (<IN? ,AMBASSADOR ,HERE>\n\t\t\t      <REMOVE ,AMBASSADOR>\n\t\t\t      <REMOVE ,CELERY>\n\t\t\t      <TELL\n\"The ambassador squawks frantically, evacuates a massive load of gooey\nslime, and rushes away.\" CR>)\n\t\t\t     (<IN? ,BLATHER ,HERE>\n\t\t\t      <REMOVE ,BLATHER>\n\t\t\t      <TELL\n\"Blather, confused by this non-routine occurrence, orders you to continue\nscrubbing the floor, and then dashes off.\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL CR>)>)\n\t\t      (<EQUAL? ,HERE ,ESCAPE-POD ,GANGWAY ,BRIG>\n\t\t       <TELL CR>)\n\t\t      (T\n\t\t       <TELL\n\"Blather, looking slightly disoriented, barks at you to resume your assigned\nduties.\" CR>)>)>>\n\n<GLOBAL TRIP-COUNTER 0>\n\n<ROUTINE I-POD-TRIP ()\n\t <SETG TRIP-COUNTER <+ ,TRIP-COUNTER 1>>\n\t <COND (<EQUAL? ,TRIP-COUNTER 1>\n\t\t<TELL CR\n\"As the escape pod tumbles away from the former location of the Feinstein, its\ngyroscopes whine. The pod slowly stops tumbling. Lights on the control panel\nblink furiously as the autopilot searches for a reasonable destination.\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 2>\n\t\t<TELL CR\n\"The auxiliary rockets fire briefly, and a nearby planet swings into view\nthrough the port. It appears to be almost entirely ocean, with just a few\nvisible islands and an unusually small polar ice cap. A moment later, the\nsystem's sun swings into view, and the viewport polarizes into a featureless\nblack rectangle.\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 3>\n\t\t<TELL CR\n\"The main thrusters fire a long, gentle burst. A monotonic voice issues\nfrom the control panel. \\\"Approaching planet...human-habitable.\\\"\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 7>\n\t\t<TELL CR\n\"The pod is buffeted as it enters the planet's atmosphere.\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 8>\n\t\t<TELL CR\n\"You feel the temperature begin to rise, and the pod's climate\ncontrol system roars as it labors to compensate.\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 9>\n\t\t<TELL CR\n\"The viewport suddenly becomes transparent again, giving you a view of\nendless ocean below. The lights on the control panel flash madly as\nthe pod's computer searches for a suitable landing site. The thrusters fire\nlong and hard, slowing the pod's descent.\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 10>\n\t\t<TELL CR\n\"The pod is now approaching the closer of a pair of islands. It appears\nto be surrounded by sheer cliffs rising from the water, and is topped by\na wide plateau. The plateau seems to be covered by a sprawling complex\nof buildings.\" CR>)\n\t       (<EQUAL? ,TRIP-COUNTER 11>\n\t\t<COND (<IN? ,ADVENTURER ,SAFETY-WEB>\n\t\t       <MOVE ,FOOD-KIT ,HERE>\n\t\t       <MOVE ,TOWEL ,HERE>\n\t\t       <TELL CR\n\"The pod lands with a thud. Through the viewport you can see a rocky cleft\nand some water below. The pod rocks gently back and forth as if it was\nprecariously balanced. A previously unseen panel slides open, revealing\nsome emergency provisions, including a survival kit and a towel.\" CR>\n\t\t       <SETG TRIP-COUNTER 15>\n\t\t       <DISABLE <INT I-POD-TRIP>>)\n\t\t      (T\n\t\t       <JIGS-UP\n\"|\nThe pod, whose automated controls were unfortunately designed by computer\nscientists, lands with a good deal of force. Your body sails across the pod\nuntil it is stopped by one of the sharper corners of the control panel.\">)>)>>\n\n<GLOBAL SINK-COUNTER 0>\n\n<ROUTINE I-SINK-POD ()\n\t <SETG SINK-COUNTER <+ ,SINK-COUNTER 1>>\n\t <COND (<AND <EQUAL? ,SINK-COUNTER 3>\n\t\t     <EQUAL? ,HERE ,ESCAPE-POD>>\n\t\t<TELL CR \n\"The pod is now completely submerged, and you feel it smash against underwater\nrocks. Bubbles streaming upward past the window indicate that the pod is\ncontinuing to sink.\" CR>)\n\t       (<AND <EQUAL? ,SINK-COUNTER 4>\n\t\t     <EQUAL? ,HERE ,ESCAPE-POD>\n\t\t     <NOT <FSET? ,POD-DOOR ,OPENBIT>>>\n\t\t<TELL CR \n\"The pod creaks ominously from the increasing pressure.\" CR>)\n\t       (<AND <EQUAL? ,SINK-COUNTER 5>\n\t\t     <EQUAL? ,HERE ,ESCAPE-POD>>\n\t\t<COND (<FSET? ,POD-DOOR ,OPENBIT>\n\t\t       <JIGS-UP\n\"|\nBetween the swirling waters and the increasing pressure, it's curtains\nfor you. Perhaps you should have left the pod a bit sooner.\">)\n\t\t      (T\n\t\t       <JIGS-UP\n\"|\nThe pod splits open, and water pours in.\">)>)>>\n\n\f\n\"The next bunch of stuff is for the cards, slots, and associated junk.\"\n\n<OBJECT SLOT\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"slot\")\n\t(SYNONYM SLOT)\n\t(ADJECTIVE SMALL)\n\t(FLAGS NDESCBIT)\n\t(ACTION SLOT-F)>\n\n<ROUTINE SLOT-F ()\n\t <COND (<AND <VERB? PUT>\n\t\t     <EQUAL? ,SLOT ,PRSI>>\n\t\t<TELL\n\"The slot is shallow, so you can't put anything in it. It may be possible to\nslide something through the slot, though.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL\n\"The slot is about ten centimeters wide, but only about two centimeters deep.\nIt is surrounded on its long sides by parallel ridges of metal.\" CR>)\n\t       (<AND <VERB? SLIDE>\n\t\t     <EQUAL? ,SLOT ,PRSI>>\n\t\t<MOVE ,PRSO ,ADVENTURER>\n\t\t<COND (<FSET? ,PRSO ,SCRAMBLEDBIT>\n\t\t       <TELL\n\"A sign flashes \\\"Magnetik striip randumiizd...konsult Prajekt Handbuk abowt\npropur kaar uv awtharazaashun kardz.\\\"\" CR>)\n\t\t      (<EQUAL? ,PRSO ,KITCHEN-CARD>\n\t\t       <COND (<EQUAL? ,HERE ,MESS-HALL>\n\t\t\t      <COND (<FSET? ,KITCHEN-DOOR ,OPENBIT>\n\t\t\t\t     <TELL \"Nothing happens.\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <FSET ,KITCHEN-DOOR ,OPENBIT>\n\t\t\t\t     <ENABLE <QUEUE I-KITCHEN-DOOR-CLOSES 50>>\n\t\t\t\t     <TELL\n\"The kitchen door quietly slides open.\" CR>\n\t\t\t\t     <FLOYD-REVEAL-CARD-F>\n\t\t\t\t     <RTRUE>)>)\n\t\t\t     (T\n\t\t\t      <TELL ,WRONG-CARD CR>)>)\n\t\t      (<EQUAL? ,PRSO ,UPPER-ELEVATOR-CARD>\n\t\t       <COND (<EQUAL? ,HERE ,UPPER-ELEVATOR>\n\t\t\t      <SETG UPPER-ELEVATOR-ON T>\n\t\t\t      <ENABLE <QUEUE I-TURNOFF-UPPER-ELEVATOR 180>>\n\t\t\t      <TELL ,ELEVATOR-ENABLED CR>\n\t\t\t      <FLOYD-REVEAL-CARD-F>\n\t\t\t      <RTRUE>)\n\t\t\t     (T\n\t\t\t      <TELL ,WRONG-CARD CR>)>)\n\t\t      (<EQUAL? ,PRSO ,LOWER-ELEVATOR-CARD>\n\t\t       <COND (<EQUAL? ,HERE ,LOWER-ELEVATOR>\n\t\t\t      <SETG LOWER-ELEVATOR-ON T>Y\n\t\t\t      <ENABLE <QUEUE I-TURNOFF-LOWER-ELEVATOR 200>>\n\t\t\t      <TELL ,ELEVATOR-ENABLED CR>)\n\t\t\t     (T\n\t\t\t      <TELL ,WRONG-CARD CR>)>)\n\t\t      (<EQUAL? ,PRSO ,TELEPORTATION-CARD>\n\t\t       <COND (<EQUAL? ,HERE ,BOOTH-1 ,BOOTH-2 ,BOOTH-3>\n\t\t\t      <SETG TELEPORTATION-ON T>\n\t\t\t      <ENABLE <QUEUE I-TURNOFF-TELEPORTATION 30>>\n\t\t\t      <TELL\n\"Nothing happens for a moment. Then a light flashes \\\"Redee.\\\"\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL ,WRONG-CARD CR>)>)\n\t\t      (<EQUAL? ,PRSO ,SHUTTLE-CARD>\n\t\t       <SHUTTLE-ACTIVATE>)\n\t\t      (<EQUAL? ,PRSO ,MINI-CARD>\n\t\t       <COND (<EQUAL? ,HERE ,MINI-BOOTH>\n\t\t\t      <SETG MINI-ACTIVATED T>\n\t\t\t      <ENABLE <QUEUE I-TURNOFF-MINI 30>>\n\t\t\t      <TELL\n\"A melodic high-pitched voice says \\\"Miniaturization and teleportation booth\nactivated. Please type in damaged sector number.\\\"\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL ,WRONG-CARD CR>)>)\n\t\t      (<EQUAL? ,PRSO ,ID-CARD>\n\t\t       <TELL ,WRONG-CARD CR>)>)>>\n\n<GLOBAL ELEVATOR-ENABLED \"A recorded voice chimes \\\"Elevator enabled.\\\"\">\n\n<GLOBAL WRONG-CARD \n\"A sign flashes \\\"Inkorekt awtharazaashun kard...akses deeniid.\\\"\">\n\n<GLOBAL CARD-REVEALED <>> ;\"checks whether Floyd has already revealed his card\"\n\n<ROUTINE FLOYD-REVEAL-CARD-F ()\n\t <COND (<AND <IN? ,FLOYD ,HERE>\n\t\t     <NOT ,CARD-REVEALED>\n\t\t     <OR <AND <EQUAL? ,DAY 2>\n\t\t\t      <L? ,INTERNAL-MOVES 5000>\n\t\t\t      <PROB 5>>\n\t\t\t <AND <EQUAL? ,DAY 2>\n\t\t\t      <G? ,INTERNAL-MOVES 4999>\n\t\t\t      <PROB 10>>\n\t\t\t <AND <EQUAL? ,DAY 3>\n\t\t\t      <L? ,INTERNAL-MOVES 5000>\n\t\t\t      <PROB 20>>\n\t\t\t <AND <EQUAL? ,DAY 3>\n\t\t\t      <G? ,INTERNAL-MOVES 4999>\n\t\t\t      <PROB 40>>\n\t\t\t <G? ,DAY 3>>>\n\t\t<SETG CARD-REVEALED T>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<COND (<NOT ,CARD-STOLEN>\n\t\t       <MOVE ,LOWER-ELEVATOR-CARD ,FLOYD>\n\t\t       <TELL\n\"Floyd claps his hands with excitement. \\\"Those cards are really neat, huh?\nFloyd has one for himself--see?\\\" He reaches behind one of his panels and\nretrieves a magnetic-striped card. He waves it exuberantly in the air.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"Floyd bobs up and down with excitement. \\\"Those cards are really neat! Floyd\nhas one, too.\\\" He begins searching through his compartments, but finds\nnothing. He scratches his head and looks confused.\" CR>)>)>>\n\n<ROUTINE I-KITCHEN-DOOR-CLOSES ()\n\t <COND (<EQUAL? ,HERE ,KITCHEN>\n\t\t<ENABLE <QUEUE I-KITCHEN-DOOR-CLOSES -1>>\n\t\t<RFALSE>)\n\t       (T\n\t\t<FCLEAR ,KITCHEN-DOOR ,OPENBIT>\n\t\t<DISABLE <INT I-KITCHEN-DOOR-CLOSES>>\n\t\t<COND (<EQUAL? ,HERE ,MESS-HALL>\n\t\t       <TELL CR\n\"The kitchen door slides quietly closed.\" CR>)>)>>\n\f\n\n;\"teleportation stuff\"\n\n<OBJECT TELEPORTATION-BUTTON-1\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"brown button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BROWN FIRST)\n\t(FLAGS NDESCBIT)\n\t(ACTION TELEPORTATION-BUTTON-1-F)>\n\n<OBJECT TELEPORTATION-BUTTON-2\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"beige button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE BEIGE SECOND)\n\t(FLAGS NDESCBIT)\n\t(ACTION TELEPORTATION-BUTTON-2-F)>\n\n<OBJECT TELEPORTATION-BUTTON-3\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"tan button\")\n\t(SYNONYM BUTTON)\n\t(ADJECTIVE TAN THIRD)\n\t(FLAGS NDESCBIT)\n\t(ACTION TELEPORTATION-BUTTON-3-F)>\n\n<GLOBAL TELEPORTATION-ON <>>\n\n<ROUTINE TELEPORT (BOOTH)\n\t <COND (<VERB? PUSH>\n\t\t<COND (<EQUAL? ,TELEPORTATION-ON T>\n\t\t       <TELL\n\"You experience a strange feeling in the pit of your stomach.\" CR>\n\t\t       <COND (<IN? ,FLOYD ,HERE>\n\t\t\t      <TELL\n\"Floyd gives a terrified squeal, and clutches at his guidance mechanism.\" CR>\n\t\t\t      <SETG FLOYD-SPOKE T>\n\t\t\t      <ENABLE <QUEUE I-FLOYD 1>>)>\n\t\t       <ROB ,HERE .BOOTH>\n\t\t       <GOTO .BOOTH <>>\n\t\t       <DISABLE <INT I-TURNOFF-TELEPORTATION>>\n\t\t       <SETG TELEPORTATION-ON <>>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL\n\"A sign flashes \\\"Teleportaashun buux not aktivaatid.\\\"\" CR>)>)>>\n\n<ROUTINE TELEPORTATION-BUTTON-1-F ()\n\t <TELEPORT ,BOOTH-1>>\n\n<ROUTINE TELEPORTATION-BUTTON-2-F ()\n\t <TELEPORT ,BOOTH-2>>\n\n<ROUTINE TELEPORTATION-BUTTON-3-F ()\n\t <TELEPORT ,BOOTH-3>>\n\n<ROUTINE I-TURNOFF-TELEPORTATION ()\n\t <SETG TELEPORTATION-ON <>>\n\t <COND (<EQUAL? ,HERE ,BOOTH-1 ,BOOTH-2 ,BOOTH-3>\n\t\t<TELL CR \"The ready light goes dark.\" CR>)>>\n\n\f\n\n;\"shuttle system\"\n\n<OBJECT GLOBAL-SHUTTLE\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"shuttle car\")\n\t(SYNONYM CAR SHUTTL)\n\t(ADJECTIVE SHUTTL)\n\t(FLAGS NDESCBIT)\n\t(ACTION GLOBAL-SHUTTLE-F)>\n\n<ROUTINE GLOBAL-SHUTTLE-F ()\n\t <COND (<VERB? ENTER THROUGH WALK-TO BOARD>\n\t\t<COND (<OR <EQUAL? ,HERE ,SHUTTLE-CAR-ALFIE\n\t\t\t\t         ,ALFIE-CONTROL-EAST\n\t\t\t\t\t ,ALFIE-CONTROL-WEST>\n\t\t\t   <EQUAL? ,HERE ,SHUTTLE-CAR-BETTY\n\t\t\t\t         ,BETTY-CONTROL-EAST\n\t\t\t\t\t ,BETTY-CONTROL-WEST>>\n\t\t       <TELL \"You ARE in the shuttle car.\" CR>)\n\t\t      (T\n\t\t       <TELL \"Use 'north' or 'south'.\" CR>)>)\n\t       (<VERB? EXIT DISEMBARK DROP>\n\t\t<COND (<EQUAL? ,HERE ,SHUTTLE-CAR-ALFIE>\n\t\t       <DO-WALK ,P?NORTH>)\n\t\t      (<EQUAL? ,HERE ,SHUTTLE-CAR-BETTY>\n\t\t       <DO-WALK ,P?SOUTH>)\n\t\t      (<OR <EQUAL? ,HERE ,BETTY-CONTROL-EAST\n\t\t\t\t\t ,BETTY-CONTROL-WEST>\n\t\t\t   <EQUAL? ,HERE ,ALFIE-CONTROL-EAST\n\t\t\t\t         ,ALFIE-CONTROL-WEST>>\n\t\t       <TELL \"You can't exit the shuttle car from here.\" CR>)\n\t\t      (T\n\t\t       <TELL \"You're not in the shuttle car!\" CR>)>)>>\n\n<ROOM SHUTTLE-CAR-ALFIE\n      (IN ROOMS)\n      (DESC \"Shuttle Car Alfie\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (NORTH PER SHUTTLE-EXIT-F)\n      (EAST TO ALFIE-CONTROL-EAST)\n      (WEST TO ALFIE-CONTROL-WEST)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL GLOBAL-SHUTTLE SHUTTLE-DOOR)\n      (ACTION SHUTTLE-CAR-F)>\n\n<ROOM ALFIE-CONTROL-EAST\n      (IN ROOMS)\n      (DESC \"Alfie Control East\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO SHUTTLE-CAR-ALFIE IF SHUTTLE-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL SLOT WINDOW LEVER SHUTTLE-DOOR GLOBAL-SHUTTLE)\n      (ACTION CONTROL-CABIN-F)>\n\n<ROOM ALFIE-CONTROL-WEST\n      (IN ROOMS)\n      (DESC \"Alfie Control West\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO SHUTTLE-CAR-ALFIE IF SHUTTLE-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL SLOT LEVER WINDOW SHUTTLE-DOOR GLOBAL-SHUTTLE)\n      (ACTION CONTROL-CABIN-F)>\n\n<OBJECT LEVER\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"lever\")\n\t(SYNONYM LEVER)\n\t(FLAGS NDESCBIT)\n\t(ACTION LEVER-F)>\n\n<OBJECT SHUTTLE-DOOR\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"door\")\n\t(SYNONYM DOOR)\n\t(FLAGS DOORBIT OPENBIT INVISIBLE)\n\t(ACTION SHUTTLE-DOOR-F)>\n\n<ROUTINE SHUTTLE-CAR-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL\n\"This is the cabin of a large transport, with seating for around 20 people\nplus space for freight. There are open doors at the eastern and western ends\nof the cabin, and a doorway leads out to a wide platform to the \">\n\t\t<COND (<EQUAL? ,HERE ,SHUTTLE-CAR-ALFIE>\n\t\t       <TELL \"north\">)\n\t\t      (T\n\t\t       <TELL \"south\">)>\n\t\t<TELL \".\" CR>)>>\n\n<ROOM SHUTTLE-CAR-BETTY\n      (IN ROOMS)\n      (DESC \"Shuttle Car Betty\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (SOUTH PER SHUTTLE-EXIT-F)\n      (EAST TO BETTY-CONTROL-EAST)\n      (WEST TO BETTY-CONTROL-WEST)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL GLOBAL-SHUTTLE SHUTTLE-DOOR)\n      (ACTION SHUTTLE-CAR-F)>\n\n<ROOM BETTY-CONTROL-EAST\n      (IN ROOMS)\n      (DESC \"Betty Control East\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (WEST TO SHUTTLE-CAR-BETTY IF SHUTTLE-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL GLOBAL-SHUTTLE SLOT WINDOW LEVER SHUTTLE-DOOR)\n      (ACTION CONTROL-CABIN-F)>\n\n<ROOM BETTY-CONTROL-WEST\n      (IN ROOMS)\n      (DESC \"Betty Control West\")\n      (C-MOVE  <TABLE\n         ;\"OUT\" 0 ;\"IN\"   0 ;\"DOWN\" 0  ;\"UP\"     0\n         ;\"NW\"  0 ;\"WEST\" 0 ;\"SW\"   0  ;\"SOUTH\"  0 \n\t ;\"SE\"  0 ;\"EAST\" 0 ;\"NE\"   0  ;\"NORTH\"  0>)\n      (EAST TO SHUTTLE-CAR-BETTY IF SHUTTLE-DOOR IS OPEN)\n      (FLAGS RLANDBIT ONBIT)\n      (GLOBAL GLOBAL-SHUTTLE SLOT LEVER WINDOW SHUTTLE-DOOR)\n      (ACTION CONTROL-CABIN-F)>\n\n<ROUTINE CONTROL-CABIN-F (RARG)\n\t <COND (<EQUAL? .RARG ,M-LOOK>\n\t\t<TELL \n\"This is a small control cabin. A control panel contains a slot, a lever,\nand a display. The lever can be set at a central position, or it could be\npushed up to a position labelled \\\"+\\\", or pulled down to a position\nlabelled \\\"-\\\". It is currently at the \">\n\t\t<COND (<EQUAL? ,LEVER-SETTING 0>\n\t\t       <TELL \"center\">)\n\t\t      (<EQUAL? ,LEVER-SETTING 1>\n\t\t       <TELL \"upper\">)\n\t\t      (T\n\t\t       <TELL \"lower\">)>\n\t\t<TELL\n\" setting. The display, a digital readout, currently reads \">\n\t\t<TELL N ,SHUTTLE-VELOCITY>\n\t\t<TELL \". Through the cabin window you can see \">\n\t\t<DESCRIBE-VIEW>\n\t\t<TELL CR>)>>\n\n<ROUTINE DESCRIBE-VIEW ()\n\t <COND (<OR <AND <EQUAL? ,HERE ,ALFIE-CONTROL-WEST>\n\t\t\t  ,ALFIE-AT-KALAMONTEE>\n\t\t     <AND <EQUAL? ,HERE ,BETTY-CONTROL-WEST>\n\t\t\t  ,BETTY-AT-KALAMONTEE>\n\t\t     <AND <EQUAL? ,HERE ,ALFIE-CONTROL-EAST>\n\t\t\t  <NOT ,ALFIE-AT-KALAMONTEE>>\n\t\t     <AND <EQUAL? ,HERE ,BETTY-CONTROL-EAST>\n\t\t\t  <NOT ,BETTY-AT-KALAMONTEE>>>\n\t\t <TELL \"a featureless concrete wall.\">)\n\t\t(<AND ,SHUTTLE-MOVING\n\t\t      <EQUAL? ,SHUTTLE-COUNTER 23>>\n\t\t <TELL\n\"parallel rails ending at a brightly-lit station ahead.\">)\n\t\t(T\n\t\t <TELL \"parallel rails running along the floor of a long\ntunnel, vanishing in the distance.\">)>>\n\t\t\n<ROUTINE SHUTTLE-DOOR-F ()\n\t <COND (<VERB? OPEN>\n\t\t<COND (,SHUTTLE-MOVING\n\t\t       <TELL\n\"A recorded voice says \\\"Operator should remain in control cabin while shuttle\ncar is between stations.\\\"\" CR>)\n\t\t      (T\n\t\t       <TELL \"Are you sure it isn't?\" CR>)>)>>\n\n<ROUTINE SHUTTLE-ENTER-F ()\n\t <COND (<EQUAL? ,HERE ,KALAMONTEE-PLATFORM>\n\t\t<COND (<EQUAL? ,PRSO ,P?NORTH>\n\t\t       <COND (,BETTY-AT-KALAMONTEE\n\t\t\t      ,SHUTTLE-CAR-BETTY)\n\t\t\t     (T\n\t\t\t      <TELL ,CANT-GO CR>\n\t\t\t      <RFALSE>)>)\n\t\t      (<EQUAL? ,PRSO ,P?SOUTH>\n\t\t       <COND (,ALFIE-AT-KALAMONTEE\n\t\t\t      ,SHUTTLE-CAR-ALFIE)\n\t\t\t     (T\n\t\t\t      <TELL ,CANT-GO CR>\n\t\t\t      <RFALSE>)>)>)\n\t       (<EQUAL? ,HERE ,LAWANDA-PLATFORM>\n\t\t<COND (<EQUAL? ,PRSO, P?NORTH>\n\t\t       <COND (,BETTY-AT-KALAMONTEE\n\t\t\t      <TELL ,CANT-GO CR>\n\t\t\t      <RFALSE>)\n\t\t\t     (T\n\t\t\t      ,SHUTTLE-CAR-BETTY)>)\n\t\t      (<EQUAL? ,PRSO ,P?SOUTH>\n\t\t       <COND (,ALFIE-AT-KALAMONTEE\n\t\t\t      <TELL ,CANT-GO CR>\n\t\t\t      <RFALSE>)\n\t\t\t     (T\n\t\t\t      ,SHUTTLE-CAR-ALFIE)>)>)>>\n\n<GLOBAL CANT-GO \"You can't go that way.\">\n\n<ROUTINE SHUTTLE-EXIT-F ()\n\t <COND (<EQUAL? ,HERE ,SHUTTLE-CAR-ALFIE>\n\t\t<COND (,ALFIE-AT-KALAMONTEE\n\t\t       ,KALAMONTEE-PLATFORM)\n\t\t      (T\n\t\t       ,LAWANDA-PLATFORM)>)\n\t       (<EQUAL? ,HERE ,SHUTTLE-CAR-BETTY>\n\t\t<COND (,BETTY-AT-KALAMONTEE\n\t\t       ,KALAMONTEE-PLATFORM)\n\t\t      (T\n\t\t       ,LAWANDA-PLATFORM)>)>>\n\n<GLOBAL ALFIE-AT-KALAMONTEE T> ;\"true if Alfie is at Kalamontee Station\"\n\n<GLOBAL BETTY-AT-KALAMONTEE <>> ;\"true if Betty is at Kalamontee Station\"\n\n<GLOBAL SHUTTLE-MOVING <>> ;\"true if Shuttle is between Stations\"\n\n<GLOBAL SHUTTLE-ON <>> ;\"true if shuttle is activated\"\n\n<GLOBAL SHUTTLE-VELOCITY 0>\n\n<GLOBAL SHUTTLE-COUNTER 0> ;\"number of moves in shuttle trip so far\"\n\n<ROUTINE SHUTTLE-ACTIVATE ()\n\t <COND (<AND <NOT <EQUAL? ,HERE ,ALFIE-CONTROL-EAST\n\t\t\t\t        ,ALFIE-CONTROL-WEST>>\n\t\t     <NOT <EQUAL? ,HERE ,BETTY-CONTROL-EAST\n\t\t\t\t        ,BETTY-CONTROL-WEST>>>\n\t\t<TELL ,WRONG-CARD CR>\n\t\t<RTRUE>)\n\t       (<OR <AND ,ALFIE-BROKEN\n\t\t     <EQUAL? ,HERE ,ALFIE-CONTROL-EAST ,ALFIE-CONTROL-WEST>>\n\t\t    <AND ,BETTY-BROKEN\n\t\t     <EQUAL? ,HERE ,BETTY-CONTROL-EAST ,BETTY-CONTROL-WEST>>>\n\t\t<TELL\n\"A garbled recording mentions that the shuttle car has undergone some\ndamage and that the repair robot has been summoned.\" CR>\n\t\t<RTRUE>)\n\t       (<G? ,INTERNAL-MOVES 6000>\n\t\t<TELL\n\"A recorded voice explains that using the shuttle car during the evening\nhours requires special authorization.\" CR>\n\t\t<RTRUE>)>\n\t <COND (<EQUAL? ,HERE ,ALFIE-CONTROL-EAST>\n\t\t<COND (,SHUTTLE-ON\n\t\t       <TELL ,SHUTTLE-RECORDING-1 CR>)\n\t\t      (<NOT ,ALFIE-AT-KALAMONTEE>\n\t\t       <TELL ,SHUTTLE-RECORDING-2 CR>)\n\t\t      (T\n\t\t       <SETG SHUTTLE-ON T>\n\t\t       <ENABLE <QUEUE I-TURNOFF-SHUTTLE 80>>\n\t\t       <TELL ,SHUTTLE-RECORDING-3 CR>)>)\n\t       (<EQUAL? ,HERE ,ALFIE-CONTROL-WEST>\n\t\t<COND (,SHUTTLE-ON\n\t\t       <TELL ,SHUTTLE-RECORDING-1 CR>)\n\t\t      (,ALFIE-AT-KALAMONTEE\n\t\t       <TELL ,SHUTTLE-RECORDING-2 CR>)\n\t\t      (T\n\t\t       <SETG SHUTTLE-ON T>\n\t\t       <ENABLE <QUEUE I-TURNOFF-SHUTTLE 80>> \n\t\t       <TELL ,SHUTTLE-RECORDING-3 CR>)>)\n\t       (<EQUAL? ,HERE ,BETTY-CONTROL-EAST>\n\t\t<COND (,SHUTTLE-ON\n\t\t       <TELL ,SHUTTLE-RECORDING-1 CR>)\n\t\t      (<NOT ,BETTY-AT-KALAMONTEE>\n\t\t       <TELL ,SHUTTLE-RECORDING-2 CR>)\n\t\t      (T\n\t\t       <SETG SHUTTLE-ON T>\n\t\t       <ENABLE <QUEUE I-TURNOFF-SHUTTLE 80>>\n\t\t       <TELL ,SHUTTLE-RECORDING-3 CR>)>)\n\t       (<EQUAL? ,HERE ,BETTY-CONTROL-WEST>\n\t\t<COND (,SHUTTLE-ON\n\t\t       <TELL ,SHUTTLE-RECORDING-1 CR>)\n\t\t      (,BETTY-AT-KALAMONTEE\n\t\t       <TELL ,SHUTTLE-RECORDING-2 CR>)\n\t\t      (T\n\t\t       <SETG SHUTTLE-ON T>\n\t\t       <ENABLE <QUEUE I-TURNOFF-SHUTTLE 80>>\n\t\t       <TELL ,SHUTTLE-RECORDING-3 CR>)>)\n\t       (T\n\t\t<TELL ,WRONG-CARD CR>)>>\n\n<GLOBAL SHUTTLE-RECORDING-1 \n\"A recorded voice says \\\"Shuttle controls are already activated.\\\"\">\n\n<GLOBAL SHUTTLE-RECORDING-2\n\"A recorded voice says \\\"Use other control cabin. Control activation\noverridden.\\\"\">\n\n<GLOBAL SHUTTLE-RECORDING-3\n\"A recording of a deep male voice says \\\"Shuttle controls activated.\\\"\">\n\n<GLOBAL SHUTTLE-RECORDING-4\n\"A recorded voice says \\\"Shuttle controls are not currently activated.\\\"\">\n\n<ROUTINE I-TURNOFF-SHUTTLE ()\n\t <COND (,SHUTTLE-MOVING\n\t\t<ENABLE <QUEUE I-TURNOFF-SHUTTLE 80>>)\n\t       (T\n\t\t<SETG SHUTTLE-ON <>>)>\n\t <RFALSE>>\n\n<GLOBAL LEVER-SETTING 0> ;\"0 is the center position, 1 the upper, -1 the lower\"\n\n<ROUTINE LEVER-F ()\n\t <COND (<VERB? PUSH PUSH-UP>\n\t\t<COND (,SHUTTLE-ON\n\t\t       <COND (<EQUAL? ,LEVER-SETTING 1>\n\t\t\t      <TELL\n\"The lever is already in the upper position.\" CR>)\n\t\t\t     (<EQUAL? ,LEVER-SETTING 0>\n\t\t\t      <SETG LEVER-SETTING 1>\n\t\t\t      <ENABLE <QUEUE I-SHUTTLE 1>>\n\t\t\t      <TELL\n\"The lever is now in the upper position.\" CR>)\n\t\t\t     (T\n\t\t\t      <SETG LEVER-SETTING 0>\n\t\t\t      <TELL\n\"The lever is now in the central position.\" CR>)>)\n\t\t      (T\n\t\t       <TELL ,SHUTTLE-RECORDING-4 CR>)>)\n\t       (<VERB? PULL PUSH-DOWN>\n\t\t<COND (,SHUTTLE-ON\n\t\t       <COND (<EQUAL? ,LEVER-SETTING 1>\n\t\t\t      <SETG LEVER-SETTING 0>\n\t\t\t      <TELL\n\"The lever is now in the central position.\" CR>)\n\t\t\t     (<EQUAL? ,LEVER-SETTING 0>\n\t\t\t      <COND (<EQUAL? ,SHUTTLE-VELOCITY 0>\n\t\t\t\t     <TELL\n\"The lever immediately pops back to the central position.\" CR>)\n\t\t\t\t    (T\n\t\t\t\t     <SETG LEVER-SETTING -1>\n\t\t\t\t     <ENABLE <QUEUE I-SHUTTLE 1>>\n\t\t\t\t     <TELL\n\"The lever is now in the lower position.\" CR>)>)\n\t\t\t     (T\n\t\t\t      <TELL\n\"The lever is already in the lower position.\" CR>)>)\n\t\t      (T\n\t\t       <TELL ,SHUTTLE-RECORDING-4 CR>)>)>>\n\n<ROUTINE I-SHUTTLE ()\n\t <ENABLE <QUEUE I-SHUTTLE -1>>\n\t <COND (<NOT ,SHUTTLE-MOVING>\n\t\t<SETG SHUTTLE-MOVING T>\n\t\t<FCLEAR ,SHUTTLE-DOOR ,OPENBIT>\n\t\t<FCLEAR ,SHUTTLE-DOOR ,INVISIBLE>\n\t\t<TELL\n\"The control cabin door slides shut and the shuttle car begins to move \">\n\t\t<COND (<EQUAL? ,LEVER-SETTING 1>\n\t\t       <SETG SHUTTLE-VELOCITY <+ ,SHUTTLE-VELOCITY 5>>\n\t\t       <TELL\n\"forward! The display changes to 5.\" CR>)\n\t\t      ;(<EQUAL? ,LEVER-SETTING -1>\n\t\t       <TELL \"backward. You hear a loud crunch as the\nshuttle car runs into the rear wall of the station.\">\n\t\t       <SETG SHUTTLE-ON <>>\n\t\t       <SETG SHUTTLE-MOVING <>>\n\t\t       <SETG LEVER-SETTING 0>\n\t\t       <SETG SHUTTLE-ON <>>\n\t\t       <FSET ,SHUTTLE-DOOR ,INVISIBLE>\n\t\t       <FSET ,SHUTTLE-DOOR ,OPENBIT>\n\t\t       <DISABLE <INT I-SHUTTLE>>)>)\n\t       (T\n\t\t<COND (<G? ,SHUTTLE-VELOCITY 0>\n\t\t       <SETG SHUTTLE-COUNTER <+ ,SHUTTLE-COUNTER 1>>)>\n\t\t<COND (<EQUAL? ,LEVER-SETTING 1>\n\t\t       <SETG SHUTTLE-VELOCITY <+ ,SHUTTLE-VELOCITY 5>>)\n\t\t      (<EQUAL? ,LEVER-SETTING -1>\n\t\t       <COND (<G? ,SHUTTLE-VELOCITY 0>\n\t\t\t      <SETG SHUTTLE-VELOCITY <- ,SHUTTLE-VELOCITY 5>>)\n\t\t\t     (T\n\t\t\t      <SETG LEVER-SETTING 0>\n\t\t\t      <TELL\n\"The shuttle car comes to a stop and the lever pops back to the central\nposition.\" CR>)>)>\n\t\t<COND (<EQUAL? ,SHUTTLE-COUNTER 24>\n\t\t       <DESCRIBE-SHUTTLE-ARRIVE>)\n\t\t      (<G? ,SHUTTLE-VELOCITY 0>\n\t\t       <DESCRIBE-SHUTTLE-TRIP>\n\t\t       <RTRUE>)>)>>\n\n<ROUTINE DESCRIBE-SHUTTLE-TRIP ()\n\t <TELL\n\"The shuttle car continues to move. The display \">\n\t <COND (<EQUAL? ,LEVER-SETTING 0>\n\t\t<TELL \"still reads \">)\n\t       (T\n\t\t<TELL \"blinks, and now reads \">)>\n\t <TELL N ,SHUTTLE-VELOCITY>\n\t <TELL \".\" CR>\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 2>\n\t\t<TELL\n\"You pass a sign which says \\\"Limit 45.\\\"\" CR>)>\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 12>\n\t\t<TELL\n\"The tunnel levels out and begins to slope upward. A sign flashes by which\nreads \\\"Hafwaa Mark -- Beegin Deeseluraashun.\\\"\" CR>)>\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 20>\n\t\t<TELL ,SIGN-PASS>\n\t\t<TELL \"\\\"15.\\\"\" CR>)>\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 21>\n\t\t<TELL ,SIGN-PASS>\n\t\t<TELL \"\\\"10.\\\"\" CR>)>\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 22>\n\t\t<TELL ,SIGN-PASS>\n\t\t<TELL \"\\\"5.\\\"\" CR>)>\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 23>\n\t\t<TELL\n\"The shuttle car is approaching a brightly-lit area. As you near it, you\nmake out the concrete platforms of a shuttle station.\" CR>)>>\n\n<GLOBAL ALFIE-BROKEN <>>\n\n<GLOBAL BETTY-BROKEN <>>\n\n<ROUTINE DESCRIBE-SHUTTLE-ARRIVE ()\n\t <COND (<EQUAL? ,SHUTTLE-COUNTER 24>\n\t\t<COND (<EQUAL? ,SHUTTLE-VELOCITY 0>\n\t\t       <TELL\n\"The shuttle car glides into the station and comes to rest at the concrete\nplatform. You hear the cabin doors slide open.\" CR>)\n\t\t      (<L? ,SHUTTLE-VELOCITY 20>\n\t\t       <COND (<EQUAL? ,HERE ,ALFIE-CONTROL-EAST\n\t\t\t\t            ,ALFIE-CONTROL-WEST>\n\t\t\t      <SETG ALFIE-BROKEN T>)\n\t\t\t     (T\n\t\t\t      <SETG BETTY-BROKEN T>)>\n\t\t       <TELL\n\"The shuttle car rumbles through the station and smashes into the wall at\nthe far end. You are thrown forward into the control panel. Both you\nand the shuttle car produce unhealthy crunching sounds as the cabin\ndoors creak slowly open.\" CR>)\n\t\t      (T\n\t\t       <JIGS-UP\n\"The shuttle car hurtles past the platforms and rams into the wall at the\nfar end of the station. The shuttle car is destroyed, but you're in no\ncondition to care.\">)>\n\t\t<SETG SHUTTLE-VELOCITY 0>\n\t\t<SETG SHUTTLE-MOVING <>>\n\t\t<SETG SHUTTLE-COUNTER 0>\n\t\t<SETG LEVER-SETTING 0>\n\t\t<SETG SHUTTLE-ON <>>\n\t\t<FSET ,SHUTTLE-DOOR ,INVISIBLE>\n\t\t<FSET ,SHUTTLE-DOOR ,OPENBIT>\n\t\t<DISABLE <INT I-SHUTTLE>>\n\t\t<COND (<EQUAL? ,HERE ,ALFIE-CONTROL-EAST ,ALFIE-CONTROL-WEST>\n\t\t       <COND (,ALFIE-AT-KALAMONTEE\n\t\t\t      <SETG ALFIE-AT-KALAMONTEE <>>)\n\t\t\t     (T\n\t\t\t      <SETG ALFIE-AT-KALAMONTEE T>)>)\n\t\t      (T\n\t\t       <COND (,BETTY-AT-KALAMONTEE\n\t\t\t      <SETG BETTY-AT-KALAMONTEE <>>)\n\t\t\t     (T\n\t\t\t      <SETG BETTY-AT-KALAMONTEE T>)>)>)>>\n\n<GLOBAL SIGN-PASS\n\"You pass a sign, surrounded by blinking red lights, which says \">\n\n\f\n\n\"To sleep, perchance to dream...\"\n\n<GLOBAL SLEEPY-LEVEL 0>\n\n<ROUTINE I-SLEEP-WARNINGS ()\n\t <SETG SLEEPY-LEVEL <+ ,SLEEPY-LEVEL 1>>\n\t <COND (<IN? ,ADVENTURER ,BED>\n\t\t<TELL CR\n\"You suddenly realize how tired you were and how comfortable the bed is.\nYou should be asleep in no time.\" CR>\n\t\t<DISABLE <INT I-SLEEP-WARNINGS>>\n\t\t<ENABLE <QUEUE I-FALL-ASLEEP 16>>\n\t\t<RTRUE>)>\n\t <COND (<EQUAL? ,SLEEPY-LEVEL 1>\n\t\t<TELL CR\n\"You begin to feel weary. It might be time to think about finding\na nice safe place to sleep.\" CR>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 400>>)\n\t       (<EQUAL? ,SLEEPY-LEVEL 2>\n\t\t<TELL CR\n\"You're really tired now. You'd better find a place to sleep real soon.\" CR>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 135>>)\n\t       (<EQUAL? ,SLEEPY-LEVEL 3>\n\t\t<TELL CR\n\"If you don't get some sleep soon you'll probably drop.\" CR>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 60>>)\n\t       (<EQUAL? ,SLEEPY-LEVEL 4>\n\t\t<TELL CR \"You can barely keep your eyes open.\" CR>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 50>>)\n\t       (<EQUAL? ,SLEEPY-LEVEL 5>\n\t\t<COND (<EQUAL? ,HERE ,BED>\n\t\t       <TELL CR\n\"You slowly sink into a deep and blissful sleep.\" CR>\n\t\t       <DREAMING>)\n\t\t      (<OR <EQUAL? ,HERE ,DORM-A ,DORM-B>\n\t\t\t   <EQUAL? ,HERE ,DORM-C ,DORM-D>>\n\t\t       <TELL CR\n\"You climb into one of the bunk beds and immediately fall asleep.\" CR>\n\t\t       <MOVE ,ADVENTURER ,BED>\n\t\t       <DREAMING>)\n\t\t      (T\n\t\t       <TELL CR\n\"You can't stay awake a moment longer. You drop to the ground and fall\ninto a deep but fitful sleep.\" CR>\n\t\t       <COND (<OR <AND <EQUAL? ,DAY 1>\n\t\t\t\t       <EQUAL? ,HERE ,CRAG>>\n\t\t\t\t  <AND <EQUAL? ,DAY 3>\n\t\t\t\t       <EQUAL? ,HERE ,BALCONY>>\n\t\t\t\t  <AND <EQUAL? ,DAY 5>\n\t\t\t\t       <EQUAL? ,HERE ,WINDING-STAIR>>>\n\t\t\t      <JIGS-UP\n\"|\n|\n|\nSuddenly, in the middle of the night, a wave of water washes over you. Before\nyou can quite get your bearings, you drown.\">)\n\t\t\t     (<PROB 30>\n\t\t\t      <JIGS-UP\n\"|\n|\n|\nSuddenly, in the middle of the night, you awake as several ferocious beasts\n(could they be grues?) surround and attack you. Perhaps you should have found\na slightly safer place to sleep.\">)\n\t\t\t     (T\n\t\t\t      <DREAMING>)>)>)>>\n\n<OBJECT BED\n\t(IN LOCAL-GLOBALS)\n\t(DESC \"bed\")\n\t(SYNONYM BUNK BED)\n\t(ADJECTIVE MULTI TIERED BUNK)\n\t(FLAGS NDESCBIT CLIMBBIT VEHBIT)\n\t(ACTION BED-F)>\n\n<ROUTINE BED-F (\"OPTIONAL\" (RARG ,M-OBJECT))\n\t <COND (<AND <VERB? WALK>\n\t\t     <EQUAL? .RARG ,M-BEG>>\n\t\t<TELL \"You'll have to stand up, first.\" CR>)\n\t       (<AND <VERB? TAKE OPEN CLOSE RUB>\n\t\t     <EQUAL? .RARG ,M-BEG>\n\t\t     <NOT <EQUAL? ,PRSO ,BED>>>\n\t\t<TELL \"You can't reach it from here.\" CR>)\n\t       (.RARG\n\t\t<RFALSE>)\n\t       (<VERB? THROUGH BOARD WALK-TO>\n\t\t<COND (<EQUAL? ,HERE ,INFIRMARY>\n\t\t       <JIGS-UP\n\"You climb into the bed. It is soft and comfortable. After a few moments, a\npreviously unseen panel opens, and a diagnostic robot comes wheeling out. It\nis very rusty and sways unsteadily, bumping into several pieces of infirmary\nequipment as it crosses the room. As the robot straps you to the bed, you\nnotice some smoke curling from its cracks. Beeping happily, the robot injects\nyou with all 347 serums and medicines it carries. The last thing you notice\nbefore you pass out is the robot preparing to saw your legs off.\">)\n\t\t      (<G? ,SLEEPY-LEVEL 0>\n\t\t       <MOVE ,ADVENTURER ,BED>\n\t\t       <ENABLE <QUEUE I-FALL-ASLEEP 16>>\n\t\t       <DISABLE <INT I-SLEEP-WARNINGS>>\n\t\t       <TELL \n\"Ahhh...the bed is soft and comfortable. You should be asleep in short\norder.\" CR>)\n\t\t      (T\n\t\t       <MOVE ,ADVENTURER ,BED>\n\t\t       <TELL \"You are now in bed.\" CR>)>)\n\t       (<AND <VERB? DISEMBARK STAND EXIT DROP>\n\t\t     <GET <INT I-FALL-ASLEEP> ,C-TICK>>\n\t\t<TELL\n\"How could you suggest such a thing when you're so tired and this\nbed is so comfy?\" CR>)\n\t       (<VERB? LEAVE EXIT DROP>\n\t\t<PERFORM ,V?DISEMBARK ,BED>\n\t\t<RTRUE>)\n\t       (<AND <VERB? PUT> <EQUAL? ,BED ,PRSI>>\n\t\t<MOVE ,PRSO ,HERE>\n\t\t<TELL\n\"The \" D ,PRSO \" bounces off the bed and lands on the floor.\" CR>)>>\n\n<ROUTINE I-FALL-ASLEEP ()\n\t <TELL CR \"You slowly sink into a deep and restful sleep.\" CR>\n\t <DISABLE <INT I-FALL-ASLEEP>>\n\t <DREAMING>>\n\n<ROUTINE DREAMING ()\n\t <COND (<AND <FSET? ,FORK ,TOUCHBIT>\n\t\t     <PROB 13>>\n\t\t<TELL\n\"You are in a busy office crowded with people. The only one you\nrecognize is Floyd. He rushes back and forth between the desks, carrying\npapers and delivering coffee. He notices you, and asks how your project\nis coming, and whether you have time to tell him a story. You look into\nhis deep, trusting eyes...\" CR>)\n\t       (<PROB 60>\n\t\t<CRLF>\n\t\t<TELL <PICK-ONE ,DREAMS> CR>)>\n\t <WAKING-UP>>\n\n<GLOBAL DREAMS\n\t<PLTABLE\n\n\"...You find yourself on the bridge of the Feinstein. Ensign Blather is here,\nas well as Admiral Smithers. You are diligently scrubbing the control panel.\nBlather keeps yelling at you to scrub harder. Suddenly you hit the ship's\nself-destruct switch! Smithers and Blather howl at you as the ship begins\nexploding! You try to run, but your feet seem to be fused to the deck...\"\n\n\"...You gulp down the last of your Ramosian Fire Nectar and ask the\nandro-waiter for another pitcher. This pub makes the finest Nectar on\nall of Ramos Two, and you and your shipmates are having a pretty rowdy\ntime. Through the windows of the pub you can see a mighty, ancient castle,\nshining in the light of the three Ramosian moons. The Fire Nectar spreads\nthrough your blood and you begin to feel drowsy...\"\n\n\"...Strangely, you wake to find yourself back home on Gallium. Even more\nstrangely, you are only eight years old again. You are playing with your\npet sponge-cat, Swanzo, on the edge of the pond in your backyard. Mom is\nhanging orange towels on the clothesline. Suddenly the school bully jumps\nout from behind a bush, grabs you, and pushes your head under the water.\nYou try to scream, but cannot. You feel your life draining away...\"\n\n\"...Your vision slowly returns. You are on a wooded cliff overlooking\na waterfall. A rainbow spans the falls. Blather stands above you, bellowing\nthat the ground is filthy -- scrub harder! You throw your brush at Blather,\nbut it passes thru him as though he were a ghost, and sails over the cliff.\nBlather leaps after the valuable piece of Patrol property, and both plummet\ninto the void...\"\n\n\"...At last, the Feinstein has arrived at the historic Nebulon system. It's\nbeen five months since the last shore leave, and you're anxious for\nPlanetfall. You and some other Ensigns Seventh Class enter the shuttle for\nsurfaceside. Suddenly, you're alone on the shuttle, and it's tumbling out of\ncontrol! It lands in the ocean and begins sinking! You try to clamber out,\nbut you are stuck in a giant spider web. A giant spider crawls closer and\ncloser...\">> \n\n<ROUTINE WAKING-UP (\"AUX\" X N)\n\t <SETG DAY <+ ,DAY 1>>\n\t <SETG SICKNESS-WARNING-FLAG T>\n\t <SETG SLEEPY-LEVEL 0>\n\t <RESET-TIME>\n\t <SET X <FIRST? ,ADVENTURER>>\n\t <REPEAT ()\n\t\t <COND (.X\n\t\t\t<SET N <NEXT? .X>>\n\t\t\t<COND (<NOT <FSET? .X ,WORNBIT>>\n\t\t\t       <MOVE .X ,HERE>)>\n\t\t\t<COND (<AND <EQUAL? .X ,CANTEEN>\n\t\t\t\t    <IN? ,HIGH-PROTEIN ,CANTEEN>\n\t\t\t\t    <FSET? ,CANTEEN ,OPENBIT>>\n\t\t\t       <REMOVE ,HIGH-PROTEIN>)>\n\t\t\t<COND (<AND <EQUAL? .X ,FLASK>\n\t\t\t\t    <IN? ,CHEMICAL-FLUID ,FLASK>>\n\t\t\t       <REMOVE ,CHEMICAL-FLUID>)>\n\t\t\t<SET X .N>)\n\t\t       (T\n\t\t\t<RETURN>)>>\n\t <TELL\n\"|\n***** SEPTEM \" N <+ ,DAY 5> \", 11344 *****|\n|\">\n\t <COND (<NOT <IN? ,ADVENTURER ,BED>>\n\t\t<TELL\n\"You wake and slowly stand up, feeling stiff from your\nnight on the floor.\">)\n\t       (<L? ,SICKNESS-LEVEL 3>\n\t\t<TELL\n\"You wake up feeling refreshed and ready to face the challenges of this\nmysterious world.\">)\n\t       (<L? ,SICKNESS-LEVEL 6>\n\t\t<TELL\n\"You wake after sleeping restlessly. You feel weak and listless.\">)\n\t       (T\n\t\t<TELL\n\"You wake feeling weak and worn-out. It will be an effort just to stand up.\">)>\n\t <COND (<G? ,HUNGER-LEVEL 0>\n\t\t<SETG HUNGER-LEVEL 4>\n\t\t<ENABLE <QUEUE I-HUNGER-WARNINGS 100>>\n\t\t<TELL\n\" You are also incredibly famished. Better get some breakfast!\">)\n\t       (T\n\t\t<ENABLE <QUEUE I-HUNGER-WARNINGS 400>>)>\n\t <CRLF>\n\t <COND (<AND <FSET? ,FLOYD ,RLANDBIT>\n\t\t     ,FLOYD-INTRODUCED>\n\t\t<MOVE ,FLOYD ,HERE>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<COND (<IN? ,ADVENTURER ,BED>\n\t\t       <TELL\n\"Floyd bounces impatiently at the foot of the bed. \\\"About time you woke\nup, you lazy bones! Let's explore around some more!\\\"\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"Floyd gives you a nudge with his foot and giggles. \\\"You sure look silly\nsleeping on the floor,\\\" he says.\" CR>)>)>>\n\n<ROUTINE RESET-TIME ()\n\t <COND (<EQUAL? ,DAY 2>\n\t\t<FCLEAR ,BALCONY ,TOUCHBIT>\n\t\t<SETG INTERNAL-MOVES <+ 1600 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 5800>>)\n\t       (<EQUAL? ,DAY 3>\n\t\t<FCLEAR ,BALCONY ,TOUCHBIT>\n\t\t<SETG INTERNAL-MOVES <+ 1750 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 5550>>)\n\t       (<EQUAL? ,DAY 4>\n\t\t<FCLEAR ,WINDING-STAIR ,TOUCHBIT>\n\t\t<SETG INTERNAL-MOVES <+ 1950 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 5200>>)\n\t       (<EQUAL? ,DAY 5>\n\t\t<FCLEAR ,WINDING-STAIR ,TOUCHBIT>\n\t\t<SETG INTERNAL-MOVES <+ 2150 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 4800>>)\n\t       (<EQUAL? ,DAY 6>\n\t\t<FCLEAR ,COURTYARD ,TOUCHBIT>\n\t\t<SETG INTERNAL-MOVES <+ 2450 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 4300>>)\n\t       (<EQUAL? ,DAY 7>\n\t\t<FCLEAR ,COURTYARD ,TOUCHBIT>\n\t\t<SETG INTERNAL-MOVES <+ 2800 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 3700>>)\n\t       (<EQUAL? ,DAY 8>\n\t\t<SETG INTERNAL-MOVES <+ 3200 <RANDOM 80>>>\n\t\t<ENABLE <QUEUE I-SLEEP-WARNINGS 3000>>)\n\t       (<EQUAL? ,DAY 9>\n\t\t<JIGS-UP\n\"Unfortunately, you don't seem to have survived the night.\">)>>\n\n\f\n\n\"Feed me!\"\n\n<GLOBAL HUNGER-LEVEL 0>\n\n<ROUTINE I-HUNGER-WARNINGS ()\n\t <SETG HUNGER-LEVEL <+ ,HUNGER-LEVEL 1>>\n\t <COND (<EQUAL? ,HUNGER-LEVEL 1>\n\t\t<ENABLE <QUEUE I-HUNGER-WARNINGS 450>>\n\t\t<TELL CR\n\"A growl from your stomach warns that you're getting pretty hungry and\nthirsty.\" CR>)\n\t       (<EQUAL? ,HUNGER-LEVEL 2>\n\t\t<ENABLE <QUEUE I-HUNGER-WARNINGS 150>>\n\t\t<TELL CR\n\"You're now really ravenous and your lips are quite parched.\" CR>)\n\t       (<EQUAL? ,HUNGER-LEVEL 3>\n\t\t<ENABLE <QUEUE I-HUNGER-WARNINGS 100>>\n\t\t<TELL CR\n\"You're starting to feel faint from lack of food and liquid.\" CR>)\n\t       (<EQUAL? ,HUNGER-LEVEL 4>\n\t\t<ENABLE <QUEUE I-HUNGER-WARNINGS 50>>\n\t\t<TELL CR\n\"If you don't eat or drink something in a few millichrons, you'll probably\npass out.\" CR>)\n\t       (<EQUAL? ,HUNGER-LEVEL 5>\n\t\t<JIGS-UP\n\"|\nYou collapse from extreme thirst and hunger.\">)>>\n\n<GLOBAL NOT-HUNGRY \"Thanks, but you're not hungry.\">\n\n\f\n\n\"Sickness and disease\"\n\n<GLOBAL SICKNESS-LEVEL 0>\n\n<GLOBAL SICKNESS-WARNING-FLAG <>>\n\n<ROUTINE I-SICKNESS-WARNINGS ()\n\t <ENABLE <QUEUE I-SICKNESS-WARNINGS 700>>\n\t <COND (,SICKNESS-WARNING-FLAG\n\t\t<SETG SICKNESS-WARNING-FLAG <>>\n\t\t<SETG LOAD-ALLOWED <- ,LOAD-ALLOWED 10>>\n\t\t<SETG SICKNESS-LEVEL <+ ,SICKNESS-LEVEL 1>>\n\t\t<COND (<EQUAL? ,SICKNESS-LEVEL 1>\n\t\t       <TELL CR\n\"You notice that you feel a bit weak and slightly flushed,\nbut you're not sure why.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 2>\n\t\t       <TELL CR\n\"You notice that you feel unusually weak, and you suspect\nthat you have a fever.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 3>\n\t\t       <TELL CR\n\"You are now feeling quite under the weather, not unlike a bad flu.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 4>\n\t\t       <TELL CR\n\"Your fever seems to have gotten worse, and you're\ndeveloping a bad headache.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 5>\n\t\t       <TELL CR\n\"Your health has deteriorated further. You feel hot and weak, and your\nhead is throbbing.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 6>\n\t\t       <TELL CR\n\"You feel very, very sick, and have almost no strength left.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 7>\n\t\t       <TELL CR\n\"You feel like you're on fire, burning up from the fever. You're almost too\nweak to move, and your brain is reeling from the pounding headache.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 8>\n\t\t       <TELL CR\n\"You're no longer sure of where you are and what you're doing. You stumble\nabout, your pain subsiding into a dull numbness.\" CR>)\n\t\t      (<EQUAL? ,SICKNESS-LEVEL 9>\n\t\t       <JIGS-UP\n\"|\nYou finally succumb to the ravages of your illness and collapse.\">)>)>>\n\f\n\"Oh, Boy! Pseudo objects!\"\n\n<ROUTINE TRANSLATOR-PSEUDO ()\n\t <COND (<IN? ,AMBASSADOR ,HERE>\n\t\t<COND (<VERB? TAKE>\n\t\t       <TELL\n\"The ambassador whimpers and slaps your wrist.\" CR>)\n\t\t      (<VERB? MUNG>\n\t\t       <TELL\n\"Are you trying to create an interplanetary incident?\" CR>)>)\n\t       (T\n\t\t<TELL \"What translator?\" CR>)>>\n\n<ROUTINE SLIME-PSEUDO ()\n\t <COND (<OR <IN? ,AMBASSADOR ,HERE>\n\t\t     <G? ,AMBASSADOR-LEAVE 0>>\n\t\t<COND (<VERB? EAT TASTE>\n\t\t       <LIKE-SLIME \"tastes\">)\n\t\t      (<VERB? TAKE RUB>\n\t\t       <LIKE-SLIME \"feels\">)\n\t\t      (<VERB? EXAMINE>\n\t\t       <LIKE-SLIME \"looks\">)\n\t\t      (<VERB? SMELL>\n\t\t       <LIKE-SLIME \"smells\">)\n\t\t      (<VERB? SCRUB REMOVE>\n\t\t       <TELL\n\"Whew. You've cleaned up maybe one ten-thousandth of the slime.\">\n\t\t       <COND (<NOT <IN? ,BLATHER ,HERE>>\n\t\t\t      <TELL\n\" If you hurry, it might be all cleaned up before Ensign Blather gets here.\">)>\n\t\t       <CRLF>)>)\n\t       (T\n\t\t<TELL \"What slime?\" CR>)>>\n\n<ROUTINE LIKE-SLIME (STRING)\n\t <TELL \"It \">\n\t <TELL .STRING>\n\t <TELL \" like slime. Aren't you glad you didn't step in it?\" CR>>\n\n<ROUTINE GRAFFITI-PSEUDO ()\n\t <COND (<VERB? READ>\n\t\t<SETG C-ELAPSED 28>\n\t\t<TELL \"All the graffiti seem to be about Blather. One of\nthe least obscene items reads:|\n|\nThere once was a krip, name of Blather|\nWho told a young Ensign named Smather|\n\\\"I'll make you inherit|\nA trotting demerit|\nAnd ship you off to those stinking fawg-infested tar-pools of Krather.\\\"|\n|\nIt's not a very good limerick, is it?\" CR>)>>\n\n<ROUTINE DOOR-PSEUDO ()\n\t <COND (<VERB? OPEN UNLOCK>\n\t\t<TELL \"No way, Jose.\" CR>)>>\n\n<ROUTINE WALKWAY-PSEUDO ()\n\t <COND (<VERB? EXAMINE LAMP-ON>\n\t\t<TELL \"The walkway, which hastened the trip down that\nlong corridor, is no longer in service.\" CR>)>>\n\n<ROUTINE BENCH-PSEUDO ()\n\t <COND (<VERB? CLIMB-ON BOARD>\n\t\t<TELL \"The benches look uncomfortable.\" CR>)>>\n\n<ROUTINE CATWALK-PSEUDO ()\n\t <COND (<VERB? CLIMB-ON CLIMB-UP CLIMB-FOO>\n\t\t<TELL \"The catwalks are too high for you to access.\" CR>)>>\n\n<ROUTINE EQUIPMENT-PSEUDO ()\n\t <COND (<VERB? EXAMINE RUB LAMP-ON LAMP-OFF>\n\t\t<TELL\n\"The equipment here is so complicated that you couldn't even begin to\nfigure out how to operate it.\" CR>)>>\n\n<ROUTINE MONITORS-PSEUDO ()\n\t <COND (<VERB? EXAMINE READ>\n\t\t<DESCRIBE-MONITORS>)>>\n\n<ROUTINE MURAL-PSEUDO ()\n\t <COND (,COMPUTER-FIXED\n\t\t<ANYMORE>)\n\t       (T\n\t\t<COND (<VERB? EXAMINE>\n\t\t       <TELL\n\"It's a gaudy work of orange and purple abstract shapes, reminiscent of the\nearly works of Burstini Bonz. It doesn't appear to fit the decor of the room\nat all. The mural seems to ripple now and then, as though a breeze were\nblowing behind it.\" CR>)\n\t\t      (<VERB? MUNG>\n\t\t       <TELL \"My sentiments also, but let's be civil.\" CR>)\n\t\t      (<VERB? MOVE LOOK-BEHIND>\n\t\t       <TELL \"It won't budge.\" CR>)>)>>\n\n<ROUTINE LOGO-PSEUDO ()\n\t <COND (<VERB? READ EXAMINE>\n\t\t<TELL\n\"The logo shows a flame burning over a sleep chamber of some type. Under\nthat is the phrase \\\"Prajekt Kuntrool.\\\"\" CR>)>>\n\n<ROUTINE KEYBOARD-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"It is a standard numeric keyboard with ten keys labelled from 0\nthrough 9.\" CR>)>>\n\n<ROUTINE CRACK-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"The crack is too small to go through, but large enough to look through.\" CR>)\n\t       (<VERB? LOOK-INSIDE>\n\t\t<COND (<EQUAL? ,HERE ,RADIATION-LAB>\n\t\t       <TELL\n\"You see a dimly lit Bio Lab. Sinister shapes lurk about within.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"You see a laboratory suffused with a pale blue glow.\" CR>)>)>>\n\n<ROUTINE VOID-PSEUDO ()\n\t <COND (<AND <VERB? PUT>\n\t\t     <EQUAL? ,PRSI ,PSEUDO-OBJECT>>\n\t\t<PERFORM ,V?THROW-OFF ,PRSO ,STRIP>\n\t\t<RTRUE>)\n\t       (<AND <VERB? ZAP>\n\t\t     <EQUAL? ,PRSO ,LASER>\n\t\t     <EQUAL? ,PRSI ,PSEUDO-OBJECT>>\n\t\t<SETG PRSI <>>\n\t\t<PERFORM ,V?ZAP ,LASER>\n\t\t<RTRUE>)\n\t       (<VERB? THROUGH LEAP>\n\t\t<JIGS-UP \"Plummet.\">)\n\t       (<VERB? LOOK-INSIDE EXAMINE>\n\t\t<TELL\n\"The void extends downward into the gloom far below.\" CR>)>>\n\n<ROUTINE SPOUT-PSEUDO ()\n\t <COND (<AND <VERB? PUT-UNDER>\n\t\t     <EQUAL? ,PRSO ,CANTEEN>>\n\t\t<PERFORM ,V?PUT ,CANTEEN ,DISPENSER>\n\t\t<RTRUE>)\n\t       (<AND <VERB? LOOK-UNDER>\n\t\t     <IN? ,CANTEEN ,DISPENSER>>\n\t\t<TELL \"The canteen is sitting under the spout.\" CR>)>>\n\n<ROUTINE TOILET-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"The fixtures are all dry and dusty.\" CR>)\n\t       (<VERB? FLUSH>\n\t\t<TELL \"The water seems to be turned off.\" CR>)>>\n\n<ROUTINE GAMES-PSEUDO ()\n\t <COND (<VERB? PLAY>\n\t\t<PERFORM ,V?PLAY ,GLOBAL-GAMES>\n\t\t<RTRUE>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL \"All the usual games -- Chess, Cribbage, Galactic\nOverlord, Double Fannucci...\" CR>)\n\t      ;(<AND <VERB? SHOW>\n\t\t     <EQUAL? ,PRSI ,FLOYD>>\n\t\t<TELL\n\"\\\"Floyd doesn't like those tough, thinker games. Any paddleball sets\naround?\\\"\" CR>)>>\n\n<ROUTINE TAPES-PSEUDO ()\n\t <COND (<VERB? READ PLAY TAKE>\n\t\t<TELL\n\"Hardly the time or place for reading recreational tapes.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL \"Let's see...here are some musical selections, here are\nsome bestselling romantic novels, here is a biography of a famous Double\nFannucci champion...\" CR>)>>\n\n<ROUTINE PARTITION-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"The partitions are very plain, and were\nobviously intended to separate this huge room into smaller areas.\" CR>)>>\n\n<ROUTINE CUBBYHOLE-PSEUDO ()\n\t <COND (<VERB? EXAMINE LOOK-INSIDE>\n\t\t<TELL\n\"The cubbyholes look like the kind that are used to hold maps or\nblueprints. They are all empty now.\" CR>)>>\n\n<ROUTINE MAPS-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"Examining the maps reveals no new information.\" CR>)>>\n\n<ROUTINE DEVICES-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"They are components of disassembled robots, beyond repair.\" CR>)>>\n\n<ROUTINE CABLES-PSEUDO ()\n\t <COND (<VERB? EXAMINE FOLLOW>\n\t\t<TELL\n\"These heavy cables merely run from the two consoles up into the ceiling.\" CR>)\n\t       (<VERB? MUNG>\n\t\t<JIGS-UP\n\"So, that's what it's like to have twenty million volts run through your\nbody!\">)>>\n\n<ROUTINE STRUCTURE-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL\n\"You'd be able to tell more about it if you climbed up to it.\" CR>)\n\t       (<VERB? CLIMB-UP>\n\t\t<DO-WALK ,P?UP>)>>\n\n<ROUTINE BUTTON-PSEUDO ()\n\t <COND (<VERB? PUSH>\n\t\t<COND (<FSET? ,DISPENSER ,MUNGEDBIT>\n\t\t       <TELL\n\"The dispenser sputters a few times.\" CR>)\n\t\t      (<IN? ,CANTEEN ,DISPENSER>\n\t\t       <COND (<NOT <FSET? ,CANTEEN ,OPENBIT>>\n\t\t\t      <TELL\n\"A thick, brown liquid spills over the closed canteen, dribbles down the side\nof the machine, and forms a puddle on the floor which quickly dries up.\" CR>)\n\t\t\t      (<IN? ,HIGH-PROTEIN ,CANTEEN>\n\t\t\t       <TELL\n\"The brown liquid splashes over the mouth of the already-filled canteen,\ncreating a mess\">\n\t\t\t       <COND (<FSET? ,PATROL-UNIFORM ,WORNBIT>\n\t\t\t\t      <TELL \" and staining your uniform\">)>\n\t\t\t       <TELL \".\" CR>)\n\t\t\t      (T\n\t\t\t       <MOVE ,HIGH-PROTEIN ,CANTEEN>\n\t\t\t       <TELL\n\"The canteen fills almost to the brim with a brown liquid.\" CR>)>)\n\t\t      (T\n\t\t       <TELL \"A thick, brownish liquid pours from the spout\nand splashes to the floor, where it quickly evaporates.\" CR>)>)>>\n\n<ROUTINE CARPET-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"It's pretty dusty.\" CR>)>>\n\n<ROUTINE CABINETS-PSEUDO ()\n\t <COND (<VERB? EXAMINE OPEN>\n\t\t<TELL \"The cabinets are locked.\" CR>)\n\t       (<VERB? UNLOCK>\n\t\t<TELL \"You don't have the correct key.\" CR>)>>\n\n<ROUTINE PLATE-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"The plates seem to be featureless metal squares.\" CR>)>>\n\n<ROUTINE ESCALATOR-PSEUDO ()\n\t <COND (<VERB? CLIMB-UP CLIMB-FOO>\n\t\t<COND (<EQUAL? ,HERE ,FORK>\n\t\t       <TELL\n\"You're already at the top of the escalator.\" CR>)\n\t\t      (T\n\t\t       <DO-WALK ,P?UP>)>)\n\t       (<VERB? CLIMB-DOWN>\n\t\t<COND (<EQUAL? ,HERE ,LAWANDA-PLATFORM>\n\t\t       <TELL\n\"You're already at the bottom of the escalator.\" CR>)\n\t\t      (T\n\t\t       <DO-WALK ,P?DOWN>)>)\n\t       (<VERB? LAMP-ON>\n\t\t<TELL <PICK-ONE ,YUKS> CR>)>>\n\n<ROUTINE REACTOR-BUTTON-PSEUDO ()\n\t <COND (<VERB? PUSH>\n\t\t<FSET ,REACTOR-ELEVATOR-DOOR ,OPENBIT>\n\t\t<ENABLE <QUEUE I-REACTOR-DOOR-CLOSE 30>>\n\t\t<TELL\n\"The metal doors slide open, revealing a small room to the east.\" CR>)>>\n\n<ROUTINE SUPPLIES-PSEUDO ()\n\t <COND (<VERB? TAKE>\n\t\t<TELL \"These supplies are of absolutely no use.\" CR>)>>\n\n<ROUTINE DESK-PSEUDO ()\n\t <COND (<VERB? OPEN>\n\t\t<TELL \"All the drawers are empty.\" CR>)\n\t       (<VERB? EXAMINE>\n\t\t<TELL \"It is bare except for the microfilm reader.\" CR>)>>\n\n<ROUTINE CRYO-BUTTON-PSEUDO ()\n\t <COND (<AND <VERB? PUSH>\n\t\t     <NOT ,CRYO-SCORE-FLAG>>\n\t\t<ENABLE <QUEUE I-CRYO-ELEVATOR-ARRIVE 100>>\n\t\t<DISABLE <INT I-CHASE-SCENE>>\n\t\t<FCLEAR ,CRYO-ELEVATOR-DOOR ,OPENBIT>\n\t        <SETG CRYO-SCORE-FLAG T>\n\t\t<SETG SCORE <+ ,SCORE 5>>\n\t\t<TELL\n\"The elevator door closes just as the monsters reach it! You slump\nback against the wall, exhausted from the chase. The elevator begins\nto move downward.\" CR>)\n\t       (<AND <VERB? PUSH>\n\t\t     ,CRYO-SCORE-FLAG\n\t\t     <FSET? ,CRYO-ELEVATOR-DOOR ,OPENBIT>>\n\t\t<JIGS-UP\n\"Stunning. After days of surviving on a hostile, plague-ridden planet, solving\nseveral of Infocom's toughest puzzles, and coming within one move of completing\nPlanetfall, you blow it all in one amazingly dumb input.|\n|\nThe doors close and the elevator rises quickly to the top of the shaft. The\ndoors open, and the mutants, which were waiting impatiently in the ProjCon\nOffice for just such an occurence, happily saunter in and begin munching.\">)>>\n\n<ROUTINE CASTLE-PSEUDO ()\n\t <COND (<VERB? EXAMINE>\n\t\t<TELL \"The castle is ancient and crumbling.\" CR>)>>\n\n<ROUTINE CHEM-SPOUT-PSEUDO ()\n\t <COND (<AND <VERB? PUT-UNDER>\n\t\t     <EQUAL? ,PRSI ,PSEUDO-OBJECT>>\n\t\t<PERFORM ,V?PUT-UNDER ,PRSO ,CHEMICAL-DISPENSER>\n\t\t<RTRUE>)\n\t       (<AND <VERB? LOOK-UNDER>\n\t\t     ,SPOUT-PLACED>\n\t\t<TELL \"There is \">\n\t\t<A-AN>\n\t\t<TELL D ,SPOUT-PLACED \" under the spout.\" CR>)>>\n\n<ROUTINE CLEFT-PSEUDO ()\n\t <COND (<VERB? CLIMB-UP CLIMB-FOO>\n\t\t<DO-WALK ,P?UP>)>>\n\n<ROUTINE RUBBLE-PSEUDO ()\n\t <COND (<VERB? MOVE>\n\t\t<TELL <PICK-ONE ,YUKS> CR>)>>\n\n<ROUTINE PLAQUE-PSEUDO ()\n\t <COND (<VERB? READ EXAMINE>\n\t\t<TELL\n\"|\nSEENIK VISTA\n|\nXis stuneeng vuu uf xee Kalamontee Valee kuvurz oovur fortee skwaar miilz\nuf xat faamus tuurist spot. Xee larj bildeeng at xee bend in xee Gulmaan Rivur\niz xee formur pravincul kapitul bildeeng.\" CR>)>>\n\n<ROUTINE FENCE-PSEUDO ()\n\t <COND (<VERB? CLIMB-UP CLIMB-FOO LEAP>\n\t\t<TELL \"You can't.\" CR>)>>\n\n<ROUTINE LOCK-PSEUDO ()\n\t <COND (<VERB? OPEN UNLOCK>\n\t\t<COND (,PRSI\n\t\t       <TELL \"That won't unlock it.\" CR>)\n\t\t      (T\n\t\t       <TELL \"But you don't have the orange key!\" CR>)>)>>\n\n<ROUTINE DIAGRAM-PSEUDO ()\n\t <COND (<VERB? READ>\n\t\t<TELL \"Not unless you've taken a special\ntwelve-year course in ninth-order molecular physics.\" CR>)>>\n\n<ROUTINE ENUNCIATOR-PSEUDO ()\n\t <COND (<VERB? LOOK-INSIDE PUSH MOVE>\n\t\t<TELL <PICK-ONE ,YUKS>>)>>\n\n<ROUTINE NEAR-BOOTH-PSEUDO ()\n\t <COND (<VERB? DROP EXIT DISEMBARK>\n\t\t<TELL \"You're not in the booth!\" CR>)\n\t       (<VERB? THROUGH BOARD WALK-TO>\n\t\t<DO-WALK ,P?IN>)>>\n\n<ROUTINE IN-BOOTH-PSEUDO ()\n\t <COND (<VERB? THROUGH BOARD WALK-TO>\n\t\t<TELL \"You're already in the booth!\" CR>)\n\t       (<VERB? DROP EXIT DISEMBARK>\n\t\t<DO-WALK ,P?OUT>)>>"
  },
  {
    "path": "misc.zabstr",
    "content": "\n<SETG C-ENABLED? 0> \n<SETG C-ENABLED 1> \n<SETG C-DISABLED 0> \n<DEFMAC VERB? (\"TUPLE\" ATMS \"AUX\" (O ()) (L ())) <REPEAT () <COND (<EMPTY? .\nATMS> <RETURN <COND (<LENGTH? .O 1> <NTH .O 1>) (ELSE <FORM OR !.O>)>>)> <\nREPEAT () <COND (<EMPTY? .ATMS> <RETURN>)> <SET ATM <NTH .ATMS 1>> <SET L (<\nFORM GVAL <PARSE <STRING \"V?\" <SPNAME .ATM>>>> !.L)> <SET ATMS <REST .ATMS>> <\nCOND (<==? <LENGTH .L> 3> <RETURN>)>> <SET O (<FORM EQUAL? ',PRSA !.L> !.O)> <\nSET L ()>>> \n<DEFMAC RFATAL () '<PROG () <PUSH 2> <RSTACK>>> \n<DEFMAC PROB ('BASE?) <FORM NOT <FORM L? .BASE? '<RANDOM 100>>>> \n<DEFINE-ROUTINE PICK-ONE> \n<DEFMAC ENABLE ('INT) <FORM PUT .INT ,C-ENABLED? 1>> \n<DEFMAC DISABLE ('INT) <FORM PUT .INT ,C-ENABLED? 0>> \n<DEFMAC OPENABLE? ('OBJ) <FORM OR <FORM FSET? .OBJ ',DOORBIT> <FORM FSET? .OBJ\n',CONTBIT>>> \n<DEFMAC ABS ('NUM) <FORM COND (<FORM L? .NUM 0> <FORM - 0 .NUM>) (T .NUM)>> \n<GLOBAL P-WON <> %<> WORD> \n<CONSTANT M-FATAL 2> \n<CONSTANT M-HANDLED 1> \n<CONSTANT M-NOT-HANDLED <>> \n<CONSTANT M-BEG 1> \n<CONSTANT M-END 6> \n<CONSTANT M-OBJECT <>> \n<CONSTANT M-ENTER 2> \n<CONSTANT M-LOOK 3> \n<CONSTANT M-FLASH 4> \n<CONSTANT M-OBJDESC 5> \n<DEFINE-ROUTINE GO> \n<DEFINE-ROUTINE I-RANDOM-INTERRUPTS> \n<DEFINE-ROUTINE MAIN-LOOP> \n<DEFINE-ROUTINE TIMELESS-VERB?> \n<GLOBAL L-PRSA <> %<> WORD> \n<GLOBAL L-PRSO <> %<> WORD> \n<GLOBAL L-PRSI <> %<> WORD> \n<DEFINE-ROUTINE PERFORM> \n<DEFINE-ROUTINE META-LOC> \n<CONSTANT C-TABLELEN 240> \n<GLOBAL C-TABLE <ITABLE NONE 120> %<> WORD> \n<GLOBAL C-DEMONS 300 %<> WORD> \n<GLOBAL C-INTS 240 %<> WORD> \n<GLOBAL C-ELAPSED 7 %<> WORD> \n<CONSTANT C-ELAPSED-DEFAULT 7> \n<CONSTANT C-INTLEN 6> \n<CONSTANT C-ENABLED? 0> \n<CONSTANT C-TICK 1> \n<CONSTANT C-RTN 2> \n<DEFINE-ROUTINE QUEUE> \n<DEFINE-ROUTINE INT> \n<DEFINE-ROUTINE CLOCKER> \n<DEFINE-ROUTINE NULL-F> "
  },
  {
    "path": "misc.zap",
    "content": "\n\n\t.FUNCT\tPICK-ONE,FROB\n\tGET\tFROB,0\n\tRANDOM\tSTACK\n\tGET\tFROB,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tGO\nSTART::\n\n?FCN:\tPUTB\tP-LEXV,0,59\n\tCALL\tQUEUE,I-BLATHER,-1\n\tPUT\tSTACK,0,1\n\tCALL\tQUEUE,I-AMBASSADOR,-1\n\tPUT\tSTACK,0,1\n\tCALL\tQUEUE,I-RANDOM-INTERRUPTS,1\n\tPUT\tSTACK,0,1\n\tCALL\tQUEUE,I-SLEEP-WARNINGS,3600\n\tPUT\tSTACK,0,1\n\tCALL\tQUEUE,I-HUNGER-WARNINGS,2000\n\tPUT\tSTACK,0,1\n\tCALL\tQUEUE,I-SICKNESS-WARNINGS,1000\n\tPUT\tSTACK,0,1\n\tSET\t'SPOUT-PLACED,GROUND\n\tGETB\t0,56\n\tZERO?\tSTACK \\?CCL3\n\tRANDOM\t180\n\tADD\t4450,STACK >INTERNAL-MOVES\n\tJUMP\t?CND1\n?CCL3:\tSET\t'INTERNAL-MOVES,4540\n?CND1:\tSET\t'MOVES,INTERNAL-MOVES\n\tSET\t'LIT,TRUE-VALUE\n\tSET\t'WINNER,ADVENTURER\n\tSET\t'HERE,DECK-NINE\n\tSET\t'P-IT-LOC,DECK-NINE\n\tSET\t'P-IT-OBJECT,POD-DOOR\n\tFSET?\tHERE,TOUCHBIT /?CND4\n\tCALL\tV-VERSION\n\tCRLF\t\n\tPRINTI\t\"Another routine day of drudgery aboard the Stellar Patrol Ship Feinstein. This morning's assignment for a certain lowly Ensign Seventh Class: scrubbing the filthy metal deck at the port end of Level Nine. With your Patrol-issue self-contained multi-purpose all-weather scrub brush you shine the floor with a diligence born of the knowledge that at any moment dreaded Ensign First Class Blather, the bane of your shipboard existence, could appear.\"\n\tCRLF\t\n\tCRLF\t\n?CND4:\tCALL\tV-LOOK\n\tCALL\tMAIN-LOOP\n\tJUMP\t?FCN\n\n\n\t.FUNCT\tI-RANDOM-INTERRUPTS\n\tRANDOM\t90\n\tADD\tSTACK,240\n\tCALL\tQUEUE,I-BLOWUP-FEINSTEIN,STACK\n\tPUT\tSTACK,0,1\n\tCALL\tCOMM-SETUP\n\tRANDOM\t1000 >NUMBER-NEEDED\n\tRETURN\tNUMBER-NEEDED\n\n\n\t.FUNCT\tMAIN-LOOP,ICNT,OCNT,NUM,CNT,OBJ,TBL,V,PTBL,OBJ1,TMP,?TMP1\n?PRG1:\tSET\t'C-ELAPSED,C-ELAPSED-DEFAULT\n\tSET\t'CNT,0\n\tSET\t'OBJ,FALSE-VALUE\n\tSET\t'PTBL,TRUE-VALUE\n\tCALL\tPARSER >P-WON\n\tZERO?\tP-WON /?CCL5\n\tGET\tP-PRSI,P-MATCHLEN >ICNT\n\tGET\tP-PRSO,P-MATCHLEN >OCNT\n\tZERO?\tP-IT-OBJECT /?CND6\n\tCALL\tACCESSIBLE?,P-IT-OBJECT\n\tZERO?\tSTACK /?CND6\n\tSET\t'TMP,FALSE-VALUE\n?PRG10:\tIGRTR?\t'CNT,ICNT /?REP11\n\tGET\tP-PRSI,CNT\n\tEQUAL?\tSTACK,IT \\?PRG10\n\tPUT\tP-PRSI,CNT,P-IT-OBJECT\n\tSET\t'TMP,TRUE-VALUE\n?REP11:\tZERO?\tTMP \\?CND17\n\tSET\t'CNT,0\n?PRG19:\tIGRTR?\t'CNT,OCNT /?CND17\n\tGET\tP-PRSO,CNT\n\tEQUAL?\tSTACK,IT \\?PRG19\n\tPUT\tP-PRSO,CNT,P-IT-OBJECT\n?CND17:\tSET\t'CNT,0\n?CND6:\tZERO?\tOCNT \\?CCL28\n\tSET\t'NUM,OCNT\n\tJUMP\t?CND26\n?CCL28:\tGRTR?\tOCNT,1 \\?CCL30\n\tSET\t'TBL,P-PRSO\n\tZERO?\tICNT \\?CCL33\n\tSET\t'OBJ,FALSE-VALUE\n\tJUMP\t?CND31\n?CCL33:\tGET\tP-PRSI,1 >OBJ\n?CND31:\tSET\t'NUM,OCNT\n\tJUMP\t?CND26\n?CCL30:\tGRTR?\tICNT,1 \\?CCL35\n\tSET\t'PTBL,FALSE-VALUE\n\tSET\t'TBL,P-PRSI\n\tGET\tP-PRSO,1 >OBJ\n\tSET\t'NUM,ICNT\n\tJUMP\t?CND26\n?CCL35:\tSET\t'NUM,1\n?CND26:\tZERO?\tOBJ \\?CND36\n\tEQUAL?\tICNT,1 \\?CND36\n\tGET\tP-PRSI,1 >OBJ\n?CND36:\tEQUAL?\tPRSA,V?WALK \\?CCL42\n\tCALL\tPERFORM,PRSA,PRSO >V\n\tJUMP\t?CND40\n?CCL42:\tZERO?\tNUM \\?CCL44\n\tGETB\tP-SYNTAX,P-SBITS\n\tBAND\tSTACK,P-SONUMS\n\tZERO?\tSTACK \\?CCL47\n\tCALL\tPERFORM,PRSA >V\n\tSET\t'PRSO,FALSE-VALUE\n\tJUMP\t?CND40\n?CCL47:\tPRINTI\t\"There isn't anything to \"\n\tGET\tP-ITBL,P-VERBN >TMP\n\tZERO?\tP-OFLAG \\?CTR49\n\tZERO?\tP-MERGED /?CCL50\n?CTR49:\tGET\tTMP,0\n\tPRINTB\tSTACK\n\tJUMP\t?CND48\n?CCL50:\tGETB\tTMP,2 >?TMP1\n\tGETB\tTMP,3\n\tCALL\tWORD-PRINT,?TMP1,STACK\n?CND48:\tPRINTC\t33\n\tCRLF\t\n\tSET\t'V,FALSE-VALUE\n\tJUMP\t?CND40\n?CCL44:\tSET\t'TMP,0\n\tSET\t'ICNT,FALSE-VALUE\n?PRG53:\tIGRTR?\t'CNT,NUM \\?CCL57\n\tGRTR?\tTMP,0 \\?CCL60\n\tPRINTI\t\"The \"\n\tEQUAL?\tTMP,NUM /?CND61\n\tPRINTI\t\"other \"\n?CND61:\tPRINTI\t\"object\"\n\tEQUAL?\tTMP,1 /?CND63\n\tPRINTC\t115\n?CND63:\tPRINTI\t\" that you mentioned \"\n\tEQUAL?\tTMP,1 /?CCL67\n\tPRINTI\t\"are\"\n\tJUMP\t?CND65\n?CCL67:\tPRINTI\t\"is\"\n?CND65:\tPRINTI\t\"n't here.\"\n\tCRLF\t\n\tJUMP\t?CND40\n?CCL60:\tZERO?\tICNT \\?CND40\n\tPRINTI\t\"There's nothing there.\"\n\tCRLF\t\n\tJUMP\t?CND40\n?CCL57:\tZERO?\tPTBL /?CCL71\n\tGET\tP-PRSO,CNT >OBJ1\n\tJUMP\t?CND69\n?CCL71:\tGET\tP-PRSI,CNT >OBJ1\n?CND69:\tZERO?\tPTBL /?CCL74\n\tSET\t'PRSO,OBJ1\n\tJUMP\t?CND72\n?CCL74:\tSET\t'PRSO,OBJ\n?CND72:\tZERO?\tPTBL /?CCL77\n\tSET\t'PRSI,OBJ\n\tJUMP\t?CND75\n?CCL77:\tSET\t'PRSI,OBJ1\n?CND75:\tGRTR?\tNUM,1 /?CCL79\n\tGET\tP-ITBL,P-NC1\n\tGET\tSTACK,0\n\tEQUAL?\tSTACK,W?ALL \\?CND78\n?CCL79:\tEQUAL?\tOBJ1,NOT-HERE-OBJECT \\?CCL84\n\tINC\t'TMP\n\tJUMP\t?PRG53\n?CCL84:\tEQUAL?\tPRSA,V?TAKE \\?CCL86\n\tZERO?\tPRSI /?CCL86\n\tGET\tP-ITBL,P-NC1\n\tGET\tSTACK,0\n\tEQUAL?\tSTACK,W?ALL \\?CCL86\n\tIN?\tPRSO,PRSI \\?PRG53\n?CCL86:\tEQUAL?\tP-GETFLAGS,P-ALL \\?CCL92\n\tEQUAL?\tPRSA,V?TAKE \\?CCL92\n\tLOC\tOBJ1\n\tEQUAL?\tSTACK,WINNER,HERE \\?PRG53\n?CCL92:\tEQUAL?\tOBJ1,IT \\?CCL98\n\tPRINTD\tP-IT-OBJECT\n\tJUMP\t?CND96\n?CCL98:\tPRINTD\tOBJ1\n?CND96:\tPRINTI\t\": \"\n?CND78:\tSET\t'ICNT,TRUE-VALUE\n\tCALL\tPERFORM,PRSA,PRSO,PRSI >V\n\tEQUAL?\tV,M-FATAL \\?PRG53\n?CND40:\tEQUAL?\tV,M-FATAL /?CND101\n\tLOC\tWINNER\n\tGETP\tSTACK,P?ACTION\n\tCALL\tSTACK,M-END >V\n?CND101:\tEQUAL?\tPRSA,V?AGAIN /?CND103\n\tSET\t'L-PRSA,PRSA\n\tSET\t'L-PRSO,PRSO\n\tSET\t'L-PRSI,PRSI\n?CND103:\tCALL\tINT,I-POD-TRIP\n\tGET\tSTACK,C-ENABLED?\n\tZERO?\tSTACK /?CCL107\n\tSET\t'C-ELAPSED,54\n\tJUMP\t?CND105\n?CCL107:\tGRTR?\tSHUTTLE-VELOCITY,0 \\?CCL109\n\tDIV\t600,SHUTTLE-VELOCITY >C-ELAPSED\n\tJUMP\t?CND105\n?CCL109:\tEQUAL?\tPRSA,V?TELL /?CTR110\n\tCALL\tTIMELESS-VERB?,PRSA\n\tZERO?\tSTACK /?CCL111\n?CTR110:\tSET\t'C-ELAPSED,0\n\tJUMP\t?CND105\n?CCL111:\tEQUAL?\tPRSA,V?AGAIN \\?CND105\n\tCALL\tTIMELESS-VERB?,L-PRSA\n\tZERO?\tSTACK /?CND105\n\tSET\t'C-ELAPSED,0\n?CND105:\tADD\tINTERNAL-MOVES,C-ELAPSED >INTERNAL-MOVES\n\tEQUAL?\tV,M-FATAL \\?CND3\n\tSET\t'P-CONT,FALSE-VALUE\n\tJUMP\t?CND3\n?CCL5:\tSET\t'P-CONT,FALSE-VALUE\n?CND3:\tIN?\tCHRONOMETER,ADVENTURER /?CCL121\n\tSET\t'MOVES,0\n\tJUMP\t?CND119\n?CCL121:\tFSET?\tCHRONOMETER,MUNGEDBIT \\?CCL123\n\tSET\t'MOVES,MUNGED-TIME\n\tJUMP\t?CND119\n?CCL123:\tSET\t'MOVES,INTERNAL-MOVES\n?CND119:\tZERO?\tP-WON /?PRG1\n\tZERO?\tC-ELAPSED /?PRG1\n\tCALL\tCLOCKER >V\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tTIMELESS-VERB?,VRB\n\tEQUAL?\tVRB,V?BRIEF,V?SUPER-BRIEF,V?VERBOSE /TRUE\n\tEQUAL?\tVRB,V?SAVE,V?RESTORE,V?SCORE /TRUE\n\tEQUAL?\tVRB,V?SCRIPT,V?UNSCRIPT,V?TIME /TRUE\n\tEQUAL?\tVRB,V?QUIT,V?RESTART,V?VERSION /TRUE\n\tEQUAL?\tVRB,V?$RANDOM,V?$RECORD,V?$UNRECORD /TRUE\n\tEQUAL?\tVRB,V?$COMMAND /TRUE\n\tRFALSE\t\n\n\n\t.FUNCT\tPERFORM,A,O=0,I=0,V,OA,OO,OI\n\tSET\t'OA,PRSA\n\tSET\t'OO,PRSO\n\tSET\t'OI,PRSI\n\tEQUAL?\tIT,I,O \\?CND1\n\tPRINTI\t\"I don't see what you are referring to.\"\n\tCRLF\t\n\tSET\t'P-IT-OBJECT,FALSE-VALUE\n\tRETURN\t2\n?CND1:\tSET\t'PRSA,A\n\tSET\t'PRSO,O\n\tZERO?\tPRSO /?CND5\n\tEQUAL?\tPRSA,V?WALK /?CND5\n\tSET\t'P-IT-OBJECT,PRSO\n\tSET\t'P-IT-LOC,HERE\n?CND5:\tSET\t'PRSI,I\n\tEQUAL?\tNOT-HERE-OBJECT,PRSO,PRSI \\?CCL11\n\tCALL\tNOT-HERE-OBJECT-F >V\n\tZERO?\tV /?CCL11\n\tSET\t'P-WON,FALSE-VALUE\n\tJUMP\t?CND9\n?CCL11:\tSET\t'O,PRSO\n\tZERO?\tO /?CCL15\n\tSET\t'I,PRSI\n\tZERO?\tI /?CCL15\n\tCALL\tNULL-F\n\tZERO?\tSTACK /?CCL15\n\tPRINTI\t\"[in case last clause changed PRSx]\"\n\tJUMP\t?CND9\n?CCL15:\tGETP\tWINNER,P?ACTION\n\tCALL\tSTACK >V\n\tZERO?\tV \\?CND9\n\tLOC\tWINNER\n\tGETP\tSTACK,P?ACTION\n\tCALL\tSTACK,M-BEG >V\n\tZERO?\tV \\?CND9\n\tGET\tPREACTIONS,A\n\tCALL\tSTACK >V\n\tZERO?\tV \\?CND9\n\tZERO?\tI /?CCL26\n\tGETP\tI,P?ACTION\n\tCALL\tSTACK >V\n\tZERO?\tV \\?CND9\n?CCL26:\tZERO?\tO /?CCL30\n\tEQUAL?\tA,V?WALK /?CCL30\n\tGETP\tO,P?ACTION\n\tCALL\tSTACK >V\n\tZERO?\tV \\?CND9\n?CCL30:\tGET\tACTIONS,A\n\tCALL\tSTACK >V\n\tZERO?\tV /?CND9\n?CND9:\tSET\t'PRSA,OA\n\tSET\t'PRSO,OO\n\tSET\t'PRSI,OI\n\tRETURN\tV\n\n\n\t.FUNCT\tMETA-LOC,OBJ\n?PRG1:\tZERO?\tOBJ /FALSE\n\tIN?\tOBJ,GLOBAL-OBJECTS \\?CND3\n\tRETURN\tGLOBAL-OBJECTS\n?CND3:\tIN?\tOBJ,ROOMS \\?CCL9\n\tRETURN\tOBJ\n?CCL9:\tLOC\tOBJ >OBJ\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tQUEUE,RTN,TICK,CINT\n\tCALL\tINT,RTN >CINT\n\tPUT\tCINT,C-TICK,TICK\n\tRETURN\tCINT\n\n\n\t.FUNCT\tINT,RTN,DEMON=0,E,C,INT\n\tADD\tC-TABLE,C-TABLELEN >E\n\tADD\tC-TABLE,C-INTS >C\n?PRG1:\tEQUAL?\tC,E \\?CCL5\n\tSUB\tC-INTS,C-INTLEN >C-INTS\n\tZERO?\tDEMON /?PEN6\n\tSUB\tC-DEMONS,C-INTLEN >C-DEMONS\n?PEN6:\tADD\tC-TABLE,C-INTS >INT\n\tPUT\tINT,C-RTN,RTN\n\tRETURN\tINT\n?CCL5:\tGET\tC,C-RTN\n\tEQUAL?\tSTACK,RTN \\?CND3\n\tRETURN\tC\n?CND3:\tADD\tC,C-INTLEN >C\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tCLOCKER,C,E,TICK,FLG=0\n\tZERO?\tP-WON /?CCL3\n\tPUSH\tC-INTS\n\tJUMP\t?CND1\n?CCL3:\tPUSH\tC-DEMONS\n?CND1:\tADD\tC-TABLE,STACK >C\n\tADD\tC-TABLE,C-TABLELEN >E\n?PRG4:\tEQUAL?\tC,E \\?CCL8\n\tRETURN\tFLG\n?CCL8:\tGET\tC,C-ENABLED?\n\tZERO?\tSTACK /?CND6\n\tGET\tC,C-TICK >TICK\n\tZERO?\tTICK /?CND6\n\tEQUAL?\tTICK,-1 \\?CCL13\n\tGET\tC,C-RTN\n\tCALL\tSTACK\n\tZERO?\tSTACK /?CND6\n\tSET\t'FLG,TRUE-VALUE\n\tJUMP\t?CND6\n?CCL13:\tSUB\tTICK,C-ELAPSED >TICK\n\tPUT\tC,C-TICK,TICK\n\tGRTR?\tTICK,1 /?CND6\n\tPUT\tC,C-TICK,0\n\tGET\tC,C-RTN\n\tCALL\tSTACK\n\tZERO?\tSTACK /?CND6\n\tSET\t'FLG,TRUE-VALUE\n?CND6:\tADD\tC,C-INTLEN >C\n\tJUMP\t?PRG4\n\n\n\t.FUNCT\tNULL-F,A1,A2\n\tRFALSE\t\n\n\t.ENDI\n"
  },
  {
    "path": "misc.zil",
    "content": "\"MISC for PLANETFALL\n(c) Copyright 1983 Infocom, Inc.  All Rights Reserved.\"\n\n\"old MACROS file\"\n\n<SETG C-ENABLED? 0>\n<SETG C-ENABLED 1>\n<SETG C-DISABLED 0>\n\n<DEFMAC VERB? (\"TUPLE\" ATMS \"AUX\" (O ()) (L ())) \n\t<REPEAT ()\n\t\t<COND (<EMPTY? .ATMS>\n\t\t       <RETURN!- <COND (<LENGTH? .O 1> <NTH .O 1>)\n\t\t\t\t     (ELSE <FORM OR !.O>)>>)>\n\t\t<REPEAT ()\n\t\t\t<COND (<EMPTY? .ATMS> <RETURN!->)>\n\t\t\t<SET ATM <NTH .ATMS 1>>\n\t\t\t<SET L\n\t\t\t     (<FORM GVAL <PARSE <STRING \"V?\" <SPNAME .ATM>>>>\n\t\t\t      !.L)>\n\t\t\t<SET ATMS <REST .ATMS>>\n\t\t\t<COND (<==? <LENGTH .L> 3> <RETURN!->)>>\n\t\t<SET O (<FORM EQUAL? ',PRSA !.L> !.O)>\n\t\t<SET L ()>>>\n\n<DEFMAC RFATAL ()\n\t'<PROG () <PUSH 2> <RSTACK>>>\n\n<DEFMAC PROB ('BASE?)\n\t <FORM NOT <FORM L? .BASE? '<RANDOM 100>>>>\n\n<ROUTINE PICK-ONE (FROB)\n\t <GET .FROB <RANDOM <GET .FROB 0>>>>\n\n<DEFMAC ENABLE ('INT) <FORM PUT .INT ,C-ENABLED? 1>>\n\n<DEFMAC DISABLE ('INT) <FORM PUT .INT ,C-ENABLED? 0>>\n\n<DEFMAC OPENABLE? ('OBJ)\n\t<FORM OR <FORM FSET? .OBJ ',DOORBIT>\n\t         <FORM FSET? .OBJ ',CONTBIT>>> \n\n<DEFMAC ABS ('NUM)\n\t<FORM COND (<FORM L? .NUM 0> <FORM - 0 .NUM>)\n\t           (T .NUM)>>\n\n\f\n\n\"old MAIN or VERMONT file\"\n\n<GLOBAL P-WON <>>\n\n<CONSTANT M-FATAL 2>\n \n<CONSTANT M-HANDLED 1>   \n \n<CONSTANT M-NOT-HANDLED <>>   \n \n<CONSTANT M-BEG 1>  \n \n<CONSTANT M-END 6> \n \n<CONSTANT M-OBJECT <>>\n\n<CONSTANT M-ENTER 2>\n \n<CONSTANT M-LOOK 3> \n \n<CONSTANT M-FLASH 4>\n\n<CONSTANT M-OBJDESC 5>\n\n<ROUTINE GO () \n\t <PUTB ,P-LEXV 0 59>\n;\"put interrupts on clock chain\"\n\t <ENABLE <QUEUE I-BLATHER -1>>\n\t <ENABLE <QUEUE I-AMBASSADOR -1>>\n\t <ENABLE <QUEUE I-RANDOM-INTERRUPTS 1>>\n\t <ENABLE <QUEUE I-SLEEP-WARNINGS 3600>>\n\t <ENABLE <QUEUE I-HUNGER-WARNINGS 2000>>\n\t <ENABLE <QUEUE I-SICKNESS-WARNINGS 1000>>\n;\"set up and go\"\n\t <SETG SPOUT-PLACED ,GROUND>\n\t ;\"following COND avoids random-before-first-read message in ZIP20\"\n\t <COND (<EQUAL? <GETB 0 56> 0>\n\t\t<SETG INTERNAL-MOVES <+ 4450 <RANDOM 180>>>)\n\t       (T\n\t\t<SETG INTERNAL-MOVES 4540>)>\n         <SETG MOVES ,INTERNAL-MOVES>\n\t <SETG LIT T>\n\t <SETG WINNER ,ADVENTURER>\n\t <SETG HERE ,DECK-NINE>\n\t <SETG P-IT-LOC ,DECK-NINE>\n\t <SETG P-IT-OBJECT ,POD-DOOR>\n\t <COND (<NOT <FSET? ,HERE ,TOUCHBIT>>\n\t\t<V-VERSION>\n\t\t<CRLF>\n\t\t<TELL\n\"Another routine day of drudgery aboard the Stellar Patrol Ship Feinstein.\nThis morning's assignment for a certain lowly Ensign Seventh Class: scrubbing\nthe filthy metal deck at the port end of Level Nine. With your Patrol-issue\nself-contained multi-purpose all-weather scrub brush you shine the floor with\na diligence born of the knowledge that at any moment dreaded Ensign First\nClass Blather, the bane of your shipboard existence, could appear.\" CR CR>)>\n\t <V-LOOK>\n\t <MAIN-LOOP>\n\t <AGAIN>>\n\n<ROUTINE I-RANDOM-INTERRUPTS ()\n\t <ENABLE <QUEUE I-BLOWUP-FEINSTEIN <+ <RANDOM 90> 240>>>\n\t <COMM-SETUP> ;\"sets up comm system and laser values\"\n\t <SETG NUMBER-NEEDED <RANDOM 1000>>>\n\n<ROUTINE MAIN-LOOP (\"AUX\" ICNT OCNT NUM CNT OBJ TBL V PTBL OBJ1 TMP)\n   <REPEAT ()\n     <SETG C-ELAPSED ,C-ELAPSED-DEFAULT>\n     <SET CNT 0>\n     <SET OBJ <>>\n     <SET PTBL T>\n     <COND (<SETG P-WON <PARSER>>\n\t    <SET ICNT <GET ,P-PRSI ,P-MATCHLEN>>\n\t    <SET OCNT <GET ,P-PRSO ,P-MATCHLEN>>\n\t    <COND (<AND ,P-IT-OBJECT <ACCESSIBLE? ,P-IT-OBJECT>>\n\t\t   <SET TMP <>>\n\t\t   <REPEAT ()\n\t\t\t   <COND (<G? <SET CNT <+ .CNT 1>> .ICNT>\n\t\t\t\t  <RETURN>)\n\t\t\t\t (T\n\t\t\t\t  <COND (<EQUAL? <GET ,P-PRSI .CNT> ,IT>\n\t\t\t\t\t <PUT ,P-PRSI .CNT ,P-IT-OBJECT>\n\t\t\t\t\t <SET TMP T>\n\t\t\t\t\t <RETURN>)>)>>\n\t\t   <COND (<NOT .TMP>\n\t\t\t  <SET CNT 0>\n\t\t\t  <REPEAT ()\n\t\t\t   <COND (<G? <SET CNT <+ .CNT 1>> .OCNT>\n\t\t\t\t  <RETURN>)\n\t\t\t\t (T\n\t\t\t\t  <COND (<EQUAL? <GET ,P-PRSO .CNT> ,IT>\n\t\t\t\t\t <PUT ,P-PRSO .CNT ,P-IT-OBJECT>\n\t\t\t\t\t <RETURN>)>)>>)>\n\t\t   <SET CNT 0>)>\n\t    <SET NUM\n\t\t <COND (<0? .OCNT> .OCNT)\n\t\t       (<G? .OCNT 1>\n\t\t\t<SET TBL ,P-PRSO>\n\t\t\t<COND (<0? .ICNT> <SET OBJ <>>)\n\t\t\t      (T <SET OBJ <GET ,P-PRSI 1>>)>\n\t\t\t.OCNT)\n\t\t       (<G? .ICNT 1>\n\t\t\t<SET PTBL <>>\n\t\t\t<SET TBL ,P-PRSI>\n\t\t\t<SET OBJ <GET ,P-PRSO 1>>\n\t\t\t.ICNT)\n\t\t       (T 1)>>\n\t    <COND (<AND <NOT .OBJ> <1? .ICNT>> <SET OBJ <GET ,P-PRSI 1>>)>\n\t    <COND (<==? ,PRSA ,V?WALK> <SET V <PERFORM ,PRSA ,PRSO>>)\n\t\t  (<0? .NUM>\n\t\t   <COND (<0? <BAND <GETB ,P-SYNTAX ,P-SBITS> ,P-SONUMS>>\n\t\t\t  <SET V <PERFORM ,PRSA>>\n\t\t\t  <SETG PRSO <>>)\n\t\t\t (T\n\t\t\t  <TELL \"There isn't anything to \">\n\t\t\t  <SET TMP <GET ,P-ITBL ,P-VERBN>>\n\t\t\t  <COND (<OR ,P-OFLAG ,P-MERGED>\n\t\t\t\t <PRINTB <GET .TMP 0>>)\n\t\t\t\t(T\n\t\t\t\t <WORD-PRINT <GETB .TMP 2>\n\t\t\t\t\t     <GETB .TMP 3>>)>\n\t\t\t  <TELL \"!\" CR>\n\t\t\t  <SET V <>>)>)\n\t\t  (T\n\t\t   <SET TMP 0>\n\t\t   <SET ICNT <>>\n\t\t   <REPEAT ()\n\t\t\t   <COND (<G? <SET CNT <+ .CNT 1>> .NUM>\n\t\t\t\t  <COND (<G? .TMP 0>\n\t\t\t\t\t <TELL \"The \">\n\t\t\t\t\t <COND (<NOT <EQUAL? .TMP .NUM>>\n\t\t\t\t\t\t<TELL \"other \">)>\n\t\t\t\t\t <TELL \"object\">\n\t\t\t\t\t <COND (<NOT <EQUAL? .TMP 1>>\n\t\t\t\t\t\t<TELL \"s\">)>\n\t\t\t\t\t <TELL \" that you mentioned \">\n\t\t\t\t\t <COND (<NOT <EQUAL? .TMP 1>>\n\t\t\t\t\t\t<TELL \"are\">)\n\t\t\t\t\t       (T <TELL \"is\">)>\n\t\t\t\t\t <TELL \"n't here.\" CR>)\n\t\t\t\t\t(<NOT .ICNT>\n\t\t\t\t\t <TELL \"There's nothing there.\" CR>)>\n\t\t\t\t  <RETURN>)\n\t\t\t\t (T\n\t\t\t\t  <COND (.PTBL <SET OBJ1 <GET ,P-PRSO .CNT>>)\n\t\t\t\t\t(T <SET OBJ1 <GET ,P-PRSI .CNT>>)>\n\t\t\t\t  <SETG PRSO <COND (.PTBL .OBJ1) (T .OBJ)>>\n\t\t\t\t  <SETG PRSI <COND (.PTBL .OBJ) (T .OBJ1)>>\n\t\t\t\t  <COND (<OR <G? .NUM 1>\n\t\t\t\t\t     <EQUAL? <GET <GET ,P-ITBL ,P-NC1>\n\t\t\t\t\t\t\t  0>\n\t\t\t\t\t\t     ,W?ALL>>\n\t\t\t\t\t <COND (<EQUAL? .OBJ1\n\t\t\t\t\t\t\t,NOT-HERE-OBJECT>\n\t\t\t\t\t\t<SET TMP\n\t\t\t\t\t\t      <+ .TMP 1>>\n\t\t\t\t\t\t<AGAIN>)\n\t\t\t\t\t       (<AND <VERB? TAKE>\n\t\t\t\t\t\t     ,PRSI\n\t\t\t\t\t\t     <EQUAL? <GET <GET ,P-ITBL\n\t\t\t\t\t\t\t\t       ,P-NC1>\n\t\t\t\t\t\t\t\t  0>\n\t\t\t\t\t\t\t     ,W?ALL>\n\t\t\t\t\t\t     <NOT <IN? ,PRSO ,PRSI>>>\n\t\t\t\t\t\t<AGAIN>)\n\t\t\t\t\t       (<AND <EQUAL? ,P-GETFLAGS\n\t\t\t\t\t\t\t     ,P-ALL>\n\t\t\t\t\t\t     <VERB? TAKE>\n\t\t\t\t\t\t     <NOT <EQUAL?\n\t\t\t\t\t\t\t   <LOC .OBJ1>\n\t\t\t\t\t\t\t   ,WINNER\n\t\t\t\t\t\t\t   ,HERE>>>\n\t\t\t\t\t\t<AGAIN>)\n\t\t\t\t\t       (T\n\t\t\t\t\t\t<COND (<EQUAL? .OBJ1 ,IT>\n\t\t\t\t\t\t       <PRINTD ,P-IT-OBJECT>)\n\t\t\t\t\t\t      (T <PRINTD .OBJ1>)>\n\t\t\t\t\t\t<TELL \": \">)>)>\n\t\t\t\t  <SET ICNT T>\n\t\t\t\t  <SET V <PERFORM ,PRSA ,PRSO ,PRSI>>\n\t\t\t\t  <COND (<==? .V ,M-FATAL> <RETURN>)>)>>)>\n\t    <COND (<NOT <==? .V ,M-FATAL>>\n\t\t   ;<COND (<==? <LOC ,WINNER> ,PRSO>\n\t\t\t  <SETG PRSO <>>)>\n\t\t   <SET V <APPLY <GETP <LOC ,WINNER> ,P?ACTION> ,M-END>>)>\n\t    <COND (<NOT <==? ,PRSA ,V?AGAIN>>\n\t\t   <SETG L-PRSA ,PRSA>\n\t\t   <SETG L-PRSO ,PRSO>\n\t\t   <SETG L-PRSI ,PRSI>)>\n\t    <COND (<NOT <EQUAL? <GET <INT I-POD-TRIP> ,C-ENABLED?> 0>>\n\t\t   <SETG C-ELAPSED 54>)\n\t\t  (<G? ,SHUTTLE-VELOCITY 0>\n\t\t   <SETG C-ELAPSED </ 600 ,SHUTTLE-VELOCITY>>)\n\t\t  (<OR <VERB? TELL>\n\t\t       <TIMELESS-VERB? ,PRSA>>\n\t\t   <SETG C-ELAPSED 0>)\n\t\t  (<AND <VERB? AGAIN>\n\t\t\t<TIMELESS-VERB? ,L-PRSA>>\n\t\t   <SETG C-ELAPSED 0>)>\n\t    <SETG INTERNAL-MOVES <+ ,INTERNAL-MOVES ,C-ELAPSED>>\n\t    <COND (<==? .V ,M-FATAL>\n\t\t   <SETG P-CONT <>>)>)\n\t   (T\n\t    <SETG P-CONT <>>)>\n     <COND (<NOT <IN? ,CHRONOMETER ,ADVENTURER>>\n\t    <SETG MOVES 0>)\n\t   (<FSET? ,CHRONOMETER ,MUNGEDBIT>\n\t    <SETG MOVES ,MUNGED-TIME>)\n\t   (T\n\t    <SETG MOVES ,INTERNAL-MOVES>)>\n     <COND (,P-WON\n\t    <COND (<NOT <EQUAL? ,C-ELAPSED 0>>\n\t\t   <SET V <CLOCKER>>)>)>>>\n\n<ROUTINE TIMELESS-VERB? (VRB)\n\t <COND (<OR <EQUAL? .VRB ,V?BRIEF ,V?SUPER-BRIEF ,V?VERBOSE>\n\t\t    <EQUAL? .VRB ,V?SAVE ,V?RESTORE ,V?SCORE>\n\t\t    <EQUAL? .VRB ,V?SCRIPT ,V?UNSCRIPT ,V?TIME>\n\t\t    <EQUAL? .VRB ,V?QUIT ,V?RESTART ,V?VERSION>\n\t\t    <EQUAL? .VRB ,V?$RANDOM ,V?$RECORD ,V?$UNRECORD>\n\t\t    <EQUAL? .VRB ,V?$COMMAND>>\n\t\t<RTRUE>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<GLOBAL L-PRSA <>>\n<GLOBAL L-PRSO <>>\n<GLOBAL L-PRSI <>>\n\n%<COND (<GASSIGNED? PREDGEN>\n\n'<ROUTINE PERFORM (A \"OPTIONAL\" (O <>) (I <>) \"AUX\" V OA OO OI)\n\t<SET OA ,PRSA>\n\t<SET OO ,PRSO>\n\t<SET OI ,PRSI>\n\t<COND (<EQUAL? ,IT .I .O>\n\t       ;<AND <EQUAL? ,IT .I .O>\n\t\t    <OR <NOT <EQUAL? ,P-IT-LOC ,HERE>>\n\t\t\t<EQUAL? <LOC ,P-IT-OBJECT> <>>>>\n\t       <TELL \"I don't see what you are referring to.\" CR>\n\t       <SETG P-IT-OBJECT <>>\n\t       <RFATAL>)>\n\t;<COND (<==? .O ,IT> <SET O ,P-IT-OBJECT>)>\n\t;<COND (<==? .I ,IT> <SET I ,P-IT-OBJECT>)>\n\t<SETG PRSA .A>\n\t<SETG PRSO .O>\n\t<COND (<AND ,PRSO <NOT <VERB? WALK>>>\n\t       <SETG P-IT-OBJECT ,PRSO>\n\t       <SETG P-IT-LOC ,HERE>)>\n\t<SETG PRSI .I>\n\t<COND (<AND <EQUAL? ,NOT-HERE-OBJECT ,PRSO ,PRSI>\n\t\t    <SET V <APPLY ,NOT-HERE-OBJECT-F>>>\n\t       <SETG P-WON <>>\t;\"to keep clock from running\"\n\t       .V)\n\t      (<AND <SET O ,PRSO> <SET I ,PRSI> <NULL-F>>\n\t       <TELL \"[in case last clause changed PRSx]\">)\n\t      (<SET V <APPLY <GETP ,WINNER ,P?ACTION>>> .V)\n\t      (<SET V <APPLY <GETP <LOC ,WINNER> ,P?ACTION> ,M-BEG>> .V)\n\t      (<SET V <APPLY <GET ,PREACTIONS .A>>> .V)\n\t      (<AND .I <SET V <APPLY <GETP .I ,P?ACTION>>>> .V)\n\t      (<AND .O\n\t\t    <NOT <==? .A ,V?WALK>>\n\t\t    <SET V <APPLY <GETP .O ,P?ACTION>>>>\n\t       .V)\n\t      (<SET V <APPLY <GET ,ACTIONS .A>>> .V)>\n\t<SETG PRSA .OA>\n\t<SETG PRSO .OO>\n\t<SETG PRSI .OI>\n\t.V>)\n       (T\n\n'<PROG ()\n\n<SETG PDEBUG <>>\n\n<ROUTINE PERFORM (A \"OPTIONAL\" (O <>) (I <>) \"AUX\" V OA OO OI)\n\t<COND (,PDEBUG\n\t       <TELL \"** PERFORM: PRSA = \">\n\t       <PRINC <NTH ,ACTIONS <+ <* .A 2> 1>>>\n\t       <COND (<AND .O <NOT <==? .A ,V?WALK>>>\n\t\t      <TELL \" | PRSO = \" D .O>)>\n\t       <COND (.I <TELL \" | PRSI = \" D .I>)>)>\n\t<SET OA ,PRSA>\n\t<SET OO ,PRSO>\n\t<SET OI ,PRSI>\n\t<COND (<EQUAL? ,IT .I .O>\n\t       ;<AND <EQUAL? ,IT .I .O>\n\t\t    <OR <NOT <EQUAL? ,P-IT-LOC ,HERE>>\n\t\t\t<EQUAL? <LOC ,P-IT-OBJECT> <>>>>\n\t       <TELL \"I don't see what you are referring to.\" CR>\n\t       <SETG P-IT-OBJECT <>>\n\t       <RFATAL>)>\n\t;<COND (<==? .O ,IT> <SET O ,P-IT-OBJECT>)>\n\t;<COND (<==? .I ,IT> <SET I ,P-IT-OBJECT>)>\n\t<SETG PRSA .A>\n\t<SETG PRSO .O>\n\t<COND (<AND ,PRSO <NOT <VERB? WALK>>>\n\t       <SETG P-IT-OBJECT ,PRSO>\n\t       <SETG P-IT-LOC ,HERE>)>\n\t<SETG PRSI .I>\n\t<COND (<SET V <D-APPLY \"Actor\"\n\t\t\t       <GETP ,WINNER ,P?ACTION>>> .V)\n\t      (<SET V <D-APPLY \"Room (M-BEG)\"\n\t\t\t       <GETP <LOC ,WINNER> ,P?ACTION>\n\t\t\t       ,M-BEG>> .V)\n\t      (<SET V <D-APPLY \"Preaction\"\n\t\t\t       <GET ,PREACTIONS .A>>> .V)\n\t      (<AND .I <SET V <D-APPLY \"PRSI\"\n\t\t\t\t       <GETP .I ,P?ACTION>>>> .V)\n\t      (<AND .O\n\t\t    <NOT <==? .A ,V?WALK>>\n\t\t    <LOC .O>\n\t\t    <SET V <D-APPLY \"Container\"\n\t\t\t\t    <GETP <LOC .O> ,P?CONTFCN>>>>\n\t       .V)\n\t      (<AND .O\n\t\t    <NOT <==? .A ,V?WALK>>\n\t\t    <SET V <D-APPLY \"PRSO\"\n\t\t\t\t    <GETP .O ,P?ACTION>>>>\n\t       .V)\n\t      (<SET V <D-APPLY <>\n\t\t\t       <GET ,ACTIONS .A>>> .V)>\n\t<COND (<NOT <==? .V ,M-FATAL>>\n\t       ;<COND (<==? <LOC ,WINNER> ,PRSO>\n\t\t      <SETG PRSO <>>)>\n\t       <SET V <D-APPLY \"Room (M-END)\"\n\t\t\t       <GETP <LOC ,WINNER> ,P?ACTION> ,M-END>>)>\n\t<SETG PRSA .OA>\n\t<SETG PRSO .OO>\n\t<SETG PRSI .OI>\n\t.V>\n\n<DEFINE D-APPLY (STR FCN \"OPTIONAL\" FOO \"AUX\" RES)\n\t<COND (<NOT .FCN> <>)\n\t      (T\n\t       <COND (,PDEBUG\n\t\t      <COND (<NOT .STR>\n\t\t\t     <TELL CR \"  Default ->\" CR>)\n\t\t\t    (T <TELL CR \"  \" .STR \" -> \">)>)>\n\t       <SET RES\n\t\t    <COND (<ASSIGNED? FOO>\n\t\t\t   <APPLY .FCN .FOO>)\n\t\t\t  (T <APPLY .FCN>)>>\n\t       <COND (<AND ,PDEBUG .STR>\n\t\t      <COND (<==? .RES 2>\n\t\t\t     <TELL \"Fatal\" CR>)\n\t\t\t    (<NOT .RES>\n\t\t\t     <TELL \"Not handled\">)\n\t\t\t    (T <TELL \"Handled\" CR>)>)>\n\t       .RES)>>\n>)>\n\n<ROUTINE META-LOC (OBJ)\n\t <REPEAT ()\n\t\t <COND (<NOT .OBJ> <RFALSE>)\n\t\t       (<IN? .OBJ ,GLOBAL-OBJECTS>\n\t\t\t<RETURN ,GLOBAL-OBJECTS>)>\n\t\t <COND (<IN? .OBJ ,ROOMS>\n\t\t\t<RETURN .OBJ>)\n\t\t       (ELSE\n\t\t\t<SET OBJ <LOC .OBJ>>)>>>\n\n\f\n\n\"old CLOCK file\"\n\n<CONSTANT C-TABLELEN 240>\n\n<GLOBAL C-TABLE %<COND (<GASSIGNED? PREDGEN>\n\t\t\t'<ITABLE NONE 120>)\n\t\t       (T\n\t\t\t'<ITABLE NONE 240>)>>\n\n<GLOBAL C-DEMONS 300>\n\n<GLOBAL C-INTS 240>\n\n<GLOBAL C-ELAPSED 7>\n\n<CONSTANT C-ELAPSED-DEFAULT 7>\n\n<CONSTANT C-INTLEN 6>\n\n<CONSTANT C-ENABLED? 0>\n\n<CONSTANT C-TICK 1>\n\n<CONSTANT C-RTN 2>\n\n<ROUTINE QUEUE (RTN TICK \"AUX\" CINT)\n\t <PUT <SET CINT <INT .RTN>> ,C-TICK .TICK>\n\t .CINT>\n\n<ROUTINE INT (RTN \"OPTIONAL\" (DEMON <>) E C INT)\n\t <SET E <REST ,C-TABLE ,C-TABLELEN>>\n\t <SET C <REST ,C-TABLE ,C-INTS>>\n\t <REPEAT ()\n\t\t <COND (<==? .C .E>\n\t\t\t<SETG C-INTS <- ,C-INTS ,C-INTLEN>>\n\t\t\t<AND .DEMON <SETG C-DEMONS <- ,C-DEMONS ,C-INTLEN>>>\n\t\t\t<SET INT <REST ,C-TABLE ,C-INTS>>\n\t\t\t<PUT .INT ,C-RTN .RTN>\n\t\t\t<RETURN .INT>)\n\t\t       (<EQUAL? <GET .C ,C-RTN> .RTN> <RETURN .C>)>\n\t\t <SET C <REST .C ,C-INTLEN>>>>\n\n;<GLOBAL CLOCK-WAIT <>>\n\n;<GLOBAL ELAPSED-MOVES 0>\n\n<ROUTINE CLOCKER (\"AUX\" C E TICK (FLG <>))\n\t ;<SETG ELAPSED-MOVES <+ ,ELAPSED-MOVES 1>>\n\t ;<COND (,DEBUG-ON\n\t\t<TELL \"[Elapsed time: \" N ,C-ELAPSED \"]\" CR>)>\n\t ;<COND (,CLOCK-WAIT <SETG CLOCK-WAIT <>> <RFALSE>)>\n\t <SET C <REST ,C-TABLE <COND (,P-WON ,C-INTS) (T ,C-DEMONS)>>>\n\t <SET E <REST ,C-TABLE ,C-TABLELEN>>\n\t <REPEAT ()\n\t\t <COND (<==? .C .E> <RETURN .FLG>)\n\t\t       (<NOT <0? <GET .C ,C-ENABLED?>>>\n\t\t\t<SET TICK <GET .C ,C-TICK>>\n\t\t\t<COND (<0? .TICK>)\n\t\t\t      (<==? .TICK -1>\n\t\t\t       <COND (<APPLY <GET .C ,C-RTN>>\n\t\t\t\t      <SET FLG T>)>)\n\t\t\t      (T\n\t\t\t       <PUT .C ,C-TICK <SET TICK <- .TICK ,C-ELAPSED>>>\n\t\t\t       <COND (<NOT <G? .TICK 1>>\n\t\t\t\t      <PUT .C ,C-TICK 0>\n\t\t\t\t      <COND (<APPLY <GET .C ,C-RTN>>\n\t\t\t\t\t     <SET FLG T>)>)>)>)>\n\t\t <SET C <REST .C ,C-INTLEN>>>>\n\n<ROUTINE NULL-F (\"OPTIONAL\" A1 A2)\n\t<RFALSE>>"
  },
  {
    "path": "parser.zabstr",
    "content": "\n<SETG SIBREAKS \".,\\\"\"> \n<GLOBAL PRSA 0 %<> WORD> \n<GLOBAL PRSI 0 %<> WORD> \n<GLOBAL PRSO 0 %<> WORD> \n<GLOBAL P-ADVERB <> %<> WORD> \n<GLOBAL P-ADJECTIVE <> %<> WORD> \n<GLOBAL P-SPACE 1 %<> WORD> \n<GLOBAL P-TABLE 0 %<> WORD> \n<GLOBAL P-ONEOBJ 0 %<> WORD> \n<GLOBAL P-SYNTAX 0 %<> WORD> \n<GLOBAL P-CCSRC 0 %<> WORD> \n<GLOBAL P-LEN 0 %<> WORD> \n<GLOBAL P-DIR 0 %<> WORD> \n<GLOBAL HERE 0 %<> WORD> \n<GLOBAL WINNER 0 %<> WORD> \n<GLOBAL P-LEXV <ITABLE BYTE 120> %<> WORD> \n<GLOBAL P-INBUF <ITABLE BYTE 80> %<> WORD> \n<GLOBAL P-CONT <> %<> WORD> \n<GLOBAL P-IT-OBJECT <> %<> WORD> \n<GLOBAL P-IT-LOC <> %<> WORD> \n<GLOBAL LAST-PSEUDO-LOC <> %<> WORD> \n<GLOBAL P-OFLAG <> %<> WORD> \n<GLOBAL P-MERGED <> %<> WORD> \n<GLOBAL P-ACLAUSE <> %<> WORD> \n<GLOBAL P-ANAM <> %<> WORD> \n<GLOBAL P-AADJ <> %<> WORD> \n<CONSTANT P-PHRLEN 3> \n<CONSTANT P-ORPHLEN 7> \n<CONSTANT P-RTLEN 3> \n<CONSTANT P-LEXWORDS 1> \n<CONSTANT P-LEXSTART 1> \n<CONSTANT P-LEXELEN 2> \n<CONSTANT P-WORDLEN 4> \n<CONSTANT P-PSOFF 4> \n<CONSTANT P-P1OFF 5> \n<CONSTANT P-P1BITS 3> \n<CONSTANT P-ITBLLEN 9> \n<GLOBAL P-ITBL <TABLE 0 0 0 0 0 0 0 0 0 0> %<> WORD> \n<GLOBAL P-OTBL <TABLE 0 0 0 0 0 0 0 0 0 0> %<> WORD> \n<GLOBAL P-VTBL <TABLE 0 0 0 0> %<> WORD> \n<GLOBAL P-NCN 0 %<> WORD> \n<CONSTANT P-VERB 0> \n<CONSTANT P-VERBN 1> \n<CONSTANT P-PREP1 2> \n<CONSTANT P-PREP1N 3> \n<CONSTANT P-PREP2 4> \n<CONSTANT P-PREP2N 5> \n<CONSTANT P-NC1 6> \n<CONSTANT P-NC1L 7> \n<CONSTANT P-NC2 8> \n<CONSTANT P-NC2L 9> \n<GLOBAL QUOTE-FLAG <> %<> WORD> \n<DEFINE-ROUTINE PARSER> \n<GLOBAL P-WALK-DIR <> %<> WORD> \n<DEFINE-ROUTINE WT?> \n<DEFINE-ROUTINE CLAUSE> \n<DEFINE-ROUTINE NUMBER?> \n<GLOBAL P-NUMBER 0 %<> WORD> \n<DEFINE-ROUTINE ORPHAN-MERGE> \n<DEFINE-ROUTINE ACLAUSE-WIN> \n<DEFINE-ROUTINE WORD-PRINT> \n<DEFINE-ROUTINE UNKNOWN-WORD> \n<DEFINE-ROUTINE CANT-USE> \n<GLOBAL P-SLOCBITS 0 %<> WORD> \n<CONSTANT P-SYNLEN 8> \n<CONSTANT P-SBITS 0> \n<CONSTANT P-SPREP1 1> \n<CONSTANT P-SPREP2 2> \n<CONSTANT P-SFWIM1 3> \n<CONSTANT P-SFWIM2 4> \n<CONSTANT P-SLOC1 5> \n<CONSTANT P-SLOC2 6> \n<CONSTANT P-SACTION 7> \n<CONSTANT P-SONUMS 3> \n<DEFINE-ROUTINE SYNTAX-CHECK> \n<DEFINE-ROUTINE CANT-ORPHAN> \n<DEFINE-ROUTINE ORPHAN> \n<DEFINE-ROUTINE CLAUSE-PRINT> \n<DEFINE-ROUTINE BUFFER-PRINT> \n<DEFINE-ROUTINE CAPITALIZE> \n<DEFINE-ROUTINE PREP-PRINT> \n<DEFINE-ROUTINE CLAUSE-COPY> \n<DEFINE-ROUTINE CLAUSE-ADD> \n<DEFINE-ROUTINE PREP-FIND> \n<DEFINE-ROUTINE SYNTAX-FOUND> \n<GLOBAL P-GWIMBIT 0 %<> WORD> \n<DEFINE-ROUTINE GWIM> \n<DEFINE-ROUTINE SNARF-OBJECTS> \n<DEFINE-ROUTINE BUT-MERGE> \n<GLOBAL P-NAM <> %<> WORD> \n<GLOBAL P-ADJ <> %<> WORD> \n<GLOBAL P-ADJN <> %<> WORD> \n<GLOBAL P-PRSO <ITABLE NONE 50> %<> WORD> \n<GLOBAL P-PRSI <ITABLE NONE 50> %<> WORD> \n<GLOBAL P-BUTS <ITABLE NONE 50> %<> WORD> \n<GLOBAL P-MERGE <ITABLE NONE 50> %<> WORD> \n<GLOBAL P-OCLAUSE <ITABLE NONE 50> %<> WORD> \n<GLOBAL P-MATCHLEN 0 %<> WORD> \n<GLOBAL P-GETFLAGS 0 %<> WORD> \n<CONSTANT P-ALL 1> \n<CONSTANT P-ONE 2> \n<CONSTANT P-INHIBIT 4> \n<GLOBAL P-CSPTR <> %<> WORD> \n<GLOBAL P-CEPTR <> %<> WORD> \n<GLOBAL P-AND <> %<> WORD> \n<DEFINE-ROUTINE SNARFEM> \n<DEFINE-ROUTINE ADJ-CHECK> \n<CONSTANT SH 128> \n<CONSTANT SC 64> \n<CONSTANT SIR 32> \n<CONSTANT SOG 16> \n<CONSTANT STAKE 8> \n<CONSTANT SMANY 4> \n<CONSTANT SHAVE 2> \n<DEFINE-ROUTINE GET-OBJECT> \n<DEFINE-ROUTINE MOBY-FIND> \n<GLOBAL P-MOBY-FOUND <> %<> WORD> \n<GLOBAL P-XNAM <> %<> WORD> \n<GLOBAL P-XADJ <> %<> WORD> \n<GLOBAL P-XADJN <> %<> WORD> \n<DEFINE-ROUTINE WHICH-PRINT> \n<DEFINE-ROUTINE GLOBAL-CHECK> \n<DEFINE-ROUTINE DO-SL> \n<CONSTANT P-SRCBOT 2> \n<CONSTANT P-SRCTOP 0> \n<CONSTANT P-SRCALL 1> \n<DEFINE-ROUTINE SEARCH-LIST> \n<DEFINE-ROUTINE OBJ-FOUND> \n<DEFINE-ROUTINE TAKE-CHECK> \n<DEFINE-ROUTINE ITAKE-CHECK> \n<DEFINE-ROUTINE HERE?> \n<DEFINE-ROUTINE HELD?> \n<DEFINE-ROUTINE MANY-CHECK> \n<DEFINE-ROUTINE ZMEMQ> \n<DEFINE-ROUTINE ZMEMQB> \n<DEFINE-ROUTINE LIT?> \n<DEFINE-ROUTINE PRSO-PRINT> \n<DEFINE-ROUTINE THIS-IT?> "
  },
  {
    "path": "parser.zap",
    "content": "\n\n\t.FUNCT\tPARSER,PTR=P-LEXSTART,WORD,VAL=0,VERB=0,LEN,DIR=0,NW=0,LW=0,NUM,SCNT,CNT=-1\n?PRG1:\tIGRTR?\t'CNT,P-ITBLLEN /?REP2\n\tPUT\tP-ITBL,CNT,0\n\tJUMP\t?PRG1\n?REP2:\tSET\t'P-ADVERB,FALSE-VALUE\n\tSET\t'P-ADJECTIVE,FALSE-VALUE\n\tSET\t'P-MERGED,FALSE-VALUE\n\tPUT\tP-PRSO,P-MATCHLEN,0\n\tPUT\tP-PRSI,P-MATCHLEN,0\n\tPUT\tP-BUTS,P-MATCHLEN,0\n\tZERO?\tQUOTE-FLAG \\?CND6\n\tEQUAL?\tWINNER,ADVENTURER /?CND6\n\tSET\t'WINNER,ADVENTURER\n\tLOC\tWINNER\n\tFSET?\tSTACK,VEHBIT /?CND6\n\tLOC\tWINNER >HERE\n?CND6:\tZERO?\tP-CONT /?CCL14\n\tSET\t'PTR,P-CONT\n\tSET\t'P-CONT,FALSE-VALUE\n\tEQUAL?\tPRSA,V?TELL /?CND12\n\tZERO?\tSUPER-BRIEF \\?CND12\n\tCRLF\t\n\tJUMP\t?CND12\n?CCL14:\tSET\t'WINNER,ADVENTURER\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tLOC\tWINNER\n\tFSET?\tSTACK,VEHBIT /?CND19\n\tLOC\tWINNER >HERE\n?CND19:\tSET\t'SCNT,P-SPACE\n?PRG21:\tDLESS?\t'SCNT,0 /?REP22\n\tZERO?\tSUPER-BRIEF \\?PRG21\n\tCRLF\t\n\tJUMP\t?PRG21\n?REP22:\tPRINTC\t62\n\tREAD\tP-INBUF,P-LEXV\n?CND12:\tGETB\tP-LEXV,P-LEXWORDS >P-LEN\n\tZERO?\tP-LEN \\?CND27\n\tPRINTI\t\"I beg your pardon?\"\n\tCRLF\t\n\tRFALSE\t\n?CND27:\tSET\t'LEN,P-LEN\n\tSET\t'P-DIR,FALSE-VALUE\n\tSET\t'P-NCN,0\n\tSET\t'P-GETFLAGS,0\n?PRG29:\tDLESS?\t'P-LEN,0 \\?CCL33\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tJUMP\t?REP30\n?CCL33:\tGET\tP-LEXV,PTR >WORD\n\tZERO?\tWORD \\?CTR34\n\tCALL\tNUMBER?,PTR >WORD\n\tZERO?\tWORD /?CCL35\n?CTR34:\tEQUAL?\tWORD,W?TO \\?CCL40\n\tEQUAL?\tVERB,ACT?TELL \\?CCL40\n\tSET\t'WORD,W?QUOTE\n\tJUMP\t?CND38\n?CCL40:\tEQUAL?\tWORD,W?THEN \\?CND38\n\tZERO?\tVERB \\?CND38\n\tZERO?\tQUOTE-FLAG \\?CND38\n\tPUT\tP-ITBL,P-VERB,ACT?TELL\n\tPUT\tP-ITBL,P-VERBN,0\n\tSET\t'WORD,W?QUOTE\n?CND38:\tEQUAL?\tWORD,W?THEN,W?PERIOD /?CTR48\n\tEQUAL?\tWORD,W?QUOTE \\?CCL49\n?CTR48:\tEQUAL?\tWORD,W?QUOTE \\?CND52\n\tZERO?\tQUOTE-FLAG /?CCL56\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tJUMP\t?CND52\n?CCL56:\tSET\t'QUOTE-FLAG,TRUE-VALUE\n?CND52:\tZERO?\tP-LEN /?PEN57\n\tADD\tPTR,P-LEXELEN >P-CONT\n?PEN57:\tPUTB\tP-LEXV,P-LEXWORDS,P-LEN\n\tJUMP\t?REP30\n?CCL49:\tCALL\tWT?,WORD,16,3 >VAL\n\tZERO?\tVAL /?CCL60\n\tEQUAL?\tLEN,1 /?CTR59\n\tEQUAL?\tLEN,2 \\?PRD65\n\tEQUAL?\tVERB,ACT?WALK /?CTR59\n?PRD65:\tADD\tPTR,P-LEXELEN\n\tGET\tP-LEXV,STACK >NW\n\tEQUAL?\tNW,W?THEN,W?QUOTE \\?PRD68\n\tEQUAL?\tVERB,ACT?WALK \\?PRD68\n\tGRTR?\tLEN,2 /?CTR59\n?PRD68:\tEQUAL?\tNW,W?PERIOD \\?PRD72\n\tEQUAL?\tVERB,ACT?WALK,FALSE-VALUE \\?PRD72\n\tGRTR?\tLEN,1 /?CTR59\n?PRD72:\tZERO?\tQUOTE-FLAG /?PRD76\n\tEQUAL?\tLEN,2 \\?PRD76\n\tEQUAL?\tNW,W?QUOTE /?CTR59\n?PRD76:\tGRTR?\tLEN,2 \\?CCL60\n\tEQUAL?\tVERB,ACT?WALK \\?CCL60\n\tEQUAL?\tNW,W?COMMA,W?AND \\?CCL60\n?CTR59:\tSET\t'DIR,VAL\n\tEQUAL?\tNW,W?COMMA,W?AND \\?CND83\n\tADD\tPTR,P-LEXELEN\n\tPUT\tP-LEXV,STACK,W?THEN\n?CND83:\tGRTR?\tLEN,2 /?CND31\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tJUMP\t?REP30\n?CCL60:\tCALL\tWT?,WORD,64,1 >VAL\n\tZERO?\tVAL /?CCL88\n\tZERO?\tVERB \\?CCL88\n\tSET\t'VERB,VAL\n\tPUT\tP-ITBL,P-VERB,VAL\n\tPUT\tP-ITBL,P-VERBN,P-VTBL\n\tPUT\tP-VTBL,0,WORD\n\tMUL\tPTR,2\n\tADD\tSTACK,2 >NUM\n\tGETB\tP-LEXV,NUM\n\tPUTB\tP-VTBL,2,STACK\n\tADD\tNUM,1\n\tGETB\tP-LEXV,STACK\n\tPUTB\tP-VTBL,3,STACK\n\tJUMP\t?CND31\n?CCL88:\tCALL\tWT?,WORD,8,0 >VAL\n\tZERO?\tVAL \\?CTR91\n\tEQUAL?\tWORD,W?ALL,W?ONE,W?A /?CTR91\n\tEQUAL?\tWORD,W?BOTH /?CTR91\n\tCALL\tWT?,WORD,32\n\tZERO?\tSTACK \\?CTR91\n\tCALL\tWT?,WORD,128\n\tZERO?\tSTACK /?CCL92\n?CTR91:\tGRTR?\tP-LEN,0 \\?CCL101\n\tADD\tPTR,P-LEXELEN\n\tGET\tP-LEXV,STACK\n\tEQUAL?\tSTACK,W?OF \\?CCL101\n\tZERO?\tVAL \\?CCL101\n\tEQUAL?\tWORD,W?ALL,W?ONE,W?A /?CCL101\n\tEQUAL?\tWORD,W?BOTH \\?CND31\n?CCL101:\tZERO?\tVAL /?CCL108\n\tZERO?\tP-LEN /?CTR107\n\tADD\tPTR,2\n\tGET\tP-LEXV,STACK\n\tEQUAL?\tSTACK,W?THEN,W?PERIOD \\?CCL108\n?CTR107:\tLESS?\tP-NCN,2 \\?CND31\n\tPUT\tP-ITBL,P-PREP1,VAL\n\tPUT\tP-ITBL,P-PREP1N,WORD\n\tJUMP\t?CND31\n?CCL108:\tEQUAL?\tP-NCN,2 \\?CCL116\n\tPRINTI\t\"I found too many nouns in that sentence.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL116:\tINC\t'P-NCN\n\tCALL\tCLAUSE,PTR,VAL,WORD >PTR\n\tZERO?\tPTR /FALSE\n\tLESS?\tPTR,0 \\?CND31\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n?REP30:\tZERO?\tDIR /?CND126\n\tSET\t'PRSA,V?WALK\n\tSET\t'PRSO,DIR\n\tSET\t'P-WALK-DIR,DIR\n\tRTRUE\t\n?CCL92:\tCALL\tWT?,WORD,4\n\tZERO?\tSTACK \\?CND31\n\tEQUAL?\tVERB,ACT?TELL \\?CCL123\n\tCALL\tWT?,WORD,64,1\n\tZERO?\tSTACK /?CCL123\n\tPRINTI\t\"Please consult your manual for the correct way to talk to other people or creatures.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL123:\tCALL\tCANT-USE,PTR\n\tRFALSE\t\n?CCL35:\tCALL\tUNKNOWN-WORD,PTR\n\tRFALSE\t\n?CND31:\tSET\t'LW,WORD\n\tADD\tPTR,P-LEXELEN >PTR\n\tJUMP\t?PRG29\n?CND126:\tSET\t'P-WALK-DIR,FALSE-VALUE\n\tZERO?\tP-OFLAG /?CND128\n\tCALL\tORPHAN-MERGE\n?CND128:\tCALL\tSYNTAX-CHECK\n\tZERO?\tSTACK /FALSE\n\tCALL\tSNARF-OBJECTS\n\tZERO?\tSTACK /FALSE\n\tCALL\tMANY-CHECK\n\tZERO?\tSTACK /FALSE\n\tCALL\tTAKE-CHECK\n\tZERO?\tSTACK \\TRUE\n\tRFALSE\t\n\n\n\t.FUNCT\tWT?,PTR,BIT,B1=5,OFFST=P-P1OFF,TYP\n\tGETB\tPTR,P-PSOFF >TYP\n\tBTST\tTYP,BIT \\FALSE\n\tGRTR?\tB1,4 /TRUE\n\tEQUAL?\tBIT,128 /TRUE\n\tBAND\tTYP,P-P1BITS >TYP\n\tEQUAL?\tTYP,B1 /?CND9\n\tINC\t'OFFST\n?CND9:\tGETB\tPTR,OFFST\n\tRSTACK\t\n\n\n\t.FUNCT\tCLAUSE,PTR,VAL,WORD,OFF,NUM,ANDFLG=0,FIRST??=1,NW,LW=0,?TMP1\n\tSUB\tP-NCN,1\n\tMUL\tSTACK,2 >OFF\n\tZERO?\tVAL /?CCL3\n\tADD\tP-PREP1,OFF >NUM\n\tPUT\tP-ITBL,NUM,VAL\n\tADD\tNUM,1\n\tPUT\tP-ITBL,STACK,WORD\n\tADD\tPTR,P-LEXELEN >PTR\n\tJUMP\t?CND1\n?CCL3:\tINC\t'P-LEN\n?CND1:\tZERO?\tP-LEN \\?CND4\n\tDEC\t'P-NCN\n\tRETURN\t-1\n?CND4:\tADD\tP-NC1,OFF >NUM\n\tMUL\tPTR,2\n\tADD\tP-LEXV,STACK\n\tPUT\tP-ITBL,NUM,STACK\n\tGET\tP-LEXV,PTR\n\tEQUAL?\tSTACK,W?THE,W?A,W?AN \\?PRG8\n\tGET\tP-ITBL,NUM\n\tADD\tSTACK,4\n\tPUT\tP-ITBL,NUM,STACK\n?PRG8:\tDLESS?\t'P-LEN,0 \\?CND10\n\tADD\tNUM,1 >?TMP1\n\tMUL\tPTR,2\n\tADD\tP-LEXV,STACK\n\tPUT\tP-ITBL,?TMP1,STACK\n\tRETURN\t-1\n?CND10:\tGET\tP-LEXV,PTR >WORD\n\tZERO?\tWORD \\?CTR13\n\tCALL\tNUMBER?,PTR >WORD\n\tZERO?\tWORD /?CCL14\n?CTR13:\tZERO?\tP-LEN \\?CCL19\n\tSET\t'NW,0\n\tJUMP\t?CND17\n?CCL19:\tADD\tPTR,P-LEXELEN\n\tGET\tP-LEXV,STACK >NW\n?CND17:\tEQUAL?\tWORD,W?AND,W?COMMA \\?CCL22\n\tSET\t'ANDFLG,TRUE-VALUE\n\tJUMP\t?CND12\n?CCL22:\tEQUAL?\tWORD,W?ALL,W?BOTH,W?ONE \\?CCL24\n\tEQUAL?\tNW,W?OF \\?CND12\n\tDEC\t'P-LEN\n\tADD\tPTR,P-LEXELEN >PTR\n\tJUMP\t?CND12\n?CCL24:\tEQUAL?\tWORD,W?THEN,W?PERIOD /?CTR27\n\tCALL\tWT?,WORD,8\n\tZERO?\tSTACK /?CCL28\n\tZERO?\tFIRST?? \\?CCL28\n?CTR27:\tINC\t'P-LEN\n\tADD\tNUM,1 >?TMP1\n\tMUL\tPTR,2\n\tADD\tP-LEXV,STACK\n\tPUT\tP-ITBL,?TMP1,STACK\n\tSUB\tPTR,P-LEXELEN\n\tRSTACK\t\n?CCL28:\tCALL\tWT?,WORD,128\n\tZERO?\tSTACK /?CCL34\n\tGRTR?\tP-LEN,0 \\?CCL37\n\tEQUAL?\tNW,W?OF \\?CCL37\n\tEQUAL?\tWORD,W?ALL,W?ONE \\?CND12\n?CCL37:\tCALL\tWT?,WORD,32,2\n\tZERO?\tSTACK /?CCL41\n\tZERO?\tNW /?CCL41\n\tCALL\tWT?,NW,128\n\tZERO?\tSTACK \\?CND12\n?CCL41:\tZERO?\tANDFLG \\?CCL46\n\tEQUAL?\tNW,W?BUT,W?EXCEPT /?CCL46\n\tEQUAL?\tNW,W?AND,W?COMMA /?CCL46\n\tADD\tNUM,1 >?TMP1\n\tADD\tPTR,2\n\tMUL\tSTACK,2\n\tADD\tP-LEXV,STACK\n\tPUT\tP-ITBL,?TMP1,STACK\n\tRETURN\tPTR\n?CCL46:\tSET\t'ANDFLG,FALSE-VALUE\n\tJUMP\t?CND12\n?CCL34:\tZERO?\tP-OFLAG \\?PRD52\n\tZERO?\tP-MERGED \\?PRD52\n\tGET\tP-ITBL,P-VERB\n\tZERO?\tSTACK /?CCL50\n?PRD52:\tCALL\tWT?,WORD,32\n\tZERO?\tSTACK \\?CND12\n\tCALL\tWT?,WORD,4\n\tZERO?\tSTACK \\?CND12\n?CCL50:\tZERO?\tANDFLG /?CCL59\n\tCALL\tWT?,WORD,16\n\tZERO?\tSTACK \\?CTR58\n\tCALL\tWT?,WORD,64\n\tZERO?\tSTACK /?CCL59\n?CTR58:\tSUB\tPTR,4 >PTR\n\tADD\tPTR,2\n\tPUT\tP-LEXV,STACK,W?THEN\n\tADD\tP-LEN,2 >P-LEN\n?CND12:\tSET\t'LW,WORD\n\tSET\t'FIRST??,FALSE-VALUE\n\tADD\tPTR,P-LEXELEN >PTR\n\tJUMP\t?PRG8\n?CCL59:\tCALL\tWT?,WORD,8\n\tZERO?\tSTACK \\?CND12\n\tCALL\tCANT-USE,PTR\n\tRFALSE\t\n?CCL14:\tCALL\tUNKNOWN-WORD,PTR\n\tRFALSE\t\n\n\n\t.FUNCT\tNUMBER?,PTR,CNT,BPTR,CHR,SUM=0,TIM=0,?TMP1\n\tMUL\tPTR,2\n\tADD\tP-LEXV,STACK\n\tGETB\tSTACK,2 >CNT\n\tMUL\tPTR,2\n\tADD\tP-LEXV,STACK\n\tGETB\tSTACK,3 >BPTR\n?PRG1:\tDLESS?\t'CNT,0 /?REP2\n\tGETB\tP-INBUF,BPTR >CHR\n\tGRTR?\tSUM,10000 /FALSE\n\tLESS?\tCHR,58 \\FALSE\n\tGRTR?\tCHR,47 \\FALSE\n\tMUL\tSUM,10 >?TMP1\n\tSUB\tCHR,48\n\tADD\t?TMP1,STACK >SUM\n\tINC\t'BPTR\n\tJUMP\t?PRG1\n?REP2:\tPUT\tP-LEXV,PTR,W?INTNUM\n\tGRTR?\tSUM,10000 /FALSE\n\tSET\t'P-NUMBER,SUM\n\tRETURN\tW?INTNUM\n\n\n\t.FUNCT\tORPHAN-MERGE,CNT=-1,TEMP,VERB,BEG,END,ADJ=0,WRD,?TMP1\n\tSET\t'P-OFLAG,FALSE-VALUE\n\tGET\tP-ITBL,P-VERBN\n\tGET\tSTACK,0 >WRD\n\tCALL\tWT?,WRD,32,2\n\tZERO?\tSTACK /?CCL3\n\tSET\t'ADJ,TRUE-VALUE\n\tJUMP\t?CND1\n?CCL3:\tCALL\tWT?,WRD,128,0\n\tZERO?\tSTACK /?CND1\n\tZERO?\tP-NCN \\?CND1\n\tPUT\tP-ITBL,P-VERB,0\n\tPUT\tP-ITBL,P-VERBN,0\n\tADD\tP-LEXV,2\n\tPUT\tP-ITBL,P-NC1,STACK\n\tADD\tP-LEXV,6\n\tPUT\tP-ITBL,P-NC1L,STACK\n\tSET\t'P-NCN,1\n?CND1:\tGET\tP-ITBL,P-VERB >VERB\n\tZERO?\tVERB /?CCL9\n\tZERO?\tADJ \\?CCL9\n\tGET\tP-OTBL,P-VERB\n\tEQUAL?\tVERB,STACK \\FALSE\n?CCL9:\tEQUAL?\tP-NCN,2 /FALSE\n\tGET\tP-OTBL,P-NC1\n\tEQUAL?\tSTACK,1 \\?CCL16\n\tGET\tP-ITBL,P-PREP1 >TEMP\n\tGET\tP-OTBL,P-PREP1\n\tEQUAL?\tTEMP,STACK /?CTR18\n\tZERO?\tTEMP \\FALSE\n?CTR18:\tZERO?\tADJ /?CCL24\n\tADD\tP-LEXV,2\n\tPUT\tP-OTBL,P-NC1,STACK\n\tADD\tP-LEXV,6\n\tPUT\tP-OTBL,P-NC1L,STACK\n\tJUMP\t?PRG64\n?CCL24:\tGET\tP-ITBL,P-NC1\n\tPUT\tP-OTBL,P-NC1,STACK\n\tGET\tP-ITBL,P-NC1L\n\tPUT\tP-OTBL,P-NC1L,STACK\n\tJUMP\t?PRG64\n?CCL16:\tGET\tP-OTBL,P-NC2\n\tEQUAL?\tSTACK,1 \\?CCL26\n\tGET\tP-ITBL,P-PREP1 >TEMP\n\tGET\tP-OTBL,P-PREP2\n\tEQUAL?\tTEMP,STACK /?CTR28\n\tZERO?\tTEMP \\FALSE\n?CTR28:\tZERO?\tADJ /?CND32\n\tADD\tP-LEXV,2\n\tPUT\tP-ITBL,P-NC1,STACK\n\tADD\tP-LEXV,6\n\tPUT\tP-ITBL,P-NC1L,STACK\n?CND32:\tGET\tP-ITBL,P-NC1\n\tPUT\tP-OTBL,P-NC2,STACK\n\tGET\tP-ITBL,P-NC1L\n\tPUT\tP-OTBL,P-NC2L,STACK\n\tSET\t'P-NCN,2\n\tJUMP\t?PRG64\n?CCL26:\tZERO?\tP-ACLAUSE /?PRG64\n\tEQUAL?\tP-NCN,1 /?CCL37\n\tZERO?\tADJ \\?CCL37\n\tSET\t'P-ACLAUSE,FALSE-VALUE\n\tRFALSE\t\n?CCL37:\tGET\tP-ITBL,P-NC1 >BEG\n\tZERO?\tADJ /?CND40\n\tADD\tP-LEXV,2 >BEG\n\tSET\t'ADJ,FALSE-VALUE\n?CND40:\tGET\tP-ITBL,P-NC1L >END\n?PRG42:\tGET\tBEG,0 >WRD\n\tEQUAL?\tBEG,END \\?CCL46\n\tZERO?\tADJ /?CCL49\n\tCALL\tACLAUSE-WIN,ADJ\n\tJUMP\t?PRG64\n?CCL49:\tSET\t'P-ACLAUSE,FALSE-VALUE\n\tRFALSE\t\n?CCL46:\tZERO?\tADJ \\?CCL51\n\tGETB\tWRD,P-PSOFF\n\tBTST\tSTACK,32 /?CTR50\n\tEQUAL?\tWRD,W?ALL,W?ONE \\?CCL51\n?CTR50:\tSET\t'ADJ,WRD\n?CND44:\tADD\tBEG,P-WORDLEN >BEG\n\tZERO?\tEND \\?PRG42\n\tSET\t'END,BEG\n\tSET\t'P-NCN,1\n\tSUB\tBEG,4\n\tPUT\tP-ITBL,P-NC1,STACK\n\tPUT\tP-ITBL,P-NC1L,BEG\n\tJUMP\t?PRG42\n?CCL51:\tGETB\tWRD,P-PSOFF\n\tBTST\tSTACK,128 /?CCL56\n\tEQUAL?\tWRD,W?ONE \\?CND44\n?CCL56:\tEQUAL?\tWRD,P-ANAM,W?ONE \\FALSE\n\tCALL\tACLAUSE-WIN,ADJ\n?PRG64:\tIGRTR?\t'CNT,P-ITBLLEN \\?CCL68\n\tSET\t'P-MERGED,TRUE-VALUE\n\tRTRUE\t\n?CCL68:\tGET\tP-OTBL,CNT\n\tPUT\tP-ITBL,CNT,STACK\n\tJUMP\t?PRG64\n\n\n\t.FUNCT\tACLAUSE-WIN,ADJ\n\tGET\tP-OTBL,P-VERB\n\tPUT\tP-ITBL,P-VERB,STACK\n\tSET\t'P-CCSRC,P-OTBL\n\tADD\tP-ACLAUSE,1\n\tCALL\tCLAUSE-COPY,P-ACLAUSE,STACK,ADJ\n\tGET\tP-OTBL,P-NC2\n\tZERO?\tSTACK /?PEN1\n\tSET\t'P-NCN,2\n?PEN1:\tSET\t'P-ACLAUSE,FALSE-VALUE\n\tRTRUE\t\n\n\n\t.FUNCT\tWORD-PRINT,CNT,BUF\n?PRG1:\tDLESS?\t'CNT,0 /TRUE\n\tGETB\tP-INBUF,BUF\n\tPRINTC\tSTACK\n\tINC\t'BUF\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tUNKNOWN-WORD,PTR,BUF,?TMP1\n\tPRINTI\t\"I don't know the word \"\"\"\n\tMUL\tPTR,2 >BUF\n\tADD\tP-LEXV,BUF\n\tGETB\tSTACK,2 >?TMP1\n\tADD\tP-LEXV,BUF\n\tGETB\tSTACK,3\n\tCALL\tWORD-PRINT,?TMP1,STACK\n\tPRINTI\t\".\"\"\"\n\tCRLF\t\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tSET\t'P-OFLAG,FALSE-VALUE\n\tRETURN\tP-OFLAG\n\n\n\t.FUNCT\tCANT-USE,PTR,BUF,?TMP1\n\tPRINTI\t\"I can't use the word \"\"\"\n\tMUL\tPTR,2 >BUF\n\tADD\tP-LEXV,BUF\n\tGETB\tSTACK,2 >?TMP1\n\tADD\tP-LEXV,BUF\n\tGETB\tSTACK,3\n\tCALL\tWORD-PRINT,?TMP1,STACK\n\tPRINTI\t\"\"\" here.\"\n\tCRLF\t\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tSET\t'P-OFLAG,FALSE-VALUE\n\tRETURN\tP-OFLAG\n\n\n\t.FUNCT\tSYNTAX-CHECK,SYN,LEN,NUM,OBJ,DRIVE1=0,DRIVE2=0,PREP,VERB,TMP,?TMP2,?TMP1\n\tGET\tP-ITBL,P-VERB >VERB\n\tZERO?\tVERB \\?CND1\n\tPRINTI\t\"I can't find a verb in that sentence!\"\n\tCRLF\t\n\tRFALSE\t\n?CND1:\tSUB\t255,VERB\n\tGET\tVERBS,STACK >SYN\n\tGETB\tSYN,0 >LEN\n\tINC\t'SYN\n?PRG3:\tGETB\tSYN,P-SBITS\n\tBAND\tSTACK,P-SONUMS >NUM\n\tGRTR?\tP-NCN,NUM /?CND5\n\tLESS?\tNUM,1 /?CCL9\n\tZERO?\tP-NCN \\?CCL9\n\tGET\tP-ITBL,P-PREP1 >PREP\n\tZERO?\tPREP /?CTR8\n\tGETB\tSYN,P-SPREP1\n\tEQUAL?\tPREP,STACK \\?CCL9\n?CTR8:\tSET\t'DRIVE1,SYN\n\tJUMP\t?CND5\n?CCL9:\tGETB\tSYN,P-SPREP1 >?TMP1\n\tGET\tP-ITBL,P-PREP1\n\tEQUAL?\t?TMP1,STACK \\?CND5\n\tEQUAL?\tNUM,2 \\?CCL18\n\tEQUAL?\tP-NCN,1 \\?CCL18\n\tSET\t'DRIVE2,SYN\n?CND5:\tDLESS?\t'LEN,1 \\?CCL24\n\tZERO?\tDRIVE1 \\?REP4\n\tZERO?\tDRIVE2 \\?REP4\n\tPRINTI\t\"I don't understand that sentence.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL18:\tGETB\tSYN,P-SPREP2 >?TMP1\n\tGET\tP-ITBL,P-PREP2\n\tEQUAL?\t?TMP1,STACK \\?CND5\n\tCALL\tSYNTAX-FOUND,SYN\n\tRTRUE\t\n?CCL24:\tADD\tSYN,P-SYNLEN >SYN\n\tJUMP\t?PRG3\n?REP4:\tZERO?\tDRIVE1 /?CCL32\n\tGETB\tDRIVE1,P-SFWIM1 >?TMP2\n\tGETB\tDRIVE1,P-SLOC1 >?TMP1\n\tGETB\tDRIVE1,P-SPREP1\n\tCALL\tGWIM,?TMP2,?TMP1,STACK >OBJ\n\tZERO?\tOBJ /?CCL32\n\tPUT\tP-PRSO,P-MATCHLEN,1\n\tPUT\tP-PRSO,1,OBJ\n\tCALL\tSYNTAX-FOUND,DRIVE1\n\tRSTACK\t\n?CCL32:\tZERO?\tDRIVE2 /?CCL36\n\tGETB\tDRIVE2,P-SFWIM2 >?TMP2\n\tGETB\tDRIVE2,P-SLOC2 >?TMP1\n\tGETB\tDRIVE2,P-SPREP2\n\tCALL\tGWIM,?TMP2,?TMP1,STACK >OBJ\n\tZERO?\tOBJ /?CCL36\n\tPUT\tP-PRSI,P-MATCHLEN,1\n\tPUT\tP-PRSI,1,OBJ\n\tCALL\tSYNTAX-FOUND,DRIVE2\n\tRSTACK\t\n?CCL36:\tEQUAL?\tVERB,ACT?FIND \\?CCL40\n\tPRINTI\t\"I can't answer that question.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL40:\tEQUAL?\tWINNER,ADVENTURER /?CCL42\n\tCALL\tCANT-ORPHAN\n\tRSTACK\t\n?CCL42:\tCALL\tORPHAN,DRIVE1,DRIVE2\n\tPRINTI\t\"What do you want to \"\n\tGET\tP-OTBL,P-VERBN >TMP\n\tZERO?\tTMP \\?CCL45\n\tPRINTI\t\"tell\"\n\tJUMP\t?CND43\n?CCL45:\tGETB\tP-VTBL,2\n\tZERO?\tSTACK \\?CCL47\n\tGET\tTMP,0\n\tPRINTB\tSTACK\n\tJUMP\t?CND43\n?CCL47:\tGETB\tTMP,2 >?TMP1\n\tGETB\tTMP,3\n\tCALL\tWORD-PRINT,?TMP1,STACK\n\tPUTB\tP-VTBL,2,0\n?CND43:\tZERO?\tDRIVE2 /?CND48\n\tCALL\tCLAUSE-PRINT,P-NC1,P-NC1L\n?CND48:\tSET\t'P-OFLAG,TRUE-VALUE\n\tZERO?\tDRIVE1 /?CCL52\n\tGETB\tDRIVE1,P-SPREP1\n\tJUMP\t?CND50\n?CCL52:\tGETB\tDRIVE2,P-SPREP2\n?CND50:\tCALL\tPREP-PRINT,STACK\n\tPRINTC\t63\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tCANT-ORPHAN\n\tPRINTI\t\"\"\"I don't understand! What are you referring to?\"\"\"\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tORPHAN,D1,D2,CNT=-1\n\tPUT\tP-OCLAUSE,P-MATCHLEN,0\n\tSET\t'P-CCSRC,P-ITBL\n?PRG1:\tIGRTR?\t'CNT,P-ITBLLEN /?REP2\n\tGET\tP-ITBL,CNT\n\tPUT\tP-OTBL,CNT,STACK\n\tJUMP\t?PRG1\n?REP2:\tEQUAL?\tP-NCN,2 \\?CND6\n\tCALL\tCLAUSE-COPY,P-NC2,P-NC2L\n?CND6:\tLESS?\tP-NCN,1 /?CND8\n\tCALL\tCLAUSE-COPY,P-NC1,P-NC1L\n?CND8:\tZERO?\tD1 /?CCL12\n\tGETB\tD1,P-SPREP1\n\tPUT\tP-OTBL,P-PREP1,STACK\n\tPUT\tP-OTBL,P-NC1,1\n\tRTRUE\t\n?CCL12:\tZERO?\tD2 /FALSE\n\tGETB\tD2,P-SPREP2\n\tPUT\tP-OTBL,P-PREP2,STACK\n\tPUT\tP-OTBL,P-NC2,1\n\tRTRUE\t\n\n\n\t.FUNCT\tCLAUSE-PRINT,BPTR,EPTR,THE?=1,?TMP1\n\tGET\tP-ITBL,BPTR >?TMP1\n\tGET\tP-ITBL,EPTR\n\tCALL\tBUFFER-PRINT,?TMP1,STACK,THE?\n\tRSTACK\t\n\n\n\t.FUNCT\tBUFFER-PRINT,BEG,END,CP,NOSP=0,WRD,FIRST??=1,PN=0,?TMP1\n?PRG1:\tEQUAL?\tBEG,END /TRUE\n\tZERO?\tNOSP /?CCL8\n\tSET\t'NOSP,FALSE-VALUE\n\tJUMP\t?CND6\n?CCL8:\tPRINTC\t32\n?CND6:\tGET\tBEG,0 >WRD\n\tEQUAL?\tWRD,W?PERIOD \\?CCL11\n\tSET\t'NOSP,TRUE-VALUE\n\tJUMP\t?CND3\n?CCL11:\tEQUAL?\tWRD,W?FLOYD,W?BLATHER \\?CCL13\n\tCALL\tCAPITALIZE,BEG\n\tSET\t'PN,TRUE-VALUE\n\tJUMP\t?CND3\n?CCL13:\tZERO?\tFIRST?? /?CND14\n\tZERO?\tPN \\?CND14\n\tZERO?\tCP /?CND14\n\tPRINTI\t\"the \"\n?CND14:\tZERO?\tP-OFLAG /?CCL21\n\tPRINTB\tWRD\n\tJUMP\t?CND19\n?CCL21:\tEQUAL?\tWRD,W?IT \\?CCL23\n\tEQUAL?\tP-IT-LOC,HERE \\?CCL23\n\tPRINTD\tP-IT-OBJECT\n\tJUMP\t?CND19\n?CCL23:\tGETB\tBEG,2 >?TMP1\n\tGETB\tBEG,3\n\tCALL\tWORD-PRINT,?TMP1,STACK\n?CND19:\tSET\t'FIRST??,FALSE-VALUE\n?CND3:\tADD\tBEG,P-WORDLEN >BEG\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tCAPITALIZE,PTR,?TMP1\n\tGETB\tPTR,3\n\tGETB\tP-INBUF,STACK\n\tSUB\tSTACK,32\n\tPRINTC\tSTACK\n\tGETB\tPTR,2\n\tSUB\tSTACK,1 >?TMP1\n\tGETB\tPTR,3\n\tADD\tSTACK,1\n\tCALL\tWORD-PRINT,?TMP1,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tPREP-PRINT,PREP,WRD\n\tZERO?\tPREP /FALSE\n\tPRINTC\t32\n\tCALL\tPREP-FIND,PREP >WRD\n\tPRINTB\tWRD\n\tRTRUE\t\n\n\n\t.FUNCT\tCLAUSE-COPY,BPTR,EPTR,INSRT=0,BEG,END\n\tGET\tP-CCSRC,BPTR >BEG\n\tGET\tP-CCSRC,EPTR >END\n\tGET\tP-OCLAUSE,P-MATCHLEN\n\tMUL\tSTACK,P-LEXELEN\n\tADD\tSTACK,2\n\tADD\tP-OCLAUSE,STACK\n\tPUT\tP-OTBL,BPTR,STACK\n?PRG1:\tEQUAL?\tBEG,END \\?CCL5\n\tGET\tP-OCLAUSE,P-MATCHLEN\n\tMUL\tSTACK,P-LEXELEN\n\tADD\tSTACK,2\n\tADD\tP-OCLAUSE,STACK\n\tPUT\tP-OTBL,EPTR,STACK\n\tRTRUE\t\n?CCL5:\tZERO?\tINSRT /?CND6\n\tGET\tBEG,0\n\tEQUAL?\tP-ANAM,STACK \\?CND6\n\tCALL\tCLAUSE-ADD,INSRT\n?CND6:\tGET\tBEG,0\n\tCALL\tCLAUSE-ADD,STACK\n\tADD\tBEG,P-WORDLEN >BEG\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tCLAUSE-ADD,WRD,PTR\n\tGET\tP-OCLAUSE,P-MATCHLEN\n\tADD\tSTACK,2 >PTR\n\tSUB\tPTR,1\n\tPUT\tP-OCLAUSE,STACK,WRD\n\tPUT\tP-OCLAUSE,PTR,0\n\tPUT\tP-OCLAUSE,P-MATCHLEN,PTR\n\tRTRUE\t\n\n\n\t.FUNCT\tPREP-FIND,PREP,CNT=0,SIZE\n\tGET\tPREPOSITIONS,0\n\tMUL\tSTACK,2 >SIZE\n?PRG1:\tIGRTR?\t'CNT,SIZE /FALSE\n\tGET\tPREPOSITIONS,CNT\n\tEQUAL?\tSTACK,PREP \\?PRG1\n\tSUB\tCNT,1\n\tGET\tPREPOSITIONS,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tSYNTAX-FOUND,SYN\n\tSET\t'P-SYNTAX,SYN\n\tGETB\tSYN,P-SACTION >PRSA\n\tRETURN\tPRSA\n\n\n\t.FUNCT\tGWIM,GBIT,LBIT,PREP,OBJ\n\tEQUAL?\tGBIT,RMUNGBIT \\?CND1\n\tRETURN\tROOMS\n?CND1:\tSET\t'P-GWIMBIT,GBIT\n\tSET\t'P-SLOCBITS,LBIT\n\tPUT\tP-MERGE,P-MATCHLEN,0\n\tCALL\tGET-OBJECT,P-MERGE,FALSE-VALUE\n\tZERO?\tSTACK /?CCL5\n\tSET\t'P-GWIMBIT,0\n\tGET\tP-MERGE,P-MATCHLEN\n\tEQUAL?\tSTACK,1 \\FALSE\n\tGET\tP-MERGE,1 >OBJ\n\tFSET?\tOBJ,VEHBIT \\?CND9\n\tEQUAL?\tPREP,PR?DOWN \\?CND9\n\tSET\t'PREP,PR?ON\n?CND9:\tPRINTC\t40\n\tZERO?\tPREP /?CND13\n\tCALL\tPREP-FIND,PREP\n\tPRINTB\tSTACK\n\tPRINTI\t\" the \"\n?CND13:\tPRINTD\tOBJ\n\tPRINTC\t41\n\tCRLF\t\n\tRETURN\tOBJ\n?CCL5:\tSET\t'P-GWIMBIT,0\n\tRFALSE\t\n\n\n\t.FUNCT\tSNARF-OBJECTS,PTR\n\tGET\tP-ITBL,P-NC1 >PTR\n\tZERO?\tPTR /?CND1\n\tGETB\tP-SYNTAX,P-SLOC1 >P-SLOCBITS\n\tGET\tP-ITBL,P-NC1L\n\tCALL\tSNARFEM,PTR,STACK,P-PRSO\n\tZERO?\tSTACK /FALSE\n\tGET\tP-BUTS,P-MATCHLEN\n\tZERO?\tSTACK /?CND1\n\tCALL\tBUT-MERGE,P-PRSO >P-PRSO\n?CND1:\tGET\tP-ITBL,P-NC2 >PTR\n\tZERO?\tPTR /TRUE\n\tGETB\tP-SYNTAX,P-SLOC2 >P-SLOCBITS\n\tGET\tP-ITBL,P-NC2L\n\tCALL\tSNARFEM,PTR,STACK,P-PRSI\n\tZERO?\tSTACK /FALSE\n\tGET\tP-BUTS,P-MATCHLEN\n\tZERO?\tSTACK /TRUE\n\tGET\tP-PRSI,P-MATCHLEN\n\tEQUAL?\tSTACK,1 \\?CCL15\n\tCALL\tBUT-MERGE,P-PRSO >P-PRSO\n\tRTRUE\t\n?CCL15:\tCALL\tBUT-MERGE,P-PRSI >P-PRSI\n\tRTRUE\t\n\n\n\t.FUNCT\tBUT-MERGE,TBL,LEN,BUTLEN,CNT=1,MATCHES=0,OBJ,NTBL\n\tGET\tTBL,P-MATCHLEN >LEN\n\tPUT\tP-MERGE,P-MATCHLEN,0\n?PRG1:\tDLESS?\t'LEN,0 /?REP2\n\tGET\tTBL,CNT >OBJ\n\tCALL\tZMEMQ,OBJ,P-BUTS\n\tZERO?\tSTACK \\?CND3\n\tADD\tMATCHES,1\n\tPUT\tP-MERGE,STACK,OBJ\n\tINC\t'MATCHES\n?CND3:\tINC\t'CNT\n\tJUMP\t?PRG1\n?REP2:\tPUT\tP-MERGE,P-MATCHLEN,MATCHES\n\tSET\t'NTBL,P-MERGE\n\tSET\t'P-MERGE,TBL\n\tRETURN\tNTBL\n\n\n\t.FUNCT\tSNARFEM,PTR,EPTR,TBL,BUT=0,LEN,WV,WORD,NW\n\tSET\t'P-AND,FALSE-VALUE\n\tSET\t'P-GETFLAGS,0\n\tSET\t'P-CSPTR,PTR\n\tSET\t'P-CEPTR,EPTR\n\tPUT\tP-BUTS,P-MATCHLEN,0\n\tPUT\tTBL,P-MATCHLEN,0\n\tGET\tPTR,0 >WORD\n?PRG1:\tEQUAL?\tPTR,EPTR \\?CCL5\n\tZERO?\tBUT /?PRD8\n\tPUSH\tBUT\n\tJUMP\t?PEN6\n?PRD8:\tPUSH\tTBL\n?PEN6:\tCALL\tGET-OBJECT,STACK\n\tRSTACK\t\n?CCL5:\tGET\tPTR,P-LEXELEN >NW\n\tEQUAL?\tWORD,W?ALL,W?BOTH \\?CCL11\n\tSET\t'P-GETFLAGS,P-ALL\n\tEQUAL?\tNW,W?OF \\?CND3\n\tADD\tPTR,P-WORDLEN >PTR\n\tJUMP\t?CND3\n?CCL11:\tEQUAL?\tWORD,W?BUT,W?EXCEPT \\?CCL15\n\tZERO?\tBUT /?PRD20\n\tPUSH\tBUT\n\tJUMP\t?PEN18\n?PRD20:\tPUSH\tTBL\n?PEN18:\tCALL\tGET-OBJECT,STACK\n\tZERO?\tSTACK /FALSE\n\tSET\t'BUT,P-BUTS\n\tPUT\tBUT,P-MATCHLEN,0\n\tJUMP\t?CND3\n?CCL15:\tEQUAL?\tWORD,W?A,W?ONE \\?CCL22\n\tZERO?\tP-ADJ \\?CCL25\n\tSET\t'P-GETFLAGS,P-ONE\n\tEQUAL?\tNW,W?OF \\?CND3\n\tADD\tPTR,P-WORDLEN >PTR\n\tJUMP\t?CND3\n?CCL25:\tSET\t'P-NAM,P-ONEOBJ\n\tZERO?\tBUT /?PRD32\n\tPUSH\tBUT\n\tJUMP\t?PEN30\n?PRD32:\tPUSH\tTBL\n?PEN30:\tCALL\tGET-OBJECT,STACK\n\tZERO?\tSTACK /FALSE\n\tZERO?\tNW \\?CND3\n\tRTRUE\t\n?CCL22:\tEQUAL?\tWORD,W?AND,W?COMMA \\?CCL36\n\tEQUAL?\tNW,W?AND,W?COMMA /?CCL36\n\tSET\t'P-AND,TRUE-VALUE\n\tZERO?\tBUT /?PRD43\n\tPUSH\tBUT\n\tJUMP\t?PEN41\n?PRD43:\tPUSH\tTBL\n?PEN41:\tCALL\tGET-OBJECT,STACK\n\tZERO?\tSTACK \\?CND3\n\tRFALSE\t\n?CCL36:\tCALL\tWT?,WORD,8\n\tZERO?\tSTACK /?CCL45\n\tEQUAL?\tPTR,P-CSPTR \\?CCL45\n\tADD\tP-CSPTR,P-WORDLEN >P-CSPTR\n\tJUMP\t?CND3\n?CCL45:\tCALL\tWT?,WORD,4\n\tZERO?\tSTACK \\?CND3\n\tEQUAL?\tWORD,W?AND,W?COMMA /?CND3\n\tEQUAL?\tWORD,W?OF \\?CCL51\n\tZERO?\tP-GETFLAGS \\?CND3\n\tSET\t'P-GETFLAGS,P-INHIBIT\n\tJUMP\t?CND3\n?CCL51:\tCALL\tWT?,WORD,32,2 >WV\n\tZERO?\tWV /?CCL55\n\tCALL\tADJ-CHECK\n\tZERO?\tSTACK /?CCL55\n\tSET\t'P-ADJ,WV\n\tSET\t'P-ADJN,WORD\n\tSET\t'P-ADJECTIVE,WORD\n\tJUMP\t?CND3\n?CCL55:\tCALL\tWT?,WORD,128,0\n\tZERO?\tSTACK /?CND3\n\tSET\t'P-NAM,WORD\n\tSET\t'P-ONEOBJ,WORD\n?CND3:\tEQUAL?\tPTR,EPTR /?PRG1\n\tADD\tPTR,P-WORDLEN >PTR\n\tSET\t'WORD,NW\n\tJUMP\t?PRG1\n\n\n\t.FUNCT\tADJ-CHECK\n\tZERO?\tP-ADJ /TRUE\n\tEQUAL?\tP-ADJ,A?FIRST,A?SECOND,A?THIRD /FALSE\n\tEQUAL?\tP-ADJ,A?FOURTH,A?OLD,A?NEW /FALSE\n\tEQUAL?\tP-ADJ,A?SEND,A?RECEIVE,A?KITCHEN /FALSE\n\tEQUAL?\tP-ADJ,A?UPPER,A?LOWER,A?SHUTTL /FALSE\n\tEQUAL?\tP-ADJ,A?ELEVATOR /FALSE\n\tEQUAL?\tP-ADJ,A?SQUARE,A?ROUND,A?GOOD /FALSE\n\tEQUAL?\tP-ADJ,A?SHINY,A?CRACKED,A?FRIED /FALSE\n\tEQUAL?\tP-ADJ,A?TELEPO,A?MINI,A?MINIAT /FALSE\n\tRTRUE\t\n\n\n\t.FUNCT\tGET-OBJECT,TBL,VRB=1,BITS,LEN,XBITS,TLEN,GCHECK=0,OLEN=0,OBJ\n\tSET\t'XBITS,P-SLOCBITS\n\tGET\tTBL,P-MATCHLEN >TLEN\n\tBTST\tP-GETFLAGS,P-INHIBIT /TRUE\n\tZERO?\tP-NAM \\?CND3\n\tZERO?\tP-ADJ /?CND3\n\tCALL\tWT?,P-ADJN,128,0\n\tZERO?\tSTACK /?CND3\n\tSET\t'P-NAM,P-ADJN\n\tSET\t'P-ADJ,FALSE-VALUE\n?CND3:\tZERO?\tP-NAM \\?CND8\n\tZERO?\tP-ADJ \\?CND8\n\tEQUAL?\tP-GETFLAGS,P-ALL /?CND8\n\tZERO?\tP-GWIMBIT \\?CND8\n\tZERO?\tVRB /FALSE\n\tPRINTI\t\"I couldn't find a noun in that sentence!\"\n\tCRLF\t\n\tRFALSE\t\n?CND8:\tEQUAL?\tP-GETFLAGS,P-ALL \\?CCL17\n\tZERO?\tP-SLOCBITS \\?CND16\n?CCL17:\tSET\t'P-SLOCBITS,-1\n?CND16:\tSET\t'P-TABLE,TBL\n?PRG20:\tZERO?\tGCHECK /?CCL24\n\tCALL\tGLOBAL-CHECK,TBL\n\tJUMP\t?CND22\n?CCL24:\tZERO?\tLIT /?CND25\n\tEQUAL?\tWINNER,ADVENTURER /?CND27\n\tFCLEAR\tWINNER,OPENBIT\n?CND27:\tCALL\tDO-SL,HERE,SOG,SIR\n\tEQUAL?\tWINNER,ADVENTURER /?CND25\n\tFSET\tWINNER,OPENBIT\n?CND25:\tCALL\tDO-SL,WINNER,SH,SC\n\tEQUAL?\tWINNER,ADVENTURER /?CND22\n\tEQUAL?\tP-GETFLAGS,P-ALL /?CND22\n\tCALL\tDO-SL,ADVENTURER,SH,SC\n?CND22:\tGET\tTBL,P-MATCHLEN\n\tSUB\tSTACK,TLEN >LEN\n\tBTST\tP-GETFLAGS,P-ALL /?CND35\n\tBTST\tP-GETFLAGS,P-ONE \\?CCL38\n\tZERO?\tLEN /?CCL38\n\tEQUAL?\tLEN,1 /?CND41\n\tRANDOM\tLEN\n\tGET\tTBL,STACK\n\tPUT\tTBL,1,STACK\n\tPRINTI\t\"(How about the \"\n\tGET\tTBL,1\n\tPRINTD\tSTACK\n\tPRINTI\t\"?)\"\n\tCRLF\t\n?CND41:\tPUT\tTBL,P-MATCHLEN,1\n?CND35:\tSET\t'P-SLOCBITS,XBITS\n\tSET\t'P-NAM,FALSE-VALUE\n\tSET\t'P-ADJ,FALSE-VALUE\n\tRTRUE\t\n?CCL38:\tGRTR?\tLEN,1 /?CTR43\n\tZERO?\tLEN \\?CCL44\n\tEQUAL?\tP-SLOCBITS,-1 /?CCL44\n?CTR43:\tEQUAL?\tP-SLOCBITS,-1 \\?CCL51\n\tSET\t'P-SLOCBITS,XBITS\n\tSET\t'OLEN,LEN\n\tGET\tTBL,P-MATCHLEN\n\tSUB\tSTACK,LEN\n\tPUT\tTBL,P-MATCHLEN,STACK\n\tJUMP\t?PRG20\n?CCL51:\tZERO?\tLEN \\?CND52\n\tSET\t'LEN,OLEN\n?CND52:\tEQUAL?\tWINNER,ADVENTURER /?CCL56\n\tCALL\tCANT-ORPHAN\n\tRFALSE\t\n?CCL56:\tZERO?\tVRB /?CCL58\n\tZERO?\tP-NAM /?CCL58\n\tCALL\tWHICH-PRINT,TLEN,LEN,TBL\n\tEQUAL?\tTBL,P-PRSO \\?CCL63\n\tSET\t'P-ACLAUSE,P-NC1\n\tJUMP\t?CND61\n?CCL63:\tSET\t'P-ACLAUSE,P-NC2\n?CND61:\tSET\t'P-AADJ,P-ADJ\n\tSET\t'P-ANAM,P-NAM\n\tCALL\tORPHAN,FALSE-VALUE,FALSE-VALUE\n\tSET\t'P-OFLAG,TRUE-VALUE\n\tJUMP\t?CND54\n?CCL58:\tZERO?\tVRB /?CND54\n\tPRINTI\t\"I couldn't find a noun in that sentence!\"\n\tCRLF\t\n?CND54:\tSET\t'P-NAM,FALSE-VALUE\n\tSET\t'P-ADJ,FALSE-VALUE\n\tRFALSE\t\n?CCL44:\tZERO?\tLEN \\?CCL66\n\tZERO?\tGCHECK /?CCL66\n\tZERO?\tVRB /?CND69\n\tSET\t'P-SLOCBITS,XBITS\n\tZERO?\tLIT \\?CTR72\n\tEQUAL?\tP-NAM,W?GRUE \\?CCL73\n?CTR72:\tCALL\tOBJ-FOUND,NOT-HERE-OBJECT,TBL\n\tSET\t'P-XNAM,P-NAM\n\tSET\t'P-XADJ,P-ADJ\n\tSET\t'P-XADJN,P-ADJN\n\tSET\t'P-NAM,FALSE-VALUE\n\tSET\t'P-ADJ,FALSE-VALUE\n\tSET\t'P-ADJN,FALSE-VALUE\n\tRTRUE\t\n?CCL73:\tPRINTI\t\"It's too dark to see!\"\n\tCRLF\t\n?CND69:\tSET\t'P-NAM,FALSE-VALUE\n\tSET\t'P-ADJ,FALSE-VALUE\n\tRFALSE\t\n?CCL66:\tZERO?\tLEN \\?CND35\n\tSET\t'GCHECK,TRUE-VALUE\n\tJUMP\t?PRG20\n\n\n\t.FUNCT\tMOBY-FIND,TBL,FOO,LEN\n\tSET\t'P-SLOCBITS,-1\n\tSET\t'P-NAM,P-XNAM\n\tSET\t'P-ADJ,P-XADJ\n\tPUT\tTBL,P-MATCHLEN,0\n\tFIRST?\tROOMS >FOO /?PRG2\n?PRG2:\tZERO?\tFOO /?REP3\n\tCALL\tSEARCH-LIST,FOO,TBL,P-SRCALL\n\tNEXT?\tFOO >FOO /?PRG2\n\tJUMP\t?PRG2\n?REP3:\tGET\tTBL,P-MATCHLEN >LEN\n\tZERO?\tLEN \\?CND8\n\tCALL\tDO-SL,LOCAL-GLOBALS,1,1\n?CND8:\tGET\tTBL,P-MATCHLEN >LEN\n\tZERO?\tLEN \\?CND10\n\tCALL\tDO-SL,ROOMS,1,1\n?CND10:\tGET\tTBL,P-MATCHLEN >LEN\n\tEQUAL?\tLEN,1 \\?CND12\n\tGET\tTBL,1 >P-MOBY-FOUND\n?CND12:\tSET\t'P-NAM,FALSE-VALUE\n\tSET\t'P-ADJ,FALSE-VALUE\n\tRETURN\tLEN\n\n\n\t.FUNCT\tWHICH-PRINT,TLEN,LEN,TBL,OBJ,RLEN\n\tSET\t'RLEN,LEN\n\tPRINTI\t\"Which\"\n\tZERO?\tP-OFLAG \\?CTR2\n\tZERO?\tP-MERGED \\?CTR2\n\tZERO?\tP-AND /?CCL3\n?CTR2:\tPRINTC\t32\n\tPRINTB\tP-NAM\n\tJUMP\t?CND1\n?CCL3:\tEQUAL?\tTBL,P-PRSO \\?CCL8\n\tCALL\tCLAUSE-PRINT,P-NC1,P-NC1L,FALSE-VALUE\n\tJUMP\t?CND1\n?CCL8:\tCALL\tCLAUSE-PRINT,P-NC2,P-NC2L,FALSE-VALUE\n?CND1:\tPRINTI\t\" do you mean, \"\n?PRG9:\tINC\t'TLEN\n\tGET\tTBL,TLEN >OBJ\n\tPRINTI\t\"the \"\n\tPRINTD\tOBJ\n\tEQUAL?\tLEN,2 \\?CCL13\n\tEQUAL?\tRLEN,2 /?CND14\n\tPRINTC\t44\n?CND14:\tPRINTI\t\" or \"\n\tJUMP\t?CND11\n?CCL13:\tGRTR?\tLEN,2 \\?CND11\n\tPRINTI\t\", \"\n?CND11:\tDLESS?\t'LEN,1 \\?PRG9\n\tPRINTR\t\"?\"\n\n\n\t.FUNCT\tGLOBAL-CHECK,TBL,LEN,RMG,RMGL,CNT=0,OBJ,OBITS,FOO\n\tGET\tTBL,P-MATCHLEN >LEN\n\tSET\t'OBITS,P-SLOCBITS\n\tGETPT\tHERE,P?GLOBAL >RMG\n\tZERO?\tRMG /?CND1\n\tPTSIZE\tRMG\n\tSUB\tSTACK,1 >RMGL\n?PRG3:\tGETB\tRMG,CNT >OBJ\n\tCALL\tTHIS-IT?,OBJ,TBL\n\tZERO?\tSTACK /?CND5\n\tCALL\tOBJ-FOUND,OBJ,TBL\n?CND5:\tIGRTR?\t'CNT,RMGL \\?PRG3\n?CND1:\tGETPT\tHERE,P?PSEUDO >RMG\n\tZERO?\tRMG /?CND9\n\tPTSIZE\tRMG\n\tDIV\tSTACK,4\n\tSUB\tSTACK,1 >RMGL\n\tSET\t'CNT,0\n?PRG11:\tMUL\tCNT,2\n\tGET\tRMG,STACK\n\tEQUAL?\tP-NAM,STACK \\?CCL15\n\tSET\t'LAST-PSEUDO-LOC,HERE\n\tMUL\tCNT,2\n\tADD\tSTACK,1\n\tGET\tRMG,STACK\n\tPUTP\tPSEUDO-OBJECT,P?ACTION,STACK\n\tGETPT\tPSEUDO-OBJECT,P?ACTION\n\tSUB\tSTACK,5 >FOO\n\tGET\tP-NAM,0\n\tPUT\tFOO,0,STACK\n\tGET\tP-NAM,1\n\tPUT\tFOO,1,STACK\n\tCALL\tOBJ-FOUND,PSEUDO-OBJECT,TBL\n\tJUMP\t?CND9\n?CCL15:\tIGRTR?\t'CNT,RMGL \\?PRG11\n?CND9:\tGET\tTBL,P-MATCHLEN\n\tEQUAL?\tSTACK,LEN \\FALSE\n\tSET\t'P-SLOCBITS,-1\n\tSET\t'P-TABLE,TBL\n\tCALL\tDO-SL,GLOBAL-OBJECTS,1,1\n\tSET\t'P-SLOCBITS,OBITS\n\tGET\tTBL,P-MATCHLEN\n\tZERO?\tSTACK \\FALSE\n\tEQUAL?\tPRSA,V?LOOK-INSIDE,V?SEARCH /?CCL25\n\tEQUAL?\tPRSA,V?EXAMINE,V?FIND,V?THROUGH \\FALSE\n?CCL25:\tCALL\tDO-SL,ROOMS,1,1\n\tRSTACK\t\n\n\n\t.FUNCT\tDO-SL,OBJ,BIT1,BIT2\n\tADD\tBIT1,BIT2\n\tBTST\tP-SLOCBITS,STACK \\?CCL3\n\tCALL\tSEARCH-LIST,OBJ,P-TABLE,P-SRCALL\n\tRSTACK\t\n?CCL3:\tBTST\tP-SLOCBITS,BIT1 \\?CCL6\n\tCALL\tSEARCH-LIST,OBJ,P-TABLE,P-SRCTOP\n\tRSTACK\t\n?CCL6:\tBTST\tP-SLOCBITS,BIT2 \\TRUE\n\tCALL\tSEARCH-LIST,OBJ,P-TABLE,P-SRCBOT\n\tRSTACK\t\n\n\n\t.FUNCT\tSEARCH-LIST,OBJ,TBL,LVL,FLS,NOBJ\n\tFIRST?\tOBJ >OBJ \\FALSE\n?PRG4:\tEQUAL?\tLVL,P-SRCBOT /?CND6\n\tGETPT\tOBJ,P?SYNONYM\n\tZERO?\tSTACK /?CND6\n\tCALL\tTHIS-IT?,OBJ,TBL\n\tZERO?\tSTACK /?CND6\n\tCALL\tOBJ-FOUND,OBJ,TBL\n?CND6:\tFSET?\tOBJ,INVISIBLE /?CND11\n\tZERO?\tLVL \\?PRD15\n\tFSET?\tOBJ,SEARCHBIT /?PRD15\n\tFSET?\tOBJ,SURFACEBIT \\?CND11\n?PRD15:\tFIRST?\tOBJ >NOBJ \\?CND11\n\tFSET?\tOBJ,OPENBIT /?CCL12\n\tFSET?\tOBJ,TRANSBIT \\?CND11\n?CCL12:\tZERO?\tLVL \\?CCL24\n\tFSET?\tOBJ,SEARCHBIT \\?CCL24\n\tEQUAL?\tP-GETFLAGS,P-ALL /?CND11\n?CCL24:\tFSET?\tOBJ,SURFACEBIT \\?CCL30\n\tPUSH\tP-SRCALL\n\tJUMP\t?CND28\n?CCL30:\tFSET?\tOBJ,SEARCHBIT \\?CCL32\n\tPUSH\tP-SRCALL\n\tJUMP\t?CND28\n?CCL32:\tPUSH\tP-SRCTOP\n?CND28:\tCALL\tSEARCH-LIST,OBJ,TBL,STACK >FLS\n?CND11:\tNEXT?\tOBJ >OBJ /?PRG4\n\tRTRUE\t\n\n\n\t.FUNCT\tOBJ-FOUND,OBJ,TBL,PTR\n\tGET\tTBL,P-MATCHLEN >PTR\n\tADD\tPTR,1\n\tPUT\tTBL,STACK,OBJ\n\tADD\tPTR,1\n\tPUT\tTBL,P-MATCHLEN,STACK\n\tRTRUE\t\n\n\n\t.FUNCT\tTAKE-CHECK\n\tGETB\tP-SYNTAX,P-SLOC1\n\tCALL\tITAKE-CHECK,P-PRSO,STACK\n\tZERO?\tSTACK /FALSE\n\tGETB\tP-SYNTAX,P-SLOC2\n\tCALL\tITAKE-CHECK,P-PRSI,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tITAKE-CHECK,TBL,IBITS,PTR,OBJ,TAKEN\n\tGET\tTBL,P-MATCHLEN >PTR\n\tZERO?\tPTR /TRUE\n\tBTST\tIBITS,SHAVE /?PRG8\n\tBTST\tIBITS,STAKE \\TRUE\n?PRG8:\tDLESS?\t'PTR,0 /TRUE\n\tADD\tPTR,1\n\tGET\tTBL,STACK >OBJ\n\tEQUAL?\tOBJ,IT \\?CND13\n\tSET\t'OBJ,P-IT-OBJECT\n?CND13:\tCALL\tHELD?,OBJ\n\tZERO?\tSTACK \\?PRG8\n\tEQUAL?\tOBJ,HANDS /?PRG8\n\tSET\t'PRSO,OBJ\n\tFSET?\tOBJ,TRYTAKEBIT \\?CCL21\n\tSET\t'TAKEN,TRUE-VALUE\n\tJUMP\t?CND19\n?CCL21:\tEQUAL?\tWINNER,ADVENTURER /?CCL23\n\tSET\t'TAKEN,FALSE-VALUE\n\tJUMP\t?CND19\n?CCL23:\tBTST\tIBITS,STAKE \\?CCL25\n\tCALL\tITAKE,FALSE-VALUE\n\tEQUAL?\tSTACK,TRUE-VALUE \\?CCL25\n\tSET\t'TAKEN,FALSE-VALUE\n\tJUMP\t?CND19\n?CCL25:\tSET\t'TAKEN,TRUE-VALUE\n?CND19:\tZERO?\tTAKEN /?CCL30\n\tBTST\tIBITS,SHAVE \\?CCL30\n\tEQUAL?\tOBJ,NOT-HERE-OBJECT \\?CND33\n\tPRINTI\t\"You don't have that!\"\n\tCRLF\t\n\tRFALSE\t\n?CND33:\tPRINTI\t\"You don't have the \"\n\tPRINTD\tOBJ\n\tPRINTC\t46\n\tCRLF\t\n\tCALL\tTHIS-IS-IT,OBJ\n\tRFALSE\t\n?CCL30:\tZERO?\tTAKEN \\?PRG8\n\tEQUAL?\tWINNER,ADVENTURER \\?PRG8\n\tPRINTI\t\"(Taking the \"\n\tPRINTD\tOBJ\n\tPRINTI\t\" first)\"\n\tCRLF\t\n\tJUMP\t?PRG8\n\n\n\t.FUNCT\tHERE?,CAN\n?PRG1:\tLOC\tCAN >CAN\n\tZERO?\tCAN /?REP2\n\tEQUAL?\tCAN,HERE \\?PRG1\n\tRTRUE\t\n?REP2:\tCALL\tGLOBAL-IN?,CAN,HERE\n\tZERO?\tSTACK \\TRUE\n\tEQUAL?\tCAN,PSEUDO-OBJECT /TRUE\n\tRFALSE\t\n\n\n\t.FUNCT\tHELD?,CAN\n?PRG1:\tLOC\tCAN >CAN\n\tZERO?\tCAN /FALSE\n\tEQUAL?\tCAN,WINNER \\?PRG1\n\tRTRUE\t\n\n\n\t.FUNCT\tMANY-CHECK,LOSS=0,TMP,?TMP1\n\tGET\tP-PRSO,P-MATCHLEN\n\tGRTR?\tSTACK,1 \\?CCL3\n\tGETB\tP-SYNTAX,P-SLOC1\n\tBTST\tSTACK,SMANY /?CCL3\n\tSET\t'LOSS,1\n\tJUMP\t?CND1\n?CCL3:\tGET\tP-PRSI,P-MATCHLEN\n\tGRTR?\tSTACK,1 \\?CND1\n\tGETB\tP-SYNTAX,P-SLOC2\n\tBTST\tSTACK,SMANY /?CND1\n\tSET\t'LOSS,2\n?CND1:\tZERO?\tLOSS /TRUE\n\tPRINTI\t\"I can't use multiple \"\n\tEQUAL?\tLOSS,2 \\?CND12\n\tPRINTI\t\"in\"\n?CND12:\tPRINTI\t\"direct objects with \"\"\"\n\tGET\tP-ITBL,P-VERBN >TMP\n\tZERO?\tTMP \\?CCL16\n\tPRINTI\t\"tell\"\n\tJUMP\t?CND14\n?CCL16:\tZERO?\tP-OFLAG \\?CTR17\n\tZERO?\tP-MERGED /?CCL18\n?CTR17:\tGET\tTMP,0\n\tPRINTB\tSTACK\n\tJUMP\t?CND14\n?CCL18:\tGETB\tTMP,2 >?TMP1\n\tGETB\tTMP,3\n\tCALL\tWORD-PRINT,?TMP1,STACK\n?CND14:\tPRINTI\t\".\"\"\"\n\tCRLF\t\n\tRFALSE\t\n\n\n\t.FUNCT\tZMEMQ,ITM,TBL,SIZE=-1,CNT=1\n\tZERO?\tTBL /FALSE\n\tLESS?\tSIZE,0 /?CCL5\n\tSET\t'CNT,0\n\tJUMP\t?PRG6\n?CCL5:\tGET\tTBL,0 >SIZE\n?PRG6:\tGET\tTBL,CNT\n\tEQUAL?\tITM,STACK /TRUE\n\tIGRTR?\t'CNT,SIZE \\?PRG6\n\tRFALSE\t\n\n\n\t.FUNCT\tZMEMQB,ITM,TBL,SIZE,CNT=0\n?PRG1:\tGETB\tTBL,CNT\n\tEQUAL?\tITM,STACK /TRUE\n\tIGRTR?\t'CNT,SIZE \\?PRG1\n\tRFALSE\t\n\n\n\t.FUNCT\tLIT?,RM,OHERE,LIT=0\n\tSET\t'P-GWIMBIT,ONBIT\n\tSET\t'OHERE,HERE\n\tSET\t'HERE,RM\n\tFSET?\tRM,ONBIT \\?CCL3\n\tSET\t'LIT,TRUE-VALUE\n\tJUMP\t?CND1\n?CCL3:\tPUT\tP-MERGE,P-MATCHLEN,0\n\tSET\t'P-TABLE,P-MERGE\n\tSET\t'P-SLOCBITS,-1\n\tEQUAL?\tOHERE,RM \\?CND4\n\tCALL\tDO-SL,WINNER,1,1\n?CND4:\tCALL\tDO-SL,RM,1,1\n\tGET\tP-TABLE,P-MATCHLEN\n\tGRTR?\tSTACK,0 \\?CND1\n\tSET\t'LIT,TRUE-VALUE\n?CND1:\tSET\t'HERE,OHERE\n\tSET\t'P-GWIMBIT,0\n\tRETURN\tLIT\n\n\n\t.FUNCT\tPRSO-PRINT,PTR\n\tZERO?\tP-MERGED \\?CTR2\n\tGET\tP-ITBL,P-NC1 >PTR\n\tGET\tPTR,0\n\tEQUAL?\tSTACK,W?IT \\?CCL3\n?CTR2:\tPRINTC\t32\n\tPRINTD\tPRSO\n\tRTRUE\t\n?CCL3:\tGET\tP-ITBL,P-NC1L\n\tCALL\tBUFFER-PRINT,PTR,STACK,FALSE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tTHIS-IT?,OBJ,TBL,SYNS,?TMP1\n\tFSET?\tOBJ,INVISIBLE /FALSE\n\tZERO?\tP-NAM /?CCL5\n\tGETPT\tOBJ,P?SYNONYM >SYNS\n\tPTSIZE\tSYNS\n\tDIV\tSTACK,2\n\tSUB\tSTACK,1\n\tCALL\tZMEMQ,P-NAM,SYNS,STACK\n\tZERO?\tSTACK /FALSE\n?CCL5:\tZERO?\tP-ADJ /?CCL9\n\tGETPT\tOBJ,P?ADJECTIVE >SYNS\n\tZERO?\tSYNS /FALSE\n\tPTSIZE\tSYNS\n\tSUB\tSTACK,1\n\tCALL\tZMEMQB,P-ADJ,SYNS,STACK\n\tZERO?\tSTACK /FALSE\n?CCL9:\tZERO?\tP-GWIMBIT /TRUE\n\tFSET?\tOBJ,P-GWIMBIT /TRUE\n\tRFALSE\t\n\n\t.ENDI\n"
  },
  {
    "path": "parser.zil",
    "content": "\"PARSER for\n\t\t\t       PLANETFALL\n\t(c) Copyright 1983 Infocom, Inc.  All Rights Reserved.\"\n\n\"Parser global variable convention:  All parser globals will \nbegin with 'P-'.  Local variables are not restricted in any way.\" \n\n<SETG SIBREAKS \".,\\\"\">   \n\n<GLOBAL PRSA 0>\n\n<GLOBAL PRSI 0>\n\n<GLOBAL PRSO 0>\n\n<GLOBAL P-ADVERB <>>\n\n<GLOBAL P-ADJECTIVE <>>\n\n<GLOBAL P-SPACE 1>\n\n<GLOBAL P-TABLE 0>  \n\n<GLOBAL P-ONEOBJ 0> \n\n<GLOBAL P-SYNTAX 0> \n\n<GLOBAL P-CCSRC 0>  \n\n<GLOBAL P-LEN 0>    \n\n<GLOBAL P-DIR 0>    \n\n<GLOBAL HERE 0>\n\n<GLOBAL WINNER 0>   \n\n<GLOBAL P-LEXV <ITABLE BYTE 120>>\n;\"INBUF - Input buffer for READ\"   \n\n<GLOBAL P-INBUF <ITABLE BYTE 80>>  \n\n<GLOBAL P-CONT <>>  \n\n<GLOBAL P-IT-OBJECT <>>\n\n<GLOBAL P-IT-LOC <>>\n\n<GLOBAL LAST-PSEUDO-LOC <>>\n\n;\"Orphan flag\" \n \n<GLOBAL P-OFLAG <>> \n \n<GLOBAL P-MERGED <>>\n\n<GLOBAL P-ACLAUSE <>>    \n \n<GLOBAL P-ANAM <>>  \n \n<GLOBAL P-AADJ <>>\n;\"Parser variables and temporaries\"\n \n<CONSTANT P-PHRLEN 3>    \n \n<CONSTANT P-ORPHLEN 7>   \n \n<CONSTANT P-RTLEN 3>\n;\"Byte offset to # of entries in LEXV\"\n\f\n<CONSTANT P-LEXWORDS 1>\n;\"Word offset to start of LEXV entries\" \n \n<CONSTANT P-LEXSTART 1>\n;\"Number of words per LEXV entry\"  \n \n<CONSTANT P-LEXELEN 2>   \n \n<CONSTANT P-WORDLEN 4>\n;\"Offset to parts of speech byte\"   \n \n<CONSTANT P-PSOFF 4>\n;\"Offset to first part of speech\"\n \n<CONSTANT P-P1OFF 5>\n;\"First part of speech bit mask in PSOFF byte\"  \n \n<CONSTANT P-P1BITS 3>    \n \n<CONSTANT P-ITBLLEN 9>   \n \n<GLOBAL P-ITBL <TABLE 0 0 0 0 0 0 0 0 0 0>>  \n \n<GLOBAL P-OTBL <TABLE 0 0 0 0 0 0 0 0 0 0>>  \n \n<GLOBAL P-VTBL <TABLE 0 0 0 0>>\n\n<GLOBAL P-NCN 0>    \n \n<CONSTANT P-VERB 0> \n \n<CONSTANT P-VERBN 1>\n \n<CONSTANT P-PREP1 2>\n \n<CONSTANT P-PREP1N 3>    \n \n<CONSTANT P-PREP2 4>\n \n<CONSTANT P-PREP2N 5>    \n \n<CONSTANT P-NC1 6>  \n \n<CONSTANT P-NC1L 7> \n \n<CONSTANT P-NC2 8>  \n \n<CONSTANT P-NC2L 9> \n \n<GLOBAL QUOTE-FLAG <>>\n\n\" Grovel down the input finding the verb, prepositions, and noun clauses.\n   If the input is <direction> or <walk> <direction>, fall out immediately\n   setting PRSA to ,V?WALK and PRSO to <direction>.  Otherwise, perform\n   all required orphaning, syntax checking, and noun clause lookup.\"   \n\f\n<ROUTINE PARSER (\"AUX\" (PTR ,P-LEXSTART) WORD (VAL 0) (VERB <>)\n\t\t       LEN (DIR <>) (NW 0) (LW 0) NUM SCNT (CNT -1)) \n\t<REPEAT ()\n\t\t<COND (<G? <SET CNT <+ .CNT 1>> ,P-ITBLLEN> <RETURN>)\n\t\t      (T <PUT ,P-ITBL .CNT 0>)>>\n\t;<SETG P-NUMBER <>> ;\"Removed 7/3\"\n\t<SETG P-ADVERB <>>\n\t<SETG P-ADJECTIVE <>>\n\t<SETG P-MERGED <>>\n\t<PUT ,P-PRSO ,P-MATCHLEN 0>\n\t<PUT ,P-PRSI ,P-MATCHLEN 0>\n\t<PUT ,P-BUTS ,P-MATCHLEN 0>\n\t<COND (<AND <NOT ,QUOTE-FLAG> <N==? ,WINNER ,ADVENTURER>>\n\t       <SETG WINNER ,ADVENTURER>\n\t       <COND (<NOT <FSET? <LOC ,WINNER> ,VEHBIT>>\n\t\t      <SETG HERE <LOC ,WINNER>>)>)>\n\t<COND (,P-CONT\n\t       <SET PTR ,P-CONT>\n\t       <SETG P-CONT <>>\n\t       <COND (<AND <NOT <VERB? TELL>>\n\t\t\t   <NOT ,SUPER-BRIEF>>\n\t\t      <CRLF>)>)\n\t      (T\n\t       <SETG WINNER ,ADVENTURER>\n\t       <SETG QUOTE-FLAG <>>\n\t       <COND (<NOT <FSET? <LOC ,WINNER> ,VEHBIT>>\n\t\t      <SETG HERE <LOC ,WINNER>>)>\n\t       <SET SCNT ,P-SPACE>\n\t       <REPEAT ()\n\t\t       <COND (<L? <SET SCNT <- .SCNT 1>> 0>\n\t\t\t      <RETURN>)\n\t\t\t     (<NOT ,SUPER-BRIEF>\n\t\t\t      <CRLF>)>>\n\t       <TELL \">\">\n\t       <READ ,P-INBUF ,P-LEXV>)>\n\t<SETG P-LEN <GETB ,P-LEXV ,P-LEXWORDS>>\n\t<COND (<0? ,P-LEN> <TELL \"I beg your pardon?\" CR> <RFALSE>)>\n\t<SET LEN ,P-LEN>\n\t<SETG P-DIR <>>\n\t<SETG P-NCN 0>\n\t<SETG P-GETFLAGS 0>\n\t<REPEAT ()\n\t\t<COND (<L? <SETG P-LEN <- ,P-LEN 1>> 0>\n\t\t       <SETG QUOTE-FLAG <>>\n\t\t       <RETURN>)\n\t\t      (<OR <SET WORD <GET ,P-LEXV .PTR>>\n\t\t\t   <SET WORD <NUMBER? .PTR>>>\n\t\t       <COND (<AND <==? .WORD ,W?TO>\n\t\t\t\t   <EQUAL? .VERB ,ACT?TELL>>\n\t\t\t      <SET WORD ,W?QUOTE>)\n\t\t\t     (<AND <==? .WORD ,W?THEN>\n\t\t\t\t   <NOT .VERB>\n\t\t\t\t   <NOT ,QUOTE-FLAG> ;\"Added 7/3 by MARC\">\n\t\t\t      <PUT ,P-ITBL ,P-VERB ,ACT?TELL>\n\t\t\t      <PUT ,P-ITBL ,P-VERBN 0>\n\t\t\t      <SET WORD ,W?QUOTE>)>\n\t\t       <COND ;(<AND <EQUAL? .WORD ,W?PERIOD>\n\t\t\t\t   <EQUAL? .LW ,W?MRS ,W?MR ,W?MS>>\n\t\t\t      <SET LW 0>)\n\t\t\t     (<OR <EQUAL? .WORD ,W?THEN ,W?PERIOD>\n\t\t\t\t  <EQUAL? .WORD ,W?QUOTE>> \n\t\t\t      <COND (<EQUAL? .WORD ,W?QUOTE>\n\t\t\t\t     <COND (,QUOTE-FLAG\n\t\t\t\t\t    <SETG QUOTE-FLAG <>>)\n\t\t\t\t\t   (T <SETG QUOTE-FLAG T>)>)>\n\t\t\t      <OR <0? ,P-LEN>\n\t\t\t\t  <SETG P-CONT <+ .PTR ,P-LEXELEN>>>\n\t\t\t      <PUTB ,P-LEXV ,P-LEXWORDS ,P-LEN>\n\t\t\t      <RETURN>)\n\t\t\t     (<AND <SET VAL\n\t\t\t\t\t<WT? .WORD\n\t\t\t\t\t     ,PS?DIRECTION\n\t\t\t\t\t     ,P1?DIRECTION>>\n\t\t\t\t   <OR <==? .LEN 1>\n\t\t\t\t       <AND <==? .LEN 2>\n\t\t\t\t\t    <==? .VERB ,ACT?WALK>>\n\t\t\t\t       <AND <EQUAL? <SET NW\n\t\t\t\t\t\t       <GET ,P-LEXV\n\t\t\t\t\t\t\t <+ .PTR ,P-LEXELEN>>>\n\t\t\t\t\t            ,W?THEN\n\t\t\t\t\t            ,W?QUOTE>\n\t\t\t\t\t    <==? .VERB ,ACT?WALK>\n\t\t\t\t\t    <G? .LEN 2>>\n\t\t\t\t       <AND <EQUAL? .NW ,W?PERIOD>\n\t\t\t\t\t    <EQUAL? .VERB ,ACT?WALK <>>\n\t\t\t\t\t    <G? .LEN 1>>\n\t\t\t\t       <AND ,QUOTE-FLAG\n\t\t\t\t\t    <==? .LEN 2>\n\t\t\t\t\t    <EQUAL? .NW ,W?QUOTE>>\n\t\t\t\t       <AND <G? .LEN 2>\n\t\t\t\t\t    <==? .VERB ,ACT?WALK>\n\t\t\t\t\t    <EQUAL? .NW ,W?COMMA ,W?AND>>>>\n\t\t\t      <SET DIR .VAL>\n\t\t\t      <COND (<EQUAL? .NW ,W?COMMA ,W?AND>\n\t\t\t\t     <PUT ,P-LEXV\n\t\t\t\t\t  <+ .PTR ,P-LEXELEN>\n\t\t\t\t\t  ,W?THEN>)>\n\t\t\t      <COND (<NOT <G? .LEN 2>>\n\t\t\t\t     <SETG QUOTE-FLAG <>>\n\t\t\t\t     <RETURN>)>)\n\t\t\t     (<AND <SET VAL <WT? .WORD ,PS?VERB ,P1?VERB>>\n\t\t\t\t   <NOT .VERB>>\n\t\t\t      <SET VERB .VAL>\n\t\t\t      <PUT ,P-ITBL ,P-VERB .VAL>\n\t\t\t      <PUT ,P-ITBL ,P-VERBN ,P-VTBL>\n\t\t\t      <PUT ,P-VTBL 0 .WORD>\n\t\t\t      <PUTB ,P-VTBL 2 <GETB ,P-LEXV\n\t\t\t\t\t\t    <SET NUM\n\t\t\t\t\t\t\t <+ <* .PTR 2> 2>>>>\n\t\t\t      <PUTB ,P-VTBL 3 <GETB ,P-LEXV <+ .NUM 1>>>)\n\t\t\t     (<OR <SET VAL <WT? .WORD ,PS?PREPOSITION 0>>\n\t\t\t\t  <AND <OR <EQUAL? .WORD ,W?ALL ,W?ONE ,W?A>\n\t\t\t\t\t   <EQUAL? .WORD ,W?BOTH>\n\t\t\t\t\t   <WT? .WORD ,PS?ADJECTIVE>\n\t\t\t\t\t   <WT? .WORD ,PS?OBJECT>>\n\t\t\t\t       ;<SET VAL 0>>>\n\t\t\t      <COND (<AND <G? ,P-LEN 0>\n\t\t\t\t\t  <==? <GET ,P-LEXV\n\t\t\t\t\t\t    <+ .PTR ,P-LEXELEN>>\n\t\t\t\t\t       ,W?OF>\n\t\t\t\t\t  ;<NOT <EQUAL? .VERB ,ACT?ACCUSE>>\n\t\t\t\t\t  <0? .VAL>\n\t\t\t\t\t  <NOT\n\t\t\t\t\t   <EQUAL? .WORD ,W?ALL ,W?ONE ,W?A>>\n\t\t\t\t\t  <NOT <EQUAL? .WORD ,W?BOTH>>>)\n\t\t\t\t    (<AND <NOT <0? .VAL>>\n\t\t\t\t          <OR <0? ,P-LEN>\n\t\t\t\t\t      <EQUAL? <GET ,P-LEXV <+ .PTR 2>>\n\t\t\t\t\t\t      ,W?THEN ,W?PERIOD>>>\n\t\t\t\t     <COND (<L? ,P-NCN 2>\n\t\t\t\t\t    <PUT ,P-ITBL ,P-PREP1 .VAL>\n\t\t\t\t\t    <PUT ,P-ITBL ,P-PREP1N .WORD>)>)\n\t\t\t\t    (<==? ,P-NCN 2>\n\t\t\t\t     <TELL\n\"I found too many nouns in that sentence.\" CR>\n\t\t\t\t     <RFALSE>)\n\t\t\t\t    (T\n\t\t\t\t     <SETG P-NCN <+ ,P-NCN 1>>\n\t\t\t\t     <OR <SET PTR <CLAUSE .PTR .VAL .WORD>>\n\t\t\t\t\t <RFALSE>>\n\t\t\t\t     <COND (<L? .PTR 0>\n\t\t\t\t\t    <SETG QUOTE-FLAG <>>\n\t\t\t\t\t    <RETURN>)>)>)\n\t\t\t     ;(<OR <EQUAL? .WORD ,W?CAREFULLY ,W?QUIETLY>\n\t\t\t\t  <EQUAL? .WORD ,W?SLOWLY ,W?QUICKLY\n\t\t\t\t\t        ,W?BRIEFLY>>\n\t\t\t      <SETG P-ADVERB .WORD>)\n\t\t\t     (<WT? .WORD ,PS?BUZZ-WORD>)\n\t\t\t     (<AND <EQUAL? .VERB ,ACT?TELL>\n\t\t\t\t   <WT? .WORD ,PS?VERB ,P1?VERB>>\n\t\t\t      <TELL\n\"Please consult your manual for the correct way to talk to other people\nor creatures.\" CR>\n\t\t\t      <RFALSE>)\n\t\t\t     (T\n\t\t\t      <CANT-USE .PTR>\n\t\t\t      <RFALSE>)>)\n\t\t      (T\n\t\t       <UNKNOWN-WORD .PTR>\n\t\t       <RFALSE>)>\n\t\t<SET LW .WORD>\n\t\t<SET PTR <+ .PTR ,P-LEXELEN>>>\n\t<COND (.DIR \n\t       <SETG PRSA ,V?WALK>\n\t       <SETG PRSO  .DIR>\n\t       <SETG P-WALK-DIR .DIR>\n\t       <RETURN T>)>\n\t<SETG P-WALK-DIR <>>\n\t<COND (,P-OFLAG <ORPHAN-MERGE>)>\n\t;<COND (<==? <GET ,P-ITBL ,P-VERB> 0> <PUT ,P-ITBL ,P-VERB ,ACT?CALL>)>\n\t<COND (<AND <SYNTAX-CHECK> <SNARF-OBJECTS> <MANY-CHECK> <TAKE-CHECK>>\n\t       T)>>\n\n<GLOBAL P-WALK-DIR <>>\n\n;\"Check whether word pointed at by PTR is the correct part of speech.\n   The second argument is the part of speech (,PS?<part of speech>).  The\n   3rd argument (,P1?<part of speech>), if given, causes the value\n   for that part of speech to be returned.\" \n\f\n<ROUTINE WT? (PTR BIT \"OPTIONAL\" (B1 5) \"AUX\" (OFFST ,P-P1OFF) TYP) \n\t<COND (<BTST <SET TYP <GETB .PTR ,P-PSOFF>> .BIT>\n\t       <COND (<G? .B1 4> <RTRUE>)\n\t\t     (<EQUAL? .BIT ,PS?OBJECT> 1)\n\t\t     (T\n\t\t      <SET TYP <BAND .TYP ,P-P1BITS>>\n\t\t      <COND (<NOT <==? .TYP .B1>> <SET OFFST <+ .OFFST 1>>)>\n\t\t      <GETB .PTR .OFFST>)>)>>\n;\" Scan through a noun clause, leave a pointer to its starting location\"\n \n<ROUTINE CLAUSE (PTR VAL WORD \"AUX\" OFF NUM (ANDFLG <>) (FIRST?? T) NW (LW 0))\n\t<SET OFF <* <- ,P-NCN 1> 2>>\n\t<COND (<NOT <==? .VAL 0>>\n\t       <PUT ,P-ITBL <SET NUM <+ ,P-PREP1 .OFF>> .VAL>\n\t       <PUT ,P-ITBL <+ .NUM 1> .WORD>\n\t       <SET PTR <+ .PTR ,P-LEXELEN>>)\n\t      (T <SETG P-LEN <+ ,P-LEN 1>>)>\n\t<COND (<0? ,P-LEN> <SETG P-NCN <- ,P-NCN 1>> <RETURN -1>)>\n\t<PUT ,P-ITBL <SET NUM <+ ,P-NC1 .OFF>> <REST ,P-LEXV <* .PTR 2>>>\n\t<COND (<EQUAL? <GET ,P-LEXV .PTR> ,W?THE ,W?A ,W?AN>\n\t       <PUT ,P-ITBL .NUM <REST <GET ,P-ITBL .NUM> 4>>)>\n\t<REPEAT ()\n\t\t<COND (<L? <SETG P-LEN <- ,P-LEN 1>> 0>\n\t\t       <PUT ,P-ITBL <+ .NUM 1> <REST ,P-LEXV <* .PTR 2>>>\n\t\t       <RETURN -1>)>\n\t\t<COND (<OR <SET WORD <GET ,P-LEXV .PTR>>\n\t\t\t   <SET WORD <NUMBER? .PTR>>>\n\t\t       <COND (<0? ,P-LEN> <SET NW 0>)\n\t\t\t     (T <SET NW <GET ,P-LEXV <+ .PTR ,P-LEXELEN>>>)>\n\t\t       ;<COND (<AND <==? .WORD ,W?OF>\n\t\t\t\t   <==? <GET ,P-ITBL ,P-VERB> ,ACT?ACCUSE>>\n\t\t\t      <PUT ,P-LEXV .PTR ,W?WITH>\n\t\t\t      <SET WORD ,W?WITH>)>\n\t\t       <COND ;(<AND <EQUAL? .WORD ,W?PERIOD>\n\t\t\t\t   <EQUAL? .LW ,W?MRS ,W?MR ,W?MS>>\n\t\t\t      <SET LW 0>)\n\t\t\t     (<EQUAL? .WORD ,W?AND ,W?COMMA> <SET ANDFLG T>)\n\t\t\t     (<EQUAL? .WORD ,W?ALL ,W?BOTH ,W?ONE>\n\t\t\t      <COND (<==? .NW ,W?OF>\n\t\t\t\t     <SETG P-LEN <- ,P-LEN 1>>\n\t\t\t\t     <SET PTR <+ .PTR ,P-LEXELEN>>)>)\n\t\t\t     (<OR <EQUAL? .WORD ,W?THEN ,W?PERIOD>\n\t\t\t\t  <AND <WT? .WORD ,PS?PREPOSITION>\n\t\t\t\t       <NOT .FIRST??>>>\n\t\t\t      <SETG P-LEN <+ ,P-LEN 1>>\n\t\t\t      <PUT ,P-ITBL\n\t\t\t\t   <+ .NUM 1>\n\t\t\t\t   <REST ,P-LEXV <* .PTR 2>>>\n\t\t\t      <RETURN <- .PTR ,P-LEXELEN>>)\n\t\t\t     (<WT? .WORD ,PS?OBJECT>\n\t\t\t      <COND (<AND <G? ,P-LEN 0>\n\t\t\t\t\t  <EQUAL? .NW ,W?OF>\n\t\t\t\t\t  <NOT <EQUAL? .WORD ,W?ALL ,W?ONE>>>\n\t\t\t\t     T)\n\t\t\t\t    (<AND <WT? .WORD\n\t\t\t\t\t       ,PS?ADJECTIVE\n\t\t\t\t\t       ,P1?ADJECTIVE>\n\t\t\t\t\t  <NOT <==? .NW 0>>\n\t\t\t\t\t  <WT? .NW ,PS?OBJECT>>)\n\t\t\t\t    (<AND <NOT .ANDFLG>\n\t\t\t\t\t  <NOT <EQUAL? .NW ,W?BUT ,W?EXCEPT>>\n\t\t\t\t\t  <NOT <EQUAL? .NW ,W?AND ,W?COMMA>>>\n\t\t\t\t     <PUT ,P-ITBL\n\t\t\t\t\t  <+ .NUM 1>\n\t\t\t\t\t  <REST ,P-LEXV <* <+ .PTR 2> 2>>>\n\t\t\t\t     <RETURN .PTR>)\n\t\t\t\t    (T <SET ANDFLG <>>)>)\n\t\t\t     (<AND <OR ,P-OFLAG\n\t\t\t\t        ,P-MERGED\n\t\t\t\t\t<NOT <EQUAL? <GET ,P-ITBL ,P-VERB> 0>>>\n\t\t\t\t   <OR <WT? .WORD ,PS?ADJECTIVE>\n\t\t\t\t       <WT? .WORD ,PS?BUZZ-WORD>>>)\n\t\t\t     (<AND .ANDFLG\n\t\t\t\t   <OR <WT? .WORD ,PS?DIRECTION>\n\t\t\t\t       <WT? .WORD ,PS?VERB>>>\n\t\t\t      <SET PTR <- .PTR 4>>\n\t\t\t      <PUT ,P-LEXV <+ .PTR 2> ,W?THEN>\n\t\t\t      <SETG P-LEN <+ ,P-LEN 2>>)\n\t\t\t     (<WT? .WORD ,PS?PREPOSITION> T)\n\t\t\t     (T\n\t\t\t      <CANT-USE .PTR>\n\t\t\t      <RFALSE>)>)\n\t\t      (T <UNKNOWN-WORD .PTR> <RFALSE>)>\n\t\t<SET LW .WORD>\n\t\t<SET FIRST?? <>>\n\t\t<SET PTR <+ .PTR ,P-LEXELEN>>>> \n\n<ROUTINE NUMBER? (PTR \"AUX\" CNT BPTR CHR (SUM 0) (TIM <>))\n\t <SET CNT <GETB <REST ,P-LEXV <* .PTR 2>> 2>>\n\t <SET BPTR <GETB <REST ,P-LEXV <* .PTR 2>> 3>>\n\t <REPEAT ()\n\t\t <COND (<L? <SET CNT <- .CNT 1>> 0> <RETURN>)\n\t\t       (T\n\t\t\t<SET CHR <GETB ,P-INBUF .BPTR>>\n\t\t\t<COND (<G? .SUM 10000> <RFALSE>)\n\t\t\t      (<AND <L? .CHR 58> <G? .CHR 47>>\n\t\t\t       <SET SUM <+ <* .SUM 10> <- .CHR 48>>>)\n\t\t\t      (T <RFALSE>)>\n\t\t\t<SET BPTR <+ .BPTR 1>>)>>\n\t <PUT ,P-LEXV .PTR ,W?INTNUM>\n\t <COND (<G? .SUM 10000> <RFALSE>)>\n\t <SETG P-NUMBER .SUM>\n\t ,W?INTNUM>\n\n<GLOBAL P-NUMBER 0>\n\n\f\n<ROUTINE ORPHAN-MERGE (\"AUX\" (CNT -1) TEMP VERB BEG END (ADJ <>) WRD) \n   <SETG P-OFLAG <>>\n   <COND (<WT? <SET WRD <GET <GET ,P-ITBL ,P-VERBN> 0>>\n\t       ,PS?ADJECTIVE ,P1?ADJECTIVE>\n\t  <SET ADJ T>)\n\t ;\"Following clause is retrofix #30, which handles case where one-word\n\t   response is both noun and verb. -JW 8/20/84\"\n\t (<AND <WT? .WRD ,PS?OBJECT ,P1?OBJECT>\n\t       <EQUAL? ,P-NCN 0>>\n\t  <PUT ,P-ITBL ,P-VERB 0>\n\t  <PUT ,P-ITBL ,P-VERBN 0>\n\t  <PUT ,P-ITBL ,P-NC1 <REST ,P-LEXV 2>>\n\t  <PUT ,P-ITBL ,P-NC1L <REST ,P-LEXV 6>>\n\t  <SETG P-NCN 1>)>\n   <COND (<AND <NOT <0? <SET VERB <GET ,P-ITBL ,P-VERB>>>>\n\t       <NOT .ADJ>\n\t       <NOT <==? .VERB <GET ,P-OTBL ,P-VERB>>>>\n\t  <RFALSE>)\n\t (<==? ,P-NCN 2> <RFALSE>)\n\t (<==? <GET ,P-OTBL ,P-NC1> 1>\n\t  <COND (<OR <==? <SET TEMP <GET ,P-ITBL ,P-PREP1>>\n\t\t\t  <GET ,P-OTBL ,P-PREP1>>\n\t\t     <0? .TEMP>>\n\t\t <COND (.ADJ\n\t\t\t<PUT ,P-OTBL ,P-NC1 <REST ,P-LEXV 2>>\n\t\t\t<PUT ,P-OTBL ,P-NC1L <REST ,P-LEXV 6>>)\n\t\t       (T\n\t\t\t<PUT ,P-OTBL ,P-NC1 <GET ,P-ITBL ,P-NC1>>\n\t\t\t<PUT ,P-OTBL ,P-NC1L <GET ,P-ITBL ,P-NC1L>>)>)\n\t\t(T <RFALSE>)>)\n\t (<==? <GET ,P-OTBL ,P-NC2> 1>\n\t  <COND (<OR <==? <SET TEMP <GET ,P-ITBL ,P-PREP1>>\n\t\t\t  <GET ,P-OTBL ,P-PREP2>>\n\t\t     <0? .TEMP>>\n\t\t <COND (.ADJ\n\t\t\t<PUT ,P-ITBL ,P-NC1 <REST ,P-LEXV 2>>\n\t\t\t<PUT ,P-ITBL ,P-NC1L <REST ,P-LEXV 6>>)>\n\t\t <PUT ,P-OTBL ,P-NC2 <GET ,P-ITBL ,P-NC1>>\n\t\t <PUT ,P-OTBL ,P-NC2L <GET ,P-ITBL ,P-NC1L>>\n\t\t <SETG P-NCN 2>)\n\t\t(T <RFALSE>)>)\n\t (<NOT <ZERO? ,P-ACLAUSE>>\n\t  <COND (<AND <NOT <==? ,P-NCN 1>> <NOT .ADJ>>\n\t\t <SETG P-ACLAUSE <>>\n\t\t <RFALSE>)\n\t\t(T\n\t\t <SET BEG <GET ,P-ITBL ,P-NC1>>\n\t\t <COND (.ADJ <SET BEG <REST ,P-LEXV 2>> <SET ADJ <>>)>\n\t\t <SET END <GET ,P-ITBL ,P-NC1L>>\n\t\t <REPEAT ()\n\t\t\t <SET WRD <GET .BEG 0>>\n\t\t\t <COND (<==? .BEG .END>\n\t\t\t\t<COND (.ADJ <ACLAUSE-WIN .ADJ> <RETURN>)\n\t\t\t\t      (T <SETG P-ACLAUSE <>> <RFALSE>)>)\n\t\t\t       (<AND <NOT .ADJ>\n\t\t\t\t     <OR <BTST <GETB .WRD ,P-PSOFF>\n\t\t\t\t\t       ,PS?ADJECTIVE>\n\t\t\t\t\t <EQUAL? .WRD ,W?ALL ,W?ONE>>>\n\t\t\t\t<SET ADJ .WRD>)\n\t\t\t       (<OR <BTST <GETB .WRD ,P-PSOFF> ,PS?OBJECT>\n\t\t\t\t    <==? .WRD ,W?ONE>>\n\t\t\t\t<COND (<NOT <EQUAL? .WRD ,P-ANAM ,W?ONE>>\n\t\t\t\t       <RFALSE>)\n\t\t\t\t      (T <ACLAUSE-WIN .ADJ> <RETURN>)>)>\n\t\t\t <SET BEG <REST .BEG ,P-WORDLEN>>\n\t\t\t <COND (<EQUAL? .END 0>\n\t\t\t\t<SET END .BEG>\n\t\t\t\t<SETG P-NCN 1>\n\t\t\t\t<PUT ,P-ITBL ,P-NC1 <BACK .BEG 4>>\n\t\t\t\t<PUT ,P-ITBL ,P-NC1L .BEG>)>>)>)>\n   <REPEAT ()\n\t   <COND (<G? <SET CNT <+ .CNT 1>> ,P-ITBLLEN>\n\t\t  <SETG P-MERGED T>\n\t\t  <RTRUE>)\n\t\t (T <PUT ,P-ITBL .CNT <GET ,P-OTBL .CNT>>)>>\n   T>\n\n<ROUTINE ACLAUSE-WIN (ADJ) ;\"TRAP retrofix\" \n\t<PUT ,P-ITBL ,P-VERB <GET ,P-OTBL ,P-VERB>>\n\t<SETG P-CCSRC ,P-OTBL>\n\t<CLAUSE-COPY ,P-ACLAUSE <+ ,P-ACLAUSE 1> .ADJ>\n\t<AND <NOT <==? <GET ,P-OTBL ,P-NC2> 0>> <SETG P-NCN 2>>\n\t<SETG P-ACLAUSE <>>\n\t<RTRUE>>\n\n;\"Print undefined word in input.\n   PTR points to the unknown word in P-LEXV\"   \n\f\n<ROUTINE WORD-PRINT (CNT BUF)\n\t <REPEAT ()\n\t\t <COND (<DLESS? CNT 0> <RETURN>)\n\t\t       (ELSE\n\t\t\t<PRINTC <GETB ,P-INBUF .BUF>>\n\t\t\t<SET BUF <+ .BUF 1>>)>>>\n\n<ROUTINE UNKNOWN-WORD (PTR \"AUX\" BUF)\n\t<TELL \"I don't know the word \\\"\">\n\t<WORD-PRINT <GETB <REST ,P-LEXV <SET BUF <* .PTR 2>>> 2>\n\t\t    <GETB <REST ,P-LEXV .BUF> 3>>\n\t<TELL \".\\\"\" CR>\n\t<SETG QUOTE-FLAG <>>\n\t<SETG P-OFLAG <>>>\n\n<ROUTINE CANT-USE (PTR \"AUX\" BUF)\n\t<TELL \"I can't use the word \\\"\">\n\t<WORD-PRINT <GETB <REST ,P-LEXV <SET BUF <* .PTR 2>>> 2>\n\t\t    <GETB <REST ,P-LEXV .BUF> 3>>\n\t<TELL \"\\\" here.\" CR>\n\t<SETG QUOTE-FLAG <>>\n\t<SETG P-OFLAG <>>>\n\n;\" Perform syntax matching operations, using P-ITBL as the source of\n   the verb and adjectives for this input.  Returns false if no\n   syntax matches, and does it's own orphaning.  If return is true,\n   the syntax is saved in P-SYNTAX.\"\n\n<GLOBAL P-SLOCBITS 0>    \n\n<CONSTANT P-SYNLEN 8>    \n\n<CONSTANT P-SBITS 0>\n\n<CONSTANT P-SPREP1 1>    \n\n<CONSTANT P-SPREP2 2>    \n\n<CONSTANT P-SFWIM1 3>    \n\n<CONSTANT P-SFWIM2 4>    \n\n<CONSTANT P-SLOC1 5>\n\n<CONSTANT P-SLOC2 6>\n\n<CONSTANT P-SACTION 7>   \n\n<CONSTANT P-SONUMS 3>    \n\f\n<ROUTINE SYNTAX-CHECK\n\t(\"AUX\" SYN LEN NUM OBJ (DRIVE1 <>) (DRIVE2 <>) PREP VERB TMP)\n\t<COND (<0? <SET VERB <GET ,P-ITBL ,P-VERB>>>\n\t       <TELL \"I can't find a verb in that sentence!\" CR>\n\t       <RFALSE>)>\n\t<SET SYN <GET ,VERBS <- 255 .VERB>>>\n\t<SET LEN <GETB .SYN 0>>\n\t<SET SYN <REST .SYN>>\n\t<REPEAT ()\n\t\t<SET NUM <BAND <GETB .SYN ,P-SBITS> ,P-SONUMS>>\n\t\t<COND (<G? ,P-NCN .NUM> T)\n\t\t      (<AND <NOT <L? .NUM 1>>\n\t\t\t    <0? ,P-NCN>\n\t\t\t    <OR <0? <SET PREP <GET ,P-ITBL ,P-PREP1>>>\n\t\t\t\t<==? .PREP <GETB .SYN ,P-SPREP1>>>>\n\t\t       <SET DRIVE1 .SYN>)\n\t\t      (<==? <GETB .SYN ,P-SPREP1> <GET ,P-ITBL ,P-PREP1>>\n\t\t       <COND (<AND <==? .NUM 2> <==? ,P-NCN 1>>\n\t\t\t      <SET DRIVE2 .SYN>)\n\t\t\t     (<==? <GETB .SYN ,P-SPREP2>\n\t\t\t\t   <GET ,P-ITBL ,P-PREP2>>\n\t\t\t      <SYNTAX-FOUND .SYN>\n\t\t\t      <RTRUE>)>)>\n\t\t<COND (<DLESS? LEN 1>\n\t\t       <COND (<OR .DRIVE1 .DRIVE2> <RETURN>)\n\t\t\t     (T\n\t\t\t      <TELL \"I don't understand that sentence.\" CR>\n\t\t\t      <RFALSE>)>)\n\t\t      (T\n\t\t       <SET SYN <REST .SYN ,P-SYNLEN>>)>>\n\t<COND (<AND .DRIVE1\n\t\t    <SET OBJ\n\t\t\t <GWIM <GETB .DRIVE1 ,P-SFWIM1>\n\t\t\t       <GETB .DRIVE1 ,P-SLOC1>\n\t\t\t       <GETB .DRIVE1 ,P-SPREP1>>>>\n\t       <PUT ,P-PRSO ,P-MATCHLEN 1>\n\t       <PUT ,P-PRSO 1 .OBJ>\n\t       <SYNTAX-FOUND .DRIVE1>)\n\t      (<AND .DRIVE2\n\t\t    <SET OBJ\n\t\t\t <GWIM <GETB .DRIVE2 ,P-SFWIM2>\n\t\t\t       <GETB .DRIVE2 ,P-SLOC2>\n\t\t\t       <GETB .DRIVE2 ,P-SPREP2>>>>\n\t       <PUT ,P-PRSI ,P-MATCHLEN 1>\n\t       <PUT ,P-PRSI 1 .OBJ>\n\t       <SYNTAX-FOUND .DRIVE2>)\n\t      (<EQUAL? .VERB ,ACT?FIND>\n\t       <TELL \"I can't answer that question.\" CR>\n\t       <RFALSE>)\n\t      (<NOT <==? ,WINNER ,ADVENTURER>>\n\t       <CANT-ORPHAN>)\n\t      (T\n\t       <ORPHAN .DRIVE1 .DRIVE2>\n\t       <TELL \"What do you want to \">\n\t       <SET TMP <GET ,P-OTBL ,P-VERBN>>\n\t       <COND (<==? .TMP 0>\n\t\t      <TELL \"tell\">)\n\t\t     (<0? <GETB ,P-VTBL 2>>\n\t\t      <PRINTB <GET .TMP 0>>)\n\t\t     (T\n\t\t      <WORD-PRINT <GETB .TMP 2> <GETB .TMP 3>>\n\t\t      <PUTB ,P-VTBL 2 0>)>\n\t       <COND (.DRIVE2\n\t\t      <CLAUSE-PRINT ,P-NC1 ,P-NC1L>)>\n\t       <SETG P-OFLAG T>\n\t       <PREP-PRINT <COND (.DRIVE1 <GETB .DRIVE1 ,P-SPREP1>)\n\t\t\t\t (T <GETB .DRIVE2 ,P-SPREP2>)>>\n\t       <TELL \"?\" CR>\n\t       <RFALSE>)>> \n\f\n<ROUTINE CANT-ORPHAN ()\n\t <TELL \"\\\"I don't understand! What are you referring to?\\\"\" CR>\n\t <RFALSE>>\n\n<ROUTINE ORPHAN (D1 D2 \"AUX\" (CNT -1))\n\t<PUT ,P-OCLAUSE ,P-MATCHLEN 0>\n\t<SETG P-CCSRC ,P-ITBL>\n\t<REPEAT ()\n\t\t<COND (<IGRTR? CNT ,P-ITBLLEN> <RETURN>)\n\t\t      (T <PUT ,P-OTBL .CNT <GET ,P-ITBL .CNT>>)>>\n\t<COND (<==? ,P-NCN 2>\n\t       <CLAUSE-COPY ,P-NC2 ,P-NC2L>)>\n\t<COND (<NOT <L? ,P-NCN 1>>\n\t       <CLAUSE-COPY ,P-NC1 ,P-NC1L>)>\n\t<COND (.D1\n\t       <PUT ,P-OTBL ,P-PREP1 <GETB .D1 ,P-SPREP1>>\n\t       <PUT ,P-OTBL ,P-NC1 1>)\n\t      (.D2\n\t       <PUT ,P-OTBL ,P-PREP2 <GETB .D2 ,P-SPREP2>>\n\t       <PUT ,P-OTBL ,P-NC2 1>)>> \n \n<ROUTINE CLAUSE-PRINT (BPTR EPTR \"OPTIONAL\" (THE? T)) \n\t<BUFFER-PRINT <GET ,P-ITBL .BPTR> <GET ,P-ITBL .EPTR> .THE?>>    \n \n<ROUTINE BUFFER-PRINT (BEG END CP \"AUX\" (NOSP <>) WRD (FIRST?? T) (PN <>))\n\t <REPEAT ()\n\t\t<COND (<==? .BEG .END>\n\t\t       <RETURN>)\n\t\t      (T\n\t\t       <COND (.NOSP\n\t\t\t      <SET NOSP <>>)\n\t\t\t     (T\n\t\t\t      <TELL \" \">)>\n\t\t       <COND (<==? <SET WRD <GET .BEG 0>> ,W?PERIOD>\n\t\t\t      <SET NOSP T>)\n\t\t\t     (<EQUAL? .WRD ,W?FLOYD ,W?BLATHER>\n\t\t\t      <CAPITALIZE .BEG>\n\t\t\t      <SET PN T>)\n\t\t\t     (T\n\t\t\t      <COND (<AND .FIRST?? <NOT .PN> .CP>\n\t\t\t\t     <TELL \"the \">)>\n\t\t\t      <COND (,P-OFLAG <PRINTB .WRD>)\n\t\t\t\t    (<AND <==? .WRD ,W?IT>\n\t\t\t\t\t  <==? ,P-IT-LOC ,HERE>>\n\t\t\t\t     <PRINTD ,P-IT-OBJECT>)\n\t\t\t\t    (T\n\t\t\t\t     <WORD-PRINT <GETB .BEG 2>\n\t\t\t\t\t\t <GETB .BEG 3>>)>\n\t\t\t      <SET FIRST?? <>>)>)>\n\t\t<SET BEG <REST .BEG ,P-WORDLEN>>>>\n\n<ROUTINE CAPITALIZE (PTR)\n\t <PRINTC <- <GETB ,P-INBUF <GETB .PTR 3>> 32>>\n\t <WORD-PRINT <- <GETB .PTR 2> 1> <+ <GETB .PTR 3> 1>>>\n\n<ROUTINE PREP-PRINT (PREP \"AUX\" WRD)\n\t<COND (<NOT <0? .PREP>>\n\t       <TELL \" \">\n\t       <SET WRD <PREP-FIND .PREP>>\n\t       <COND ;(<==? .WRD ,W?AGAINST> <TELL \"against\">)\n\t\t     (T <PRINTB .WRD>)>)>>    \n \n<ROUTINE CLAUSE-COPY (BPTR EPTR \"OPTIONAL\" (INSRT <>) \"AUX\" BEG END)\n\t<SET BEG <GET ,P-CCSRC .BPTR>>\n\t<SET END <GET ,P-CCSRC .EPTR>>\n\t<PUT ,P-OTBL\n\t     .BPTR\n\t     <REST ,P-OCLAUSE\n\t\t   <+ <* <GET ,P-OCLAUSE ,P-MATCHLEN> ,P-LEXELEN> 2>>>\n\t<REPEAT ()\n\t   <COND (<==? .BEG .END>\n\t\t  <PUT ,P-OTBL .EPTR\n\t\t       <REST ,P-OCLAUSE\n\t\t\t    <+ <* <GET ,P-OCLAUSE ,P-MATCHLEN> ,P-LEXELEN> 2>>>\n\t\t  <RETURN>)\n\t\t (T\n\t\t  <COND (<AND .INSRT <==? ,P-ANAM <GET .BEG 0>>>\n\t\t\t <CLAUSE-ADD .INSRT>)>\n\t\t  <CLAUSE-ADD <GET .BEG 0>>)>\n\t   <SET BEG <REST .BEG ,P-WORDLEN>>>>  \n\f\n<ROUTINE CLAUSE-ADD (WRD \"AUX\" PTR)\n\t<SET PTR <+ <GET ,P-OCLAUSE ,P-MATCHLEN> 2>>\n\t<PUT ,P-OCLAUSE <- .PTR 1> .WRD>\n\t<PUT ,P-OCLAUSE .PTR 0>\n\t<PUT ,P-OCLAUSE ,P-MATCHLEN .PTR>>   \n \n<ROUTINE PREP-FIND (PREP \"AUX\" (CNT 0) SIZE)\n\t<SET SIZE <* <GET ,PREPOSITIONS 0> 2>>\n\t<REPEAT ()\n\t\t<COND (<IGRTR? CNT .SIZE>\n\t\t       <RFALSE>)\n\t\t      (<==? <GET ,PREPOSITIONS .CNT> .PREP>\n\t\t       <RETURN <GET ,PREPOSITIONS <- .CNT 1>>>)>>>  \n \n<ROUTINE SYNTAX-FOUND (SYN)\n\t<SETG P-SYNTAX .SYN>\n\t<SETG PRSA <GETB .SYN ,P-SACTION>>>   \n\n<GLOBAL P-GWIMBIT 0>\n\n<ROUTINE GWIM (GBIT LBIT PREP \"AUX\" OBJ)\n\t<COND (<==? .GBIT ,RMUNGBIT>\n\t       <RETURN ,ROOMS>)>\n\t<SETG P-GWIMBIT .GBIT>\n\t<SETG P-SLOCBITS .LBIT>\n\t<PUT ,P-MERGE ,P-MATCHLEN 0>\n\t<COND (<GET-OBJECT ,P-MERGE <>>\n\t       <SETG P-GWIMBIT 0>\n\t       <COND (<==? <GET ,P-MERGE ,P-MATCHLEN> 1>\n\t\t      <SET OBJ <GET ,P-MERGE 1>>\n\t\t      <COND (<AND <FSET? .OBJ ,VEHBIT>\n\t\t\t\t  <EQUAL? .PREP ,PR?DOWN>>\n\t\t\t     <SET PREP ,PR?ON>)>\n\t\t      <TELL \"(\">\n\t\t      <COND (<NOT <0? .PREP>>\n\t\t\t     <PRINTB <PREP-FIND .PREP>>\n\t\t\t     <TELL \" the \">)>\n\t\t      <TELL D .OBJ \")\" CR>\n\t\t      .OBJ)>)\n\t      (T\n\t       <SETG P-GWIMBIT 0> <RFALSE>)>>   \n \n<ROUTINE SNARF-OBJECTS (\"AUX\" PTR)\n\t<COND (<NOT <==? <SET PTR <GET ,P-ITBL ,P-NC1>> 0>>\n\t       <SETG P-SLOCBITS <GETB ,P-SYNTAX ,P-SLOC1>>\n\t       <OR <SNARFEM .PTR <GET ,P-ITBL ,P-NC1L> ,P-PRSO> <RFALSE>>\n\t       <OR <0? <GET ,P-BUTS ,P-MATCHLEN>>\n\t\t   <SETG P-PRSO <BUT-MERGE ,P-PRSO>>>)>\n\t<COND (<NOT <==? <SET PTR <GET ,P-ITBL ,P-NC2>> 0>>\n\t       <SETG P-SLOCBITS <GETB ,P-SYNTAX ,P-SLOC2>>\n\t       <OR <SNARFEM .PTR <GET ,P-ITBL ,P-NC2L> ,P-PRSI> <RFALSE>>\n\t       <COND (<NOT <0? <GET ,P-BUTS ,P-MATCHLEN>>>\n\t\t      <COND (<==? <GET ,P-PRSI ,P-MATCHLEN> 1>\n\t\t\t     <SETG P-PRSO <BUT-MERGE ,P-PRSO>>)\n\t\t\t    (T <SETG P-PRSI <BUT-MERGE ,P-PRSI>>)>)>)>\n\t<RTRUE>>  \n\f\n<ROUTINE BUT-MERGE (TBL \"AUX\" LEN BUTLEN (CNT 1) (MATCHES 0) OBJ NTBL)\n\t<SET LEN <GET .TBL ,P-MATCHLEN>>\n\t<PUT ,P-MERGE ,P-MATCHLEN 0>\n\t<REPEAT ()\n\t\t<COND (<DLESS? LEN 0>\n\t\t       <RETURN>)\n\t\t      (<ZMEMQ <SET OBJ <GET .TBL .CNT>> ,P-BUTS>)\n\t\t      (T\n\t\t       <PUT ,P-MERGE <+ .MATCHES 1> .OBJ>\n\t\t       <SET MATCHES <+ .MATCHES 1>>)>\n\t\t<SET CNT <+ .CNT 1>>>\n\t<PUT ,P-MERGE ,P-MATCHLEN .MATCHES>\n\t<SET NTBL ,P-MERGE>\n\t<SETG P-MERGE .TBL>\n\t.NTBL>    \n\n<GLOBAL P-NAM <>>   \n\n<GLOBAL P-ADJ <>>   \n\n<GLOBAL P-ADJN <>>  \n\n<GLOBAL P-PRSO <ITABLE NONE 50>>   \n\n<GLOBAL P-PRSI <ITABLE NONE 50>>   \n\n<GLOBAL P-BUTS <ITABLE NONE 50>>   \n\n<GLOBAL P-MERGE <ITABLE NONE 50>>  \n\n<GLOBAL P-OCLAUSE <ITABLE NONE 50>>\n\n<GLOBAL P-MATCHLEN 0>    \n\n<GLOBAL P-GETFLAGS 0>    \n\n<CONSTANT P-ALL 1>  \n\n<CONSTANT P-ONE 2>  \n\n<CONSTANT P-INHIBIT 4>   \n\f\n<GLOBAL P-CSPTR <>>\n<GLOBAL P-CEPTR <>>\n<GLOBAL P-AND <>> ;\"WHICH retrofix\"\n\n<ROUTINE SNARFEM (PTR EPTR TBL \"AUX\" (BUT <>) LEN WV WORD NW)\n   <SETG P-AND <>> ;\"WHICH retrofix\"\n   <SETG P-GETFLAGS 0>\n   <SETG P-CSPTR .PTR>\n   <SETG P-CEPTR .EPTR>\n   <PUT ,P-BUTS ,P-MATCHLEN 0>\n   <PUT .TBL ,P-MATCHLEN 0>\n   <SET WORD <GET .PTR 0>>\n   <REPEAT ()\n\t   <COND (<==? .PTR .EPTR> <RETURN <GET-OBJECT <OR .BUT .TBL>>>)\n\t\t (T\n\t\t  <SET NW <GET .PTR ,P-LEXELEN>>\n\t\t  <COND (<EQUAL? .WORD ,W?ALL ,W?BOTH>\n\t\t\t <SETG P-GETFLAGS ,P-ALL>\n\t\t\t <COND (<==? .NW ,W?OF>\n\t\t\t\t<SET PTR <REST .PTR ,P-WORDLEN>>)>)\n\t\t\t(<EQUAL? .WORD ,W?BUT ,W?EXCEPT>\n\t\t\t <OR <GET-OBJECT <OR .BUT .TBL>> <RFALSE>>\n\t\t\t <SET BUT ,P-BUTS>\n\t\t\t <PUT .BUT ,P-MATCHLEN 0>)\n\t\t\t(<EQUAL? .WORD ,W?A ,W?ONE>\n\t\t\t <COND (<NOT ,P-ADJ>\n\t\t\t\t<SETG P-GETFLAGS ,P-ONE>\n\t\t\t\t<COND (<==? .NW ,W?OF>\n\t\t\t\t       <SET PTR <REST .PTR ,P-WORDLEN>>)>)\n\t\t\t       (T\n\t\t\t\t<SETG P-NAM ,P-ONEOBJ>\n\t\t\t\t<OR <GET-OBJECT <OR .BUT .TBL>> <RFALSE>>\n\t\t\t\t<AND <0? .NW> <RTRUE>>)>)\n\t\t\t(<AND <EQUAL? .WORD ,W?AND ,W?COMMA>\n\t\t\t      <NOT <EQUAL? .NW ,W?AND ,W?COMMA>>>\n\t\t\t <SETG P-AND T> ;\"WHICH retrofix\"\n\t\t\t <OR <GET-OBJECT <OR .BUT .TBL>> <RFALSE>>\n\t\t\t T)\n\t\t\t(<AND <WT? .WORD ,PS?PREPOSITION>\n\t\t\t      <==? .PTR ,P-CSPTR>>\n\t\t\t <SETG P-CSPTR <REST ,P-CSPTR ,P-WORDLEN>>)\n\t\t\t(<WT? .WORD ,PS?BUZZ-WORD>)\n\t\t\t(<EQUAL? .WORD ,W?AND ,W?COMMA>)\n\t\t\t(<==? .WORD ,W?OF>\n\t\t\t <COND (<0? ,P-GETFLAGS>\n\t\t\t\t<SETG P-GETFLAGS ,P-INHIBIT>)>)\n\t\t\t(<AND <SET WV <WT? .WORD ,PS?ADJECTIVE ,P1?ADJECTIVE>>\n\t\t\t      <ADJ-CHECK>>\n\t\t\t ;\"Used to check for P-ADJ being <> as well\"\n\t\t\t <SETG P-ADJ .WV>\n\t\t\t <SETG P-ADJN .WORD>\n\t\t\t <SETG P-ADJECTIVE .WORD>)\n\t\t\t(<WT? .WORD ,PS?OBJECT ,P1?OBJECT>\n\t\t\t <SETG P-NAM .WORD>\n\t\t\t <SETG P-ONEOBJ .WORD>)>)>\n\t   <COND (<NOT <==? .PTR .EPTR>>\n\t\t  <SET PTR <REST .PTR ,P-WORDLEN>>\n\t\t  <SET WORD .NW>)>>>   \n \n<ROUTINE ADJ-CHECK ()\n\t <COND (<NOT ,P-ADJ>\n\t\t<RTRUE>)\n\t       (<OR <EQUAL? ,P-ADJ ,A?FIRST ,A?SECOND ,A?THIRD>\n\t\t    <EQUAL? ,P-ADJ ,A?FOURTH ,A?OLD ,A?NEW>\n\t\t    <EQUAL? ,P-ADJ ,A?SEND ,A?RECEIVE ,A?KITCHEN>\n\t\t    <EQUAL? ,P-ADJ ,A?UPPER ,A?LOWER ,A?SHUTTL>\n\t\t    <EQUAL? ,P-ADJ ,A?ELEVATOR>\n\t\t    <EQUAL? ,P-ADJ ,A?SQUARE ,A?ROUND ,A?GOOD>\n\t\t    <EQUAL? ,P-ADJ ,A?SHINY ,A?CRACKED ,A?FRIED>\n\t\t    <EQUAL? ,P-ADJ ,A?TELEPO ,A?MINI ,A?MINIAT>>\n\t\t<RFALSE>)\n\t       (T\n\t\t<RTRUE>)>>\n\n<CONSTANT SH 128>   \n \n<CONSTANT SC 64>    \n \n<CONSTANT SIR 32>   \n \n<CONSTANT SOG 16>   \n \n<CONSTANT STAKE 8>  \n \n<CONSTANT SMANY 4>  \n \n<CONSTANT SHAVE 2>  \n\f\n<ROUTINE GET-OBJECT\n (TBL \"OPTIONAL\" (VRB T) \"AUX\" BITS LEN XBITS TLEN (GCHECK <>) (OLEN 0) OBJ)\n <SET XBITS ,P-SLOCBITS>\n <SET TLEN <GET .TBL ,P-MATCHLEN>>\n <COND (<BTST ,P-GETFLAGS ,P-INHIBIT> <RTRUE>)>\n <COND (<AND <NOT ,P-NAM> ,P-ADJ <WT? ,P-ADJN ,PS?OBJECT ,P1?OBJECT>>\n\t<SETG P-NAM ,P-ADJN>\n\t<SETG P-ADJ <>>)>\n <COND (<AND <NOT ,P-NAM>\n\t     <NOT ,P-ADJ>\n\t     <NOT <==? ,P-GETFLAGS ,P-ALL>>\n\t     <0? ,P-GWIMBIT>>\n\t<COND (.VRB\n\t       <TELL \"I couldn't find a noun in that sentence!\" CR>)>\n\t<RFALSE>)>\n <COND (<OR <NOT <==? ,P-GETFLAGS ,P-ALL>> <0? ,P-SLOCBITS>>\n\t<SETG P-SLOCBITS -1>)>\n <SETG P-TABLE .TBL>\n <PROG ()\n  <COND (.GCHECK <GLOBAL-CHECK .TBL>)\n\t(T\n\t <COND (,LIT\n\t\t<COND (<NOT <EQUAL? ,WINNER ,ADVENTURER>>\n\t\t       <FCLEAR ,WINNER ,OPENBIT>)>\n\t\t<DO-SL ,HERE ,SOG ,SIR>\n\t\t<COND (<NOT <EQUAL? ,WINNER ,ADVENTURER>>\n\t\t       <FSET ,WINNER ,OPENBIT>)>)>\n\t <DO-SL ,WINNER ,SH ,SC>\n\t <COND (<AND <NOT <EQUAL? ,WINNER ,ADVENTURER>>\n\t\t     <NOT <EQUAL? ,P-GETFLAGS ,P-ALL>>>\n\t\t<DO-SL ,ADVENTURER ,SH ,SC>)>)>\n  <SET LEN <- <GET .TBL ,P-MATCHLEN> .TLEN>>\n  <COND (<BTST ,P-GETFLAGS ,P-ALL>)\n\t(<AND <BTST ,P-GETFLAGS ,P-ONE>\n\t      <NOT <0? .LEN>>>\n\t <COND (<NOT <==? .LEN 1>>\n\t\t<PUT .TBL 1 <GET .TBL <RANDOM .LEN>>>\n\t\t<TELL \"(How about the \">\n\t\t<PRINTD <GET .TBL 1>>\n\t\t<TELL \"?)\" CR>)>\n\t <PUT .TBL ,P-MATCHLEN 1>)\n\t(<OR <G? .LEN 1>\n\t     <AND <0? .LEN> <NOT <==? ,P-SLOCBITS -1>>>>\n\t <COND (<==? ,P-SLOCBITS -1>\n\t\t<SETG P-SLOCBITS .XBITS>\n\t\t<SET OLEN .LEN>\n\t\t<PUT .TBL ,P-MATCHLEN <- <GET .TBL ,P-MATCHLEN> .LEN>>\n\t\t<AGAIN>)\n\t       (T\n\t\t<COND (<0? .LEN> <SET LEN .OLEN>)>\n\t\t<COND (<NOT <==? ,WINNER ,ADVENTURER>>\n\t\t       <CANT-ORPHAN>\n\t\t       <RFALSE>)\n\t\t      (<AND .VRB ,P-NAM>\n\t\t       <WHICH-PRINT .TLEN .LEN .TBL>\n\t\t       <SETG P-ACLAUSE\n\t\t\t     <COND (<==? .TBL ,P-PRSO> ,P-NC1)\n\t\t\t\t   (T ,P-NC2)>>\n\t\t       <SETG P-AADJ ,P-ADJ>\n\t\t       <SETG P-ANAM ,P-NAM>\n\t\t       <ORPHAN <> <>>\n\t\t       <SETG P-OFLAG T>)\n\t\t      (.VRB\n\t\t       <TELL \"I couldn't find a noun in that sentence!\" CR>)>\n\t\t<SETG P-NAM <>>\n\t\t<SETG P-ADJ <>>\n\t\t<RFALSE>)>)\n\t(<AND <0? .LEN> .GCHECK>\n\t <COND (.VRB\n\t\t<SETG P-SLOCBITS .XBITS>\n\t\t<COND (<OR ,LIT\n\t\t\t   <EQUAL? ,P-NAM ,W?GRUE>>\n\t\t       ;\"Changed 6/10/83 - MARC\"\n\t\t       <OBJ-FOUND ,NOT-HERE-OBJECT .TBL>\n\t\t       <SETG P-XNAM ,P-NAM>\n\t\t       <SETG P-XADJ ,P-ADJ>\n\t\t       <SETG P-XADJN ,P-ADJN>\n\t\t       <SETG P-NAM <>>\n\t\t       <SETG P-ADJ <>>\n\t\t       <SETG P-ADJN <>>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL \"It's too dark to see!\" CR>)>)>\n\t <SETG P-NAM <>>\n\t <SETG P-ADJ <>>\n\t <RFALSE>)\n\t(<0? .LEN> <SET GCHECK T> <AGAIN>)>\n  <SETG P-SLOCBITS .XBITS>\n  <SETG P-NAM <>>\n  <SETG P-ADJ <>>\n  <RTRUE>>>\n\n<ROUTINE MOBY-FIND (TBL \"AUX\" FOO LEN)\n\t <SETG P-SLOCBITS -1>\n\t <SETG P-NAM ,P-XNAM>\n\t <SETG P-ADJ ,P-XADJ>\n\t <PUT .TBL ,P-MATCHLEN 0>\n\t <SET FOO <FIRST? ,ROOMS>>\n\t <REPEAT ()\n\t\t <COND (<NOT .FOO> <RETURN>)\n\t\t       (T\n\t\t\t<SEARCH-LIST .FOO .TBL ,P-SRCALL>\n\t\t\t<SET FOO <NEXT? .FOO>>)>>\n\t <COND (<EQUAL? <SET LEN <GET .TBL ,P-MATCHLEN>> 0>\n\t\t<DO-SL ,LOCAL-GLOBALS 1 1>)>\n\t <COND (<EQUAL? <SET LEN <GET .TBL ,P-MATCHLEN>> 0>\n\t\t<DO-SL ,ROOMS 1 1>)>\n\t <COND (<EQUAL? <SET LEN <GET .TBL ,P-MATCHLEN>> 1>\n\t\t<SETG P-MOBY-FOUND <GET .TBL 1>>)>\n\t <SETG P-NAM <>>\n\t <SETG P-ADJ <>>\n\t .LEN>\n\n<GLOBAL P-MOBY-FOUND <>>   \n<GLOBAL P-XNAM <>>\n<GLOBAL P-XADJ <>>\n<GLOBAL P-XADJN <>>   \n\n<ROUTINE WHICH-PRINT (TLEN LEN TBL \"AUX\" OBJ RLEN)\n\t <SET RLEN .LEN>\n\t <TELL \"Which\">\n         <COND (<OR ,P-OFLAG\n\t\t    ,P-MERGED\n\t\t    ,P-AND ;\"WHICH retrofix\">\n\t\t<TELL \" \">\n\t\t<PRINTB ,P-NAM>)\n\t       (<==? .TBL ,P-PRSO>\n\t\t<CLAUSE-PRINT ,P-NC1 ,P-NC1L <>>)\n\t       (T\n\t\t<CLAUSE-PRINT ,P-NC2 ,P-NC2L <>>)>\n\t <TELL \" do you mean, \">\n\t <REPEAT ()\n\t\t <SET TLEN <+ .TLEN 1>>\n\t\t <SET OBJ <GET .TBL .TLEN>>\n\t\t <TELL \"the \">\n\t\t <TELL D .OBJ>\n\t\t <COND (<==? .LEN 2>\n\t\t        <COND (<NOT <==? .RLEN 2>>\n\t\t\t       <TELL \",\">)>\n\t\t        <TELL \" or \">)\n\t\t       (<G? .LEN 2>\n\t\t\t<TELL \", \">)>\n\t\t <COND (<L? <SET LEN <- .LEN 1>> 1>\n\t\t        <TELL \"?\" CR>\n\t\t        <RETURN>)>>>\n\n\f\n<ROUTINE GLOBAL-CHECK (TBL \"AUX\" LEN RMG RMGL (CNT 0) OBJ OBITS FOO)\n\t<SET LEN <GET .TBL ,P-MATCHLEN>>\n\t<SET OBITS ,P-SLOCBITS>\n\t<COND (<SET RMG <GETPT ,HERE ,P?GLOBAL>>\n\t       <SET RMGL <- <PTSIZE .RMG> 1>>\n\t       <REPEAT ()\n\t\t       <COND (<THIS-IT? <SET OBJ <GETB .RMG .CNT>> .TBL>\n\t\t\t      <OBJ-FOUND .OBJ .TBL>)>\n\t\t       <COND (<IGRTR? CNT .RMGL> <RETURN>)>>)>\n\t<COND (<SET RMG <GETPT ,HERE ,P?PSEUDO>>\n\t       <SET RMGL <- </ <PTSIZE .RMG> 4> 1>>\n\t       <SET CNT 0>\n\t       <REPEAT ()\n\t\t       <COND (<==? ,P-NAM <GET .RMG <* .CNT 2>>>\n\t\t\t      <SETG LAST-PSEUDO-LOC ,HERE>\n\t\t\t      <PUTP ,PSEUDO-OBJECT\n\t\t\t\t    ,P?ACTION\n\t\t\t\t    <GET .RMG <+ <* .CNT 2> 1>>>\n\t\t\t      <SET FOO\n\t\t\t\t   <BACK <GETPT ,PSEUDO-OBJECT ,P?ACTION> 5>>\n\t\t\t      <PUT .FOO 0 <GET ,P-NAM 0>>\n\t\t\t      <PUT .FOO 1 <GET ,P-NAM 1>>\n\t\t\t      <OBJ-FOUND ,PSEUDO-OBJECT .TBL>\n\t\t\t      <RETURN>)\n\t\t             (<IGRTR? CNT .RMGL> <RETURN>)>>)>\n\t<COND (<==? <GET .TBL ,P-MATCHLEN> .LEN>\n\t       <SETG P-SLOCBITS -1>\n\t       <SETG P-TABLE .TBL>\n\t       <DO-SL ,GLOBAL-OBJECTS 1 1>\n\t       <SETG P-SLOCBITS .OBITS>\n\t       <COND (<0? <GET .TBL ,P-MATCHLEN>>\n\t\t      <COND (<OR <EQUAL? ,PRSA ,V?LOOK-INSIDE ,V?SEARCH>\n\t\t\t\t <EQUAL? ,PRSA ,V?EXAMINE ,V?FIND ,V?THROUGH>>\n\t\t\t     <DO-SL ,ROOMS 1 1>)>)>)>>\n \n<ROUTINE DO-SL (OBJ BIT1 BIT2)\n\t<COND (<BTST ,P-SLOCBITS <+ .BIT1 .BIT2>>\n\t       <SEARCH-LIST .OBJ ,P-TABLE ,P-SRCALL>)\n\t      (T\n\t       <COND (<BTST ,P-SLOCBITS .BIT1>\n\t\t      <SEARCH-LIST .OBJ ,P-TABLE ,P-SRCTOP>)\n\t\t     (<BTST ,P-SLOCBITS .BIT2>\n\t\t      <SEARCH-LIST .OBJ ,P-TABLE ,P-SRCBOT>)\n\t\t     (T\n\t\t      <RTRUE>)>)>>  \n\n<CONSTANT P-SRCBOT 2>    \n\n<CONSTANT P-SRCTOP 0>    \n\n<CONSTANT P-SRCALL 1>    \n\n<ROUTINE SEARCH-LIST (OBJ TBL LVL \"AUX\" FLS NOBJ)\n\t<COND (<SET OBJ <FIRST? .OBJ>>\n\t       <REPEAT ()\n\t\t       <COND (<AND <NOT <==? .LVL ,P-SRCBOT>>\n\t\t\t\t   <GETPT .OBJ ,P?SYNONYM>\n\t\t\t\t   <THIS-IT? .OBJ .TBL>>\n\t\t\t      <OBJ-FOUND .OBJ .TBL>)>\n\t\t       <COND (<AND <NOT <FSET? .OBJ ,INVISIBLE>>\n\t\t\t\t   <OR <NOT <==? .LVL ,P-SRCTOP>>\n\t\t\t\t       <FSET? .OBJ ,SEARCHBIT>\n\t\t\t\t       <FSET? .OBJ ,SURFACEBIT>>\n\t\t\t\t   <SET NOBJ <FIRST? .OBJ>>\n\t\t\t\t   <OR <FSET? .OBJ ,OPENBIT>\n\t\t\t\t       <FSET? .OBJ ,TRANSBIT>>>\n\t\t\t      <COND (<AND <==? .LVL ,P-SRCTOP>\n\t\t\t\t\t  <FSET? .OBJ ,SEARCHBIT>\n\t\t\t\t\t  <==? ,P-GETFLAGS ,P-ALL>>\n\t\t\t\t     T)\n\t\t\t\t    (T\n\t\t\t\t     <SET FLS\n\t\t\t\t        <SEARCH-LIST .OBJ\n\t\t\t\t\t\t     .TBL\n\t\t\t\t\t\t<COND (<FSET? .OBJ ,SURFACEBIT>\n\t\t\t\t\t\t       ,P-SRCALL)\n\t\t\t\t\t\t      (<FSET? .OBJ ,SEARCHBIT>\n\t\t\t\t\t\t       ,P-SRCALL)\n\t\t\t\t\t\t      (T ,P-SRCTOP)>>>)>)>\n\t\t       <COND (<SET OBJ <NEXT? .OBJ>>) (T <RETURN>)>>)>> \n \n<ROUTINE OBJ-FOUND (OBJ TBL \"AUX\" PTR)\n\t<SET PTR <GET .TBL ,P-MATCHLEN>>\n\t<PUT .TBL <+ .PTR 1> .OBJ>\n\t<PUT .TBL ,P-MATCHLEN <+ .PTR 1>>>\n\n<ROUTINE TAKE-CHECK () \n\t<AND <ITAKE-CHECK ,P-PRSO <GETB ,P-SYNTAX ,P-SLOC1>>\n\t     <ITAKE-CHECK ,P-PRSI <GETB ,P-SYNTAX ,P-SLOC2>>>> \n\n<ROUTINE ITAKE-CHECK (TBL IBITS \"AUX\" PTR OBJ TAKEN)\n\t <COND (<AND <SET PTR <GET .TBL ,P-MATCHLEN>>\n\t\t     <OR <BTST .IBITS ,SHAVE>\n\t\t\t <BTST .IBITS ,STAKE>>>\n\t\t<REPEAT ()\n\t\t\t<COND (<L? <SET PTR <- .PTR 1>> 0> <RETURN>)\n\t\t\t      (T\n\t\t\t       <SET OBJ <GET .TBL <+ .PTR 1>>>\n\t\t\t       <COND (<==? .OBJ ,IT> <SET OBJ ,P-IT-OBJECT>)>\n\t\t\t       <COND (<AND <NOT <HELD? .OBJ>>\n\t\t\t\t\t   <NOT <==? .OBJ ,HANDS>>>\n\t\t\t\t      <SETG PRSO .OBJ>\n\t\t\t\t      <COND (<FSET? .OBJ ,TRYTAKEBIT>\n\t\t\t\t\t     <SET TAKEN T>)\n\t\t\t\t\t    (<NOT <==? ,WINNER ,ADVENTURER>>\n\t\t\t\t\t     <SET TAKEN <>>)\n\t\t\t\t\t    (<AND <BTST .IBITS ,STAKE>\n\t\t\t\t\t\t  <==? <ITAKE <>> T>>\n\t\t\t\t\t     <SET TAKEN <>>)\n\t\t\t\t\t    (T <SET TAKEN T>)>\n\t\t\t\t      <COND (<AND .TAKEN <BTST .IBITS ,SHAVE>>\n\t\t\t\t\t     <COND (<EQUAL? .OBJ\n\t\t\t\t\t\t\t    ,NOT-HERE-OBJECT>\n\t\t\t\t\t\t    <TELL\n\"You don't have that!\" CR>\n\t\t\t\t\t\t    <RFALSE>)>\n\t\t\t\t\t     <TELL \"You don't have the \">\n\t\t\t\t\t     <PRINTD .OBJ>\n\t\t\t\t\t     <TELL \".\" CR>\n\t\t\t\t\t     <THIS-IS-IT .OBJ>\n\t\t\t\t\t     <RFALSE>)\n\t\t\t\t\t    (<AND <NOT .TAKEN>\n\t\t\t\t\t\t  <==? ,WINNER ,ADVENTURER>>\n\t\t\t\t\t     <TELL\n\"(Taking the \" D .OBJ \" first)\" CR>)>)>)>>)\n\t       (T)>>\n\n<ROUTINE HERE? (CAN)\n\t <REPEAT ()\n\t\t <SET CAN <LOC .CAN>>\n\t\t <COND (<NOT .CAN> <RETURN>)\n\t\t       (<==? .CAN ,HERE> <RTRUE>)>>\n\t <COND (<GLOBAL-IN? .CAN ,HERE> <RTRUE>)\n\t       (<EQUAL? .CAN ,PSEUDO-OBJECT> <RTRUE>)>\n\t <RFALSE>>\n\n<ROUTINE HELD? (CAN)\n\t <REPEAT ()\n\t\t <SET CAN <LOC .CAN>>\n\t\t <COND (<NOT .CAN> <RFALSE>)\n\t\t       (<==? .CAN ,WINNER> <RTRUE>)>>>\n\n<ROUTINE MANY-CHECK (\"AUX\" (LOSS <>) TMP)\n\t<COND (<AND <G? <GET ,P-PRSO ,P-MATCHLEN> 1>\n\t\t    <NOT <BTST <GETB ,P-SYNTAX ,P-SLOC1> ,SMANY>>>\n\t       <SET LOSS 1>)\n\t      (<AND <G? <GET ,P-PRSI ,P-MATCHLEN> 1>\n\t\t    <NOT <BTST <GETB ,P-SYNTAX ,P-SLOC2> ,SMANY>>>\n\t       <SET LOSS 2>)>\n\t<COND (.LOSS\n\t       <TELL \"I can't use multiple \">\n\t       <COND (<==? .LOSS 2> <TELL \"in\">)>\n\t       <TELL \"direct objects with \\\"\">\n\t       <SET TMP <GET ,P-ITBL ,P-VERBN>>\n\t       <COND (<0? .TMP> <TELL \"tell\">)\n\t\t     (<OR ,P-OFLAG ,P-MERGED>\n\t\t      <PRINTB <GET .TMP 0>>)\n\t\t     (T\n\t\t      <WORD-PRINT <GETB .TMP 2> <GETB .TMP 3>>)>\n\t       <TELL \".\\\"\" CR>\n\t       <RFALSE>)\n\t      (T)>>  \n \n<ROUTINE ZMEMQ (ITM TBL \"OPTIONAL\" (SIZE -1) \"AUX\" (CNT 1)) \n\t<COND (<NOT .TBL> <RFALSE>)>\n\t<COND (<NOT <L? .SIZE 0>> <SET CNT 0>)\n\t      (ELSE <SET SIZE <GET .TBL 0>>)>\n\t<REPEAT ()\n\t\t<COND (<==? .ITM <GET .TBL .CNT>> <RTRUE>)\n\t\t      (<IGRTR? CNT .SIZE> <RFALSE>)>>>    \n\f\n<ROUTINE ZMEMQB (ITM TBL SIZE \"AUX\" (CNT 0))\n\t<REPEAT ()\n\t\t<COND (<==? .ITM <GETB .TBL .CNT>> <RTRUE>)\n\t\t      (<IGRTR? CNT .SIZE> <RFALSE>)>>>\n\n<ROUTINE LIT? (RM \"AUX\" OHERE (LIT <>))\n\t<SETG P-GWIMBIT ,ONBIT>\n\t<SET OHERE ,HERE>\n\t<SETG HERE .RM>\n\t<COND (<FSET? .RM ,ONBIT>\n\t       <SET LIT T>)\n\t      (T\n\t       <PUT ,P-MERGE ,P-MATCHLEN 0>\n\t       <SETG P-TABLE ,P-MERGE>\n\t       <SETG P-SLOCBITS -1>\n\t       <COND (<==? .OHERE .RM> <DO-SL ,WINNER 1 1>)>\n\t       <DO-SL .RM 1 1>\n\t       <COND (<G? <GET ,P-TABLE ,P-MATCHLEN> 0> <SET LIT T>)>)>\n\t<SETG HERE .OHERE>\n\t<SETG P-GWIMBIT 0>\n\t.LIT>\n\n<ROUTINE PRSO-PRINT (\"AUX\" PTR)\n\t <COND (<OR ,P-MERGED\n\t\t    <==? <GET <SET PTR <GET ,P-ITBL ,P-NC1>> 0> ,W?IT>>\n\t\t<TELL \" \" D ,PRSO>)\n\t       (T\n\t\t<BUFFER-PRINT .PTR <GET ,P-ITBL ,P-NC1L> <>>)>>\n\n<ROUTINE THIS-IT? (OBJ TBL \"AUX\" SYNS) \n <COND (<FSET? .OBJ ,INVISIBLE> <RFALSE>)\n       (<AND ,P-NAM\n\t     <NOT <ZMEMQ ,P-NAM\n\t\t\t <SET SYNS <GETPT .OBJ ,P?SYNONYM>>\n\t\t\t <- </ <PTSIZE .SYNS> 2> 1>>>>\n\t<RFALSE>)\n       (<AND ,P-ADJ\n\t     <OR <NOT <SET SYNS <GETPT .OBJ ,P?ADJECTIVE>>>\n\t\t <NOT <ZMEMQB ,P-ADJ .SYNS <- <PTSIZE .SYNS> 1>>>>>\n\t<RFALSE>)\n       (<AND <NOT <0? ,P-GWIMBIT>> <NOT <FSET? .OBJ ,P-GWIMBIT>>>\n\t<RFALSE>)>\n <RTRUE>>"
  },
  {
    "path": "planetfall.clocker",
    "content": "<ROUTINE CLOCKER (\"AUX\" C E TICK (FLG <>))\n\t ;<SETG ELAPSED-MOVES <+ ,ELAPSED-MOVES 1>>\n\t ;<COND (,DEBUG-ON\n\t\t<TELL \"[Elapsed time: \" N ,C-ELAPSED \"]\" CR>)>\n\t ;<COND (,CLOCK-WAIT <SETG CLOCK-WAIT <>> <RFALSE>)>\n\t <SET C <REST ,C-TABLE <COND (,P-WON ,C-INTS) (T ,C-DEMONS)>>>\n\t <SET E <REST ,C-TABLE ,C-TABLELEN>>\n\t <REPEAT ()\n\t\t <COND (<==? .C .E> <RETURN .FLG>)\n\t\t       (<NOT <0? <GET .C ,C-ENABLED?>>>\n\t\t\t<SET TICK <GET .C ,C-TICK>>\n\t\t\t<COND (<0? .TICK>)\n\t\t\t      (<==? .TICK -1>\n\t\t\t       <COND (<APPLY <GET .C ,C-RTN>>\n\t\t\t\t      <SET FLG T>)>)\n\t\t\t      (T\n\t\t\t       <PUT .C ,C-TICK <SET TICK <- .TICK ,C-ELAPSED>>>\n\t\t\t       <COND (<NOT <G? .TICK 1>>\n\t\t\t\t      <PUT .C ,C-TICK 0>\n\t\t\t\t      <COND (<APPLY <GET .C ,C-RTN>>\n\t\t\t\t\t     <SET FLG T>)>)>)>)>\n\t\t <SET C <REST .C ,C-INTLEN>>>>"
  },
  {
    "path": "planetfall.errors",
    "content": "Assembling PLANETFALL.ZAP.3 on Sunday, May 1, 1988 13:37:01\nRelease: 39\n\n    64\tInserting PLANETFALLFREQ.XZAP.1\t   (648 bytes)\n   712\tInserting PLANETFALLDAT.ZAP.3\t (21209 bytes)\n 21921\tInserting PLANETFALLPUR.ZAP.2\t   (184 bytes)\n 22105\tInserting MISC.ZAP.4\t  (1675 bytes)\n 23780\tInserting GLOBALS.ZAP.3\t (18243 bytes)\n 42023\tInserting PARSER.ZAP.3\t  (5401 bytes)\n 47424\tInserting VERBS.ZAP.3\t (10683 bytes)\n 58107\tInserting COMPONE.ZAP.3\t (15047 bytes)\n 73154\tInserting COMPTWO.ZAP.3\t (15446 bytes)\n 88600\tInserting PLANETFALLSTR.ZAP.3\t (20682 bytes)\n255 objects.\n231 globals.\n668 word vocabulary.\n\n109282 bytes (107K).\n 21921 bytes of preload.\n 14284 bytes of impure.\n\nOutputting symbol tables\n"
  },
  {
    "path": "planetfall.record",
    "content": "\nCombined ZIL Compiler Ver 2.0 (MIM)\n-----------------------------------\n\nIncremental compilation disabled, because top-level ZIL file changed.\n\nInput file: SS:<PLANETFALL>PLANETFALL.ZIL.36\n[ZIP instructions]\n\nLoading SS:<PLANETFALL>SYNTAX.ZIL.213 and compiling it.\nLoading SS:<PLANETFALL>MISC.ZIL.66 and compiling it.\nCompiling routine: PICK-ONE\nCompiling routine: GO\nCompiling routine: I-RANDOM-INTERRUPTS\nCompiling routine: MAIN-LOOP\nCompiling routine: TIMELESS-VERB?\nCompiling routine: PERFORM\nCompiling routine: META-LOC\nCompiling routine: QUEUE\nCompiling routine: INT\nCompiling routine: CLOCKER\nCompiling routine: NULL-F\nAbstracting SS:<PLANETFALL>MISC.\nLoading SS:<PLANETFALL>GLOBALS.ZIL.748 and compiling it.\nCompiling routine: GROUND-F\nCompiling routine: WINDOW-F\nCompiling routine: CLIFF-F\nCompiling routine: OCEAN-F\nCompiling routine: TABLES-F\nCompiling routine: SHELVES-F\nCompiling routine: LIGHTS-F\nCompiling routine: GLOBAL-DOORWAY-F\nCompiling routine: USE-DIRECTIONS\nCompiling routine: NO-CLOSE\nCompiling routine: CONTROLS-F\nCompiling routine: GLOBAL-GAMES-F\nCompiling routine: HANDS-F\nCompiling routine: SLEEP-F\nCompiling routine: CRETIN-F\nCompiling routine: DDESC\nCompiling routine: ALREADY-OPEN\nCompiling routine: IS-CLOSED\nCompiling routine: V-THROUGH\nCompiling routine: FIND-IN\nCompiling routine: NOT-HERE-OBJECT-F\nCompiling routine: FIND-NOT-HERE\nCompiling routine: NOT-HERE-PRINT\nCompiling routine: DECK-NINE-F\nCompiling routine: CHRONOMETER-F\nCompiling routine: TELL-TIME\nCompiling routine: PATROL-UNIFORM-F\nCompiling routine: GANGWAY-F\nCompiling routine: I-BLATHER\nCompiling routine: BLATHER-F\nCompiling routine: CELERY-F\nCompiling routine: I-AMBASSADOR\nCompiling routine: AMBASSADOR-F\nCompiling routine: GLOBAL-POD-F\nCompiling routine: POD-EXIT-F\nCompiling routine: SAFETY-WEB-F\nCompiling routine: TOWEL-F\nCompiling routine: FOOD-KIT-F\nCompiling routine: GOO-F\nCompiling routine: ESCAPE-POD-F\nCompiling routine: POD-DOOR-F\nCompiling routine: GANGWAY-DOOR-F\nCompiling routine: I-BLOWUP-FEINSTEIN\nCompiling routine: I-POD-TRIP\nCompiling routine: I-SINK-POD\nCompiling routine: SLOT-F\nCompiling routine: FLOYD-REVEAL-CARD-F\nCompiling routine: I-KITCHEN-DOOR-CLOSES\nCompiling routine: TELEPORT\nCompiling routine: TELEPORTATION-BUTTON-1-F\nCompiling routine: TELEPORTATION-BUTTON-2-F\nCompiling routine: TELEPORTATION-BUTTON-3-F\nCompiling routine: I-TURNOFF-TELEPORTATION\nCompiling routine: GLOBAL-SHUTTLE-F\nCompiling routine: SHUTTLE-CAR-F\nCompiling routine: CONTROL-CABIN-F\nCompiling routine: DESCRIBE-VIEW\nCompiling routine: SHUTTLE-DOOR-F\nCompiling routine: SHUTTLE-ENTER-F\nCompiling routine: SHUTTLE-EXIT-F\nCompiling routine: SHUTTLE-ACTIVATE\nCompiling routine: I-TURNOFF-SHUTTLE\nCompiling routine: LEVER-F\nCompiling routine: I-SHUTTLE\nCompiling routine: DESCRIBE-SHUTTLE-TRIP\nCompiling routine: DESCRIBE-SHUTTLE-ARRIVE\nCompiling routine: I-SLEEP-WARNINGS\nCompiling routine: BED-F\nCompiling routine: I-FALL-ASLEEP\nCompiling routine: DREAMING\nCompiling routine: WAKING-UP\nCompiling routine: RESET-TIME\nCompiling routine: I-HUNGER-WARNINGS\nCompiling routine: I-SICKNESS-WARNINGS\nCompiling routine: TRANSLATOR-PSEUDO\nCompiling routine: SLIME-PSEUDO\nCompiling routine: LIKE-SLIME\nCompiling routine: GRAFFITI-PSEUDO\nCompiling routine: DOOR-PSEUDO\nCompiling routine: WALKWAY-PSEUDO\nCompiling routine: BENCH-PSEUDO\nCompiling routine: CATWALK-PSEUDO\nCompiling routine: EQUIPMENT-PSEUDO\nCompiling routine: MONITORS-PSEUDO\nCompiling routine: MURAL-PSEUDO\nCompiling routine: LOGO-PSEUDO\nCompiling routine: KEYBOARD-PSEUDO\nCompiling routine: CRACK-PSEUDO\nCompiling routine: VOID-PSEUDO\nCompiling routine: SPOUT-PSEUDO\nCompiling routine: TOILET-PSEUDO\nCompiling routine: GAMES-PSEUDO\nCompiling routine: TAPES-PSEUDO\nCompiling routine: PARTITION-PSEUDO\nCompiling routine: CUBBYHOLE-PSEUDO\nCompiling routine: MAPS-PSEUDO\nCompiling routine: DEVICES-PSEUDO\nCompiling routine: CABLES-PSEUDO\nCompiling routine: STRUCTURE-PSEUDO\nCompiling routine: BUTTON-PSEUDO\nCompiling routine: CARPET-PSEUDO\nCompiling routine: CABINETS-PSEUDO\nCompiling routine: PLATE-PSEUDO\nCompiling routine: ESCALATOR-PSEUDO\nCompiling routine: REACTOR-BUTTON-PSEUDO\nCompiling routine: SUPPLIES-PSEUDO\nCompiling routine: DESK-PSEUDO\nCompiling routine: CRYO-BUTTON-PSEUDO\nCompiling routine: CASTLE-PSEUDO\nCompiling routine: CHEM-SPOUT-PSEUDO\nCompiling routine: CLEFT-PSEUDO\nCompiling routine: RUBBLE-PSEUDO\nCompiling routine: PLAQUE-PSEUDO\nCompiling routine: FENCE-PSEUDO\nCompiling routine: LOCK-PSEUDO\nCompiling routine: DIAGRAM-PSEUDO\nCompiling routine: ENUNCIATOR-PSEUDO\nCompiling routine: NEAR-BOOTH-PSEUDO\nCompiling routine: IN-BOOTH-PSEUDO\nAbstracting SS:<PLANETFALL>GLOBALS.\nLoading SS:<PLANETFALL>PARSER.ZIL.103 and compiling it.\nCompiling routine: PARSER\nCompiling routine: WT?\nCompiling routine: CLAUSE\nCompiling routine: NUMBER?\nCompiling routine: ORPHAN-MERGE\nCompiling routine: ACLAUSE-WIN\nCompiling routine: WORD-PRINT\nCompiling routine: UNKNOWN-WORD\nCompiling routine: CANT-USE\nCompiling routine: SYNTAX-CHECK\nCompiling routine: CANT-ORPHAN\nCompiling routine: ORPHAN\nCompiling routine: CLAUSE-PRINT\nCompiling routine: BUFFER-PRINT\nCompiling routine: CAPITALIZE\nCompiling routine: PREP-PRINT\nCompiling routine: CLAUSE-COPY\nCompiling routine: CLAUSE-ADD\nCompiling routine: PREP-FIND\nCompiling routine: SYNTAX-FOUND\nCompiling routine: GWIM\nCompiling routine: SNARF-OBJECTS\nCompiling routine: BUT-MERGE\nCompiling routine: SNARFEM\nCompiling routine: ADJ-CHECK\nCompiling routine: GET-OBJECT\nCompiling routine: MOBY-FIND\nCompiling routine: WHICH-PRINT\nCompiling routine: GLOBAL-CHECK\nCompiling routine: DO-SL\nCompiling routine: SEARCH-LIST\nCompiling routine: OBJ-FOUND\nCompiling routine: TAKE-CHECK\nCompiling routine: ITAKE-CHECK\nCompiling routine: HERE?\nCompiling routine: HELD?\nCompiling routine: MANY-CHECK\nCompiling routine: ZMEMQ\nCompiling routine: ZMEMQB\nCompiling routine: LIT?\nCompiling routine: PRSO-PRINT\nCompiling routine: THIS-IT?\nAbstracting SS:<PLANETFALL>PARSER.\nLoading SS:<PLANETFALL>VERBS.ZIL.518 and compiling it.\nCompiling routine: V-VERBOSE\nCompiling routine: V-BRIEF\nCompiling routine: V-SUPER-BRIEF\nCompiling routine: V-LOOK\nCompiling routine: V-LOOK-CRETIN\nCompiling routine: V-FIRST-LOOK\nCompiling routine: PRE-EXAMINE\nCompiling routine: V-EXAMINE\nCompiling routine: DESCRIBE-ROOM\nCompiling routine: DESCRIBE-OBJECTS\nCompiling routine: DESCRIBE-OBJECT\nCompiling routine: PRINT-CONT\nCompiling routine: FIRSTER\nCompiling routine: SCORE-OBJ\nCompiling routine: V-SCORE\nCompiling routine: FINISH\nCompiling routine: V-QUIT\nCompiling routine: YES?\nCompiling routine: V-VERSION\nCompiling routine: V-AGAIN\n ** Warning: Possible bad 1st arg to PERFORM: ,L-PRSA!\nCompiling routine: JIGS-UP\nCompiling routine: V-RESTORE\nCompiling routine: V-SAVE\nCompiling routine: V-RESTART\nCompiling routine: V-WALK-AROUND\nCompiling routine: V-WALK-TO\nCompiling routine: V-WALK\nCompiling routine: V-INVENTORY\nCompiling routine: PRE-TAKE\nCompiling routine: V-TAKE\nCompiling routine: TRYTAKE\nCompiling routine: ITAKE\nCompiling routine: PRE-PUT\nCompiling routine: V-PUT\nCompiling routine: V-SLIDE\nCompiling routine: PRE-GIVE\nCompiling routine: PRE-SGIVE\nCompiling routine: V-GIVE\nCompiling routine: V-SGIVE\nCompiling routine: V-DROP\nCompiling routine: V-THROW\nCompiling routine: IDROP\nCompiling routine: V-OPEN\nCompiling routine: V-OPEN-WITH\nCompiling routine: PRINT-CONTENTS\nCompiling routine: V-CLOSE\nCompiling routine: CCOUNT\nCompiling routine: WEIGHT\nCompiling routine: V-SCRIPT\nCompiling routine: V-UNSCRIPT\nCompiling routine: PRE-MOVE\nCompiling routine: V-MOVE\nCompiling routine: V-LAMP-ON\nCompiling routine: V-LAMP-OFF\nCompiling routine: V-WAIT\nCompiling routine: PRE-BOARD\nCompiling routine: V-BOARD\nCompiling routine: V-DISEMBARK\nCompiling routine: OWN-FEET\nCompiling routine: V-STAND\nCompiling routine: GOTO\nCompiling routine: V-EAT\nCompiling routine: V-EAT-FROM\nCompiling routine: V-CURSE\nCompiling routine: V-LISTEN\nCompiling routine: V-FOLLOW\nCompiling routine: V-LEAP\nCompiling routine: V-SKIP\nCompiling routine: V-LEAVE\nCompiling routine: V-HELLO\nCompiling routine: V-HELP\nCompiling routine: PRE-READ\nCompiling routine: V-READ\nCompiling routine: V-LOOK-UNDER\nCompiling routine: V-LOOK-BEHIND\nCompiling routine: V-LOOK-INSIDE\nCompiling routine: SEE-INSIDE?\nCompiling routine: V-LOOK-DOWN\nCompiling routine: V-TURN\nCompiling routine: V-LOCK\nCompiling routine: V-UNLOCK\nCompiling routine: V-ATTACK\nCompiling routine: V-KICK\nCompiling routine: V-WAVE\nCompiling routine: V-RUB\nCompiling routine: V-PUSH\nCompiling routine: NO-BUTTON\nCompiling routine: V-PUSH-UP\nCompiling routine: V-PUSH-DOWN\nCompiling routine: V-PULL\nCompiling routine: V-MUNG\nCompiling routine: HACK-HACK\nCompiling routine: WORD-TYPE\nCompiling routine: V-KNOCK\nCompiling routine: V-YELL\nCompiling routine: BATTERY-FALLS\nCompiling routine: V-SHAKE\nCompiling routine: V-SHAKE-WITH\nCompiling routine: V-SMELL\nCompiling routine: GLOBAL-IN?\nCompiling routine: V-SWIM\nCompiling routine: V-SWIM-DIR\nCompiling routine: V-SWIM-UP\nCompiling routine: V-ALARM\nCompiling routine: V-ZORK\nCompiling routine: V-SIT\nCompiling routine: V-SIT-DOWN\nCompiling routine: V-GO-UP\nCompiling routine: V-CLIMB-ON\nCompiling routine: V-CLIMB-FOO\nCompiling routine: V-CLIMB-UP\nCompiling routine: V-CLIMB-DOWN\nCompiling routine: PRE-PUT-UNDER\nCompiling routine: V-PUT-UNDER\nCompiling routine: V-ENTER\nCompiling routine: V-EXIT\nCompiling routine: V-SEARCH\nCompiling routine: V-FIND\nCompiling routine: V-TELL\nCompiling routine: V-ASK-FOR\nCompiling routine: V-SAY\nCompiling routine: V-TALK\nCompiling routine: V-ANSWER\nCompiling routine: V-REPLY\nCompiling routine: V-KISS\nCompiling routine: V-RAPE\nCompiling routine: V-DIAGNOSE\nCompiling routine: V-WEAR\nCompiling routine: V-REMOVE\nCompiling routine: V-TAKE-OFF\nCompiling routine: V-STEP-ON\nCompiling routine: V-PUT-ON\nCompiling routine: V-NO\nCompiling routine: V-YES\nCompiling routine: V-MAYBE\nCompiling routine: V-POINT\nCompiling routine: V-SET\nCompiling routine: V-$VERIFY\nCompiling routine: V-$COMMAND\nCompiling routine: V-$RANDOM\nCompiling routine: V-$RECORD\nCompiling routine: V-$UNRECORD\nCompiling routine: V-STAND-ON\nCompiling routine: V-REACH\nCompiling routine: V-REACH-FOR\nCompiling routine: DO-WALK\nCompiling routine: V-FLUSH\nCompiling routine: V-FLY\nCompiling routine: V-SMILE\nCompiling routine: V-SALUTE\nCompiling routine: V-ATTRACT\nCompiling routine: V-ZATTRACT\nCompiling routine: V-SPAN\nCompiling routine: NUMBERS-ONLY\nCompiling routine: V-TYPE\nCompiling routine: PRE-SZAP\nCompiling routine: PRE-ZAP\nCompiling routine: V-ZAP\nCompiling routine: V-SZAP\nCompiling routine: V-SCRUB\nCompiling routine: V-POUR\nCompiling routine: V-EMPTY\nCompiling routine: V-THROW-OFF\nCompiling routine: V-SLEEP\nCompiling routine: V-FIX-IT\nCompiling routine: V-OIL\nCompiling routine: V-SHOW\nCompiling routine: V-INSERT\nCompiling routine: V-TASTE\nCompiling routine: V-ZESCAPE\nCompiling routine: V-TIME\nCompiling routine: V-PLAY\nCompiling routine: V-PLAY-WITH\nCompiling routine: V-SCOLD\nCompiling routine: ROB\nCompiling routine: THIS-IS-IT\nCompiling routine: ACCESSIBLE?\nCompiling routine: VISIBLE?\nCompiling routine: A-AN\nCompiling routine: ALREADY\nCompiling routine: NOT-HOLDING\nCompiling routine: TAKE-IT-OFF\nCompiling routine: ANYMORE\nCompiling routine: FIXED-FONT-ON\nCompiling routine: FIXED-FONT-OFF\nAbstracting SS:<PLANETFALL>VERBS.\nLoading SS:<PLANETFALL>COMPONE.ZIL.733 and compiling it.\nCompiling routine: UNDERWATER-F\nCompiling routine: CRAG-F\nCompiling routine: BALCONY-F\nCompiling routine: WINDING-STAIR-F\nCompiling routine: COURTYARD-F\nCompiling routine: WATER-LEVEL-F\nCompiling routine: REC-AREA-F\nCompiling routine: CONFERENCE-ROOM-F\nCompiling routine: COMBINATION-DIAL-F\nCompiling routine: CONFERENCE-DOOR-F\nCompiling routine: MESS-CORRIDOR-F\nCompiling routine: STORAGE-WEST-DOOR-F\nCompiling routine: PADLOCK-F\nCompiling routine: CAN-F\nCompiling routine: LADDER-F\nCompiling routine: MESS-HALL-F\nCompiling routine: KITCHEN-DOOR-F\nCompiling routine: DISPENSER-F\nCompiling routine: HIGH-PROTEIN-F\nCompiling routine: WORTHLESS-ACTION\nCompiling routine: LONG-HALL-F\nCompiling routine: ADMIN-CORRIDOR-S-F\nCompiling routine: CREVICE-F\nCompiling routine: KEY-F\nCompiling routine: ADMIN-CORRIDOR-F\nCompiling routine: ADMIN-CORRIDOR-N-F\nCompiling routine: LADDER-EXIT-F\nCompiling routine: RIFT-F\nCompiling routine: SYSTEMS-MONITORS-F\nCompiling routine: DESCRIBE-MONITORS\nCompiling routine: DESK-F\nCompiling routine: OIL-CAN-F\nCompiling routine: CARTON-F\nCompiling routine: CRACKED-BOARD-F\nCompiling routine: GOOD-BEDISTOR-F\nCompiling routine: REACTOR-ELEVATOR-DOOR-F\nCompiling routine: I-REACTOR-DOOR-CLOSE\nCompiling routine: FLASK-F\nCompiling routine: MAGNET-F\nCompiling routine: I-MAGNET\nCompiling routine: MACHINE-SHOP-F\nCompiling routine: CHEMICAL-DISPENSER-F\nCompiling routine: CHEM-BUTTON-F\nCompiling routine: FLOYD-F\nCompiling routine: FLOYDS-FAMOUS-DOOR-ROUTINE\nCompiling routine: FLUSH\nCompiling routine: FLOYD-INTO-LAB\nCompiling routine: FLOYD-NOT-HAVE\nCompiling routine: FLOYD-COMES-ALIVE\nCompiling routine: I-FLOYD\nCompiling routine: CALL-ME-FLOYD\nCompiling routine: KLUDGE\nCompiling routine: DEAD-FLOYD-F\nCompiling routine: ELEVATOR-LOBBY-F\nCompiling routine: UPPER-ELEVATOR-F\nCompiling routine: LOWER-ELEVATOR-F\nCompiling routine: ELEVATOR-ENTER-F\nCompiling routine: ELEVATOR-EXIT-F\nCompiling routine: UPPER-ELEVATOR-DOOR-F\nCompiling routine: LOWER-ELEVATOR-DOOR-F\nCompiling routine: DOOR-CLOSED\nCompiling routine: BLUE-ELEVATOR-BUTTON-F\nCompiling routine: RED-ELEVATOR-BUTTON-F\nCompiling routine: I-UPPER-ELEVATOR-ARRIVE\nCompiling routine: I-LOWER-ELEVATOR-ARRIVE\nCompiling routine: ELEVATOR-BUTTON-F\nCompiling routine: I-TURNOFF-UPPER-ELEVATOR\nCompiling routine: I-TURNOFF-LOWER-ELEVATOR\nCompiling routine: I-UPPER-ELEVATOR-TRIP\nCompiling routine: I-LOWER-ELEVATOR-TRIP\nCompiling routine: ELEVATOR-DOOR-OPENS\nCompiling routine: HELICOPTER-OBJECT-F\nCompiling routine: COMM-ROOM-F\nCompiling routine: I-UNENTER\nCompiling routine: PLAYBACK-BUTTON-F\nCompiling routine: RANDOMIZE-ORDER\nCompiling routine: CHEMICAL-FLUID-F\nCompiling routine: CUBE-SEEMS\nCompiling routine: CHEMICAL-POURS\nCompiling routine: STRIP-DISSOLVES\nCompiling routine: SHUTDOWN\nCompiling routine: COMM-SETUP\nCompiling routine: OTHER-ELEVATOR-ENTER-F\nCompiling routine: KALAMONTEE-PLATFORM-F\nAbstracting SS:<PLANETFALL>COMPONE.\nLoading SS:<PLANETFALL>COMPTWO.ZIL.732 and compiling it.\nCompiling routine: LAWANDA-PLATFORM-F\nCompiling routine: INFIRMARY-F\nCompiling routine: RED-SPOOL-F\nCompiling routine: MEDICINE-F\nCompiling routine: ROBOT-HOLE-F\nCompiling routine: FLOYD-THROUGH-HOLE\nCompiling routine: GOOD-BOARD-F\nCompiling routine: PLANETARY-DEFENSE-F\nCompiling routine: ACCESS-PANEL-F\nCompiling routine: FRIED-BOARD-F\nCompiling routine: BOARD-F\nCompiling routine: EXAMINE-BOARD\nCompiling routine: PUT-BOARD\nCompiling routine: BOARD-SHOCK\nCompiling routine: PLANETARY-COURSE-CONTROL-F\nCompiling routine: CUBE-F\nCompiling routine: BAD-BEDISTOR-F\nCompiling routine: GREEN-SPOOL-F\nCompiling routine: TERMINAL-F\nCompiling routine: LIBRARY-TYPE\nCompiling routine: SPOOL-READER-F\nCompiling routine: PROJCON-OFFICE-F\nCompiling routine: CRYO-ELEVATOR-F\nCompiling routine: CRYO-EXIT-F\nCompiling routine: I-CRYO-ELEVATOR-ARRIVE\nCompiling routine: CRYO-ANTEROOM-F\nCompiling routine: COMPUTER-ACTION\nCompiling routine: PRINT-OUT-F\nCompiling routine: MINI-CARD-F\nCompiling routine: LAB-UNIFORM-F\nCompiling routine: COMBINATION-PAPER-F\nCompiling routine: BIO-LOCK-EAST-F\nCompiling routine: I-CLEAR-FLOYD-PEER\nCompiling routine: BIO-DOOR-EAST-F\nCompiling routine: I-BIO-EAST-CLOSES\nCompiling routine: BIO-DOOR-WEST-F\nCompiling routine: I-BIO-WEST-CLOSES\nCompiling routine: RAD-DOOR-EAST-F\nCompiling routine: RAD-DOOR-WEST-F\nCompiling routine: I-FLOYD-FORAY\nCompiling routine: MONSTER-DEATH\nCompiling routine: BIO-LAB-F\nCompiling routine: I-CHASE-SCENE\nCompiling routine: RADIATION-LAB-F\nCompiling routine: I-NUKED-BLUE\nCompiling routine: LAMP-F\nCompiling routine: LAB-OFFICE-F\nCompiling routine: LAB-DESK-F\nCompiling routine: LIGHT-BUTTON-F\nCompiling routine: DARK-BUTTON-F\nCompiling routine: FUNGICIDE-BUTTON-F\nCompiling routine: I-UNFLOOD\nCompiling routine: I-TURNOFF-MINI\nCompiling routine: STATION-384-F\nCompiling routine: I-ANNOUNCEMENT\nCompiling routine: MIDDLE-OF-STRIP-F\nCompiling routine: STRIP-NEAR-RELAY-F\nCompiling routine: RELAY-EXIT-F\nCompiling routine: RELAY-F\nCompiling routine: LASER-DIAL-F\nCompiling routine: ZAP-COUNT\nCompiling routine: LASER-F\nCompiling routine: ALREADY-BATTERY\nCompiling routine: BATTERY-NOW\nCompiling routine: I-WARMTH\nCompiling routine: LASER-FEELS\nCompiling routine: LASER-COOLS\nCompiling routine: BEAM-COLOR\nCompiling routine: SHOOT-SPECK\nCompiling routine: I-FRY\nCompiling routine: MICROBE-F\nCompiling routine: I-MICROBE\nCompiling routine: SHOOT-MICROBE\nCompiling routine: STRIP-F\nCompiling routine: GRUE-F\nAbstracting SS:<PLANETFALL>COMPTWO.\n\nWarnings: 1\n ** Note: OBJECT has no properties: ROOMS\n ** Note: OBJECT has no properties: GLOBAL-OBJECTS\nVocabulary: 668\n\nPrepositions: 18\n\nACROSS\t AROUND\t  BEHIND   FOR\t    IN\t     OFF      OUT      TO\tUP\nAGAINST\t AT\t  DOWN\t   FROM\t    NEAR     ON\t      OVER     UNDER\tWITH\n\nReal globals: 224\n\n11-TEXT\t\t       FLOYD-SPOKE\t      P-INBUF\n12-TEXT\t\t       FLOYD-WAITING\t      P-IT-LOC\n13-TEXT\t\t       FLOYDISMS\t      P-IT-OBJECT\n21-TEXT\t\t       FORAY-COUNTER\t      P-ITBL\n22-TEXT\t\t       FUMBLE-NUMBER\t      P-LEN\n23-TEXT\t\t       FUMBLE-PROB\t      P-LEXV\n31-TEXT\t\t       GEOGRAPHY-MENU\t      P-MATCHLEN\n32-TEXT\t\t       GREEN-TEXT\t      P-MERGE\n33-TEXT\t\t       HELLOS\t\t      P-MERGED\n34-TEXT\t\t       HISTORY-MENU\t      P-MOBY-FOUND\n35-TEXT\t\t       HO-HUM\t\t      P-NAM\n41-TEXT\t\t       HOLE-TRIP-FLAG\t      P-NCN\n42-TEXT\t\t       HUNGER-LEVEL\t      P-NUMBER\n43-TEXT\t\t       INDENTS\t\t      P-OCLAUSE\n51-TEXT\t\t       INTERLOGIC-MENU\t      P-OFLAG\n52-TEXT\t\t       INTERNAL-MOVES\t      P-ONEOBJ\n53-TEXT\t\t       ITS-CRACKED\t      P-OTBL\n61-TEXT\t\t       JUST-ENTERED\t      P-PRSI\n62-TEXT\t\t       L-PRSA\t\t      P-PRSO\n63-TEXT\t\t       L-PRSI\t\t      P-SLOCBITS\nACCESS-PANEL-FULL      L-PRSO\t\t      P-SPACE\nACHILLES-FLAG\t       LAB-FLOODED\t      P-SYNTAX\nALFIE-AT-KALAMONTEE    LAB-LIGHTS-ON\t      P-TABLE\nALFIE-BROKEN\t       LADDER-EXTENDED\t      P-VTBL\nAMBASSADOR-LEAVE       LADDER-FLAG\t      P-WALK-DIR\nAMBASSADOR-QUOTES      LASER-JUST-SHOT\t      P-WON\nBEAM-MISSES\t       LASER-SCORE-FLAG\t      P-XADJ\nBEEN-HERE\t       LASER-SETTING\t      P-XADJN\nBETTY-AT-KALAMONTEE    LAST-CHASE-ROOM\t      P-XNAM\nBETTY-BROKEN\t       LAST-PSEUDO-LOC\t      PADLOCK-REMOVED\nBLATHER-LEAVE\t       LAWANDA-PLATFORM-FLAG  PROJECT-MENU\nBLOWUP-COUNTER\t       LAZARUS-FLAG\t      PRSA\nBOARD-REPORTED\t       LEVER-SETTING\t      PRSI\nBOTH-DOORS\t       LIT\t\t      PRSO\nBRIGS-UP\t       LOAD-ALLOWED\t      QUOTE-FLAG\nC-DEMONS\t       LOW-END\t\t      RED-TEXT\nC-ELAPSED\t       LOWER-ELEVATOR-ON      SCREEN-CLEARS\nC-INTS\t\t       LOWER-ELEVATOR-UP      SCREEN-TEXT\nC-TABLE\t\t       MAIN-MENU\t      SECOND-TO-LAST-ROOM\nCANT-GO\t\t       MARKSMANSHIP-COUNTER   SHUTTLE-COUNTER\nCARD-REVEALED\t       MENU-LEVEL\t      SHUTTLE-MOVING\nCARD-STOLEN\t       MICROBE-COUNTER\t      SHUTTLE-ON\nCHEMICAL-FLAG\t       MICROBE-DISPATCHED     SHUTTLE-RECORDING-1\nCHEMICAL-REQUIRED      MICROBE-HIT\t      SHUTTLE-RECORDING-2\nCOLOR-LTBL\t       MICROBE-STRIKES\t      SHUTTLE-RECORDING-3\nCOMM-FIXED\t       MINI-ACTIVATED\t      SHUTTLE-RECORDING-4\nCOMM-SHUTDOWN\t       MONSTER-CLOSES\t      SHUTTLE-VELOCITY\nCOMPUTER-FIXED\t       MONSTER-ENTRANCES      SICKNESS-LEVEL\nCOMPUTER-FLAG\t       MORE-INFO\t      SICKNESS-WARNING-FLAG\nCOPR-NOTICE\t       MUNGED-TIME\t      SIGN-PASS\nCOURSE-CONTROL-FIXED   MURAL-FLAG\t      SINK-COUNTER\nCRYO-MOVE-FLAG\t       NEW-SHOTS\t      SLEEPY-LEVEL\nCRYO-SCORE-FLAG\t       NO-MEANING\t      SOME-INFO\nCULTURE-MENU\t       NO-MICROBE\t      SPECK-HIT\nDAY\t\t       NOT-HUNGRY\t      SPOOL-FITS\nDEFENSE-FIXED\t       NUKED-COUNTER\t      SPOOL-TEXT\nDIAL-NUMBER\t       NUMBER-NEEDED\t      SPOUT-PLACED\nDOOR-CLOSES\t       OLD-SHOTS\t      STEPS-TO-GO\nDOOR-OPENS\t       ORDER-LTBL\t      SUPER-BRIEF\nDREAMS\t\t       P-AADJ\t\t      TECHNOLOGY-MENU\nDROWN\t\t       P-ACLAUSE\t      TELEPORTATION-ON\nELEVATOR-ENABLED       P-ADJ\t\t      TEXT-APPEARS\nELEVATOR-IN-TRANSIT    P-ADJECTIVE\t      TRIP-COUNTER\nELEVATOR-LIGHT-OFF     P-ADJN\t\t      UNIFORM-OPENED\nELEVATOR-STARTS\t       P-ADVERB\t\t      UPPER-ELEVATOR-ON\nEXTRA-MOVE-FLAG\t       P-ANAM\t\t      UPPER-ELEVATOR-UP\nFAINT-SOUND\t       P-AND\t\t      VERBOSE\nFAMILIAR-WRENCHING     P-BUTS\t\t      WAITING-COUNTER\nFLOYD-FOLLOW\t       P-CCSRC\t\t      WARMTH-FLAG\nFLOYD-FORAYED\t       P-CEPTR\t\t      WHEEEEE\nFLOYD-GAVE-UP\t       P-CONT\t\t      WINNER\nFLOYD-INTRODUCED       P-CSPTR\t\t      WINNER-ATTACKED\nFLOYD-PEERED\t       P-DIR\t\t      WRONG-CARD\nFLOYD-REACTIVATED      P-GETFLAGS\t      YUKS\nFLOYD-SCORE-FLAG       P-GWIMBIT\n\nObjects: 255\n\nACCESS-PANEL\t\t  GLOBAL-GAMES\t\t    PROJECT-CORRIDOR\nACHILLES\t\t  GLOBAL-OBJECTS\t    PROJECT-CORRIDOR-EAST\nADMIN-CORRIDOR\t\t  GLOBAL-POD\t\t    PROJECT-CORRIDOR-WEST\nADMIN-CORRIDOR-N\t  GLOBAL-SHUTTLE\t    PSEUDO-OBJECT\nADMIN-CORRIDOR-S\t  GOOD-BEDISTOR\t\t    RAD-DOOR-EAST\nADVENTURER\t\t  GOOD-BOARD\t\t    RAD-DOOR-WEST\nALFIE-CONTROL-EAST\t  GRAY-BUTTON\t\t    RADIATION-LAB\nALFIE-CONTROL-WEST\t  GREEN-BUTTON\t\t    RADIATION-LOCK-EAST\nAMBASSADOR\t\t  GREEN-GOO\t\t    RADIATION-LOCK-WEST\nAUXILIARY-BOOTH\t\t  GREEN-SPOOL\t\t    RAT-ANT\nBAD-BEDISTOR\t\t  GROUND\t\t    REACTOR-ACCESS-STAIRS\nBALCONY\t\t\t  GRUE\t\t\t    REACTOR-CONTROL\nBED\t\t\t  HANDS\t\t\t    REACTOR-ELEVATOR\nBETTY-CONTROL-EAST\t  HELICOPTER\t\t    REACTOR-ELEVATOR-DOOR\nBETTY-CONTROL-WEST\t  HELICOPTER-OBJECT\t    REACTOR-LOBBY\nBIO-DOOR-EAST\t\t  HELIPAD\t\t    REC-AREA\nBIO-DOOR-WEST\t\t  HIGH-PROTEIN\t\t    REC-CORRIDOR\nBIO-LAB\t\t\t  ID-CARD\t\t    RECEIVE-CONSOLE\nBIO-LOCK-EAST\t\t  INFIRMARY\t\t    RED-BUTTON\nBIO-LOCK-WEST\t\t  INTNUM\t\t    RED-ELEVATOR-BUTTON\nBLACK-BUTTON\t\t  IT\t\t\t    RED-GOO\nBLATHER\t\t\t  KALAMONTEE-PLATFORM\t    RED-SPOOL\nBLUE-BUTTON\t\t  KEY\t\t\t    RELAY\nBLUE-ELEVATOR-BUTTON\t  KITCHEN\t\t    REPAIR-ROOM\nBOOTH-1\t\t\t  KITCHEN-CARD\t\t    RIFT\nBOOTH-2\t\t\t  KITCHEN-DOOR\t\t    ROBOT-HOLE\nBOOTH-3\t\t\t  LAB-DESK\t\t    ROBOT-SHOP\nBRIG\t\t\t  LAB-OFFICE\t\t    ROOMS\nBROCHURE\t\t  LAB-STORAGE\t\t    ROUND-WHITE-BUTTON\nBROWN-BUTTON\t\t  LAB-UNIFORM\t\t    SAFETY-WEB\nBROWN-GOO\t\t  LADDER\t\t    SANFAC-A\nBROWN-SPOOL\t\t  LAMP\t\t\t    SANFAC-B\nCAN\t\t\t  LARGE-DESK\t\t    SANFAC-C\nCANTEEN\t\t\t  LARGE-OFFICE\t\t    SANFAC-D\nCARTON\t\t\t  LASER\t\t\t    SANFAC-E\nCELERY\t\t\t  LASER-DIAL\t\t    SANFAC-F\nCHEMICAL-DISPENSER\t  LAWANDA-PLATFORM\t    SCRUB-BRUSH\nCHEMICAL-FLUID\t\t  LAZARUS-PART\t\t    SECOND-BOARD\nCHRONOMETER\t\t  LEVER\t\t\t    SEND-CONSOLE\nCLIFF\t\t\t  LIBRARY\t\t    SHELVES\nCOMBINATION-DIAL\t  LIBRARY-LOBBY\t\t    SHUTTLE-CAR-ALFIE\nCOMBINATION-PAPER\t  LIGHT-BUTTON\t\t    SHUTTLE-CAR-BETTY\nCOMM-ROOM\t\t  LIGHTS\t\t    SHUTTLE-CARD\nCOMM-SCREEN\t\t  LOCAL-GLOBALS\t\t    SHUTTLE-DOOR\nCOMPUTER-ROOM\t\t  LOWER-ELEVATOR\t    SLEEP\nCONFERENCE-DOOR\t\t  LOWER-ELEVATOR-CARD\t    SLOT\nCONFERENCE-ROOM\t\t  LOWER-ELEVATOR-DOOR\t    SMALL-DESK\nCONTROLS\t\t  MACHINE-SHOP\t\t    SMALL-OFFICE\nCORRIDOR-DOOR\t\t  MAGNET\t\t    SPECK\nCORRIDOR-JUNCTION\t  MAIN-LAB\t\t    SPOOL-READER\nCOURTYARD\t\t  ME\t\t\t    SQUARE-WHITE-BUTTON\nCRACKED-BOARD\t\t  MECH-CORRIDOR\t\t    STAIRS\nCRAG\t\t\t  MECH-CORRIDOR-N\t    STATION-384\nCREVICE\t\t\t  MECH-CORRIDOR-S\t    STORAGE-EAST\nCRYO-ANTEROOM\t\t  MEDICINE\t\t    STORAGE-WEST\nCRYO-ELEVATOR\t\t  MEDICINE-BOTTLE\t    STORAGE-WEST-DOOR\nCRYO-ELEVATOR-DOOR\t  MEGAFUSE-B\t\t    STRIP\nCUBE\t\t\t  MEGAFUSE-K\t\t    STRIP-NEAR-RELAY\nDARK-BUTTON\t\t  MEMO\t\t\t    STRIP-NEAR-STATION\nDEAD-FLOYD\t\t  MESS-CORRIDOR\t\t    SYSTEMS-CORRIDOR\nDECK-EIGHT\t\t  MESS-HALL\t\t    SYSTEMS-CORRIDOR-EAST\nDECK-NINE\t\t  MICROBE\t\t    SYSTEMS-CORRIDOR-WEST\nDISPENSER\t\t  MIDDLE-OF-STRIP\t    SYSTEMS-MONITORS\nDORM-A\t\t\t  MINI-BOOTH\t\t    TABLES\nDORM-B\t\t\t  MINI-CARD\t\t    TELEPORTATION-BUTTON-1\nDORM-C\t\t\t  NEW-BATTERY\t\t    TELEPORTATION-BUTTON-2\nDORM-CORRIDOR\t\t  NOT-HERE-OBJECT\t    TELEPORTATION-BUTTON-3\nDORM-D\t\t\t  OBSERVATION-DECK\t    TELEPORTATION-CARD\nELEVATOR-BUTTON\t\t  OCEAN\t\t\t    TERMINAL\nELEVATOR-LOBBY\t\t  OFFICE-DOOR\t\t    THIRD-BOARD\nESCALATOR\t\t  OIL-CAN\t\t    TOOL-ROOM\nESCAPE-POD\t\t  OLD-BATTERY\t\t    TOWEL\nFIRST-BOARD\t\t  PADLOCK\t\t    TOWER-CORE\nFLASK\t\t\t  PATROL-UNIFORM\t    TRANSPORTATION-SUPPLY\nFLOYD\t\t\t  PHYSICAL-PLANT\t    TRIFFID\nFOOD-KIT\t\t  PHYSICAL-PLANT-TWO\t    TROLL\nFORK\t\t\t  PLAIN-HALL\t\t    UNDERWATER\nFOURTH-BOARD\t\t  PLAN-ROOM\t\t    UPPER-ELEVATOR\nFRIED-BOARD\t\t  PLANETARY-COURSE-CONTROL  UPPER-ELEVATOR-CARD\nFUNGICIDE-BUTTON\t  PLANETARY-DEFENSE\t    UPPER-ELEVATOR-DOOR\nFUNNEL-HOLE\t\t  PLAYBACK-BUTTON\t    WAITING-AREA\nGANGWAY\t\t\t  PLIERS\t\t    WEST-WING\nGANGWAY-DOOR\t\t  POD-DOOR\t\t    WINDING-STAIR\nGAS-MASK\t\t  PRINT-OUT\t\t    WINDOW\nGLOBAL-DOORWAY\t\t  PROJCON-OFFICE\t    YELLOW-BUTTON\n\nProperties: 26\n\nP?ACTION     P?DESCFCN\t  P?IN\t       P?OUT\t    P?SW\t P?WEST\nP?ADJECTIVE  P?DOWN\t  P?LDESC      P?PSEUDO\t    P?SYNONYM\nP?C-MOVE     P?EAST\t  P?NE\t       P?SE\t    P?TEXT\nP?CAPACITY   P?FDESC\t  P?NORTH      P?SIZE\t    P?UP\nP?CONTFCN    P?GLOBAL\t  P?NW\t       P?SOUTH\t    P?VALUE\n\nFlags: 30\n\nACIDBIT\t      FOODBIT\t    ONBIT\t  SCRAMBLEDBIT\tTRANSBIT\nACTORBIT      INVISIBLE\t    OPENBIT\t  SEARCHBIT\tTRYTAKEBIT\nCLIMBBIT      LIGHTBIT\t    READBIT\t  SURFACEBIT\tVEHBIT\nCONTBIT\t      MUNGBIT\t    RLANDBIT\t  TAKEBIT\tVOWELBIT\nDOORBIT\t      MUNGEDBIT\t    RMUNGBIT\t  TOOLBIT\tWEARBIT\nFLOYDBIT      NDESCBIT\t    RWATERBIT\t  TOUCHBIT\tWORNBIT\n"
  },
  {
    "path": "planetfall.zap",
    "content": "; Low core locations\n%ZVERSION::\t.BYTE\t0\n\t\t.BYTE\tFLAGS\n%ZORKID::\tZORKID\n%ENDLOD::\tENDLOD\n%START::\tSTART\n%VOCAB::\tVOCAB\n%OBJECT::\tOBJECT\n%GLOBAL::\tGLOBAL\n%PURBOT::\tIMPURE\n%FLAGS::\t.WORD 64\n%SERIAL::\t.WORD\t0\n%SERI1::\t.WORD\t0\n%SERI2::\t.WORD\t0\n%FWORDS::\tWORDS\n%PLENTH::\t.WORD\t0\n%PCHKSM::\t.WORD\t0\n%INTWRD::\t.WORD\t0\n%SCRWRD::\t.WORD\t0\n\t.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n.WORD\t0\n\t.INSERT \"SS:<PLANETFALL>PLANETFALLFREQ\"\t;Frequent word table\n\t.INSERT \"SS:<PLANETFALL>PLANETFALLDAT\"\t; Data file\n\t.INSERT \"SS:<PLANETFALL>PLANETFALLPUR\"\n\t.INSERT \"SS:<PLANETFALL>MISC\"\n\t.INSERT \"SS:<PLANETFALL>GLOBALS\"\n\t.INSERT \"SS:<PLANETFALL>PARSER\"\n\t.INSERT \"SS:<PLANETFALL>VERBS\"\n\t.INSERT \"SS:<PLANETFALL>COMPONE\"\n\t.INSERT \"SS:<PLANETFALL>COMPTWO\"\n\n\t.INSERT \"SS:<PLANETFALL>PLANETFALLSTR\"\n\n\t.END\n"
  },
  {
    "path": "planetfall.zil",
    "content": "\"PLANETFALL for\n\t\t\t       PLANETFALL\n\t  (c) COPYRIGHT 1983 INFOCOM INC. ALL RIGHTS RESERVED\"\n\n<VERSION ZIP>\n<FREQUENT-WORDS?>\n<SET REDEFINE T>\n<SETG NEW-VOC? T>\t;\"allows words to be adj/noun/verb all at once!\"\n\n<OR <GASSIGNED? ZILCH>\n    <SETG WBREAKS <STRING !\\\" !\\= !,WBREAKS>>>\n\n<DEFINE IFILE (STR \"OPTIONAL\" (FLOAD? T) \"AUX\" (TIM <TIME>))\n\t<INSERT-FILE .STR .FLOAD?>>\n\n<PRINC \"Planetfall\n\n\">\n\n<IFILE \"SYNTAX\">\n<IFILE \"MISC\">\n<IFILE \"GLOBALS\">\n<IFILE \"PARSER\">\n<IFILE \"VERBS\">\n<IFILE \"COMPONE\">\n<IFILE \"COMPTWO\">\n\n<PROPDEF SIZE 5>\n<PROPDEF CAPACITY 0>\n<PROPDEF VALUE 0>\n"
  },
  {
    "path": "planetfalldat.zap",
    "content": "\n\n; TOP LEVEL DEFINITIONS\n\n\tTRUE-VALUE=1\n\tFALSE-VALUE=0\n\tFATAL-VALUE=2\n\n\tO?ANY=1\n\n\tPS?OBJECT=128\n\tPS?VERB=64\n\tPS?ADJECTIVE=32\n\tPS?DIRECTION=16\n\tPS?PREPOSITION=8\n\tPS?BUZZ-WORD=4\n\n\tP1?NONE=0\n\tP1?OBJECT=0\n\tP1?VERB=1\n\tP1?ADJECTIVE=2\n\tP1?DIRECTION=3\n\n\n; OBJECT FLAGS ARE DEFINED HERE\n\n\n\tFLOYDBIT=2\n\tFX?FLOYDBIT=8192\n\n\tRWATERBIT=3\n\tFX?RWATERBIT=4096\n\n\tACIDBIT=4\n\tFX?ACIDBIT=2048\n\n\tONBIT=5\n\tFX?ONBIT=1024\n\n\tRLANDBIT=6\n\tFX?RLANDBIT=512\n\n\tVOWELBIT=7\n\tFX?VOWELBIT=256\n\n\tNDESCBIT=8\n\tFX?NDESCBIT=128\n\n\tTRANSBIT=9\n\tFX?TRANSBIT=64\n\n\tSEARCHBIT=10\n\tFX?SEARCHBIT=32\n\n\tOPENBIT=11\n\tFX?OPENBIT=16\n\n\tWORNBIT=12\n\tFX?WORNBIT=8\n\n\tSCRAMBLEDBIT=13\n\tFX?SCRAMBLEDBIT=4\n\n\tMUNGEDBIT=14\n\tFX?MUNGEDBIT=2\n\n\tMUNGBIT=15\n\tFX?MUNGBIT=1\n\n\tTRYTAKEBIT=16\n\tFX?TRYTAKEBIT=32768\n\n\tSURFACEBIT=17\n\tFX?SURFACEBIT=16384\n\n\tTOUCHBIT=18\n\tFX?TOUCHBIT=8192\n\n\tINVISIBLE=19\n\tFX?INVISIBLE=4096\n\n\tTOOLBIT=20\n\tFX?TOOLBIT=2048\n\n\tLIGHTBIT=21\n\tFX?LIGHTBIT=1024\n\n\tWEARBIT=22\n\tFX?WEARBIT=512\n\n\tREADBIT=23\n\tFX?READBIT=256\n\n\tCONTBIT=24\n\tFX?CONTBIT=128\n\n\tTAKEBIT=25\n\tFX?TAKEBIT=64\n\n\tDOORBIT=26\n\tFX?DOORBIT=32\n\n\tFOODBIT=27\n\tFX?FOODBIT=16\n\n\tRMUNGBIT=28\n\tFX?RMUNGBIT=8\n\n\tCLIMBBIT=29\n\tFX?CLIMBBIT=4\n\n\tVEHBIT=30\n\tFX?VEHBIT=2\n\n\tACTORBIT=31\n\tFX?ACTORBIT=1\n\n; ACTION IDENTIFIERS ARE ASSIGNED HERE\n\n\tV?BRIEF=0\n\tV?SUPER-BRIEF=1\n\tV?DIAGNOSE=2\n\tV?INVENTORY=3\n\tV?QUIT=4\n\tV?RESTART=5\n\tV?RESTORE=6\n\tV?SAVE=7\n\tV?SCORE=8\n\tV?SCRIPT=9\n\tV?UNSCRIPT=10\n\tV?$VERIFY=11\n\tV?VERSION=12\n\tV?VERBOSE=13\n\tV?$RANDOM=14\n\tV?$COMMAND=15\n\tV?$RECORD=16\n\tV?$UNRECORD=17\n\tV?AGAIN=18\n\tV?ANSWER=19\n\tV?REPLY=20\n\tV?PUT=21\n\tV?ATTACK=22\n\tV?BOARD=23\n\tV?GO-UP=24\n\tV?CLIMB-ON=25\n\tV?CLIMB-UP=26\n\tV?THROUGH=27\n\tV?CLIMB-DOWN=28\n\tV?CLIMB-FOO=29\n\tV?SIT=30\n\tV?SIT-DOWN=31\n\tV?PUT-UNDER=32\n\tV?ATTRACT=33\n\tV?SPAN=34\n\tV?STAND=35\n\tV?STAND-ON=36\n\tV?CLOSE=37\n\tV?CURSE=38\n\tV?DISEMBARK=39\n\tV?DROP=40\n\tV?PUT-ON=41\n\tV?EAT=42\n\tV?EAT-FROM=43\n\tV?ENTER=44\n\tV?EXIT=45\n\tV?EXAMINE=46\n\tV?LOOK-INSIDE=47\n\tV?FIND=48\n\tV?SZAP=49\n\tV?ZAP=50\n\tV?FOLLOW=51\n\tV?FLUSH=52\n\tV?FLY=53\n\tV?GIVE=54\n\tV?SGIVE=55\n\tV?HELLO=56\n\tV?HELP=57\n\tV?LEAP=58\n\tV?KICK=59\n\tV?KISS=60\n\tV?KNOCK=61\n\tV?LEAVE=62\n\tV?LISTEN=63\n\tV?LOCK=64\n\tV?LOOK=65\n\tV?LOOK-CRETIN=66\n\tV?LOOK-UNDER=67\n\tV?LOOK-BEHIND=68\n\tV?LOOK-DOWN=69\n\tV?SEARCH=70\n\tV?MOVE=71\n\tV?PUSH-UP=72\n\tV?PUSH-DOWN=73\n\tV?POINT=74\n\tV?PULL=75\n\tV?ZATTRACT=76\n\tV?MUNG=77\n\tV?OPEN=78\n\tV?OPEN-WITH=79\n\tV?TAKE=80\n\tV?PLAY=81\n\tV?PLAY-WITH=82\n\tV?PUSH=83\n\tV?WEAR=84\n\tV?SLIDE=85\n\tV?INSERT=86\n\tV?RAPE=87\n\tV?REACH=88\n\tV?REACH-FOR=89\n\tV?READ=90\n\tV?RUB=91\n\tV?SCRUB=92\n\tV?SLEEP=93\n\tV?SHAKE=94\n\tV?SHAKE-WITH=95\n\tV?SKIP=96\n\tV?SMELL=97\n\tV?STEP-ON=98\n\tV?SWIM=99\n\tV?SWIM-DIR=100\n\tV?SWIM-UP=101\n\tV?TAKE-OFF=102\n\tV?REMOVE=103\n\tV?TELL=104\n\tV?ASK-FOR=105\n\tV?SMILE=106\n\tV?SALUTE=107\n\tV?TALK=108\n\tV?SAY=109\n\tV?THROW=110\n\tV?THROW-OFF=111\n\tV?TURN=112\n\tV?LAMP-ON=113\n\tV?LAMP-OFF=114\n\tV?SET=115\n\tV?TYPE=116\n\tV?UNLOCK=117\n\tV?WAIT=118\n\tV?ALARM=119\n\tV?WALK=120\n\tV?WALK-AROUND=121\n\tV?WALK-TO=122\n\tV?WAVE=123\n\tV?YELL=124\n\tV?SCOLD=125\n\tV?ZORK=126\n\tV?YES=127\n\tV?NO=128\n\tV?MAYBE=129\n\tV?POUR=130\n\tV?EMPTY=131\n\tV?FIX-IT=132\n\tV?OIL=133\n\tV?SHOW=134\n\tV?TASTE=135\n\tV?ZESCAPE=136\n\tV?TIME=137\n\n; PROPERTIES ARE DEFINED HERE\n\n\tP?NORTH=31\n\tP?NE=30\n\tP?EAST=29\n\tP?SE=28\n\tP?SOUTH=27\n\tP?SW=26\n\tP?WEST=25\n\tP?NW=24\n\tP?UP=23\n\tP?DOWN=22\n\tP?IN=21\n\tP?OUT=20\n\tP?SYNONYM=19\n\tP?VALUE=18\n\tP?CONTFCN=17\n\tP?DESCFCN=16\n\tP?SIZE=15\n\tP?ACTION=14\n\tP?ADJECTIVE=13\n\tP?LDESC=12\n\tP?C-MOVE=11\n\tP?PSEUDO=10\n\tP?GLOBAL=9\n\tP?TEXT=8\n\tP?CAPACITY=7\n\tP?FDESC=6\n\n; ADJECTIVES ARE DEFINED HERE\n\n\tA?VIEW=255\n\tA?ENDLESS=254\n\tA?ROUND=253\n\tA?CONFERENCE=252\n\tA?SMALL=251\n\tA?WIDE=250\n\tA?LONG=249\n\tA?RED=248\n\tA?DAZZLI=247\n\tA?GLOWIN=246\n\tA?BLINKI=245\n\tA?WARNIN=244\n\tA?BRIGHT=243\n\tA?COLORE=242\n\tA?FLASHI=241\n\tA?NORTH=240\n\tA?SOUTH=239\n\tA?EAST=238\n\tA?WEST=237\n\tA?NE=236\n\tA?SE=235\n\tA?NW=234\n\tA?SW=233\n\tA?CONTRO=232\n\tA?COMPLEX=231\n\tA?BARE=230\n\tA?ORANGE=229\n\tA?OPENER=228\n\tA?SCRUB=227\n\tA?PATROL=226\n\tA?SELF-CONTAINED=225\n\tA?MULTI=224\n\tA?WRIST=223\n\tA?ID=222\n\tA?IDENTIFICATION=221\n\tA?WRINKLED=220\n\tA?ENSIGN=219\n\tA?FIRST=218\n\tA?CLASS=217\n\tA?VERY=216\n\tA?IMPORTANT=215\n\tA?ALIEN=214\n\tA?HIGH-RANKING=213\n\tA?HIGH=212\n\tA?RANKING=211\n\tA?EMERGENCY=210\n\tA?ESCAPE=209\n\tA?PRIMARY=208\n\tA?SAFETY=207\n\tA?SURVIVAL=206\n\tA?CHERRY=205\n\tA?BROWN=204\n\tA?BEEF=203\n\tA?GREEN=202\n\tA?LIMA=201\n\tA?POD=200\n\tA?NARROW=199\n\tA?BEIGE=198\n\tA?SECOND=197\n\tA?TAN=196\n\tA?THIRD=195\n\tA?SHUTTL=194\n\tA?TIERED=193\n\tA?BUNK=192\n\tA?COMBINATION=191\n\tA?SIMPLE=190\n\tA?STEEL=189\n\tA?METAL=188\n\tA?LARGE=187\n\tA?TIN=186\n\tA?UNOPENED=185\n\tA?HEAVY=184\n\tA?DUTY=183\n\tA?ALUMINUM=182\n\tA?KITCHEN=181\n\tA?DISPEN=180\n\tA?OCTAGONAL=179\n\tA?PROTEIN-RICH=178\n\tA?JAGGED=177\n\tA?PIECE=176\n\tA?IRON=175\n\tA?SHINY=174\n\tA?DEEP=173\n\tA?GAPING=172\n\tA?ACCESS=171\n\tA?UPPER=170\n\tA?ELEVATOR=169\n\tA?LOWER=168\n\tA?WOODEN=167\n\tA?OIL=166\n\tA?CARDBOARD=165\n\tA?CRACKED=164\n\tA?SEVENTEEN=163\n\tA?CENTIMETER=162\n\tA?FROMITZ=161\n\tA?B-SERIES=160\n\tA?B=159\n\tA?SERIES=158\n\tA?MEGA=157\n\tA?K-SERIES=156\n\tA?K=155\n\tA?GOOD=154\n\tA?NINETY=153\n\tA?OHM=152\n\tA?REACTOR=151\n\tA?GLASS=150\n\tA?PLASTIC=149\n\tA?CURVED=148\n\tA?HORSESHOE=147\n\tA?WIDE-NOSED=146\n\tA?NOSED=145\n\tA?CHEMICAL=144\n\tA?BLUE=143\n\tA?YELLOW=142\n\tA?GRAY=141\n\tA?GREY=140\n\tA?BLACK=139\n\tA?WHITE=138\n\tA?SQUARE=137\n\tA?MULTIP=136\n\tA?PURPOS=135\n\tA?DIM-=134\n\tA?DIM=133\n\tA?WITTED=132\n\tA?MANGLE=131\n\tA?DEAD=130\n\tA?FORMER=129\n\tA?COMMUNICATIONS=128\n\tA?RECEIVE=127\n\tA?LEFT=126\n\tA?PLAYBA=125\n\tA?SEND=124\n\tA?RIGHT=123\n\tA?FUNNEL=122\n\tA?SHAPED=121\n\tA?MILKY=120\n\tA?MEDICAL=119\n\tA?BREAST=118\n\tA?MEDICINE=117\n\tA?TRANSL=116\n\tA?QUANTITY=115\n\tA?EXPERIMENTAL=114\n\tA?BROKEN=113\n\tA?REPAIR=112\n\tA?FOURTH=111\n\tA?FRIED=110\n\tA?FUSED=109\n\tA?COMPUTER=108\n\tA?VIDEO=107\n\tA?MICROF=106\n\tA?CIRCUL=105\n\tA?CRYO-ELEVATOR=104\n\tA?MINIAT=103\n\tA?MINI=102\n\tA?PALE=101\n\tA?LAB=100\n\tA?TELEPO=99\n\tA?BIO-LOCK=98\n\tA?RADIATION=97\n\tA?POWERFUL=96\n\tA?PORTABLE=95\n\tA?OFFICE=94\n\tA?MESSY=93\n\tA?GAS=92\n\tA?LIGHT=91\n\tA?DARK=90\n\tA?DARKNESS=89\n\tA?FUNGICIDE=88\n\tA?MICRO=87\n\tA?ACME=86\n\tA?LASER=85\n\tA?SETTING=84\n\tA?WORN-OUT=83\n\tA?OLD=82\n\tA?FRESH=81\n\tA?NEW=80\n\tA?HUNGRY=79\n\tA?SILICON=78\n\tA?RAT-LIKE=77\n\tA?ANT-LIKE=76\n\tA?MAN-SIZED=75\n\tA?HAIRY=74\n\tA?GROWLING=73\n\tA?UGLY=72\n\tA?DEFORMED=71\n\tA?LURKING=70\n\tA?SINISTER=69\n\tA?FANGED=68\n\tA?VICIOUS=67\n\tA?SILENT=66\n\tA?MOBILE=65\n\tA?MAN-EATING=64\n\tA?GIANT=63\n\n; BUZZ WORDS ARE DEFINED HERE\n\n\tB?A=255\n\tB?AN=254\n\tB?THE=253\n\tB?IS=252\n\tB?ARE=251\n\tB?EQUALS=250\n\tB?AND=249\n\tB?OF=248\n\tB?THEN=247\n\tB?ALL=246\n\tB?ONE=245\n\tB?BUT=244\n\tB?EXCEPT=243\n\tB?PERIOD=242\n\tB?COMMA=241\n\tB?QUOTE=240\n\tB?OUR=239\n\n; PREPOSITIONS ARE DEFINED HERE\n\n\tPR?TO=255\n\tPR?WITH=254\n\tPR?ON=253\n\tPR?UP=252\n\tPR?DOWN=251\n\tPR?IN=250\n\tPR?UNDER=249\n\tPR?OVER=248\n\tPR?NEAR=247\n\tPR?ACROSS=246\n\tPR?FROM=245\n\tPR?AT=244\n\tPR?OFF=243\n\tPR?AROUND=242\n\tPR?BEHIND=241\n\tPR?OUT=240\n\tPR?FOR=239\n\tPR?AGAINST=238\n\n; DIRECTIONS ARE DEFINED HERE\n\n\n; ACTIONS ARE DEFINED HERE\n\n\tACT?KISS=255\n\tACT?SKIP=254\n\tACT?PULL=253\n\tACT?PUT=252\n\tACT?RAPE=251\n\tACT?VERBOSE=250\n\tACT?WALK=249\n\tACT?OIL=248\n\tACT?QUIT=247\n\tACT?FIND=246\n\tACT?YES=245\n\tACT?DESTROY=244\n\tACT?SCOLD=243\n\tACT?UNLOCK=242\n\tACT?READ=241\n\tACT?SAY=240\n\tACT?JUMP=239\n\tACT?POUR=238\n\tACT?WAIT=237\n\tACT?TAKE=236\n\tACT?NO=235\n\tACT?FOLLOW=234\n\tACT?TYPE=233\n\tACT?FLY=232\n\tACT?VERSION=231\n\tACT?#UNRECORD=230\n\tACT?MOVE=229\n\tACT?PLAY=228\n\tACT?OPEN=227\n\tACT?TASTE=226\n\tACT?#COMMAND=225\n\tACT?KNOCK=224\n\tACT?PICK=223\n\tACT?BOARD=222\n\tACT?#RANDOM=221\n\tACT?APPLY=220\n\tACT?ESCAPE=219\n\tACT?STAND=218\n\tACT?LISTEN=217\n\tACT?SHOW=216\n\tACT?SAVE=215\n\tACT?HELP=214\n\tACT?TELL=213\n\tACT?THROW=212\n\tACT?ZORK=211\n\tACT?SHAKE=210\n\tACT?INVENTORY=209\n\tACT?ATTACK=208\n\tACT?RESTOR=207\n\tACT?ENTER=206\n\tACT?SEARCH=205\n\tACT?WEAR=204\n\tACT?DISEMBARK=203\n\tACT?SWIM=202\n\tACT?UNSCRIPT=201\n\tACT?PUSH=200\n\tACT?RUB=199\n\tACT?SUPER=198\n\tACT?SIT=197\n\tACT?RESTAR=196\n\tACT?REACH=195\n\tACT?SCORE=194\n\tACT?SCRUB=193\n\tACT?SALUTE=192\n\tACT?LOOK=191\n\tACT?EMPTY=190\n\tACT?ATTRACT=189\n\tACT?DROP=188\n\tACT?STEP=187\n\tACT?TIME=186\n\tACT?LEAVE=185\n\tACT?CURSE=184\n\tACT?SCRIPT=183\n\tACT?$VERIFY=182\n\tACT?SMELL=181\n\tACT?BRIEF=180\n\tACT?DIAGNOSE=179\n\tACT?GIVE=178\n\tACT?SLEEP=177\n\tACT?SMILE=176\n\tACT?WAKE=175\n\tACT?REMOVE=174\n\tACT?ANSWER=173\n\tACT?YELL=172\n\tACT?LOCK=171\n\tACT?ACTIVATE=170\n\tACT?KICK=169\n\tACT?POINT=168\n\tACT?TURN=167\n\tACT?#RECORD=166\n\tACT?MAYBE=165\n\tACT?CLOSE=164\n\tACT?STRIKE=163\n\tACT?FIX=162\n\tACT?SLIDE=161\n\tACT?WAVE=160\n\tACT?EXIT=159\n\tACT?AGAIN=158\n\tACT?EXAMINE=157\n\tACT?EAT=156\n\tACT?FIRE=155\n\tACT?CLIMB=154\n\tACT?FLUSH=153\n\tACT?HELLO=152\n\n; USER DEFINED CONSTANTS ARE INITIALIZED HERE\n\n\tSOG=16\n\tSIR=32\n\tDEXITSTR=1\n\tXEQUAL?=4\n\tP-ITBLLEN=9\n\tP-SYNLEN=8\n\tP-SRCTOP=0\n\tC-INTLEN=6\n\tDEXITOBJ=1\n\tP-P1OFF=5\n\tP-PHRLEN=3\n\tC-TABLELEN=240\n\tP-NC2=8\n\tP-NC1=6\n\tP-WORDLEN=4\n\tP-VERBN=1\n\tSERIAL=0\n\tP-P1BITS=3\n\tFEXIT=3\n\tP-SPREP1=1\n\tP-PREP1=2\n\tM-BEG=1\n\tXDIV=3\n\tM-FATAL=2\n\tXGRTR?=5\n\tNEXITSTR=0\n\tNEXIT=2\n\tP-SLOC2=6\n\tSC=64\n\tP-PREP1N=3\n\tP-PSOFF=4\n\tXLESS?=6\n\tP-VERB=0\n\tM-HANDLED=1\n\tM-ENTER=2\n\tDEXIT=5\n\tSHAVE=2\n\tP-SRCBOT=2\n\tM-OBJDESC=5\n\tC-ELAPSED-DEFAULT=7\n\tSMANY=4\n\tSTAKE=8\n\tP-SPREP2=2\n\tXSUB=1\n\tXADD=0\n\tCEXIT=4\n\tP-LEXSTART=1\n\tM-LOOK=3\n\tUEXIT=1\n\tD-RECORD-ON=4\n\tP-LEXELEN=2\n\tP-LEXWORDS=1\n\tP-ALL=1\n\tXMUL=2\n\tP-SFWIM1=3\n\tP-INHIBIT=4\n\tCEXITFLAG=1\n\tD-RECORD-OFF=-4\n\tM-FLASH=4\n\tP-ORPHLEN=7\n\tM-OBJECT=0\n\tFEXITFCN=0\n\tDEFAULT-MOVE=20\n\tP-SBITS=0\n\tM-NOT-HANDLED=0\n\tCEXITSTR=1\n\tP-SRCALL=1\n\tP-RTLEN=3\n\tP-SLOC1=5\n\tM-END=6\n\tLOW-DIRECTION=20\n\tP-PREP2=4\n\tP-SONUMS=3\n\tC-TICK=1\n\tP-NC2L=9\n\tP-NC1L=7\n\tP-ONE=2\n\tP-SACTION=7\n\tP-PREP2N=5\n\tP-SFWIM2=4\n\tC-ENABLED?=0\n\tREXIT=0\n\tSH=128\n\tC-RTN=2\n\n; THE GLOBAL VARIABLES ARE ALL LOCATED HERE\n\nGLOBAL::.TABLE\n\t.GVAR HERE=0\n\t.GVAR SCORE=0\n\t.GVAR MOVES=0\n\t.GVAR ALFIE-AT-KALAMONTEE=1\n\t.GVAR BETTY-AT-KALAMONTEE=0\n\t.GVAR SUPER-BRIEF=0\n\t.GVAR FLOYD-INTRODUCED=0\n\t.GVAR VERBOSE=0\n\t.GVAR SHUTTLE-RECORDING-2=STR?39,STRING\n\t.GVAR P-BUTS=T?804,TABLE\n\t.GVAR ELEVATOR-STARTS=STR?177,STRING\n\t.GVAR SICKNESS-WARNING-FLAG=0\n\t.GVAR P-DIR=0\n\t.GVAR P-ACLAUSE=0\n\t.GVAR 41-TEXT=STR?235,STRING\n\t.GVAR P-CSPTR=0\n\t.GVAR BETTY-BROKEN=0\n\t.GVAR P-SLOCBITS=0\n\t.GVAR P-ADJECTIVE=0\n\t.GVAR P-MATCHLEN=0\n\t.GVAR 43-TEXT=STR?237,STRING\n\t.GVAR P-ADVERB=0\n\t.GVAR SLEEPY-LEVEL=0\n\t.GVAR BEAM-MISSES=PT?207,TABLE\n\t.GVAR SHUTTLE-MOVING=0\n\t.GVAR 35-TEXT=STR?234,STRING\n\t.GVAR BOTH-DOORS=STR?266,STRING\n\t.GVAR P-OTBL=T?404,TABLE\n\t.GVAR P-NAM=0\n\t.GVAR C-TABLE=T?102,TABLE\n\t.GVAR FAINT-SOUND=STR?285,STRING\n\t.GVAR P-XNAM=0\n\t.GVAR P-MOBY-FOUND=0\n\t.GVAR UPPER-ELEVATOR-ON=0\n\t.GVAR P-WALK-DIR=0\n\t.GVAR FLOYD-FOLLOW=0\n\t.GVAR P-ANAM=0\n\t.GVAR LAZARUS-FLAG=0\n\t.GVAR BOARD-REPORTED=0\n\t.GVAR BLOWUP-COUNTER=0\n\t.GVAR LOWER-ELEVATOR-ON=0\n\t.GVAR 31-TEXT=STR?230,STRING\n\t.GVAR LAST-PSEUDO-LOC=0\n\t.GVAR AMBASSADOR-QUOTES=PT?103,TABLE\n\t.GVAR P-CEPTR=0\n\t.GVAR FORAY-COUNTER=0\n\t.GVAR P-CONT=0\n\t.GVAR FLOYD-PEERED=0\n\t.GVAR TECHNOLOGY-MENU=STR?220,STRING\n\t.GVAR 33-TEXT=STR?232,STRING\n\t.GVAR P-PRSI=T?704,TABLE\n\t.GVAR ELEVATOR-IN-TRANSIT=0\n\t.GVAR CRYO-MOVE-FLAG=0\n\t.GVAR CANT-GO=STR?37,STRING\n\t.GVAR FUMBLE-NUMBER=7\n\t.GVAR COURSE-CONTROL-FIXED=0\n\t.GVAR NOT-HUNGRY=STR?54,STRING\n\t.GVAR ACHILLES-FLAG=0\n\t.GVAR HISTORY-MENU=STR?218,STRING\n\t.GVAR DEFENSE-FIXED=0\n\t.GVAR LIT=0\n\t.GVAR UPPER-ELEVATOR-UP=1\n\t.GVAR 21-TEXT=STR?227,STRING\n\t.GVAR P-VTBL=T?504,TABLE\n\t.GVAR P-XADJN=0\n\t.GVAR MICROBE-HIT=0\n\t.GVAR EXTRA-MOVE-FLAG=0\n\t.GVAR 23-TEXT=STR?229,STRING\n\t.GVAR P-ADJ=0\n\t.GVAR MURAL-FLAG=0\n\t.GVAR P-LEN=0\n\t.GVAR PROJECT-MENU=STR?222,STRING\n\t.GVAR C-INTS=240\n\t.GVAR P-LEXV=T?104,TABLE\n\t.GVAR UNIFORM-OPENED=0\n\t.GVAR LOAD-ALLOWED=100\n\t.GVAR LASER-SETTING=5\n\t.GVAR INTERLOGIC-MENU=STR?223,STRING\n\t.GVAR 62-TEXT=STR?242,STRING\n\t.GVAR COMM-SHUTDOWN=0\n\t.GVAR DOOR-CLOSES=STR?268,STRING\n\t.GVAR 11-TEXT=STR?224,STRING\n\t.GVAR PRSO=0\n\t.GVAR L-PRSI=0\n\t.GVAR CARD-STOLEN=0\n\t.GVAR FLOYDISMS=PT?206,TABLE\n\t.GVAR SICKNESS-LEVEL=0\n\t.GVAR P-MERGED=0\n\t.GVAR 13-TEXT=STR?226,STRING\n\t.GVAR P-GWIMBIT=0\n\t.GVAR LAB-LIGHTS-ON=0\n\t.GVAR CHEMICAL-REQUIRED=0\n\t.GVAR COMPUTER-FLAG=0\n\t.GVAR C-DEMONS=300\n\t.GVAR SINK-COUNTER=0\n\t.GVAR NO-MEANING=STR?212,STRING\n\t.GVAR WRONG-CARD=STR?36,STRING\n\t.GVAR LAWANDA-PLATFORM-FLAG=0\n\t.GVAR P-OCLAUSE=T?1004,TABLE\n\t.GVAR MUNGED-TIME=0\n\t.GVAR FLOYD-FORAYED=0\n\t.GVAR DROWN=0\n\t.GVAR WARMTH-FLAG=0\n\t.GVAR HOLE-TRIP-FLAG=0\n\t.GVAR 52-TEXT=STR?239,STRING\n\t.GVAR P-SYNTAX=0\n\t.GVAR LOW-END=STR?216,STRING\n\t.GVAR MARKSMANSHIP-COUNTER=0\n\t.GVAR LOWER-ELEVATOR-UP=0\n\t.GVAR P-XADJ=0\n\t.GVAR MENU-LEVEL=0\n\t.GVAR FLOYD-WAITING=0\n\t.GVAR BRIGS-UP=0\n\t.GVAR SHUTTLE-ON=0\n\t.GVAR FLOYD-REACTIVATED=0\n\t.GVAR WINNER-ATTACKED=PT?307,TABLE\n\t.GVAR CHEMICAL-FLAG=0\n\t.GVAR COMM-FIXED=0\n\t.GVAR LEVER-SETTING=0\n\t.GVAR HUNGER-LEVEL=0\n\t.GVAR P-AADJ=0\n\t.GVAR MICROBE-COUNTER=0\n\t.GVAR SPOOL-FITS=STR?246,STRING\n\t.GVAR PRSA=0\n\t.GVAR L-PRSA=0\n\t.GVAR JUST-ENTERED=1\n\t.GVAR CARD-REVEALED=0\n\t.GVAR ACCESS-PANEL-FULL=1\n\t.GVAR WHEEEEE=PT?305,TABLE\n\t.GVAR P-PRSO=T?604,TABLE\n\t.GVAR NO-MICROBE=1\n\t.GVAR SHUTTLE-RECORDING-4=STR?41,STRING\n\t.GVAR P-AND=0\n\t.GVAR C-ELAPSED=7\n\t.GVAR 42-TEXT=STR?236,STRING\n\t.GVAR P-ONEOBJ=0\n\t.GVAR SPOOL-TEXT=0\n\t.GVAR MICROBE-STRIKES=PT?507,TABLE\n\t.GVAR CULTURE-MENU=STR?219,STRING\n\t.GVAR SOME-INFO=STR?247,STRING\n\t.GVAR 34-TEXT=STR?233,STRING\n\t.GVAR ALFIE-BROKEN=0\n\t.GVAR INTERNAL-MOVES=0\n\t.GVAR MINI-ACTIVATED=0\n\t.GVAR P-INBUF=T?204,TABLE\n\t.GVAR BEEN-HERE=0\n\t.GVAR L-PRSO=0\n\t.GVAR NUMBER-NEEDED=0\n\t.GVAR LADDER-EXTENDED=0\n\t.GVAR DIAL-NUMBER=0\n\t.GVAR BLATHER-LEAVE=0\n\t.GVAR P-IT-LOC=0\n\t.GVAR P-MERGE=T?904,TABLE\n\t.GVAR COMPUTER-FIXED=0\n\t.GVAR LADDER-FLAG=0\n\t.GVAR P-WON=0\n\t.GVAR MORE-INFO=STR?215,STRING\n\t.GVAR MAIN-MENU=STR?217,STRING\n\t.GVAR SHUTTLE-COUNTER=0\n\t.GVAR 32-TEXT=STR?231,STRING\n\t.GVAR LAST-CHASE-ROOM=0\n\t.GVAR P-ITBL=T?304,TABLE\n\t.GVAR QUOTE-FLAG=0\n\t.GVAR ORDER-LTBL=T?5506,TABLE\n\t.GVAR P-TABLE=0\n\t.GVAR P-GETFLAGS=0\n\t.GVAR DAY=1\n\t.GVAR YUKS=PT?505,TABLE\n\t.GVAR LASER-JUST-SHOT=0\n\t.GVAR INDENTS=PT?105,TABLE\n\t.GVAR FUMBLE-PROB=8\n\t.GVAR P-NUMBER=0\n\t.GVAR DREAMS=PT?203,TABLE\n\t.GVAR P-SPACE=1\n\t.GVAR CRYO-SCORE-FLAG=0\n\t.GVAR P-OFLAG=0\n\t.GVAR WINNER=0\n\t.GVAR OLD-SHOTS=0\n\t.GVAR P-ADJN=0\n\t.GVAR PADLOCK-REMOVED=0\n\t.GVAR GEOGRAPHY-MENU=STR?221,STRING\n\t.GVAR SHUTTLE-RECORDING-1=STR?38,STRING\n\t.GVAR P-CCSRC=0\n\t.GVAR TELEPORTATION-ON=0\n\t.GVAR 22-TEXT=STR?228,STRING\n\t.GVAR MICROBE-DISPATCHED=0\n\t.GVAR ELEVATOR-ENABLED=STR?35,STRING\n\t.GVAR STEPS-TO-GO=0\n\t.GVAR SCREEN-TEXT=0\n\t.GVAR SCREEN-CLEARS=STR?213,STRING\n\t.GVAR DOOR-OPENS=STR?267,STRING\n\t.GVAR NUKED-COUNTER=0\n\t.GVAR SHUTTLE-VELOCITY=0\n\t.GVAR SIGN-PASS=STR?43,STRING\n\t.GVAR P-IT-OBJECT=0\n\t.GVAR HO-HUM=PT?405,TABLE\n\t.GVAR 61-TEXT=STR?241,STRING\n\t.GVAR MONSTER-CLOSES=PT?407,TABLE\n\t.GVAR 63-TEXT=STR?243,STRING\n\t.GVAR FAMILIAR-WRENCHING=STR?288,STRING\n\t.GVAR PRSI=0\n\t.GVAR TEXT-APPEARS=STR?214,STRING\n\t.GVAR RED-TEXT=STR?249,STRING\n\t.GVAR NEW-SHOTS=0\n\t.GVAR WAITING-COUNTER=0\n\t.GVAR FLOYD-SPOKE=0\n\t.GVAR HELLOS=PT?205,TABLE\n\t.GVAR 12-TEXT=STR?225,STRING\n\t.GVAR COLOR-LTBL=PT?106,TABLE\n\t.GVAR LAB-FLOODED=0\n\t.GVAR ELEVATOR-LIGHT-OFF=STR?176,STRING\n\t.GVAR FLOYD-GAVE-UP=0\n\t.GVAR FLOYD-SCORE-FLAG=0\n\t.GVAR LASER-SCORE-FLAG=0\n\t.GVAR GREEN-TEXT=STR?248,STRING\n\t.GVAR SPECK-HIT=0\n\t.GVAR TRIP-COUNTER=0\n\t.GVAR SPOUT-PLACED=0\n\t.GVAR SHUTTLE-RECORDING-3=STR?40,STRING\n\t.GVAR 51-TEXT=STR?238,STRING\n\t.GVAR MONSTER-ENTRANCES=PT?107,TABLE\n\t.GVAR P-NCN=0\n\t.GVAR SECOND-TO-LAST-ROOM=0\n\t.GVAR COPR-NOTICE=STR?72,STRING\n\t.GVAR AMBASSADOR-LEAVE=0\n\t.GVAR ITS-CRACKED=0\n\t.GVAR 53-TEXT=STR?240,STRING\n\t.GVAR PREPOSITIONS=PRTBL,TABLE\n\t.GVAR ACTIONS=ATBL,TABLE\n\t.GVAR PREACTIONS=PATBL,TABLE\n\t.GVAR VERBS=VTBL,TABLE\n\t.ENDT\n\nGLOEND::\n\n\n; PROPERTY DEFAULTS AND OBJECTS ARE DEFINED HERE\n\nOBJECT::.TABLE \n\t0\t\t\t;()\n\t0\t\t\t;()\n\t0\t\t\t;()\n\t0\t\t\t;()\n\t0\t\t\t;()\n\t0\t\t\t;(P?FDESC)\n\t0\t\t\t;(P?CAPACITY)\n\t0\t\t\t;(P?TEXT)\n\t0\t\t\t;(P?GLOBAL)\n\t0\t\t\t;(P?PSEUDO)\n\t0\t\t\t;(P?C-MOVE)\n\t0\t\t\t;(P?LDESC)\n\t0\t\t\t;(P?ADJECTIVE)\n\t0\t\t\t;(P?ACTION)\n\t5\t\t\t;(P?SIZE)\n\t0\t\t\t;(P?DESCFCN)\n\t0\t\t\t;(P?CONTFCN)\n\t0\t\t\t;(P?VALUE)\n\t0\t\t\t;(P?SYNONYM)\n\t0\t\t\t;(P?OUT)\n\t0\t\t\t;(P?IN)\n\t0\t\t\t;(P?DOWN)\n\t0\t\t\t;(P?UP)\n\t0\t\t\t;(P?NW)\n\t0\t\t\t;(P?WEST)\n\t0\t\t\t;(P?SW)\n\t0\t\t\t;(P?SOUTH)\n\t0\t\t\t;(P?SE)\n\t0\t\t\t;(P?EAST)\n\t0\t\t\t;(P?NE)\n\t0\t\t\t;(P?NORTH)\n\t.OBJECT DORM-B,FX?RLANDBIT+FX?ONBIT+FX?FLOYDBIT,0,ROOMS,SANFAC-A,0,T?DORM-B\n\t.OBJECT FRIED-BOARD,FX?ACIDBIT,FX?TAKEBIT,0,0,0,T?FRIED-BOARD\n\t.OBJECT MINI-BOOTH,FX?ONBIT+FX?RLANDBIT,0,ROOMS,COMPUTER-ROOM,0,T?MINI-BOOTH\n\t.OBJECT CHRONOMETER,FX?WORNBIT+FX?MUNGBIT,FX?WEARBIT+FX?TAKEBIT,ADVENTURER,SCRUB-BRUSH,0,T?CHRONOMETER\n\t.OBJECT WINDING-STAIR,FX?RLANDBIT+FX?ONBIT,0,ROOMS,BALCONY,0,T?WINDING-STAIR\n\t.OBJECT OIL-CAN,FX?VOWELBIT,FX?TAKEBIT,STORAGE-EAST,0,0,T?OIL-CAN\n\t.OBJECT LAB-STORAGE,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,MAIN-LAB,NEW-BATTERY,T?LAB-STORAGE\n\t.OBJECT REC-CORRIDOR,FX?RLANDBIT+FX?ONBIT,0,ROOMS,BOOTH-1,0,T?REC-CORRIDOR\n\t.OBJECT MECH-CORRIDOR-S,FX?ONBIT+FX?RLANDBIT,0,ROOMS,MECH-CORRIDOR,0,T?MECH-CORRIDOR-S\n\t.OBJECT HANDS,FX?NDESCBIT,0,GLOBAL-OBJECTS,GLOBAL-GAMES,0,T?HANDS\n\t.OBJECT TELEPORTATION-BUTTON-1,FX?NDESCBIT,0,LOCAL-GLOBALS,SLOT,0,T?TELEPORTATION-BUTTON-1\n\t.OBJECT KEY,FX?ACIDBIT,FX?TRYTAKEBIT+FX?INVISIBLE+FX?TOOLBIT+FX?TAKEBIT,ADMIN-CORRIDOR-S,CREVICE,0,T?KEY\n\t.OBJECT PLANETARY-COURSE-CONTROL,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,PLANETARY-DEFENSE,CUBE,T?PLANETARY-COURSE-CONTROL\n\t.OBJECT REACTOR-ACCESS-STAIRS,FX?RLANDBIT,0,ROOMS,REACTOR-CONTROL,0,T?REACTOR-ACCESS-STAIRS\n\t.OBJECT GRAY-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,YELLOW-BUTTON,0,T?GRAY-BUTTON\n\t.OBJECT MIDDLE-OF-STRIP,FX?ONBIT+FX?RLANDBIT,0,ROOMS,STRIP-NEAR-STATION,0,T?MIDDLE-OF-STRIP\n\t.OBJECT PLAN-ROOM,FX?FLOYDBIT+FX?ONBIT+FX?RLANDBIT,0,ROOMS,SYSTEMS-MONITORS,0,T?PLAN-ROOM\n\t.OBJECT GREEN-SPOOL,FX?ACIDBIT,FX?READBIT+FX?TAKEBIT,LIBRARY-LOBBY,0,0,T?GREEN-SPOOL\n\t.OBJECT SPECK,FX?NDESCBIT,0,RELAY,0,0,T?SPECK\n\t.OBJECT CORRIDOR-DOOR,FX?NDESCBIT+FX?OPENBIT,FX?DOORBIT+FX?INVISIBLE,LOCAL-GLOBALS,POD-DOOR,0,T?CORRIDOR-DOOR\n\t.OBJECT COURTYARD,FX?FLOYDBIT+FX?RLANDBIT+FX?ONBIT,0,ROOMS,WINDING-STAIR,0,T?COURTYARD\n\t.OBJECT WINDOW,FX?NDESCBIT,0,LOCAL-GLOBALS,STAIRS,0,T?WINDOW\n\t.OBJECT TELEPORTATION-BUTTON-3,FX?NDESCBIT,0,LOCAL-GLOBALS,TELEPORTATION-BUTTON-2,0,T?TELEPORTATION-BUTTON-3\n\t.OBJECT REACTOR-LOBBY,FX?ONBIT+FX?RLANDBIT,0,ROOMS,DECK-NINE,0,T?REACTOR-LOBBY\n\t.OBJECT SANFAC-D,FX?RLANDBIT+FX?FLOYDBIT+FX?ONBIT,0,ROOMS,DORM-D,0,T?SANFAC-D\n\t.OBJECT SYSTEMS-CORRIDOR-WEST,FX?RLANDBIT+FX?ONBIT,0,ROOMS,REPAIR-ROOM,0,T?SYSTEMS-CORRIDOR-WEST\n\t.OBJECT BROWN-GOO,FX?ACIDBIT,FX?FOODBIT,FOOD-KIT,RED-GOO,0,T?BROWN-GOO\n\t.OBJECT GAS-MASK,FX?ACIDBIT,FX?WEARBIT+FX?TAKEBIT,LAB-DESK,0,0,T?GAS-MASK\n\t.OBJECT INFIRMARY,FX?ONBIT+FX?RLANDBIT,0,ROOMS,FORK,MEDICINE-BOTTLE,T?INFIRMARY\n\t.OBJECT NEW-BATTERY,FX?ACIDBIT,FX?TAKEBIT,LAB-STORAGE,LAB-UNIFORM,0,T?NEW-BATTERY\n\t.OBJECT FLOYD,FX?OPENBIT+FX?TRANSBIT+FX?SEARCHBIT,FX?LIGHTBIT+FX?CONTBIT,ROBOT-SHOP,0,0,T?FLOYD\n\t.OBJECT ME,0,FX?ACTORBIT,GLOBAL-OBJECTS,SLEEP,0,T?ME\n\t.OBJECT KALAMONTEE-PLATFORM,FX?ONBIT+FX?RLANDBIT,0,ROOMS,WAITING-AREA,0,T?KALAMONTEE-PLATFORM\n\t.OBJECT BLACK-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,BROWN-BUTTON,0,T?BLACK-BUTTON\n\t.OBJECT ELEVATOR-LOBBY,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,ROBOT-SHOP,RED-ELEVATOR-BUTTON,T?ELEVATOR-LOBBY\n\t.OBJECT ACHILLES,0,0,REPAIR-ROOM,0,0,T?ACHILLES\n\t.OBJECT DORM-A,FX?RLANDBIT+FX?ONBIT+FX?FLOYDBIT,0,ROOMS,REC-CORRIDOR,0,T?DORM-A\n\t.OBJECT KITCHEN,FX?RLANDBIT+FX?ONBIT,0,ROOMS,MESS-HALL,DISPENSER,T?KITCHEN\n\t.OBJECT BALCONY,FX?RLANDBIT+FX?ONBIT,0,ROOMS,CRAG,0,T?BALCONY\n\t.OBJECT REACTOR-CONTROL,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,PHYSICAL-PLANT,0,T?REACTOR-CONTROL\n\t.OBJECT HELIPAD,FX?ONBIT+FX?RLANDBIT,0,ROOMS,TOWER-CORE,0,T?HELIPAD\n\t.OBJECT PRINT-OUT,FX?ACIDBIT,FX?READBIT+FX?TAKEBIT,COMPUTER-ROOM,0,0,T?PRINT-OUT\n\t.OBJECT LIGHTS,FX?NDESCBIT,0,LOCAL-GLOBALS,SHELVES,0,T?LIGHTS\n\t.OBJECT GREEN-GOO,FX?ACIDBIT,FX?FOODBIT,FOOD-KIT,BROWN-GOO,0,T?GREEN-GOO\n\t.OBJECT MECH-CORRIDOR-N,FX?ONBIT+FX?RLANDBIT,0,ROOMS,LARGE-OFFICE,0,T?MECH-CORRIDOR-N\n\t.OBJECT GOOD-BOARD,FX?NDESCBIT+FX?ACIDBIT,FX?INVISIBLE,ROBOT-HOLE,0,0,T?GOOD-BOARD\n\t.OBJECT ROOMS,0,0,0,0,STRIP-NEAR-RELAY,T?ROOMS\n\t.OBJECT COMBINATION-DIAL,FX?NDESCBIT+FX?MUNGBIT,0,REC-AREA,0,0,T?COMBINATION-DIAL\n\t.OBJECT PROJECT-CORRIDOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,SANFAC-F,0,T?PROJECT-CORRIDOR\n\t.OBJECT ADMIN-CORRIDOR-S,FX?ONBIT+FX?RLANDBIT,0,ROOMS,CORRIDOR-JUNCTION,KEY,T?ADMIN-CORRIDOR-S\n\t.OBJECT ROUND-WHITE-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,BLACK-BUTTON,0,T?ROUND-WHITE-BUTTON\n\t.OBJECT ADVENTURER,FX?NDESCBIT,FX?INVISIBLE,DECK-NINE,0,PATROL-UNIFORM,T?ADVENTURER\n\t.OBJECT FLASK,FX?OPENBIT+FX?SEARCHBIT,FX?TAKEBIT+FX?CONTBIT,TOOL-ROOM,0,0,T?FLASK\n\t.OBJECT LAZARUS-PART,0,FX?TAKEBIT,0,0,0,T?LAZARUS-PART\n\t.OBJECT OLD-BATTERY,FX?ACIDBIT+FX?VOWELBIT,FX?TAKEBIT,LASER,LASER-DIAL,0,T?OLD-BATTERY\n\t.OBJECT DECK-NINE,FX?ONBIT+FX?RLANDBIT,0,ROOMS,BRIG,ADVENTURER,T?DECK-NINE\n\t.OBJECT THIRD-BOARD,0,0,ACCESS-PANEL,FOURTH-BOARD,0,T?THIRD-BOARD\n\t.OBJECT STRIP,FX?NDESCBIT,0,LOCAL-GLOBALS,OFFICE-DOOR,0,T?STRIP\n\t.OBJECT SMALL-OFFICE,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,TRANSPORTATION-SUPPLY,SMALL-DESK,T?SMALL-OFFICE\n\t.OBJECT CARTON,FX?OPENBIT+FX?SEARCHBIT,FX?CONTBIT+FX?TAKEBIT,STORAGE-EAST,OIL-CAN,GOOD-BEDISTOR,T?CARTON\n\t.OBJECT BOOTH-2,FX?ONBIT+FX?RLANDBIT,0,ROOMS,LOWER-ELEVATOR,0,T?BOOTH-2\n\t.OBJECT LOCAL-GLOBALS,0,0,GLOBAL-OBJECTS,0,STRIP,T?LOCAL-GLOBALS\n\t.OBJECT CRAG,FX?RLANDBIT+FX?ONBIT,0,ROOMS,UNDERWATER,0,T?CRAG\n\t.OBJECT ADMIN-CORRIDOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,ADMIN-CORRIDOR-S,0,T?ADMIN-CORRIDOR\n\t.OBJECT BRIG,FX?ONBIT+FX?RLANDBIT,0,ROOMS,0,0,T?BRIG\n\t.OBJECT PROJCON-OFFICE,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,PROJECT-CORRIDOR,0,T?PROJCON-OFFICE\n\t.OBJECT LASER,FX?TRANSBIT+FX?OPENBIT+FX?MUNGBIT,FX?CONTBIT+FX?TAKEBIT,TOOL-ROOM,PLIERS,OLD-BATTERY,T?LASER\n\t.OBJECT CONTROLS,FX?NDESCBIT,0,LOCAL-GLOBALS,LIGHTS,0,T?CONTROLS\n\t.OBJECT LARGE-DESK,FX?NDESCBIT+FX?SEARCHBIT,FX?CONTBIT,LARGE-OFFICE,0,SHUTTLE-CARD,T?LARGE-DESK\n\t.OBJECT CORRIDOR-JUNCTION,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,KITCHEN,0,T?CORRIDOR-JUNCTION\n\t.OBJECT BAD-BEDISTOR,FX?ACIDBIT,FX?TAKEBIT+FX?TRYTAKEBIT,CUBE,0,0,T?BAD-BEDISTOR\n\t.OBJECT TRANSPORTATION-SUPPLY,FX?RLANDBIT,0,ROOMS,PLAN-ROOM,0,T?TRANSPORTATION-SUPPLY\n\t.OBJECT COMM-ROOM,FX?ONBIT+FX?RLANDBIT,0,ROOMS,HELICOPTER,FUNNEL-HOLE,T?COMM-ROOM\n\t.OBJECT SMALL-DESK,FX?SEARCHBIT+FX?NDESCBIT,FX?CONTBIT,SMALL-OFFICE,0,UPPER-ELEVATOR-CARD,T?SMALL-DESK\n\t.OBJECT GLOBAL-OBJECTS,FX?TRANSBIT+FX?SEARCHBIT+FX?OPENBIT+FX?WORNBIT+FX?SCRAMBLEDBIT+FX?MUNGEDBIT+FX?MUNGBIT,FX?WEARBIT+FX?TRYTAKEBIT+FX?SURFACEBIT+FX?TOUCHBIT+FX?INVISIBLE,0,0,ME,T?GLOBAL-OBJECTS\n\t.OBJECT SHUTTLE-DOOR,FX?OPENBIT,FX?INVISIBLE+FX?DOORBIT,LOCAL-GLOBALS,LEVER,0,T?SHUTTLE-DOOR\n\t.OBJECT SHUTTLE-CAR-BETTY,FX?ONBIT+FX?RLANDBIT,0,ROOMS,ALFIE-CONTROL-WEST,0,T?SHUTTLE-CAR-BETTY\n\t.OBJECT YELLOW-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,GREEN-BUTTON,0,T?YELLOW-BUTTON\n\t.OBJECT IT,FX?NDESCBIT,0,GLOBAL-OBJECTS,INTNUM,0,T?IT\n\t.OBJECT PROJECT-CORRIDOR-WEST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,LIBRARY,0,T?PROJECT-CORRIDOR-WEST\n\t.OBJECT COMM-SCREEN,FX?NDESCBIT,FX?READBIT,COMM-ROOM,SEND-CONSOLE,0,T?COMM-SCREEN\n\t.OBJECT STRIP-NEAR-STATION,FX?ONBIT+FX?RLANDBIT,0,ROOMS,STATION-384,0,T?STRIP-NEAR-STATION\n\t.OBJECT UPPER-ELEVATOR-CARD,FX?VOWELBIT,FX?READBIT+FX?TAKEBIT,SMALL-DESK,KITCHEN-CARD,0,T?UPPER-ELEVATOR-CARD\n\t.OBJECT GOOD-BEDISTOR,FX?ACIDBIT,FX?TAKEBIT,CARTON,MEGAFUSE-K,0,T?GOOD-BEDISTOR\n\t.OBJECT STORAGE-EAST,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,MECH-CORRIDOR-S,CARTON,T?STORAGE-EAST\n\t.OBJECT CONFERENCE-DOOR,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,BED,0,T?CONFERENCE-DOOR\n\t.OBJECT SANFAC-C,FX?RLANDBIT+FX?ONBIT+FX?FLOYDBIT,0,ROOMS,DORM-C,0,T?SANFAC-C\n\t.OBJECT CREVICE,FX?NDESCBIT,0,ADMIN-CORRIDOR-S,0,0,T?CREVICE\n\t.OBJECT PHYSICAL-PLANT,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,STORAGE-EAST,0,T?PHYSICAL-PLANT\n\t.OBJECT REACTOR-ELEVATOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,REACTOR-ACCESS-STAIRS,0,T?REACTOR-ELEVATOR\n\t.OBJECT BETTY-CONTROL-WEST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,BETTY-CONTROL-EAST,0,T?BETTY-CONTROL-WEST\n\t.OBJECT CHEMICAL-FLUID,0,0,0,0,0,T?CHEMICAL-FLUID\n\t.OBJECT LOWER-ELEVATOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,UPPER-ELEVATOR,0,T?LOWER-ELEVATOR\n\t.OBJECT MAGNET,0,FX?TAKEBIT+FX?TRYTAKEBIT,TOOL-ROOM,FLASK,0,T?MAGNET\n\t.OBJECT RADIATION-LOCK-WEST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,BIO-LOCK-EAST,0,T?RADIATION-LOCK-WEST\n\t.OBJECT UNDERWATER,FX?RWATERBIT+FX?ONBIT,0,ROOMS,BETTY-CONTROL-WEST,0,T?UNDERWATER\n\t.OBJECT REC-AREA,FX?FLOYDBIT+FX?RLANDBIT+FX?ONBIT,0,ROOMS,PLAIN-HALL,COMBINATION-DIAL,T?REC-AREA\n\t.OBJECT BLATHER,FX?VOWELBIT,FX?ACTORBIT,0,0,0,T?BLATHER\n\t.OBJECT BIO-DOOR-EAST,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,CRYO-ELEVATOR-DOOR,0,T?BIO-DOOR-EAST\n\t.OBJECT CANTEEN,FX?SEARCHBIT,FX?CONTBIT+FX?TAKEBIT,MESS-HALL,0,0,T?CANTEEN\n\t.OBJECT OFFICE-DOOR,FX?NDESCBIT+FX?VOWELBIT,FX?DOORBIT,LOCAL-GLOBALS,RAD-DOOR-WEST,0,T?OFFICE-DOOR\n\t.OBJECT ID-CARD,FX?VOWELBIT,FX?READBIT+FX?TAKEBIT,PATROL-UNIFORM,0,0,T?ID-CARD\n\t.OBJECT ALFIE-CONTROL-EAST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,SHUTTLE-CAR-ALFIE,0,T?ALFIE-CONTROL-EAST\n\t.OBJECT LADDER,0,FX?TAKEBIT,STORAGE-WEST,CAN,0,T?LADDER\n\t.OBJECT COMPUTER-ROOM,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,PROJECT-CORRIDOR-EAST,PRINT-OUT,T?COMPUTER-ROOM\n\t.OBJECT ADMIN-CORRIDOR-N,FX?ONBIT+FX?RLANDBIT,0,ROOMS,ADMIN-CORRIDOR,0,T?ADMIN-CORRIDOR-N\n\t.OBJECT KITCHEN-DOOR,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,STORAGE-WEST-DOOR,0,T?KITCHEN-DOOR\n\t.OBJECT MAIN-LAB,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,MINI-BOOTH,0,T?MAIN-LAB\n\t.OBJECT SYSTEMS-CORRIDOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,SYSTEMS-CORRIDOR-WEST,0,T?SYSTEMS-CORRIDOR\n\t.OBJECT LOWER-ELEVATOR-DOOR,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,UPPER-ELEVATOR-DOOR,0,T?LOWER-ELEVATOR-DOOR\n\t.OBJECT MEGAFUSE-K,FX?ACIDBIT,FX?TAKEBIT,CARTON,MEGAFUSE-B,0,T?MEGAFUSE-K\n\t.OBJECT FUNNEL-HOLE,FX?NDESCBIT,0,COMM-ROOM,COMM-SCREEN,0,T?FUNNEL-HOLE\n\t.OBJECT CRYO-ELEVATOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,PROJCON-OFFICE,0,T?CRYO-ELEVATOR\n\t.OBJECT WAITING-AREA,FX?ONBIT+FX?RLANDBIT,0,ROOMS,OBSERVATION-DECK,0,T?WAITING-AREA\n\t.OBJECT REPAIR-ROOM,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,INFIRMARY,ROBOT-HOLE,T?REPAIR-ROOM\n\t.OBJECT BIO-LAB,FX?ONBIT+FX?RLANDBIT,0,ROOMS,RADIATION-LOCK-EAST,TRIFFID,T?BIO-LAB\n\t.OBJECT PLAYBACK-BUTTON,FX?NDESCBIT,0,COMM-ROOM,RECEIVE-CONSOLE,0,T?PLAYBACK-BUTTON\n\t.OBJECT FIRST-BOARD,0,0,ACCESS-PANEL,0,0,T?FIRST-BOARD\n\t.OBJECT CRYO-ELEVATOR-DOOR,FX?NDESCBIT,FX?INVISIBLE,LOCAL-GLOBALS,HELICOPTER-OBJECT,0,T?CRYO-ELEVATOR-DOOR\n\t.OBJECT OBSERVATION-DECK,FX?ONBIT+FX?RLANDBIT,0,ROOMS,COMM-ROOM,0,T?OBSERVATION-DECK\n\t.OBJECT LOWER-ELEVATOR-CARD,0,FX?READBIT+FX?TAKEBIT,0,0,0,T?LOWER-ELEVATOR-CARD\n\t.OBJECT ACCESS-PANEL,FX?SEARCHBIT+FX?NDESCBIT+FX?VOWELBIT,FX?CONTBIT,PLANETARY-DEFENSE,0,SECOND-BOARD,T?ACCESS-PANEL\n\t.OBJECT SCRUB-BRUSH,0,FX?TAKEBIT,ADVENTURER,0,0,T?SCRUB-BRUSH\n\t.OBJECT GLOBAL-SHUTTLE,FX?NDESCBIT,0,LOCAL-GLOBALS,TELEPORTATION-BUTTON-3,0,T?GLOBAL-SHUTTLE\n\t.OBJECT STORAGE-WEST-DOOR,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,CONFERENCE-DOOR,0,T?STORAGE-WEST-DOOR\n\t.OBJECT LARGE-OFFICE,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,SMALL-OFFICE,LARGE-DESK,T?LARGE-OFFICE\n\t.OBJECT CONFERENCE-ROOM,FX?ONBIT+FX?RLANDBIT,0,ROOMS,REC-AREA,0,T?CONFERENCE-ROOM\n\t.OBJECT TELEPORTATION-CARD,0,FX?READBIT+FX?TAKEBIT,LAB-UNIFORM,0,0,T?TELEPORTATION-CARD\n\t.OBJECT PLIERS,0,FX?TAKEBIT,TOOL-ROOM,MAGNET,0,T?PLIERS\n\t.OBJECT MEGAFUSE-B,FX?ACIDBIT,FX?TAKEBIT,CARTON,CRACKED-BOARD,0,T?MEGAFUSE-B\n\t.OBJECT PLANETARY-DEFENSE,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,PHYSICAL-PLANT-TWO,ACCESS-PANEL,T?PLANETARY-DEFENSE\n\t.OBJECT LEVER,FX?NDESCBIT,0,LOCAL-GLOBALS,GLOBAL-SHUTTLE,0,T?LEVER\n\t.OBJECT LIBRARY-LOBBY,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,PLANETARY-COURSE-CONTROL,TERMINAL,T?LIBRARY-LOBBY\n\t.OBJECT CLIFF,FX?NDESCBIT,0,LOCAL-GLOBALS,WINDOW,0,T?CLIFF\n\t.OBJECT BIO-LOCK-EAST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,BIO-LOCK-WEST,MINI-CARD,T?BIO-LOCK-EAST\n\t.OBJECT RECEIVE-CONSOLE,FX?NDESCBIT,0,COMM-ROOM,0,0,T?RECEIVE-CONSOLE\n\t.OBJECT STRIP-NEAR-RELAY,FX?ONBIT+FX?RLANDBIT,0,ROOMS,MIDDLE-OF-STRIP,RELAY,T?STRIP-NEAR-RELAY\n\t.OBJECT AMBASSADOR,FX?VOWELBIT,FX?ACTORBIT,0,0,0,T?AMBASSADOR\n\t.OBJECT BED,FX?NDESCBIT,FX?VEHBIT+FX?CLIMBBIT,LOCAL-GLOBALS,SHUTTLE-DOOR,0,T?BED\n\t.OBJECT LAB-UNIFORM,FX?SEARCHBIT,FX?WEARBIT+FX?CONTBIT+FX?TAKEBIT,LAB-STORAGE,0,COMBINATION-PAPER,T?LAB-UNIFORM\n\t.OBJECT PADLOCK,FX?NDESCBIT+FX?MUNGBIT,FX?TRYTAKEBIT+FX?TAKEBIT,MESS-CORRIDOR,0,0,T?PADLOCK\n\t.OBJECT LIGHT-BUTTON,FX?NDESCBIT,0,LAB-OFFICE,LAB-DESK,0,T?LIGHT-BUTTON\n\t.OBJECT SQUARE-WHITE-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,ROUND-WHITE-BUTTON,0,T?SQUARE-WHITE-BUTTON\n\t.OBJECT RAD-DOOR-EAST,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,BIO-DOOR-WEST,0,T?RAD-DOOR-EAST\n\t.OBJECT GLOBAL-POD,FX?NDESCBIT+FX?VOWELBIT,FX?VEHBIT,LOCAL-GLOBALS,CONTROLS,0,T?GLOBAL-POD\n\t.OBJECT STATION-384,FX?ONBIT+FX?RLANDBIT,0,ROOMS,AUXILIARY-BOOTH,0,T?STATION-384\n\t.OBJECT MESS-HALL,FX?RLANDBIT+FX?FLOYDBIT+FX?ONBIT,0,ROOMS,DORM-CORRIDOR,CANTEEN,T?MESS-HALL\n\t.OBJECT SYSTEMS-MONITORS,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,SANFAC-E,0,T?SYSTEMS-MONITORS\n\t.OBJECT DARK-BUTTON,FX?NDESCBIT,0,LAB-OFFICE,LIGHT-BUTTON,0,T?DARK-BUTTON\n\t.OBJECT TOWEL,0,FX?TAKEBIT+FX?READBIT,0,0,0,T?TOWEL\n\t.OBJECT TELEPORTATION-BUTTON-2,FX?NDESCBIT,0,LOCAL-GLOBALS,TELEPORTATION-BUTTON-1,0,T?TELEPORTATION-BUTTON-2\n\t.OBJECT SANFAC-B,FX?RLANDBIT+FX?ONBIT+FX?FLOYDBIT,0,ROOMS,DORM-B,0,T?SANFAC-B\n\t.OBJECT DEAD-FLOYD,0,0,0,0,0,T?DEAD-FLOYD\n\t.OBJECT FORK,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,ESCALATOR,0,T?FORK\n\t.OBJECT MEDICINE,0,FX?FOODBIT,MEDICINE-BOTTLE,0,0,T?MEDICINE\n\t.OBJECT DORM-CORRIDOR,FX?RLANDBIT+FX?ONBIT,0,ROOMS,STORAGE-WEST,0,T?DORM-CORRIDOR\n\t.OBJECT RIFT,FX?NDESCBIT,0,LOCAL-GLOBALS,KITCHEN-DOOR,0,T?RIFT\n\t.OBJECT LIBRARY,FX?FLOYDBIT+FX?ONBIT+FX?RLANDBIT,0,ROOMS,BOOTH-3,SPOOL-READER,T?LIBRARY\n\t.OBJECT CELERY,FX?NDESCBIT,FX?FOODBIT,0,0,0,T?CELERY\n\t.OBJECT GREEN-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,BLUE-BUTTON,0,T?GREEN-BUTTON\n\t.OBJECT TERMINAL,0,FX?LIGHTBIT,LIBRARY-LOBBY,GREEN-SPOOL,0,T?TERMINAL\n\t.OBJECT RED-SPOOL,FX?ACIDBIT,FX?READBIT+FX?TAKEBIT,INFIRMARY,0,0,T?RED-SPOOL\n\t.OBJECT LASER-DIAL,FX?NDESCBIT+FX?MUNGBIT,0,LASER,0,0,T?LASER-DIAL\n\t.OBJECT SANFAC-F,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,PROJECT-CORRIDOR-WEST,0,T?SANFAC-F\n\t.OBJECT LAMP,0,FX?TAKEBIT,RADIATION-LAB,BROWN-SPOOL,0,T?LAMP\n\t.OBJECT PROJECT-CORRIDOR-EAST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,CRYO-ANTEROOM,0,T?PROJECT-CORRIDOR-EAST\n\t.OBJECT ESCAPE-POD,FX?ONBIT+FX?RLANDBIT,0,ROOMS,DECK-EIGHT,SAFETY-WEB,T?ESCAPE-POD\n\t.OBJECT TOWER-CORE,FX?ONBIT+FX?RLANDBIT,0,ROOMS,BOOTH-2,0,T?TOWER-CORE\n\t.OBJECT RAT-ANT,0,FX?ACTORBIT,BIO-LAB,0,0,T?RAT-ANT\n\t.OBJECT SHELVES,FX?NDESCBIT,0,LOCAL-GLOBALS,TABLES,0,T?SHELVES\n\t.OBJECT BROWN-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,GRAY-BUTTON,0,T?BROWN-BUTTON\n\t.OBJECT BLUE-ELEVATOR-BUTTON,FX?NDESCBIT,0,ELEVATOR-LOBBY,0,0,T?BLUE-ELEVATOR-BUTTON\n\t.OBJECT MEMO,FX?ACIDBIT,FX?TAKEBIT+FX?READBIT,0,0,0,T?MEMO\n\t.OBJECT TROLL,0,FX?ACTORBIT,BIO-LAB,RAT-ANT,0,T?TROLL\n\t.OBJECT BIO-DOOR-WEST,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,BIO-DOOR-EAST,0,T?BIO-DOOR-WEST\n\t.OBJECT CUBE,FX?SEARCHBIT+FX?NDESCBIT+FX?MUNGBIT,FX?CONTBIT,PLANETARY-COURSE-CONTROL,0,BAD-BEDISTOR,T?CUBE\n\t.OBJECT BROWN-SPOOL,FX?ACIDBIT,FX?READBIT+FX?TAKEBIT,RADIATION-LAB,0,0,T?BROWN-SPOOL\n\t.OBJECT SLOT,FX?NDESCBIT,0,LOCAL-GLOBALS,GANGWAY-DOOR,0,T?SLOT\n\t.OBJECT SHUTTLE-CAR-ALFIE,FX?ONBIT+FX?RLANDBIT,0,ROOMS,ESCAPE-POD,0,T?SHUTTLE-CAR-ALFIE\n\t.OBJECT CRACKED-BOARD,FX?ACIDBIT,FX?TAKEBIT,CARTON,0,0,T?CRACKED-BOARD\n\t.OBJECT HELICOPTER,FX?ONBIT+FX?RLANDBIT,0,ROOMS,HELIPAD,0,T?HELICOPTER\n\t.OBJECT POD-DOOR,FX?NDESCBIT+FX?VOWELBIT,FX?DOORBIT,LOCAL-GLOBALS,GLOBAL-POD,0,T?POD-DOOR\n\t.OBJECT DORM-D,FX?RLANDBIT+FX?ONBIT+FX?FLOYDBIT,0,ROOMS,SANFAC-C,0,T?DORM-D\n\t.OBJECT BOOTH-3,FX?ONBIT+FX?RLANDBIT,0,ROOMS,LIBRARY-LOBBY,0,T?BOOTH-3\n\t.OBJECT HIGH-PROTEIN,0,FX?FOODBIT,0,0,0,T?HIGH-PROTEIN\n\t.OBJECT GRUE,0,FX?ACTORBIT,BIO-LAB,TROLL,0,T?GRUE\n\t.OBJECT STORAGE-WEST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,MESS-CORRIDOR,LADDER,T?STORAGE-WEST\n\t.OBJECT MEDICINE-BOTTLE,FX?TRANSBIT+FX?SEARCHBIT,FX?READBIT+FX?TAKEBIT+FX?CONTBIT,INFIRMARY,RED-SPOOL,MEDICINE,T?MEDICINE-BOTTLE\n\t.OBJECT SYSTEMS-CORRIDOR-EAST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,SYSTEMS-CORRIDOR,0,T?SYSTEMS-CORRIDOR-EAST\n\t.OBJECT CRYO-ANTEROOM,FX?ONBIT+FX?RLANDBIT,0,ROOMS,CRYO-ELEVATOR,0,T?CRYO-ANTEROOM\n\t.OBJECT WEST-WING,FX?FLOYDBIT+FX?RLANDBIT+FX?ONBIT,0,ROOMS,COURTYARD,0,T?WEST-WING\n\t.OBJECT KITCHEN-CARD,0,FX?READBIT+FX?TAKEBIT,SMALL-DESK,0,0,T?KITCHEN-CARD\n\t.OBJECT STAIRS,FX?NDESCBIT,FX?CLIMBBIT,LOCAL-GLOBALS,0,0,T?STAIRS\n\t.OBJECT BOOTH-1,FX?RLANDBIT+FX?ONBIT,0,ROOMS,CONFERENCE-ROOM,0,T?BOOTH-1\n\t.OBJECT CHEMICAL-DISPENSER,FX?NDESCBIT+FX?MUNGBIT,0,MACHINE-SHOP,0,0,T?CHEMICAL-DISPENSER\n\t.OBJECT RELAY,FX?TRANSBIT+FX?NDESCBIT,0,STRIP-NEAR-RELAY,0,SPECK,T?RELAY\n\t.OBJECT PHYSICAL-PLANT-TWO,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,SYSTEMS-CORRIDOR-EAST,0,T?PHYSICAL-PLANT-TWO\n\t.OBJECT SECOND-BOARD,0,FX?TAKEBIT+FX?TRYTAKEBIT,ACCESS-PANEL,THIRD-BOARD,0,T?SECOND-BOARD\n\t.OBJECT CAN,0,FX?TAKEBIT,STORAGE-WEST,0,0,T?CAN\n\t.OBJECT LAB-OFFICE,FX?ONBIT+FX?RLANDBIT,0,ROOMS,RADIATION-LAB,FUNGICIDE-BUTTON,T?LAB-OFFICE\n\t.OBJECT SHUTTLE-CARD,0,FX?READBIT+FX?TAKEBIT,LARGE-DESK,0,0,T?SHUTTLE-CARD\n\t.OBJECT GROUND,FX?NDESCBIT,0,GLOBAL-OBJECTS,IT,0,T?GROUND\n\t.OBJECT LAB-DESK,FX?NDESCBIT+FX?SEARCHBIT,FX?CONTBIT,LAB-OFFICE,0,GAS-MASK,T?LAB-DESK\n\t.OBJECT FUNGICIDE-BUTTON,FX?NDESCBIT,0,LAB-OFFICE,DARK-BUTTON,0,T?FUNGICIDE-BUTTON\n\t.OBJECT TABLES,FX?NDESCBIT,0,LOCAL-GLOBALS,OCEAN,0,T?TABLES\n\t.OBJECT NOT-HERE-OBJECT,0,0,0,0,0,T?NOT-HERE-OBJECT\n\t.OBJECT SANFAC-A,FX?FLOYDBIT+FX?RLANDBIT+FX?ONBIT,0,ROOMS,DORM-A,0,T?SANFAC-A\n\t.OBJECT COMBINATION-PAPER,FX?ACIDBIT,FX?READBIT+FX?TAKEBIT,LAB-UNIFORM,TELEPORTATION-CARD,0,T?COMBINATION-PAPER\n\t.OBJECT DECK-EIGHT,FX?ONBIT+FX?RLANDBIT,0,ROOMS,GANGWAY,0,T?DECK-EIGHT\n\t.OBJECT GANGWAY-DOOR,FX?NDESCBIT+FX?OPENBIT,FX?DOORBIT+FX?INVISIBLE,LOCAL-GLOBALS,CORRIDOR-DOOR,0,T?GANGWAY-DOOR\n\t.OBJECT MICROBE,0,FX?ACTORBIT,0,0,0,T?MICROBE\n\t.OBJECT INTNUM,0,0,GLOBAL-OBJECTS,LOCAL-GLOBALS,0,T?INTNUM\n\t.OBJECT GLOBAL-GAMES,FX?NDESCBIT,0,GLOBAL-OBJECTS,GLOBAL-DOORWAY,0,T?GLOBAL-GAMES\n\t.OBJECT FOOD-KIT,FX?SEARCHBIT,FX?CONTBIT+FX?TAKEBIT,0,0,GREEN-GOO,T?FOOD-KIT\n\t.OBJECT SLEEP,FX?NDESCBIT,0,GLOBAL-OBJECTS,HANDS,0,T?SLEEP\n\t.OBJECT BIO-LOCK-WEST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,LAB-STORAGE,0,T?BIO-LOCK-WEST\n\t.OBJECT MESS-CORRIDOR,FX?RLANDBIT+FX?ONBIT,0,ROOMS,SANFAC-D,PADLOCK,T?MESS-CORRIDOR\n\t.OBJECT DISPENSER,FX?NDESCBIT+FX?TRANSBIT+FX?OPENBIT+FX?SEARCHBIT+FX?MUNGBIT,FX?CONTBIT,KITCHEN,0,0,T?DISPENSER\n\t.OBJECT SANFAC-E,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,ADMIN-CORRIDOR-N,0,T?SANFAC-E\n\t.OBJECT RAD-DOOR-WEST,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,RAD-DOOR-EAST,0,T?RAD-DOOR-WEST\n\t.OBJECT MINI-CARD,FX?NDESCBIT,FX?READBIT+FX?INVISIBLE+FX?TAKEBIT,BIO-LOCK-EAST,0,0,T?MINI-CARD\n\t.OBJECT RED-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,CHEMICAL-DISPENSER,0,T?RED-BUTTON\n\t.OBJECT GLOBAL-DOORWAY,FX?NDESCBIT,0,GLOBAL-OBJECTS,GROUND,0,T?GLOBAL-DOORWAY\n\t.OBJECT UPPER-ELEVATOR-DOOR,FX?NDESCBIT,FX?DOORBIT,LOCAL-GLOBALS,REACTOR-ELEVATOR-DOOR,0,T?UPPER-ELEVATOR-DOOR\n\t.OBJECT HELICOPTER-OBJECT,FX?NDESCBIT,FX?VEHBIT,LOCAL-GLOBALS,ELEVATOR-BUTTON,0,T?HELICOPTER-OBJECT\n\t.OBJECT TRIFFID,0,FX?ACTORBIT,BIO-LAB,GRUE,0,T?TRIFFID\n\t.OBJECT ROBOT-SHOP,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,MACHINE-SHOP,FLOYD,T?ROBOT-SHOP\n\t.OBJECT ESCALATOR,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,LAWANDA-PLATFORM,0,T?ESCALATOR\n\t.OBJECT GANGWAY,FX?ONBIT+FX?RLANDBIT,0,ROOMS,REACTOR-LOBBY,0,T?GANGWAY\n\t.OBJECT SAFETY-WEB,FX?NDESCBIT,FX?VEHBIT+FX?CLIMBBIT,ESCAPE-POD,0,0,T?SAFETY-WEB\n\t.OBJECT BROCHURE,FX?ACIDBIT,FX?READBIT+FX?TAKEBIT,0,0,0,T?BROCHURE\n\t.OBJECT TOOL-ROOM,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,REACTOR-ELEVATOR,LASER,T?TOOL-ROOM\n\t.OBJECT BLUE-BUTTON,FX?NDESCBIT,0,MACHINE-SHOP,RED-BUTTON,0,T?BLUE-BUTTON\n\t.OBJECT UPPER-ELEVATOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,ELEVATOR-LOBBY,0,T?UPPER-ELEVATOR\n\t.OBJECT DORM-C,FX?RLANDBIT+FX?FLOYDBIT+FX?ONBIT,0,ROOMS,SANFAC-B,0,T?DORM-C\n\t.OBJECT LAWANDA-PLATFORM,FX?ONBIT+FX?RLANDBIT+FX?FLOYDBIT,0,ROOMS,KALAMONTEE-PLATFORM,0,T?LAWANDA-PLATFORM\n\t.OBJECT AUXILIARY-BOOTH,FX?ONBIT+FX?RLANDBIT,0,ROOMS,LAB-OFFICE,0,T?AUXILIARY-BOOTH\n\t.OBJECT ALFIE-CONTROL-WEST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,ALFIE-CONTROL-EAST,0,T?ALFIE-CONTROL-WEST\n\t.OBJECT SPOOL-READER,FX?OPENBIT+FX?SEARCHBIT,FX?CONTBIT+FX?LIGHTBIT,LIBRARY,0,0,T?SPOOL-READER\n\t.OBJECT PATROL-UNIFORM,FX?OPENBIT+FX?SEARCHBIT+FX?WORNBIT,FX?CONTBIT+FX?WEARBIT+FX?TAKEBIT,ADVENTURER,CHRONOMETER,ID-CARD,T?PATROL-UNIFORM\n\t.OBJECT ROBOT-HOLE,FX?TRANSBIT+FX?NDESCBIT,FX?CONTBIT,REPAIR-ROOM,ACHILLES,GOOD-BOARD,T?ROBOT-HOLE\n\t.OBJECT RADIATION-LOCK-EAST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,RADIATION-LOCK-WEST,0,T?RADIATION-LOCK-EAST\n\t.OBJECT RADIATION-LAB,FX?ONBIT+FX?RLANDBIT,0,ROOMS,BIO-LAB,LAMP,T?RADIATION-LAB\n\t.OBJECT OCEAN,FX?NDESCBIT+FX?VOWELBIT,0,LOCAL-GLOBALS,CLIFF,0,T?OCEAN\n\t.OBJECT SEND-CONSOLE,FX?NDESCBIT,0,COMM-ROOM,PLAYBACK-BUTTON,0,T?SEND-CONSOLE\n\t.OBJECT PLAIN-HALL,FX?RLANDBIT+FX?ONBIT,0,ROOMS,WEST-WING,0,T?PLAIN-HALL\n\t.OBJECT MECH-CORRIDOR,FX?ONBIT+FX?RLANDBIT,0,ROOMS,MECH-CORRIDOR-N,0,T?MECH-CORRIDOR\n\t.OBJECT REACTOR-ELEVATOR-DOOR,0,FX?DOORBIT,LOCAL-GLOBALS,RIFT,0,T?REACTOR-ELEVATOR-DOOR\n\t.OBJECT RED-GOO,FX?ACIDBIT,FX?FOODBIT,FOOD-KIT,0,0,T?RED-GOO\n\t.OBJECT RED-ELEVATOR-BUTTON,FX?NDESCBIT,0,ELEVATOR-LOBBY,BLUE-ELEVATOR-BUTTON,0,T?RED-ELEVATOR-BUTTON\n\t.OBJECT FOURTH-BOARD,0,0,ACCESS-PANEL,FIRST-BOARD,0,T?FOURTH-BOARD\n\t.OBJECT MACHINE-SHOP,FX?ONBIT+FX?FLOYDBIT+FX?RLANDBIT,0,ROOMS,TOOL-ROOM,SQUARE-WHITE-BUTTON,T?MACHINE-SHOP\n\t.OBJECT PSEUDO-OBJECT,0,0,0,0,0,T?PSEUDO-OBJECT\n\t.OBJECT BETTY-CONTROL-EAST,FX?ONBIT+FX?RLANDBIT,0,ROOMS,SHUTTLE-CAR-BETTY,0,T?BETTY-CONTROL-EAST\n\t.OBJECT ELEVATOR-BUTTON,FX?NDESCBIT,0,LOCAL-GLOBALS,LOWER-ELEVATOR-DOOR,0,T?ELEVATOR-BUTTON\n\t.ENDT\n\n; OBJECT PROPERTY TABLES ARE DEFINED HERE\n\nOBJPRP::\n\nT?DORM-B::\t.TABLE\t\t\t; TABLE FOR OBJECT DORM-B\n\t.STRL \"Dorm B\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SANFAC-B\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?108\n\t.PROP 2,P?C-MOVE\n\tT?1406\n\t.PROP 4,P?PSEUDO\n\tW?PARTITION\t\t; NAME\n\tPARTITION-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE BED\n\t.BYTE\t0\n\t.ENDT\n\nT?FRIED-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT FRIED-BOARD\n\t.STRL \"fried seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tFRIED-BOARD-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?FRIED\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?MINI-BOOTH::\t.TABLE\t\t\t; TABLE FOR OBJECT MINI-BOOTH\n\t.STRL \"Miniaturization Booth\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE COMPUTER-ROOM\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE COMPUTER-ROOM\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?255\n\t.PROP 2,P?C-MOVE\n\tT?2307\n\t.PROP 8,P?PSEUDO\n\tW?KEYBOARD\t\t; NAME\n\tKEYBOARD-PSEUDO\t\t; HANDLER\n\tW?BOOTH\t\t; NAME\n\tIN-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE SLOT\n\t.BYTE\t0\n\t.ENDT\n\nT?CHRONOMETER::\t.TABLE\t\t\t; TABLE FOR OBJECT CHRONOMETER\n\t.STRL \"chronometer\"\n\t.PROP 6,P?SYNONYM\n\tW?CHRONOMETER\n\tW?WRISTWATCH\n\tW?WATCH\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tCHRONOMETER-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?WRIST\n\t.BYTE\t0\n\t.ENDT\n\nT?WINDING-STAIR::\t.TABLE\t\t\t; TABLE FOR OBJECT WINDING-STAIR\n\t.STRL \"Winding Stair\"\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE COURTYARD\t\t; TO ROOM\n\t.PROP 3,P?DOWN\t\t; CONDITIONAL EXIT\n\tWATER-LEVEL-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tWINDING-STAIR-F\n\t.PROP 2,P?C-MOVE\n\tT?406\n\t.PROP 2,P?GLOBAL\n\t.BYTE CLIFF\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?OIL-CAN::\t.TABLE\t\t\t; TABLE FOR OBJECT OIL-CAN\n\t.STRL \"oil can\"\n\t.PROP 2,P?SYNONYM\n\tW?CAN\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tOIL-CAN-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE A?OIL\n\t.PROP 2,P?FDESC\n\tSTR?135\n\t.BYTE\t0\n\t.ENDT\n\nT?LAB-STORAGE::\t.TABLE\t\t\t; TABLE FOR OBJECT LAB-STORAGE\n\t.STRL \"Lab Storage\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MAIN-LAB\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE MAIN-LAB\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?258\n\t.PROP 2,P?C-MOVE\n\tT?2507\n\t.PROP 8,P?PSEUDO\n\tW?RACK\t\t; NAME\n\tCARPET-PSEUDO\t\t; HANDLER\n\tW?SUPPLIES\t\t; NAME\n\tSUPPLIES-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE SHELVES\n\t.BYTE\t0\n\t.ENDT\n\nT?REC-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT REC-CORRIDOR\n\t.STRL \"Rec Corridor\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-B\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-A\t\t; TO ROOM\n\t.PROP 1,P?SW\t\t; UNCONDITIONAL EXIT\n\t.BYTE PLAIN-HALL\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-AREA\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?107\n\t.PROP 2,P?C-MOVE\n\tT?1106\n\t.BYTE\t0\n\t.ENDT\n\nT?MECH-CORRIDOR-S::\t.TABLE\t\t\t; TABLE FOR OBJECT MECH-CORRIDOR-S\n\t.STRL \"Mech Corridor South\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SE\t\t; UNCONDITIONAL EXIT\n\t.BYTE ROBOT-SHOP\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MACHINE-SHOP\t\t; TO ROOM\n\t.PROP 1,P?SW\t\t; UNCONDITIONAL EXIT\n\t.BYTE TOOL-ROOM\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?133\n\t.PROP 2,P?C-MOVE\n\tT?3706\n\t.BYTE\t0\n\t.ENDT\n\nT?HANDS::\t.TABLE\t\t\t; TABLE FOR OBJECT HANDS\n\t.STRL \"pair of hands\"\n\t.PROP 4,P?SYNONYM\n\tW?PAIR\n\tW?HANDS\n\t.PROP 2,P?ACTION\n\tHANDS-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?BARE\n\t.BYTE\t0\n\t.ENDT\n\nT?TELEPORTATION-BUTTON-1::\t.TABLE\t\t\t; TABLE FOR OBJECT TELEPORTATION-BUTTON-1\n\t.STRL \"brown button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tTELEPORTATION-BUTTON-1-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BROWN\n\t.BYTE A?FIRST\n\t.BYTE\t0\n\t.ENDT\n\nT?KEY::\t.TABLE\t\t\t; TABLE FOR OBJECT KEY\n\t.STRL \"key\"\n\t.PROP 6,P?SYNONYM\n\tW?KEY\n\tW?METAL\n\tW?OBJECT\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ACTION\n\tKEY-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?PIECE\n\t.BYTE A?STEEL\n\t.BYTE A?IRON\n\t.BYTE A?SHINY\n\t.PROP 2,P?FDESC\n\tSTR?121\n\t.BYTE\t0\n\t.ENDT\n\nT?PLANETARY-COURSE-CONTROL::\t.TABLE\t\t\t; TABLE FOR OBJECT PLANETARY-COURSE-CONTROL\n\t.STRL \"Course Control\"\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tPLANETARY-COURSE-CONTROL-F\n\t.PROP 2,P?C-MOVE\n\tT?1107\n\t.PROP 2,P?GLOBAL\n\t.BYTE CONTROLS\n\t.BYTE LIGHTS\n\t.BYTE\t0\n\t.ENDT\n\nT?REACTOR-ACCESS-STAIRS::\t.TABLE\t\t\t; TABLE FOR OBJECT REACTOR-ACCESS-STAIRS\n\t.STRL \"Reactor Access Stairs\"\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE REACTOR-CONTROL\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE REACTOR-ACCESS-STAIRS\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?125\n\t.PROP 2,P?C-MOVE\n\tT?4106\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?GRAY-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT GRAY-BUTTON\n\t.STRL \"gray button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?GRAY\n\t.BYTE A?GREY\n\t.PROP 2,P?C-MOVE\n\t5\n\t.BYTE\t0\n\t.ENDT\n\nT?MIDDLE-OF-STRIP::\t.TABLE\t\t\t; TABLE FOR OBJECT MIDDLE-OF-STRIP\n\t.STRL \"Middle of Strip\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE STRIP-NEAR-RELAY\t\t; TO ROOM\n\t.PROP 2,P?EAST\t\t; IMPOSSIBLE EXIT\n\tSTR?293\t\t; FAILURE MESSAGE\n\t.PROP 4,P?SOUTH\t\t; CONDITIONAL EXIT\n\t.BYTE STRIP-NEAR-STATION\t\t; TO ROOM\n\t.BYTE NO-MICROBE\t\t; IF FLAG IS TRUE\n\tSTR?292\t\t; FAILURE MESSAGE\n\t.PROP 2,P?WEST\t\t; IMPOSSIBLE EXIT\n\tSTR?293\t\t; FAILURE MESSAGE\n\t.PROP 2,P?ACTION\n\tMIDDLE-OF-STRIP-F\n\t.PROP 2,P?LDESC\n\tSTR?291\n\t.PROP 2,P?C-MOVE\n\tT?3607\n\t.PROP 4,P?PSEUDO\n\tW?VOID\t\t; NAME\n\tVOID-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STRIP\n\t.BYTE\t0\n\t.ENDT\n\nT?PLAN-ROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT PLAN-ROOM\n\t.STRL \"Plan Room\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?124\n\t.PROP 2,P?C-MOVE\n\tT?3106\n\t.PROP 8,P?PSEUDO\n\tW?CUBBYHOLE\t\t; NAME\n\tCUBBYHOLE-PSEUDO\t\t; HANDLER\n\tW?MAPS\t\t; NAME\n\tMAPS-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?GREEN-SPOOL::\t.TABLE\t\t\t; TABLE FOR OBJECT GREEN-SPOOL\n\t.STRL \"green spool\"\n\t.PROP 6,P?SYNONYM\n\tW?SPOOL\n\tW?SPOOLS\n\tW?OBJECT\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ACTION\n\tGREEN-SPOOL-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?GREEN\n\t.BYTE A?SMALL\n\t.PROP 2,P?TEXT\n\tSTR?207\n\t.PROP 2,P?FDESC\n\tSTR?206\n\t.BYTE\t0\n\t.ENDT\n\nT?SPECK::\t.TABLE\t\t\t; TABLE FOR OBJECT SPECK\n\t.STRL \"speck\"\n\t.PROP 6,P?SYNONYM\n\tW?SPECK\n\tW?BOULDER\n\tW?IMPURITY\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?BLUE\n\t.BYTE\t0\n\t.ENDT\n\nT?CORRIDOR-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT CORRIDOR-DOOR\n\t.STRL \"wide bulkhead\"\n\t.PROP 4,P?SYNONYM\n\tW?DOOR\n\tW?BULKHEAD\n\t.PROP 2,P?ACTION\n\tGANGWAY-DOOR-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?EMERGENCY\n\t.BYTE A?WIDE\n\t.BYTE\t0\n\t.ENDT\n\nT?COURTYARD::\t.TABLE\t\t\t; TABLE FOR OBJECT COURTYARD\n\t.STRL \"Courtyard\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PLAIN-HALL\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE WINDING-STAIR\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE WEST-WING\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE WINDING-STAIR\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tCOURTYARD-F\n\t.PROP 2,P?C-MOVE\n\tT?506\n\t.PROP 8,P?PSEUDO\n\tW?CASTLE\t\t; NAME\n\tCASTLE-PSEUDO\t\t; HANDLER\n\tW?RUBBLE\t\t; NAME\n\tRUBBLE-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?WINDOW::\t.TABLE\t\t\t; TABLE FOR OBJECT WINDOW\n\t.STRL \"window\"\n\t.PROP 6,P?SYNONYM\n\tW?WINDOW\n\tW?PORT\n\tW?VIEWPORT\n\t.PROP 2,P?ACTION\n\tWINDOW-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?VIEW\n\t.BYTE\t0\n\t.ENDT\n\nT?TELEPORTATION-BUTTON-3::\t.TABLE\t\t\t; TABLE FOR OBJECT TELEPORTATION-BUTTON-3\n\t.STRL \"tan button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tTELEPORTATION-BUTTON-3-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?TAN\n\t.BYTE A?THIRD\n\t.BYTE\t0\n\t.ENDT\n\nT?REACTOR-LOBBY::\t.TABLE\t\t\t; TABLE FOR OBJECT REACTOR-LOBBY\n\t.STRL \"Reactor Lobby\"\n\t.PROP 2,P?EAST\t\t; IMPOSSIBLE EXIT\n\tSTR?10\t\t; FAILURE MESSAGE\n\t.PROP 2,P?SOUTH\t\t; IMPOSSIBLE EXIT\n\tSTR?9\t\t; FAILURE MESSAGE\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE DECK-NINE\t\t; TO ROOM\n\t.BYTE CORRIDOR-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?LDESC\n\tSTR?8\n\t.PROP 2,P?C-MOVE\n\tT?303\n\t.PROP 1,P?GLOBAL\n\t.BYTE CORRIDOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?SANFAC-D::\t.TABLE\t\t\t; TABLE FOR OBJECT SANFAC-D\n\t.STRL \"SanFac D\"\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-D\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?110\n\t.PROP 2,P?C-MOVE\n\tT?1906\n\t.PROP 8,P?PSEUDO\n\tW?FIXTURES\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\tW?TOILET\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?SYSTEMS-CORRIDOR-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT SYSTEMS-CORRIDOR-WEST\n\t.STRL \"Systems Corridor West\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE REPAIR-ROOM\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SW\t\t; UNCONDITIONAL EXIT\n\t.BYTE FORK\t\t; TO ROOM\n\t.PROP 1,P?NW\t\t; UNCONDITIONAL EXIT\n\t.BYTE INFIRMARY\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE REPAIR-ROOM\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?201\n\t.PROP 2,P?C-MOVE\n\tT?607\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?BROWN-GOO::\t.TABLE\t\t\t; TABLE FOR OBJECT BROWN-GOO\n\t.STRL \"blob of brown goo\"\n\t.PROP 8,P?SYNONYM\n\tW?GOO\n\tW?BLOB\n\tW?FOOD\n\tW?STEW\n\t.PROP 2,P?ACTION\n\tGOO-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BROWN\n\t.BYTE A?BEEF\n\t.BYTE\t0\n\t.ENDT\n\nT?GAS-MASK::\t.TABLE\t\t\t; TABLE FOR OBJECT GAS-MASK\n\t.STRL \"gas mask\"\n\t.PROP 2,P?SYNONYM\n\tW?MASK\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?GAS\n\t.BYTE\t0\n\t.ENDT\n\nT?INFIRMARY::\t.TABLE\t\t\t; TABLE FOR OBJECT INFIRMARY\n\t.STRL \"Infirmary\"\n\t.PROP 1,P?SE\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tINFIRMARY-F\n\t.PROP 2,P?LDESC\n\tSTR?192\n\t.PROP 2,P?C-MOVE\n\tT?407\n\t.PROP 8,P?PSEUDO\n\tW?EQUIPM\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\tW?MACHIN\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE BED\n\t.BYTE SHELVES\n\t.BYTE\t0\n\t.ENDT\n\nT?NEW-BATTERY::\t.TABLE\t\t\t; TABLE FOR OBJECT NEW-BATTERY\n\t.STRL \"new battery\"\n\t.PROP 4,P?SYNONYM\n\tW?OBJECT\n\tW?BATTERY\n\t.PROP 2,P?SIZE\n\t5\n\t.PROP 5,P?ADJECTIVE\n\t.BYTE A?LASER\n\t.BYTE A?SMALL\n\t.BYTE A?ROUND\n\t.BYTE A?FRESH\n\t.BYTE A?NEW\n\t.PROP 2,P?FDESC\n\tSTR?297\n\t.BYTE\t0\n\t.ENDT\n\nT?FLOYD::\t.TABLE\t\t\t; TABLE FOR OBJECT FLOYD\n\t.STRL \"multiple purpose robot\"\n\t.PROP 8,P?SYNONYM\n\tW?FLOYD\n\tW?COMPAR\n\tW?ROBOT\n\tW?COMPAN\n\t.PROP 2,P?ACTION\n\tFLOYD-F\n\t.PROP 5,P?ADJECTIVE\n\t.BYTE A?MULTIP\n\t.BYTE A?PURPOS\n\t.BYTE A?DIM-\n\t.BYTE A?DIM\n\t.BYTE A?WITTED\n\t.PROP 2,P?CAPACITY\n\t5\n\t.PROP 2,P?FDESC\n\tSTR?153\n\t.BYTE\t0\n\t.ENDT\n\nT?ME::\t.TABLE\t\t\t; TABLE FOR OBJECT ME\n\t.STRL \"you\"\n\t.PROP 8,P?SYNONYM\n\tW?ME\n\tW?MYSELF\n\tW?SELF\n\tW?WE\n\t.PROP 2,P?ACTION\n\tCRETIN-F\n\t.BYTE\t0\n\t.ENDT\n\nT?KALAMONTEE-PLATFORM::\t.TABLE\t\t\t; TABLE FOR OBJECT KALAMONTEE-PLATFORM\n\t.STRL \"Kalamontee Platform\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tSHUTTLE-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tSHUTTLE-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE WAITING-AREA\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?ACTION\n\tKALAMONTEE-PLATFORM-F\n\t.PROP 2,P?C-MOVE\n\tT?5806\n\t.PROP 1,P?GLOBAL\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE\t0\n\t.ENDT\n\nT?BLACK-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT BLACK-BUTTON\n\t.STRL \"black button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?BLACK\n\t.PROP 2,P?C-MOVE\n\t7\n\t.BYTE\t0\n\t.ENDT\n\nT?ELEVATOR-LOBBY::\t.TABLE\t\t\t; TABLE FOR OBJECT ELEVATOR-LOBBY\n\t.STRL \"Elevator Lobby\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tELEVATOR-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE BOOTH-2\t\t; TO ROOM\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tELEVATOR-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE CORRIDOR-JUNCTION\t\t; TO ROOM\n\t.PROP 1,P?IN\t\t; UNCONDITIONAL EXIT\n\t.BYTE BOOTH-2\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tELEVATOR-LOBBY-F\n\t.PROP 2,P?C-MOVE\n\tT?4606\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tNEAR-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE UPPER-ELEVATOR-DOOR\n\t.BYTE LOWER-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?ACHILLES::\t.TABLE\t\t\t; TABLE FOR OBJECT ACHILLES\n\t.STRL \"broken robot\"\n\t.PROP 4,P?SYNONYM\n\tW?ROBOT\n\tW?ACHILLES\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BROKEN\n\t.BYTE A?DEAD\n\t.PROP 2,P?LDESC\n\tSTR?200\n\t.BYTE\t0\n\t.ENDT\n\nT?DORM-A::\t.TABLE\t\t\t; TABLE FOR OBJECT DORM-A\n\t.STRL \"Dorm A\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SANFAC-A\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?108\n\t.PROP 2,P?C-MOVE\n\tT?1206\n\t.PROP 4,P?PSEUDO\n\tW?PARTITION\t\t; NAME\n\tPARTITION-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE BED\n\t.BYTE\t0\n\t.ENDT\n\nT?KITCHEN::\t.TABLE\t\t\t; TABLE FOR OBJECT KITCHEN\n\t.STRL \"Kitchen\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-HALL\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-HALL\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?LDESC\n\tSTR?117\n\t.PROP 2,P?C-MOVE\n\tT?2406\n\t.PROP 8,P?PSEUDO\n\tW?SPOUT\t\t; NAME\n\tSPOUT-PSEUDO\t\t; HANDLER\n\tW?BUTTON\t\t; NAME\n\tBUTTON-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE KITCHEN-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?BALCONY::\t.TABLE\t\t\t; TABLE FOR OBJECT BALCONY\n\t.STRL \"Balcony\"\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE WINDING-STAIR\t\t; TO ROOM\n\t.PROP 3,P?DOWN\t\t; CONDITIONAL EXIT\n\tWATER-LEVEL-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tBALCONY-F\n\t.PROP 2,P?C-MOVE\n\tT?306\n\t.PROP 4,P?PSEUDO\n\tW?PLAQUE\t\t; NAME\n\tPLAQUE-PSEUDO\t\t; HANDLER\n\t.PROP 4,P?GLOBAL\n\t.BYTE CLIFF\n\t.BYTE OCEAN\n\t.BYTE STAIRS\n\t.BYTE WINDOW\n\t.BYTE\t0\n\t.ENDT\n\nT?REACTOR-CONTROL::\t.TABLE\t\t\t; TABLE FOR OBJECT REACTOR-CONTROL\n\t.STRL \"Reactor Control\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE REACTOR-ELEVATOR\t\t; TO ROOM\n\t.BYTE REACTOR-ELEVATOR-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE REACTOR-ACCESS-STAIRS\t\t; TO ROOM\n\t.PROP 5,P?IN\t\t; CONDITIONAL EXIT\n\t.BYTE REACTOR-ELEVATOR\t\t; TO ROOM\n\t.BYTE REACTOR-ELEVATOR-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?LDESC\n\tSTR?139\n\t.PROP 2,P?C-MOVE\n\tT?4006\n\t.PROP 8,P?PSEUDO\n\tW?BUTTON\t\t; NAME\n\tREACTOR-BUTTON-PSEUDO\t\t; HANDLER\n\tW?DIAGRAM\t\t; NAME\n\tDIAGRAM-PSEUDO\t\t; HANDLER\n\t.PROP 3,P?GLOBAL\n\t.BYTE CONTROLS\n\t.BYTE STAIRS\n\t.BYTE REACTOR-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?HELIPAD::\t.TABLE\t\t\t; TABLE FOR OBJECT HELIPAD\n\t.STRL \"Helipad\"\n\t.PROP 2,P?NORTH\t\t; IMPOSSIBLE EXIT\n\tSTR?181\t\t; FAILURE MESSAGE\n\t.PROP 2,P?EAST\t\t; IMPOSSIBLE EXIT\n\tSTR?181\t\t; FAILURE MESSAGE\n\t.PROP 2,P?SOUTH\t\t; IMPOSSIBLE EXIT\n\tSTR?181\t\t; FAILURE MESSAGE\n\t.PROP 2,P?WEST\t\t; IMPOSSIBLE EXIT\n\tSTR?181\t\t; FAILURE MESSAGE\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE TOWER-CORE\t\t; TO ROOM\n\t.PROP 1,P?IN\t\t; UNCONDITIONAL EXIT\n\t.BYTE HELICOPTER\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?180\n\t.PROP 2,P?C-MOVE\n\tT?5106\n\t.PROP 4,P?PSEUDO\n\tW?FENCE\t\t; NAME\n\tFENCE-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE HELICOPTER-OBJECT\n\t.BYTE\t0\n\t.ENDT\n\nT?PRINT-OUT::\t.TABLE\t\t\t; TABLE FOR OBJECT PRINT-OUT\n\t.STRL \"pile of computer output\"\n\t.PROP 8,P?SYNONYM\n\tW?PILE\n\tW?PAPER\n\tW?OUTPUT\n\tW?PRINTOUT\n\t.PROP 2,P?SIZE\n\t20\n\t.PROP 2,P?ACTION\n\tPRINT-OUT-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?COMPUTER\n\t.BYTE\t0\n\t.ENDT\n\nT?LIGHTS::\t.TABLE\t\t\t; TABLE FOR OBJECT LIGHTS\n\t.STRL \"light\"\n\t.PROP 4,P?SYNONYM\n\tW?LIGHT\n\tW?LIGHTS\n\t.PROP 2,P?ACTION\n\tLIGHTS-F\n\t.PROP 8,P?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE A?DAZZLI\n\t.BYTE A?GLOWIN\n\t.BYTE A?BLINKI\n\t.BYTE A?WARNIN\n\t.BYTE A?BRIGHT\n\t.BYTE A?COLORE\n\t.BYTE A?FLASHI\n\t.BYTE\t0\n\t.ENDT\n\nT?GREEN-GOO::\t.TABLE\t\t\t; TABLE FOR OBJECT GREEN-GOO\n\t.STRL \"blob of green goo\"\n\t.PROP 8,P?SYNONYM\n\tW?GOO\n\tW?BLOB\n\tW?FOOD\n\tW?BEANS\n\t.PROP 2,P?ACTION\n\tGOO-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?GREEN\n\t.BYTE A?LIMA\n\t.BYTE\t0\n\t.ENDT\n\nT?MECH-CORRIDOR-N::\t.TABLE\t\t\t; TABLE FOR OBJECT MECH-CORRIDOR-N\n\t.STRL \"Mech Corridor North\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE CORRIDOR-JUNCTION\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE STORAGE-EAST\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PHYSICAL-PLANT\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?132\n\t.PROP 2,P?C-MOVE\n\tT?3506\n\t.BYTE\t0\n\t.ENDT\n\nT?GOOD-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT GOOD-BOARD\n\t.STRL \"shiny seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tGOOD-BOARD-F\n\t.PROP 5,P?ADJECTIVE\n\t.BYTE A?SHINY\n\t.BYTE A?GOOD\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?ROOMS::\t.TABLE\t\t\t; TABLE FOR OBJECT ROOMS\n\t.STRL \"\"\n\t.BYTE\t0\n\t.ENDT\n\nT?COMBINATION-DIAL::\t.TABLE\t\t\t; TABLE FOR OBJECT COMBINATION-DIAL\n\t.STRL \"combination dial\"\n\t.PROP 2,P?SYNONYM\n\tW?DIAL\n\t.PROP 2,P?ACTION\n\tCOMBINATION-DIAL-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?COMBINATION\n\t.BYTE\t0\n\t.ENDT\n\nT?PROJECT-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT PROJECT-CORRIDOR\n\t.STRL \"Project Corridor\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJCON-OFFICE\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?252\n\t.PROP 2,P?C-MOVE\n\tT?1707\n\t.BYTE\t0\n\t.ENDT\n\nT?ADMIN-CORRIDOR-S::\t.TABLE\t\t\t; TABLE FOR OBJECT ADMIN-CORRIDOR-S\n\t.STRL \"Admin Corridor South\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SANFAC-E\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE CORRIDOR-JUNCTION\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tADMIN-CORRIDOR-S-F\n\t.PROP 2,P?LDESC\n\tSTR?120\n\t.PROP 2,P?C-MOVE\n\tT?2606\n\t.BYTE\t0\n\t.ENDT\n\nT?ROUND-WHITE-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT ROUND-WHITE-BUTTON\n\t.STRL \"round white button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?WHITE\n\t.BYTE A?ROUND\n\t.PROP 2,P?C-MOVE\n\t8\n\t.BYTE\t0\n\t.ENDT\n\nT?ADVENTURER::\t.TABLE\t\t\t; TABLE FOR OBJECT ADVENTURER\n\t.STRL \"player\"\n\t.PROP 8,P?SYNONYM\n\tW?ADMIRA\n\tW?SMITHE\n\tW?SPAM\n\tW?EGGS\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?ORANGE\n\t.BYTE A?OPENER\n\t.BYTE\t0\n\t.ENDT\n\nT?FLASK::\t.TABLE\t\t\t; TABLE FOR OBJECT FLASK\n\t.STRL \"glass flask\"\n\t.PROP 2,P?SYNONYM\n\tW?FLASK\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tFLASK-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?GLASS\n\t.BYTE A?LARGE\n\t.BYTE A?PLASTIC\n\t.PROP 2,P?CAPACITY\n\t2\n\t.PROP 2,P?FDESC\n\tSTR?142\n\t.BYTE\t0\n\t.ENDT\n\nT?LAZARUS-PART::\t.TABLE\t\t\t; TABLE FOR OBJECT LAZARUS-PART\n\t.STRL \"medical robot breastplate\"\n\t.PROP 8,P?SYNONYM\n\tW?LAZARUS\n\tW?PART\n\tW?BREAST\n\tW?PLATE\n\t.PROP 2,P?SIZE\n\t35\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?MEDICAL\n\t.BYTE A?BREAST\n\t.BYTE\t0\n\t.ENDT\n\nT?OLD-BATTERY::\t.TABLE\t\t\t; TABLE FOR OBJECT OLD-BATTERY\n\t.STRL \"old battery\"\n\t.PROP 2,P?SYNONYM\n\tW?BATTERY\n\t.PROP 2,P?SIZE\n\t5\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?LASER\n\t.BYTE A?WORN-OUT\n\t.BYTE A?OLD\n\t.PROP 2,P?LDESC\n\tSTR?296\n\t.BYTE\t0\n\t.ENDT\n\nT?DECK-NINE::\t.TABLE\t\t\t; TABLE FOR OBJECT DECK-NINE\n\t.STRL \"Deck Nine\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE REACTOR-LOBBY\t\t; TO ROOM\n\t.BYTE CORRIDOR-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE ESCAPE-POD\t\t; TO ROOM\n\t.BYTE POD-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?UP\t\t; CONDITIONAL EXIT\n\t.BYTE GANGWAY\t\t; TO ROOM\n\t.BYTE GANGWAY-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?IN\t\t; CONDITIONAL EXIT\n\t.BYTE ESCAPE-POD\t\t; TO ROOM\n\t.BYTE POD-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tDECK-NINE-F\n\t.PROP 2,P?C-MOVE\n\tT?203\n\t.PROP 8,P?PSEUDO\n\tW?TRANSL\t\t; NAME\n\tTRANSLATOR-PSEUDO\t\t; HANDLER\n\tW?SLIME\t\t; NAME\n\tSLIME-PSEUDO\t\t; HANDLER\n\t.PROP 5,P?GLOBAL\n\t.BYTE POD-DOOR\n\t.BYTE CORRIDOR-DOOR\n\t.BYTE GANGWAY-DOOR\n\t.BYTE STAIRS\n\t.BYTE GLOBAL-POD\n\t.BYTE\t0\n\t.ENDT\n\nT?THIRD-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT THIRD-BOARD\n\t.STRL \"third seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?ACTION\n\tBOARD-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?THIRD\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?STRIP::\t.TABLE\t\t\t; TABLE FOR OBJECT STRIP\n\t.STRL \"silicon strip\"\n\t.PROP 6,P?SYNONYM\n\tW?STRIP\n\tW?SIDE\n\tW?EDGE\n\t.PROP 2,P?ACTION\n\tSTRIP-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?SILICON\n\t.BYTE\t0\n\t.ENDT\n\nT?SMALL-OFFICE::\t.TABLE\t\t\t; TABLE FOR OBJECT SMALL-OFFICE\n\t.STRL \"Small Office\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE LARGE-OFFICE\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?126\n\t.PROP 2,P?C-MOVE\n\tT?3306\n\t.BYTE\t0\n\t.ENDT\n\nT?CARTON::\t.TABLE\t\t\t; TABLE FOR OBJECT CARTON\n\t.STRL \"cardboard box\"\n\t.PROP 4,P?SYNONYM\n\tW?BOX\n\tW?CARTON\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tCARTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE A?CARDBOARD\n\t.PROP 2,P?CAPACITY\n\t50\n\t.PROP 2,P?FDESC\n\tSTR?136\n\t.BYTE\t0\n\t.ENDT\n\nT?BOOTH-2::\t.TABLE\t\t\t; TABLE FOR OBJECT BOOTH-2\n\t.STRL \"Booth 2\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ELEVATOR-LOBBY\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE ELEVATOR-LOBBY\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?178\n\t.PROP 2,P?C-MOVE\n\tT?4906\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tIN-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 4,P?GLOBAL\n\t.BYTE CONTROLS\n\t.BYTE SLOT\n\t.BYTE TELEPORTATION-BUTTON-1\n\t.BYTE TELEPORTATION-BUTTON-3\n\t.BYTE\t0\n\t.ENDT\n\nT?LOCAL-GLOBALS::\t.TABLE\t\t\t; TABLE FOR OBJECT LOCAL-GLOBALS\n\t.STRL \"\"\n\t.PROP 2,P?SYNONYM\n\tW?ZZMGCK\n\t.PROP 2,P?VALUE\n\t0\n\t.PROP 2,P?CONTFCN\n\t0\n\t.PROP 2,P?DESCFCN\n\t0\n\t.PROP 2,P?SIZE\n\t0\n\t.BYTE\t0\n\t.ENDT\n\nT?CRAG::\t.TABLE\t\t\t; TABLE FOR OBJECT CRAG\n\t.STRL \"Crag\"\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE BALCONY\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE UNDERWATER\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t3\n\t.PROP 2,P?ACTION\n\tCRAG-F\n\t.PROP 2,P?LDESC\n\tSTR?102\n\t.PROP 2,P?C-MOVE\n\tT?206\n\t.PROP 8,P?PSEUDO\n\tW?STRUCTURE\t\t; NAME\n\tSTRUCTURE-PSEUDO\t\t; HANDLER\n\tW?CLEFT\t\t; NAME\n\tCLEFT-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE CLIFF\n\t.BYTE OCEAN\n\t.BYTE\t0\n\t.ENDT\n\nT?ADMIN-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT ADMIN-CORRIDOR\n\t.STRL \"Admin Corridor\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tLADDER-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-MONITORS\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tADMIN-CORRIDOR-F\n\t.PROP 2,P?C-MOVE\n\tT?2706\n\t.PROP 4,P?PSEUDO\n\tW?RUBBLE\t\t; NAME\n\tRUBBLE-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE RIFT\n\t.BYTE\t0\n\t.ENDT\n\nT?BRIG::\t.TABLE\t\t\t; TABLE FOR OBJECT BRIG\n\t.STRL \"Brig\"\n\t.PROP 2,P?SOUTH\t\t; IMPOSSIBLE EXIT\n\tSTR?5\t\t; FAILURE MESSAGE\n\t.PROP 2,P?LDESC\n\tSTR?4\n\t.PROP 2,P?C-MOVE\n\tT?103\n\t.PROP 8,P?PSEUDO\n\tW?GRAFFITI\t\t; NAME\n\tGRAFFITI-PSEUDO\t\t; HANDLER\n\tW?DOOR\t\t; NAME\n\tDOOR-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?PROJCON-OFFICE::\t.TABLE\t\t\t; TABLE FOR OBJECT PROJCON-OFFICE\n\t.STRL \"ProjCon Office\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE COMPUTER-ROOM\t\t; TO ROOM\n\t.PROP 5,P?SOUTH\t\t; CONDITIONAL EXIT\n\t.BYTE CRYO-ELEVATOR\t\t; TO ROOM\n\t.BYTE CRYO-ELEVATOR-DOOR\t\t; IF DOOR IS OPEN\n\tSTR?37\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tPROJCON-OFFICE-F\n\t.PROP 2,P?C-MOVE\n\tT?1807\n\t.PROP 8,P?PSEUDO\n\tW?MURAL\t\t; NAME\n\tMURAL-PSEUDO\t\t; HANDLER\n\tW?LOGO\t\t; NAME\n\tLOGO-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE CRYO-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?LASER::\t.TABLE\t\t\t; TABLE FOR OBJECT LASER\n\t.STRL \"laser\"\n\t.PROP 8,P?SYNONYM\n\tW?DEVICE\n\tW?LASER\n\tW?UNIT\n\tW?DEPRES\n\t.PROP 2,P?SIZE\n\t25\n\t.PROP 2,P?ACTION\n\tLASER-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?PORTABLE\n\t.BYTE A?ACME\n\t.PROP 2,P?CAPACITY\n\t5\n\t.PROP 2,P?FDESC\n\tSTR?295\n\t.BYTE\t0\n\t.ENDT\n\nT?CONTROLS::\t.TABLE\t\t\t; TABLE FOR OBJECT CONTROLS\n\t.STRL \"set of controls\"\n\t.PROP 8,P?SYNONYM\n\tW?CONTRO\n\tW?PANEL\n\tW?DIALS\n\tW?GAUGES\n\t.PROP 2,P?ACTION\n\tCONTROLS-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?CONTRO\n\t.BYTE A?COMPLEX\n\t.BYTE\t0\n\t.ENDT\n\nT?LARGE-DESK::\t.TABLE\t\t\t; TABLE FOR OBJECT LARGE-DESK\n\t.STRL \"large desk\"\n\t.PROP 4,P?SYNONYM\n\tW?DESK\n\tW?DRAWER\n\t.PROP 2,P?ACTION\n\tDESK-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?LARGE\n\t.BYTE A?WIDE\n\t.BYTE A?WOODEN\n\t.PROP 2,P?CAPACITY\n\t20\n\t.BYTE\t0\n\t.ENDT\n\nT?CORRIDOR-JUNCTION::\t.TABLE\t\t\t; TABLE FOR OBJECT CORRIDOR-JUNCTION\n\t.STRL \"Corridor Junction\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ELEVATOR-LOBBY\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 3,P?WEST\t\t; CONDITIONAL EXIT\n\tLONG-HALL-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?LDESC\n\tSTR?119\n\t.PROP 2,P?C-MOVE\n\tT?2506\n\t.PROP 4,P?PSEUDO\n\tW?WALKWAY\t\t; NAME\n\tWALKWAY-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?BAD-BEDISTOR::\t.TABLE\t\t\t; TABLE FOR OBJECT BAD-BEDISTOR\n\t.STRL \"fused ninety-ohm bedistor\"\n\t.PROP 2,P?SYNONYM\n\tW?BEDISTOR\n\t.PROP 2,P?SIZE\n\t8\n\t.PROP 2,P?ACTION\n\tBAD-BEDISTOR-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?FUSED\n\t.BYTE A?NINETY\n\t.BYTE A?OHM\n\t.BYTE\t0\n\t.ENDT\n\nT?TRANSPORTATION-SUPPLY::\t.TABLE\t\t\t; TABLE FOR OBJECT TRANSPORTATION-SUPPLY\n\t.STRL \"Transportation Supply\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE TRANSPORTATION-SUPPLY\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE TRANSPORTATION-SUPPLY\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE TRANSPORTATION-SUPPLY\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?125\n\t.PROP 2,P?C-MOVE\n\tT?3206\n\t.BYTE\t0\n\t.ENDT\n\nT?COMM-ROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT COMM-ROOM\n\t.STRL \"Comm Room\"\n\t.PROP 1,P?SW\t\t; UNCONDITIONAL EXIT\n\t.BYTE TOWER-CORE\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tCOMM-ROOM-F\n\t.PROP 2,P?C-MOVE\n\tT?5306\n\t.PROP 8,P?PSEUDO\n\tW?CABLES\t\t; NAME\n\tCABLES-PSEUDO\t\t; HANDLER\n\tW?ENUNCI\t\t; NAME\n\tENUNCIATOR-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE LIGHTS\n\t.BYTE\t0\n\t.ENDT\n\nT?SMALL-DESK::\t.TABLE\t\t\t; TABLE FOR OBJECT SMALL-DESK\n\t.STRL \"small desk\"\n\t.PROP 4,P?SYNONYM\n\tW?DESK\n\tW?DRAWER\n\t.PROP 2,P?ACTION\n\tDESK-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.PROP 2,P?CAPACITY\n\t10\n\t.BYTE\t0\n\t.ENDT\n\nT?GLOBAL-OBJECTS::\t.TABLE\t\t\t; TABLE FOR OBJECT GLOBAL-OBJECTS\n\t.STRL \"\"\n\t.BYTE\t0\n\t.ENDT\n\nT?SHUTTLE-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT SHUTTLE-DOOR\n\t.STRL \"door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tSHUTTLE-DOOR-F\n\t.BYTE\t0\n\t.ENDT\n\nT?SHUTTLE-CAR-BETTY::\t.TABLE\t\t\t; TABLE FOR OBJECT SHUTTLE-CAR-BETTY\n\t.STRL \"Shuttle Car Betty\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE BETTY-CONTROL-EAST\t\t; TO ROOM\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tSHUTTLE-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE BETTY-CONTROL-WEST\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tSHUTTLE-CAR-F\n\t.PROP 2,P?C-MOVE\n\tT?1003\n\t.PROP 2,P?GLOBAL\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE SHUTTLE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?YELLOW-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT YELLOW-BUTTON\n\t.STRL \"yellow button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?YELLOW\n\t.PROP 2,P?C-MOVE\n\t4\n\t.BYTE\t0\n\t.ENDT\n\nT?IT::\t.TABLE\t\t\t; TABLE FOR OBJECT IT\n\t.STRL \"random object\"\n\t.PROP 8,P?SYNONYM\n\tW?IT\n\tW?THAT\n\tW?THIS\n\tW?HIM\n\t.BYTE\t0\n\t.ENDT\n\nT?PROJECT-CORRIDOR-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT PROJECT-CORRIDOR-WEST\n\t.STRL \"Project Corridor West\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SANFAC-F\t\t; TO ROOM\n\t.PROP 1,P?NW\t\t; UNCONDITIONAL EXIT\n\t.BYTE FORK\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?250\n\t.PROP 2,P?C-MOVE\n\tT?1507\n\t.BYTE\t0\n\t.ENDT\n\nT?COMM-SCREEN::\t.TABLE\t\t\t; TABLE FOR OBJECT COMM-SCREEN\n\t.STRL \"screen\"\n\t.PROP 6,P?SYNONYM\n\tW?COMMUNICATIONS\n\tW?MESSAGE\n\tW?SCREEN\n\t.PROP 2,P?TEXT\n\tSTR?183\n\t.BYTE\t0\n\t.ENDT\n\nT?STRIP-NEAR-STATION::\t.TABLE\t\t\t; TABLE FOR OBJECT STRIP-NEAR-STATION\n\t.STRL \"Strip Near Station\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MIDDLE-OF-STRIP\t\t; TO ROOM\n\t.PROP 2,P?EAST\t\t; IMPOSSIBLE EXIT\n\tSTR?290\t\t; FAILURE MESSAGE\n\t.PROP 2,P?SOUTH\t\t; IMPOSSIBLE EXIT\n\tSTR?290\t\t; FAILURE MESSAGE\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE STATION-384\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?LDESC\n\tSTR?289\n\t.PROP 2,P?C-MOVE\n\tT?3507\n\t.PROP 4,P?PSEUDO\n\tW?VOID\t\t; NAME\n\tVOID-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STRIP\n\t.BYTE\t0\n\t.ENDT\n\nT?UPPER-ELEVATOR-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT UPPER-ELEVATOR-CARD\n\t.STRL \"upper elevator access card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?VALUE\n\t1\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?UPPER\n\t.BYTE A?ELEVATOR\n\t.BYTE A?ACCESS\n\t.PROP 2,P?TEXT\n\tSTR?128\n\t.BYTE\t0\n\t.ENDT\n\nT?GOOD-BEDISTOR::\t.TABLE\t\t\t; TABLE FOR OBJECT GOOD-BEDISTOR\n\t.STRL \"good ninety-ohm bedistor\"\n\t.PROP 2,P?SYNONYM\n\tW?BEDISTOR\n\t.PROP 2,P?SIZE\n\t8\n\t.PROP 2,P?ACTION\n\tGOOD-BEDISTOR-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?GOOD\n\t.BYTE A?NINETY\n\t.BYTE A?OHM\n\t.BYTE\t0\n\t.ENDT\n\nT?STORAGE-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT STORAGE-EAST\n\t.STRL \"Storage East\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?134\n\t.PROP 2,P?C-MOVE\n\tT?3806\n\t.PROP 1,P?GLOBAL\n\t.BYTE SHELVES\n\t.BYTE\t0\n\t.ENDT\n\nT?CONFERENCE-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT CONFERENCE-DOOR\n\t.STRL \"door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tCONFERENCE-DOOR-F\n\t.BYTE\t0\n\t.ENDT\n\nT?SANFAC-C::\t.TABLE\t\t\t; TABLE FOR OBJECT SANFAC-C\n\t.STRL \"SanFac C\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-C\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?109\n\t.PROP 2,P?C-MOVE\n\tT?1706\n\t.PROP 8,P?PSEUDO\n\tW?FIXTURES\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\tW?TOILET\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?CREVICE::\t.TABLE\t\t\t; TABLE FOR OBJECT CREVICE\n\t.STRL \"crevice\"\n\t.PROP 6,P?SYNONYM\n\tW?CREVICE\n\tW?CRACK\n\tW?HOLE\n\t.PROP 2,P?ACTION\n\tCREVICE-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?NARROW\n\t.BYTE A?JAGGED\n\t.BYTE\t0\n\t.ENDT\n\nT?PHYSICAL-PLANT::\t.TABLE\t\t\t; TABLE FOR OBJECT PHYSICAL-PLANT\n\t.STRL \"Physical Plant\"\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 1,P?SE\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?138\n\t.PROP 2,P?C-MOVE\n\tT?3906\n\t.PROP 8,P?PSEUDO\n\tW?EQUIPM\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\tW?CATWALK\t\t; NAME\n\tCATWALK-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?REACTOR-ELEVATOR::\t.TABLE\t\t\t; TABLE FOR OBJECT REACTOR-ELEVATOR\n\t.STRL \"Reactor Elevator\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE REACTOR-CONTROL\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE REACTOR-CONTROL\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?140\n\t.PROP 2,P?C-MOVE\n\tT?4206\n\t.PROP 4,P?GLOBAL\n\t.BYTE REACTOR-ELEVATOR-DOOR\n\t.BYTE SLOT\n\t.BYTE ELEVATOR-BUTTON\n\t.BYTE CONTROLS\n\t.BYTE\t0\n\t.ENDT\n\nT?BETTY-CONTROL-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT BETTY-CONTROL-WEST\n\t.STRL \"Betty Control West\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE SHUTTLE-CAR-BETTY\t\t; TO ROOM\n\t.BYTE SHUTTLE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tCONTROL-CABIN-F\n\t.PROP 2,P?C-MOVE\n\tT?1203\n\t.PROP 5,P?GLOBAL\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE SLOT\n\t.BYTE LEVER\n\t.BYTE WINDOW\n\t.BYTE SHUTTLE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?CHEMICAL-FLUID::\t.TABLE\t\t\t; TABLE FOR OBJECT CHEMICAL-FLUID\n\t.STRL \"quantity of chemical fluid\"\n\t.PROP 8,P?SYNONYM\n\tW?QUANTITY\n\tW?LIQUID\n\tW?FLUID\n\tW?CHEMICAL\n\t.PROP 2,P?ACTION\n\tCHEMICAL-FLUID-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?MILKY\n\t.BYTE A?WHITE\n\t.BYTE A?CHEMICAL\n\t.BYTE\t0\n\t.ENDT\n\nT?LOWER-ELEVATOR::\t.TABLE\t\t\t; TABLE FOR OBJECT LOWER-ELEVATOR\n\t.STRL \"Lower Elevator\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tELEVATOR-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?UP\t\t; IMPOSSIBLE EXIT\n\tSTR?175\t\t; FAILURE MESSAGE\n\t.PROP 2,P?DOWN\t\t; IMPOSSIBLE EXIT\n\tSTR?175\t\t; FAILURE MESSAGE\n\t.PROP 3,P?OUT\t\t; CONDITIONAL EXIT\n\tELEVATOR-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tLOWER-ELEVATOR-F\n\t.PROP 2,P?C-MOVE\n\tT?4806\n\t.PROP 5,P?GLOBAL\n\t.BYTE LIGHTS\n\t.BYTE CONTROLS\n\t.BYTE SLOT\n\t.BYTE ELEVATOR-BUTTON\n\t.BYTE LOWER-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?MAGNET::\t.TABLE\t\t\t; TABLE FOR OBJECT MAGNET\n\t.STRL \"curved metal bar\"\n\t.PROP 4,P?SYNONYM\n\tW?MAGNET\n\tW?BAR\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tMAGNET-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?CURVED\n\t.BYTE A?METAL\n\t.BYTE A?HORSESHOE\n\t.PROP 2,P?FDESC\n\tSTR?143\n\t.BYTE\t0\n\t.ENDT\n\nT?RADIATION-LOCK-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT RADIATION-LOCK-WEST\n\t.STRL \"Radiation Lock West\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE RADIATION-LOCK-EAST\t\t; TO ROOM\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE MAIN-LAB\t\t; TO ROOM\n\t.BYTE RAD-DOOR-WEST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?LDESC\n\tSTR?263\n\t.PROP 2,P?C-MOVE\n\tT?2807\n\t.PROP 1,P?GLOBAL\n\t.BYTE RAD-DOOR-WEST\n\t.BYTE\t0\n\t.ENDT\n\nT?UNDERWATER::\t.TABLE\t\t\t; TABLE FOR OBJECT UNDERWATER\n\t.STRL \"Underwater\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE UNDERWATER\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE UNDERWATER\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE UNDERWATER\t\t; TO ROOM\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE CRAG\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE UNDERWATER\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tUNDERWATER-F\n\t.PROP 2,P?LDESC\n\tSTR?100\n\t.PROP 2,P?C-MOVE\n\tT?106\n\t.BYTE\t0\n\t.ENDT\n\nT?REC-AREA::\t.TABLE\t\t\t; TABLE FOR OBJECT REC-AREA\n\t.STRL \"Rec Area\"\n\t.PROP 5,P?NORTH\t\t; CONDITIONAL EXIT\n\t.BYTE CONFERENCE-ROOM\t\t; TO ROOM\n\t.BYTE CONFERENCE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PLAIN-HALL\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tREC-AREA-F\n\t.PROP 2,P?C-MOVE\n\tT?806\n\t.PROP 8,P?PSEUDO\n\tW?GAMES\t\t; NAME\n\tGAMES-PSEUDO\t\t; HANDLER\n\tW?TAPES\t\t; NAME\n\tTAPES-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE CONFERENCE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?BLATHER::\t.TABLE\t\t\t; TABLE FOR OBJECT BLATHER\n\t.STRL \"Ensign First Class\"\n\t.PROP 4,P?SYNONYM\n\tW?ENSIGN\n\tW?BLATHER\n\t.PROP 2,P?SIZE\n\t150\n\t.PROP 2,P?ACTION\n\tBLATHER-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?ENSIGN\n\t.BYTE A?FIRST\n\t.BYTE A?CLASS\n\t.PROP 2,P?LDESC\n\tSTR?15\n\t.BYTE\t0\n\t.ENDT\n\nT?BIO-DOOR-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT BIO-DOOR-EAST\n\t.STRL \"lab door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tBIO-DOOR-EAST-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?LAB\n\t.BYTE\t0\n\t.ENDT\n\nT?CANTEEN::\t.TABLE\t\t\t; TABLE FOR OBJECT CANTEEN\n\t.STRL \"canteen\"\n\t.PROP 2,P?SYNONYM\n\tW?CANTEEN\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?OCTAGONAL\n\t.PROP 2,P?CAPACITY\n\t5\n\t.PROP 2,P?FDESC\n\tSTR?118\n\t.BYTE\t0\n\t.ENDT\n\nT?OFFICE-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT OFFICE-DOOR\n\t.STRL \"office door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?OFFICE\n\t.BYTE\t0\n\t.ENDT\n\nT?ID-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT ID-CARD\n\t.STRL \"ID card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?PATROL\n\t.BYTE A?ID\n\t.BYTE A?IDENTIFICATION\n\t.PROP 2,P?TEXT\n\tSTR?6\n\t.BYTE\t0\n\t.ENDT\n\nT?ALFIE-CONTROL-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT ALFIE-CONTROL-EAST\n\t.STRL \"Alfie Control East\"\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE SHUTTLE-CAR-ALFIE\t\t; TO ROOM\n\t.BYTE SHUTTLE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tCONTROL-CABIN-F\n\t.PROP 2,P?C-MOVE\n\tT?803\n\t.PROP 5,P?GLOBAL\n\t.BYTE SLOT\n\t.BYTE WINDOW\n\t.BYTE LEVER\n\t.BYTE SHUTTLE-DOOR\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE\t0\n\t.ENDT\n\nT?LADDER::\t.TABLE\t\t\t; TABLE FOR OBJECT LADDER\n\t.STRL \"ladder\"\n\t.PROP 2,P?SYNONYM\n\tW?LADDER\n\t.PROP 2,P?SIZE\n\t80\n\t.PROP 2,P?ACTION\n\tLADDER-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?HEAVY\n\t.BYTE A?DUTY\n\t.BYTE A?ALUMINUM\n\t.BYTE A?LARGE\n\t.PROP 2,P?LDESC\n\tSTR?115\n\t.PROP 2,P?FDESC\n\tSTR?114\n\t.BYTE\t0\n\t.ENDT\n\nT?COMPUTER-ROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT COMPUTER-ROOM\n\t.STRL \"Computer Room\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE MAIN-LAB\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MINI-BOOTH\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJCON-OFFICE\t\t; TO ROOM\n\t.PROP 1,P?IN\t\t; UNCONDITIONAL EXIT\n\t.BYTE MINI-BOOTH\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?254\n\t.PROP 2,P?C-MOVE\n\tT?2207\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tNEAR-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE LIGHTS\n\t.BYTE\t0\n\t.ENDT\n\nT?ADMIN-CORRIDOR-N::\t.TABLE\t\t\t; TABLE FOR OBJECT ADMIN-CORRIDOR-N\n\t.STRL \"Admin Corridor North\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE TRANSPORTATION-SUPPLY\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PLAN-ROOM\t\t; TO ROOM\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tLADDER-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SMALL-OFFICE\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?ACTION\n\tADMIN-CORRIDOR-N-F\n\t.PROP 2,P?C-MOVE\n\tT?2806\n\t.PROP 1,P?GLOBAL\n\t.BYTE RIFT\n\t.BYTE\t0\n\t.ENDT\n\nT?KITCHEN-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT KITCHEN-DOOR\n\t.STRL \"door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tKITCHEN-DOOR-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?KITCHEN\n\t.BYTE\t0\n\t.ENDT\n\nT?MAIN-LAB::\t.TABLE\t\t\t; TABLE FOR OBJECT MAIN-LAB\n\t.STRL \"Main Lab\"\n\t.PROP 5,P?NE\t\t; CONDITIONAL EXIT\n\t.BYTE RADIATION-LOCK-WEST\t\t; TO ROOM\n\t.BYTE RAD-DOOR-WEST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?SE\t\t; CONDITIONAL EXIT\n\t.BYTE BIO-LOCK-WEST\t\t; TO ROOM\n\t.BYTE BIO-DOOR-WEST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE LAB-STORAGE\t\t; TO ROOM\n\t.PROP 1,P?SW\t\t; UNCONDITIONAL EXIT\n\t.BYTE COMPUTER-ROOM\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?257\n\t.PROP 2,P?C-MOVE\n\tT?2407\n\t.PROP 2,P?GLOBAL\n\t.BYTE BIO-DOOR-WEST\n\t.BYTE RAD-DOOR-WEST\n\t.BYTE\t0\n\t.ENDT\n\nT?SYSTEMS-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT SYSTEMS-CORRIDOR\n\t.STRL \"Systems Corridor\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PLANETARY-DEFENSE\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?202\n\t.PROP 2,P?C-MOVE\n\tT?707\n\t.BYTE\t0\n\t.ENDT\n\nT?LOWER-ELEVATOR-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT LOWER-ELEVATOR-DOOR\n\t.STRL \"red door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tLOWER-ELEVATOR-DOOR-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE A?LOWER\n\t.BYTE A?ELEVATOR\n\t.BYTE A?METAL\n\t.BYTE\t0\n\t.ENDT\n\nT?MEGAFUSE-K::\t.TABLE\t\t\t; TABLE FOR OBJECT MEGAFUSE-K\n\t.STRL \"K-series megafuse\"\n\t.PROP 4,P?SYNONYM\n\tW?FUSE\n\tW?MEGAFUSE\n\t.PROP 2,P?SIZE\n\t5\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?K-SERIES\n\t.BYTE A?K\n\t.BYTE A?SERIES\n\t.BYTE A?MEGA\n\t.BYTE\t0\n\t.ENDT\n\nT?FUNNEL-HOLE::\t.TABLE\t\t\t; TABLE FOR OBJECT FUNNEL-HOLE\n\t.STRL \"funnel-shaped hole\"\n\t.PROP 2,P?SYNONYM\n\tW?HOLE\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?FUNNEL\n\t.BYTE A?SHAPED\n\t.BYTE\t0\n\t.ENDT\n\nT?CRYO-ELEVATOR::\t.TABLE\t\t\t; TABLE FOR OBJECT CRYO-ELEVATOR\n\t.STRL \"Cryo-Elevator\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tCRYO-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tCRYO-ELEVATOR-F\n\t.PROP 2,P?C-MOVE\n\tT?1907\n\t.PROP 4,P?PSEUDO\n\tW?BUTTON\t\t; NAME\n\tCRYO-BUTTON-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE CRYO-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?WAITING-AREA::\t.TABLE\t\t\t; TABLE FOR OBJECT WAITING-AREA\n\t.STRL \"Waiting Area\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE KALAMONTEE-PLATFORM\t\t; TO ROOM\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tOTHER-ELEVATOR-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 3,P?IN\t\t; CONDITIONAL EXIT\n\tOTHER-ELEVATOR-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?LDESC\n\tSTR?189\n\t.PROP 2,P?C-MOVE\n\tT?5706\n\t.PROP 8,P?PSEUDO\n\tW?BENCH\t\t; NAME\n\tBENCH-PSEUDO\t\t; HANDLER\n\tW?BENCHE\t\t; NAME\n\tBENCH-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE LOWER-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?REPAIR-ROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT REPAIR-ROOM\n\t.STRL \"Repair Room\"\n\t.PROP 2,P?NORTH\t\t; IMPOSSIBLE EXIT\n\tSTR?199\t\t; FAILURE MESSAGE\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?198\n\t.PROP 2,P?C-MOVE\n\tT?507\n\t.PROP 8,P?PSEUDO\n\tW?CABINETS\t\t; NAME\n\tCABINETS-PSEUDO\t\t; HANDLER\n\tW?MACHIN\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?BIO-LAB::\t.TABLE\t\t\t; TABLE FOR OBJECT BIO-LAB\n\t.STRL \"Bio Lab\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE LAB-OFFICE\t\t; TO ROOM\n\t.BYTE OFFICE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE BIO-LOCK-EAST\t\t; TO ROOM\n\t.BYTE BIO-DOOR-EAST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tBIO-LAB-F\n\t.PROP 2,P?C-MOVE\n\tT?3007\n\t.PROP 4,P?PSEUDO\n\tW?CRACK\t\t; NAME\n\tCRACK-PSEUDO\t\t; HANDLER\n\t.PROP 3,P?GLOBAL\n\t.BYTE BIO-DOOR-EAST\n\t.BYTE WINDOW\n\t.BYTE OFFICE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?PLAYBACK-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT PLAYBACK-BUTTON\n\t.STRL \"glowing button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tPLAYBACK-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?GLOWIN\n\t.BYTE A?PLAYBA\n\t.BYTE\t0\n\t.ENDT\n\nT?FIRST-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT FIRST-BOARD\n\t.STRL \"first seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?ACTION\n\tBOARD-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?FIRST\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?CRYO-ELEVATOR-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT CRYO-ELEVATOR-DOOR\n\t.STRL \"cryo-elevator door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?CRYO-ELEVATOR\n\t.BYTE A?ELEVATOR\n\t.BYTE\t0\n\t.ENDT\n\nT?OBSERVATION-DECK::\t.TABLE\t\t\t; TABLE FOR OBJECT OBSERVATION-DECK\n\t.STRL \"Observation Deck\"\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE TOWER-CORE\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?188\n\t.PROP 2,P?C-MOVE\n\tT?5606\n\t.PROP 1,P?GLOBAL\n\t.BYTE OCEAN\n\t.BYTE\t0\n\t.ENDT\n\nT?LOWER-ELEVATOR-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT LOWER-ELEVATOR-CARD\n\t.STRL \"lower elevator access card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?VALUE\n\t1\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?LOWER\n\t.BYTE A?ELEVATOR\n\t.BYTE A?ACCESS\n\t.PROP 2,P?TEXT\n\tSTR?130\n\t.BYTE\t0\n\t.ENDT\n\nT?ACCESS-PANEL::\t.TABLE\t\t\t; TABLE FOR OBJECT ACCESS-PANEL\n\t.STRL \"access panel\"\n\t.PROP 6,P?SYNONYM\n\tW?PANEL\n\tW?DOOR\n\tW?SOCKET\n\t.PROP 2,P?ACTION\n\tACCESS-PANEL-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE A?ACCESS\n\t.BYTE A?REPAIR\n\t.PROP 2,P?CAPACITY\n\t40\n\t.BYTE\t0\n\t.ENDT\n\nT?SCRUB-BRUSH::\t.TABLE\t\t\t; TABLE FOR OBJECT SCRUB-BRUSH\n\t.STRL \"Patrol-issue self-contained multi-purpose scrub brush\"\n\t.PROP 6,P?SYNONYM\n\tW?BRUSH\n\tW?SCRUBB\n\tW?SCRUBR\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE A?PATROL\n\t.BYTE A?SELF-CONTAINED\n\t.BYTE A?MULTI\n\t.BYTE\t0\n\t.ENDT\n\nT?GLOBAL-SHUTTLE::\t.TABLE\t\t\t; TABLE FOR OBJECT GLOBAL-SHUTTLE\n\t.STRL \"shuttle car\"\n\t.PROP 4,P?SYNONYM\n\tW?CAR\n\tW?SHUTTL\n\t.PROP 2,P?ACTION\n\tGLOBAL-SHUTTLE-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?SHUTTL\n\t.BYTE\t0\n\t.ENDT\n\nT?STORAGE-WEST-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT STORAGE-WEST-DOOR\n\t.STRL \"door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tSTORAGE-WEST-DOOR-F\n\t.BYTE\t0\n\t.ENDT\n\nT?LARGE-OFFICE::\t.TABLE\t\t\t; TABLE FOR OBJECT LARGE-OFFICE\n\t.STRL \"Large Office\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SMALL-OFFICE\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?131\n\t.PROP 2,P?C-MOVE\n\tT?3406\n\t.PROP 2,P?GLOBAL\n\t.BYTE WINDOW\n\t.BYTE OCEAN\n\t.BYTE\t0\n\t.ENDT\n\nT?CONFERENCE-ROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT CONFERENCE-ROOM\n\t.STRL \"Conference Room\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE BOOTH-1\t\t; TO ROOM\n\t.PROP 5,P?SOUTH\t\t; CONDITIONAL EXIT\n\t.BYTE REC-AREA\t\t; TO ROOM\n\t.BYTE CONFERENCE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?IN\t\t; UNCONDITIONAL EXIT\n\t.BYTE BOOTH-1\t\t; TO ROOM\n\t.PROP 5,P?OUT\t\t; CONDITIONAL EXIT\n\t.BYTE REC-AREA\t\t; TO ROOM\n\t.BYTE CONFERENCE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tCONFERENCE-ROOM-F\n\t.PROP 2,P?C-MOVE\n\tT?906\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tNEAR-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE CONFERENCE-DOOR\n\t.BYTE TABLES\n\t.BYTE\t0\n\t.ENDT\n\nT?TELEPORTATION-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT TELEPORTATION-CARD\n\t.STRL \"teleportation access card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?TELEPO\n\t.BYTE A?ACCESS\n\t.PROP 2,P?TEXT\n\tSTR?260\n\t.BYTE\t0\n\t.ENDT\n\nT?PLIERS::\t.TABLE\t\t\t; TABLE FOR OBJECT PLIERS\n\t.STRL \"pair of wide-nosed pliers\"\n\t.PROP 4,P?SYNONYM\n\tW?PAIR\n\tW?PLIERS\n\t.PROP 2,P?SIZE\n\t15\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?WIDE-NOSED\n\t.BYTE A?WIDE\n\t.BYTE A?NOSED\n\t.BYTE\t0\n\t.ENDT\n\nT?MEGAFUSE-B::\t.TABLE\t\t\t; TABLE FOR OBJECT MEGAFUSE-B\n\t.STRL \"B-series megafuse\"\n\t.PROP 4,P?SYNONYM\n\tW?FUSE\n\tW?MEGAFUSE\n\t.PROP 2,P?SIZE\n\t5\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?B-SERIES\n\t.BYTE A?B\n\t.BYTE A?SERIES\n\t.BYTE A?MEGA\n\t.BYTE\t0\n\t.ENDT\n\nT?PLANETARY-DEFENSE::\t.TABLE\t\t\t; TABLE FOR OBJECT PLANETARY-DEFENSE\n\t.STRL \"Planetary Defense\"\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tPLANETARY-DEFENSE-F\n\t.PROP 2,P?C-MOVE\n\tT?1007\n\t.PROP 2,P?GLOBAL\n\t.BYTE CONTROLS\n\t.BYTE LIGHTS\n\t.BYTE\t0\n\t.ENDT\n\nT?LEVER::\t.TABLE\t\t\t; TABLE FOR OBJECT LEVER\n\t.STRL \"lever\"\n\t.PROP 2,P?SYNONYM\n\tW?LEVER\n\t.PROP 2,P?ACTION\n\tLEVER-F\n\t.BYTE\t0\n\t.ENDT\n\nT?LIBRARY-LOBBY::\t.TABLE\t\t\t; TABLE FOR OBJECT LIBRARY-LOBBY\n\t.STRL \"Library Lobby\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE BOOTH-3\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY\t\t; TO ROOM\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY\t\t; TO ROOM\n\t.PROP 1,P?IN\t\t; UNCONDITIONAL EXIT\n\t.BYTE BOOTH-3\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?205\n\t.PROP 2,P?C-MOVE\n\tT?1207\n\t.PROP 8,P?PSEUDO\n\tW?CARPET\t\t; NAME\n\tCARPET-PSEUDO\t\t; HANDLER\n\tW?BOOTH\t\t; NAME\n\tNEAR-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE TABLES\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?CLIFF::\t.TABLE\t\t\t; TABLE FOR OBJECT CLIFF\n\t.STRL \"cliff\"\n\t.PROP 2,P?SYNONYM\n\tW?CLIFF\n\t.PROP 2,P?ACTION\n\tCLIFF-F\n\t.BYTE\t0\n\t.ENDT\n\nT?BIO-LOCK-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT BIO-LOCK-EAST\n\t.STRL \"Bio Lock East\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE BIO-LAB\t\t; TO ROOM\n\t.BYTE BIO-DOOR-EAST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE BIO-LOCK-WEST\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tBIO-LOCK-EAST-F\n\t.PROP 2,P?LDESC\n\tSTR?262\n\t.PROP 2,P?C-MOVE\n\tT?2707\n\t.PROP 2,P?GLOBAL\n\t.BYTE BIO-DOOR-EAST\n\t.BYTE WINDOW\n\t.BYTE\t0\n\t.ENDT\n\nT?RECEIVE-CONSOLE::\t.TABLE\t\t\t; TABLE FOR OBJECT RECEIVE-CONSOLE\n\t.STRL \"communications receive console\"\n\t.PROP 4,P?SYNONYM\n\tW?CONSOLE\n\tW?CONTRO\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?COMMUNICATIONS\n\t.BYTE A?RECEIVE\n\t.BYTE A?LEFT\n\t.BYTE A?FIRST\n\t.PROP 2,P?C-MOVE\n\tT?5406\n\t.BYTE\t0\n\t.ENDT\n\nT?STRIP-NEAR-RELAY::\t.TABLE\t\t\t; TABLE FOR OBJECT STRIP-NEAR-RELAY\n\t.STRL \"Strip Near Relay\"\n\t.PROP 2,P?NORTH\t\t; IMPOSSIBLE EXIT\n\tSTR?294\t\t; FAILURE MESSAGE\n\t.PROP 3,P?EAST\t\t; CONDITIONAL EXIT\n\tRELAY-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 4,P?SOUTH\t\t; CONDITIONAL EXIT\n\t.BYTE MIDDLE-OF-STRIP\t\t; TO ROOM\n\t.BYTE NO-MICROBE\t\t; IF FLAG IS TRUE\n\tSTR?292\t\t; FAILURE MESSAGE\n\t.PROP 2,P?WEST\t\t; IMPOSSIBLE EXIT\n\tSTR?293\t\t; FAILURE MESSAGE\n\t.PROP 2,P?ACTION\n\tSTRIP-NEAR-RELAY-F\n\t.PROP 2,P?C-MOVE\n\tT?3707\n\t.PROP 4,P?PSEUDO\n\tW?VOID\t\t; NAME\n\tVOID-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STRIP\n\t.BYTE\t0\n\t.ENDT\n\nT?AMBASSADOR::\t.TABLE\t\t\t; TABLE FOR OBJECT AMBASSADOR\n\t.STRL \"alien ambassador\"\n\t.PROP 2,P?SYNONYM\n\tW?AMBASSADOR\n\t.PROP 2,P?SIZE\n\t150\n\t.PROP 2,P?ACTION\n\tAMBASSADOR-F\n\t.PROP 6,P?ADJECTIVE\n\t.BYTE A?VERY\n\t.BYTE A?IMPORTANT\n\t.BYTE A?ALIEN\n\t.BYTE A?HIGH-RANKING\n\t.BYTE A?HIGH\n\t.BYTE A?RANKING\n\t.PROP 2,P?LDESC\n\tSTR?17\n\t.BYTE\t0\n\t.ENDT\n\nT?BED::\t.TABLE\t\t\t; TABLE FOR OBJECT BED\n\t.STRL \"bed\"\n\t.PROP 4,P?SYNONYM\n\tW?BUNK\n\tW?BED\n\t.PROP 2,P?ACTION\n\tBED-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?MULTI\n\t.BYTE A?TIERED\n\t.BYTE A?BUNK\n\t.BYTE\t0\n\t.ENDT\n\nT?LAB-UNIFORM::\t.TABLE\t\t\t; TABLE FOR OBJECT LAB-UNIFORM\n\t.STRL \"lab uniform\"\n\t.PROP 8,P?SYNONYM\n\tW?UNIFORM\n\tW?SUIT\n\tW?POCKET\n\tW?LOGO\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tLAB-UNIFORM-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?PALE\n\t.BYTE A?BLUE\n\t.BYTE A?LAB\n\t.PROP 2,P?CAPACITY\n\t5\n\t.PROP 2,P?FDESC\n\tSTR?259\n\t.BYTE\t0\n\t.ENDT\n\nT?PADLOCK::\t.TABLE\t\t\t; TABLE FOR OBJECT PADLOCK\n\t.STRL \"padlock\"\n\t.PROP 6,P?SYNONYM\n\tW?PADLOCK\n\tW?PAD\n\tW?LOCK\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tPADLOCK-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?SIMPLE\n\t.BYTE A?STEEL\n\t.BYTE A?METAL\n\t.BYTE\t0\n\t.ENDT\n\nT?LIGHT-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT LIGHT-BUTTON\n\t.STRL \"white button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tLIGHT-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?WHITE\n\t.BYTE A?LIGHT\n\t.BYTE\t0\n\t.ENDT\n\nT?SQUARE-WHITE-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT SQUARE-WHITE-BUTTON\n\t.STRL \"square white button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?SQUARE\n\t.BYTE A?WHITE\n\t.PROP 2,P?C-MOVE\n\t9\n\t.BYTE\t0\n\t.ENDT\n\nT?RAD-DOOR-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT RAD-DOOR-EAST\n\t.STRL \"lab door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tRAD-DOOR-EAST-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?LAB\n\t.BYTE\t0\n\t.ENDT\n\nT?GLOBAL-POD::\t.TABLE\t\t\t; TABLE FOR OBJECT GLOBAL-POD\n\t.STRL \"escape pod\"\n\t.PROP 2,P?SYNONYM\n\tW?POD\n\t.PROP 2,P?ACTION\n\tGLOBAL-POD-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?EMERGENCY\n\t.BYTE A?ESCAPE\n\t.BYTE A?PRIMARY\n\t.BYTE\t0\n\t.ENDT\n\nT?STATION-384::\t.TABLE\t\t\t; TABLE FOR OBJECT STATION-384\n\t.STRL \"Station 384\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE STRIP-NEAR-STATION\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tSTATION-384-F\n\t.PROP 2,P?LDESC\n\tSTR?287\n\t.PROP 2,P?C-MOVE\n\tT?3407\n\t.PROP 8,P?PSEUDO\n\tW?PLATE\t\t; NAME\n\tPLATE-PSEUDO\t\t; HANDLER\n\tW?PLATES\t\t; NAME\n\tPLATE-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STRIP\n\t.BYTE\t0\n\t.ENDT\n\nT?MESS-HALL::\t.TABLE\t\t\t; TABLE FOR OBJECT MESS-HALL\n\t.STRL \"Mess Hall\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-CORRIDOR\t\t; TO ROOM\n\t.PROP 5,P?SOUTH\t\t; CONDITIONAL EXIT\n\t.BYTE KITCHEN\t\t; TO ROOM\n\t.BYTE KITCHEN-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?IN\t\t; CONDITIONAL EXIT\n\t.BYTE KITCHEN\t\t; TO ROOM\n\t.BYTE KITCHEN-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tMESS-HALL-F\n\t.PROP 2,P?C-MOVE\n\tT?2306\n\t.PROP 8,P?PSEUDO\n\tW?BENCH\t\t; NAME\n\tBENCH-PSEUDO\t\t; HANDLER\n\tW?BENCHE\t\t; NAME\n\tBENCH-PSEUDO\t\t; HANDLER\n\t.PROP 3,P?GLOBAL\n\t.BYTE TABLES\n\t.BYTE KITCHEN-DOOR\n\t.BYTE SLOT\n\t.BYTE\t0\n\t.ENDT\n\nT?SYSTEMS-MONITORS::\t.TABLE\t\t\t; TABLE FOR OBJECT SYSTEMS-MONITORS\n\t.STRL \"Systems Monitors\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tSYSTEMS-MONITORS-F\n\t.PROP 2,P?C-MOVE\n\tT?3006\n\t.PROP 8,P?PSEUDO\n\tW?MONITORS\t\t; NAME\n\tMONITORS-PSEUDO\t\t; HANDLER\n\tW?EQUIPM\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE TABLES\n\t.BYTE\t0\n\t.ENDT\n\nT?DARK-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT DARK-BUTTON\n\t.STRL \"black button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tDARK-BUTTON-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?BLACK\n\t.BYTE A?DARK\n\t.BYTE A?DARKNESS\n\t.BYTE\t0\n\t.ENDT\n\nT?TOWEL::\t.TABLE\t\t\t; TABLE FOR OBJECT TOWEL\n\t.STRL \"towel\"\n\t.PROP 2,P?SYNONYM\n\tW?TOWEL\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tTOWEL-F\n\t.PROP 2,P?TEXT\n\tSTR?28\n\t.BYTE\t0\n\t.ENDT\n\nT?TELEPORTATION-BUTTON-2::\t.TABLE\t\t\t; TABLE FOR OBJECT TELEPORTATION-BUTTON-2\n\t.STRL \"beige button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tTELEPORTATION-BUTTON-2-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BEIGE\n\t.BYTE A?SECOND\n\t.BYTE\t0\n\t.ENDT\n\nT?SANFAC-B::\t.TABLE\t\t\t; TABLE FOR OBJECT SANFAC-B\n\t.STRL \"SanFac B\"\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-B\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?110\n\t.PROP 2,P?C-MOVE\n\tT?1506\n\t.PROP 8,P?PSEUDO\n\tW?FIXTURES\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\tW?TOILET\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?DEAD-FLOYD::\t.TABLE\t\t\t; TABLE FOR OBJECT DEAD-FLOYD\n\t.STRL \"mangled robot\"\n\t.PROP 6,P?SYNONYM\n\tW?FLOYD\n\tW?ROBOT\n\tW?COMPAN\n\t.PROP 2,P?ACTION\n\tDEAD-FLOYD-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?MANGLE\n\t.BYTE A?DEAD\n\t.BYTE A?FORMER\n\t.PROP 2,P?LDESC\n\tSTR?154\n\t.BYTE\t0\n\t.ENDT\n\nT?FORK::\t.TABLE\t\t\t; TABLE FOR OBJECT FORK\n\t.STRL \"Fork\"\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 1,P?SE\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ESCALATOR\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE ESCALATOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?191\n\t.PROP 2,P?C-MOVE\n\tT?307\n\t.PROP 4,P?PSEUDO\n\tW?ESCALATOR\t\t; NAME\n\tESCALATOR-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?MEDICINE::\t.TABLE\t\t\t; TABLE FOR OBJECT MEDICINE\n\t.STRL \"quantity of medicine\"\n\t.PROP 2,P?SYNONYM\n\tW?MEDICINE\n\t.PROP 2,P?SIZE\n\t7\n\t.PROP 2,P?ACTION\n\tMEDICINE-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE A?QUANTITY\n\t.BYTE A?EXPERIMENTAL\n\t.PROP 2,P?FDESC\n\tSTR?197\n\t.BYTE\t0\n\t.ENDT\n\nT?DORM-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT DORM-CORRIDOR\n\t.STRL \"Dorm Corridor\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-D\t\t; TO ROOM\n\t.PROP 3,P?EAST\t\t; CONDITIONAL EXIT\n\tLONG-HALL-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-C\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?116\n\t.PROP 2,P?C-MOVE\n\tT?2206\n\t.PROP 4,P?PSEUDO\n\tW?WALKWAY\t\t; NAME\n\tWALKWAY-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?RIFT::\t.TABLE\t\t\t; TABLE FOR OBJECT RIFT\n\t.STRL \"rift\"\n\t.PROP 8,P?SYNONYM\n\tW?RIFT\n\tW?GULF\n\tW?PRECIPICE\n\tW?HOLE\n\t.PROP 2,P?ACTION\n\tRIFT-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?WIDE\n\t.BYTE A?DEEP\n\t.BYTE A?GAPING\n\t.BYTE\t0\n\t.ENDT\n\nT?LIBRARY::\t.TABLE\t\t\t; TABLE FOR OBJECT LIBRARY\n\t.STRL \"Library\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY-LOBBY\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY-LOBBY\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?209\n\t.PROP 2,P?C-MOVE\n\tT?1407\n\t.PROP 8,P?PSEUDO\n\tW?CARPET\t\t; NAME\n\tCARPET-PSEUDO\t\t; HANDLER\n\tW?DESK\t\t; NAME\n\tDESK-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE TABLES\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?CELERY::\t.TABLE\t\t\t; TABLE FOR OBJECT CELERY\n\t.STRL \"piece of celery\"\n\t.PROP 6,P?SYNONYM\n\tW?CELERY\n\tW?PIECE\n\tW?STALK\n\t.PROP 2,P?ACTION\n\tCELERY-F\n\t.BYTE\t0\n\t.ENDT\n\nT?GREEN-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT GREEN-BUTTON\n\t.STRL \"green button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?GREEN\n\t.PROP 2,P?C-MOVE\n\t3\n\t.BYTE\t0\n\t.ENDT\n\nT?TERMINAL::\t.TABLE\t\t\t; TABLE FOR OBJECT TERMINAL\n\t.STRL \"terminal\"\n\t.PROP 8,P?SYNONYM\n\tW?TERMINAL\n\tW?KEYBOARD\n\tW?SCREEN\n\tW?MACHIN\n\t.PROP 2,P?ACTION\n\tTERMINAL-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?COMPUTER\n\t.BYTE A?VIDEO\n\t.PROP 2,P?LDESC\n\tSTR?211\n\t.PROP 2,P?FDESC\n\tSTR?210\n\t.BYTE\t0\n\t.ENDT\n\nT?RED-SPOOL::\t.TABLE\t\t\t; TABLE FOR OBJECT RED-SPOOL\n\t.STRL \"red spool\"\n\t.PROP 6,P?SYNONYM\n\tW?SPOOL\n\tW?SPOOLS\n\tW?OBJECT\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ACTION\n\tRED-SPOOL-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE A?SMALL\n\t.PROP 2,P?TEXT\n\tSTR?194\n\t.PROP 2,P?FDESC\n\tSTR?193\n\t.BYTE\t0\n\t.ENDT\n\nT?LASER-DIAL::\t.TABLE\t\t\t; TABLE FOR OBJECT LASER-DIAL\n\t.STRL \"laser setting dial\"\n\t.PROP 2,P?SYNONYM\n\tW?DIAL\n\t.PROP 2,P?ACTION\n\tLASER-DIAL-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?LASER\n\t.BYTE A?SETTING\n\t.BYTE\t0\n\t.ENDT\n\nT?SANFAC-F::\t.TABLE\t\t\t; TABLE FOR OBJECT SANFAC-F\n\t.STRL \"SanFac F\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR-WEST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?251\n\t.PROP 2,P?C-MOVE\n\tT?1607\n\t.PROP 8,P?PSEUDO\n\tW?FIXTURES\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\tW?TOILET\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?LAMP::\t.TABLE\t\t\t; TABLE FOR OBJECT LAMP\n\t.STRL \"portable lamp\"\n\t.PROP 6,P?SYNONYM\n\tW?LAMP\n\tW?LANTERN\n\tW?LIGHT\n\t.PROP 2,P?SIZE\n\t20\n\t.PROP 2,P?ACTION\n\tLAMP-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?POWERFUL\n\t.BYTE A?PORTABLE\n\t.PROP 2,P?FDESC\n\tSTR?282\n\t.BYTE\t0\n\t.ENDT\n\nT?PROJECT-CORRIDOR-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT PROJECT-CORRIDOR-EAST\n\t.STRL \"Project Corridor East\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY-LOBBY\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MAIN-LAB\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE COMPUTER-ROOM\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PROJECT-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?253\n\t.PROP 2,P?C-MOVE\n\tT?2107\n\t.BYTE\t0\n\t.ENDT\n\nT?ESCAPE-POD::\t.TABLE\t\t\t; TABLE FOR OBJECT ESCAPE-POD\n\t.STRL \"Escape Pod\"\n\t.PROP 3,P?EAST\t\t; CONDITIONAL EXIT\n\tPOD-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 3,P?UP\t\t; CONDITIONAL EXIT\n\tPOD-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 3,P?OUT\t\t; CONDITIONAL EXIT\n\tPOD-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?VALUE\n\t3\n\t.PROP 2,P?ACTION\n\tESCAPE-POD-F\n\t.PROP 2,P?C-MOVE\n\tT?603\n\t.PROP 5,P?GLOBAL\n\t.BYTE POD-DOOR\n\t.BYTE CONTROLS\n\t.BYTE LIGHTS\n\t.BYTE GLOBAL-POD\n\t.BYTE WINDOW\n\t.BYTE\t0\n\t.ENDT\n\nT?TOWER-CORE::\t.TABLE\t\t\t; TABLE FOR OBJECT TOWER-CORE\n\t.STRL \"Tower Core\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE UPPER-ELEVATOR\t\t; TO ROOM\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE COMM-ROOM\t\t; TO ROOM\n\t.PROP 1,P?SW\t\t; UNCONDITIONAL EXIT\n\t.BYTE OBSERVATION-DECK\t\t; TO ROOM\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE HELIPAD\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?LDESC\n\tSTR?179\n\t.PROP 2,P?C-MOVE\n\tT?5006\n\t.PROP 2,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE UPPER-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?RAT-ANT::\t.TABLE\t\t\t; TABLE FOR OBJECT RAT-ANT\n\t.STRL \"rat-like, ant-like man-sized monster\"\n\t.PROP 6,P?SYNONYM\n\tW?MONSTER\n\tW?MUTANT\n\tW?RAT-ANT\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?RAT-LIKE\n\t.BYTE A?ANT-LIKE\n\t.BYTE A?MAN-SIZED\n\t.PROP 2,P?LDESC\n\tSTR?322\n\t.BYTE\t0\n\t.ENDT\n\nT?SHELVES::\t.TABLE\t\t\t; TABLE FOR OBJECT SHELVES\n\t.STRL \"shelf\"\n\t.PROP 4,P?SYNONYM\n\tW?SHELF\n\tW?SHELVES\n\t.PROP 2,P?ACTION\n\tSHELVES-F\n\t.BYTE\t0\n\t.ENDT\n\nT?BROWN-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT BROWN-BUTTON\n\t.STRL \"brown button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?BROWN\n\t.PROP 2,P?C-MOVE\n\t6\n\t.BYTE\t0\n\t.ENDT\n\nT?BLUE-ELEVATOR-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT BLUE-ELEVATOR-BUTTON\n\t.STRL \"blue button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tBLUE-ELEVATOR-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BLUE\n\t.BYTE A?NORTH\n\t.BYTE\t0\n\t.ENDT\n\nT?MEMO::\t.TABLE\t\t\t; TABLE FOR OBJECT MEMO\n\t.STRL \"memo\"\n\t.PROP 2,P?SYNONYM\n\tW?MEMO\n\t.PROP 2,P?TEXT\n\tSTR?284\n\t.BYTE\t0\n\t.ENDT\n\nT?TROLL::\t.TABLE\t\t\t; TABLE FOR OBJECT TROLL\n\t.STRL \"hairy growling biped\"\n\t.PROP 8,P?SYNONYM\n\tW?TROLL\n\tW?BIPED\n\tW?MUTANT\n\tW?MONSTER\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?HAIRY\n\t.BYTE A?GROWLING\n\t.BYTE A?UGLY\n\t.BYTE A?DEFORMED\n\t.PROP 2,P?LDESC\n\tSTR?323\n\t.BYTE\t0\n\t.ENDT\n\nT?BIO-DOOR-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT BIO-DOOR-WEST\n\t.STRL \"bio-lock door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tBIO-DOOR-WEST-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?BIO-LOCK\n\t.BYTE\t0\n\t.ENDT\n\nT?CUBE::\t.TABLE\t\t\t; TABLE FOR OBJECT CUBE\n\t.STRL \"large metal cube\"\n\t.PROP 6,P?SYNONYM\n\tW?CUBE\n\tW?LID\n\tW?SOCKET\n\t.PROP 2,P?ACTION\n\tCUBE-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?LARGE\n\t.BYTE A?METAL\n\t.BYTE\t0\n\t.ENDT\n\nT?BROWN-SPOOL::\t.TABLE\t\t\t; TABLE FOR OBJECT BROWN-SPOOL\n\t.STRL \"brown spool\"\n\t.PROP 6,P?SYNONYM\n\tW?SPOOL\n\tW?SPOOLS\n\tW?OBJECT\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BROWN\n\t.BYTE A?SMALL\n\t.PROP 2,P?TEXT\n\tSTR?281\n\t.PROP 2,P?FDESC\n\tSTR?280\n\t.BYTE\t0\n\t.ENDT\n\nT?SLOT::\t.TABLE\t\t\t; TABLE FOR OBJECT SLOT\n\t.STRL \"slot\"\n\t.PROP 2,P?SYNONYM\n\tW?SLOT\n\t.PROP 2,P?ACTION\n\tSLOT-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE\t0\n\t.ENDT\n\nT?SHUTTLE-CAR-ALFIE::\t.TABLE\t\t\t; TABLE FOR OBJECT SHUTTLE-CAR-ALFIE\n\t.STRL \"Shuttle Car Alfie\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tSHUTTLE-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ALFIE-CONTROL-EAST\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ALFIE-CONTROL-WEST\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tSHUTTLE-CAR-F\n\t.PROP 2,P?C-MOVE\n\tT?703\n\t.PROP 2,P?GLOBAL\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE SHUTTLE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?CRACKED-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT CRACKED-BOARD\n\t.STRL \"cracked seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tCRACKED-BOARD-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?CRACKED\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?HELICOPTER::\t.TABLE\t\t\t; TABLE FOR OBJECT HELICOPTER\n\t.STRL \"Helicopter\"\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE HELIPAD\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?182\n\t.PROP 2,P?C-MOVE\n\tT?5206\n\t.PROP 4,P?PSEUDO\n\tW?LOCK\t\t; NAME\n\tLOCK-PSEUDO\t\t; HANDLER\n\t.PROP 4,P?GLOBAL\n\t.BYTE OCEAN\n\t.BYTE CONTROLS\n\t.BYTE WINDOW\n\t.BYTE HELICOPTER-OBJECT\n\t.BYTE\t0\n\t.ENDT\n\nT?POD-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT POD-DOOR\n\t.STRL \"escape pod bulkhead\"\n\t.PROP 4,P?SYNONYM\n\tW?DOOR\n\tW?BULKHEAD\n\t.PROP 2,P?ACTION\n\tPOD-DOOR-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?EMERGENCY\n\t.BYTE A?ESCAPE\n\t.BYTE A?POD\n\t.BYTE\t0\n\t.ENDT\n\nT?DORM-D::\t.TABLE\t\t\t; TABLE FOR OBJECT DORM-D\n\t.STRL \"Dorm D\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SANFAC-D\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?108\n\t.PROP 2,P?C-MOVE\n\tT?1806\n\t.PROP 4,P?PSEUDO\n\tW?PARTITION\t\t; NAME\n\tPARTITION-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE BED\n\t.BYTE\t0\n\t.ENDT\n\nT?BOOTH-3::\t.TABLE\t\t\t; TABLE FOR OBJECT BOOTH-3\n\t.STRL \"Booth 3\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY-LOBBY\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY-LOBBY\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?208\n\t.PROP 2,P?C-MOVE\n\tT?1307\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tIN-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 4,P?GLOBAL\n\t.BYTE CONTROLS\n\t.BYTE SLOT\n\t.BYTE TELEPORTATION-BUTTON-1\n\t.BYTE TELEPORTATION-BUTTON-2\n\t.BYTE\t0\n\t.ENDT\n\nT?HIGH-PROTEIN::\t.TABLE\t\t\t; TABLE FOR OBJECT HIGH-PROTEIN\n\t.STRL \"quantity of protein-rich liquid\"\n\t.PROP 8,P?SYNONYM\n\tW?LIQUID\n\tW?FLUID\n\tW?FOOD\n\tW?QUANTITY\n\t.PROP 2,P?SIZE\n\t5\n\t.PROP 2,P?ACTION\n\tHIGH-PROTEIN-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?BROWN\n\t.BYTE A?PROTEIN-RICH\n\t.BYTE\t0\n\t.ENDT\n\nT?GRUE::\t.TABLE\t\t\t; TABLE FOR OBJECT GRUE\n\t.STRL \"lurking fanged creature\"\n\t.PROP 8,P?SYNONYM\n\tW?GRUE\n\tW?CREATURE\n\tW?MUTANT\n\tW?MONSTER\n\t.PROP 2,P?ACTION\n\tGRUE-F\n\t.PROP 6,P?ADJECTIVE\n\t.BYTE A?LURKING\n\t.BYTE A?SINISTER\n\t.BYTE A?FANGED\n\t.BYTE A?VICIOUS\n\t.BYTE A?HUNGRY\n\t.BYTE A?SILENT\n\t.PROP 2,P?LDESC\n\tSTR?324\n\t.BYTE\t0\n\t.ENDT\n\nT?STORAGE-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT STORAGE-WEST\n\t.STRL \"Storage West\"\n\t.PROP 5,P?SOUTH\t\t; CONDITIONAL EXIT\n\t.BYTE MESS-CORRIDOR\t\t; TO ROOM\n\t.BYTE STORAGE-WEST-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 5,P?OUT\t\t; CONDITIONAL EXIT\n\t.BYTE MESS-CORRIDOR\t\t; TO ROOM\n\t.BYTE STORAGE-WEST-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?LDESC\n\tSTR?111\n\t.PROP 2,P?C-MOVE\n\tT?2106\n\t.PROP 2,P?GLOBAL\n\t.BYTE SHELVES\n\t.BYTE STORAGE-WEST-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?MEDICINE-BOTTLE::\t.TABLE\t\t\t; TABLE FOR OBJECT MEDICINE-BOTTLE\n\t.STRL \"medicine bottle\"\n\t.PROP 4,P?SYNONYM\n\tW?BOTTLE\n\tW?LABEL\n\t.PROP 2,P?SIZE\n\t7\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?MEDICINE\n\t.BYTE A?SMALL\n\t.BYTE A?WHITE\n\t.BYTE A?TRANSL\n\t.PROP 2,P?TEXT\n\tSTR?196\n\t.PROP 2,P?CAPACITY\n\t7\n\t.PROP 2,P?FDESC\n\tSTR?195\n\t.BYTE\t0\n\t.ENDT\n\nT?SYSTEMS-CORRIDOR-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT SYSTEMS-CORRIDOR-EAST\n\t.STRL \"Systems Corridor East\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE PLANETARY-COURSE-CONTROL\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PHYSICAL-PLANT-TWO\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE LIBRARY-LOBBY\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?203\n\t.PROP 2,P?C-MOVE\n\tT?807\n\t.BYTE\t0\n\t.ENDT\n\nT?CRYO-ANTEROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT CRYO-ANTEROOM\n\t.STRL \"Cryo-Anteroom\"\n\t.PROP 2,P?ACTION\n\tCRYO-ANTEROOM-F\n\t.PROP 2,P?C-MOVE\n\tT?2007\n\t.BYTE\t0\n\t.ENDT\n\nT?WEST-WING::\t.TABLE\t\t\t; TABLE FOR OBJECT WEST-WING\n\t.STRL \"West Wing\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE COURTYARD\t\t; TO ROOM\n\t.PROP 2,P?DOWN\t\t; IMPOSSIBLE EXIT\n\tSTR?104\t\t; FAILURE MESSAGE\n\t.PROP 2,P?LDESC\n\tSTR?103\n\t.PROP 2,P?C-MOVE\n\tT?606\n\t.PROP 8,P?PSEUDO\n\tW?CASTLE\t\t; NAME\n\tCASTLE-PSEUDO\t\t; HANDLER\n\tW?RUBBLE\t\t; NAME\n\tRUBBLE-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE CLIFF\n\t.BYTE OCEAN\n\t.BYTE\t0\n\t.ENDT\n\nT?KITCHEN-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT KITCHEN-CARD\n\t.STRL \"kitchen access card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?VALUE\n\t1\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?KITCHEN\n\t.BYTE A?ACCESS\n\t.PROP 2,P?TEXT\n\tSTR?127\n\t.BYTE\t0\n\t.ENDT\n\nT?STAIRS::\t.TABLE\t\t\t; TABLE FOR OBJECT STAIRS\n\t.STRL \"stairway\"\n\t.PROP 8,P?SYNONYM\n\tW?STAIRS\n\tW?STEPS\n\tW?GANGWAY\n\tW?STAIRWAY\n\t.BYTE\t0\n\t.ENDT\n\nT?BOOTH-1::\t.TABLE\t\t\t; TABLE FOR OBJECT BOOTH-1\n\t.STRL \"Booth 1\"\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE CONFERENCE-ROOM\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE CONFERENCE-ROOM\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?106\n\t.PROP 2,P?C-MOVE\n\tT?1006\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tIN-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 4,P?GLOBAL\n\t.BYTE CONTROLS\n\t.BYTE SLOT\n\t.BYTE TELEPORTATION-BUTTON-2\n\t.BYTE TELEPORTATION-BUTTON-3\n\t.BYTE\t0\n\t.ENDT\n\nT?CHEMICAL-DISPENSER::\t.TABLE\t\t\t; TABLE FOR OBJECT CHEMICAL-DISPENSER\n\t.STRL \"chemical dispenser\"\n\t.PROP 4,P?SYNONYM\n\tW?DISPEN\n\tW?MACHIN\n\t.PROP 2,P?ACTION\n\tCHEMICAL-DISPENSER-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?DISPEN\n\t.BYTE A?LARGE\n\t.BYTE A?CHEMICAL\n\t.BYTE\t0\n\t.ENDT\n\nT?RELAY::\t.TABLE\t\t\t; TABLE FOR OBJECT RELAY\n\t.STRL \"micro-relay\"\n\t.PROP 4,P?SYNONYM\n\tW?MICRO\n\tW?RELAY\n\t.PROP 2,P?ACTION\n\tRELAY-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?MICRO\n\t.BYTE\t0\n\t.ENDT\n\nT?PHYSICAL-PLANT-TWO::\t.TABLE\t\t\t; TABLE FOR OBJECT PHYSICAL-PLANT-TWO\n\t.STRL \"Physical Plant\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE SYSTEMS-CORRIDOR-EAST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?204\n\t.PROP 2,P?C-MOVE\n\tT?907\n\t.PROP 4,P?PSEUDO\n\tW?EQUIPM\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?SECOND-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT SECOND-BOARD\n\t.STRL \"second seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?ACTION\n\tBOARD-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?SECOND\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?CAN::\t.TABLE\t\t\t; TABLE FOR OBJECT CAN\n\t.STRL \"tin can\"\n\t.PROP 2,P?SYNONYM\n\tW?CAN\n\t.PROP 2,P?SIZE\n\t15\n\t.PROP 2,P?ACTION\n\tCAN-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?LARGE\n\t.BYTE A?TIN\n\t.BYTE A?UNOPENED\n\t.PROP 2,P?LDESC\n\tSTR?112\n\t.PROP 2,P?FDESC\n\tSTR?113\n\t.BYTE\t0\n\t.ENDT\n\nT?LAB-OFFICE::\t.TABLE\t\t\t; TABLE FOR OBJECT LAB-OFFICE\n\t.STRL \"Lab Office\"\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE AUXILIARY-BOOTH\t\t; TO ROOM\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE BIO-LAB\t\t; TO ROOM\n\t.BYTE OFFICE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?IN\t\t; UNCONDITIONAL EXIT\n\t.BYTE AUXILIARY-BOOTH\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tLAB-OFFICE-F\n\t.PROP 2,P?C-MOVE\n\tT?3207\n\t.PROP 8,P?PSEUDO\n\tW?FILES\t\t; NAME\n\tCABINETS-PSEUDO\t\t; HANDLER\n\tW?BOOTH\t\t; NAME\n\tNEAR-BOOTH-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE OFFICE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?SHUTTLE-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT SHUTTLE-CARD\n\t.STRL \"shuttle access card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?VALUE\n\t1\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?SHUTTL\n\t.BYTE A?ACCESS\n\t.PROP 2,P?TEXT\n\tSTR?129\n\t.BYTE\t0\n\t.ENDT\n\nT?GROUND::\t.TABLE\t\t\t; TABLE FOR OBJECT GROUND\n\t.STRL \"floor\"\n\t.PROP 8,P?SYNONYM\n\tW?GROUND\n\tW?EARTH\n\tW?FLOOR\n\tW?DECK\n\t.PROP 2,P?ACTION\n\tGROUND-F\n\t.BYTE\t0\n\t.ENDT\n\nT?LAB-DESK::\t.TABLE\t\t\t; TABLE FOR OBJECT LAB-DESK\n\t.STRL \"desk\"\n\t.PROP 2,P?SYNONYM\n\tW?DESK\n\t.PROP 2,P?ACTION\n\tLAB-DESK-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?LARGE\n\t.BYTE A?MESSY\n\t.PROP 2,P?CAPACITY\n\t10\n\t.BYTE\t0\n\t.ENDT\n\nT?FUNGICIDE-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT FUNGICIDE-BUTTON\n\t.STRL \"red button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tFUNGICIDE-BUTTON-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE A?FUNGICIDE\n\t.BYTE A?EMERGENCY\n\t.BYTE\t0\n\t.ENDT\n\nT?TABLES::\t.TABLE\t\t\t; TABLE FOR OBJECT TABLES\n\t.STRL \"table\"\n\t.PROP 4,P?SYNONYM\n\tW?TABLE\n\tW?TABLES\n\t.PROP 2,P?ACTION\n\tTABLES-F\n\t.PROP 5,P?ADJECTIVE\n\t.BYTE A?ROUND\n\t.BYTE A?CONFERENCE\n\t.BYTE A?SMALL\n\t.BYTE A?WIDE\n\t.BYTE A?LONG\n\t.BYTE\t0\n\t.ENDT\n\nT?NOT-HERE-OBJECT::\t.TABLE\t\t\t; TABLE FOR OBJECT NOT-HERE-OBJECT\n\t.STRL \"such thing\"\n\t.PROP 2,P?ACTION\n\tNOT-HERE-OBJECT-F\n\t.BYTE\t0\n\t.ENDT\n\nT?SANFAC-A::\t.TABLE\t\t\t; TABLE FOR OBJECT SANFAC-A\n\t.STRL \"SanFac A\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-A\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?109\n\t.PROP 2,P?C-MOVE\n\tT?1306\n\t.PROP 8,P?PSEUDO\n\tW?FIXTURES\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\tW?TOILET\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?COMBINATION-PAPER::\t.TABLE\t\t\t; TABLE FOR OBJECT COMBINATION-PAPER\n\t.STRL \"piece of paper\"\n\t.PROP 4,P?SYNONYM\n\tW?PIECE\n\tW?PAPER\n\t.PROP 2,P?SIZE\n\t2\n\t.PROP 2,P?ACTION\n\tCOMBINATION-PAPER-F\n\t.BYTE\t0\n\t.ENDT\n\nT?DECK-EIGHT::\t.TABLE\t\t\t; TABLE FOR OBJECT DECK-EIGHT\n\t.STRL \"Deck Eight\"\n\t.PROP 2,P?NORTH\t\t; IMPOSSIBLE EXIT\n\tSTR?14\t\t; FAILURE MESSAGE\n\t.PROP 2,P?EAST\t\t; IMPOSSIBLE EXIT\n\tSTR?13\t\t; FAILURE MESSAGE\n\t.PROP 2,P?WEST\t\t; IMPOSSIBLE EXIT\n\tSTR?13\t\t; FAILURE MESSAGE\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE GANGWAY\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?12\n\t.PROP 2,P?C-MOVE\n\tT?503\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?GANGWAY-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT GANGWAY-DOOR\n\t.STRL \"narrow bulkhead\"\n\t.PROP 4,P?SYNONYM\n\tW?DOOR\n\tW?BULKHEAD\n\t.PROP 2,P?ACTION\n\tGANGWAY-DOOR-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?EMERGENCY\n\t.BYTE A?NARROW\n\t.BYTE\t0\n\t.ENDT\n\nT?MICROBE::\t.TABLE\t\t\t; TABLE FOR OBJECT MICROBE\n\t.STRL \"microbe\"\n\t.PROP 6,P?SYNONYM\n\tW?MICROBE\n\tW?BUG\n\tW?MONSTER\n\t.PROP 2,P?ACTION\n\tMICROBE-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?HUNGRY\n\t.PROP 2,P?LDESC\n\tSTR?309\n\t.BYTE\t0\n\t.ENDT\n\nT?INTNUM::\t.TABLE\t\t\t; TABLE FOR OBJECT INTNUM\n\t.STRL \"number\"\n\t.PROP 2,P?SYNONYM\n\tW?INTNUM\n\t.BYTE\t0\n\t.ENDT\n\nT?GLOBAL-GAMES::\t.TABLE\t\t\t; TABLE FOR OBJECT GLOBAL-GAMES\n\t.STRL \"game\"\n\t.PROP 8,P?SYNONYM\n\tW?BOCCI\n\tW?CHESS\n\tW?HIDER-\n\tW?HUCKA-\n\t.PROP 2,P?ACTION\n\tGLOBAL-GAMES-F\n\t.BYTE\t0\n\t.ENDT\n\nT?FOOD-KIT::\t.TABLE\t\t\t; TABLE FOR OBJECT FOOD-KIT\n\t.STRL \"survival kit\"\n\t.PROP 4,P?SYNONYM\n\tW?PROVISIONS\n\tW?KIT\n\t.PROP 2,P?SIZE\n\t10\n\t.PROP 2,P?ACTION\n\tFOOD-KIT-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?SURVIVAL\n\t.BYTE A?EMERGENCY\n\t.PROP 2,P?CAPACITY\n\t25\n\t.BYTE\t0\n\t.ENDT\n\nT?SLEEP::\t.TABLE\t\t\t; TABLE FOR OBJECT SLEEP\n\t.STRL \"sacred act of sleeping\"\n\t.PROP 2,P?SYNONYM\n\tW?SLEEP\n\t.PROP 2,P?ACTION\n\tSLEEP-F\n\t.BYTE\t0\n\t.ENDT\n\nT?BIO-LOCK-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT BIO-LOCK-WEST\n\t.STRL \"Bio Lock West\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE BIO-LOCK-EAST\t\t; TO ROOM\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE MAIN-LAB\t\t; TO ROOM\n\t.BYTE BIO-DOOR-WEST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?LDESC\n\tSTR?261\n\t.PROP 2,P?C-MOVE\n\tT?2607\n\t.PROP 1,P?GLOBAL\n\t.BYTE BIO-DOOR-WEST\n\t.BYTE\t0\n\t.ENDT\n\nT?MESS-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT MESS-CORRIDOR\n\t.STRL \"Mess Corridor\"\n\t.PROP 5,P?NORTH\t\t; CONDITIONAL EXIT\n\t.BYTE STORAGE-WEST\t\t; TO ROOM\n\t.BYTE STORAGE-WEST-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MESS-HALL\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-CORRIDOR\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tMESS-CORRIDOR-F\n\t.PROP 2,P?C-MOVE\n\tT?2006\n\t.PROP 1,P?GLOBAL\n\t.BYTE STORAGE-WEST-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?DISPENSER::\t.TABLE\t\t\t; TABLE FOR OBJECT DISPENSER\n\t.STRL \"dispenser unit\"\n\t.PROP 8,P?SYNONYM\n\tW?UNIT\n\tW?NICHE\n\tW?MACHIN\n\tW?DISPEN\n\t.PROP 2,P?ACTION\n\tDISPENSER-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?DISPEN\n\t.BYTE\t0\n\t.ENDT\n\nT?SANFAC-E::\t.TABLE\t\t\t; TABLE FOR OBJECT SANFAC-E\n\t.STRL \"SanFac E\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE ADMIN-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?123\n\t.PROP 2,P?C-MOVE\n\tT?2906\n\t.PROP 8,P?PSEUDO\n\tW?FIXTURES\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\tW?TOILET\t\t; NAME\n\tTOILET-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?RAD-DOOR-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT RAD-DOOR-WEST\n\t.STRL \"radiation-lock door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tRAD-DOOR-WEST-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?RADIATION\n\t.BYTE\t0\n\t.ENDT\n\nT?MINI-CARD::\t.TABLE\t\t\t; TABLE FOR OBJECT MINI-CARD\n\t.STRL \"miniaturization access card\"\n\t.PROP 4,P?SYNONYM\n\tW?CARD\n\tW?CARDS\n\t.PROP 2,P?VALUE\n\t1\n\t.PROP 2,P?SIZE\n\t3\n\t.PROP 2,P?ACTION\n\tMINI-CARD-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?MINIAT\n\t.BYTE A?MINI\n\t.BYTE A?ACCESS\n\t.PROP 2,P?TEXT\n\tSTR?256\n\t.BYTE\t0\n\t.ENDT\n\nT?RED-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT RED-BUTTON\n\t.STRL \"red button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?RED\n\t.PROP 2,P?C-MOVE\n\t1\n\t.BYTE\t0\n\t.ENDT\n\nT?GLOBAL-DOORWAY::\t.TABLE\t\t\t; TABLE FOR OBJECT GLOBAL-DOORWAY\n\t.STRL \"doorway\"\n\t.PROP 6,P?SYNONYM\n\tW?DOORWA\n\tW?PORTAL\n\tW?OPENIN\n\t.PROP 2,P?ACTION\n\tGLOBAL-DOORWAY-F\n\t.PROP 8,P?ADJECTIVE\n\t.BYTE A?NORTH\n\t.BYTE A?SOUTH\n\t.BYTE A?EAST\n\t.BYTE A?WEST\n\t.BYTE A?NE\n\t.BYTE A?SE\n\t.BYTE A?NW\n\t.BYTE A?SW\n\t.BYTE\t0\n\t.ENDT\n\nT?UPPER-ELEVATOR-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT UPPER-ELEVATOR-DOOR\n\t.STRL \"blue door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tUPPER-ELEVATOR-DOOR-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?UPPER\n\t.BYTE A?ELEVATOR\n\t.BYTE A?BLUE\n\t.BYTE\t0\n\t.ENDT\n\nT?HELICOPTER-OBJECT::\t.TABLE\t\t\t; TABLE FOR OBJECT HELICOPTER-OBJECT\n\t.STRL \"large vehicle\"\n\t.PROP 4,P?SYNONYM\n\tW?VEHICLE\n\tW?HELICOPTER\n\t.PROP 2,P?ACTION\n\tHELICOPTER-OBJECT-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?LARGE\n\t.BYTE\t0\n\t.ENDT\n\nT?TRIFFID::\t.TABLE\t\t\t; TABLE FOR OBJECT TRIFFID\n\t.STRL \"mobile man-eating plant\"\n\t.PROP 8,P?SYNONYM\n\tW?TRIFFID\n\tW?PLANT\n\tW?MUTANT\n\tW?MONSTER\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?MOBILE\n\t.BYTE A?MAN-EATING\n\t.BYTE A?GIANT\n\t.PROP 2,P?LDESC\n\tSTR?325\n\t.BYTE\t0\n\t.ENDT\n\nT?ROBOT-SHOP::\t.TABLE\t\t\t; TABLE FOR OBJECT ROBOT-SHOP\n\t.STRL \"Robot Shop\"\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MACHINE-SHOP\t\t; TO ROOM\n\t.PROP 1,P?NW\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?152\n\t.PROP 2,P?C-MOVE\n\tT?4506\n\t.PROP 4,P?PSEUDO\n\tW?DEVICE\t\t; NAME\n\tDEVICES-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?ESCALATOR::\t.TABLE\t\t\t; TABLE FOR OBJECT ESCALATOR\n\t.STRL \"Escalator\"\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE FORK\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE LAWANDA-PLATFORM\t\t; TO ROOM\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE FORK\t\t; TO ROOM\n\t.PROP 1,P?DOWN\t\t; UNCONDITIONAL EXIT\n\t.BYTE LAWANDA-PLATFORM\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?190\n\t.PROP 2,P?C-MOVE\n\tT?207\n\t.PROP 4,P?PSEUDO\n\tW?ESCALATOR\t\t; NAME\n\tESCALATOR-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?GANGWAY::\t.TABLE\t\t\t; TABLE FOR OBJECT GANGWAY\n\t.STRL \"Gangway\"\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE DECK-EIGHT\t\t; TO ROOM\n\t.PROP 5,P?DOWN\t\t; CONDITIONAL EXIT\n\t.BYTE DECK-NINE\t\t; TO ROOM\n\t.BYTE GANGWAY-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tGANGWAY-F\n\t.PROP 2,P?LDESC\n\tSTR?11\n\t.PROP 2,P?C-MOVE\n\tT?403\n\t.PROP 2,P?GLOBAL\n\t.BYTE GANGWAY-DOOR\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?SAFETY-WEB::\t.TABLE\t\t\t; TABLE FOR OBJECT SAFETY-WEB\n\t.STRL \"safety web\"\n\t.PROP 8,P?SYNONYM\n\tW?MASS\n\tW?WEB\n\tW?WEBBING\n\tW?NET\n\t.PROP 2,P?ACTION\n\tSAFETY-WEB-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?SAFETY\n\t.BYTE\t0\n\t.ENDT\n\nT?BROCHURE::\t.TABLE\t\t\t; TABLE FOR OBJECT BROCHURE\n\t.STRL \"brochure\"\n\t.PROP 6,P?SYNONYM\n\tW?BROCHURE\n\tW?PAMPHLET\n\tW?LEAFLET\n\t.PROP 2,P?SIZE\n\t4\n\t.PROP 2,P?LDESC\n\tSTR?19\n\t.PROP 2,P?TEXT\n\tSTR?20\n\t.BYTE\t0\n\t.ENDT\n\nT?TOOL-ROOM::\t.TABLE\t\t\t; TABLE FOR OBJECT TOOL-ROOM\n\t.STRL \"Tool Room\"\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE MACHINE-SHOP\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?141\n\t.PROP 2,P?C-MOVE\n\tT?4306\n\t.PROP 1,P?GLOBAL\n\t.BYTE SHELVES\n\t.BYTE\t0\n\t.ENDT\n\nT?BLUE-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT BLUE-BUTTON\n\t.STRL \"blue button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tCHEM-BUTTON-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?BLUE\n\t.PROP 2,P?C-MOVE\n\t2\n\t.BYTE\t0\n\t.ENDT\n\nT?UPPER-ELEVATOR::\t.TABLE\t\t\t; TABLE FOR OBJECT UPPER-ELEVATOR\n\t.STRL \"Upper Elevator\"\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tELEVATOR-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?UP\t\t; IMPOSSIBLE EXIT\n\tSTR?175\t\t; FAILURE MESSAGE\n\t.PROP 2,P?DOWN\t\t; IMPOSSIBLE EXIT\n\tSTR?175\t\t; FAILURE MESSAGE\n\t.PROP 3,P?OUT\t\t; CONDITIONAL EXIT\n\tELEVATOR-EXIT-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tUPPER-ELEVATOR-F\n\t.PROP 2,P?C-MOVE\n\tT?4706\n\t.PROP 5,P?GLOBAL\n\t.BYTE LIGHTS\n\t.BYTE CONTROLS\n\t.BYTE SLOT\n\t.BYTE ELEVATOR-BUTTON\n\t.BYTE UPPER-ELEVATOR-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?DORM-C::\t.TABLE\t\t\t; TABLE FOR OBJECT DORM-C\n\t.STRL \"Dorm C\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE DORM-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE SANFAC-C\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?108\n\t.PROP 2,P?C-MOVE\n\tT?1606\n\t.PROP 4,P?PSEUDO\n\tW?PARTITION\t\t; NAME\n\tPARTITION-PSEUDO\t\t; HANDLER\n\t.PROP 1,P?GLOBAL\n\t.BYTE BED\n\t.BYTE\t0\n\t.ENDT\n\nT?LAWANDA-PLATFORM::\t.TABLE\t\t\t; TABLE FOR OBJECT LAWANDA-PLATFORM\n\t.STRL \"Lawanda Platform\"\n\t.PROP 3,P?NORTH\t\t; CONDITIONAL EXIT\n\tSHUTTLE-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ESCALATOR\t\t; TO ROOM\n\t.PROP 3,P?SOUTH\t\t; CONDITIONAL EXIT\n\tSHUTTLE-ENTER-F\t\t; PER FUNCTION\n\t.BYTE 0\n\t.PROP 1,P?UP\t\t; UNCONDITIONAL EXIT\n\t.BYTE ESCALATOR\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?ACTION\n\tLAWANDA-PLATFORM-F\n\t.PROP 2,P?C-MOVE\n\tT?107\n\t.PROP 4,P?PSEUDO\n\tW?ESCALATOR\t\t; NAME\n\tESCALATOR-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE STAIRS\n\t.BYTE\t0\n\t.ENDT\n\nT?AUXILIARY-BOOTH::\t.TABLE\t\t\t; TABLE FOR OBJECT AUXILIARY-BOOTH\n\t.STRL \"Auxiliary Booth\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE LAB-OFFICE\t\t; TO ROOM\n\t.PROP 1,P?OUT\t\t; UNCONDITIONAL EXIT\n\t.BYTE LAB-OFFICE\t\t; TO ROOM\n\t.PROP 2,P?VALUE\n\t4\n\t.PROP 2,P?LDESC\n\tSTR?286\n\t.PROP 2,P?C-MOVE\n\tT?3307\n\t.PROP 4,P?PSEUDO\n\tW?BOOTH\t\t; NAME\n\tIN-BOOTH-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?ALFIE-CONTROL-WEST::\t.TABLE\t\t\t; TABLE FOR OBJECT ALFIE-CONTROL-WEST\n\t.STRL \"Alfie Control West\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE SHUTTLE-CAR-ALFIE\t\t; TO ROOM\n\t.BYTE SHUTTLE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tCONTROL-CABIN-F\n\t.PROP 2,P?C-MOVE\n\tT?903\n\t.PROP 5,P?GLOBAL\n\t.BYTE SLOT\n\t.BYTE LEVER\n\t.BYTE WINDOW\n\t.BYTE SHUTTLE-DOOR\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE\t0\n\t.ENDT\n\nT?SPOOL-READER::\t.TABLE\t\t\t; TABLE FOR OBJECT SPOOL-READER\n\t.STRL \"microfilm reader\"\n\t.PROP 8,P?SYNONYM\n\tW?READER\n\tW?SCREEN\n\tW?OPENIN\n\tW?MACHIN\n\t.PROP 2,P?ACTION\n\tSPOOL-READER-F\n\t.PROP 3,P?ADJECTIVE\n\t.BYTE A?MICROF\n\t.BYTE A?SMALL\n\t.BYTE A?CIRCUL\n\t.PROP 2,P?LDESC\n\tSTR?245\n\t.PROP 2,P?CAPACITY\n\t3\n\t.PROP 2,P?FDESC\n\tSTR?244\n\t.BYTE\t0\n\t.ENDT\n\nT?PATROL-UNIFORM::\t.TABLE\t\t\t; TABLE FOR OBJECT PATROL-UNIFORM\n\t.STRL \"Patrol uniform\"\n\t.PROP 6,P?SYNONYM\n\tW?UNIFORM\n\tW?POCKET\n\tW?SUIT\n\t.PROP 2,P?ACTION\n\tPATROL-UNIFORM-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?PATROL\n\t.BYTE A?WRINKLED\n\t.PROP 2,P?LDESC\n\tSTR?7\n\t.PROP 2,P?CAPACITY\n\t10\n\t.BYTE\t0\n\t.ENDT\n\nT?ROBOT-HOLE::\t.TABLE\t\t\t; TABLE FOR OBJECT ROBOT-HOLE\n\t.STRL \"small doorway\"\n\t.PROP 6,P?SYNONYM\n\tW?DOOR\n\tW?DOORWA\n\tW?HOLE\n\t.PROP 2,P?ACTION\n\tROBOT-HOLE-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE A?VERY\n\t.PROP 2,P?CAPACITY\n\t0\n\t.BYTE\t0\n\t.ENDT\n\nT?RADIATION-LOCK-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT RADIATION-LOCK-EAST\n\t.STRL \"Radiation Lock East\"\n\t.PROP 5,P?EAST\t\t; CONDITIONAL EXIT\n\t.BYTE RADIATION-LAB\t\t; TO ROOM\n\t.BYTE RAD-DOOR-EAST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE RADIATION-LOCK-WEST\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?264\n\t.PROP 2,P?C-MOVE\n\tT?2907\n\t.PROP 1,P?GLOBAL\n\t.BYTE RAD-DOOR-EAST\n\t.BYTE\t0\n\t.ENDT\n\nT?RADIATION-LAB::\t.TABLE\t\t\t; TABLE FOR OBJECT RADIATION-LAB\n\t.STRL \"Radiation Lab\"\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE RADIATION-LOCK-EAST\t\t; TO ROOM\n\t.BYTE RAD-DOOR-EAST\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tRADIATION-LAB-F\n\t.PROP 2,P?LDESC\n\tSTR?278\n\t.PROP 2,P?C-MOVE\n\tT?3107\n\t.PROP 8,P?PSEUDO\n\tW?CRACK\t\t; NAME\n\tCRACK-PSEUDO\t\t; HANDLER\n\tW?EQUIPM\t\t; NAME\n\tEQUIPMENT-PSEUDO\t\t; HANDLER\n\t.PROP 2,P?GLOBAL\n\t.BYTE TABLES\n\t.BYTE RAD-DOOR-EAST\n\t.BYTE\t0\n\t.ENDT\n\nT?OCEAN::\t.TABLE\t\t\t; TABLE FOR OBJECT OCEAN\n\t.STRL \"ocean\"\n\t.PROP 2,P?SYNONYM\n\tW?OCEAN\n\t.PROP 2,P?ACTION\n\tOCEAN-F\n\t.PROP 1,P?ADJECTIVE\n\t.BYTE A?ENDLESS\n\t.BYTE\t0\n\t.ENDT\n\nT?SEND-CONSOLE::\t.TABLE\t\t\t; TABLE FOR OBJECT SEND-CONSOLE\n\t.STRL \"communication send console\"\n\t.PROP 4,P?SYNONYM\n\tW?CONSOLE\n\tW?CONTRO\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?COMMUNICATIONS\n\t.BYTE A?SEND\n\t.BYTE A?RIGHT\n\t.BYTE A?SECOND\n\t.BYTE\t0\n\t.ENDT\n\nT?PLAIN-HALL::\t.TABLE\t\t\t; TABLE FOR OBJECT PLAIN-HALL\n\t.STRL \"Plain Hall\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-AREA\t\t; TO ROOM\n\t.PROP 1,P?NE\t\t; UNCONDITIONAL EXIT\n\t.BYTE REC-CORRIDOR\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE COURTYARD\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?105\n\t.PROP 2,P?C-MOVE\n\tT?706\n\t.BYTE\t0\n\t.ENDT\n\nT?MECH-CORRIDOR::\t.TABLE\t\t\t; TABLE FOR OBJECT MECH-CORRIDOR\n\t.STRL \"Mech Corridor\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-N\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE REACTOR-CONTROL\t\t; TO ROOM\n\t.PROP 1,P?SOUTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE PHYSICAL-PLANT\t\t; TO ROOM\n\t.PROP 2,P?LDESC\n\tSTR?132\n\t.PROP 2,P?C-MOVE\n\tT?3606\n\t.BYTE\t0\n\t.ENDT\n\nT?REACTOR-ELEVATOR-DOOR::\t.TABLE\t\t\t; TABLE FOR OBJECT REACTOR-ELEVATOR-DOOR\n\t.STRL \"reactor elevator door\"\n\t.PROP 2,P?SYNONYM\n\tW?DOOR\n\t.PROP 2,P?ACTION\n\tREACTOR-ELEVATOR-DOOR-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?REACTOR\n\t.BYTE A?ELEVATOR\n\t.BYTE\t0\n\t.ENDT\n\nT?RED-GOO::\t.TABLE\t\t\t; TABLE FOR OBJECT RED-GOO\n\t.STRL \"blob of red goo\"\n\t.PROP 8,P?SYNONYM\n\tW?GOO\n\tW?BLOB\n\tW?FOOD\n\tW?PIE\n\t.PROP 2,P?ACTION\n\tGOO-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE A?CHERRY\n\t.BYTE\t0\n\t.ENDT\n\nT?RED-ELEVATOR-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT RED-ELEVATOR-BUTTON\n\t.STRL \"red button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tRED-ELEVATOR-BUTTON-F\n\t.PROP 2,P?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE A?SOUTH\n\t.BYTE\t0\n\t.ENDT\n\nT?FOURTH-BOARD::\t.TABLE\t\t\t; TABLE FOR OBJECT FOURTH-BOARD\n\t.STRL \"fourth seventeen-centimeter fromitz board\"\n\t.PROP 4,P?SYNONYM\n\tW?BOARD\n\tW?BOARDS\n\t.PROP 2,P?ACTION\n\tBOARD-F\n\t.PROP 4,P?ADJECTIVE\n\t.BYTE A?FOURTH\n\t.BYTE A?SEVENTEEN\n\t.BYTE A?CENTIMETER\n\t.BYTE A?FROMITZ\n\t.BYTE\t0\n\t.ENDT\n\nT?MACHINE-SHOP::\t.TABLE\t\t\t; TABLE FOR OBJECT MACHINE-SHOP\n\t.STRL \"Machine Shop\"\n\t.PROP 1,P?NORTH\t\t; UNCONDITIONAL EXIT\n\t.BYTE MECH-CORRIDOR-S\t\t; TO ROOM\n\t.PROP 1,P?EAST\t\t; UNCONDITIONAL EXIT\n\t.BYTE ROBOT-SHOP\t\t; TO ROOM\n\t.PROP 1,P?WEST\t\t; UNCONDITIONAL EXIT\n\t.BYTE TOOL-ROOM\t\t; TO ROOM\n\t.PROP 2,P?ACTION\n\tMACHINE-SHOP-F\n\t.PROP 2,P?C-MOVE\n\tT?4406\n\t.PROP 4,P?PSEUDO\n\tW?SPOUT\t\t; NAME\n\tCHEM-SPOUT-PSEUDO\t\t; HANDLER\n\t.BYTE\t0\n\t.ENDT\n\nT?PSEUDO-OBJECT::\t.TABLE\t\t\t; TABLE FOR OBJECT PSEUDO-OBJECT\n\t.STRL \"pseudo\"\n\t.PROP 2,P?ACTION\n\tGO\n\t.BYTE\t0\n\t.ENDT\n\nT?BETTY-CONTROL-EAST::\t.TABLE\t\t\t; TABLE FOR OBJECT BETTY-CONTROL-EAST\n\t.STRL \"Betty Control East\"\n\t.PROP 5,P?WEST\t\t; CONDITIONAL EXIT\n\t.BYTE SHUTTLE-CAR-BETTY\t\t; TO ROOM\n\t.BYTE SHUTTLE-DOOR\t\t; IF DOOR IS OPEN\n\t0\t\t; FAILURE MESSAGE\n\t.BYTE 0\n\t.PROP 2,P?ACTION\n\tCONTROL-CABIN-F\n\t.PROP 2,P?C-MOVE\n\tT?1103\n\t.PROP 5,P?GLOBAL\n\t.BYTE GLOBAL-SHUTTLE\n\t.BYTE SLOT\n\t.BYTE WINDOW\n\t.BYTE LEVER\n\t.BYTE SHUTTLE-DOOR\n\t.BYTE\t0\n\t.ENDT\n\nT?ELEVATOR-BUTTON::\t.TABLE\t\t\t; TABLE FOR OBJECT ELEVATOR-BUTTON\n\t.STRL \"button\"\n\t.PROP 2,P?SYNONYM\n\tW?BUTTON\n\t.PROP 2,P?ACTION\n\tELEVATOR-BUTTON-F\n\t.BYTE\t0\n\t.ENDT\n\n\n; IMPURE TABLES ARE DEFINED HERE\n\nIMPTBL::\n\nT?102::\nT?C-TABLE::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?103::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?203::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t15\n\t0\n\t0\n\t0\n\t15\n\t0\n\t0\n\t.ENDT\n\nT?303::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t15\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?403::\t.TABLE\n\t0\n\t0\n\t10\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?503::\t.TABLE\n\t0\n\t0\n\t10\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?603::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?703::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?803::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?903::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1003::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1103::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1203::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?104::\nT?P-LEXV::\t.TABLE\n\t30720\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?204::\nT?P-INBUF::\t.TABLE\n\t20480\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?304::\nT?P-ITBL::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?404::\nT?P-OTBL::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?504::\nT?P-VTBL::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?604::\nT?P-PRSO::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?704::\nT?P-PRSI::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?804::\nT?P-BUTS::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?904::\nT?P-MERGE::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1004::\nT?P-OCLAUSE::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?106::\t.TABLE\n\t0\n\t0\n\t0\n\t35\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?206::\t.TABLE\n\t0\n\t0\n\t10\n\t40\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?306::\t.TABLE\n\t0\n\t0\n\t25\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?406::\t.TABLE\n\t0\n\t0\n\t15\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?506::\t.TABLE\n\t0\n\t0\n\t15\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?606::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?706::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t.ENDT\n\nT?806::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?906::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1006::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1106::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1206::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1306::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1406::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1506::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1606::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1706::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1806::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1906::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2006::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2106::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2206::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t160\n\t0\n\t0\n\t.ENDT\n\nT?2306::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2406::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2506::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t160\n\t0\n\t0\n\t0\n\t30\n\t0\n\t0\n\t.ENDT\n\nT?2606::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2706::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2806::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2906::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3006::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3106::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3206::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3306::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3406::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3506::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3606::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3706::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t25\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3806::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3906::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4006::\t.TABLE\n\t0\n\t0\n\t20\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4106::\t.TABLE\n\t0\n\t0\n\t0\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4206::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4306::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t.ENDT\n\nT?4406::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4506::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4606::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4706::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4806::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?4906::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5006::\t.TABLE\n\t0\n\t0\n\t0\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5106::\t.TABLE\n\t0\n\t0\n\t15\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5206::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5306::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5406::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5506::\nT?ORDER-LTBL::\t.TABLE\n\t7\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5606::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5706::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?5806::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?107::\t.TABLE\n\t0\n\t0\n\t0\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?207::\t.TABLE\n\t0\n\t0\n\t15\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?307::\t.TABLE\n\t0\n\t0\n\t15\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t25\n\t0\n\t.ENDT\n\nT?407::\t.TABLE\n\t25\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?507::\t.TABLE\n\t0\n\t0\n\t0\n\t30\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?607::\t.TABLE\n\t0\n\t0\n\t15\n\t0\n\t0\n\t0\n\t25\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?707::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?807::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?907::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1007::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1107::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1207::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1307::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1407::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1507::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1607::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1707::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1807::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?1907::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2007::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2107::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2207::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t.ENDT\n\nT?2307::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2407::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t25\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2507::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2607::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t10\n\t0\n\t0\n\t.ENDT\n\nT?2707::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t10\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2807::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?2907::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3007::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3107::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3207::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3307::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3407::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3507::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3607::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\nT?3707::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\n\n; END OF IMPURENESS\n\nIMPURE::\n\n\n\n; VERB TABLE IS DEFINED HERE\n\nVTBL::\t.TABLE\n\tST?KISS\n\tST?SKIP\n\tST?PULL\n\tST?PUT\n\tST?RAPE\n\tST?VERBOSE\n\tST?WALK\n\tST?OIL\n\tST?QUIT\n\tST?FIND\n\tST?YES\n\tST?DESTROY\n\tST?SCOLD\n\tST?UNLOCK\n\tST?READ\n\tST?SAY\n\tST?JUMP\n\tST?POUR\n\tST?WAIT\n\tST?TAKE\n\tST?NO\n\tST?FOLLOW\n\tST?TYPE\n\tST?FLY\n\tST?VERSION\n\tST?#UNRECORD\n\tST?MOVE\n\tST?PLAY\n\tST?OPEN\n\tST?TASTE\n\tST?#COMMAND\n\tST?KNOCK\n\tST?PICK\n\tST?BOARD\n\tST?#RANDOM\n\tST?APPLY\n\tST?ESCAPE\n\tST?STAND\n\tST?LISTEN\n\tST?SHOW\n\tST?SAVE\n\tST?HELP\n\tST?TELL\n\tST?THROW\n\tST?ZORK\n\tST?SHAKE\n\tST?INVENTORY\n\tST?ATTACK\n\tST?RESTOR\n\tST?ENTER\n\tST?SEARCH\n\tST?WEAR\n\tST?DISEMBARK\n\tST?SWIM\n\tST?UNSCRIPT\n\tST?PUSH\n\tST?RUB\n\tST?SUPER\n\tST?SIT\n\tST?RESTAR\n\tST?REACH\n\tST?SCORE\n\tST?SCRUB\n\tST?SALUTE\n\tST?LOOK\n\tST?EMPTY\n\tST?ATTRACT\n\tST?DROP\n\tST?STEP\n\tST?TIME\n\tST?LEAVE\n\tST?CURSE\n\tST?SCRIPT\n\tST?$VERIFY\n\tST?SMELL\n\tST?BRIEF\n\tST?DIAGNOSE\n\tST?GIVE\n\tST?SLEEP\n\tST?SMILE\n\tST?WAKE\n\tST?REMOVE\n\tST?ANSWER\n\tST?YELL\n\tST?LOCK\n\tST?ACTIVATE\n\tST?KICK\n\tST?POINT\n\tST?TURN\n\tST?#RECORD\n\tST?MAYBE\n\tST?CLOSE\n\tST?STRIKE\n\tST?FIX\n\tST?SLIDE\n\tST?WAVE\n\tST?EXIT\n\tST?AGAIN\n\tST?EXAMINE\n\tST?EAT\n\tST?FIRE\n\tST?CLIMB\n\tST?FLUSH\n\tST?HELLO\n\t.ENDT\n\n; SYNTAX DEFINITION TABLES ARE DEFINED HERE\n\nST?KISS::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?KISS\n\t.ENDT\n\nST?SKIP::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SKIP\n\t.ENDT\n\nST?PULL::\t.TABLE\n\t.BYTE 5\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE V?ZATTRACT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PULL\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PULL\n\t.ENDT\n\nST?PUT::\t.TABLE\n\t.BYTE 10\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?INSERT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?SLIDE\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ACROSS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SPAN\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?NEAR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE+STAKE\n\t.BYTE 0\n\t.BYTE V?WEAR\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?UNDER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE+STAKE\n\t.BYTE 0\n\t.BYTE V?PUT-UNDER\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE\n\t.BYTE 0\n\t.BYTE V?DROP\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY\n\t.BYTE 0\n\t.BYTE V?PUT-ON\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE+STAKE\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.ENDT\n\nST?RAPE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?RAPE\n\t.ENDT\n\nST?VERBOSE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?VERBOSE\n\t.ENDT\n\nST?WALK::\t.TABLE\n\t.BYTE 9\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?SLIDE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OUT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?EXIT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?WALK-TO\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE CLIMBBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE CLIMBBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AROUND\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?WALK-AROUND\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?THROUGH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?THROUGH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?WALK\n\t.ENDT\n\nST?OIL::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE\n\t.BYTE V?OIL\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?OIL\n\t.ENDT\n\nST?QUIT::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?QUIT\n\t.ENDT\n\nST?FIND::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FIND\n\t.ENDT\n\nST?YES::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?YES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?YES\n\t.ENDT\n\nST?DESTROY::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR+SH+SC\n\t.BYTE 0\n\t.BYTE V?MUNG\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR+SH+SC\n\t.BYTE SHAVE\n\t.BYTE V?MUNG\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR+SH+SC\n\t.BYTE 0\n\t.BYTE V?MUNG\n\t.ENDT\n\nST?SCOLD::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SCOLD\n\t.ENDT\n\nST?UNLOCK::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE TOOLBIT\n\t.BYTE SOG+SIR\n\t.BYTE SH+SC+SOG+SIR+STAKE\n\t.BYTE V?UNLOCK\n\t.ENDT\n\nST?READ::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE READBIT\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?READ\n\t.ENDT\n\nST?SAY::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SAY\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SIR\n\t.BYTE 0\n\t.BYTE V?TALK\n\t.ENDT\n\nST?JUMP::\t.TABLE\n\t.BYTE 6\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OFF\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?FROM\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ACROSS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAP\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAP\n\t.ENDT\n\nST?POUR::\t.TABLE\n\t.BYTE 5\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?POUR\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OUT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?POUR\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?POUR\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?POUR\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?POUR\n\t.ENDT\n\nST?WAIT::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?WAIT\n\t.ENDT\n\nST?TAKE::\t.TABLE\n\t.BYTE 12\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE V?ZATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?NEAR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?STAND\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OFF\n\t.BYTE 0\n\t.BYTE WEARBIT\n\t.BYTE 0\n\t.BYTE SH+SC+SMANY\n\t.BYTE 0\n\t.BYTE V?TAKE-OFF\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?FROM\n\t.BYTE TAKEBIT\n\t.BYTE 0\n\t.BYTE SIR+SC\n\t.BYTE SOG+SH\n\t.BYTE V?TAKE\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OFF\n\t.BYTE TAKEBIT\n\t.BYTE 0\n\t.BYTE SC+SIR\n\t.BYTE 0\n\t.BYTE V?TAKE\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OUT\n\t.BYTE TAKEBIT\n\t.BYTE 0\n\t.BYTE SC+SIR\n\t.BYTE 0\n\t.BYTE V?TAKE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE VEHBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-ON\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OUT\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?DISEMBARK\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE VEHBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?BOARD\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE TAKEBIT\n\t.BYTE 0\n\t.BYTE SOG+SMANY\n\t.BYTE 0\n\t.BYTE V?TAKE\n\t.ENDT\n\nST?NO::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?NO\n\t.ENDT\n\nST?FOLLOW::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FOLLOW\n\t.ENDT\n\nST?TYPE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?TYPE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?TYPE\n\t.ENDT\n\nST?FLY::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FLY\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FLY\n\t.ENDT\n\nST?VERSION::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?VERSION\n\t.ENDT\n\nST?#UNRECORD::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?$UNRECORD\n\t.ENDT\n\nST?MOVE::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?MOVE\n\t.ENDT\n\nST?PLAY::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PLAY\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PLAY-WITH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PLAY\n\t.ENDT\n\nST?OPEN::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE\n\t.BYTE V?OPEN-WITH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE DOORBIT\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR\n\t.BYTE 0\n\t.BYTE V?OPEN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR\n\t.BYTE 0\n\t.BYTE V?OPEN\n\t.ENDT\n\nST?TASTE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?TASTE\n\t.ENDT\n\nST?#COMMAND::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?$COMMAND\n\t.ENDT\n\nST?KNOCK::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?ATTACK\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?KNOCK\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?KNOCK\n\t.ENDT\n\nST?PICK::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE V?ZATTRACT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE TAKEBIT\n\t.BYTE 0\n\t.BYTE SOG+SMANY\n\t.BYTE 0\n\t.BYTE V?TAKE\n\t.ENDT\n\nST?BOARD::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE VEHBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?BOARD\n\t.ENDT\n\nST?#RANDOM::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?$RANDOM\n\t.ENDT\n\nST?APPLY::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.ENDT\n\nST?ESCAPE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?ZESCAPE\n\t.ENDT\n\nST?STAND::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?STAND-ON\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?STAND\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?STAND\n\t.ENDT\n\nST?LISTEN::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LISTEN\n\t.ENDT\n\nST?SHOW::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE SHAVE\n\t.BYTE 0\n\t.BYTE V?SHOW\n\t.ENDT\n\nST?SAVE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SAVE\n\t.ENDT\n\nST?HELP::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?HELP\n\t.ENDT\n\nST?TELL::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?FOR\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SIR\n\t.BYTE 0\n\t.BYTE V?ASK-FOR\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SIR\n\t.BYTE 0\n\t.BYTE V?TELL\n\t.ENDT\n\nST?THROW::\t.TABLE\n\t.BYTE 7\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?THROW\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?THROW-OFF\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OFF\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?THROW-OFF\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE SOG+SIR\n\t.BYTE V?THROW\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE SOG+SIR\n\t.BYTE V?THROW\n\t.ENDT\n\nST?ZORK::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?ZORK\n\t.ENDT\n\nST?SHAKE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SHAKE-WITH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SHAKE\n\t.ENDT\n\nST?INVENTORY::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?INVENTORY\n\t.ENDT\n\nST?ATTACK::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE\n\t.BYTE V?ATTACK\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?ATTACK\n\t.ENDT\n\nST?RESTOR::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?RESTORE\n\t.ENDT\n\nST?ENTER::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?THROUGH\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?ENTER\n\t.ENDT\n\nST?SEARCH::\t.TABLE\n\t.BYTE 4\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SEARCH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?FOR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FIND\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SEARCH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SEARCH\n\t.ENDT\n\nST?WEAR::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE+STAKE\n\t.BYTE 0\n\t.BYTE V?WEAR\n\t.ENDT\n\nST?DISEMBARK::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?DISEMBARK\n\t.ENDT\n\nST?SWIM::\t.TABLE\n\t.BYTE 6\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SWIM-DIR\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SWIM-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SWIM\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SWIM-DIR\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SWIM-DIR\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SWIM\n\t.ENDT\n\nST?UNSCRIPT::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?UNSCRIPT\n\t.ENDT\n\nST?PUSH::\t.TABLE\n\t.BYTE 7\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?UNDER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUT-UNDER\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AGAINST\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OFF\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUSH\n\t.ENDT\n\nST?RUB::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE V?ZATTRACT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?RUB\n\t.ENDT\n\nST?SUPER::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SUPER-BRIEF\n\t.ENDT\n\nST?SIT::\t.TABLE\n\t.BYTE 9\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ACROSS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SPAN\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?NEAR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?UNDER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE+STAKE\n\t.BYTE 0\n\t.BYTE V?PUT-UNDER\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE+STAKE\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE VEHBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?BOARD\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SIT-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE VEHBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-ON\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SIT\n\t.ENDT\n\nST?RESTAR::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?RESTART\n\t.ENDT\n\nST?REACH::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?FOR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?REACH-FOR\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE CONTBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?REACH\n\t.ENDT\n\nST?SCORE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SCORE\n\t.ENDT\n\nST?SCRUB::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE\n\t.BYTE V?SCRUB\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SCRUB\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SCRUB\n\t.ENDT\n\nST?SALUTE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SALUTE\n\t.ENDT\n\nST?LOOK::\t.TABLE\n\t.BYTE 12\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?FOR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FIND\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OUT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR+SMANY\n\t.BYTE 0\n\t.BYTE V?LOOK-INSIDE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR+SMANY\n\t.BYTE 0\n\t.BYTE V?LOOK-INSIDE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?BEHIND\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK-BEHIND\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UNDER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK-UNDER\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK-INSIDE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR+SMANY\n\t.BYTE 0\n\t.BYTE V?EXAMINE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR+SMANY\n\t.BYTE 0\n\t.BYTE V?EXAMINE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AROUND\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK-CRETIN\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LOOK\n\t.ENDT\n\nST?EMPTY::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE\n\t.BYTE 0\n\t.BYTE V?EMPTY\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SHAVE\n\t.BYTE 0\n\t.BYTE V?EMPTY\n\t.ENDT\n\nST?ATTRACT::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE V?ZATTRACT\n\t.ENDT\n\nST?DROP::\t.TABLE\n\t.BYTE 4\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE\n\t.BYTE 0\n\t.BYTE V?PUT-ON\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE\n\t.BYTE 0\n\t.BYTE V?PUT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SMANY+SHAVE\n\t.BYTE 0\n\t.BYTE V?DROP\n\t.ENDT\n\nST?STEP::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?STEP-ON\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?STEP-ON\n\t.ENDT\n\nST?TIME::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?TIME\n\t.ENDT\n\nST?LEAVE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?DROP\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LEAVE\n\t.ENDT\n\nST?CURSE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?CURSE\n\t.ENDT\n\nST?SCRIPT::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SCRIPT\n\t.ENDT\n\nST?$VERIFY::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?$VERIFY\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?$VERIFY\n\t.ENDT\n\nST?SMELL::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SMELL\n\t.ENDT\n\nST?BRIEF::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?BRIEF\n\t.ENDT\n\nST?DIAGNOSE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?DIAGNOSE\n\t.ENDT\n\nST?GIVE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG\n\t.BYTE SMANY+SH+SHAVE\n\t.BYTE V?SGIVE\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE SMANY+SH+SHAVE\n\t.BYTE 0\n\t.BYTE V?GIVE\n\t.ENDT\n\nST?SLEEP::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SLEEP\n\t.ENDT\n\nST?SMILE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SMILE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SMILE\n\t.ENDT\n\nST?WAKE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?ALARM\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?ALARM\n\t.ENDT\n\nST?REMOVE::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE V?ZATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?FROM\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?TAKE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?REMOVE\n\t.ENDT\n\nST?ANSWER::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?REPLY\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?ANSWER\n\t.ENDT\n\nST?YELL::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SCOLD\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?YELL\n\t.ENDT\n\nST?LOCK::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE SH\n\t.BYTE V?LOCK\n\t.ENDT\n\nST?ACTIVATE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE LIGHTBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?LAMP-ON\n\t.ENDT\n\nST?KICK::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?KICK\n\t.ENDT\n\nST?POINT::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE SOG+SIR\n\t.BYTE V?POINT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?POINT\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?POINT\n\t.ENDT\n\nST?TURN::\t.TABLE\n\t.BYTE 5\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?SET\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?SET\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?OFF\n\t.BYTE 0\n\t.BYTE LIGHTBIT\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR\n\t.BYTE 0\n\t.BYTE V?LAMP-OFF\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE LIGHTBIT\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR\n\t.BYTE 0\n\t.BYTE V?LAMP-ON\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR\n\t.BYTE SOG+SIR+SH+SC+SHAVE\n\t.BYTE V?TURN\n\t.ENDT\n\nST?#RECORD::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?$RECORD\n\t.ENDT\n\nST?MAYBE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?MAYBE\n\t.ENDT\n\nST?CLOSE::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLOSE\n\t.ENDT\n\nST?STRIKE::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?ATTACK\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE ACTORBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE SH+SC+SOG+SIR+SHAVE\n\t.BYTE V?ATTACK\n\t.ENDT\n\nST?FIX::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FIX-IT\n\t.ENDT\n\nST?SLIDE::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?ACROSS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?SPAN\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SHAVE\n\t.BYTE 0\n\t.BYTE V?SLIDE\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?UNDER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?PUT-UNDER\n\t.ENDT\n\nST?WAVE::\t.TABLE\n\t.BYTE 4\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?NEAR\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?OVER\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?ATTRACT\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC\n\t.BYTE 0\n\t.BYTE V?WAVE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC\n\t.BYTE 0\n\t.BYTE V?WAVE\n\t.ENDT\n\nST?EXIT::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?EXIT\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?EXIT\n\t.ENDT\n\nST?AGAIN::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?AGAIN\n\t.ENDT\n\nST?EXAMINE::\t.TABLE\n\t.BYTE 3\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SIR+SOG+SMANY\n\t.BYTE 0\n\t.BYTE V?LOOK-INSIDE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SIR+SOG+SMANY\n\t.BYTE 0\n\t.BYTE V?LOOK-INSIDE\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH+SC+SOG+SIR+SMANY\n\t.BYTE 0\n\t.BYTE V?EXAMINE\n\t.ENDT\n\nST?EAT::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?FROM\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?EAT-FROM\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE FOODBIT\n\t.BYTE 0\n\t.BYTE STAKE\n\t.BYTE 0\n\t.BYTE V?EAT\n\t.ENDT\n\nST?FIRE::\t.TABLE\n\t.BYTE 4\t;NUMBER OF SYNTAXES\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH\n\t.BYTE 0\n\t.BYTE V?ZAP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?AT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?ZAP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?ZAP\n\t.BYTE 2\t;OBJECTS\n\t.BYTE 0\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE SH\n\t.BYTE V?SZAP\n\t.ENDT\n\nST?CLIMB::\t.TABLE\n\t.BYTE 8\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?IN\n\t.BYTE 0\n\t.BYTE CLIMBBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?BOARD\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE CLIMBBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-FOO\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?DOWN\n\t.BYTE 0\n\t.BYTE CLIMBBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-DOWN\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?WITH\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?THROUGH\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?TO\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?CLIMB-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?UP\n\t.BYTE 0\n\t.BYTE RMUNGBIT\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?CLIMB-UP\n\t.BYTE 1\t;OBJECTS\n\t.BYTE PR?ON\n\t.BYTE 0\n\t.BYTE CLIMBBIT\n\t.BYTE 0\n\t.BYTE SOG+SIR\n\t.BYTE 0\n\t.BYTE V?CLIMB-ON\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?GO-UP\n\t.ENDT\n\nST?FLUSH::\t.TABLE\n\t.BYTE 1\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?FLUSH\n\t.ENDT\n\nST?HELLO::\t.TABLE\n\t.BYTE 2\t;NUMBER OF SYNTAXES\n\t.BYTE 1\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?HELLO\n\t.BYTE 0\t;OBJECTS\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE 0\n\t.BYTE V?HELLO\n\t.ENDT\n\n\n; THE ACTION CALLING TABLE IS DEFINED HERE\n\nATBL::\t.TABLE\n\tV-BRIEF\n\tV-SUPER-BRIEF\n\tV-DIAGNOSE\n\tV-INVENTORY\n\tV-QUIT\n\tV-RESTART\n\tV-RESTORE\n\tV-SAVE\n\tV-SCORE\n\tV-SCRIPT\n\tV-UNSCRIPT\n\tV-$VERIFY\n\tV-VERSION\n\tV-VERBOSE\n\tV-$RANDOM\n\tV-$COMMAND\n\tV-$RECORD\n\tV-$UNRECORD\n\tV-AGAIN\n\tV-ANSWER\n\tV-REPLY\n\tV-PUT\n\tV-ATTACK\n\tV-BOARD\n\tV-GO-UP\n\tV-CLIMB-ON\n\tV-CLIMB-UP\n\tV-THROUGH\n\tV-CLIMB-DOWN\n\tV-CLIMB-FOO\n\tV-SIT\n\tV-SIT-DOWN\n\tV-PUT-UNDER\n\tV-ATTRACT\n\tV-SPAN\n\tV-STAND\n\tV-STAND-ON\n\tV-CLOSE\n\tV-CURSE\n\tV-DISEMBARK\n\tV-DROP\n\tV-PUT-ON\n\tV-EAT\n\tV-EAT-FROM\n\tV-ENTER\n\tV-EXIT\n\tV-EXAMINE\n\tV-LOOK-INSIDE\n\tV-FIND\n\tV-SZAP\n\tV-ZAP\n\tV-FOLLOW\n\tV-FLUSH\n\tV-FLY\n\tV-GIVE\n\tV-SGIVE\n\tV-HELLO\n\tV-HELP\n\tV-LEAP\n\tV-KICK\n\tV-KISS\n\tV-KNOCK\n\tV-LEAVE\n\tV-LISTEN\n\tV-LOCK\n\tV-LOOK\n\tV-LOOK-CRETIN\n\tV-LOOK-UNDER\n\tV-LOOK-BEHIND\n\tV-LOOK-DOWN\n\tV-SEARCH\n\tV-MOVE\n\tV-PUSH-UP\n\tV-PUSH-DOWN\n\tV-POINT\n\tV-PULL\n\tV-ZATTRACT\n\tV-MUNG\n\tV-OPEN\n\tV-OPEN-WITH\n\tV-TAKE\n\tV-PLAY\n\tV-PLAY-WITH\n\tV-PUSH\n\tV-WEAR\n\tV-SLIDE\n\tV-INSERT\n\tV-RAPE\n\tV-REACH\n\tV-REACH-FOR\n\tV-READ\n\tV-RUB\n\tV-SCRUB\n\tV-SLEEP\n\tV-SHAKE\n\tV-SHAKE-WITH\n\tV-SKIP\n\tV-SMELL\n\tV-STEP-ON\n\tV-SWIM\n\tV-SWIM-DIR\n\tV-SWIM-UP\n\tV-TAKE-OFF\n\tV-REMOVE\n\tV-TELL\n\tV-ASK-FOR\n\tV-SMILE\n\tV-SALUTE\n\tV-TALK\n\tV-SAY\n\tV-THROW\n\tV-THROW-OFF\n\tV-TURN\n\tV-LAMP-ON\n\tV-LAMP-OFF\n\tV-SET\n\tV-TYPE\n\tV-UNLOCK\n\tV-WAIT\n\tV-ALARM\n\tV-WALK\n\tV-WALK-AROUND\n\tV-WALK-TO\n\tV-WAVE\n\tV-YELL\n\tV-SCOLD\n\tV-ZORK\n\tV-YES\n\tV-NO\n\tV-MAYBE\n\tV-POUR\n\tV-EMPTY\n\tV-FIX-IT\n\tV-OIL\n\tV-SHOW\n\tV-TASTE\n\tV-ZESCAPE\n\tV-TIME\n\t.ENDT\n\n; THE PREACTION CALLING TABLE IS DEFINED HERE\n\nPATBL::\t.TABLE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\tPRE-PUT\n\t0\n\tPRE-BOARD\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\tPRE-PUT-UNDER\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\tPRE-PUT\n\t0\n\t0\n\t0\n\t0\n\tPRE-EXAMINE\n\t0\n\t0\n\tPRE-SZAP\n\tPRE-ZAP\n\t0\n\t0\n\t0\n\tPRE-GIVE\n\tPRE-SGIVE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\tPRE-MOVE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\tPRE-TAKE\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\tPRE-READ\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t0\n\t.ENDT\n\n\n; PREPOSITION TABLE IS DEFINED HERE\n\nPRTBL::\t.TABLE\n\t.WORD 18\n\tW?AGAINST\n\tPR?AGAINST\n\tW?FOR\n\tPR?FOR\n\tW?OUT\n\tPR?OUT\n\tW?BEHIND\n\tPR?BEHIND\n\tW?AROUND\n\tPR?AROUND\n\tW?OFF\n\tPR?OFF\n\tW?AT\n\tPR?AT\n\tW?FROM\n\tPR?FROM\n\tW?ACROSS\n\tPR?ACROSS\n\tW?NEAR\n\tPR?NEAR\n\tW?OVER\n\tPR?OVER\n\tW?UNDER\n\tPR?UNDER\n\tW?IN\n\tPR?IN\n\tW?DOWN\n\tPR?DOWN\n\tW?UP\n\tPR?UP\n\tW?ON\n\tPR?ON\n\tW?WITH\n\tPR?WITH\n\tW?TO\n\tPR?TO\n\t.ENDT\n\n\n; VOCABULARY TABLE IS HERE\n\nVOCAB::\t.TABLE\n\t.BYTE 3\n\t.BYTE 46\n\t.BYTE 44\n\t.BYTE 34\n\t.BYTE 7\n\t668\nW?$VERIFY::\t.ZWORD \"$verif\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?$VERIFY\n\t.BYTE 0\nW?PERIOD::\t.ZWORD \".\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?PERIOD\n\t.BYTE 0\nW?COMMA::\t.ZWORD \",\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?COMMA\n\t.BYTE 0\nW?#COMMAND::\t.ZWORD \"#comma\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?#COMMAND\n\t.BYTE 0\nW?#RANDOM::\t.ZWORD \"#rando\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?#RANDOM\n\t.BYTE 0\nW?#RECORD::\t.ZWORD \"#recor\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?#RECORD\n\t.BYTE 0\nW?#UNRECORD::\t.ZWORD \"#unrec\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?#UNRECORD\n\t.BYTE 0\nW?QUOTE::\t.ZWORD \"\"\"\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?QUOTE\n\t.BYTE 0\nW?A::\t.ZWORD \"a\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?A\n\t.BYTE 0\nW?ABOVE::\t.ZWORD \"above\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?OVER\n\t.BYTE 0\nW?ACCESS::\t.ZWORD \"access\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ACCESS\n\t.BYTE 0\nW?ACHILLES::\t.ZWORD \"achill\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?ACME::\t.ZWORD \"acme\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ACME\n\t.BYTE 0\nW?ACROSS::\t.ZWORD \"across\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?ACROSS\n\t.BYTE 0\nW?ACTIVATE::\t.ZWORD \"activa\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ACTIVATE\n\t.BYTE 0\nW?ADMIRA::\t.ZWORD \"admira\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?AFFIRMATIVE::\t.ZWORD \"affirm\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?YES\n\t.BYTE 0\nW?AFT::\t.ZWORD \"aft\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 27\n\t.BYTE A?SOUTH\nW?AGAIN::\t.ZWORD \"again\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?AGAIN\n\t.BYTE 0\nW?AGAINST::\t.ZWORD \"agains\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?AGAINST\n\t.BYTE 0\nW?AIM::\t.ZWORD \"aim\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?POINT\n\t.BYTE 0\nW?ALIEN::\t.ZWORD \"alien\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ALIEN\n\t.BYTE 0\nW?ALL::\t.ZWORD \"all\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?ALL\n\t.BYTE 0\nW?ALUMINUM::\t.ZWORD \"alumin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ALUMINUM\n\t.BYTE 0\nW?AMBASSADOR::\t.ZWORD \"ambass\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?AN::\t.ZWORD \"an\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?AN\n\t.BYTE 0\nW?AND::\t.ZWORD \"and\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?AND\n\t.BYTE 0\nW?ANSWER::\t.ZWORD \"answer\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ANSWER\n\t.BYTE 0\nW?ANT-LIKE::\t.ZWORD \"ant-li\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ANT-LIKE\n\t.BYTE 0\nW?APPLY::\t.ZWORD \"apply\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?APPLY\n\t.BYTE 0\nW?ARE::\t.ZWORD \"are\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?ARE\n\t.BYTE 0\nW?AROUND::\t.ZWORD \"around\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?AROUND\n\t.BYTE 0\nW?ASK::\t.ZWORD \"ask\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TELL\n\t.BYTE 0\nW?AT::\t.ZWORD \"at\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?AT\n\t.BYTE 0\nW?ATTACK::\t.ZWORD \"attack\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?ATTRACT::\t.ZWORD \"attrac\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTRACT\n\t.BYTE 0\nW?AWAKE::\t.ZWORD \"awake\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAKE\n\t.BYTE 0\nW?B::\t.ZWORD \"b\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?B\n\t.BYTE 0\nW?B-SERIES::\t.ZWORD \"b-seri\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?B-SERIES\n\t.BYTE 0\nW?BAR::\t.ZWORD \"bar\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BARE::\t.ZWORD \"bare\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BARE\n\t.BYTE 0\nW?BATHE::\t.ZWORD \"bathe\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SWIM\n\t.BYTE 0\nW?BATTERY::\t.ZWORD \"batter\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BEANS::\t.ZWORD \"beans\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BED::\t.ZWORD \"bed\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BEDISTOR::\t.ZWORD \"bedist\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BEEF::\t.ZWORD \"beef\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BEEF\n\t.BYTE 0\nW?BEHIND::\t.ZWORD \"behind\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?BEHIND\n\t.BYTE 0\nW?BEIGE::\t.ZWORD \"beige\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BEIGE\n\t.BYTE 0\nW?BENCH::\t.ZWORD \"bench\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BENCHE::\t.ZWORD \"benche\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BIO-LOCK::\t.ZWORD \"bio-lo\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BIO-LOCK\n\t.BYTE 0\nW?BIPED::\t.ZWORD \"biped\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BLACK::\t.ZWORD \"black\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BLACK\n\t.BYTE 0\nW?BLAST::\t.ZWORD \"blast\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIRE\n\t.BYTE 0\nW?BLATHER::\t.ZWORD \"blathe\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BLINKI::\t.ZWORD \"blinki\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BLINKI\n\t.BYTE 0\nW?BLOB::\t.ZWORD \"blob\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BLUE::\t.ZWORD \"blue\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BLUE\n\t.BYTE 0\nW?BOARD::\t.ZWORD \"board\"\n\t.BYTE PS?OBJECT+PS?VERB+P1?VERB\n\t.BYTE ACT?BOARD\n\t.BYTE 0\nW?BOARDS::\t.ZWORD \"boards\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BOCCI::\t.ZWORD \"bocci\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BOOTH::\t.ZWORD \"booth\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BOTH::\t.ZWORD \"both\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?ALL\n\t.BYTE 0\nW?BOTTLE::\t.ZWORD \"bottle\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BOULDER::\t.ZWORD \"boulde\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BOX::\t.ZWORD \"box\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BRANDISH::\t.ZWORD \"brandi\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAVE\n\t.BYTE 0\nW?BREAK::\t.ZWORD \"break\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DESTROY\n\t.BYTE 0\nW?BREAST::\t.ZWORD \"breast\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BREAST\n\t.BYTE 0\nW?BRIEF::\t.ZWORD \"brief\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?BRIEF\n\t.BYTE 0\nW?BRIGHT::\t.ZWORD \"bright\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BRIGHT\n\t.BYTE 0\nW?BROCHURE::\t.ZWORD \"brochu\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BROKEN::\t.ZWORD \"broken\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BROKEN\n\t.BYTE 0\nW?BROWN::\t.ZWORD \"brown\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BROWN\n\t.BYTE 0\nW?BRUSH::\t.ZWORD \"brush\"\n\t.BYTE PS?OBJECT+PS?VERB+PS?ADJECTIVE+P1?VERB\n\t.BYTE ACT?SCRUB\n\t.BYTE A?SCRUB\nW?BUG::\t.ZWORD \"bug\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BULKHEAD::\t.ZWORD \"bulkhe\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?BUNK::\t.ZWORD \"bunk\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?BUNK\n\t.BYTE 0\nW?BURN::\t.ZWORD \"burn\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIRE\n\t.BYTE 0\nW?BUT::\t.ZWORD \"but\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?BUT\n\t.BYTE 0\nW?BUTTON::\t.ZWORD \"button\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CABINETS::\t.ZWORD \"cabine\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CABLES::\t.ZWORD \"cables\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CAN::\t.ZWORD \"can\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CANTEEN::\t.ZWORD \"cantee\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CAR::\t.ZWORD \"car\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CARD::\t.ZWORD \"card\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CARDBOARD::\t.ZWORD \"cardbo\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CARDBOARD\n\t.BYTE 0\nW?CARDS::\t.ZWORD \"cards\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CARPET::\t.ZWORD \"carpet\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CARRY::\t.ZWORD \"carry\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TAKE\n\t.BYTE 0\nW?CARTON::\t.ZWORD \"carton\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CASTLE::\t.ZWORD \"castle\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CATWALK::\t.ZWORD \"catwal\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CCW::\t.ZWORD \"ccw\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 25\n\t.BYTE A?WEST\nW?CELERY::\t.ZWORD \"celery\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CENTIMETER::\t.ZWORD \"centim\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CENTIMETER\n\t.BYTE 0\nW?CHASE::\t.ZWORD \"chase\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FOLLOW\n\t.BYTE 0\nW?CHEMICAL::\t.ZWORD \"chemic\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CHEMICAL\n\t.BYTE 0\nW?CHERRY::\t.ZWORD \"cherry\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CHERRY\n\t.BYTE 0\nW?CHESS::\t.ZWORD \"chess\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CHRONOMETER::\t.ZWORD \"chrono\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CHUCK::\t.ZWORD \"chuck\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?THROW\n\t.BYTE 0\nW?CIRCUL::\t.ZWORD \"circul\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CIRCUL\n\t.BYTE 0\nW?CLASS::\t.ZWORD \"class\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CLASS\n\t.BYTE 0\nW?CLEAN::\t.ZWORD \"clean\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE ACT?SCRUB\nW?CLEFT::\t.ZWORD \"cleft\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CLIFF::\t.ZWORD \"cliff\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CLIMB::\t.ZWORD \"climb\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CLIMB\n\t.BYTE 0\nW?CLOSE::\t.ZWORD \"close\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CLOSE\n\t.BYTE 0\nW?COLLAPSE::\t.ZWORD \"collap\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CLOSE\n\t.BYTE 0\nW?COLORE::\t.ZWORD \"colore\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?COLORE\n\t.BYTE 0\nW?COMBINATION::\t.ZWORD \"combin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?COMBINATION\n\t.BYTE 0\nW?COMMUNICATIONS::\t.ZWORD \"commun\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?COMMUNICATIONS\n\t.BYTE 0\nW?COMPAN::\t.ZWORD \"compan\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?COMPAR::\t.ZWORD \"compar\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?COMPLEX::\t.ZWORD \"comple\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?COMPLEX\n\t.BYTE 0\nW?COMPUTER::\t.ZWORD \"comput\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?COMPUTER\n\t.BYTE 0\nW?CONFERENCE::\t.ZWORD \"confer\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CONFERENCE\n\t.BYTE 0\nW?CONSOLE::\t.ZWORD \"consol\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CONTRO::\t.ZWORD \"contro\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CONTRO\n\t.BYTE 0\nW?CRACK::\t.ZWORD \"crack\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CRACKED::\t.ZWORD \"cracke\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CRACKED\n\t.BYTE 0\nW?CREATURE::\t.ZWORD \"creatu\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CREVICE::\t.ZWORD \"crevic\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CRYO-ELEVATOR::\t.ZWORD \"cryo-e\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CRYO-ELEVATOR\n\t.BYTE 0\nW?CUBBYHOLE::\t.ZWORD \"cubbyh\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CUBE::\t.ZWORD \"cube\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?CURSE::\t.ZWORD \"curse\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?CURVED::\t.ZWORD \"curved\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?CURVED\n\t.BYTE 0\nW?CW::\t.ZWORD \"cw\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 29\n\t.BYTE A?EAST\nW?D::\t.ZWORD \"d\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?DOWN\n\t.BYTE 22\nW?DAMAGE::\t.ZWORD \"damage\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DESTROY\n\t.BYTE 0\nW?DAMN::\t.ZWORD \"damn\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?DARK::\t.ZWORD \"dark\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DARK\n\t.BYTE 0\nW?DARKNESS::\t.ZWORD \"darkne\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DARKNESS\n\t.BYTE 0\nW?DAZZLI::\t.ZWORD \"dazzli\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DAZZLI\n\t.BYTE 0\nW?DEAD::\t.ZWORD \"dead\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DEAD\n\t.BYTE 0\nW?DECK::\t.ZWORD \"deck\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DEEP::\t.ZWORD \"deep\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DEEP\n\t.BYTE 0\nW?DEFORMED::\t.ZWORD \"deform\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DEFORMED\n\t.BYTE 0\nW?DEPRES::\t.ZWORD \"depres\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DESCRIBE::\t.ZWORD \"descri\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EXAMINE\n\t.BYTE 0\nW?DESK::\t.ZWORD \"desk\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DESTROY::\t.ZWORD \"destro\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DESTROY\n\t.BYTE 0\nW?DEVICE::\t.ZWORD \"device\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DIAGNOSE::\t.ZWORD \"diagno\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DIAGNOSE\n\t.BYTE 0\nW?DIAGRAM::\t.ZWORD \"diagra\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DIAL::\t.ZWORD \"dial\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DIALS::\t.ZWORD \"dials\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DIM::\t.ZWORD \"dim\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DIM\n\t.BYTE 0\nW?DIM-::\t.ZWORD \"dim-\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DIM-\n\t.BYTE 0\nW?DISEMBARK::\t.ZWORD \"disemb\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DISEMBARK\n\t.BYTE 0\nW?DISPATCH::\t.ZWORD \"dispat\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?DISPEN::\t.ZWORD \"dispen\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DISPEN\n\t.BYTE 0\nW?DONATE::\t.ZWORD \"donate\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?GIVE\n\t.BYTE 0\nW?DOOR::\t.ZWORD \"door\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DOORWA::\t.ZWORD \"doorwa\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DOWN::\t.ZWORD \"down\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?DOWN\n\t.BYTE 22\nW?DRAWER::\t.ZWORD \"drawer\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?DRINK::\t.ZWORD \"drink\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EAT\n\t.BYTE 0\nW?DROP::\t.ZWORD \"drop\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DROP\n\t.BYTE 0\nW?DUNNO::\t.ZWORD \"dunno\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?MAYBE\n\t.BYTE 0\nW?DUTY::\t.ZWORD \"duty\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?DUTY\n\t.BYTE 0\nW?E::\t.ZWORD \"e\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 29\n\t.BYTE A?EAST\nW?EARTH::\t.ZWORD \"earth\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?EAST::\t.ZWORD \"east\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 29\n\t.BYTE A?EAST\nW?EAT::\t.ZWORD \"eat\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EAT\n\t.BYTE 0\nW?EDGE::\t.ZWORD \"edge\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?EGGS::\t.ZWORD \"eggs\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?ELEVATOR::\t.ZWORD \"elevat\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ELEVATOR\n\t.BYTE 0\nW?EMERGENCY::\t.ZWORD \"emerge\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?EMERGENCY\n\t.BYTE 0\nW?EMPTY::\t.ZWORD \"empty\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EMPTY\n\t.BYTE 0\nW?ENDLESS::\t.ZWORD \"endles\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ENDLESS\n\t.BYTE 0\nW?ENSIGN::\t.ZWORD \"ensign\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ENSIGN\n\t.BYTE 0\nW?ENTER::\t.ZWORD \"enter\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ENTER\n\t.BYTE 0\nW?ENUNCI::\t.ZWORD \"enunci\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?EQUALS::\t.ZWORD \"equals\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?EQUALS\n\t.BYTE 0\nW?EQUIPM::\t.ZWORD \"equipm\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?ESCALATOR::\t.ZWORD \"escala\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?ESCAPE::\t.ZWORD \"escape\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ESCAPE\n\t.BYTE ACT?ESCAPE\nW?EXAMINE::\t.ZWORD \"examin\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EXAMINE\n\t.BYTE 0\nW?EXCEPT::\t.ZWORD \"except\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?EXCEPT\n\t.BYTE 0\nW?EXIT::\t.ZWORD \"exit\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EXIT\n\t.BYTE 0\nW?EXPERIMENTAL::\t.ZWORD \"experi\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?EXPERIMENTAL\n\t.BYTE 0\nW?EXTEND::\t.ZWORD \"extend\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?OPEN\n\t.BYTE 0\nW?F::\t.ZWORD \"f\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 31\n\t.BYTE A?NORTH\nW?FANGED::\t.ZWORD \"fanged\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FANGED\n\t.BYTE 0\nW?FEED::\t.ZWORD \"feed\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?GIVE\n\t.BYTE 0\nW?FEEL::\t.ZWORD \"feel\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RUB\n\t.BYTE 0\nW?FENCE::\t.ZWORD \"fence\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FIGHT::\t.ZWORD \"fight\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?FILES::\t.ZWORD \"files\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FIND::\t.ZWORD \"find\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIND\n\t.BYTE 0\nW?FIRE::\t.ZWORD \"fire\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIRE\n\t.BYTE 0\nW?FIRST::\t.ZWORD \"first\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FIRST\n\t.BYTE 0\nW?FIX::\t.ZWORD \"fix\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIX\n\t.BYTE 0\nW?FIXTURES::\t.ZWORD \"fixtur\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FLASHI::\t.ZWORD \"flashi\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FLASHI\n\t.BYTE 0\nW?FLASK::\t.ZWORD \"flask\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FLOOR::\t.ZWORD \"floor\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FLOYD::\t.ZWORD \"floyd\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FLUID::\t.ZWORD \"fluid\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FLUSH::\t.ZWORD \"flush\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FLUSH\n\t.BYTE 0\nW?FLY::\t.ZWORD \"fly\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FLY\n\t.BYTE 0\nW?FOLD::\t.ZWORD \"fold\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CLOSE\n\t.BYTE 0\nW?FOLLOW::\t.ZWORD \"follow\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FOLLOW\n\t.BYTE 0\nW?FOOD::\t.ZWORD \"food\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FOR::\t.ZWORD \"for\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?FOR\n\t.BYTE 0\nW?FORE::\t.ZWORD \"fore\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 31\n\t.BYTE A?NORTH\nW?FOREWARD::\t.ZWORD \"forewa\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 31\n\t.BYTE A?NORTH\nW?FORMER::\t.ZWORD \"former\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FORMER\n\t.BYTE 0\nW?FORWARD::\t.ZWORD \"forwar\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 31\n\t.BYTE A?NORTH\nW?FOURTH::\t.ZWORD \"fourth\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FOURTH\n\t.BYTE 0\nW?FRESH::\t.ZWORD \"fresh\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FRESH\n\t.BYTE 0\nW?FRIED::\t.ZWORD \"fried\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FRIED\n\t.BYTE 0\nW?FROM::\t.ZWORD \"from\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?FROM\n\t.BYTE 0\nW?FROMITZ::\t.ZWORD \"fromit\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FROMITZ\n\t.BYTE 0\nW?FUCK::\t.ZWORD \"fuck\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?FUNGICIDE::\t.ZWORD \"fungic\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FUNGICIDE\n\t.BYTE 0\nW?FUNNEL::\t.ZWORD \"funnel\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FUNNEL\n\t.BYTE 0\nW?FUSE::\t.ZWORD \"fuse\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?FUSED::\t.ZWORD \"fused\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?FUSED\n\t.BYTE 0\nW?G::\t.ZWORD \"g\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?AGAIN\n\t.BYTE 0\nW?GAMES::\t.ZWORD \"games\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GANGWAY::\t.ZWORD \"gangwa\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GAPING::\t.ZWORD \"gaping\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GAPING\n\t.BYTE 0\nW?GAS::\t.ZWORD \"gas\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GAS\n\t.BYTE 0\nW?GAUGES::\t.ZWORD \"gauges\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GAZE::\t.ZWORD \"gaze\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?LOOK\n\t.BYTE 0\nW?GESTURE::\t.ZWORD \"gestur\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?POINT\n\t.BYTE 0\nW?GET::\t.ZWORD \"get\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TAKE\n\t.BYTE 0\nW?GIANT::\t.ZWORD \"giant\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GIANT\n\t.BYTE 0\nW?GIVE::\t.ZWORD \"give\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?GIVE\n\t.BYTE 0\nW?GLASS::\t.ZWORD \"glass\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GLASS\n\t.BYTE 0\nW?GLOWIN::\t.ZWORD \"glowin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GLOWIN\n\t.BYTE 0\nW?GO::\t.ZWORD \"go\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WALK\n\t.BYTE 0\nW?GOO::\t.ZWORD \"goo\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GOOD::\t.ZWORD \"good\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GOOD\n\t.BYTE 0\nW?GRAFFITI::\t.ZWORD \"graffi\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GRAY::\t.ZWORD \"gray\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GRAY\n\t.BYTE 0\nW?GREEN::\t.ZWORD \"green\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GREEN\n\t.BYTE 0\nW?GREY::\t.ZWORD \"grey\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GREY\n\t.BYTE 0\nW?GRIN::\t.ZWORD \"grin\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SMILE\n\t.BYTE 0\nW?GROUND::\t.ZWORD \"ground\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GROWLING::\t.ZWORD \"growli\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?GROWLING\n\t.BYTE 0\nW?GRUE::\t.ZWORD \"grue\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?GULF::\t.ZWORD \"gulf\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HAIRY::\t.ZWORD \"hairy\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?HAIRY\n\t.BYTE 0\nW?HAND::\t.ZWORD \"hand\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?GIVE\n\t.BYTE 0\nW?HANDS::\t.ZWORD \"hands\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HEAVY::\t.ZWORD \"heavy\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?HEAVY\n\t.BYTE 0\nW?HELICOPTER::\t.ZWORD \"helico\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HELLO::\t.ZWORD \"hello\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?HELLO\n\t.BYTE 0\nW?HELP::\t.ZWORD \"help\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?HELP\n\t.BYTE 0\nW?HI::\t.ZWORD \"hi\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?HELLO\n\t.BYTE 0\nW?HIDER-::\t.ZWORD \"hider-\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HIGH::\t.ZWORD \"high\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?HIGH\n\t.BYTE 0\nW?HIGH-RANKING::\t.ZWORD \"high-r\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?HIGH-RANKING\n\t.BYTE 0\nW?HIM::\t.ZWORD \"him\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HINT::\t.ZWORD \"hint\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?HELP\n\t.BYTE 0\nW?HINTS::\t.ZWORD \"hints\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?HELP\n\t.BYTE 0\nW?HIT::\t.ZWORD \"hit\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?HOLD::\t.ZWORD \"hold\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TAKE\n\t.BYTE 0\nW?HOLE::\t.ZWORD \"hole\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HOP::\t.ZWORD \"hop\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SKIP\n\t.BYTE 0\nW?HORSESHOE::\t.ZWORD \"horses\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?HORSESHOE\n\t.BYTE 0\nW?HUCKA-::\t.ZWORD \"hucka-\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?HUNGRY::\t.ZWORD \"hungry\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?HUNGRY\n\t.BYTE 0\nW?HURL::\t.ZWORD \"hurl\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?THROW\n\t.BYTE 0\nW?HURT::\t.ZWORD \"hurt\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?I::\t.ZWORD \"i\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?INVENTORY\n\t.BYTE 0\nW?ID::\t.ZWORD \"id\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ID\n\t.BYTE 0\nW?IDENTIFICATION::\t.ZWORD \"identi\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?IDENTIFICATION\n\t.BYTE 0\nW?IMPORTANT::\t.ZWORD \"import\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?IMPORTANT\n\t.BYTE 0\nW?IMPURITY::\t.ZWORD \"impuri\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?IN::\t.ZWORD \"in\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?IN\n\t.BYTE 21\nW?INJURE::\t.ZWORD \"injure\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?INSERT::\t.ZWORD \"insert\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PUT\n\t.BYTE 0\nW?INSIDE::\t.ZWORD \"inside\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?IN\n\t.BYTE 21\nW?INTNUM::\t.ZWORD \"intnum\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?INTO::\t.ZWORD \"into\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?IN\n\t.BYTE 21\nW?INVENTORY::\t.ZWORD \"invent\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?INVENTORY\n\t.BYTE 0\nW?IRON::\t.ZWORD \"iron\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?IRON\n\t.BYTE 0\nW?IS::\t.ZWORD \"is\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?IS\n\t.BYTE 0\nW?IT::\t.ZWORD \"it\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?JAGGED::\t.ZWORD \"jagged\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?JAGGED\n\t.BYTE 0\nW?JUMP::\t.ZWORD \"jump\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?JUMP\n\t.BYTE 0\nW?K::\t.ZWORD \"k\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?K\n\t.BYTE 0\nW?K-SERIES::\t.ZWORD \"k-seri\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?K-SERIES\n\t.BYTE 0\nW?KEY::\t.ZWORD \"key\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?KEYBOARD::\t.ZWORD \"keyboa\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?KICK::\t.ZWORD \"kick\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?KICK\n\t.BYTE 0\nW?KILL::\t.ZWORD \"kill\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?KISS::\t.ZWORD \"kiss\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?KISS\n\t.BYTE 0\nW?KIT::\t.ZWORD \"kit\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?KITCHEN::\t.ZWORD \"kitche\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?KITCHEN\n\t.BYTE 0\nW?KNOCK::\t.ZWORD \"knock\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?KNOCK\n\t.BYTE 0\nW?KRIP::\t.ZWORD \"krip\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?L::\t.ZWORD \"l\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?LOOK\n\t.BYTE 0\nW?LAB::\t.ZWORD \"lab\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LAB\n\t.BYTE 0\nW?LABEL::\t.ZWORD \"label\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LADDER::\t.ZWORD \"ladder\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LAMP::\t.ZWORD \"lamp\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LANTERN::\t.ZWORD \"lanter\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LARGE::\t.ZWORD \"large\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LARGE\n\t.BYTE 0\nW?LASER::\t.ZWORD \"laser\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LASER\n\t.BYTE 0\nW?LAY::\t.ZWORD \"lay\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SIT\n\t.BYTE 0\nW?LAZARUS::\t.ZWORD \"lazaru\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LEAFLET::\t.ZWORD \"leafle\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LEAP::\t.ZWORD \"leap\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?JUMP\n\t.BYTE 0\nW?LEAVE::\t.ZWORD \"leave\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?LEAVE\n\t.BYTE 0\nW?LEFT::\t.ZWORD \"left\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LEFT\n\t.BYTE 0\nW?LENGTHEN::\t.ZWORD \"length\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?OPEN\n\t.BYTE 0\nW?LEVER::\t.ZWORD \"lever\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LID::\t.ZWORD \"lid\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LIE::\t.ZWORD \"lie\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SIT\n\t.BYTE 0\nW?LIGHT::\t.ZWORD \"light\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LIGHT\n\t.BYTE 0\nW?LIGHTS::\t.ZWORD \"lights\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LIMA::\t.ZWORD \"lima\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LIMA\n\t.BYTE 0\nW?LIQUID::\t.ZWORD \"liquid\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LISTEN::\t.ZWORD \"listen\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?LISTEN\n\t.BYTE 0\nW?LOCK::\t.ZWORD \"lock\"\n\t.BYTE PS?OBJECT+PS?VERB+P1?VERB\n\t.BYTE ACT?LOCK\n\t.BYTE 0\nW?LOGO::\t.ZWORD \"logo\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?LONG::\t.ZWORD \"long\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LONG\n\t.BYTE 0\nW?LOOK::\t.ZWORD \"look\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?LOOK\n\t.BYTE 0\nW?LOWER::\t.ZWORD \"lower\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LOWER\n\t.BYTE 0\nW?LUBRICATE::\t.ZWORD \"lubric\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OIL\n\t.BYTE ACT?OIL\nW?LURKING::\t.ZWORD \"lurkin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?LURKING\n\t.BYTE 0\nW?MACHIN::\t.ZWORD \"machin\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MAGNET::\t.ZWORD \"magnet\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MAN-EATING::\t.ZWORD \"man-ea\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MAN-EATING\n\t.BYTE 0\nW?MAN-SIZED::\t.ZWORD \"man-si\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MAN-SIZED\n\t.BYTE 0\nW?MANGLE::\t.ZWORD \"mangle\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MANGLE\n\t.BYTE 0\nW?MAPS::\t.ZWORD \"maps\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MASK::\t.ZWORD \"mask\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MASS::\t.ZWORD \"mass\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MAYBE::\t.ZWORD \"maybe\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?MAYBE\n\t.BYTE 0\nW?ME::\t.ZWORD \"me\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MEDICAL::\t.ZWORD \"medica\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MEDICAL\n\t.BYTE 0\nW?MEDICINE::\t.ZWORD \"medici\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MEDICINE\n\t.BYTE 0\nW?MEGA::\t.ZWORD \"mega\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MEGA\n\t.BYTE 0\nW?MEGAFUSE::\t.ZWORD \"megafu\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MEGAKRIP::\t.ZWORD \"megakr\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?MEMO::\t.ZWORD \"memo\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MESSAGE::\t.ZWORD \"messag\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MESSY::\t.ZWORD \"messy\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MESSY\n\t.BYTE 0\nW?METAL::\t.ZWORD \"metal\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?METAL\n\t.BYTE 0\nW?MICRO::\t.ZWORD \"micro\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MICRO\n\t.BYTE 0\nW?MICROBE::\t.ZWORD \"microb\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MICROF::\t.ZWORD \"microf\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MICROF\n\t.BYTE 0\nW?MILKY::\t.ZWORD \"milky\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MILKY\n\t.BYTE 0\nW?MINI::\t.ZWORD \"mini\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MINI\n\t.BYTE 0\nW?MINIAT::\t.ZWORD \"miniat\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MINIAT\n\t.BYTE 0\nW?MOBILE::\t.ZWORD \"mobile\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MOBILE\n\t.BYTE 0\nW?MOLEST::\t.ZWORD \"molest\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RAPE\n\t.BYTE 0\nW?MONITORS::\t.ZWORD \"monito\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MONSTER::\t.ZWORD \"monste\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MOP::\t.ZWORD \"mop\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE ACT?SCRUB\nW?MOVE::\t.ZWORD \"move\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?MOVE\n\t.BYTE 0\nW?MULTI::\t.ZWORD \"multi\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MULTI\n\t.BYTE 0\nW?MULTIP::\t.ZWORD \"multip\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?MULTIP\n\t.BYTE 0\nW?MURAL::\t.ZWORD \"mural\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MURDER::\t.ZWORD \"murder\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?MUTANT::\t.ZWORD \"mutant\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?MYSELF::\t.ZWORD \"myself\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?N::\t.ZWORD \"n\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 31\n\t.BYTE A?NORTH\nW?NARROW::\t.ZWORD \"narrow\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?NARROW\n\t.BYTE 0\nW?NE::\t.ZWORD \"ne\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 30\n\t.BYTE A?NE\nW?NEAR::\t.ZWORD \"near\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?NEAR\n\t.BYTE 0\nW?NEGATIVE::\t.ZWORD \"negati\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?NO\n\t.BYTE 0\nW?NET::\t.ZWORD \"net\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?NEW::\t.ZWORD \"new\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?NEW\n\t.BYTE 0\nW?NICHE::\t.ZWORD \"niche\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?NINETY::\t.ZWORD \"ninety\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?NINETY\n\t.BYTE 0\nW?NO::\t.ZWORD \"no\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?NO\n\t.BYTE 0\nW?NORTH::\t.ZWORD \"north\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 31\n\t.BYTE A?NORTH\nW?NOSED::\t.ZWORD \"nosed\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?NOSED\n\t.BYTE 0\nW?NW::\t.ZWORD \"nw\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 24\n\t.BYTE A?NW\nW?OBJECT::\t.ZWORD \"object\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?OCEAN::\t.ZWORD \"ocean\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?OCTAGONAL::\t.ZWORD \"octago\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OCTAGONAL\n\t.BYTE 0\nW?OF::\t.ZWORD \"of\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?OF\n\t.BYTE 0\nW?OFF::\t.ZWORD \"off\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?OFF\n\t.BYTE 0\nW?OFFER::\t.ZWORD \"offer\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?GIVE\n\t.BYTE 0\nW?OFFICE::\t.ZWORD \"office\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OFFICE\n\t.BYTE 0\nW?OHM::\t.ZWORD \"ohm\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OHM\n\t.BYTE 0\nW?OIL::\t.ZWORD \"oil\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OIL\n\t.BYTE ACT?OIL\nW?OLD::\t.ZWORD \"old\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OLD\n\t.BYTE 0\nW?ON::\t.ZWORD \"on\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?ON\n\t.BYTE 0\nW?ONE::\t.ZWORD \"one\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?ONE\n\t.BYTE 0\nW?ONTO::\t.ZWORD \"onto\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?ON\n\t.BYTE 0\nW?OPEN::\t.ZWORD \"open\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?OPEN\n\t.BYTE 0\nW?OPENER::\t.ZWORD \"opener\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?OPENER\n\t.BYTE 0\nW?OPENIN::\t.ZWORD \"openin\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?ORANGE::\t.ZWORD \"orange\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ORANGE\n\t.BYTE 0\nW?OUR::\t.ZWORD \"our\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?OUR\n\t.BYTE 0\nW?OUT::\t.ZWORD \"out\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?OUT\n\t.BYTE 20\nW?OUTPUT::\t.ZWORD \"output\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?OVER::\t.ZWORD \"over\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?OVER\n\t.BYTE 0\nW?P::\t.ZWORD \"p\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 25\n\t.BYTE A?WEST\nW?PAD::\t.ZWORD \"pad\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PADLOCK::\t.ZWORD \"padloc\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PAIR::\t.ZWORD \"pair\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PALE::\t.ZWORD \"pale\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PALE\n\t.BYTE 0\nW?PAMPHLET::\t.ZWORD \"pamphl\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PANEL::\t.ZWORD \"panel\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PAPER::\t.ZWORD \"paper\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PART::\t.ZWORD \"part\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PARTITION::\t.ZWORD \"partit\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PAT::\t.ZWORD \"pat\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RUB\n\t.BYTE 0\nW?PATROL::\t.ZWORD \"patrol\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PATROL\n\t.BYTE 0\nW?PET::\t.ZWORD \"pet\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RUB\n\t.BYTE 0\nW?PICK::\t.ZWORD \"pick\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PICK\n\t.BYTE 0\nW?PIE::\t.ZWORD \"pie\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PIECE::\t.ZWORD \"piece\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PIECE\n\t.BYTE 0\nW?PILE::\t.ZWORD \"pile\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PLACE::\t.ZWORD \"place\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PUT\n\t.BYTE 0\nW?PLANT::\t.ZWORD \"plant\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PLAQUE::\t.ZWORD \"plaque\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PLASTIC::\t.ZWORD \"plasti\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PLASTIC\n\t.BYTE 0\nW?PLATE::\t.ZWORD \"plate\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PLATES::\t.ZWORD \"plates\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PLAY::\t.ZWORD \"play\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PLAY\n\t.BYTE 0\nW?PLAYBA::\t.ZWORD \"playba\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PLAYBA\n\t.BYTE 0\nW?PLIERS::\t.ZWORD \"pliers\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?POCKET::\t.ZWORD \"pocket\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?POD::\t.ZWORD \"pod\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?POD\n\t.BYTE 0\nW?POINT::\t.ZWORD \"point\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?POINT\n\t.BYTE 0\nW?POLISH::\t.ZWORD \"polish\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE ACT?SCRUB\nW?PORT::\t.ZWORD \"port\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+PS?DIRECTION+P1?ADJECTIVE\n\t.BYTE A?WEST\n\t.BYTE 25\nW?PORTABLE::\t.ZWORD \"portab\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PORTABLE\n\t.BYTE 0\nW?PORTAL::\t.ZWORD \"portal\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?POSSIBLY::\t.ZWORD \"possib\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?MAYBE\n\t.BYTE 0\nW?POUR::\t.ZWORD \"pour\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?POUR\n\t.BYTE 0\nW?POWERFUL::\t.ZWORD \"powerf\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?POWERFUL\n\t.BYTE 0\nW?PRECIPICE::\t.ZWORD \"precip\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PRESS::\t.ZWORD \"press\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PUSH\n\t.BYTE 0\nW?PRIMARY::\t.ZWORD \"primar\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PRIMARY\n\t.BYTE 0\nW?PRINTOUT::\t.ZWORD \"printo\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PROCEED::\t.ZWORD \"procee\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WALK\n\t.BYTE 0\nW?PROTEIN-RICH::\t.ZWORD \"protei\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PROTEIN-RICH\n\t.BYTE 0\nW?PROVISIONS::\t.ZWORD \"provis\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?PULL::\t.ZWORD \"pull\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PULL\n\t.BYTE 0\nW?PURPOS::\t.ZWORD \"purpos\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?PURPOS\n\t.BYTE 0\nW?PURSUE::\t.ZWORD \"pursue\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FOLLOW\n\t.BYTE 0\nW?PUSH::\t.ZWORD \"push\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PUSH\n\t.BYTE 0\nW?PUT::\t.ZWORD \"put\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PUT\n\t.BYTE 0\nW?Q::\t.ZWORD \"q\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?QUIT\n\t.BYTE 0\nW?QUANTITY::\t.ZWORD \"quanti\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?QUANTITY\n\t.BYTE 0\nW?QUIT::\t.ZWORD \"quit\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?QUIT\n\t.BYTE 0\nW?RACK::\t.ZWORD \"rack\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?RADIATION::\t.ZWORD \"radiat\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?RADIATION\n\t.BYTE 0\nW?RANKING::\t.ZWORD \"rankin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?RANKING\n\t.BYTE 0\nW?RAP::\t.ZWORD \"rap\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?KNOCK\n\t.BYTE 0\nW?RAPE::\t.ZWORD \"rape\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RAPE\n\t.BYTE 0\nW?RAT-ANT::\t.ZWORD \"rat-an\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?RAT-LIKE::\t.ZWORD \"rat-li\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?RAT-LIKE\n\t.BYTE 0\nW?REACH::\t.ZWORD \"reach\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?REACH\n\t.BYTE 0\nW?REACTOR::\t.ZWORD \"reacto\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?REACTOR\n\t.BYTE 0\nW?READ::\t.ZWORD \"read\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?READ\n\t.BYTE 0\nW?READER::\t.ZWORD \"reader\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?RECEIVE::\t.ZWORD \"receiv\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?RECEIVE\n\t.BYTE 0\nW?RECLINE::\t.ZWORD \"reclin\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SIT\n\t.BYTE 0\nW?RED::\t.ZWORD \"red\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?RED\n\t.BYTE 0\nW?RELAY::\t.ZWORD \"relay\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?RELEASE::\t.ZWORD \"releas\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DROP\n\t.BYTE 0\nW?REMOVE::\t.ZWORD \"remove\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?REMOVE\n\t.BYTE 0\nW?REPAIR::\t.ZWORD \"repair\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?REPAIR\n\t.BYTE ACT?FIX\nW?REPLY::\t.ZWORD \"reply\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ANSWER\n\t.BYTE 0\nW?RESTAR::\t.ZWORD \"restar\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RESTAR\n\t.BYTE 0\nW?RESTOR::\t.ZWORD \"restor\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RESTOR\n\t.BYTE 0\nW?RIFT::\t.ZWORD \"rift\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?RIGHT::\t.ZWORD \"right\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?RIGHT\n\t.BYTE 0\nW?ROBOT::\t.ZWORD \"robot\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?ROUND::\t.ZWORD \"round\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?ROUND\n\t.BYTE 0\nW?RUB::\t.ZWORD \"rub\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RUB\n\t.BYTE 0\nW?RUBBLE::\t.ZWORD \"rubble\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?RUMMAGE::\t.ZWORD \"rummag\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SEARCH\n\t.BYTE 0\nW?RUN::\t.ZWORD \"run\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WALK\n\t.BYTE 0\nW?S::\t.ZWORD \"s\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 27\n\t.BYTE A?SOUTH\nW?SAFETY::\t.ZWORD \"safety\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SAFETY\n\t.BYTE 0\nW?SALUTE::\t.ZWORD \"salute\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SALUTE\n\t.BYTE 0\nW?SAVE::\t.ZWORD \"save\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SAVE\n\t.BYTE 0\nW?SAY::\t.ZWORD \"say\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SAY\n\t.BYTE 0\nW?SB::\t.ZWORD \"sb\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 29\n\t.BYTE A?EAST\nW?SCOLD::\t.ZWORD \"scold\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SCOLD\n\t.BYTE 0\nW?SCORE::\t.ZWORD \"score\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SCORE\n\t.BYTE 0\nW?SCREAM::\t.ZWORD \"scream\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?YELL\n\t.BYTE 0\nW?SCREEN::\t.ZWORD \"screen\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SCRIPT::\t.ZWORD \"script\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SCRIPT\n\t.BYTE 0\nW?SCRUB::\t.ZWORD \"scrub\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE ACT?SCRUB\nW?SCRUBB::\t.ZWORD \"scrubb\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SCRUBR::\t.ZWORD \"scrubr\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SE::\t.ZWORD \"se\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 28\n\t.BYTE A?SE\nW?SEARCH::\t.ZWORD \"search\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SEARCH\n\t.BYTE 0\nW?SECOND::\t.ZWORD \"second\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SECOND\n\t.BYTE 0\nW?SEE::\t.ZWORD \"see\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIND\n\t.BYTE 0\nW?SEEK::\t.ZWORD \"seek\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIND\n\t.BYTE 0\nW?SELF::\t.ZWORD \"self\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SELF-CONTAINED::\t.ZWORD \"self-c\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SELF-CONTAINED\n\t.BYTE 0\nW?SEND::\t.ZWORD \"send\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SEND\n\t.BYTE 0\nW?SERIES::\t.ZWORD \"series\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SERIES\n\t.BYTE 0\nW?SET::\t.ZWORD \"set\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TURN\n\t.BYTE 0\nW?SETTING::\t.ZWORD \"settin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SETTING\n\t.BYTE 0\nW?SEVENTEEN::\t.ZWORD \"sevent\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SEVENTEEN\n\t.BYTE 0\nW?SHAKE::\t.ZWORD \"shake\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SHAKE\n\t.BYTE 0\nW?SHAPED::\t.ZWORD \"shaped\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SHAPED\n\t.BYTE 0\nW?SHELF::\t.ZWORD \"shelf\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SHELVES::\t.ZWORD \"shelve\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SHINE::\t.ZWORD \"shine\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE ACT?SCRUB\nW?SHINY::\t.ZWORD \"shiny\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SHINY\n\t.BYTE 0\nW?SHIT::\t.ZWORD \"shit\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?SHOOT::\t.ZWORD \"shoot\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIRE\n\t.BYTE 0\nW?SHORTEN::\t.ZWORD \"shorte\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CLOSE\n\t.BYTE 0\nW?SHOUT::\t.ZWORD \"shout\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?YELL\n\t.BYTE 0\nW?SHOW::\t.ZWORD \"show\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SHOW\n\t.BYTE 0\nW?SHUTTL::\t.ZWORD \"shuttl\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SHUTTL\n\t.BYTE 0\nW?SIDE::\t.ZWORD \"side\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SIFT::\t.ZWORD \"sift\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SEARCH\n\t.BYTE 0\nW?SILENT::\t.ZWORD \"silent\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SILENT\n\t.BYTE 0\nW?SILICON::\t.ZWORD \"silico\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SILICON\n\t.BYTE 0\nW?SIMPLE::\t.ZWORD \"simple\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SIMPLE\n\t.BYTE 0\nW?SINISTER::\t.ZWORD \"sinist\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SINISTER\n\t.BYTE 0\nW?SIT::\t.ZWORD \"sit\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SIT\n\t.BYTE 0\nW?SKIM::\t.ZWORD \"skim\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?READ\n\t.BYTE 0\nW?SKIP::\t.ZWORD \"skip\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SKIP\n\t.BYTE 0\nW?SLAY::\t.ZWORD \"slay\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ATTACK\n\t.BYTE 0\nW?SLEEP::\t.ZWORD \"sleep\"\n\t.BYTE PS?OBJECT+PS?VERB+P1?VERB\n\t.BYTE ACT?SLEEP\n\t.BYTE 0\nW?SLIDE::\t.ZWORD \"slide\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SLIDE\n\t.BYTE 0\nW?SLIME::\t.ZWORD \"slime\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SLOT::\t.ZWORD \"slot\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SMALL::\t.ZWORD \"small\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SMALL\n\t.BYTE 0\nW?SMASH::\t.ZWORD \"smash\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?DESTROY\n\t.BYTE 0\nW?SMELL::\t.ZWORD \"smell\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SMELL\n\t.BYTE 0\nW?SMILE::\t.ZWORD \"smile\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SMILE\n\t.BYTE 0\nW?SMITHE::\t.ZWORD \"smithe\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SNEEZE::\t.ZWORD \"sneeze\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ZORK\n\t.BYTE 0\nW?SNIFF::\t.ZWORD \"sniff\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SMELL\n\t.BYTE 0\nW?SOCKET::\t.ZWORD \"socket\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SORT::\t.ZWORD \"sort\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SEARCH\n\t.BYTE 0\nW?SOUTH::\t.ZWORD \"south\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 27\n\t.BYTE A?SOUTH\nW?SPAM::\t.ZWORD \"spam\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SPECK::\t.ZWORD \"speck\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SPILL::\t.ZWORD \"spill\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?POUR\n\t.BYTE 0\nW?SPOOL::\t.ZWORD \"spool\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SPOOLS::\t.ZWORD \"spools\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SPOUT::\t.ZWORD \"spout\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SQUARE::\t.ZWORD \"square\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SQUARE\n\t.BYTE 0\nW?STAIRS::\t.ZWORD \"stairs\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STAIRWAY::\t.ZWORD \"stairw\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STALK::\t.ZWORD \"stalk\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STAND::\t.ZWORD \"stand\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?STAND\n\t.BYTE 0\nW?STARBOARD::\t.ZWORD \"starbo\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 29\n\t.BYTE A?EAST\nW?STARE::\t.ZWORD \"stare\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?LOOK\n\t.BYTE 0\nW?STARTLE::\t.ZWORD \"startl\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAKE\n\t.BYTE 0\nW?STEEL::\t.ZWORD \"steel\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?STEEL\n\t.BYTE 0\nW?STEP::\t.ZWORD \"step\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?STEP\n\t.BYTE 0\nW?STEPS::\t.ZWORD \"steps\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STEW::\t.ZWORD \"stew\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STRIKE::\t.ZWORD \"strike\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?STRIKE\n\t.BYTE 0\nW?STRIP::\t.ZWORD \"strip\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STRUCTURE::\t.ZWORD \"struct\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?STUFF::\t.ZWORD \"stuff\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PUT\n\t.BYTE 0\nW?SUIT::\t.ZWORD \"suit\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SUPER::\t.ZWORD \"super\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SUPER\n\t.BYTE 0\nW?SUPERBRIEF::\t.ZWORD \"superb\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SUPER\n\t.BYTE 0\nW?SUPPLIES::\t.ZWORD \"suppli\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?SURPRISE::\t.ZWORD \"surpri\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAKE\n\t.BYTE 0\nW?SURVIVAL::\t.ZWORD \"surviv\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SURVIVAL\n\t.BYTE 0\nW?SW::\t.ZWORD \"sw\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 26\n\t.BYTE A?SW\nW?SWAB::\t.ZWORD \"swab\"\n\t.BYTE PS?VERB+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?SCRUB\n\t.BYTE ACT?SCRUB\nW?SWALLOW::\t.ZWORD \"swallo\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EAT\n\t.BYTE 0\nW?SWIM::\t.ZWORD \"swim\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SWIM\n\t.BYTE 0\nW?SWING::\t.ZWORD \"swing\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SLIDE\n\t.BYTE 0\nW?T::\t.ZWORD \"t\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TIME\n\t.BYTE 0\nW?TABLE::\t.ZWORD \"table\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TABLES::\t.ZWORD \"tables\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TAKE::\t.ZWORD \"take\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TAKE\n\t.BYTE 0\nW?TALK::\t.ZWORD \"talk\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SAY\n\t.BYTE 0\nW?TAN::\t.ZWORD \"tan\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?TAN\n\t.BYTE 0\nW?TAPES::\t.ZWORD \"tapes\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TASTE::\t.ZWORD \"taste\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TASTE\n\t.BYTE 0\nW?TELEPO::\t.ZWORD \"telepo\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?TELEPO\n\t.BYTE 0\nW?TELL::\t.ZWORD \"tell\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TELL\n\t.BYTE 0\nW?TERMINAL::\t.ZWORD \"termin\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?THAT::\t.ZWORD \"that\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?THE::\t.ZWORD \"the\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?THE\n\t.BYTE 0\nW?THEN::\t.ZWORD \"then\"\n\t.BYTE PS?BUZZ-WORD\n\t.BYTE B?THEN\n\t.BYTE 0\nW?THIRD::\t.ZWORD \"third\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?THIRD\n\t.BYTE 0\nW?THIS::\t.ZWORD \"this\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?THROUGH::\t.ZWORD \"throug\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?WITH\n\t.BYTE 0\nW?THROW::\t.ZWORD \"throw\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?THROW\n\t.BYTE 0\nW?THRU::\t.ZWORD \"thru\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?WITH\n\t.BYTE 0\nW?TIERED::\t.ZWORD \"tiered\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?TIERED\n\t.BYTE 0\nW?TIME::\t.ZWORD \"time\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TIME\n\t.BYTE 0\nW?TIN::\t.ZWORD \"tin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?TIN\n\t.BYTE 0\nW?TO::\t.ZWORD \"to\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?TO\n\t.BYTE 0\nW?TOILET::\t.ZWORD \"toilet\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TOSS::\t.ZWORD \"toss\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?THROW\n\t.BYTE 0\nW?TOUCH::\t.ZWORD \"touch\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?RUB\n\t.BYTE 0\nW?TOWEL::\t.ZWORD \"towel\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TRANSL::\t.ZWORD \"transl\"\n\t.BYTE PS?OBJECT+PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?TRANSL\n\t.BYTE 0\nW?TRIFFID::\t.ZWORD \"triffi\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TROLL::\t.ZWORD \"troll\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?TROT::\t.ZWORD \"trot\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?TROTTING::\t.ZWORD \"trotti\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?CURSE\n\t.BYTE 0\nW?TUG::\t.ZWORD \"tug\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?PULL\n\t.BYTE 0\nW?TURN::\t.ZWORD \"turn\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TURN\n\t.BYTE 0\nW?TYPE::\t.ZWORD \"type\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?TYPE\n\t.BYTE 0\nW?U::\t.ZWORD \"u\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?UP\n\t.BYTE 23\nW?UGLY::\t.ZWORD \"ugly\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?UGLY\n\t.BYTE 0\nW?UNDER::\t.ZWORD \"under\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?UNDER\n\t.BYTE 0\nW?UNFOLD::\t.ZWORD \"unfold\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?OPEN\n\t.BYTE 0\nW?UNIFORM::\t.ZWORD \"unifor\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?UNIT::\t.ZWORD \"unit\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?UNLOCK::\t.ZWORD \"unlock\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?UNLOCK\n\t.BYTE 0\nW?UNOPENED::\t.ZWORD \"unopen\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?UNOPENED\n\t.BYTE 0\nW?UNSCRIPT::\t.ZWORD \"unscri\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?UNSCRIPT\n\t.BYTE 0\nW?UP::\t.ZWORD \"up\"\n\t.BYTE PS?DIRECTION+PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?UP\n\t.BYTE 23\nW?UPPER::\t.ZWORD \"upper\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?UPPER\n\t.BYTE 0\nW?USING::\t.ZWORD \"using\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?WITH\n\t.BYTE 0\nW?VEHICLE::\t.ZWORD \"vehicl\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?VERBOSE::\t.ZWORD \"verbos\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?VERBOSE\n\t.BYTE 0\nW?VERSION::\t.ZWORD \"versio\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?VERSION\n\t.BYTE 0\nW?VERY::\t.ZWORD \"very\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?VERY\n\t.BYTE 0\nW?VICIOUS::\t.ZWORD \"viciou\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?VICIOUS\n\t.BYTE 0\nW?VIDEO::\t.ZWORD \"video\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?VIDEO\n\t.BYTE 0\nW?VIEW::\t.ZWORD \"view\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?VIEW\n\t.BYTE 0\nW?VIEWPORT::\t.ZWORD \"viewpo\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?VOID::\t.ZWORD \"void\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?W::\t.ZWORD \"w\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 25\n\t.BYTE A?WEST\nW?WADE::\t.ZWORD \"wade\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?SWIM\n\t.BYTE 0\nW?WAIT::\t.ZWORD \"wait\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAIT\n\t.BYTE 0\nW?WAKE::\t.ZWORD \"wake\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAKE\n\t.BYTE 0\nW?WALK::\t.ZWORD \"walk\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WALK\n\t.BYTE 0\nW?WALKWAY::\t.ZWORD \"walkwa\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?WARNIN::\t.ZWORD \"warnin\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WARNIN\n\t.BYTE 0\nW?WATCH::\t.ZWORD \"watch\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?WAVE::\t.ZWORD \"wave\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAVE\n\t.BYTE 0\nW?WE::\t.ZWORD \"we\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?WEAR::\t.ZWORD \"wear\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WEAR\n\t.BYTE 0\nW?WEB::\t.ZWORD \"web\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?WEBBING::\t.ZWORD \"webbin\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?WEST::\t.ZWORD \"west\"\n\t.BYTE PS?ADJECTIVE+PS?DIRECTION+P1?DIRECTION\n\t.BYTE 25\n\t.BYTE A?WEST\nW?WHAT::\t.ZWORD \"what\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EXAMINE\n\t.BYTE 0\nW?WHATS::\t.ZWORD \"whats\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?EXAMINE\n\t.BYTE 0\nW?WHERE::\t.ZWORD \"where\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIND\n\t.BYTE 0\nW?WHITE::\t.ZWORD \"white\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WHITE\n\t.BYTE 0\nW?WIDE::\t.ZWORD \"wide\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WIDE\n\t.BYTE 0\nW?WIDE-NOSED::\t.ZWORD \"wide-n\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WIDE-NOSED\n\t.BYTE 0\nW?WINDOW::\t.ZWORD \"window\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?WITH::\t.ZWORD \"with\"\n\t.BYTE PS?PREPOSITION+P1?OBJECT\n\t.BYTE PR?WITH\n\t.BYTE 0\nW?WITTED::\t.ZWORD \"witted\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WITTED\n\t.BYTE 0\nW?WOODEN::\t.ZWORD \"wooden\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WOODEN\n\t.BYTE 0\nW?WORN-OUT::\t.ZWORD \"worn-o\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WORN-OUT\n\t.BYTE 0\nW?WRINKLED::\t.ZWORD \"wrinkl\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WRINKLED\n\t.BYTE 0\nW?WRIST::\t.ZWORD \"wrist\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?WRIST\n\t.BYTE 0\nW?WRISTWATCH::\t.ZWORD \"wristw\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\nW?Y::\t.ZWORD \"y\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?YES\n\t.BYTE 0\nW?YELL::\t.ZWORD \"yell\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?YELL\n\t.BYTE 0\nW?YELLOW::\t.ZWORD \"yellow\"\n\t.BYTE PS?ADJECTIVE+P1?ADJECTIVE\n\t.BYTE A?YELLOW\n\t.BYTE 0\nW?YES::\t.ZWORD \"yes\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?YES\n\t.BYTE 0\nW?Z::\t.ZWORD \"z\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?WAIT\n\t.BYTE 0\nW?ZAP::\t.ZWORD \"zap\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?FIRE\n\t.BYTE 0\nW?ZORK::\t.ZWORD \"zork\"\n\t.BYTE PS?VERB+P1?VERB\n\t.BYTE ACT?ZORK\n\t.BYTE 0\nW?ZZMGCK::\t.ZWORD \"zzmgck\"\n\t.BYTE PS?OBJECT+P1?OBJECT\n\t.BYTE 0\n\t.BYTE 0\n\t.ENDT\n\n\n; END LOAD\n\nENDLOD::\n\n\n\t.ENDI\n"
  },
  {
    "path": "planetfallfreq.xzap",
    "content": "\t.FSTR FSTR?1,\"the \"\t;1968\t985\n\t.FSTR FSTR?2,\"The \"\t;1167\t390\n\t.FSTR FSTR?3,\"and \"\t;812\t407\n\t.FSTR FSTR?4,\", \"\t;776\t777\n\t.FSTR FSTR?5,\"You \"\t;726\t243\n\t.FSTR FSTR?6,\". \"\t;647\t648\n\t.FSTR FSTR?7,\"you \"\t;470\t236\n\t.FSTR FSTR?8,\"Floyd \"\t;420\t85\n\t.FSTR FSTR?9,\"is \"\t;415\t416\n\t.FSTR FSTR?10,\"to \"\t;378\t379\n\t.FSTR FSTR?11,\"with \"\t;375\t126\n\t.FSTR FSTR?12,\"of \"\t;373\t374\n\t.FSTR FSTR?13,\"your \"\t;336\t113\n\t.FSTR FSTR?14,\"This \"\t;304\t77\n\t.FSTR FSTR?15,\"from \"\t;270\t91\n\t.FSTR FSTR?16,\"can't \"\t;255\t52\n\t.FSTR FSTR?17,\"labelled \"\t;245\t36\n\t.FSTR FSTR?18,\"into \"\t;228\t77\n\t.FSTR FSTR?19,\"that \"\t;225\t76\n\t.FSTR FSTR?20,\"are \"\t;220\t111\n\t.FSTR FSTR?21,\"small \"\t;188\t48\n\t.FSTR FSTR?22,\"door \"\t;180\t61\n\t.FSTR FSTR?23,\"in \"\t;175\t176\n\t.FSTR FSTR?24,\"have \"\t;174\t59\n\t.FSTR FSTR?25,\"It \"\t;166\t84\n\t.FSTR FSTR?26,\"already \"\t;162\t28\n\t.FSTR FSTR?27,\"You're \"\t;161\t24\n\t.FSTR FSTR?28,\"which \"\t;160\t41\n\t.FSTR FSTR?29,\"room \"\t;144\t49\n\t.FSTR FSTR?30,\"about \"\t;144\t37\n\t.FSTR FSTR?31,\"control \"\t;144\t25\n\t.FSTR FSTR?32,\"through \"\t;138\t24\n\t.FSTR FSTR?33,\"some \"\t;135\t46\n\t.FSTR FSTR?34,\"There \"\t;135\t28\n\t.FSTR FSTR?35,\"Blather \"\t;133\t20\n\t.FSTR FSTR?36,\"shuttle \"\t;132\t23\n\t.FSTR FSTR?37,\"Ensign \"\t;132\t23\n\t.FSTR FSTR?38,\"for \"\t;130\t66\n\t.FSTR FSTR?39,\"large \"\t;128\t33\n\t.FSTR FSTR?40,\"elevator \"\t;119\t18\n\t.FSTR FSTR?41,\"doesn't \"\t;119\t18\n\t.FSTR FSTR?42,\"corridor \"\t;119\t18\n\t.FSTR FSTR?43,\"button\"\t;116\t30\n\t.FSTR FSTR?44,\"A \"\t;114\t115\n\t.FSTR FSTR?45,\"you're \"\t;114\t20\n\t.FSTR FSTR?46,\"seems \"\t;112\t29\n\t.FSTR FSTR?47,\"closed\"\t;108\t28\n\t.FSTR FSTR?48,\"on \"\t;107\t108\n\t.FSTR FSTR?49,\"It's \"\t;105\t22\n\t.FSTR FSTR?50,\"currently \"\t;104\t14\n\t.FSTR FSTR?51,\"There's \"\t;104\t14\n\t.FSTR FSTR?52,\"Floyd\"\t;100\t26\n\t.FSTR FSTR?53,\"don't \"\t;100\t21\n\t.FSTR FSTR?54,\"this \"\t;99\t34\n\t.FSTR FSTR?55,\"ambassador \"\t;99\t12\n\t.FSTR FSTR?56,\"but \"\t;98\t50\n\t.FSTR FSTR?57,\"probably \"\t;98\t15\n\t.FSTR FSTR?58,\"one \"\t;96\t49\n\t.FSTR FSTR?59,\"his \"\t;96\t49\n\t.FSTR FSTR?60,\"against \"\t;96\t17\n\t.FSTR FSTR?61,\"Unfortunately\"\t;96\t9\n\t.FSTR FSTR?62,\"toward \"\t;95\t20\n\t.FSTR FSTR?63,\"north \"\t;88\t23\n\t.FSTR FSTR?64,\"has \"\t;84\t43\n\t.FSTR FSTR?65,\"would \"\t;84\t22\n\t.FSTR FSTR?66,\"looks \"\t;84\t22\n\t.FSTR FSTR?67,\"microbe \"\t;84\t15\n\t.FSTR FSTR?68,\"slightly \"\t;84\t13\n\t.FSTR FSTR?69,\"computer \"\t;84\t13\n\t.FSTR FSTR?70,\"can \"\t;82\t42\n\t.FSTR FSTR?71,\"see \"\t;80\t41\n\t.FSTR FSTR?72,\"screen \"\t;80\t17\n\t.FSTR FSTR?73,\"filled \"\t;80\t17\n\t.FSTR FSTR?74,\"featureless \"\t;80\t9\n\t.FSTR FSTR?75,\"at \"\t;78\t79\n\t.FSTR FSTR?76,\"like \"\t;78\t27\n\t.FSTR FSTR?77,\"be \"\t;77\t78\n\t.FSTR FSTR?78,\"Nothing \"\t;77\t12\n\t.FSTR FSTR?79,\"now \"\t;76\t39\n\t.FSTR FSTR?80,\"voice \"\t;76\t20\n\t.FSTR FSTR?81,\"panel \"\t;76\t20\n\t.FSTR FSTR?82,\"says \"\t;75\t26\n\t.FSTR FSTR?83,\"around \"\t;75\t16\n\t.FSTR FSTR?84,\"feel \"\t;72\t25\n\t.FSTR FSTR?85,\"metal \"\t;72\t19\n\t.FSTR FSTR?86,\"nothing \"\t;72\t13\n\t.FSTR FSTR?87,\"fromitz \"\t;72\t13\n\t.FSTR FSTR?88,\"another \"\t;72\t13\n\t.FSTR FSTR?89,\"continues \"\t;72\t10\n\t.FSTR FSTR?90,\"it \"\t;71\t72\n\t.FSTR FSTR?91,\"begins \"\t;70\t15\n\t.FSTR FSTR?92,\"yourself \"\t;70\t11\n\t.FSTR FSTR?93,\"recorded \"\t;70\t11\n\t.FSTR FSTR?94,\"contains \"\t;70\t11\n\t.FSTR FSTR?95,\"out \"\t;68\t35\n\t.FSTR FSTR?96,\"not \"\t;68\t35\n\n\n;word frequency table of 96 most common words\n\nWORDS::\t.TABLE\n\tFSTR?1\n\tFSTR?2\n\tFSTR?3\n\tFSTR?4\n\tFSTR?5\n\tFSTR?6\n\tFSTR?7\n\tFSTR?8\n\tFSTR?9\n\tFSTR?10\n\tFSTR?11\n\tFSTR?12\n\tFSTR?13\n\tFSTR?14\n\tFSTR?15\n\tFSTR?16\n\tFSTR?17\n\tFSTR?18\n\tFSTR?19\n\tFSTR?20\n\tFSTR?21\n\tFSTR?22\n\tFSTR?23\n\tFSTR?24\n\tFSTR?25\n\tFSTR?26\n\tFSTR?27\n\tFSTR?28\n\tFSTR?29\n\tFSTR?30\n\tFSTR?31\n\tFSTR?32\n\tFSTR?33\n\tFSTR?34\n\tFSTR?35\n\tFSTR?36\n\tFSTR?37\n\tFSTR?38\n\tFSTR?39\n\tFSTR?40\n\tFSTR?41\n\tFSTR?42\n\tFSTR?43\n\tFSTR?44\n\tFSTR?45\n\tFSTR?46\n\tFSTR?47\n\tFSTR?48\n\tFSTR?49\n\tFSTR?50\n\tFSTR?51\n\tFSTR?52\n\tFSTR?53\n\tFSTR?54\n\tFSTR?55\n\tFSTR?56\n\tFSTR?57\n\tFSTR?58\n\tFSTR?59\n\tFSTR?60\n\tFSTR?61\n\tFSTR?62\n\tFSTR?63\n\tFSTR?64\n\tFSTR?65\n\tFSTR?66\n\tFSTR?67\n\tFSTR?68\n\tFSTR?69\n\tFSTR?70\n\tFSTR?71\n\tFSTR?72\n\tFSTR?73\n\tFSTR?74\n\tFSTR?75\n\tFSTR?76\n\tFSTR?77\n\tFSTR?78\n\tFSTR?79\n\tFSTR?80\n\tFSTR?81\n\tFSTR?82\n\tFSTR?83\n\tFSTR?84\n\tFSTR?85\n\tFSTR?86\n\tFSTR?87\n\tFSTR?88\n\tFSTR?89\n\tFSTR?90\n\tFSTR?91\n\tFSTR?92\n\tFSTR?93\n\tFSTR?94\n\tFSTR?95\n\tFSTR?96\n\t.ENDT\n\n\t.ENDI\n"
  },
  {
    "path": "planetfallpur.zap",
    "content": "\n\n; PURE TABLES ARE DEFINED HERE\n\nPURTBL::\n\nPT?103::\nT?AMBASSADOR-QUOTES::\t.TABLE\n\t7\n\tSTR?21\n\tSTR?22\n\tSTR?23\n\tSTR?24\n\tSTR?25\n\tSTR?26\n\tSTR?27\n\t.ENDT\n\nPT?203::\nT?DREAMS::\t.TABLE\n\t5\n\tSTR?47\n\tSTR?48\n\tSTR?49\n\tSTR?50\n\tSTR?51\n\t.ENDT\n\nPT?105::\nT?INDENTS::\t.TABLE\n\tSTR?64\n\tSTR?65\n\tSTR?66\n\tSTR?67\n\tSTR?68\n\tSTR?69\n\t.ENDT\n\nPT?205::\nT?HELLOS::\t.TABLE\n\t3\n\tSTR?76\n\tSTR?77\n\tSTR?78\n\t.ENDT\n\nPT?305::\nT?WHEEEEE::\t.TABLE\n\t3\n\tSTR?79\n\tSTR?80\n\tSTR?81\n\t.ENDT\n\nPT?405::\nT?HO-HUM::\t.TABLE\n\t3\n\tSTR?90\n\tSTR?91\n\tSTR?92\n\t.ENDT\n\nPT?505::\nT?YUKS::\t.TABLE\n\t6\n\tSTR?94\n\tSTR?95\n\tSTR?96\n\tSTR?97\n\tSTR?98\n\tSTR?99\n\t.ENDT\n\nPT?106::\nT?COLOR-LTBL::\t.TABLE\n\t9\n\tSTR?144\n\tSTR?145\n\tSTR?146\n\tSTR?147\n\tSTR?148\n\tSTR?149\n\tSTR?150\n\tSTR?151\n\tSTR?151\n\t.ENDT\n\nPT?206::\nT?FLOYDISMS::\t.TABLE\n\t20\n\tSTR?155\n\tSTR?156\n\tSTR?157\n\tSTR?158\n\tSTR?159\n\tSTR?160\n\tSTR?161\n\tSTR?162\n\tSTR?163\n\tSTR?164\n\tSTR?165\n\tSTR?166\n\tSTR?167\n\tSTR?168\n\tSTR?169\n\tSTR?170\n\tSTR?171\n\tSTR?172\n\tSTR?173\n\tSTR?174\n\t.ENDT\n\nPT?107::\nT?MONSTER-ENTRANCES::\t.TABLE\n\t4\n\tSTR?274\n\tSTR?275\n\tSTR?276\n\tSTR?277\n\t.ENDT\n\nPT?207::\nT?BEAM-MISSES::\t.TABLE\n\t3\n\tSTR?305\n\tSTR?306\n\tSTR?307\n\t.ENDT\n\nPT?307::\nT?WINNER-ATTACKED::\t.TABLE\n\t4\n\tSTR?312\n\tSTR?313\n\tSTR?314\n\tSTR?315\n\t.ENDT\n\nPT?407::\nT?MONSTER-CLOSES::\t.TABLE\n\t3\n\tSTR?316\n\tSTR?317\n\tSTR?318\n\t.ENDT\n\nPT?507::\nT?MICROBE-STRIKES::\t.TABLE\n\t3\n\tSTR?319\n\tSTR?320\n\tSTR?321\n\t.ENDT\n\nPURTND::\n\t.ENDI\n"
  },
  {
    "path": "planetfallstr.zap",
    "content": "\n\n; STRINGS ARE DEFINED HERE\n\nSTRBEG::\n\n\t.GSTR STR?64,\"\"\n\t.GSTR STR?91,\" has no effect.\"\n\t.GSTR STR?102,\"You have reached a cleft in the cliff wall where the island rises from the water. The edge of the cleft displays recently exposed rock where it collapsed under the weight of the escape pod. About two meters below, turbulent waters swirl against sharp rocks. A small structure clings to the face of the cliff about eight meters above you. Even an out-of-shape Ensign Seventh Class could probably climb up to it.\"\n\t.GSTR STR?125,\"You have just located a serious bug.\"\n\t.GSTR STR?126,\"You have entered a small office of some sort. A small desk faces the main doorway which lies to the east. Another exit leads west.\"\n\t.GSTR STR?147,\"yellow\"\n\t.GSTR STR?183,\"\"\"Tuu enee ship uv xe Sekund Galaktik Yuunyun: Planitwiid plaag haz struk entiir popyuulaashun. Tiim iz kritikul. Eemurjensee asistins reekwestid. <reepeet mesij>\"\"\"\n\t.GSTR STR?192,\"You have entered a clean, well-lighted place. There are a number of beds, some complicated looking equipment, and many shelves that are mostly bare.\"\n\t.GSTR STR?224,\"\"\"Xe aancint lejindz saa xat ships frum xe Sekund Yuunyun wuns fild ar skiis and wil wun daa kum agen. Madern siientists, huu wuns dismist suc lejindz and felt xat liif eevolvd heer on Resida, now feel xat ar planit wuz reelee setuld bii men uv xe Sekund Yuunyun.\"\"\"\n\t.GSTR STR?234,\"\"\"Xe priimeree Planateree Sistumz ar Kors Kuntrool (foor maantaaneeng an iideel kliimit), Deefens (foor destroieeng pootenshulee daanjuris meeteeoorz), and xe reesintlee adid Prajekt Kuntrool (foor monitureeng proogres uv Xe Prajekt).\"\"\"\n\t.GSTR STR?236,\"\"\"Xe furst undursee habutats wur oopind in 2992, and tuudaa, neerlee tuu senshureez laatur, abowt 9 pursent uv Residaz popyuulaashun livz in wun uv xe twentee sprawleeng undursee siteez.\"\"\"\n\t.GSTR STR?238,\"\"\"Xe oorijin uv Xe Dizeez haz bin linkt tuu xe Sentur foor Advanst Kriioojenik Reesurc, wic wuz kondukteeng reesurc intuu waaz uv ekstendeeng xe Kriioojenik peereeid indefinitlee. Alxoo xis reesurc wuz aa sukses, sumhow Xe Dizeez wuz reeleest and beegan spredeeng.\"\"\"\n\t.GSTR STR?239,\"\"\"Xe tuu kompleksiz wur establisht on xe twin peek platooz uv Kalamontee and Lawanda. Xeez lookaashunz wur coozin beekawz xaar hiit wud maak transpoortaashun and komyuunikaashunz eezeeur, and soo xat xe vast reeakturz and kriioojeniks caamburz kud bee kunstruktid in xe mowntinz beeloo.\"\"\"\n\t.GSTR STR?241,\"\"\"Xe Zoork triloojee, an adventshur klasik, taaks plaas in aa deeliitful but daanjuris undurgrownd seteeng.\"\"\"\n\t.GSTR STR?249,\"\"\"Xe jestaashun peereeid uv Xe Dizeez, folooweeng ekspoozur, vaareez treemenduslee frum pursin tuu pursin, raanjeeng frum wun daa tuu sevrul rootaashunz. Wuns xe furst simptumz ar shoon, dex alwaaz okurz in aat tuu ten daaz.\nXe priimeree simptum iz aa hii feevur. Xe sekunderee simptum iz aa sharp inkrees in xe amownt uv sleep needid eec niit.\"\"\nThe rest of the information is about symptoms which can be detected only by using complicated medical procedures.\"\n\t.GSTR STR?285,\"You hear the faint sound of a relay clicking.\"\n\t.GSTR STR?2,\"Brilliant idea!\"\n\t.GSTR STR?18,\"Oops. Looks like Blow'k-Bibben-Gordoan metabolism is not compatible with our own. You die of all sorts of convulsions.\"\n\t.GSTR STR?22,\"asks if you are performing some sort of religious ceremony.\"\n\t.GSTR STR?25,\"asks where Admiral Smithers can be found.\"\n\t.GSTR STR?160,\"cranes his neck to see what you are doing\"\n\t.GSTR STR?162,\"asks if you want to play Hucka-Bucka-Beanstalk\"\n\t.GSTR STR?63,\"Oh, no! You have walked into the slavering fangs of a lurking grue!\"\n\t.GSTR STR?75,\"Oh, no! Something (a grue?) slithered into the room and devoured you!\"\n\t.GSTR STR?88,\"Pulling the \"\n\t.GSTR STR?283,\"Mutated monsters from the Bio Lab pour into the office. You are devoured.\"\n\t.GSTR STR?66,\"    \"\n\t.GSTR STR?136,\"On the floor beneath the shelves sits a small cardboard box.\"\n\t.GSTR STR?173,\"yawns and looks bored\"\n\t.GSTR STR?197,\"At the bottom of the bottle is a small quantity of medicine.\"\n\t.GSTR STR?211,\"On the table is a computer terminal.\"\n\t.GSTR STR?244,\"On the desk is a machine with a screen and a small circular opening. It seems to be turned off.\"\n\t.GSTR STR?259,\"Hanging on a rack is a pale blue lab uniform. Sewn onto its pocket is a non-descript logo.\"\n\t.GSTR STR?36,\"A sign flashes \"\"Inkorekt awtharazaashun kard...akses deeniid.\"\"\"\n\t.GSTR STR?74,\"off\"\n\t.GSTR STR?137,\"Kerzap!! You should know better than to touch an active bedistor!\"\n\t.GSTR STR?168,\"frets about the possibility of his batteries failing\"\n\t.GSTR STR?284,\"\"\"Memoo tuu awl lab pursunel: Duu tuu xe daanjuris naatshur uv xe biioo eksperiments, an eemurjensee sistum haz bin instawld. Xis sistum wud flud xe entiir Biioo Lab wic aa dedlee fungasiid. Propur preecawshunz shud bee taakin if xis sistum iz evur yuuzd.\"\"\"\n\t.GSTR STR?306,\"A near miss!\"\n\t.GSTR STR?144,\"red\"\n\t.GSTR STR?227,\"\"\"Menee volyuumz on xe deevelupmint uv Residan lituracur ar on fiil in xe liibreree. Alsoo, kopeez uv awl graat wurks uv riiteeng, sum daateeng bak tuu xe mixikul daaz uv xe Sekund Yuunyun, ar lookaatid heer.\"\"\"\n\t.GSTR STR?247,\" Some information appears on the screen.\"\n\t.GSTR STR?228,\"\"\"Histoorikul studeez and reeproodukshunz uv Residan art ar avaalibul heer foor awl xree maajur peereeids uv art deevelupmint: xe Primitiv peereeid, xe Renasans peereeid uv xe urlee poost-Hiiaatus, and xe moost reesint peereeid uv videeoo and laazur art.\"\"\"\n\t.GSTR STR?145,\"blue\"\n\t.GSTR STR?175,\"You'll have to use the elevator controls.\"\n\t.GSTR STR?269,\"The biological nightmares reach you. Gripping coils wrap around your limbs as powerful teeth begin tearing at your flesh. Something bites your leg, and you feel a powerful poison begin to work its numbing effects...\"\n\t.GSTR STR?298,\"slightly warm now\"\n\t.GSTR STR?304,\"slightly warm\"\n\t.GSTR STR?305,\"The beam just misses the speck!\"\n\t.GSTR STR?320,\"The beam slices through the microbe's skin! A tremendous shudder passes through the microbe, but the wound quickly seals itself.\"\n\t.GSTR STR?5,\"The cell door is locked.\"\n\t.GSTR STR?8,\"The corridor widens here as it nears the main drive area. To starboard is the Ion Reactor that powers the vessel, and aft of here is the Auxiliary Control Room. The corridor continues to port.\"\n\t.GSTR STR?11,\"This is a steep metal gangway connecting Deck Eight, above, and Deck Nine, below.\"\n\t.GSTR STR?12,\"This is a featureless corridor leading port and starboard. A gangway leads down, and to fore is the Hyperspatial Jump Machinery Room.\"\n\t.GSTR STR?43,\"You pass a sign, surrounded by blinking red lights, which says \"\n\t.GSTR STR?81,\"Wheeeeeee!!!\"\n\t.GSTR STR?99,\"What a concept!\"\n\t.GSTR STR?103,\"This was once the west wing of the castle, but the walls are now mostly rubble, allowing a view of the cliff and ocean below. Rubble blocks all exits save one, eastward to the courtyard.\"\n\t.GSTR STR?105,\"This is a featureless hall leading north and south. Although the hallway is old and dusty, the construction is of a much more modern style than the castle to the south. A similar hall branches off to the northeast.\"\n\t.GSTR STR?106,\"This is a tiny room with a large \"\"1\"\" painted on the wall. A panel contains a slot about ten centimeters wide, a beige button labelled \"\"2\"\" and a tan button labelled \"\"3.\"\"\"\n\t.GSTR STR?107,\"This is a wide, east-west hallway. Portals lead north and south, and another corridor branches southwest.\"\n\t.GSTR STR?108,\"This is a very long room lined with multi-tiered bunks. Flimsy partitions between the tiers may have provided a modicum of privacy. These spartan living quarters could have once housed many hundreds, but it seems quite deserted now. There are openings at the north and south ends of the room.\"\n\t.GSTR STR?109,\"This must be the sanitary facility for the adjacent dormitory. The fixtures are dry and dusty, the room dead and deserted. You marvel at how little the millenia and cultural gulfs have changed toilet bowl design. The only exit is north.\"\n\t.GSTR STR?110,\"This must be the sanitary facility for the adjacent dormitory. The fixtures are dry and dusty, the room dead and deserted. You marvel at how little the millenia and cultural gulfs have changed toilet bowl design. The only exit is south.\"\n\t.GSTR STR?111,\"This is a small room obviously intended as a storage area.\"\n\t.GSTR STR?116,\"This is a wide, east-west hallway with openings to the north and south. To the east, the corridor stretches off into the distance. That section of the hallway is lined with a motorized walkway (no longer running) that was probably intended to transport people or cargo down that tremendously long hall.\"\n\t.GSTR STR?117,\"This is the food production and dispensary area for the dining hall to the north. Of particular interest is a machine near the door. You should probably examine it more closely.\"\n\t.GSTR STR?120,\"This section of hallway seems to have suffered some minor structural damage. The walls are cracked, and a jagged crevice crosses the floor. An opening leads east and the corridor heads north and south.\"\n\t.GSTR STR?124,\"This is a small room whose far wall is covered with many small cubbyholes, all empty. The left wall is covered with an enormous map, labelled \"\"Kalamontee Kompleks\"\", showing two installations connected by a long hallway. Near the upper part of this map is a red arrow saying \"\"Yuu ar heer.\"\" The right wall is covered with a similar map, labelled \"\"Lawanda Kompleks\"\", showing two installations, one apparently buried deep underground.\"\n\t.GSTR STR?127,\"The card is embossed \"\"kitcin akses kard.\"\"\"\n\t.GSTR STR?128,\"The card is embossed \"\"upur elivaatur akses kard.\"\"\"\n\t.GSTR STR?129,\"The card is embossed \"\"shutul akses kard.\"\"\"\n\t.GSTR STR?130,\"The card is embossed \"\"loowur elivaatur akses kard.\"\"\"\n\t.GSTR STR?131,\"This is a large, plush office. The far wall is one large picture window, scratched but unbroken, offering a view of this installation and the ocean beyond. In front of the window is a wide wooden desk. The only exit is east.\"\n\t.GSTR STR?133,\"The corridor ends here with doorways to the southwest, south, and southeast.\"\n\t.GSTR STR?138,\"This is a huge, dim room with exits in the northeast and southeast corners. The room is criss-crossed with catwalks and is filled with heavy equipment presumably intended to heat and ventilate this complex. Hardly any of the equipment is still operating.\"\n\t.GSTR STR?139,\"This room contains many dials and gauges for controlling a massive planetary power reactor which, according to a diagram on the wall, must be buried far below this very complex. The exit is to the west. To the east is a metal door, and next to it, a button. A dark stairway winds downward.\"\n\t.GSTR STR?140,\"This is an elevator with a door to the west, currently open. A control panel contains an Up button, a Down button, and a small slot.\"\n\t.GSTR STR?141,\"This is apparently a storage room for tools. Exits lead northeast and east.\"\n\t.GSTR STR?152,\"This room, with exits west and northwest, is filled with robot-like devices of every conceivable description, all in various states of disassembly.\"\n\t.GSTR STR?178,\"This is a tiny room with a large \"\"2\"\" painted on the wall. A panel contains a slot about ten centimeters wide, a brown button labelled \"\"1\"\" and a tan button labelled \"\"3.\"\"\"\n\t.GSTR STR?179,\"This is a small, circular room. A sliding door leads north, and a spiral staircase heads upwards. Other exits lie to the northeast and southwest.\"\n\t.GSTR STR?182,\"This is a large vehicle with a lot of cargo space. A complex control panel is closed and locked. Everything is covered with a thick layer of rust. Through the windows of the vehicle you can see a wide Helipad, and beyond that, endless ocean far below. Several doors lead out to the Helipad.\"\n\t.GSTR STR?187,\"The chemical drips all over the silicon strip, which immediately begins to dissolve. As it does so, you plunge into the void below.\"\n\t.GSTR STR?188,\"This is a balcony girdling the tower. The view is breathtaking; the tower must be half a kilometer tall. From here it is clear that you are on an island. The dormitory section of the complex is visible on the other side of the island, and the rest of the complex sprawls out directly below. In the distance, about 20 kilometers to the east, you can spot another island similar to this one. The only exit is a doorway leading northeast.\"\n\t.GSTR STR?189,\"This is a concrete platform sparsely furnished with benches. The platform continues to the east, and to the south is a metal door.\"\n\t.GSTR STR?191,\"This is a hallway which forks to the northeast and southeast. To the west is the top of a long escalator.\"\n\t.GSTR STR?201,\"The corridor bends here, leading east and southwest. A doorway opens to the northwest, and a narrow stairway leads down to the north.\"\n\t.GSTR STR?202,\"This section of hallway has a doorway to the north labelled \"\"Planateree Deefens.\"\" The corridor continues east and west.\"\n\t.GSTR STR?204,\"This is an enormous room full of environmental control equipment presumably intended to heat and ventilate the Lawanda Complex. Oddly, although the Lawanda Complex is slightly smaller than its counterpart, this plant is much larger than the one in the Kalamontee Complex. The only exit is westward.\"\n\t.GSTR STR?205,\"This is a carpeted room, thick with dust, with exits to the north and south. To the west, up a few steps, is a wide doorway. A small booth lies to the east.\"\n\t.GSTR STR?208,\"This is a tiny room with a large \"\"3\"\" painted on the wall. A panel contains a slot about ten centimeters wide, a brown button labelled \"\"1\"\" and a beige button labelled \"\"2.\"\"\"\n\t.GSTR STR?209,\"This is a large carpeted room with a desk and many small tables. The sole exit is down a few steps to the east.\"\n\t.GSTR STR?226,\"\"\"Wixin xe last fiiv senshureez, xe riiz uv xe Nuu Teknakrasee haz reeturnd sivilizaashun tuu xe levul ataand beefoor xe Hiiaatus. Sooshul histooreeunz xink xat wen xe Dizeez struk, ar raas had aceevd aa levul uv sufistikaashun eekwal tuu xe pree-Hiiaatus.\"\"\"\n\t.GSTR STR?250,\"This is a curving hallway leading east and northwest. There is an opening to the west.\"\n\t.GSTR STR?251,\"This is another dusty sanitary facility. Unlike the ones near the dorms, this one is smaller and has no bathing fixtures.\"\n\t.GSTR STR?254,\"This is the main computer room for the Project. The only sign of activity is a glowing red light. The exits are north, west, and northeast. To the south is a small booth.\"\n\t.GSTR STR?255,\"This is a small room barely large enough for one person. Mounted on the wall is a small slot, and next to it a keyboard with numeric keys. The exit is to the north.\"\n\t.GSTR STR?256,\"The card is embossed \"\"minitcurizaashun akses kard.\"\"\"\n\t.GSTR STR?257,\"This is the heart of the Project's vast laboratory complex. There are exits to the west and southwest, and heavy metal doors to the northeast and southeast. A small doorway leads south.\"\n\t.GSTR STR?258,\"This is a tiny room for the storage of laboratory supplies. The sole exit is to the north.\"\n\t.GSTR STR?260,\"The card is embossed \"\"teliportaashun akses kard.\"\"\"\n\t.GSTR STR?261,\"This is the first half of a sterilization chamber to prevent contamination of the delicate biological experiments in the Bio Lab which lies beyond. The door to the west leads to the main lab, and the bio lock continues eastward.\"\n\t.GSTR STR?263,\"This is the western half of a decontamination chamber to prevent dangerous radioactive materials from leaving the Radiation Lab which lies to the east. The door leads west to the main lab.\"\n\t.GSTR STR?264,\"This is the eastern half of the decontamination chamber. The door to the east leads to the Radiation Lab, and the chamber continues westward. A sign on the wall reads \"\"WORNEENG! Raadeeaashun suuts must bee worn beeyond xis point.\"\"\"\n\t.GSTR STR?270,\" Unfortunately, you don't seem to be that hardy.\"\n\t.GSTR STR?278,\"This room is filled with unfathomable equipment and large canisters bearing radioactive warnings. Many of the canisters are split open. You can see the Bio Lab through a large crack in the south wall. Sinister-looking forms move about within the Bio Lab. Although the lights here are off, the room is suffused with a pale blue glow.\"\n\t.GSTR STR?286,\"This is another small booth. Unlike the Miniaturization Booth, this room has no slot or keyboard, so presumably it is intended only as a receiving station. The exit is on the northern side.\"\n\t.GSTR STR?299,\"somewhat warm now\"\n\t.GSTR STR?303,\"somewhat warm\"\n\t.GSTR STR?324,\"Lurking nearby is a vicious-looking creature with slavering fangs. Squinting in the light, it eyes you hungrily.\"\n\t.GSTR STR?95,\"A valiant attempt.\"\n\t.GSTR STR?218,\"    0. Maan Menyuu\n    1. Raashul Orijinz\n    2. Graat Hiiaatus\n    3. Riiz uv xe Nuu Teknakrasee\"\n\t.GSTR STR?219,\"    0. Maan Menyuu\n    1. Lituracur\n    2. Art\n    3. Muusik\"\n\t.GSTR STR?220,\"    0. Maan Menyuu\n    1. Medisin\n    2. Agrikultcur\n    3. Tranzportaashun\n    4. Roobotiks\n    5. Planateree Sistumz\"\n\t.GSTR STR?221,\"    0. Maan Menyuu\n    1. Planit Landmasiz\n    2. Undursee Reejunz\n    3. Spaas Kolooneez\"\n\t.GSTR STR?222,\"    0. Maan Menyuu\n    1. Orijinz uv xe Dizeez\n    2. Xe Instalaashunz\n    3. Prajekt Kuntrool\n\"\n\t.GSTR STR?223,\"    0. Maan Menyuu\n    1. Zoork\n    2. Dedliin and Witnis\n    3. Starkros and Suspendid\"\n\t.GSTR STR?267,\"The door opens.\"\n\t.GSTR STR?268,\"The door closes.\"\n\t.GSTR STR?30,\"\nYou are thrown against the bulkhead, head first. It seems that getting in the safety webbing would have been a good idea.\"\n\t.GSTR STR?47,\"...You find yourself on the bridge of the Feinstein. Ensign Blather is here, as well as Admiral Smithers. You are diligently scrubbing the control panel. Blather keeps yelling at you to scrub harder. Suddenly you hit the ship's self-destruct switch! Smithers and Blather howl at you as the ship begins exploding! You try to run, but your feet seem to be fused to the deck...\"\n\t.GSTR STR?48,\"...You gulp down the last of your Ramosian Fire Nectar and ask the andro-waiter for another pitcher. This pub makes the finest Nectar on all of Ramos Two, and you and your shipmates are having a pretty rowdy time. Through the windows of the pub you can see a mighty, ancient castle, shining in the light of the three Ramosian moons. The Fire Nectar spreads through your blood and you begin to feel drowsy...\"\n\t.GSTR STR?50,\"...Your vision slowly returns. You are on a wooded cliff overlooking a waterfall. A rainbow spans the falls. Blather stands above you, bellowing that the ground is filthy -- scrub harder! You throw your brush at Blather, but it passes thru him as though he were a ghost, and sails over the cliff. Blather leaps after the valuable piece of Patrol property, and both plummet into the void...\"\n\t.GSTR STR?53,\"\nYou collapse from extreme thirst and hunger.\"\n\t.GSTR STR?55,\"\nYou finally succumb to the ravages of your illness and collapse.\"\n\t.GSTR STR?177,\"The elevator door slides shut. After a moment, you feel a sensation of vertical movement.\"\n\t.GSTR STR?217,\"    1. Histooree\n    2. Kulcur\n    3. Teknolojee\n    4. Jeeografee\n    5. Xe Prajekt\n    6. Inturlajik Gaamz\"\n\t.GSTR STR?266,\"A very bored-sounding recorded voice explains that, in order to prevent contamination, both lock doors cannot be open simultaneously.\"\n\t.GSTR STR?273,\"\nYou stupidly run right into the jaws of the pursuing mutants.\"\n\t.GSTR STR?1,\"You slice yourself to ribbons on the broken windows and then plummet into the swirling ocean below. Very clever.\"\n\t.GSTR STR?78,\"Goodbye.\"\n\t.GSTR STR?237,\"\"\"Alxoo setulmints hav bin establisht on Fristin, and on sevrul uv xe muunz uv xe gas jiiunt Blustin, xe vast majooritee uv of-woorldurz liv in xe spaas kolooneez establisht at Residaz troojin points.\"\"\"\n\t.GSTR STR?315,\"Two protoplasm-filled blobs sneak toward you from the left. You jump to the side and almost fall off the strip into the void below!\"\n\t.GSTR STR?20,\"\"\"The leading export of Blow'k-bibben-Gordo is the adventure game\n\n          *** PLANETFALL ***\n\nwritten by S. Eric Meretzky.\nBuy one today. Better yet, buy a thousand.\"\"\"\n\t.GSTR STR?28,\"\"\"S.P.S. FEINSTEIN\n  Escape Pod #42\n   Don't Panic!\"\"\"\n\t.GSTR STR?33,\"\nBetween the swirling waters and the increasing pressure, it's curtains for you. Perhaps you should have left the pod a bit sooner.\"\n\t.GSTR STR?157,\"lowers his voice and tells you the latest rumors about Dr. Fizpick\"\n\t.GSTR STR?243,\"\"\"Starkros iz Infookamz miind-bendeeng siiens-fikshun adventshur. Suspendid iz aa kriioojenik siiens-fikshun niitmaar.\"\"\"\n\t.GSTR STR?274,\"The growling humanoid is charging straight at you, waving his axe-like implement!\"\n\t.GSTR STR?300,\"very warm now\"\n\t.GSTR STR?302,\"very warm\"\n\t.GSTR STR?163,\"examines himself for signs of rust\"\n\t.GSTR STR?203,\"The hallway ends here with a large doorway leading east, and smaller doorways to the north and south. The northern doorway is labelled \"\"Planateree Kors Kontrool.\"\" The hallway itself leads west.\"\n\t.GSTR STR?225,\"\"\"Wexur oor not xe lejindz uv xe Sekund Yuunyun ar truu, arkeeoloojists ar surtin xat aa peereeid uv hii teknoolojikul and sooshul deevelupmint egzistid xowzindz uv yeerz agoo, but foor sum reezin sivilizaashun slid intuu aa dark aaj lasteeng senshureez.\"\"\"\n\t.GSTR STR?253,\"The hallway ends here but continues back toward the west. Doorways lead north, south and east.\"\n\t.GSTR STR?7,\"A slightly wrinkled Patrol uniform is lying here.\"\n\t.GSTR STR?104,\"Certain death.\"\n\t.GSTR STR?262,\"The is the second half of the sterilization chamber leading from the main lab to the Bio Lab. The door to the east, leading to the Bio Lab, has a window. The bio lock continues to the west.\"\n\t.GSTR STR?313,\"A slimy pseudopod brushes against your shoulder. You twist away in the nick of time.\"\n\t.GSTR STR?56,\"tastes\"\n\t.GSTR STR?85,\"Pushing the \"\n\t.GSTR STR?86,\"Pushing up the \"\n\t.GSTR STR?87,\"Pushing down the \"\n\t.GSTR STR?92,\" is as worthwhile as cleaning a Grotch cage.\"\n\t.GSTR STR?135,\"One dusty shelf, otherwise bare, holds a small oil can.\"\n\t.GSTR STR?174,\"produces a crayon from one of his compartments and scrawls his name on the wall\"\n\t.GSTR STR?79,\"You've spent too much time among the Leaping Loon-toads of Leonia.\"\n\t.GSTR STR?184,\"Mmmmm....that tasted just like delicious poisonous chemicals!\"\n\t.GSTR STR?265,\"Opening the door reveals a Bio-Lab full of horrible mutations. You stare at them, frozen with horror. Growling with hunger and delight, the mutations march into the bio-lock and devour you.\"\n\t.GSTR STR?309,\"A hungry microbe blocks your way, its cilia waving and its pseudopods towering over you.\"\n\t.GSTR STR?29,\"\nAn enormous explosion tears the walls of the ship apart. If only you had made it to an escape pod...\"\n\t.GSTR STR?54,\"Thanks, but you're not hungry.\"\n\t.GSTR STR?80,\"Having fun?\"\n\t.GSTR STR?149,\"brown\"\n\t.GSTR STR?170,\"relates some fond memories about his robotic friend Lazarus\"\n\t.GSTR STR?271,\"The mutants attack you and rip you to shreds within seconds.\"\n\t.GSTR STR?277,\"The mobile plant whips its poisonous tentacles against your ankles!\"\n\t.GSTR STR?316,\"The microbe slithers closer. The cilia around its gullet glisten with mucus, giving the impression that the microbe is salivating.\"\n\t.GSTR STR?317,\"The microbe flows toward you. It towers above you, its cilia waving madly in your face.\"\n\t.GSTR STR?318,\"The monster wriggles nearer. It is now so close that you can make out details in the protoplasm beneath its translucent skin.\"\n\t.GSTR STR?319,\"The microbe's outer membrane sizzles a bit, and some protoplasm oozes out. The microbe recoils momentarily, but quickly recovers.\"\n\t.GSTR STR?321,\"The monster rears back for a moment, but almost as soon as the beam goes off, it advances again.\"\n\t.GSTR STR?166,\"notices a mouse scurrying by and tries to hide behind you\"\n\t.GSTR STR?231,\"\"\"Durt farmeeng iz awl but obsooleet, wix moost fuud kumeeng frum xe hiidrooponiks kompleksiz oor xe undurwatur aljee farmz.\"\"\"\n\t.GSTR STR?13,\"Blather throws you to the deck and makes you do 20 push-ups.\"\n\t.GSTR STR?14,\"Blather blocks your path, growling about extra galley duty.\"\n\t.GSTR STR?16,\"Blather removes several of your appendages and internal organs.\"\n\t.GSTR STR?153,\"Only one robot, about four feet high, looks even remotely close to being in working order.\"\n\t.GSTR STR?297,\"The odds and ends on the shelves include a small round object, which closer inspection reveals to be a fresh laser battery.\"\n\t.GSTR STR?301,\"quite hot\"\n\t.GSTR STR?19,\"Unfortunately, one of those stupid Blow'k-bibben-Gordo brochures is here.\"\n\t.GSTR STR?52,\"Unfortunately, you don't seem to have survived the night.\"\n\t.GSTR STR?71,\"closed\"\n\t.GSTR STR?143,\"On an upper shelf is a metal bar, curved into a U-shape.\"\n\t.GSTR STR?185,\"Unfortunately, those two liquids seem to react quite violently with each other. The resulting exothermic reaction might have been interesting to watch from a distance of, say, several hundred feet.\"\n\t.GSTR STR?290,\"The plunge would probably be fatal.\"\n\t.GSTR STR?307,\"A good shot, but just a little wide of the target.\"\n\t.GSTR STR?70,\"open\"\n\t.GSTR STR?123,\"Here is another sanitary facility. Like the others, it is dusty and non-functional.\"\n\t.GSTR STR?82,\"Kicking the \"\n\t.GSTR STR?279,\"\nIt seems you have picked up a bad case of radiation poisoning.\"\n\t.GSTR STR?312,\"A pseudopod extends toward you. You jump back just in time to avoid being engulfed.\"\n\t.GSTR STR?314,\"A pseudopod shoots out toward your head! Ducking quickly, you save your life.\"\n\t.GSTR STR?6,\"\"\"STELLAR PATROL\nSpecial Assignment Task Force\nID Number:  6172-531-541\"\"\"\n\t.GSTR STR?21,\"introduces himself as Br'gun-te'elkner-ipg'nun.\"\n\t.GSTR STR?35,\"A recorded voice chimes \"\"Elevator enabled.\"\"\"\n\t.GSTR STR?38,\"A recorded voice says \"\"Shuttle controls are already activated.\"\"\"\n\t.GSTR STR?39,\"A recorded voice says \"\"Use other control cabin. Control activation overridden.\"\"\"\n\t.GSTR STR?40,\"A recording of a deep male voice says \"\"Shuttle controls activated.\"\"\"\n\t.GSTR STR?41,\"A recorded voice says \"\"Shuttle controls are not currently activated.\"\"\"\n\t.GSTR STR?42,\"The shuttle car hurtles past the platforms and rams into the wall at the far end of the station. The shuttle car is destroyed, but you're in no condition to care.\"\n\t.GSTR STR?90,\" isn't notably helpful.\"\n\t.GSTR STR?101,\"A mighty undertow drags you across some underwater obstructions.\"\n\t.GSTR STR?114,\"A heavy-duty extendable ladder is leaning against the rear wall.\"\n\t.GSTR STR?155,\"paces impatiently\"\n\t.GSTR STR?176,\"A recording says \"\"Elevator no longer enabled.\"\"\"\n\t.GSTR STR?194,\"The spool is labelled \"\"Simptumz uv Xe Dizeez.\"\"\"\n\t.GSTR STR?207,\"The spool is labelled \"\"Helikoptur Opuraateeng Manyuuwul.\"\"\"\n\t.GSTR STR?213,\"The screen clears and a different menu appears:\n\"\n\t.GSTR STR?214,\"The screen clears and some text appears:\n\"\n\t.GSTR STR?233,\"\"\"Untoold senshureez agoo, entiir teemz uv roobots wur reekwiird tuu purfoorm eevin xe simplist tasks...wun roobot wud handul viszuuwul funkshunz, wun roobot wud handul awditooree funkshunz, and soo foorx. Now, xanks tuu advansis in mineeatshurizaashun, xeez tasks kan bee purfoormd bii singul roobots, suc az xe multiipurpis B-19 seereez.\"\"\"\n\t.GSTR STR?246,\"The spool fits neatly into the opening.\"\n\t.GSTR STR?281,\"The spool is labelled \"\"Instrukshunz foor Reepaareeng Reepaar Roobots.\"\"\"\n\t.GSTR STR?17,\"A high-ranking ambassador from a newly-contacted alien race is standing here on three of his legs, and watching you with seven of his eyes.\"\n\t.GSTR STR?112,\"There is a large tin can, labelled \"\"Spam and Egz,\"\" sitting here.\"\n\t.GSTR STR?115,\"There is a large aluminum ladder here.\"\n\t.GSTR STR?118,\"Although the room is quite barren, an octagonally-shaped canteen is sitting on one of the benches.\"\n\t.GSTR STR?212,\"The terminal feeps, and a message briefly appears on the screen explaining that typing that character has no meaning at the moment.\"\n\t.GSTR STR?242,\"\"\"Dedliin iz xe furst graat misturee uv xe kumpyuutur aaj, and Witnis iz its wurxee suksesur.\"\"\"\n\t.GSTR STR?245,\"There is a microfilm reader on one of the tables.\"\n\t.GSTR STR?248,\"\"\"Oonlee peepul wix propur traaneeng shud piilot xe helikopturz. Reekwiird ekwipmint inkluudz aa Helikoptur Akses Kard and aa Kuntrool Panul Kee. Xeez kan bee obtaand frum Tranzportaashun Stoorij.\"\"\nThe rest is all very technical.\"\n\t.GSTR STR?282,\"There is a powerful portable lamp here, currently off.\"\n\t.GSTR STR?294,\"There is a huge featureless wall there, remember?\"\n\t.GSTR STR?296,\"There is a worn-out laser battery here.\"\n\t.GSTR STR?275,\"A pair of slavering fangs removes part of your clothing!\"\n\t.GSTR STR?142,\"Sitting on the floor below the lowest shelf is a large glass flask.\"\n\t.GSTR STR?210,\"Sitting on a wide table is a machine of sorts, consisting of a video screen and a keyboard. It is currently turned off.\"\n\t.GSTR STR?235,\"\"\"Sins xe staabulizaashun uv xe oorbit uv Resida, preesiislee 47.79 pursent uv xe planits surfis iz land. Xe land iz diviidid intuu tuu priimeree landmasiz, Andoor and Fruulik, plus siks lesur landmasiz. Xe gloobul kapitul, Pilandoor, iz on xe eesturn koost uv Andoor.\"\"\"\n\t.GSTR STR?280,\"Sitting on a long table is a small brown spool.\"\n\t.GSTR STR?83,\"Waving the \"\n\t.GSTR STR?167,\"sings an ancient ballad, totally out of key\"\n\t.GSTR STR?181,\"A fence keeps you away from the edge, where you would probably be swept over the brink by the high winds.\"\n\t.GSTR STR?293,\"Do you have a penchant for bottomless voids?\"\n\t.GSTR STR?73,\"on\"\n\t.GSTR STR?76,\"Hello.\"\n\t.GSTR STR?77,\"Nice weather we're having.\"\n\t.GSTR STR?169,\"reminisces about his friend Lazarus, a medical robot\"\n\t.GSTR STR?44,\"\n\n\nSuddenly, in the middle of the night, a wave of water washes over you. Before you can quite get your bearings, you drown.\"\n\t.GSTR STR?45,\"\n\n\nSuddenly, in the middle of the night, you awake as several ferocious beasts (could they be grues?) surround and attack you. Perhaps you should have found a slightly safer place to sleep.\"\n\t.GSTR STR?308,\"\nWith a furious storm of electrical mayhem, Sector 384 comes to life. A few micro-volts course through the silicon strip on which you stand. Unfortunately, at your current size, this is enough to barbecue you.\"\n\t.GSTR STR?61,\"So, that's what it's like to have twenty million volts run through your body!\"\n\t.GSTR STR?84,\"Fiddling with the \"\n\t.GSTR STR?89,\"Trying to destroy the \"\n\t.GSTR STR?119,\"A north-south corridor intersects the main corridor here. To the west, the main corridor extends as far as you can see; a non-working walkway from that direction ends here. To the east, the corridor widens into a well-lit area.\"\n\t.GSTR STR?172,\"tells you about the time he helped someone sharpen a pencil\"\n\t.GSTR STR?232,\"\"\"Planateree travul iz noormulee priivit skuutur foor shoort hops, and aarbus foor longur trips. Spaas travul haz reesintlee bin revooluushuniizd bii xe invenshun uv nuukleeur-fyuuld enjinz.\"\"\"\n\t.GSTR STR?322,\"A ferocious feral creature, with a hairy shelled body and a whip-like tail snaps its enormous mandibles at you.\"\n\t.GSTR STR?323,\"Rushing toward you is an ugly, deformed humanoid, bellowing in a guttural tongue. It brandishes a piece of lab equipment shaped somewhat like a battle axe.\"\n\t.GSTR STR?3,\"If you insist.... Poof, you're dead!\"\n\t.GSTR STR?98,\"An interesting idea...\"\n\t.GSTR STR?132,\"Entrances to rooms lie to the east and west from this north-south hall.\"\n\t.GSTR STR?276,\"Needle-sharp mandibles nip at your arms!\"\n\t.GSTR STR?9,\"Ensign Blather pushes you roughly back toward your post.\"\n\t.GSTR STR?10,\"Ensign Blather blocks your way, snarling angrily.\"\n\t.GSTR STR?15,\"Ensign First Class Blather is standing before you, furiously scribbling demerits onto an oversized clipboard.\"\n\t.GSTR STR?59,\"smells\"\n\t.GSTR STR?93,\"Ooops! You seem to have transported yourself into an active sector of the computer. You are fried by powerful electric currents.\"\n\t.GSTR STR?62,\"Stunning. After days of surviving on a hostile, plague-ridden planet, solving several of Infocom's toughest puzzles, and coming within one move of completing Planetfall, you blow it all in one amazingly dumb input.\n\nThe doors close and the elevator rises quickly to the top of the shaft. The doors open, and the mutants, which were waiting impatiently in the ProjCon Office for just such an occurence, happily saunter in and begin munching.\"\n\t.GSTR STR?151,\"clear\"\n\t.GSTR STR?161,\"rubs his head affectionately against your shoulder\"\n\t.GSTR STR?215,\"\n\"\"Foor moor deetaald infoormaashun on xis tapik, konsult xe liibrereein foor xe aproopreeit spuulz. Tiip zeeroo tuu goo tuu aa hiiyur levul.\"\"\"\n\t.GSTR STR?23,\"inquires whether you are interested in a game of Bocci.\"\n\t.GSTR STR?240,\"\"\"Faaz Wun: xe kunstrukshun uv xe Kalamontee and Lawanda Kompleksiz. Faaz Tuu: mass kriioojenik freezeeng uv Residan popyuulaashun. Faaz Xree: siimultaaneeus monitureeng uv kriioojeniks wiil awtoomaatid reesurc iz konduktid bii inkrediblee soofistikaatid kumpyuuturiizd fasiliteez. Faaz Foor: reeviivul and inokyuulaashun uv xe popyuulaashun.\"\"\"\n\t.GSTR STR?292,\"Not a chance -- unless, of course, you don't mind walking into the gullet of a hungry microbe.\"\n\t.GSTR STR?94,\"Fat chance.\"\n\t.GSTR STR?97,\"Not bloody likely.\"\n\t.GSTR STR?113,\"On a small shelf is a large, unopened tin can. It has a plain white label which reads \"\"Spam and Egz.\"\"\"\n\t.GSTR STR?154,\"Your former companion, Floyd, is lying on the ground in a pool of oil.\"\n\t.GSTR STR?159,\"chants the death scene from \"\"Carmen\"\"\"\n\t.GSTR STR?171,\"whistles tunelessly\"\n\t.GSTR STR?195,\"On a low shelf is a translucent bottle with a small white label.\"\n\t.GSTR STR?199,\"It is a robot-sized doorway -- a bit too small for you.\"\n\t.GSTR STR?24,\"recites a plea for coexistence between your races.\"\n\t.GSTR STR?146,\"green\"\n\t.GSTR STR?165,\"wanders restlessly around the room\"\n\t.GSTR STR?272,\"\nDozens of hungry eyes fix on you as the mutations surround you and begin feasting.\"\n\t.GSTR STR?325,\"A giant plant, teeming with poisonous tentacles, is shuffling toward you on three leg-like stalks.\"\n\t.GSTR STR?31,\"\nThe ship rocks from the force of multiple explosions. The lights go out, and you feel a sudden drop in pressure accompanied by a loud hissing. Too bad you weren't in the escape pod...\"\n\t.GSTR STR?32,\"\nThe pod, whose automated controls were unfortunately designed by computer scientists, lands with a good deal of force. Your body sails across the pod until it is stopped by one of the sharper corners of the control panel.\"\n\t.GSTR STR?34,\"\nThe pod splits open, and water pours in.\"\n\t.GSTR STR?65,\"  \"\n\t.GSTR STR?186,\"Have you always had this desire to see melting flesh?\"\n\t.GSTR STR?311,\"\nThe microbe wraps several pseudopods around you and shoves you into its mucus-covered gullet. Digestive juices begin their work. The experience is not pleasant.\"\n\t.GSTR STR?4,\"You are in the Feinstein's brig. Graffiti cover the walls. The cell door to the south is locked.\"\n\t.GSTR STR?58,\"looks\"\n\t.GSTR STR?67,\"      \"\n\t.GSTR STR?68,\"        \"\n\t.GSTR STR?69,\"          \"\n\t.GSTR STR?100,\"You are momentarily disoriented as you enter the turbulent waters. Currents buffet you against the sharp rocks of an underwater cliff. A dim light filters down from above.\"\n\t.GSTR STR?134,\"A small room for storage. The exit is to the west.\"\n\t.GSTR STR?158,\"recalls the time he bruised his knee\"\n\t.GSTR STR?180,\"You are at the center of a wide, flat area atop the tower. A fence prevents you from approaching the perimeter, so your view is limited to cloud-filled sky. A large vehicle, severely weathered and topped with rotor blades, lies nearby. A spiral staircase leads down into the tower.\"\n\t.GSTR STR?190,\"You are in the middle of a long mechanical stairway. It is not running, and seems to be in disrepair.\"\n\t.GSTR STR?198,\"You are in a dimly lit room, filled with strange machines and wide storage cabinets, all locked. To the south, a narrow stairway leads upward. On the north wall of the room is a very small doorway.\"\n\t.GSTR STR?252,\"You are at the center of a long east-west hallway. A doorway, labelled \"\"PrajKon Awfis\"\", opens to the south.\"\n\t.GSTR STR?287,\"You are standing on a square plate of heavy metal. Above your head, parallel to the plate beneath you, is an identical metal plate. To the east is a wide, metallic strip.\"\n\t.GSTR STR?289,\"You are standing on a silicon filament, which looks to you like a wide metal highway. South of here, the filament makes a right angle and heads straight down, like a cliff overlooking a black void. The filament can be followed north, however. Station 384 lies westward.\"\n\t.GSTR STR?291,\"You are standing on a section of the strip with a bottomless void stretching out on both sides. The strip continues to the north and south.\"\n\t.GSTR STR?295,\"A small device, labelled \"\"Akmee Portabul Laazur\"\", is resting on one of the lower shelves.\"\n\t.GSTR STR?27,\"offers you a bit of celery.\"\n\t.GSTR STR?37,\"You can't go that way.\"\n\t.GSTR STR?46,\"You climb into the bed. It is soft and comfortable. After a few moments, a previously unseen panel opens, and a diagnostic robot comes wheeling out. It is very rusty and sways unsteadily, bumping into several pieces of infirmary equipment as it crosses the room. As the robot straps you to the bed, you notice some smoke curling from its cracks. Beeping happily, the robot injects you with all 347 serums and medicines it carries. The last thing you notice before you pass out is the robot preparing to saw your legs off.\"\n\t.GSTR STR?96,\"You can't be serious.\"\n\t.GSTR STR?196,\"\"\"Dizeez supreshun medisin -- eksperimentul\"\"\"\n\t.GSTR STR?206,\"You catch a glimpse of a small object nestled among the dust.\"\n\t.GSTR STR?229,\"\"\"Reekoordeengz uv awl impoortint kompoozishunz uv xe last fiiv hundrid yeerz ar lookaatid in xe liibrereez data banks.\"\"\"\n\t.GSTR STR?60,\"Plummet.\"\n\t.GSTR STR?26,\"remarks that all humans look alike to him.\"\n\t.GSTR STR?230,\"\"\"Awl maajur dizeezuz hav bin kyuuribul foor oovur aa senshuree. Xe deevelupmint uv kriioojeniks now alowz dokturz tuu put paashints in staasis until aa kyuur iz fownd. Avurij Residan liif ekspektinsee iz now 147 revooluushunz.\"\"\"\n\t.GSTR STR?310,\" The microbe, whipped into a rabid frenzy by the waves of heat from the pulsing laser, literally lunges at it. You jump back and, losing your balance, fall over the edge of the strip. The microbe, writhing madly, hurls itself after its prey. You and the microbe both plunge into the void below.\"\n\t.GSTR STR?51,\"...At last, the Feinstein has arrived at the historic Nebulon system. It's been five months since the last shore leave, and you're anxious for Planetfall. You and some other Ensigns Seventh Class enter the shuttle for surfaceside. Suddenly, you're alone on the shuttle, and it's tumbling out of control! It lands in the ocean and begins sinking! You try to clamber out, but you are stuck in a giant spider web. A giant spider crawls closer and closer...\"\n\t.GSTR STR?72,\" a transcript of interaction with PLANETFALL.\nPLANETFALL is a registered trademark of Infocom, Inc.\nCopyright (c) 1983 Infocom, Inc. All rights reserved.\n\"\n\t.GSTR STR?121,\"Lying at the bottom of a narrow crevice is a shiny object.\"\n\t.GSTR STR?148,\"gray\"\n\t.GSTR STR?193,\"Lying on one of the beds is a small red spool.\"\n\t.GSTR STR?200,\"Lying face down at the bottom of the stairs is a motionless robot. It appears to be damaged beyond repair.\"\n\t.GSTR STR?288,\"You feel the familiar wrenching of your innards, and find yourself in a vast room whose distant walls are rushing straight toward you...\n\"\n\t.GSTR STR?49,\"...Strangely, you wake to find yourself back home on Gallium. Even more strangely, you are only eight years old again. You are playing with your pet sponge-cat, Swanzo, on the edge of the pond in your backyard. Mom is hanging orange towels on the clothesline. Suddenly the school bully jumps out from behind a bush, grabs you, and pushes your head under the water. You try to scream, but cannot. You feel your life draining away...\"\n\t.GSTR STR?57,\"feels\"\n\t.GSTR STR?122,\"You get a brief (but much closer) view of the sharp and nasty rocks at the bottom of the rift.\"\n\t.GSTR STR?150,\"black\"\n\t.GSTR STR?156,\"absent-mindedly recites the first six hundred digits of pi\"\n\t.GSTR STR?164,\"absent-mindedly oils one of his joints\"\n\t.GSTR STR?216,\"\"\"Yuu hav reect xe loowist levul uv xe liibreree indeks. Pleez tiip zeeroo tuu goo tuu aa hiiyur levul. If yuu reekwiir asistins, kawl xe liibrereein.\"\"\"\n\n\t.ENDI\n"
  },
  {
    "path": "s3.zil",
    "content": "\"PLANETFALL for\n\t\t\t       PLANETFALL\n\t  (c) COPYRIGHT 1983 INFOCOM INC. ALL RIGHTS RESERVED\"\n\n<GC 0 T 5>\n<BLOAT 90000 0 0 3500 0 0 0 0 0 512>\n\n<SET REDEFINE T>\n\n<OR <GASSIGNED? ZILCH>\n    <SETG WBREAKS <STRING !\\\" !\\= !,WBREAKS>>>\n\n<DEFINE IFILE (STR \"OPTIONAL\" (FLOAD? <>) \"AUX\" (TIM <TIME>))\n\t<INSERT-FILE .STR .FLOAD?>>\n\n<PRINC \"Planetfall\n\n\">\n\n<COND (<GASSIGNED? PREDGEN>\n       <ID 0>)>\n\n<IFILE \"SYNTAX\" T>\n<ENDLOAD>\n<IFILE \"MISC\" T>\n<IFILE \"GLOBALS\" T>\n<IFILE \"PARSER\" T>\n<IFILE \"VERBS\" T>\n<IFILE \"COMPONE\" T>\n<IFILE \"COMPTWO\" T>\n\n<PROPDEF SIZE 5>\n<PROPDEF CAPACITY 0>\n<PROPDEF VALUE 0>\n\n<IMAGE 7><IMAGE 7><IMAGE 7>"
  },
  {
    "path": "syntax.zap",
    "content": "\n\t.ENDI\n"
  },
  {
    "path": "syntax.zil",
    "content": "\"SYNTAX for PLANETFALL\n(c) Copyright 1983 Infocom, Inc.  All Rights Reserved\"\n\n\"SUBTITLE VOCABULARY\"\n\n<BUZZ A AN THE IS ARE EQUALS ;= AND OF THEN ALL ONE BUT EXCEPT \\. \\, \\\" OUR>\n\n<SYNONYM WITH USING THROUGH THRU>\n<SYNONYM IN INSIDE INTO>\n<SYNONYM ALL BOTH>\n<SYNONYM ON ONTO>\n<SYNONYM OVER ABOVE>\n\n<SYNONYM NORTH N FORE FORWARD FOREWARD F>\n<SYNONYM SOUTH S AFT>\n<SYNONYM EAST E CW STARBOARD SB>\n<SYNONYM WEST W CCW PORT P>\n<SYNONYM DOWN D>\n<SYNONYM UP U>\n\n\\\f\n\n<SYNTAX BRIEF = V-BRIEF>\n\n<SYNTAX SUPER = V-SUPER-BRIEF>\n<SYNONYM SUPER SUPERBRIEF>\n\n<SYNTAX DIAGNOSE = V-DIAGNOSE>\n\n<SYNTAX INVENTORY = V-INVENTORY>\n<SYNONYM INVENTORY I>\n\n<SYNTAX QUIT = V-QUIT>\n<SYNONYM QUIT Q>\n\n<SYNTAX RESTAR = V-RESTART>\n\n<SYNTAX RESTOR = V-RESTORE>\n\n<SYNTAX SAVE = V-SAVE>\n\n<SYNTAX SCORE = V-SCORE>\n\n<SYNTAX SCRIPT = V-SCRIPT>\n\n<SYNTAX UNSCRIPT = V-UNSCRIPT>\n\n<SYNTAX $VERIFY = V-$VERIFY>\n<SYNTAX $VERIFY OBJECT = V-$VERIFY>\n\n<SYNTAX VERSION = V-VERSION>\n\n<SYNTAX VERBOSE = V-VERBOSE>\n\n<SYNTAX \\#RANDOM OBJECT = V-$RANDOM>\n\n<SYNTAX \\#COMMAND = V-$COMMAND>\n\n<SYNTAX \\#RECORD = V-$RECORD>\n\n<SYNTAX \\#UNRECORD = V-$UNRECORD>\n\n\\\f\n\n<SYNTAX AGAIN = V-AGAIN>\n<SYNONYM AGAIN G>\n\n<SYNTAX ANSWER = V-ANSWER>\n<SYNTAX ANSWER OBJECT = V-REPLY>\n<SYNONYM ANSWER REPLY>\n\n<SYNTAX APPLY OBJECT TO OBJECT = V-PUT PRE-PUT>\n\n<SYNTAX ATTACK OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) = V-ATTACK>\n<SYNTAX ATTACK OBJECT WITH OBJECT (HAVE) = V-ATTACK>\n<SYNONYM ATTACK FIGHT HURT INJURE HIT KILL MURDER SLAY DISPATCH>\n\n<SYNTAX BOARD OBJECT (FIND VEHBIT) (ON-GROUND IN-ROOM) = V-BOARD PRE-BOARD>\n\n<SYNTAX CLIMB = V-GO-UP>\n<SYNTAX CLIMB ON OBJECT (FIND CLIMBBIT) (ON-GROUND IN-ROOM) = V-CLIMB-ON>\n<SYNTAX CLIMB UP OBJECT (FIND RMUNGBIT) = V-CLIMB-UP>\n<SYNTAX CLIMB TO OBJECT = V-CLIMB-UP>\n<SYNTAX CLIMB WITH OBJECT = V-THROUGH>\n<SYNTAX CLIMB DOWN OBJECT (FIND CLIMBBIT) (ON-GROUND IN-ROOM) = V-CLIMB-DOWN>\n<SYNTAX CLIMB OBJECT (FIND CLIMBBIT) (ON-GROUND IN-ROOM) = V-CLIMB-FOO>\n<SYNTAX CLIMB IN OBJECT (FIND CLIMBBIT)(ON-GROUND IN-ROOM) = V-BOARD PRE-BOARD>\n\n<SYNTAX SIT = V-SIT>\n<SYNTAX SIT ON OBJECT (FIND VEHBIT) (ON-GROUND IN-ROOM) = V-CLIMB-ON>\n<SYNTAX SIT DOWN OBJECT (FIND RMUNGBIT) = V-SIT-DOWN>\n<SYNTAX SIT IN OBJECT (FIND VEHBIT) (ON-GROUND IN-ROOM) = V-BOARD PRE-BOARD>\n<SYNTAX SIT OBJECT (HELD MANY HAVE TAKE) IN OBJECT = V-PUT PRE-PUT>\n<SYNTAX SIT OBJECT (HELD MANY HAVE TAKE) UNDER OBJECT\n\t= V-PUT-UNDER PRE-PUT-UNDER>\n<SYNTAX SIT OBJECT (TAKE) OVER OBJECT = V-ATTRACT>\n<SYNTAX SIT OBJECT (TAKE) NEAR OBJECT = V-ATTRACT>\n<SYNTAX SIT OBJECT ACROSS OBJECT = V-SPAN>\n<SYNONYM SIT RECLINE LIE LAY>\n\n<SYNTAX STAND = V-STAND>\n<SYNTAX STAND UP OBJECT (FIND RMUNGBIT) = V-STAND>\n<SYNTAX STAND ON OBJECT = V-STAND-ON>\n<SYNONYM STAND>\n\n<SYNTAX CLOSE OBJECT (HELD CARRIED ON-GROUND IN-ROOM) = V-CLOSE>\n<SYNONYM CLOSE COLLAPSE FOLD SHORTEN>\n\n<SYNTAX CURSE = V-CURSE>\n<SYNONYM CURSE DAMN SHIT FUCK TROT KRIP MEGAKRIP TROTTING>\n\n<SYNTAX DISEMBARK OBJECT (FIND RMUNGBIT) (ON-GROUND IN-ROOM) = V-DISEMBARK>\n\n<SYNTAX DROP OBJECT (HELD MANY HAVE) = V-DROP>\n<SYNTAX DROP OBJECT (HELD MANY HAVE) DOWN OBJECT = V-PUT PRE-PUT>\n<SYNTAX DROP OBJECT (HELD MANY HAVE) IN OBJECT = V-PUT PRE-PUT>\n<SYNTAX DROP OBJECT (HELD MANY HAVE) ON OBJECT = V-PUT-ON PRE-PUT>\n<SYNONYM DROP RELEASE>\n\n<SYNTAX EAT OBJECT (FIND FOODBIT) (TAKE) = V-EAT>\n<SYNTAX EAT FROM OBJECT (TAKE) = V-EAT-FROM>\n<SYNONYM EAT DRINK SWALLOW>\n\n<SYNTAX ENTER = V-ENTER>\n<SYNTAX ENTER OBJECT = V-THROUGH>\n<SYNTAX EXIT = V-EXIT>\n<SYNTAX EXIT OBJECT = V-EXIT>\n\n<SYNTAX EXAMINE OBJECT (HELD CARRIED ON-GROUND IN-ROOM MANY)\n\t = V-EXAMINE PRE-EXAMINE>\n<SYNTAX EXAMINE IN OBJECT (HELD CARRIED IN-ROOM ON-GROUND MANY) \n\t\t= V-LOOK-INSIDE>\n<SYNTAX EXAMINE ON OBJECT (HELD CARRIED IN-ROOM ON-GROUND MANY)\n\t\t= V-LOOK-INSIDE>\n<SYNONYM EXAMINE DESCRIBE WHAT WHATS>\n\n<SYNTAX FIND OBJECT = V-FIND>\n<SYNONYM FIND WHERE SEEK SEE>\n\n<SYNTAX FIRE OBJECT WITH OBJECT (HELD) = V-SZAP PRE-SZAP>\n<SYNTAX FIRE OBJECT = V-ZAP PRE-ZAP>\n<SYNTAX FIRE AT OBJECT = V-ZAP PRE-ZAP>\n<SYNTAX FIRE OBJECT (HELD) AT OBJECT = V-ZAP PRE-ZAP>\n<SYNONYM FIRE ZAP BLAST SHOOT BURN>\n\n<SYNTAX FOLLOW OBJECT (FIND ACTORBIT) = V-FOLLOW>\n<SYNONYM FOLLOW PURSUE CHASE>\n\n<SYNTAX FLUSH OBJECT = V-FLUSH>\n\n<SYNTAX FLY = V-FLY>\n<SYNTAX FLY OBJECT = V-FLY>\n\n<SYNTAX GIVE OBJECT (MANY HELD HAVE) TO OBJECT (FIND ACTORBIT)\n        = V-GIVE PRE-GIVE>\n<SYNTAX GIVE OBJECT (FIND ACTORBIT) (ON-GROUND)\n\tOBJECT (MANY HELD HAVE) = V-SGIVE PRE-SGIVE>\n<SYNONYM GIVE HAND DONATE OFFER FEED>\n\n<SYNTAX HELLO = V-HELLO>\n<SYNTAX HELLO OBJECT = V-HELLO>\n<SYNONYM HELLO HI>\n\n<SYNTAX HELP = V-HELP>\n<SYNONYM HELP HINT HINTS>\n\n<SYNTAX JUMP = V-LEAP>\n<SYNTAX JUMP OVER OBJECT = V-LEAP>\n<SYNTAX JUMP ACROSS OBJECT = V-LEAP>\n<SYNTAX JUMP IN OBJECT = V-LEAP>\n<SYNTAX JUMP FROM OBJECT = V-LEAP>\n<SYNTAX JUMP OFF OBJECT = V-LEAP>\n<SYNONYM JUMP LEAP>\n\n<SYNTAX KICK OBJECT = V-KICK>\n\n<SYNTAX KISS OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) = V-KISS>\n\n<SYNTAX KNOCK AT OBJECT = V-KNOCK>\n<SYNTAX KNOCK ON OBJECT = V-KNOCK>\n<SYNTAX KNOCK DOWN OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) = V-ATTACK>\n<SYNONYM KNOCK RAP>\n\n<SYNTAX LEAVE = V-LEAVE>\n<SYNTAX LEAVE OBJECT = V-DROP>\n\n<SYNTAX LISTEN TO OBJECT = V-LISTEN>\n\n<SYNTAX LOCK OBJECT (ON-GROUND IN-ROOM) WITH OBJECT (HELD) = V-LOCK>\n\n<SYNTAX LOOK = V-LOOK>\n<SYNTAX LOOK OBJECT = V-LOOK-CRETIN>\n<SYNTAX LOOK AROUND OBJECT (FIND RMUNGBIT) = V-LOOK>\n<SYNTAX LOOK AT OBJECT (HELD CARRIED ON-GROUND IN-ROOM MANY)\n\t= V-EXAMINE PRE-EXAMINE>\n<SYNTAX LOOK ON OBJECT (HELD CARRIED ON-GROUND IN-ROOM MANY)\n\t= V-EXAMINE PRE-EXAMINE>\n<SYNTAX LOOK WITH OBJECT = V-LOOK-INSIDE>\n<SYNTAX LOOK UNDER OBJECT = V-LOOK-UNDER>\n<SYNTAX LOOK BEHIND OBJECT = V-LOOK-BEHIND>\n<SYNTAX LOOK IN OBJECT (HELD CARRIED ON-GROUND IN-ROOM MANY) = V-LOOK-INSIDE>\n<SYNTAX LOOK OUT OBJECT (HELD CARRIED ON-GROUND IN-ROOM MANY) = V-LOOK-INSIDE>\n<SYNTAX LOOK FOR OBJECT = V-FIND>\n<SYNTAX LOOK DOWN OBJECT (FIND RMUNGBIT) = V-LOOK-DOWN>\n<SYNONYM LOOK L STARE GAZE>\n\n<SYNTAX SEARCH OBJECT = V-SEARCH>\n<SYNTAX SEARCH IN OBJECT = V-SEARCH>\n<SYNTAX SEARCH FOR OBJECT = V-FIND>\n<SYNTAX SEARCH WITH OBJECT = V-SEARCH> ;\"THROUGH\"\n<SYNONYM SEARCH RUMMAGE SORT SIFT>\n\n<SYNTAX MOVE OBJECT (ON-GROUND IN-ROOM) = V-MOVE PRE-MOVE>\n<SYNTAX MOVE UP OBJECT = V-PUSH-UP>\n<SYNTAX MOVE DOWN OBJECT = V-PUSH-DOWN>\n\n<SYNTAX POINT AT OBJECT (ON-GROUND IN-ROOM) = V-POINT>\n<SYNTAX POINT TO OBJECT (ON-GROUND IN-ROOM) = V-POINT>\n<SYNTAX POINT OBJECT (HELD CARRIED HAVE) AT OBJECT (ON-GROUND IN-ROOM)\n\t= V-POINT>\n<SYNONYM POINT GESTURE AIM>\n\n<SYNTAX PULL OBJECT = V-PULL>\n<SYNTAX PULL DOWN OBJECT = V-PUSH-DOWN>\n<SYNTAX PULL UP OBJECT = V-PUSH-UP>\n<SYNTAX PULL ON OBJECT = V-PULL>\n<SYNTAX PULL OBJECT WITH OBJECT (TAKE) = V-ZATTRACT>\n<SYNONYM PULL TUG>\n\n<SYNTAX DESTROY OBJECT (ON-GROUND IN-ROOM HELD CARRIED) = V-MUNG>\n<SYNTAX DESTROY OBJECT (ON-GROUND IN-ROOM HELD CARRIED)\n\tWITH OBJECT (HAVE) = V-MUNG>\n<SYNTAX DESTROY DOWN OBJECT (ON-GROUND IN-ROOM HELD CARRIED) = V-MUNG>\n<SYNONYM DESTROY DAMAGE BREAK SMASH>\n\n<SYNTAX OPEN OBJECT (HELD CARRIED ON-GROUND IN-ROOM) = V-OPEN>\n<SYNTAX OPEN UP OBJECT (FIND DOORBIT)(HELD CARRIED ON-GROUND IN-ROOM) = V-OPEN>\n<SYNTAX OPEN OBJECT WITH OBJECT (HAVE) = V-OPEN-WITH>\n<SYNONYM OPEN EXTEND UNFOLD LENGTHEN>\n\n<SYNTAX PICK UP OBJECT (FIND TAKEBIT) (ON-GROUND MANY) = V-TAKE PRE-TAKE>\n<SYNTAX PICK UP OBJECT WITH OBJECT (TAKE) = V-ZATTRACT>\n\n<SYNTAX PLAY OBJECT = V-PLAY>\n<SYNTAX PLAY WITH OBJECT (FIND ACTORBIT) = V-PLAY-WITH>\n<SYNTAX PLAY OBJECT WITH OBJECT (FIND ACTORBIT) = V-PLAY> \n\n<SYNTAX PUSH OBJECT = V-PUSH>\n<SYNTAX PUSH ON OBJECT = V-PUSH>\n<SYNTAX PUSH OFF OBJECT = V-PUSH>\n<SYNTAX PUSH AGAINST OBJECT = V-PUSH>\n<SYNTAX PUSH UP OBJECT = V-PUSH-UP>\n<SYNTAX PUSH DOWN OBJECT = V-PUSH-DOWN>\n<SYNTAX PUSH OBJECT UNDER OBJECT = V-PUT-UNDER PRE-PUT-UNDER>\n<SYNONYM PUSH PRESS>\n\n<SYNTAX PUT OBJECT (HELD MANY HAVE TAKE) IN OBJECT = V-PUT PRE-PUT>\n<SYNTAX PUT OBJECT (HELD MANY) ON OBJECT = V-PUT-ON PRE-PUT>\n<SYNTAX PUT DOWN OBJECT (HELD MANY HAVE) = V-DROP>\n<SYNTAX PUT OBJECT (HELD MANY HAVE TAKE) UNDER OBJECT = V-PUT-UNDER PRE-PUT-UNDER> \n<SYNTAX PUT ON OBJECT (HAVE TAKE) = V-WEAR>\n<SYNTAX PUT OBJECT (TAKE) OVER OBJECT = V-ATTRACT>\n<SYNTAX PUT OBJECT (TAKE) NEAR OBJECT = V-ATTRACT>\n<SYNTAX PUT OBJECT ACROSS OBJECT = V-SPAN>\n<SYNTAX PUT OBJECT (HELD CARRIED HAVE) WITH OBJECT = V-SLIDE>\n<SYNTAX PUT OBJECT = V-INSERT>\n<SYNONYM PUT STUFF INSERT PLACE>\n\n<SYNTAX RAPE OBJECT (FIND ACTORBIT) = V-RAPE>\n<SYNONYM RAPE MOLEST>\n\n<SYNTAX REACH IN OBJECT (FIND CONTBIT) = V-REACH>\n<SYNTAX REACH FOR OBJECT = V-REACH-FOR>\n\n<SYNTAX READ OBJECT (FIND READBIT) (TAKE) = V-READ PRE-READ>\n<SYNONYM READ SKIM>\n\n<SYNTAX RUB OBJECT = V-RUB>\n<SYNTAX RUB OBJECT WITH OBJECT (TAKE) = V-ZATTRACT>\n<SYNTAX RUB OBJECT (TAKE) TO OBJECT = V-ATTRACT>\n<SYNONYM RUB TOUCH FEEL PAT PET>\n\n<SYNTAX SCRUB OBJECT = V-SCRUB>\n<SYNTAX SCRUB UP OBJECT = V-SCRUB>\n<SYNTAX SCRUB OBJECT WITH OBJECT (HAVE) = V-SCRUB>\n<SYNONYM SCRUB SWAB POLISH CLEAN SHINE MOP BRUSH>\n\n<SYNTAX SLEEP = V-SLEEP>\n\n<SYNTAX SHAKE OBJECT = V-SHAKE>\n<SYNTAX SHAKE OBJECT WITH OBJECT (FIND ACTORBIT) = V-SHAKE-WITH>\n\n<SYNTAX SLIDE OBJECT UNDER OBJECT = V-PUT-UNDER PRE-PUT-UNDER>\n<SYNTAX SLIDE OBJECT (HELD CARRIED HAVE) WITH OBJECT = V-SLIDE>\n<SYNTAX SLIDE OBJECT ACROSS OBJECT = V-SPAN>\n<SYNONYM SLIDE SWING>\n\n<SYNTAX SKIP = V-SKIP>\n<SYNONYM SKIP HOP>\n\n<SYNTAX SMELL OBJECT = V-SMELL>\n<SYNONYM SMELL SNIFF>\n\n<SYNTAX STEP ON OBJECT = V-STEP-ON>\n<SYNTAX STEP IN OBJECT = V-STEP-ON>\n\n<SYNTAX STRIKE OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) WITH\n\tOBJECT (HELD CARRIED ON-GROUND IN-ROOM HAVE) = V-ATTACK>\n<SYNTAX STRIKE OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) = V-ATTACK>\n\n<SYNTAX SWIM = V-SWIM>\n<SYNTAX SWIM OBJECT = V-SWIM-DIR>\n<SYNTAX SWIM TO OBJECT = V-SWIM-DIR>\n<SYNTAX SWIM IN OBJECT = V-SWIM>\n<SYNTAX SWIM UP OBJECT (FIND RMUNGBIT) = V-SWIM-UP>\n<SYNTAX SWIM DOWN OBJECT (FIND RMUNGBIT) = V-SWIM-DIR>\n<SYNONYM SWIM BATHE WADE>\n\n<SYNTAX TAKE OBJECT (FIND TAKEBIT) (ON-GROUND MANY) = V-TAKE PRE-TAKE>\n<SYNTAX TAKE IN OBJECT (FIND VEHBIT) (ON-GROUND IN-ROOM) = V-BOARD PRE-BOARD>\n<SYNTAX TAKE OUT OBJECT (FIND RMUNGBIT) (ON-GROUND IN-ROOM) = V-DISEMBARK>\n<SYNTAX TAKE ON OBJECT (FIND VEHBIT) (ON-GROUND IN-ROOM) = V-CLIMB-ON>\n<SYNTAX TAKE OBJECT (FIND TAKEBIT) (CARRIED IN-ROOM) OUT OBJECT\n\t= V-TAKE PRE-TAKE>\n<SYNTAX TAKE OBJECT (FIND TAKEBIT) (CARRIED IN-ROOM) OFF OBJECT\n\t= V-TAKE PRE-TAKE>\n<SYNTAX TAKE OBJECT (FIND TAKEBIT) (MANY) (IN-ROOM CARRIED)\n\tFROM OBJECT (ON-GROUND HELD) = V-TAKE PRE-TAKE>\n<SYNTAX TAKE OFF OBJECT (FIND WEARBIT) (HELD CARRIED MANY) = V-TAKE-OFF>\n<SYNTAX TAKE UP OBJECT (FIND RMUNGBIT) = V-STAND>\n<SYNTAX TAKE OBJECT (TAKE) OVER OBJECT = V-ATTRACT>\n<SYNTAX TAKE OBJECT (TAKE) NEAR OBJECT = V-ATTRACT>\n<SYNTAX TAKE OBJECT WITH OBJECT (TAKE) = V-ZATTRACT>\n<SYNONYM TAKE GET HOLD CARRY>\n\n<SYNTAX REMOVE OBJECT = V-REMOVE>\n<SYNTAX REMOVE OBJECT FROM OBJECT = V-TAKE PRE-TAKE>\n<SYNTAX REMOVE OBJECT WITH OBJECT (TAKE) = V-ZATTRACT>\n\n<SYNTAX TELL OBJECT (FIND ACTORBIT) (IN-ROOM) = V-TELL>\n<SYNTAX TELL OBJECT (FIND ACTORBIT) (IN-ROOM) FOR OBJECT = V-ASK-FOR>\n<SYNONYM TELL ASK>\n\n<SYNTAX SMILE AT OBJECT (FIND ACTORBIT) = V-SMILE>\n<SYNTAX SMILE = V-SMILE>\n<SYNONYM SMILE GRIN>\n\n<SYNTAX SALUTE OBJECT = V-SALUTE>\n\n<SYNTAX SAY TO OBJECT (FIND ACTORBIT) (IN-ROOM) = V-TALK>\n<SYNTAX SAY = V-SAY>\n<SYNONYM SAY TALK>\n\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) AT OBJECT (ON-GROUND IN-ROOM) \n\t= V-THROW>\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) WITH OBJECT (ON-GROUND IN-ROOM)\n\t= V-THROW>\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) OFF OBJECT = V-THROW-OFF>\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) IN OBJECT = V-PUT PRE-PUT>\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) ON OBJECT = V-PUT PRE-PUT>\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) OVER OBJECT = V-THROW-OFF>\n<SYNTAX THROW OBJECT (HELD CARRIED HAVE) = V-THROW>\n<SYNONYM THROW HURL CHUCK TOSS>\n\n<SYNTAX TURN OBJECT (HELD CARRIED ON-GROUND IN-ROOM)\n\tWITH OBJECT (ON-GROUND IN-ROOM HELD CARRIED HAVE) = V-TURN>\n<SYNTAX TURN ON OBJECT (FIND LIGHTBIT) (HELD CARRIED ON-GROUND IN-ROOM)\n        = V-LAMP-ON>\n<SYNTAX TURN OFF OBJECT (FIND LIGHTBIT) (HELD CARRIED ON-GROUND IN-ROOM)\n        = V-LAMP-OFF>\n<SYNTAX TURN OBJECT (ON-GROUND IN-ROOM) TO OBJECT = V-SET>\n<SYNTAX TURN OBJECT (ON-GROUND IN-ROOM) = V-SET>\n<SYNONYM TURN SET>\n\n<SYNTAX ACTIVATE OBJECT (FIND LIGHTBIT) = V-LAMP-ON>\n\n<SYNTAX TYPE OBJECT = V-TYPE>\n<SYNTAX TYPE IN OBJECT = V-TYPE>\n\n<SYNTAX UNLOCK OBJECT (ON-GROUND IN-ROOM) WITH\n\tOBJECT (FIND TOOLBIT) (HELD CARRIED ON-GROUND IN-ROOM TAKE)\n\t= V-UNLOCK>\n\n<SYNTAX WAIT = V-WAIT>\n<SYNONYM WAIT Z>\n\n<SYNTAX WAKE OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) = V-ALARM>\n<SYNTAX WAKE UP OBJECT (FIND ACTORBIT) (ON-GROUND IN-ROOM) = V-ALARM>\n<SYNONYM WAKE AWAKE SURPRISE STARTLE>\n\n<SYNTAX WALK OBJECT = V-WALK>\n<SYNTAX WALK IN OBJECT = V-THROUGH>\n<SYNTAX WALK WITH OBJECT = V-THROUGH>\n<SYNTAX WALK AROUND OBJECT = V-WALK-AROUND>\n<SYNTAX WALK UP OBJECT (FIND CLIMBBIT) (ON-GROUND IN-ROOM) = V-CLIMB-UP>\n<SYNTAX WALK DOWN OBJECT (FIND CLIMBBIT) (ON-GROUND IN-ROOM) = V-CLIMB-DOWN>\n<SYNTAX WALK TO OBJECT = V-WALK-TO>\n<SYNTAX WALK OUT OBJECT = V-EXIT>\n<SYNTAX WALK OBJECT (HELD CARRIED HAVE) WITH OBJECT = V-SLIDE>\n<SYNONYM WALK GO RUN PROCEED>\n\n<SYNTAX WAVE OBJECT (HELD CARRIED) = V-WAVE>\n<SYNTAX WAVE OBJECT (HELD CARRIED) AT OBJECT = V-WAVE>\n<SYNTAX WAVE OBJECT (TAKE) OVER OBJECT = V-ATTRACT>\n<SYNTAX WAVE OBJECT (TAKE) NEAR OBJECT = V-ATTRACT>\n<SYNONYM WAVE BRANDISH>\n\n<SYNTAX WEAR OBJECT (HAVE TAKE) = V-WEAR>\n<SYNONYM WEAR>\n\n<SYNTAX YELL = V-YELL>\n<SYNTAX YELL AT OBJECT (FIND ACTORBIT) = V-SCOLD>\n<SYNONYM YELL SCREAM SHOUT>\n\n<SYNTAX ZORK = V-ZORK>\n<SYNONYM ZORK SNEEZE>\n\n<SYNTAX YES = V-YES>\n<SYNTAX YES OBJECT = V-YES>\n<SYNONYM YES Y AFFIRMATIVE>\n\n<SYNTAX NO = V-NO>\n<SYNONYM NO NEGATIVE>\n\n<SYNTAX MAYBE = V-MAYBE>\n<SYNONYM MAYBE POSSIBLY DUNNO>\n\n%<COND (<NOT <GASSIGNED? PREDGEN>>\n\t<SYNTAX Z = V-ESCAPE>)>\n\n<SYNTAX POUR OBJECT = V-POUR>\n<SYNTAX POUR OBJECT OVER OBJECT = V-POUR>\n<SYNTAX POUR OBJECT ON OBJECT = V-POUR>\n<SYNTAX POUR OBJECT OUT OBJECT = V-POUR>\n<SYNTAX POUR OBJECT IN OBJECT = V-POUR>\n<SYNONYM POUR SPILL>\n\n<SYNTAX EMPTY OBJECT (HAVE) = V-EMPTY>\n<SYNTAX EMPTY OBJECT (HAVE) IN OBJECT = V-EMPTY>\n\n<SYNTAX ATTRACT OBJECT WITH OBJECT (TAKE) = V-ZATTRACT>\n\n<SYNTAX FIX OBJECT = V-FIX-IT>\n<SYNONYM FIX REPAIR>\n\n<SYNTAX OIL OBJECT = V-OIL>\n<SYNTAX OIL OBJECT WITH OBJECT (HAVE) = V-OIL>\n<SYNONYM OIL LUBRICATE>\n\n<SYNTAX SHOW OBJECT (HAVE) TO OBJECT (FIND ACTORBIT) = V-SHOW>\n\n<SYNTAX TASTE OBJECT = V-TASTE>\n\n<SYNTAX ESCAPE = V-ZESCAPE>\n\n<SYNTAX TIME = V-TIME>\n<SYNONYM TIME T>\n\n<SYNTAX SCOLD OBJECT (FIND ACTORBIT) = V-SCOLD>\n\n\f \n\n;\"debugging and game-testing features\"\n\n;<SYNTAX $CRAG = V-CRAG>\n\n;<SYNTAX $FORK = V-FORK>\n\n;<SYNTAX $CARDS = V-CARDS>\n\n;<SYNTAX $BOOTH = V-BOOTH>\n\n;<SYNTAX $FIX = V-FIX>"
  },
  {
    "path": "verbs.zabstr",
    "content": "\n<GLOBAL VERBOSE <> %<> WORD> \n<GLOBAL SUPER-BRIEF <> %<> WORD> \n<DEFINE-ROUTINE V-VERBOSE> \n<DEFINE-ROUTINE V-BRIEF> \n<DEFINE-ROUTINE V-SUPER-BRIEF> \n<DEFINE-ROUTINE V-LOOK> \n<DEFINE-ROUTINE V-LOOK-CRETIN> \n<DEFINE-ROUTINE V-FIRST-LOOK> \n<DEFINE-ROUTINE PRE-EXAMINE> \n<DEFINE-ROUTINE V-EXAMINE> \n<GLOBAL LIT <> %<> WORD> \n<DEFINE-ROUTINE DESCRIBE-ROOM> \n<DEFINE-ROUTINE DESCRIBE-OBJECTS> \n<DEFINE-ROUTINE DESCRIBE-OBJECT> \n<DEFINE-ROUTINE PRINT-CONT> \n<DEFINE-ROUTINE FIRSTER> \n<GLOBAL INTERNAL-MOVES 0 %<> WORD> \n<GLOBAL SCORE 0 %<> WORD> \n<GLOBAL DAY 1 %<> WORD> \n<DEFINE-ROUTINE SCORE-OBJ> \n<DEFINE-ROUTINE V-SCORE> \n<DEFINE-ROUTINE FINISH> \n<DEFINE-ROUTINE V-QUIT> \n<DEFINE-ROUTINE YES?> \n<DEFINE-ROUTINE V-VERSION> \n<DEFINE-ROUTINE V-AGAIN> \n<DEFINE-ROUTINE JIGS-UP> \n<DEFINE-ROUTINE V-RESTORE> \n<DEFINE-ROUTINE V-SAVE> \n<DEFINE-ROUTINE V-RESTART> \n<CONSTANT REXIT 0> \n<CONSTANT UEXIT 1> \n<CONSTANT NEXIT 2> \n<CONSTANT FEXIT 3> \n<CONSTANT CEXIT 4> \n<CONSTANT DEXIT 5> \n<CONSTANT NEXITSTR 0> \n<CONSTANT FEXITFCN 0> \n<CONSTANT CEXITFLAG 1> \n<CONSTANT CEXITSTR 1> \n<CONSTANT DEXITOBJ 1> \n<CONSTANT DEXITSTR 1> \n<DEFINE-ROUTINE V-WALK-AROUND> \n<DEFINE-ROUTINE V-WALK-TO> \n<DEFINE-ROUTINE V-WALK> \n<DEFINE-ROUTINE V-INVENTORY> \n<GLOBAL INDENTS <PTABLE \"\" \"  \" \"    \" \"      \" \"        \" \"          \"> %<>\nWORD> \n<DEFINE-ROUTINE PRE-TAKE> \n<DEFINE-ROUTINE V-TAKE> \n<GLOBAL FUMBLE-NUMBER 7 %<> WORD> \n<GLOBAL FUMBLE-PROB 8 %<> WORD> \n<DEFINE-ROUTINE TRYTAKE> \n<DEFINE-ROUTINE ITAKE> \n<DEFINE-ROUTINE PRE-PUT> \n<DEFINE-ROUTINE V-PUT> \n<DEFINE-ROUTINE V-SLIDE> \n<DEFINE-ROUTINE PRE-GIVE> \n<DEFINE-ROUTINE PRE-SGIVE> \n<DEFINE-ROUTINE V-GIVE> \n<DEFINE-ROUTINE V-SGIVE> \n<DEFINE-ROUTINE V-DROP> \n<DEFINE-ROUTINE V-THROW> \n<DEFINE-ROUTINE IDROP> \n<DEFINE-ROUTINE V-OPEN> \n<DEFINE-ROUTINE V-OPEN-WITH> \n<DEFINE-ROUTINE PRINT-CONTENTS> \n<DEFINE-ROUTINE V-CLOSE> \n<DEFINE-ROUTINE CCOUNT> \n<DEFINE-ROUTINE WEIGHT> \n<GLOBAL COPR-NOTICE\n\" a transcript of interaction with PLANETFALL.|\nPLANETFALL is a registered trademark of Infocom, Inc.|\nCopyright (c) 1983 Infocom, Inc.  All rights reserved.|\" %<> WORD> \n<DEFINE-ROUTINE V-SCRIPT> \n<DEFINE-ROUTINE V-UNSCRIPT> \n<DEFINE-ROUTINE PRE-MOVE> \n<DEFINE-ROUTINE V-MOVE> \n<DEFINE-ROUTINE V-LAMP-ON> \n<DEFINE-ROUTINE V-LAMP-OFF> \n<DEFINE-ROUTINE V-WAIT> \n<DEFINE-ROUTINE PRE-BOARD> \n<DEFINE-ROUTINE V-BOARD> \n<DEFINE-ROUTINE V-DISEMBARK> \n<DEFINE-ROUTINE OWN-FEET> \n<DEFINE-ROUTINE V-STAND> \n<DEFINE-ROUTINE GOTO> \n<DEFINE-ROUTINE V-EAT> \n<DEFINE-ROUTINE V-EAT-FROM> \n<DEFINE-ROUTINE V-CURSE> \n<DEFINE-ROUTINE V-LISTEN> \n<DEFINE-ROUTINE V-FOLLOW> \n<DEFINE-ROUTINE V-LEAP> \n<DEFINE-ROUTINE V-SKIP> \n<DEFINE-ROUTINE V-LEAVE> \n<DEFINE-ROUTINE V-HELLO> \n<GLOBAL HELLOS <PLTABLE \"Hello.\" \"Nice weather we're having.\" \"Goodbye.\"> %<>\nWORD> \n<DEFINE-ROUTINE V-HELP> \n<GLOBAL WHEEEEE <PLTABLE\n\"You've spent too much time among the Leaping Loon-toads of Leonia.\"\n\"Having fun?\" \"Wheeeeeee!!!\"> %<> WORD> \n<DEFINE-ROUTINE PRE-READ> \n<DEFINE-ROUTINE V-READ> \n<DEFINE-ROUTINE V-LOOK-UNDER> \n<DEFINE-ROUTINE V-LOOK-BEHIND> \n<DEFINE-ROUTINE V-LOOK-INSIDE> \n<DEFINE-ROUTINE SEE-INSIDE?> \n<DEFINE-ROUTINE V-LOOK-DOWN> \n<DEFINE-ROUTINE V-TURN> \n<DEFINE-ROUTINE V-LOCK> \n<DEFINE-ROUTINE V-UNLOCK> \n<DEFINE-ROUTINE V-ATTACK> \n<DEFINE-ROUTINE V-KICK> \n<DEFINE-ROUTINE V-WAVE> \n<DEFINE-ROUTINE V-RUB> \n<DEFINE-ROUTINE V-PUSH> \n<DEFINE-ROUTINE NO-BUTTON> \n<DEFINE-ROUTINE V-PUSH-UP> \n<DEFINE-ROUTINE V-PUSH-DOWN> \n<DEFINE-ROUTINE V-PULL> \n<DEFINE-ROUTINE V-MUNG> \n<DEFINE-ROUTINE HACK-HACK> \n<GLOBAL HO-HUM <PLTABLE \" isn't notably helpful.\" \" has no effect.\"\n\" is as worthwhile as cleaning a Grotch cage.\"> %<> WORD> \n<DEFINE-ROUTINE WORD-TYPE> \n<DEFINE-ROUTINE V-KNOCK> \n<DEFINE-ROUTINE V-YELL> \n<DEFINE-ROUTINE BATTERY-FALLS> \n<DEFINE-ROUTINE V-SHAKE> \n<DEFINE-ROUTINE V-SHAKE-WITH> \n<DEFINE-ROUTINE V-SMELL> \n<DEFINE-ROUTINE GLOBAL-IN?> \n<DEFINE-ROUTINE V-SWIM> \n<DEFINE-ROUTINE V-SWIM-DIR> \n<DEFINE-ROUTINE V-SWIM-UP> \n<DEFINE-ROUTINE V-ALARM> \n<DEFINE-ROUTINE V-ZORK> \n<DEFINE-ROUTINE V-SIT> \n<DEFINE-ROUTINE V-SIT-DOWN> \n<DEFINE-ROUTINE V-GO-UP> \n<DEFINE-ROUTINE V-CLIMB-ON> \n<DEFINE-ROUTINE V-CLIMB-FOO> \n<DEFINE-ROUTINE V-CLIMB-UP> \n<DEFINE-ROUTINE V-CLIMB-DOWN> \n<DEFINE-ROUTINE PRE-PUT-UNDER> \n<DEFINE-ROUTINE V-PUT-UNDER> \n<DEFINE-ROUTINE V-ENTER> \n<DEFINE-ROUTINE V-EXIT> \n<DEFINE-ROUTINE V-SEARCH> \n<DEFINE-ROUTINE V-FIND> \n<DEFINE-ROUTINE V-TELL> \n<DEFINE-ROUTINE V-ASK-FOR> \n<DEFINE-ROUTINE V-SAY> \n<DEFINE-ROUTINE V-TALK> \n<DEFINE-ROUTINE V-ANSWER> \n<DEFINE-ROUTINE V-REPLY> \n<DEFINE-ROUTINE V-KISS> \n<DEFINE-ROUTINE V-RAPE> \n<DEFINE-ROUTINE V-DIAGNOSE> \n<DEFINE-ROUTINE V-WEAR> \n<DEFINE-ROUTINE V-REMOVE> \n<DEFINE-ROUTINE V-TAKE-OFF> \n<DEFINE-ROUTINE V-STEP-ON> \n<DEFINE-ROUTINE V-PUT-ON> \n<DEFINE-ROUTINE V-NO> \n<DEFINE-ROUTINE V-YES> \n<DEFINE-ROUTINE V-MAYBE> \n<DEFINE-ROUTINE V-POINT> \n<DEFINE-ROUTINE V-SET> \n<DEFINE-ROUTINE V-$VERIFY> \n<CONSTANT SERIAL 0> \n<DEFINE-ROUTINE V-$COMMAND> \n<DEFINE-ROUTINE V-$RANDOM> \n<CONSTANT D-RECORD-ON 4> \n<CONSTANT D-RECORD-OFF -4> \n<DEFINE-ROUTINE V-$RECORD> \n<DEFINE-ROUTINE V-$UNRECORD> \n<DEFINE-ROUTINE V-STAND-ON> \n<DEFINE-ROUTINE V-REACH> \n<DEFINE-ROUTINE V-REACH-FOR> \n<DEFINE-ROUTINE DO-WALK> \n<DEFINE-ROUTINE V-FLUSH> \n<DEFINE-ROUTINE V-FLY> \n<DEFINE-ROUTINE V-SMILE> \n<DEFINE-ROUTINE V-SALUTE> \n<DEFINE-ROUTINE V-ATTRACT> \n<DEFINE-ROUTINE V-ZATTRACT> \n<DEFINE-ROUTINE V-SPAN> \n<DEFINE-ROUTINE NUMBERS-ONLY> \n<DEFINE-ROUTINE V-TYPE> \n<DEFINE-ROUTINE PRE-SZAP> \n<DEFINE-ROUTINE PRE-ZAP> \n<DEFINE-ROUTINE V-ZAP> \n<DEFINE-ROUTINE V-SZAP> \n<DEFINE-ROUTINE V-SCRUB> \n<DEFINE-ROUTINE V-POUR> \n<DEFINE-ROUTINE V-EMPTY> \n<DEFINE-ROUTINE V-THROW-OFF> \n<DEFINE-ROUTINE V-SLEEP> \n<DEFINE-ROUTINE V-FIX-IT> \n<DEFINE-ROUTINE V-OIL> \n<DEFINE-ROUTINE V-SHOW> \n<DEFINE-ROUTINE V-INSERT> \n<DEFINE-ROUTINE V-TASTE> \n<DEFINE-ROUTINE V-ZESCAPE> \n<DEFINE-ROUTINE V-TIME> \n<DEFINE-ROUTINE V-PLAY> \n<DEFINE-ROUTINE V-PLAY-WITH> \n<DEFINE-ROUTINE V-SCOLD> \n<DEFINE-ROUTINE ROB> \n<GLOBAL YUKS <PLTABLE \"Fat chance.\" \"A valiant attempt.\"\n\"You can't be serious.\" \"Not bloody likely.\" \"An interesting idea...\"\n\"What a concept!\"> %<> WORD> \n<DEFINE-ROUTINE THIS-IS-IT> \n<DEFINE-ROUTINE ACCESSIBLE?> \n<DEFINE-ROUTINE VISIBLE?> \n<DEFINE-ROUTINE A-AN> \n<DEFINE-ROUTINE ALREADY> \n<DEFINE-ROUTINE NOT-HOLDING> \n<DEFINE-ROUTINE TAKE-IT-OFF> \n<DEFINE-ROUTINE ANYMORE> \n<DEFINE-ROUTINE FIXED-FONT-ON> \n<DEFINE-ROUTINE FIXED-FONT-OFF> "
  },
  {
    "path": "verbs.zap",
    "content": "\n\n\t.FUNCT\tV-VERBOSE\n\tSET\t'VERBOSE,TRUE-VALUE\n\tSET\t'SUPER-BRIEF,FALSE-VALUE\n\tPRINTI\t\"Maximum verbosity.\"\n\tCRLF\t\n\tCRLF\t\n\tCALL\tV-LOOK\n\tRSTACK\t\n\n\n\t.FUNCT\tV-BRIEF\n\tSET\t'VERBOSE,FALSE-VALUE\n\tSET\t'SUPER-BRIEF,FALSE-VALUE\n\tPRINTR\t\"Brief descriptions.\"\n\n\n\t.FUNCT\tV-SUPER-BRIEF\n\tSET\t'SUPER-BRIEF,TRUE-VALUE\n\tPRINTR\t\"Super-brief descriptions.\"\n\n\n\t.FUNCT\tV-LOOK\n\tSET\t'C-ELAPSED,9\n\tCALL\tDESCRIBE-ROOM,TRUE-VALUE\n\tZERO?\tSTACK /FALSE\n\tCALL\tDESCRIBE-OBJECTS,TRUE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tV-LOOK-CRETIN\n\tPRINTR\t\"This isn't a primitive two-word-parser adventure game. If you want to look AT that object, please say so.\"\n\n\n\t.FUNCT\tV-FIRST-LOOK\n\tCALL\tDESCRIBE-ROOM\n\tZERO?\tSTACK /FALSE\n\tZERO?\tSUPER-BRIEF \\FALSE\n\tCALL\tDESCRIBE-OBJECTS\n\tRSTACK\t\n\n\n\t.FUNCT\tPRE-EXAMINE\n\tCALL\tHERE?,PRSO\n\tZERO?\tSTACK \\FALSE\n\tIN?\tPRSO,GLOBAL-OBJECTS /FALSE\n\tEQUAL?\tPRSO,PSEUDO-OBJECT /FALSE\n\tIN?\tPRSO,LOCAL-GLOBALS \\?PRD8\n\tCALL\tGLOBAL-IN?,PRSO,HERE\n\tZERO?\tSTACK \\FALSE\n?PRD8:\tEQUAL?\tPRSO,GRUE /FALSE\n\tPRINTI\t\"You can't see any\"\n\tCALL\tPRSO-PRINT\n\tPRINTR\t\" here!\"\n\n\n\t.FUNCT\tV-EXAMINE\n\tSET\t'C-ELAPSED,32\n\tGETP\tPRSO,P?TEXT\n\tZERO?\tSTACK /?CCL3\n\tGETP\tPRSO,P?TEXT\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tFSET?\tPRSO,DOORBIT \\?CCL5\n\tCALL\tV-LOOK-INSIDE\n\tRSTACK\t\n?CCL5:\tFSET?\tPRSO,CONTBIT \\?CCL7\n\tFSET?\tPRSO,OPENBIT \\?CCL10\n\tCALL\tV-LOOK-INSIDE\n\tRSTACK\t\n?CCL10:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is closed.\"\n?CCL7:\tPRINTI\t\"I see nothing special about the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tDESCRIBE-ROOM,LOOK?=0,V?,STR,AV\n\tZERO?\tLOOK? /?PRD3\n\tSET\t'V?,LOOK?\n\tJUMP\t?PEN1\n?PRD3:\tSET\t'V?,VERBOSE\n?PEN1:\tZERO?\tLIT \\?CND4\n\tPRINTI\t\"It is pitch black. You might be eaten by a grue.\"\n\tCRLF\t\n\tEQUAL?\tHERE,TRANSPORTATION-SUPPLY \\FALSE\n\tPRINTI\t\"There is light to the south.\"\n\tCRLF\t\n\tRFALSE\t\n?CND4:\tFSET?\tHERE,TOUCHBIT /?CND8\n\tFSET\tHERE,TOUCHBIT\n\tSET\t'V?,TRUE-VALUE\n?CND8:\tIN?\tHERE,ROOMS \\?CND10\n\tPRINTD\tHERE\n\tLOC\tADVENTURER\n\tFSET?\tSTACK,VEHBIT \\?CND12\n\tPRINTI\t\", in the \"\n\tLOC\tADVENTURER\n\tPRINTD\tSTACK\n?CND12:\tCRLF\t\n?CND10:\tZERO?\tLOOK? \\?CCL15\n\tZERO?\tSUPER-BRIEF \\TRUE\n?CCL15:\tLOC\tADVENTURER >AV\n\tZERO?\tV? /?CCL20\n\tGETP\tHERE,P?ACTION\n\tCALL\tSTACK,M-LOOK\n\tZERO?\tSTACK \\TRUE\n?CCL20:\tZERO?\tV? /?CCL24\n\tGETP\tHERE,P?LDESC >STR\n\tZERO?\tSTR /?CCL24\n\tPRINT\tSTR\n\tCRLF\t\n\tJUMP\t?CND18\n?CCL24:\tGETP\tHERE,P?ACTION\n\tCALL\tSTACK,M-FLASH\n?CND18:\tEQUAL?\tHERE,AV /TRUE\n\tFSET?\tAV,VEHBIT \\TRUE\n\tGETP\tAV,P?ACTION\n\tCALL\tSTACK,M-LOOK\n\tRTRUE\t\n\n\n\t.FUNCT\tDESCRIBE-OBJECTS,V?=0\n\tZERO?\tLIT /?CCL3\n\tFIRST?\tHERE \\FALSE\n\tZERO?\tV? /?PRD9\n\tSET\t'V?,V?\n\tJUMP\t?PEN7\n?PRD9:\tSET\t'V?,VERBOSE\n?PEN7:\tCALL\tPRINT-CONT,HERE,V?,-1\n\tRSTACK\t\n?CCL3:\tPRINTR\t\"You can't see anything in the dark.\"\n\n\n\t.FUNCT\tDESCRIBE-OBJECT,OBJ,V?,LEVEL,STR=0,AV\n\tZERO?\tLEVEL \\?CCL3\n\tGETP\tOBJ,P?DESCFCN\n\tCALL\tSTACK,M-OBJDESC\n\tZERO?\tSTACK \\TRUE\n?CCL3:\tEQUAL?\tOBJ,SPOUT-PLACED /TRUE\n\tZERO?\tLEVEL \\?CCL9\n\tFSET?\tOBJ,TOUCHBIT /?PRD13\n\tGETP\tOBJ,P?FDESC >STR\n\tZERO?\tSTR \\?CTR8\n?PRD13:\tGETP\tOBJ,P?LDESC >STR\n\tZERO?\tSTR /?CCL9\n?CTR8:\tPRINT\tSTR\n\tJUMP\t?CND1\n?CCL9:\tZERO?\tLEVEL \\?CCL17\n\tPRINTI\t\"There is \"\n\tFSET?\tOBJ,VOWELBIT \\?CCL21\n\tPRINTI\t\"an \"\n\tJUMP\t?CND19\n?CCL21:\tPRINTI\t\"a \"\n?CND19:\tPRINTD\tOBJ\n\tPRINTI\t\" here.\"\n\tJUMP\t?CND1\n?CCL17:\tGET\tINDENTS,LEVEL\n\tPRINT\tSTACK\n\tFSET?\tOBJ,VOWELBIT \\?CCL24\n\tPRINTI\t\"An \"\n\tJUMP\t?CND22\n?CCL24:\tPRINTI\t\"A \"\n?CND22:\tPRINTD\tOBJ\n\tFSET?\tOBJ,WORNBIT \\?CND1\n\tPRINTI\t\" (being worn)\"\n?CND1:\tZERO?\tLEVEL \\?CND27\n\tLOC\tADVENTURER >AV\n\tZERO?\tAV /?CND27\n\tFSET?\tAV,VEHBIT \\?CND27\n\tPRINTI\t\" (outside the \"\n\tPRINTD\tAV\n\tPRINTC\t41\n?CND27:\tCRLF\t\n\tCALL\tSEE-INSIDE?,OBJ\n\tZERO?\tSTACK /FALSE\n\tFIRST?\tOBJ \\FALSE\n\tCALL\tPRINT-CONT,OBJ,V?,LEVEL\n\tRSTACK\t\n\n\n\t.FUNCT\tPRINT-CONT,OBJ,V?=0,LEVEL=0,Y,1ST?,AV,STR,PV?=0,INV?=0\n\tFIRST?\tOBJ >Y \\TRUE\n\tLOC\tADVENTURER >AV\n\tZERO?\tAV /?CCL5\n\tFSET?\tAV,VEHBIT /?CND3\n?CCL5:\tSET\t'AV,FALSE-VALUE\n?CND3:\tSET\t'1ST?,TRUE-VALUE\n\tLOC\tOBJ\n\tEQUAL?\tADVENTURER,OBJ,STACK \\?PRG11\n\tSET\t'INV?,TRUE-VALUE\n\tFIRST?\tOBJ >Y /?PRG35\n?PRG35:\tZERO?\tY \\?CCL39\n\tZERO?\tPV? /?CND40\n\tZERO?\tAV /?CND40\n\tFIRST?\tAV \\?CND40\n\tCALL\tPRINT-CONT,AV,V?,LEVEL\n?CND40:\tZERO?\t1ST? /TRUE\n\tRFALSE\t\n?PRG11:\tZERO?\tY \\?CCL15\n\tZERO?\t1ST? /TRUE\n\tRFALSE\t\n?CCL15:\tEQUAL?\tY,AV \\?CCL20\n\tSET\t'PV?,TRUE-VALUE\n\tJUMP\t?CND13\n?CCL20:\tEQUAL?\tY,WINNER /?CND13\n\tFSET?\tY,INVISIBLE /?CND13\n\tFSET?\tY,TOUCHBIT /?CND13\n\tGETP\tY,P?FDESC >STR\n\tZERO?\tSTR /?CND13\n\tFSET?\tY,NDESCBIT /?CND26\n\tPRINT\tSTR\n\tCRLF\t\n?CND26:\tCALL\tSEE-INSIDE?,Y\n\tZERO?\tSTACK /?CND13\n\tLOC\tY\n\tGETP\tSTACK,P?DESCFCN\n\tZERO?\tSTACK \\?CND13\n\tFIRST?\tY \\?CND13\n\tCALL\tPRINT-CONT,Y,V?,0\n?CND13:\tNEXT?\tY >Y /?PRG11\n\tJUMP\t?PRG11\n?CCL39:\tEQUAL?\tY,AV,ADVENTURER /?CND37\n\tFSET?\tY,INVISIBLE /?CND37\n\tZERO?\tINV? \\?CCL49\n\tFSET?\tY,TOUCHBIT /?CCL49\n\tGETP\tY,P?FDESC\n\tZERO?\tSTACK \\?CND37\n?CCL49:\tFSET?\tY,NDESCBIT /?CCL57\n\tZERO?\t1ST? /?CND58\n\tCALL\tFIRSTER,OBJ,LEVEL\n\tZERO?\tSTACK /?CND60\n\tLESS?\tLEVEL,0 \\?CND60\n\tSET\t'LEVEL,0\n?CND60:\tINC\t'LEVEL\n\tSET\t'1ST?,FALSE-VALUE\n?CND58:\tCALL\tDESCRIBE-OBJECT,Y,V?,LEVEL\n\tJUMP\t?CND37\n?CCL57:\tFIRST?\tY \\?CND37\n\tCALL\tSEE-INSIDE?,Y\n\tZERO?\tSTACK /?CND37\n\tCALL\tPRINT-CONT,Y,V?,LEVEL\n?CND37:\tNEXT?\tY >Y /?PRG35\n\tJUMP\t?PRG35\n\n\n\t.FUNCT\tFIRSTER,OBJ,LEVEL\n\tEQUAL?\tOBJ,ADVENTURER \\?CCL3\n\tPRINTR\t\"You are carrying:\"\n?CCL3:\tIN?\tOBJ,ROOMS /FALSE\n\tGRTR?\tLEVEL,0 \\?CND6\n\tGET\tINDENTS,LEVEL\n\tPRINT\tSTACK\n?CND6:\tFSET?\tOBJ,SURFACEBIT \\?CCL10\n\tPRINTI\t\"Sitting on the \"\n\tPRINTD\tOBJ\n\tPRINTR\t\" is:\"\n?CCL10:\tFSET?\tOBJ,ACTORBIT \\?CCL12\n\tPRINTI\t\"The \"\n\tPRINTD\tOBJ\n\tPRINTR\t\" is holding:\"\n?CCL12:\tPRINTI\t\"The \"\n\tPRINTD\tOBJ\n\tPRINTR\t\" contains:\"\n\n\n\t.FUNCT\tSCORE-OBJ,OBJ\n\tGETP\tOBJ,P?VALUE\n\tGRTR?\tSTACK,0 \\FALSE\n\tFSET\tOBJ,TOUCHBIT\n\tGETP\tOBJ,P?VALUE\n\tADD\tSCORE,STACK >SCORE\n\tPUTP\tOBJ,P?VALUE,0\n\tRTRUE\t\n\n\n\t.FUNCT\tV-SCORE,ASK?=1\n\tPRINTI\t\"Your score \"\n\tZERO?\tASK? /?CCL3\n\tPRINTI\t\"would be \"\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"is \"\n?CND1:\tPRINTN\tSCORE\n\tPRINTI\t\" (out of 80 points). It is Day \"\n\tPRINTN\tDAY\n\tPRINTI\t\" of your adventure. Current Galactic Standard Time \"\n\tIN?\tCHRONOMETER,ADVENTURER \\?CCL6\n\tPRINTI\t\"(adjusted to your local day-cycle) is \"\n\tFSET?\tCHRONOMETER,MUNGEDBIT \\?CCL9\n\tPRINTN\tMUNGED-TIME\n\tJUMP\t?CND4\n?CCL9:\tPRINTN\tINTERNAL-MOVES\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"is impossible to determine, since you're not wearing your chronometer\"\n?CND4:\tPRINTC\t46\n\tCRLF\t\n\tPRINTI\t\"This score gives you the rank of \"\n\tEQUAL?\tSCORE,80 \\?CCL12\n\tPRINTI\t\"Galactic Overlord\"\n\tJUMP\t?CND10\n?CCL12:\tGRTR?\tSCORE,72 \\?CCL14\n\tPRINTI\t\"Cluster Admiral\"\n\tJUMP\t?CND10\n?CCL14:\tGRTR?\tSCORE,64 \\?CCL16\n\tPRINTI\t\"System Captain\"\n\tJUMP\t?CND10\n?CCL16:\tGRTR?\tSCORE,48 \\?CCL18\n\tPRINTI\t\"Planetary Commodore\"\n\tJUMP\t?CND10\n?CCL18:\tGRTR?\tSCORE,36 \\?CCL20\n\tPRINTI\t\"Lieutenant\"\n\tJUMP\t?CND10\n?CCL20:\tGRTR?\tSCORE,24 \\?CCL22\n\tPRINTI\t\"Ensign First Class\"\n\tJUMP\t?CND10\n?CCL22:\tGRTR?\tSCORE,12 \\?CCL24\n\tPRINTI\t\"Space Cadet\"\n\tJUMP\t?CND10\n?CCL24:\tPRINTI\t\"Beginner\"\n?CND10:\tPRINTC\t46\n\tCRLF\t\n\tRETURN\tSCORE\n\n\n\t.FUNCT\tFINISH,DIED,REPEATING=0\n\tCRLF\t\n\tZERO?\tREPEATING \\?CND1\n\tCALL\tV-SCORE\n\tZERO?\tDIED /?CND1\n\tCRLF\t\n\tPRINTI\t\"Oh, well. According to the Treaty of Gishen IV, signed in 8747 GY, all adventure game players must be given another chance after dying. In the interests of interstellar peace...\"\n\tCRLF\t\n?CND1:\tPUTB\tP-INBUF,0,10\n\tCRLF\t\n\tPRINTI\t\"Would you like to restart the game from the beginning, restore a saved game position, or end this session of the game? (Type RESTART, RESTORE, or QUIT.)\"\n\tCRLF\t\n\tCRLF\t\n\tPRINTC\t62\n\tREAD\tP-INBUF,P-LEXV\n\tPUTB\tP-INBUF,0,80\n\tGET\tP-LEXV,1\n\tEQUAL?\tSTACK,W?RESTAR \\?CCL7\n\tRESTART\t\n\tPRINTI\t\"Failed.\"\n\tCRLF\t\n\tCALL\tFINISH,FALSE-VALUE,TRUE-VALUE\n\tRSTACK\t\n?CCL7:\tGET\tP-LEXV,1\n\tEQUAL?\tSTACK,W?RESTOR \\?CCL9\n\tRESTORE\t \\?CCL12\n\tPRINTR\t\"Ok.\"\n?CCL12:\tPRINTI\t\"Failed.\"\n\tCRLF\t\n\tCALL\tFINISH,FALSE-VALUE,TRUE-VALUE\n\tRSTACK\t\n?CCL9:\tGET\tP-LEXV,1\n\tEQUAL?\tSTACK,W?QUIT,W?Q \\?CCL14\n\tQUIT\t\n\tRTRUE\t\n?CCL14:\tCALL\tFINISH,FALSE-VALUE,TRUE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tV-QUIT\n\tCALL\tV-SCORE\n\tIN?\tFLOYD,HERE \\?CND1\n\tFSET?\tFLOYD,RLANDBIT \\?CND1\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tCRLF\t\n\tPRINTI\t\"Floyd grins impishly. \"\"Giving up, huh?\"\"\"\n\tCRLF\t\n?CND1:\tCRLF\t\n\tPRINTI\t\"Do you wish to leave the game? (Y is affirmative): \"\n\tCALL\tYES?\n\tZERO?\tSTACK /?CCL7\n\tQUIT\t\n\tRTRUE\t\n?CCL7:\tPRINTR\t\"Ok.\"\n\n\n\t.FUNCT\tYES?\n\tPUTB\tP-INBUF,0,10\n\tPRINTC\t62\n\tREAD\tP-INBUF,P-LEXV\n\tPUTB\tP-INBUF,0,80\n\tGET\tP-LEXV,1\n\tEQUAL?\tSTACK,W?YES,W?Y /TRUE\n\tRFALSE\t\n\n\n\t.FUNCT\tV-VERSION,CNT=17\n\tPRINTI\t\"PLANETFALL\nInfocom interactive fiction - a science fiction story\nCopyright (c) 1983 by Infocom, Inc. All rights reserved.\n\"\n\tPRINTI\t\"PLANETFALL is a registered trademark of Infocom, Inc.\nRelease \"\n\tGET\t0,1\n\tBAND\tSTACK,2047\n\tPRINTN\tSTACK\n\tPRINTI\t\" / Serial number \"\n?PRG1:\tIGRTR?\t'CNT,23 /?REP2\n\tGETB\t0,CNT\n\tPRINTC\tSTACK\n\tJUMP\t?PRG1\n?REP2:\tCRLF\t\n\tIN?\tFLOYD,HERE \\FALSE\n\tFSET?\tFLOYD,RLANDBIT \\FALSE\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tCRLF\t\n\tPRINTR\t\"\"\"Last version was better,\"\" says Floyd. \"\"More bugs. Bugs make game fun.\"\"\"\n\n\n\t.FUNCT\tV-AGAIN,OBJ\n\tZERO?\tL-PRSA \\?CCL3\n\tCALL\tANYMORE\n\tRSTACK\t\n?CCL3:\tEQUAL?\tHERE,LAST-PSEUDO-LOC /?CCL5\n\tEQUAL?\tPSEUDO-OBJECT,L-PRSO,L-PRSI \\?CCL5\n\tSET\t'L-PRSA,FALSE-VALUE\n\tCALL\tANYMORE\n\tRSTACK\t\n?CCL5:\tEQUAL?\tL-PRSA,V?WALK \\?CCL9\n\tCALL\tDO-WALK,L-PRSO\n\tRSTACK\t\n?CCL9:\tZERO?\tL-PRSO /?CCL12\n\tLOC\tL-PRSO\n\tEQUAL?\tSTACK,FALSE-VALUE \\?CCL12\n\tSET\t'OBJ,L-PRSO\n\tJUMP\t?CND10\n?CCL12:\tZERO?\tL-PRSI /?CFL15\n\tLOC\tL-PRSI\n\tEQUAL?\tSTACK,FALSE-VALUE /?CCL16\n?CFL15:\tSET\t'OBJ,0\n\tJUMP\t?CND10\n?CCL16:\tSET\t'OBJ,L-PRSI\n?CND10:\tZERO?\tOBJ /?CCL21\n\tEQUAL?\tOBJ,PSEUDO-OBJECT,ROOMS /?CCL21\n\tCALL\tANYMORE\n\tRETURN\t2\n?CCL21:\tCALL\tPERFORM,L-PRSA,L-PRSO,L-PRSI\n\tRTRUE\t\n\n\n\t.FUNCT\tJIGS-UP,DESC,PLAYER?=0\n\tPRINT\tDESC\n\tCRLF\t\n\tCRLF\t\n\tPRINTI\t\"    ****  You have died  ****\"\n\tCRLF\t\n\tCALL\tFINISH,TRUE-VALUE\n\tRSTACK\t\n\n\n\t.FUNCT\tV-RESTORE\n\tIN?\tFLOYD,HERE \\?CND1\n\tFSET?\tFLOYD,RLANDBIT \\?CND1\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Floyd looks disappointed, but understanding. \"\"That part of the game was more fun than this part,\"\" he admits.\"\n\tCRLF\t\n\tCRLF\t\n?CND1:\tRESTORE\t \\?CCL7\n\tPRINTR\t\"Ok.\"\n?CCL7:\tPRINTR\t\"Failed.\"\n\n\n\t.FUNCT\tV-SAVE\n\tIN?\tFLOYD,HERE \\?CND1\n\tFSET?\tFLOYD,RLANDBIT \\?CND1\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Floyd's eyes light up. \"\"Oh boy! Are we gonna try something dangerous now?\"\"\"\n\tCRLF\t\n\tCRLF\t\n?CND1:\tSAVE\t \\?CCL7\n\tPRINTR\t\"Ok.\"\n?CCL7:\tPRINTR\t\"Failed.\"\n\n\n\t.FUNCT\tV-RESTART\n\tCALL\tV-SCORE,TRUE-VALUE\n\tIN?\tFLOYD,HERE \\?CND1\n\tFSET?\tFLOYD,RLANDBIT \\?CND1\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Floyd looks sad. \"\"Going away?\"\" he asks.\"\n\tCRLF\t\n?CND1:\tCRLF\t\n\tPRINTI\t\"Do you wish to restart? (Y is affirmative): \"\n\tCALL\tYES?\n\tZERO?\tSTACK /FALSE\n\tPRINTI\t\"Restarting.\"\n\tCRLF\t\n\tRESTART\t\n\tPRINTR\t\"Failed.\"\n\n\n\t.FUNCT\tV-WALK-AROUND\n\tCALL\tUSE-DIRECTIONS\n\tRSTACK\t\n\n\n\t.FUNCT\tV-WALK-TO\n\tIN?\tPRSO,HERE /?CTR2\n\tCALL\tGLOBAL-IN?,PRSO,HERE\n\tZERO?\tSTACK /?CCL3\n?CTR2:\tPRINTR\t\"It's here!\"\n?CCL3:\tCALL\tUSE-DIRECTIONS\n\tRSTACK\t\n\n\n\t.FUNCT\tV-WALK,PT,PTS,STR,OBJ,RM,TEMP-ELAPSED,?TMP1\n\tZERO?\tP-WALK-DIR \\?CCL3\n\tCALL\tPERFORM,V?WALK-TO,PRSO\n\tRTRUE\t\n?CCL3:\tGETPT\tHERE,PRSO >PT\n\tZERO?\tPT /?CCL5\n\tGETP\tHERE,P?C-MOVE >?TMP1\n\tSUB\tPRSO,LOW-DIRECTION\n\tGET\t?TMP1,STACK >TEMP-ELAPSED\n\tZERO?\tTEMP-ELAPSED \\?CND6\n\tSET\t'TEMP-ELAPSED,DEFAULT-MOVE\n?CND6:\tPTSIZE\tPT >PTS\n\tEQUAL?\tPTS,UEXIT \\?CCL10\n\tSET\t'C-ELAPSED,TEMP-ELAPSED\n\tGETB\tPT,REXIT\n\tCALL\tGOTO,STACK\n\tRSTACK\t\n?CCL10:\tEQUAL?\tPTS,NEXIT \\?CCL12\n\tGET\tPT,NEXITSTR\n\tPRINT\tSTACK\n\tCRLF\t\n\tRETURN\t2\n?CCL12:\tEQUAL?\tPTS,FEXIT \\?CCL16\n\tGET\tPT,FEXITFCN\n\tCALL\tSTACK >RM\n\tZERO?\tRM /?PRG20\n\tCALL\tGOTO,RM\n\tRSTACK\t\n?PRG20:\tRETURN\t2\n?CCL16:\tEQUAL?\tPTS,CEXIT \\?CCL23\n\tGETB\tPT,CEXITFLAG\n\tVALUE\tSTACK\n\tZERO?\tSTACK /?CCL26\n\tSET\t'C-ELAPSED,TEMP-ELAPSED\n\tGETB\tPT,REXIT\n\tCALL\tGOTO,STACK\n\tRSTACK\t\n?CCL26:\tGET\tPT,CEXITSTR >STR\n\tZERO?\tSTR /?CCL28\n\tPRINT\tSTR\n\tCRLF\t\n\tRETURN\t2\n?CCL28:\tPRINTI\t\"You can't go that way.\"\n\tCRLF\t\n\tRETURN\t2\n?CCL23:\tEQUAL?\tPTS,DEXIT \\FALSE\n\tGETB\tPT,DEXITOBJ >OBJ\n\tFSET?\tOBJ,OPENBIT \\?CCL37\n\tSET\t'C-ELAPSED,TEMP-ELAPSED\n\tGETB\tPT,REXIT\n\tCALL\tGOTO,STACK\n\tRSTACK\t\n?CCL37:\tGET\tPT,DEXITSTR >STR\n\tZERO?\tSTR /?CCL39\n\tPRINT\tSTR\n\tCRLF\t\n\tRETURN\t2\n?CCL39:\tPRINTI\t\"The \"\n\tPRINTD\tOBJ\n\tPRINTI\t\" is closed.\"\n\tCRLF\t\n\tCALL\tTHIS-IS-IT,OBJ\n\tRETURN\t2\n?CCL5:\tZERO?\tLIT \\?CCL45\n\tRANDOM\t100\n\tLESS?\t75,STACK /?CCL45\n\tCALL\tJIGS-UP,STR?63\n\tRSTACK\t\n?CCL45:\tPRINTI\t\"You can't go that way.\"\n\tCRLF\t\n\tRETURN\t2\n\n\n\t.FUNCT\tV-INVENTORY\n\tSET\t'C-ELAPSED,18\n\tFIRST?\tADVENTURER \\?CCL3\n\tCALL\tPRINT-CONT,ADVENTURER\n\tRSTACK\t\n?CCL3:\tPRINTR\t\"You are empty-handed.\"\n\n\n\t.FUNCT\tPRE-TAKE\n\tIN?\tPRSO,ADVENTURER \\?CCL3\n\tPRINTR\t\"You already have it.\"\n?CCL3:\tEQUAL?\tPRSO,GOOD-BOARD \\?CCL5\n\tFSET?\tGOOD-BOARD,NDESCBIT /FALSE\n?CCL5:\tLOC\tPRSO\n\tFSET?\tSTACK,CONTBIT \\?CCL9\n\tLOC\tPRSO\n\tFSET?\tSTACK,OPENBIT /?CCL9\n\tPRINTR\t\"You can't reach into a closed container.\"\n?CCL9:\tZERO?\tPRSI /?CCL13\n\tLOC\tPRSO\n\tEQUAL?\tPRSI,STACK /?CCL16\n\tEQUAL?\tPRSO,KEY \\?CCL19\n\tFSET?\tKEY,TOUCHBIT \\FALSE\n?CCL19:\tEQUAL?\tPRSO,CELERY \\?CCL23\n\tEQUAL?\tPRSI,AMBASSADOR /FALSE\n?CCL23:\tPRINTR\t\"It's not in that!\"\n?CCL16:\tSET\t'PRSI,FALSE-VALUE\n\tRFALSE\t\n?CCL13:\tLOC\tADVENTURER\n\tEQUAL?\tPRSO,STACK \\FALSE\n\tPRINTR\t\"You are in it, asteroid-brain!\"\n\n\n\t.FUNCT\tV-TAKE\n\tCALL\tITAKE\n\tEQUAL?\tSTACK,TRUE-VALUE \\FALSE\n\tPRINTR\t\"Taken.\"\n\n\n\t.FUNCT\tTRYTAKE\n\tIN?\tPRSO,WINNER /TRUE\n\tFSET?\tPRSO,TRYTAKEBIT \\?CCL5\n\tGETP\tPRSO,P?ACTION\n\tZERO?\tSTACK /?CCL5\n\tCALL\tPERFORM,V?TAKE,PRSO\n\tRTRUE\t\n?CCL5:\tCALL\tITAKE\n\tRSTACK\t\n\n\n\t.FUNCT\tITAKE,VB=1,CNT,OBJ,?TMP1\n\tFSET?\tPRSO,TAKEBIT /?CCL3\n\tZERO?\tVB /FALSE\n\tCALL\tPICK-ONE,YUKS\n\tPRINT\tSTACK\n\tCRLF\t\n\tRFALSE\t\n?CCL3:\tLOC\tPRSO\n\tIN?\tSTACK,ADVENTURER /?CCL7\n\tCALL\tWEIGHT,PRSO >?TMP1\n\tCALL\tWEIGHT,ADVENTURER\n\tADD\t?TMP1,STACK\n\tGRTR?\tSTACK,LOAD-ALLOWED \\?CCL7\n\tZERO?\tVB /?PRG12\n\tPRINTI\t\"Your load is too heavy.\"\n\tCRLF\t\n?PRG12:\tRETURN\t2\n?CCL7:\tCALL\tCCOUNT,ADVENTURER >CNT\n\tGRTR?\tCNT,FUMBLE-NUMBER \\?CCL15\n\tMUL\tCNT,FUMBLE-PROB >?TMP1\n\tRANDOM\t100\n\tLESS?\t?TMP1,STACK /?CCL15\n\tFIRST?\tADVENTURER >OBJ /?PRG19\n?PRG19:\tFSET?\tOBJ,WORNBIT \\?REP20\n\tNEXT?\tOBJ >OBJ /?PRG19\n\tJUMP\t?PRG19\n?REP20:\tPRINTI\t\"Oh, no. The \"\n\tPRINTD\tOBJ\n\tPRINTI\t\" slips from your arms while taking the \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" and both tumble to the ground.\"\n\tCRLF\t\n\tEQUAL?\tFLASK,OBJ,PRSO \\?CND25\n\tIN?\tCHEMICAL-FLUID,FLASK \\?CND25\n\tREMOVE\tCHEMICAL-FLUID\n\tPRINTI\t\"Unfortunately, the chemical spills out of the flask and evaporates.\"\n\tCRLF\t\n?CND25:\tEQUAL?\tCANTEEN,OBJ,PRSO \\?CND29\n\tIN?\tHIGH-PROTEIN,CANTEEN \\?CND29\n\tFSET?\tCANTEEN,OPENBIT \\?CND29\n\tREMOVE\tHIGH-PROTEIN\n\tPRINTI\t\"To make matters worse, the high-protein liquid spills all over the place and then evaporates.\"\n\tCRLF\t\n?CND29:\tMOVE\tOBJ,HERE\n\tMOVE\tPRSO,HERE\n\tRETURN\t2\n?CCL15:\tMOVE\tPRSO,ADVENTURER\n\tFCLEAR\tPRSO,NDESCBIT\n\tCALL\tSCORE-OBJ,PRSO\n\tFSET\tPRSO,TOUCHBIT\n\tEQUAL?\tPRSO,SPOUT-PLACED \\TRUE\n\tSET\t'SPOUT-PLACED,GROUND\n\tRTRUE\t\n\n\n\t.FUNCT\tPRE-PUT\n\tZERO?\tPRSO /FALSE\n\tFSET?\tPRSO,WORNBIT \\?CCL5\n\tPRINTR\t\"You can't while you're wearing it.\"\n?CCL5:\tIN?\tPRSO,GLOBAL-OBJECTS /?CCL7\n\tFSET?\tPRSO,TAKEBIT /FALSE\n?CCL7:\tPRINTR\t\"Nice try.\"\n\n\n\t.FUNCT\tV-PUT,?TMP1,?TMP2,?TMP3\n\tFSET?\tPRSI,OPENBIT /?CND1\n\tFSET?\tPRSI,DOORBIT /?CND1\n\tFSET?\tPRSI,CONTBIT /?CND1\n\tFSET?\tPRSI,VEHBIT /?CND1\n\tPRINTR\t\"You can't do that.\"\n?CND1:\tFSET?\tPRSI,OPENBIT /?CCL9\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSI\n\tPRINTR\t\" isn't open.\"\n?CCL9:\tEQUAL?\tPRSI,PRSO \\?CCL11\n\tPRINTR\t\"How can you do that?\"\n?CCL11:\tIN?\tPRSO,PRSI \\?CCL13\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" is already in the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\".\"\n?CCL13:\tIN?\tPRSI,PRSO \\?CCL15\n\tPRINTI\t\"How can you put the \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" in the \"\n\tPRINTD\tPRSI\n\tPRINTI\t\" when the \"\n\tPRINTD\tPRSI\n\tPRINTI\t\" is already in the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\"?\"\n?CCL15:\tCALL\tWEIGHT,PRSI >?TMP3\n\tCALL\tWEIGHT,PRSO\n\tADD\t?TMP3,STACK >?TMP2\n\tGETP\tPRSI,P?SIZE\n\tSUB\t?TMP2,STACK >?TMP1\n\tGETP\tPRSI,P?CAPACITY\n\tGRTR?\t?TMP1,STACK \\?CCL17\n\tPRINTR\t\"There's no room.\"\n?CCL17:\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\?CCL19\n\tCALL\tTRYTAKE\n\tZERO?\tSTACK /TRUE\n?CCL19:\tCALL\tSCORE-OBJ,PRSO\n\tMOVE\tPRSO,PRSI\n\tFSET\tPRSO,TOUCHBIT\n\tPRINTR\t\"Done.\"\n\n\n\t.FUNCT\tV-SLIDE\n\tCALL\tPICK-ONE,YUKS\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tPRE-GIVE\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\FALSE\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n\n\n\t.FUNCT\tPRE-SGIVE\n\tCALL\tPERFORM,V?GIVE,PRSI,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-GIVE\n\tFSET?\tPRSI,ACTORBIT /?CCL3\n\tPRINTI\t\"You can't give \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTI\t\" to \"\n\tFSET?\tPRSI,VOWELBIT \\?CCL6\n\tPRINTI\t\"an \"\n\tJUMP\t?CND4\n?CCL6:\tPRINTI\t\"a \"\n?CND4:\tPRINTD\tPRSI\n\tPRINTR\t\"!\"\n?CCL3:\tPRINTI\t\"The \"\n\tPRINTD\tPRSI\n\tPRINTR\t\" declines your offer.\"\n\n\n\t.FUNCT\tV-SGIVE\n\tPRINTR\t\"Foo!\"\n\n\n\t.FUNCT\tV-DROP\n\tCALL\tIDROP\n\tZERO?\tSTACK /FALSE\n\tPRINTR\t\"Dropped.\"\n\n\n\t.FUNCT\tV-THROW\n\tCALL\tIDROP\n\tZERO?\tSTACK /FALSE\n\tPRINTR\t\"Thrown.\"\n\n\n\t.FUNCT\tIDROP\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\?CCL3\n\tPRINTI\t\"You're not carrying the \"\n\tPRINTD\tPRSO\n\tPRINTC\t46\n\tCRLF\t\n\tRFALSE\t\n?CCL3:\tFSET?\tPRSO,WORNBIT \\?CCL5\n\tCALL\tTAKE-IT-OFF\n\tRFALSE\t\n?CCL5:\tIN?\tPRSO,WINNER /?CCL7\n\tLOC\tPRSO\n\tFSET?\tSTACK,OPENBIT /?CCL7\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" is closed.\"\n\tCRLF\t\n\tRFALSE\t\n?CCL7:\tMOVE\tPRSO,HERE\n\tRTRUE\t\n\n\n\t.FUNCT\tV-OPEN,F,STR\n\tFSET?\tPRSO,CONTBIT /?CCL3\n\tFSET?\tPRSO,DOORBIT /?CCL3\n\tPRINTI\t\"You must be very clever to do that to the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL3:\tFSET?\tPRSO,DOORBIT /?CTR6\n\tGETP\tPRSO,P?CAPACITY\n\tZERO?\tSTACK /?CCL7\n?CTR6:\tFSET?\tPRSO,OPENBIT \\?CCL12\n\tCALL\tALREADY,STR?70\n\tRSTACK\t\n?CCL12:\tFSET\tPRSO,OPENBIT\n\tFSET?\tPRSO,DOORBIT \\?CCL15\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is now open.\"\n?CCL15:\tFIRST?\tPRSO \\?CTR16\n\tFSET?\tPRSO,TRANSBIT \\?CCL17\n?CTR16:\tPRINTR\t\"Opened.\"\n?CCL17:\tFIRST?\tPRSO >F \\?CCL21\n\tNEXT?\tF /?CCL21\n\tGETP\tF,P?FDESC >STR\n\tZERO?\tSTR /?CCL21\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" opens.\"\n\tCRLF\t\n\tPRINT\tSTR\n\tCRLF\t\n\tRTRUE\t\n?CCL21:\tPRINTI\t\"Opening the \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" reveals \"\n\tCALL\tPRINT-CONTENTS,PRSO\n\tPRINTR\t\".\"\n?CCL7:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" cannot be opened.\"\n\n\n\t.FUNCT\tV-OPEN-WITH\n\tEQUAL?\tPRSI,HANDS \\?CCL3\n\tCALL\tPERFORM,V?OPEN,PRSO\n\tRTRUE\t\n?CCL3:\tPRINTR\t\"That doesn't work.\"\n\n\n\t.FUNCT\tPRINT-CONTENTS,OBJ,F,N,1ST?=1,IT?=0,TWO?=0\n\tFIRST?\tOBJ >F \\FALSE\n?PRG4:\tNEXT?\tF >N /?BOGUS6\n?BOGUS6:\tZERO?\t1ST? /?CCL9\n\tSET\t'1ST?,FALSE-VALUE\n\tJUMP\t?CND7\n?CCL9:\tPRINTI\t\", \"\n\tZERO?\tN \\?CND7\n\tPRINTI\t\"and \"\n?CND7:\tPRINTI\t\"a \"\n\tPRINTD\tF\n\tZERO?\tIT? \\?CCL14\n\tZERO?\tTWO? \\?CCL14\n\tSET\t'IT?,F\n\tJUMP\t?CND12\n?CCL14:\tSET\t'TWO?,TRUE-VALUE\n\tSET\t'IT?,FALSE-VALUE\n?CND12:\tSET\t'F,N\n\tZERO?\tF \\?PRG4\n\tZERO?\tIT? /TRUE\n\tZERO?\tTWO? \\TRUE\n\tCALL\tTHIS-IS-IT,IT?\n\tRTRUE\t\n\n\n\t.FUNCT\tV-CLOSE\n\tFSET?\tPRSO,CONTBIT /?CCL3\n\tFSET?\tPRSO,DOORBIT /?CCL3\n\tPRINTI\t\"You can't do that to \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL3:\tFSET?\tPRSO,SURFACEBIT /?CCL7\n\tGETP\tPRSO,P?CAPACITY\n\tZERO?\tSTACK \\?CTR6\n\tFSET?\tPRSO,DOORBIT \\?CCL7\n?CTR6:\tFSET?\tPRSO,OPENBIT \\?CCL14\n\tFCLEAR\tPRSO,OPENBIT\n\tPRINTR\t\"Closed.\"\n?CCL14:\tCALL\tALREADY,STR?71\n\tRSTACK\t\n?CCL7:\tPRINTR\t\"You cannot close that.\"\n\n\n\t.FUNCT\tCCOUNT,OBJ,CNT=0,X\n\tFIRST?\tOBJ >X /?PRG3\n\tRETURN\tCNT\n?PRG3:\tINC\t'CNT\n\tNEXT?\tX >X /?PRG3\n\tRETURN\tCNT\n\n\n\t.FUNCT\tWEIGHT,OBJ,CONT,WT=0\n\tFIRST?\tOBJ >CONT \\?CND1\n?PRG3:\tFSET?\tCONT,WORNBIT /?CND5\n\tCALL\tWEIGHT,CONT\n\tADD\tWT,STACK >WT\n?CND5:\tNEXT?\tCONT >CONT /?PRG3\n?CND1:\tGETP\tOBJ,P?SIZE\n\tADD\tWT,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tV-SCRIPT\n\tIN?\tFLOYD,HERE \\?CND1\n\tFSET?\tFLOYD,RLANDBIT \\?CND1\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"Floyd hops around excitedly. \"\"Oh boy! I've never seen my name in print before!\"\"\"\n\tCRLF\t\n\tCRLF\t\n?CND1:\tGET\t0,8\n\tBOR\tSTACK,1\n\tPUT\t0,8,STACK\n\tPRINTI\t\"Here begins\"\n\tPRINT\tCOPR-NOTICE\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tV-UNSCRIPT\n\tIN?\tFLOYD,HERE \\?CND1\n\tFSET?\tFLOYD,RLANDBIT \\?CND1\n\tSET\t'FLOYD-SPOKE,TRUE-VALUE\n\tPRINTI\t\"\"\"Can I have a copy of the printout?\"\" asks Floyd, looking up at you.\"\n\tCRLF\t\n\tCRLF\t\n?CND1:\tPRINTI\t\"Here ends\"\n\tPRINT\tCOPR-NOTICE\n\tCRLF\t\n\tGET\t0,8\n\tBAND\tSTACK,-2\n\tPUT\t0,8,STACK\n\tRTRUE\t\n\n\n\t.FUNCT\tPRE-MOVE\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK /FALSE\n\tPRINTR\t\"Why juggle objects?\"\n\n\n\t.FUNCT\tV-MOVE\n\tFSET?\tPRSO,TAKEBIT \\?CCL3\n\tPRINTI\t\"Moving the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" reveals nothing.\"\n?CCL3:\tPRINTI\t\"You can't move the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-LAMP-ON\n\tFSET?\tPRSO,LIGHTBIT \\?CCL3\n\tFSET?\tPRSO,ONBIT \\?CCL6\n\tCALL\tALREADY,STR?73\n\tRTRUE\t\n?CCL6:\tFSET\tPRSO,ONBIT\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is now on.\"\n?CCL3:\tPRINTR\t\"You can't turn that on.\"\n\n\n\t.FUNCT\tV-LAMP-OFF\n\tFSET?\tPRSO,LIGHTBIT \\?CCL3\n\tFSET?\tPRSO,ONBIT /?CCL6\n\tCALL\tALREADY,STR?74\n\tRTRUE\t\n?CCL6:\tFCLEAR\tPRSO,ONBIT\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is now off.\"\n?CCL3:\tPRINTR\t\"You can't turn that off.\"\n\n\n\t.FUNCT\tV-WAIT\n\tSET\t'C-ELAPSED,40\n\tPRINTR\t\"Time passes...\"\n\n\n\t.FUNCT\tPRE-BOARD,AV\n\tLOC\tADVENTURER >AV\n\tEQUAL?\tPRSO,GROUND,GLOBAL-SHUTTLE /FALSE\n\tFSET?\tPRSO,VEHBIT \\?CCL5\n\tFSET?\tAV,VEHBIT \\FALSE\n\tPRINTI\t\"You are already in it!\"\n\tCRLF\t\n\tRETURN\t2\n?CCL5:\tPRINTI\t\"I suppose you have a theory on boarding \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTC\t46\n\tCRLF\t\n\tRETURN\t2\n\n\n\t.FUNCT\tV-BOARD,AV\n\tPRINTI\t\"You are now in the \"\n\tPRINTD\tPRSO\n\tPRINTC\t46\n\tCRLF\t\n\tMOVE\tADVENTURER,PRSO\n\tGETP\tPRSO,P?ACTION\n\tCALL\tSTACK,M-ENTER\n\tRTRUE\t\n\n\n\t.FUNCT\tV-DISEMBARK\n\tEQUAL?\tPRSO,ROOMS \\?CCL3\n\tIN?\tADVENTURER,SAFETY-WEB \\?CCL6\n\tCALL\tPERFORM,V?DISEMBARK,SAFETY-WEB\n\tRTRUE\t\n?CCL6:\tIN?\tADVENTURER,BED \\?CCL8\n\tCALL\tOWN-FEET\n\tRSTACK\t\n?CCL8:\tIN?\tADVENTURER,SHUTTLE-CAR-ALFIE \\?CCL10\n\tCALL\tDO-WALK,P?NORTH\n\tRSTACK\t\n?CCL10:\tIN?\tADVENTURER,SHUTTLE-CAR-BETTY \\?CCL12\n\tCALL\tDO-WALK,P?SOUTH\n\tRSTACK\t\n?CCL12:\tIN?\tADVENTURER,BRIG \\?CCL14\n\tCALL\tPERFORM,V?ZESCAPE\n\tRTRUE\t\n?CCL14:\tCALL\tDO-WALK,P?OUT\n\tRSTACK\t\n?CCL3:\tLOC\tADVENTURER\n\tEQUAL?\tSTACK,PRSO /?CCL16\n\tPRINTI\t\"You're not in that!\"\n\tCRLF\t\n\tRETURN\t2\n?CCL16:\tCALL\tOWN-FEET\n\tRSTACK\t\n\n\n\t.FUNCT\tOWN-FEET\n\tMOVE\tADVENTURER,HERE\n\tPRINTR\t\"You're on your own feet again.\"\n\n\n\t.FUNCT\tV-STAND\n\tLOC\tADVENTURER\n\tFSET?\tSTACK,VEHBIT \\?CCL3\n\tLOC\tADVENTURER\n\tCALL\tPERFORM,V?DISEMBARK,STACK\n\tRTRUE\t\n?CCL3:\tPRINTR\t\"You are already standing, I think.\"\n\n\n\t.FUNCT\tGOTO,RM,V?=1,WLOC,OLIT\n\tLOC\tWINNER >WLOC\n\tSET\t'OLIT,LIT\n\tMOVE\tADVENTURER,RM\n\tSET\t'HERE,RM\n\tCALL\tLIT?,HERE >LIT\n\tZERO?\tOLIT \\?CND1\n\tZERO?\tLIT \\?CND1\n\tRANDOM\t100\n\tLESS?\t75,STACK /?CND1\n\tCALL\tJIGS-UP,STR?75\n\tRTRUE\t\n?CND1:\tGETP\tHERE,P?ACTION\n\tCALL\tSTACK,M-ENTER\n\tEQUAL?\tSTACK,2 /TRUE\n\tZERO?\tV? /?CND8\n\tCALL\tV-FIRST-LOOK\n?CND8:\tCALL\tSCORE-OBJ,RM\n\tRTRUE\t\n\n\n\t.FUNCT\tV-EAT\n\tPRINTI\t\"I don't think that the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" would agree with you.\"\n\n\n\t.FUNCT\tV-EAT-FROM,X\n\tFIRST?\tPRSO >X /?BOGUS1\n?BOGUS1:\tFSET?\tPRSO,OPENBIT /?CCL4\n\tPRINTR\t\"It's closed.\"\n?CCL4:\tNEXT?\tX \\?CCL6\n\tPRINTI\t\"There's more than one thing in the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL6:\tZERO?\tX /?CCL8\n\tCALL\tPERFORM,V?EAT,X\n\tRTRUE\t\n?CCL8:\tPRINTR\t\"It's empty!\"\n\n\n\t.FUNCT\tV-CURSE\n\tPRINTR\t\"Such language from an Ensign in the Stellar Patrol!\"\n\n\n\t.FUNCT\tV-LISTEN\n\tSET\t'C-ELAPSED,18\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" makes no sound.\"\n\n\n\t.FUNCT\tV-FOLLOW\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is right here!\"\n\n\n\t.FUNCT\tV-LEAP\n\tZERO?\tPRSO /?CCL3\n\tIN?\tPRSO,HERE \\?CCL6\n\tFSET?\tPRSO,ACTORBIT \\?CCL9\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is too big to jump over.\"\n?CCL9:\tCALL\tV-SKIP\n\tRSTACK\t\n?CCL6:\tPRINTR\t\"That would be a good trick.\"\n?CCL3:\tCALL\tV-SKIP\n\tRSTACK\t\n\n\n\t.FUNCT\tV-SKIP\n\tCALL\tPICK-ONE,WHEEEEE\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tV-LEAVE\n\tIN?\tADVENTURER,BED \\?CCL3\n\tCALL\tPERFORM,V?DISEMBARK,BED\n\tRTRUE\t\n?CCL3:\tIN?\tADVENTURER,SAFETY-WEB \\?CCL5\n\tCALL\tPERFORM,V?DISEMBARK,SAFETY-WEB\n\tRTRUE\t\n?CCL5:\tCALL\tDO-WALK,P?OUT\n\tRSTACK\t\n\n\n\t.FUNCT\tV-HELLO\n\tZERO?\tPRSO /?CCL3\n\tPRINTI\t\"Until now, I've only heard demented Denebian Devils say \"\"Hello\"\" to \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL3:\tCALL\tPICK-ONE,HELLOS\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tV-HELP\n\tPRINTR\t\"If you're really stuck, you can order a complete map and InvisiClues Hint Booklet using the order form in your game package.\"\n\n\n\t.FUNCT\tPRE-READ\n\tZERO?\tLIT \\FALSE\n\tPRINTR\t\"It is impossible to read in the dark.\"\n\n\n\t.FUNCT\tV-READ\n\tFSET?\tPRSO,READBIT /?CCL3\n\tPRINTI\t\"How can I read \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\"?\"\n?CCL3:\tGETP\tPRSO,P?TEXT\n\tPRINT\tSTACK\n\tCRLF\t\n\tSET\t'C-ELAPSED,18\n\tRETURN\tC-ELAPSED\n\n\n\t.FUNCT\tV-LOOK-UNDER\n\tPRINTI\t\"There is nothing but \"\n\tEQUAL?\tPRSO,AMBASSADOR \\?CCL3\n\tPRINTI\t\"slime\"\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"dust\"\n?CND1:\tPRINTR\t\" there.\"\n\n\n\t.FUNCT\tV-LOOK-BEHIND\n\tCALL\tV-LOOK-UNDER\n\tRSTACK\t\n\n\n\t.FUNCT\tV-LOOK-INSIDE\n\tFSET?\tPRSO,ACTORBIT \\?CCL3\n\tPRINTR\t\"There is nothing special to be seen.\"\n?CCL3:\tFSET?\tPRSO,DOORBIT \\?CCL5\n\tFSET?\tPRSO,OPENBIT \\?CCL8\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" is open, but I can't tell what's beyond it\"\n\tJUMP\t?CND6\n?CCL8:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" is closed\"\n?CND6:\tPRINTR\t\".\"\n?CCL5:\tFSET?\tPRSO,CONTBIT \\?CCL10\n\tFSET?\tPRSO,OPENBIT /?CCL13\n\tCALL\tPERFORM,V?OPEN,PRSO\n\tRTRUE\t\n?CCL13:\tCALL\tSEE-INSIDE?,PRSO\n\tZERO?\tSTACK /?CCL15\n\tFIRST?\tPRSO \\?CCL18\n\tCALL\tPRINT-CONT,PRSO\n\tZERO?\tSTACK \\TRUE\n?CCL18:\tFSET?\tPRSO,SURFACEBIT \\?CCL22\n\tPRINTI\t\"There is nothing on the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL22:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is empty.\"\n?CCL15:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is closed.\"\n?CCL10:\tFSET?\tPRSO,TRANSBIT \\?CCL24\n\tPRINTI\t\"You can see dimly through the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL24:\tPRINTI\t\"You can't look inside \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tSEE-INSIDE?,OBJ\n\tFSET?\tOBJ,INVISIBLE /FALSE\n\tFSET?\tOBJ,TRANSBIT /TRUE\n\tFSET?\tOBJ,OPENBIT /TRUE\n\tRFALSE\t\n\n\n\t.FUNCT\tV-LOOK-DOWN\n\tCALL\tPERFORM,V?EXAMINE,GROUND\n\tRTRUE\t\n\n\n\t.FUNCT\tV-TURN\n\tPRINTR\t\"You can't do that.\"\n\n\n\t.FUNCT\tV-LOCK\n\tCALL\tV-TURN\n\tRSTACK\t\n\n\n\t.FUNCT\tV-UNLOCK\n\tCALL\tV-TURN\n\tRSTACK\t\n\n\n\t.FUNCT\tV-ATTACK\n\tFSET?\tPRSO,ACTORBIT \\?CCL3\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is frightened and backs away.\"\n?CCL3:\tPRINTI\t\"I've known strange beings, but attacking \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\"???\"\n\n\n\t.FUNCT\tV-KICK\n\tCALL\tHACK-HACK,STR?82\n\tRSTACK\t\n\n\n\t.FUNCT\tV-WAVE\n\tCALL\tHACK-HACK,STR?83\n\tRSTACK\t\n\n\n\t.FUNCT\tV-RUB\n\tCALL\tHACK-HACK,STR?84\n\tRSTACK\t\n\n\n\t.FUNCT\tV-PUSH\n\tZERO?\tPRSI \\?CCL3\n\tEQUAL?\tPRSO,INTNUM \\?CCL3\n\tEQUAL?\tHERE,LIBRARY-LOBBY,MINI-BOOTH \\?CCL8\n\tPRINTR\t\"You probably want to use the TYPE command. Check your documentation.\"\n?CCL8:\tEQUAL?\tP-NUMBER,1 \\?CCL10\n\tEQUAL?\tHERE,BOOTH-2,BOOTH-3 \\?CCL13\n\tCALL\tPERFORM,V?PUSH,TELEPORTATION-BUTTON-1\n\tRTRUE\t\n?CCL13:\tEQUAL?\tHERE,BOOTH-1 \\?CCL15\n\tCALL\tNO-BUTTON,BOOTH-1\n\tRSTACK\t\n?CCL15:\tPRINTR\t\"Push a number?!?\"\n?CCL10:\tEQUAL?\tP-NUMBER,2 \\?CCL17\n\tEQUAL?\tHERE,BOOTH-1,BOOTH-3 \\?CCL20\n\tCALL\tPERFORM,V?PUSH,TELEPORTATION-BUTTON-2\n\tRTRUE\t\n?CCL20:\tEQUAL?\tHERE,BOOTH-2 \\?CCL22\n\tCALL\tNO-BUTTON,BOOTH-2\n\tRSTACK\t\n?CCL22:\tPRINTR\t\"Push a number?!?\"\n?CCL17:\tEQUAL?\tP-NUMBER,3 \\?CCL24\n\tEQUAL?\tHERE,BOOTH-1,BOOTH-2 \\?CCL27\n\tCALL\tPERFORM,V?PUSH,TELEPORTATION-BUTTON-3\n\tRTRUE\t\n?CCL27:\tEQUAL?\tHERE,BOOTH-3 \\?CCL29\n\tCALL\tNO-BUTTON,BOOTH-3\n\tRSTACK\t\n?CCL29:\tPRINTR\t\"Push a number?!?\"\n?CCL24:\tPRINTR\t\"Push a number?!?\"\n?CCL3:\tCALL\tHACK-HACK,STR?85\n\tRSTACK\t\n\n\n\t.FUNCT\tNO-BUTTON,NUMBER\n\tPRINTI\t\"There's no button here that's labelled with the number \"\n\tEQUAL?\tNUMBER,BOOTH-1 \\?CCL3\n\tPRINTC\t49\n\tJUMP\t?CND1\n?CCL3:\tEQUAL?\tNUMBER,BOOTH-2 \\?CCL5\n\tPRINTC\t50\n\tJUMP\t?CND1\n?CCL5:\tEQUAL?\tNUMBER,BOOTH-3 \\?CND1\n\tPRINTC\t51\n?CND1:\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-PUSH-UP\n\tCALL\tHACK-HACK,STR?86\n\tRSTACK\t\n\n\n\t.FUNCT\tV-PUSH-DOWN\n\tCALL\tHACK-HACK,STR?87\n\tRSTACK\t\n\n\n\t.FUNCT\tV-PULL\n\tCALL\tHACK-HACK,STR?88\n\tRSTACK\t\n\n\n\t.FUNCT\tV-MUNG\n\tCALL\tHACK-HACK,STR?89\n\tRSTACK\t\n\n\n\t.FUNCT\tHACK-HACK,STR\n\tPRINT\tSTR\n\tPRINTD\tPRSO\n\tCALL\tPICK-ONE,HO-HUM\n\tPRINT\tSTACK\n\tCRLF\t\n\tRTRUE\t\n\n\n\t.FUNCT\tWORD-TYPE,OBJ,WORD,SYNS,?TMP1\n\tGETPT\tOBJ,P?SYNONYM >SYNS\n\tPTSIZE\tSYNS\n\tDIV\tSTACK,2\n\tSUB\tSTACK,1\n\tCALL\tZMEMQ,WORD,SYNS,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tV-KNOCK\n\tCALL\tWORD-TYPE,PRSO,W?DOOR\n\tZERO?\tSTACK /?CCL3\n\tPRINTR\t\"Nobody's home.\"\n?CCL3:\tPRINTI\t\"Why knock on \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\"?\"\n\n\n\t.FUNCT\tV-YELL\n\tPRINTR\t\"Aarrrrggggggghhhhhhhh!\"\n\n\n\t.FUNCT\tBATTERY-FALLS\n\tPRINTR\t\"The battery falls out.\"\n\n\n\t.FUNCT\tV-SHAKE,X\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\?CCL3\n\tEQUAL?\tPRSO,HANDS /?CCL3\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSO,LASER \\?CCL7\n\tIN?\tOLD-BATTERY,LASER \\?CCL10\n\tMOVE\tOLD-BATTERY,HERE\n\tCALL\tBATTERY-FALLS\n\tRSTACK\t\n?CCL10:\tIN?\tNEW-BATTERY,LASER \\?CCL12\n\tMOVE\tNEW-BATTERY,HERE\n\tCALL\tBATTERY-FALLS\n\tRSTACK\t\n?CCL12:\tPRINTR\t\"Shaken.\"\n?CCL7:\tFSET?\tPRSO,OPENBIT /?CCL14\n\tFIRST?\tPRSO \\?CCL14\n\tPRINTI\t\"It sounds as if there is something inside the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL14:\tFSET?\tPRSO,OPENBIT \\?CCL18\n\tEQUAL?\tPRSO,FOOD-KIT \\?CCL21\n\tIN?\tRED-GOO,FOOD-KIT /?CTR20\n\tIN?\tGREEN-GOO,FOOD-KIT /?CTR20\n\tIN?\tBROWN-GOO,FOOD-KIT \\?CCL21\n?CTR20:\tREMOVE\tRED-GOO\n\tREMOVE\tGREEN-GOO\n\tREMOVE\tBROWN-GOO\n\tPRINTR\t\"Colored goo flies all over everything. Yechh!\"\n?CCL21:\tFIRST?\tPRSO \\?CCL28\n?PRG29:\tFIRST?\tPRSO >X \\?REP30\n\tEQUAL?\tX,HIGH-PROTEIN,CHEMICAL-FLUID \\?CCL36\n\tREMOVE\tX\n\tJUMP\t?PRG29\n?CCL36:\tMOVE\tX,HERE\n\tJUMP\t?PRG29\n?REP30:\tPRINTI\t\"The contents of the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" spill onto the floor.\"\n?CCL28:\tPRINTI\t\"You have shaken the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL18:\tFSET?\tPRSO,CONTBIT \\?CCL38\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" sounds empty.\"\n?CCL38:\tPRINTR\t\"Shaken.\"\n\n\n\t.FUNCT\tV-SHAKE-WITH\n\tEQUAL?\tPRSO,HANDS \\?CCL3\n\tFSET?\tPRSI,ACTORBIT \\?CCL6\n\tCALL\tPERFORM,V?SHAKE,HANDS\n\tRTRUE\t\n?CCL6:\tPRINTI\t\"You can't shake hands with \"\n\tCALL\tA-AN\n\tPRINTD\tPRSI\n\tPRINTR\t\"!\"\n?CCL3:\tPRINTR\t\"Huh?\"\n\n\n\t.FUNCT\tV-SMELL\n\tPRINTI\t\"It smells just like \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tGLOBAL-IN?,OBJ1,OBJ2,TEE\n\tGETPT\tOBJ2,P?GLOBAL >TEE\n\tZERO?\tTEE /FALSE\n\tPTSIZE\tTEE\n\tSUB\tSTACK,1\n\tCALL\tZMEMQB,OBJ1,TEE,STACK\n\tRSTACK\t\n\n\n\t.FUNCT\tV-SWIM\n\tEQUAL?\tHERE,UNDERWATER \\?CCL3\n\tPRINTR\t\"Not much else you can do here. Might try a direction next time, though.\"\n?CCL3:\tPRINTR\t\"You can't swim here!\"\n\n\n\t.FUNCT\tV-SWIM-DIR\n\tEQUAL?\tHERE,UNDERWATER \\?CCL3\n\tPRINTR\t\"Okay. You're still underwater.\"\n?CCL3:\tCALL\tPERFORM,V?SWIM\n\tRTRUE\t\n\n\n\t.FUNCT\tV-SWIM-UP\n\tEQUAL?\tHERE,UNDERWATER \\?CCL3\n\tCALL\tDO-WALK,P?UP\n\tRSTACK\t\n?CCL3:\tCALL\tPERFORM,V?SWIM\n\tZERO?\tSTACK \\TRUE\n\tRFALSE\t\n\n\n\t.FUNCT\tV-ALARM\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" isn't sleeping.\"\n\n\n\t.FUNCT\tV-ZORK\n\tPRINTR\t\"Gesundheit!\"\n\n\n\t.FUNCT\tV-SIT\n\tEQUAL?\tHERE,ESCAPE-POD \\?CCL3\n\tPRINTI\t\"(in the web)\"\n\tCRLF\t\n\tCALL\tPERFORM,V?BOARD,SAFETY-WEB\n\tRTRUE\t\n?CCL3:\tEQUAL?\tHERE,DORM-A,DORM-B,DORM-C /?CTR4\n\tEQUAL?\tHERE,DORM-D,INFIRMARY \\?CCL5\n?CTR4:\tPRINTI\t\"(on the bed)\"\n\tCRLF\t\n\tCALL\tPERFORM,V?BOARD,BED\n\tRTRUE\t\n?CCL5:\tSET\t'C-ELAPSED,31\n\tPRINTR\t\"You recline on the floor for a bit, and then stand up again.\"\n\n\n\t.FUNCT\tV-SIT-DOWN\n\tEQUAL?\tPRSO,ROOMS \\?CCL3\n\tCALL\tPERFORM,V?SIT\n\tRTRUE\t\n?CCL3:\tCALL\tPERFORM,V?BOARD,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-GO-UP\n\tCALL\tDO-WALK,P?UP\n\tRSTACK\t\n\n\n\t.FUNCT\tV-CLIMB-ON\n\tFSET?\tPRSO,VEHBIT \\?CCL3\n\tCALL\tPERFORM,V?BOARD,PRSO\n\tRTRUE\t\n?CCL3:\tPRINTI\t\"You can't climb onto the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-CLIMB-FOO\n\tFSET?\tPRSO,CLIMBBIT \\?CCL3\n\tCALL\tV-CLIMB-UP,P?UP,TRUE-VALUE\n\tRSTACK\t\n?CCL3:\tCALL\tPERFORM,V?CLIMB-ON,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-CLIMB-UP,DIR=P?UP,OBJ=0,X\n\tGETPT\tHERE,DIR\n\tZERO?\tSTACK /?CCL3\n\tCALL\tDO-WALK,DIR\n\tRTRUE\t\n?CCL3:\tZERO?\tOBJ \\?CCL5\n\tPRINTR\t\"You can't go that way.\"\n?CCL5:\tPRINTR\t\"Bizarre!\"\n\n\n\t.FUNCT\tV-CLIMB-DOWN\n\tFSET?\tPRSO,VEHBIT \\?CCL3\n\tCALL\tV-CLIMB-ON\n\tRTRUE\t\n?CCL3:\tCALL\tV-CLIMB-UP,P?DOWN\n\tRSTACK\t\n\n\n\t.FUNCT\tPRE-PUT-UNDER\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\?CCL3\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n?CCL3:\tFSET?\tPRSO,WORNBIT \\FALSE\n\tCALL\tTAKE-IT-OFF\n\tRSTACK\t\n\n\n\t.FUNCT\tV-PUT-UNDER\n\tPRINTR\t\"You can't do that.\"\n\n\n\t.FUNCT\tV-ENTER\n\tCALL\tDO-WALK,P?IN\n\tRSTACK\t\n\n\n\t.FUNCT\tV-EXIT\n\tCALL\tDO-WALK,P?OUT\n\tRSTACK\t\n\n\n\t.FUNCT\tV-SEARCH\n\tSET\t'C-ELAPSED,32\n\tPRINTR\t\"You find nothing unusual.\"\n\n\n\t.FUNCT\tV-FIND,L\n\tLOC\tPRSO >L\n\tSET\t'C-ELAPSED,18\n\tEQUAL?\tPRSO,ME,HANDS \\?CCL3\n\tPRINTR\t\"You're around here somewhere...\"\n?CCL3:\tEQUAL?\tL,GLOBAL-OBJECTS \\?CCL5\n\tPRINTR\t\"You find it.\"\n?CCL5:\tIN?\tPRSO,ADVENTURER \\?CCL7\n\tPRINTR\t\"You have it.\"\n?CCL7:\tIN?\tPRSO,HERE /?CTR8\n\tEQUAL?\tPRSO,PSEUDO-OBJECT \\?CCL9\n?CTR8:\tPRINTR\t\"It's right here.\"\n?CCL9:\tFSET?\tL,ACTORBIT \\?CCL13\n\tPRINTI\t\"The \"\n\tPRINTD\tL\n\tPRINTR\t\" has it.\"\n?CCL13:\tFSET?\tL,CONTBIT \\?CCL15\n\tPRINTI\t\"It's in the \"\n\tPRINTD\tL\n\tPRINTR\t\".\"\n?CCL15:\tPRINTR\t\"Beats me.\"\n\n\n\t.FUNCT\tV-TELL\n\tEQUAL?\tPRSO,ME \\?CCL3\n\tPRINTI\t\"Talking to yourself is a sign of impending mental collapse.\"\n\tCRLF\t\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRETURN\t2\n?CCL3:\tFSET?\tPRSO,ACTORBIT \\?CCL7\n\tZERO?\tP-CONT /?CCL10\n\tSET\t'WINNER,PRSO\n\tLOC\tWINNER >HERE\n\tRETURN\tHERE\n?CCL10:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" looks at you expectantly, as though he thought you were about to talk.\"\n?CCL7:\tPRINTI\t\"Talking to \"\n\tEQUAL?\tHERE,DECK-NINE \\?CCL13\n\tEQUAL?\tPRSO,PSEUDO-OBJECT \\?CCL13\n\tPRINTI\t\"the \"\n\tJUMP\t?CND11\n?CCL13:\tCALL\tA-AN\n?CND11:\tPRINTD\tPRSO\n\tPRINTI\t\"? Dr. Quarnsboggle, the Feinstein's psychiatrist, would \"\n\tEQUAL?\tBLOWUP-COUNTER,5 \\?CCL18\n\tPRINTI\t\"have been\"\n\tJUMP\t?CND16\n?CCL18:\tPRINTI\t\"be\"\n?CND16:\tPRINTI\t\" fascinated to hear that.\"\n\tCRLF\t\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tSET\t'P-CONT,FALSE-VALUE\n\tRETURN\t2\n\n\n\t.FUNCT\tV-ASK-FOR\n\tFSET?\tPRSO,ACTORBIT \\?CCL3\n\tIN?\tPRSI,PRSO \\?CCL6\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" doesn't seem inclined to give up the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\".\"\n?CCL6:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" isn't holding the \"\n\tPRINTD\tPRSI\n\tPRINTR\t\".\"\n?CCL3:\tCALL\tPERFORM,V?TELL,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-SAY,V\n\tCALL\tFIND-IN,HERE,ACTORBIT >V\n\tZERO?\tV /?CCL3\n\tSET\t'P-CONT,FALSE-VALUE\n\tPRINTI\t\"You must address the \"\n\tPRINTD\tV\n\tPRINTR\t\" directly.\"\n?CCL3:\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tSET\t'P-CONT,FALSE-VALUE\n\tCALL\tPERFORM,V?TELL,ME\n\tRSTACK\t\n\n\n\t.FUNCT\tV-TALK\n\tCALL\tPERFORM,V?TELL,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-ANSWER\n\tPRINTI\t\"Nobody is awaiting your answer.\"\n\tCRLF\t\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRTRUE\t\n\n\n\t.FUNCT\tV-REPLY\n\tPRINTI\t\"It is hardly likely that the \"\n\tPRINTD\tPRSO\n\tPRINTI\t\" is interested.\"\n\tCRLF\t\n\tSET\t'P-CONT,FALSE-VALUE\n\tSET\t'QUOTE-FLAG,FALSE-VALUE\n\tRTRUE\t\n\n\n\t.FUNCT\tV-KISS\n\tPRINTR\t\"I'd sooner kiss a pile of Antarian swamp mold.\"\n\n\n\t.FUNCT\tV-RAPE\n\tPRINTR\t\"What a (ahem!) strange idea.\"\n\n\n\t.FUNCT\tV-DIAGNOSE\n\tSET\t'C-ELAPSED,18\n\tZERO?\tSICKNESS-LEVEL \\?CCL3\n\tPRINTI\t\"You are in perfect health.\"\n\tCRLF\t\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"You are \"\n\tGRTR?\tSICKNESS-LEVEL,7 \\?CCL6\n\tPRINTI\t\"severely\"\n\tJUMP\t?CND4\n?CCL6:\tGRTR?\tSICKNESS-LEVEL,5 \\?CCL8\n\tPRINTI\t\"very\"\n\tJUMP\t?CND4\n?CCL8:\tGRTR?\tSICKNESS-LEVEL,3 \\?CCL10\n\tPRINTI\t\"somewhat\"\n\tJUMP\t?CND4\n?CCL10:\tPRINTI\t\"a bit\"\n?CND4:\tPRINTI\t\" sick and feverish.\"\n\tCRLF\t\n?CND1:\tZERO?\tSLEEPY-LEVEL \\?CCL13\n\tPRINTI\t\"You feel well-rested.\"\n\tCRLF\t\n\tJUMP\t?CND11\n?CCL13:\tPRINTI\t\"You feel \"\n\tGRTR?\tSLEEPY-LEVEL,2 \\?CCL16\n\tPRINTI\t\"phenomenally\"\n\tJUMP\t?CND14\n?CCL16:\tGRTR?\tSLEEPY-LEVEL,1 \\?CCL18\n\tPRINTI\t\"quite\"\n\tJUMP\t?CND14\n?CCL18:\tPRINTI\t\"sort of\"\n?CND14:\tPRINTI\t\" tired.\"\n\tCRLF\t\n?CND11:\tZERO?\tHUNGER-LEVEL \\?CCL21\n\tPRINTR\t\"You seem to be well-fed.\"\n?CCL21:\tPRINTI\t\"You seem to be \"\n\tGRTR?\tHUNGER-LEVEL,4 \\?CCL24\n\tPRINTI\t\"awesomely phenomenally\"\n\tJUMP\t?CND22\n?CCL24:\tGRTR?\tHUNGER-LEVEL,2 \\?CCL26\n\tPRINTI\t\"noticeably\"\n\tJUMP\t?CND22\n?CCL26:\tPRINTI\t\"fairly\"\n?CND22:\tPRINTR\t\" thirsty and hungry.\"\n\n\n\t.FUNCT\tV-WEAR\n\tFSET?\tPRSO,WEARBIT \\?CCL3\n\tPRINTI\t\"You are wearing the \"\n\tPRINTD\tPRSO\n\tPRINTC\t46\n\tCRLF\t\n\tSET\t'C-ELAPSED,18\n\tFSET\tPRSO,WORNBIT\n\tRTRUE\t\n?CCL3:\tPRINTR\t\"They're out of fashion, and besides, it wouldn't fit.\"\n\n\n\t.FUNCT\tV-REMOVE\n\tFSET?\tPRSO,WORNBIT \\?CCL3\n\tCALL\tPERFORM,V?TAKE-OFF,PRSO\n\tRTRUE\t\n?CCL3:\tCALL\tPERFORM,V?TAKE,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-TAKE-OFF\n\tFSET?\tPRSO,VEHBIT \\?CCL3\n\tCALL\tPERFORM,V?DISEMBARK,PRSO\n\tRTRUE\t\n?CCL3:\tFSET?\tPRSO,WORNBIT \\?CCL5\n\tPRINTI\t\"You are no longer wearing the \"\n\tPRINTD\tPRSO\n\tPRINTC\t46\n\tCRLF\t\n\tSET\t'C-ELAPSED,18\n\tFCLEAR\tPRSO,WORNBIT\n\tRTRUE\t\n?CCL5:\tPRINTR\t\"You aren't wearing that.\"\n\n\n\t.FUNCT\tV-STEP-ON\n\tPRINTR\t\"That's a silly thing to do.\"\n\n\n\t.FUNCT\tV-PUT-ON\n\tEQUAL?\tPRSO,MAGNET,LADDER \\?CCL3\n\tCALL\tPERFORM,V?ATTRACT,PRSO,PRSI\n\tRTRUE\t\n?CCL3:\tCALL\tPERFORM,V?PUT,PRSO,PRSI\n\tRTRUE\t\n\n\n\t.FUNCT\tV-NO\n\tPRINTR\t\"You sound rather negative.\"\n\n\n\t.FUNCT\tV-YES\n\tPRINTR\t\"You sound rather positive.\"\n\n\n\t.FUNCT\tV-MAYBE\n\tPRINTR\t\"You sound rather indecisive.\"\n\n\n\t.FUNCT\tV-POINT\n\tIN?\tFLOYD,HERE \\?CCL3\n\tCALL\tFLOYDS-FAMOUS-DOOR-ROUTINE\n\tRSTACK\t\n?CCL3:\tPRINTR\t\"It's usually impolite to point.\"\n\n\n\t.FUNCT\tV-SET\n\tZERO?\tPRSI \\?CCL3\n\tEQUAL?\tPRSO,COMBINATION-DIAL,LASER-DIAL \\?CCL6\n\tPRINTR\t\"You must specify a number to set the dial to.\"\n?CCL6:\tPRINTI\t\"Turning the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" accomplishes nothing.\"\n?CCL3:\tPRINTI\t\"Setting \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\" is a strange concept.\"\n\n\n\t.FUNCT\tV-$VERIFY\n\tEQUAL?\tPRSO,INTNUM \\?CCL3\n\tEQUAL?\tP-NUMBER,502 \\?CCL3\n\tPRINTN\tSERIAL\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tPRINTI\t\"Verifying...\"\n\tCRLF\t\n\tVERIFY\t \\?CCL8\n\tPRINTR\t\"Game correct. (YAY!)\"\n?CCL8:\tCRLF\t\n\tPRINTR\t\"** Game File Failure **\"\n\n\n\t.FUNCT\tV-$COMMAND\n\tDIRIN\t1\n\tRTRUE\t\n\n\n\t.FUNCT\tV-$RANDOM\n\tEQUAL?\tPRSO,INTNUM /?CCL3\n\tPRINTR\t\"Illegal call to #RANDOM.\"\n?CCL3:\tSUB\t0,P-NUMBER\n\tRANDOM\tSTACK\n\tRTRUE\t\n\n\n\t.FUNCT\tV-$RECORD\n\tDIROUT\tD-RECORD-ON\n\tRTRUE\t\n\n\n\t.FUNCT\tV-$UNRECORD\n\tDIROUT\tD-RECORD-OFF\n\tRTRUE\t\n\n\n\t.FUNCT\tV-STAND-ON\n\tPRINTI\t\"Standing on \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\" seems like a waste of time.\"\n\n\n\t.FUNCT\tV-REACH\n\tFIRST?\tPRSO \\?CCL3\n\tPRINTI\t\"There is something\"\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"There is nothing\"\n?CND1:\tPRINTI\t\" inside the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-REACH-FOR\n\tFSET?\tPRSO,TAKEBIT \\?CCL3\n\tCALL\tPERFORM,V?TAKE,PRSO\n\tRTRUE\t\n?CCL3:\tIN?\tPRSO,HERE \\?CCL5\n\tPRINTR\t\"It's here! Now what?\"\n?CCL5:\tPRINTR\t\"It is out of reach.\"\n\n\n\t.FUNCT\tDO-WALK,DIR\n\tSET\t'P-WALK-DIR,DIR\n\tCALL\tPERFORM,V?WALK,DIR\n\tRTRUE\t\n\n\n\t.FUNCT\tV-FLUSH\n\tPRINTI\t\"Flush \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\"?\"\n\n\n\t.FUNCT\tV-FLY\n\tPRINTR\t\"Humans are not usually equipped for flying.\"\n\n\n\t.FUNCT\tV-SMILE\n\tPRINTR\t\"How pleasant!\"\n\n\n\t.FUNCT\tV-SALUTE\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" fails to return your salute.\"\n\n\n\t.FUNCT\tV-ATTRACT\n\tPRINTR\t\"Nothing interesting happens.\"\n\n\n\t.FUNCT\tV-ZATTRACT\n\tCALL\tPERFORM,V?ATTRACT,PRSI,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tV-SPAN\n\tPRINTR\t\"You can't.\"\n\n\n\t.FUNCT\tNUMBERS-ONLY\n\tPRINTR\t\"This keyboard only has numeric keys. You can type numbers on it, but not words.\"\n\n\n\t.FUNCT\tV-TYPE\n\tEQUAL?\tHERE,MINI-BOOTH \\?CCL3\n\tEQUAL?\tPRSO,INTNUM /?CCL6\n\tCALL\tNUMBERS-ONLY\n\tRSTACK\t\n?CCL6:\tZERO?\tMINI-ACTIVATED /?CCL8\n\tEQUAL?\tP-NUMBER,384 \\?CCL11\n\tPRINTI\t\"You notice the walls of the booth sliding away in all directions, followed by a momentary queasiness in the pit of your stomach...\"\n\tCRLF\t\n\tCRLF\t\n\tCALL\tGOTO,STATION-384\n\tSET\t'BEEN-HERE,TRUE-VALUE\n\tRETURN\tBEEN-HERE\n?CCL11:\tLESS?\tP-NUMBER,10 \\?CCL13\n\tPRINTR\t\"After a pause a recorded voice says \"\"There are no one-digit computer sectors...clearing entry...please type damaged sector number.\"\"\"\n?CCL13:\tGRTR?\tP-NUMBER,1024 \\?CCL15\n\tPRINTR\t\"A recorded voice says \"\"Databanks indicate no computer sector corresponding to that number. Please check with your supervisor.\"\"\"\n?CCL15:\tCALL\tJIGS-UP,STR?93\n\tRSTACK\t\n?CCL8:\tPRINTR\t\"A recording says \"\"Internal computer repair booth not activated.\"\"\"\n?CCL3:\tEQUAL?\tHERE,LIBRARY-LOBBY \\?CCL17\n\tCALL\tLIBRARY-TYPE\n\tRSTACK\t\n?CCL17:\tPRINTR\t\"Type on what???\"\n\n\n\t.FUNCT\tPRE-SZAP\n\tCALL\tPERFORM,V?ZAP,PRSI,PRSO\n\tRTRUE\t\n\n\n\t.FUNCT\tPRE-ZAP\n\tZERO?\tPRSI \\FALSE\n\tEQUAL?\tPRSO,LASER /FALSE\n\tIN?\tLASER,ADVENTURER \\?CCL7\n\tCALL\tPERFORM,V?ZAP,LASER,PRSO\n\tRTRUE\t\n?CCL7:\tPRINTR\t\"You have nothing to shoot it with.\"\n\n\n\t.FUNCT\tV-ZAP\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\?CCL3\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSO,LASER /?CCL5\n\tPRINTR\t\"You can't shoot that.\"\n?CCL5:\tZERO?\tPRSI \\?CCL7\n\tPRINTI\t\"At what?\"\n\tRTRUE\t\n?CCL7:\tPRINTR\t\"Nothing happens.\"\n\n\n\t.FUNCT\tV-SZAP\n\tPRINTR\t\"Zap!\"\n\n\n\t.FUNCT\tV-SCRUB\n\tZERO?\tPRSI \\?CCL3\n\tIN?\tSCRUB-BRUSH,ADVENTURER /?CCL3\n\tIN?\tTOWEL,ADVENTURER /?CCL3\n\tPRINTR\t\"You don't have anything to scrub with!\"\n?CCL3:\tZERO?\tPRSI /?CCL8\n\tEQUAL?\tPRSI,SCRUB-BRUSH,TOWEL /?CCL8\n\tPRINTR\t\"You can't scrub something with that!\"\n?CCL8:\tFSET?\tPRSO,ACTORBIT \\?CCL12\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" prefers cleaning himself.\"\n?CCL12:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is a bit shinier now.\"\n\n\n\t.FUNCT\tV-POUR\n\tPRINTR\t\"Pouring or spilling non-liquids is specifically forbidden by section 17.9.2 of the Galactic Adventure Game Compendium of Rules.\"\n\n\n\t.FUNCT\tV-EMPTY,X\n\tFSET?\tPRSO,OPENBIT /?CCL3\n\tPRINTR\t\"You can't empty it when it's closed!\"\n?CCL3:\tFIRST?\tPRSO \\?CCL5\n?PRG6:\tFIRST?\tPRSO >X \\?REP7\n\tEQUAL?\tX,HIGH-PROTEIN,CHEMICAL-FLUID \\?CCL13\n\tREMOVE\tX\n\tJUMP\t?PRG6\n?CCL13:\tMOVE\tX,HERE\n\tJUMP\t?PRG6\n?REP7:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" is now empty.\"\n?CCL5:\tPRINTI\t\"There's nothing in the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-THROW-OFF\n\tPRINTR\t\"It's difficult to see how that can be done.\"\n\n\n\t.FUNCT\tV-SLEEP\n\tZERO?\tSLEEPY-LEVEL \\?CCL3\n\tPRINTR\t\"You're not tired!\"\n?CCL3:\tCALL\tINT,I-FALL-ASLEEP\n\tGET\tSTACK,C-ENABLED?\n\tZERO?\tSTACK /?CCL5\n\tPRINTR\t\"You'll probably be asleep before you know it.\"\n?CCL5:\tPRINTR\t\"Civilized members of society usually sleep in beds.\"\n\n\n\t.FUNCT\tV-FIX-IT\n\tPRINTR\t\"You shouldn't expect sweeping general commands like this to work. If you want to repair something, you must perform the specific steps required.\"\n\n\n\t.FUNCT\tV-OIL\n\tZERO?\tPRSI \\?CCL3\n\tIN?\tOIL-CAN,ADVENTURER \\?CCL6\n\tCALL\tPERFORM,V?OIL,PRSO,OIL-CAN\n\tRTRUE\t\n?CCL6:\tPRINTR\t\"Oil it with what?\"\n?CCL3:\tEQUAL?\tPRSI,OIL-CAN \\?CCL8\n\tEQUAL?\tPRSO,FLOYD \\?CCL11\n\tFSET?\tFLOYD,RLANDBIT \\?CCL11\n\tPRINTR\t\"Floyd thanks you for your thoughtfulness.\"\n?CCL11:\tPRINTI\t\"The \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" doesn't need oiling.\"\n?CCL8:\tPRINTI\t\"You can't use \"\n\tFSET?\tPRSI,VOWELBIT \\?CCL16\n\tPRINTI\t\"an \"\n\tJUMP\t?CND14\n?CCL16:\tPRINTI\t\"a \"\n?CND14:\tPRINTD\tPRSI\n\tPRINTR\t\" as an oil can!\"\n\n\n\t.FUNCT\tV-SHOW\n\tCALL\tHELD?,PRSO\n\tZERO?\tSTACK \\?CCL3\n\tCALL\tNOT-HOLDING\n\tRSTACK\t\n?CCL3:\tEQUAL?\tPRSI,ME \\?CCL5\n\tCALL\tPERFORM,V?EXAMINE,PRSO\n\tRTRUE\t\n?CCL5:\tFSET?\tPRSI,ACTORBIT \\?CCL7\n\tPRINTI\t\"The \"\n\tPRINTD\tPRSI\n\tPRINTI\t\" looks at the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n?CCL7:\tPRINTI\t\"Why would you want to show something to \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\"?\"\n\n\n\t.FUNCT\tV-INSERT\n\tEQUAL?\tHERE,LIBRARY \\?CCL3\n\tPRINTI\t\"(into the spool reader)\"\n\tCRLF\t\n\tCALL\tPERFORM,V?PUT,PRSO,SPOOL-READER\n\tRTRUE\t\n?CCL3:\tEQUAL?\tHERE,KITCHEN \\?CCL5\n\tPRINTI\t\"(into the niche)\"\n\tCRLF\t\n\tCALL\tPERFORM,V?PUT,PRSO,DISPENSER\n\tRTRUE\t\n?CCL5:\tPRINTI\t\"You'll have to specify where you want to put the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-TASTE\n\tEQUAL?\tPRSO,HIGH-PROTEIN,RED-GOO /?CTR2\n\tEQUAL?\tPRSO,BROWN-GOO,GREEN-GOO \\?CCL3\n?CTR2:\tPRINTR\t\"It tastes edible.\"\n?CCL3:\tEQUAL?\tPRSO,CHEMICAL-FLUID \\?CCL7\n\tPRINTR\t\"It burns your tongue.\"\n?CCL7:\tPRINTI\t\"It tastes just like \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tV-ZESCAPE\n\tEQUAL?\tHERE,BRIG \\?CCL3\n\tPRINTR\t\"Houdini himself would be stumped by this cell.\"\n?CCL3:\tPRINTR\t\"There is no escape. We control the horizontal. We control the vertical. We control the disk drives...\"\n\n\n\t.FUNCT\tV-TIME\n\tIN?\tCHRONOMETER,ADVENTURER \\?CCL3\n\tCALL\tTELL-TIME\n\tCRLF\t\n\tRTRUE\t\n?CCL3:\tPRINTR\t\"It's hard to say, since you've removed your chronometer.\"\n\n\n\t.FUNCT\tV-PLAY\n\tPRINTI\t\"How does one play \"\n\tCALL\tA-AN\n\tPRINTD\tPRSO\n\tPRINTR\t\"?\"\n\n\n\t.FUNCT\tV-PLAY-WITH\n\tFSET?\tPRSO,ACTORBIT \\?CCL3\n\tCALL\tPERFORM,V?PLAY,GLOBAL-GAMES\n\tRTRUE\t\n?CCL3:\tPRINTR\t\"I sometimes wonder about your mental health.\"\n\n\n\t.FUNCT\tV-SCOLD\n\tFSET?\tPRSO,ACTORBIT \\?CCL3\n\tCALL\tPERFORM,V?TELL,PRSO\n\tRTRUE\t\n?CCL3:\tPRINTI\t\"For some reason, the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\" doesn't seem too chagrined.\"\n\n\n\t.FUNCT\tROB,WHO,WHERE,N,X\n\tFIRST?\tWHO >X /?PRG2\n?PRG2:\tZERO?\tX /TRUE\n\tNEXT?\tX >N /?BOGUS7\n?BOGUS7:\tMOVE\tX,WHERE\n\tSET\t'X,N\n\tJUMP\t?PRG2\n\n\n\t.FUNCT\tTHIS-IS-IT,OBJ\n\tSET\t'P-IT-OBJECT,OBJ\n\tSET\t'P-IT-LOC,HERE\n\tRETURN\tP-IT-LOC\n\n\n\t.FUNCT\tACCESSIBLE?,OBJ,L\n\tLOC\tOBJ >L\n\tFSET?\tOBJ,INVISIBLE /FALSE\n\tEQUAL?\tOBJ,PSEUDO-OBJECT \\?CCL5\n\tEQUAL?\tLAST-PSEUDO-LOC,HERE /TRUE\n\tRFALSE\t\n?CCL5:\tZERO?\tL /FALSE\n\tEQUAL?\tL,GLOBAL-OBJECTS /TRUE\n\tEQUAL?\tL,LOCAL-GLOBALS \\?CCL14\n\tCALL\tGLOBAL-IN?,OBJ,HERE\n\tZERO?\tSTACK \\TRUE\n?CCL14:\tCALL\tMETA-LOC,OBJ\n\tEQUAL?\tSTACK,HERE \\FALSE\n\tEQUAL?\tL,WINNER,HERE /TRUE\n\tFSET?\tL,OPENBIT \\FALSE\n\tCALL\tACCESSIBLE?,L\n\tZERO?\tSTACK /FALSE\n\tRTRUE\t\n\n\n\t.FUNCT\tVISIBLE?,OBJ,L\n\tLOC\tOBJ >L\n\tCALL\tACCESSIBLE?,OBJ\n\tZERO?\tSTACK \\TRUE\n\tCALL\tSEE-INSIDE?,L\n\tZERO?\tSTACK /FALSE\n\tCALL\tVISIBLE?,L\n\tZERO?\tSTACK /FALSE\n\tRTRUE\t\n\n\n\t.FUNCT\tA-AN\n\tFSET?\tPRSO,VOWELBIT \\?CCL3\n\tPRINTI\t\"an \"\n\tRTRUE\t\n?CCL3:\tPRINTI\t\"a \"\n\tRTRUE\t\n\n\n\t.FUNCT\tALREADY,ON-OFF,OBJ=0\n\tZERO?\tOBJ /?CCL3\n\tPRINTI\t\"The \"\n\tPRINTD\tOBJ\n\tPRINTI\t\" is \"\n\tJUMP\t?CND1\n?CCL3:\tPRINTI\t\"It's \"\n?CND1:\tPRINTI\t\"already \"\n\tPRINT\tON-OFF\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tNOT-HOLDING\n\tPRINTI\t\"You're not holding the \"\n\tPRINTD\tPRSO\n\tPRINTR\t\".\"\n\n\n\t.FUNCT\tTAKE-IT-OFF\n\tPRINTR\t\"You'll have to take it off, first.\"\n\n\n\t.FUNCT\tANYMORE\n\tPRINTR\t\"You can't see that anymore.\"\n\n\n\t.FUNCT\tFIXED-FONT-ON\n\tGET\t0,8\n\tBOR\tSTACK,2\n\tPUT\t0,8,STACK\n\tRTRUE\t\n\n\n\t.FUNCT\tFIXED-FONT-OFF\n\tGET\t0,8\n\tBAND\tSTACK,-3\n\tPUT\t0,8,STACK\n\tRTRUE\t\n\n\t.ENDI\n"
  },
  {
    "path": "verbs.zil",
    "content": "\"VERBS for\n\t\t\t       PLANETFALL\n\t  (c) COPYRIGHT 1983 INFOCOM INC. ALL RIGHTS RESERVED\"\n\n<GLOBAL VERBOSE <>>\n\n<GLOBAL SUPER-BRIEF <>>\n\n;<GDECL (VERBOSE SUPER-BRIEF) <OR ATOM FALSE>>\n\n<ROUTINE V-VERBOSE ()\n\t <SETG VERBOSE T>\n\t <SETG SUPER-BRIEF <>>\n\t <TELL \"Maximum verbosity.\" CR CR>\n\t <V-LOOK>>\n\n<ROUTINE V-BRIEF ()\n\t <SETG VERBOSE <>>\n\t <SETG SUPER-BRIEF <>>\n\t <TELL \"Brief descriptions.\" CR>>\n\n<ROUTINE V-SUPER-BRIEF ()\n\t <SETG SUPER-BRIEF T>\n\t <TELL \"Super-brief descriptions.\" CR>>\n\n<ROUTINE V-LOOK ()\n\t <SETG C-ELAPSED 9>\n\t <COND (<DESCRIBE-ROOM T>\n\t\t<DESCRIBE-OBJECTS T>)>>\n\n<ROUTINE V-LOOK-CRETIN ()\n\t <TELL\n\"This isn't a primitive two-word-parser adventure game. If you want\nto look AT that object, please say so.\" CR>>\n\n<ROUTINE V-FIRST-LOOK ()\n\t <COND (<DESCRIBE-ROOM>\n\t\t<COND (<NOT ,SUPER-BRIEF>\n\t\t       <DESCRIBE-OBJECTS>)>)>>\n\n<ROUTINE PRE-EXAMINE ()\n\t <COND (<AND <NOT <HERE? ,PRSO>>\n\t\t     <NOT <IN? ,PRSO ,GLOBAL-OBJECTS>>\n\t\t     <NOT <EQUAL? ,PRSO ,PSEUDO-OBJECT>>\n\t\t     <NOT <AND <IN? ,PRSO ,LOCAL-GLOBALS>\n\t\t\t       <GLOBAL-IN? ,PRSO ,HERE>>>\n\t\t     <NOT <EQUAL? ,PRSO ,GRUE>>>\n\t\t<TELL \"You can't see any\">\n\t\t<PRSO-PRINT>\n\t\t<TELL \" here!\" CR>)>>\t\t\n\n<ROUTINE V-EXAMINE ()\n\t <SETG C-ELAPSED 32>\n\t <COND (<GETP ,PRSO ,P?TEXT>\n\t\t<TELL <GETP ,PRSO ,P?TEXT> CR>)\n\t       (<FSET? ,PRSO ,DOORBIT>\n\t\t<V-LOOK-INSIDE>)\n\t       (<FSET? ,PRSO ,CONTBIT>\n\t\t<COND (<FSET? ,PRSO ,OPENBIT>\n\t\t       <V-LOOK-INSIDE>)\n\t\t      (T\n\t\t       <TELL \"The \" D ,PRSO \" is closed.\" CR>)>)\n\t       (T\n\t\t<TELL \"I see nothing special about the \" D ,PRSO \".\" CR>)>>\n\n<GLOBAL LIT <>>\n\n<ROUTINE DESCRIBE-ROOM (\"OPTIONAL\" (LOOK? <>) \"AUX\" V? STR AV)\n\t <SET V? <OR .LOOK? ,VERBOSE>>\n\t <COND (<NOT ,LIT>\n\t\t<TELL \"It is pitch black. You might be eaten by a grue.\" CR>\n\t\t<COND (<EQUAL? ,HERE ,TRANSPORTATION-SUPPLY>\n\t\t       <TELL \"There is light to the south.\" CR>)>\n\t\t<RETURN <>>)>\n\t <COND (<NOT <FSET? ,HERE ,TOUCHBIT>>\n\t\t<FSET ,HERE ,TOUCHBIT>\n\t\t<SET V? T>)>\n\t <COND (<IN? ,HERE ,ROOMS>\n\t\t<TELL D ,HERE>\n\t\t<COND (<FSET? <LOC ,ADVENTURER> ,VEHBIT>\n\t\t       <TELL \", in the \" D <LOC ,ADVENTURER>>)>\n\t\t<CRLF>)>\n\t <COND (<OR .LOOK? <NOT ,SUPER-BRIEF>>\n\t\t<SET AV <LOC ,ADVENTURER>>\n\t\t;<COND (<FSET? .AV ,VEHBIT>\n\t\t       <TELL \"(You are in the \" D .AV \".)\" CR>)>\n\t\t<COND (<AND .V? <APPLY <GETP ,HERE ,P?ACTION> ,M-LOOK>>\n\t\t       <RTRUE>)\n\t\t      (<AND .V? <SET STR <GETP ,HERE ,P?LDESC>>>\n\t\t       <TELL .STR CR>)\n\t\t      (T \n\t\t       <APPLY <GETP ,HERE ,P?ACTION> ,M-FLASH>)>\n\t\t<COND (<AND <NOT <EQUAL? ,HERE .AV>>\n\t\t\t    <FSET? .AV ,VEHBIT>>\n\t\t       <APPLY <GETP .AV ,P?ACTION> ,M-LOOK>)>)>\n\t T>\n\n<ROUTINE DESCRIBE-OBJECTS (\"OPTIONAL\" (V? <>))\n\t <COND (,LIT\n\t\t<COND (<FIRST? ,HERE>\n\t\t       <PRINT-CONT ,HERE <SET V? <OR .V? ,VERBOSE>> -1>)>)\n\t       (T\n\t\t<TELL \"You can't see anything in the dark.\" CR>)>>\n\n\"DESCRIBE-OBJECT -- takes object and flag.  if flag is true will print a\nlong description (fdesc or ldesc), otherwise will print short.\"\n\n<ROUTINE DESCRIBE-OBJECT (OBJ V? LEVEL \"AUX\" (STR <>) AV)\n\t <COND (<AND <0? .LEVEL>\n\t\t     <APPLY <GETP .OBJ ,P?DESCFCN> ,M-OBJDESC>>\n\t\t<RTRUE>)\n\t       (<EQUAL? .OBJ ,SPOUT-PLACED>\n\t\t<RTRUE>)\n\t       (<AND <0? .LEVEL>\n\t\t     <OR <AND <NOT <FSET? .OBJ ,TOUCHBIT>>\n\t\t\t      <SET STR <GETP .OBJ ,P?FDESC>>>\n\t\t\t <SET STR <GETP .OBJ ,P?LDESC>>>>\n\t\t<TELL .STR>)\n\t       (<AND <0? .LEVEL>>\n\t\t<TELL \"There is \">\n\t\t<COND (<FSET? .OBJ ,VOWELBIT>\n\t\t       <TELL \"an \">)\n\t\t      (T\n\t\t       <TELL \"a \">)>\n\t\t<TELL D .OBJ \" here.\">)\n\t       (T\n\t\t<TELL <GET ,INDENTS .LEVEL>>\n\t\t<COND (<FSET? .OBJ ,VOWELBIT>\n\t\t       <TELL \"An \">)\n\t\t      (T\n\t\t       <TELL \"A \">)>\n\t\t<TELL D .OBJ>\n\t\t<COND (<FSET? .OBJ ,WORNBIT> <TELL \" (being worn)\">)>)>\n\t <COND (<AND <0? .LEVEL>\n\t\t     <SET AV <LOC ,ADVENTURER>>\n\t\t     <FSET? .AV ,VEHBIT>>\n\t\t<TELL \" (outside the \" D .AV \")\">)>\n\t <CRLF>\n\t <COND (<AND <SEE-INSIDE? .OBJ> <FIRST? .OBJ>>\n\t\t<PRINT-CONT .OBJ .V? .LEVEL>)>>\n\n<ROUTINE PRINT-CONT (OBJ \"OPTIONAL\" (V? <>) (LEVEL 0)\n\t\t     \"AUX\" Y 1ST? AV STR (PV? <>) (INV? <>))\n\t <COND (<NOT <SET Y <FIRST? .OBJ>>>\n\t\t<RTRUE>)>\n\t <COND (<AND <SET AV <LOC ,ADVENTURER>>\n\t\t     <FSET? .AV ,VEHBIT>>\n\t\tT)\n\t       (T\n\t\t<SET AV <>>)>\n\t <SET 1ST? T>\n\t <COND (<EQUAL? ,ADVENTURER .OBJ <LOC .OBJ>>\n\t\t<SET INV? T>)\n\t       (T\n\t\t<REPEAT ()\n\t\t\t<COND (<NOT .Y> <RETURN <NOT .1ST?>>)\n\t\t\t      (<EQUAL? .Y .AV> <SET PV? T>)\n\t\t\t      (<EQUAL? .Y ,WINNER>)\n\t\t\t      (<AND <NOT <FSET? .Y ,INVISIBLE>>\n\t\t\t\t    <NOT <FSET? .Y ,TOUCHBIT>>\n\t\t\t\t    <SET STR <GETP .Y ,P?FDESC>>>\n\t\t\t       <COND (<NOT <FSET? .Y ,NDESCBIT>>\n\t\t\t\t      <TELL .STR CR>)>\n\t\t\t       <COND (<AND <SEE-INSIDE? .Y>\n\t\t\t\t\t   <NOT <GETP <LOC .Y> ,P?DESCFCN>>\n\t\t\t\t\t   <FIRST? .Y>>\n\t\t\t\t      <PRINT-CONT .Y .V? 0>)>)>\n\t\t\t<SET Y <NEXT? .Y>>>)>\n\t <SET Y <FIRST? .OBJ>>\n\t <REPEAT ()\n\t\t <COND (<NOT .Y>\n\t\t\t<COND (<AND .PV? .AV <FIRST? .AV>>\n\t\t\t       <PRINT-CONT .AV .V? .LEVEL>)>\n\t\t\t<RETURN <NOT .1ST?>>)\n\t\t       (<EQUAL? .Y .AV ,ADVENTURER>)\n\t\t       (<AND <NOT <FSET? .Y ,INVISIBLE>>\n\t\t\t     <OR .INV?\n\t\t\t\t <FSET? .Y ,TOUCHBIT>\n\t\t\t\t <NOT <GETP .Y ,P?FDESC>>>>\n\t\t\t<COND (<NOT <FSET? .Y ,NDESCBIT>>\n\t\t\t       <COND (.1ST?\n\t\t\t\t      <COND (<FIRSTER .OBJ .LEVEL>\n\t\t\t\t\t     <COND (<L? .LEVEL 0>\n\t\t\t\t\t\t    <SET LEVEL 0>)>)>\n\t\t\t\t      <SET LEVEL <+ 1 .LEVEL>>\n\t\t\t\t      <SET 1ST? <>>)>\n\t\t\t       <DESCRIBE-OBJECT .Y .V? .LEVEL>)\n\t\t\t      (<AND <FIRST? .Y> <SEE-INSIDE? .Y>>\n\t\t\t       <PRINT-CONT .Y .V? .LEVEL>)>)>\n\t\t <SET Y <NEXT? .Y>>>>\n\n<ROUTINE FIRSTER (OBJ LEVEL)\n\t <COND (<EQUAL? .OBJ ,ADVENTURER>\n\t\t<TELL \"You are carrying:\" CR>)\n\t       (<NOT <IN? .OBJ ,ROOMS>>\n\t\t<COND (<G? .LEVEL 0>\n\t\t       <TELL <GET ,INDENTS .LEVEL>>)>\n\t\t<COND (<FSET? .OBJ ,SURFACEBIT>\n\t\t       <TELL \"Sitting on the \" D .OBJ \" is:\" CR>)\n\t\t      (<FSET? .OBJ ,ACTORBIT>\n\t\t       <TELL \"The \" D .OBJ \" is holding:\" CR>)\n\t\t      (T\n\t\t       <TELL \"The \" D .OBJ \" contains:\" CR>)>)>>\n\n\f\n;\"scoring\"\n\n<GLOBAL INTERNAL-MOVES 0>\n\n<GLOBAL SCORE 0>\n\n<GLOBAL DAY 1>\n\n<ROUTINE SCORE-OBJ (OBJ)\n\t <COND (<G? <GETP .OBJ ,P?VALUE> 0>\n\t\t<FSET .OBJ ,TOUCHBIT>\n\t\t<SETG SCORE <+ ,SCORE <GETP .OBJ ,P?VALUE>>>\n\t\t<PUTP .OBJ ,P?VALUE 0>)>>\n\n<ROUTINE V-SCORE (\"OPTIONAL\" (ASK? T))\n\t <TELL \"Your score \">\n\t <COND (.ASK?\n\t\t<TELL \"would be \">)\n\t       (T\n\t\t<TELL \"is \">)>\n\t <TELL N ,SCORE>\n\t <TELL \" (out of 80 points). It is Day \">\n\t <TELL N, DAY>\n\t <TELL \" of your adventure. Current Galactic Standard Time \">\n\t <COND (<IN? ,CHRONOMETER ,ADVENTURER>\n\t\t<TELL \"(adjusted to your local day-cycle) is \">\n\t\t<COND (<FSET? ,CHRONOMETER ,MUNGEDBIT>\n\t\t       <TELL N ,MUNGED-TIME>)\n\t\t      (T\n\t\t       <TELL N ,INTERNAL-MOVES>)>)\n\t       (T\n\t\t<TELL\n\"is impossible to determine, since you're not wearing your chronometer\">)>\n\t <TELL \".\" CR>\n\t <TELL \"This score gives you the rank of \">\n\t <COND (<EQUAL? ,SCORE 80> <TELL \"Galactic Overlord\">)\n\t       (<G? ,SCORE 72> <TELL \"Cluster Admiral\">)\n\t       (<G? ,SCORE 64> <TELL \"System Captain\">)\n\t       (<G? ,SCORE 48> <TELL \"Planetary Commodore\">)\n\t       (<G? ,SCORE 36> <TELL \"Lieutenant\">)\n\t       (<G? ,SCORE 24> <TELL \"Ensign First Class\">)\n\t       (<G? ,SCORE 12> <TELL \"Space Cadet\">)\n\t       (T <TELL \"Beginner\">)>\n\t <TELL \".\" CR>\n\t ,SCORE>\n\n<ROUTINE FINISH (DIED \"OPTIONAL\" (REPEATING <>))\n\t <CRLF>\n\t <COND (<NOT .REPEATING>\n\t\t<V-SCORE>\n\t\t<COND (.DIED\n\t\t       <TELL CR\n\"Oh, well. According to the Treaty of Gishen IV, signed in 8747 GY, all\nadventure game players must be given another chance after dying. In the\ninterests of interstellar peace...\" CR>)>\n\t\t;<V-SCORE>\n\t\t;<CRLF>)>\n\t <PUTB ,P-INBUF 0 10> ;\"so you can't input too many characters\"\n\t <TELL CR\n\"Would you like to restart the game from the beginning, restore a saved game\nposition, or end this session of the game? (Type RESTART, RESTORE, or QUIT.)\"\nCR CR \">\">\n\t <READ ,P-INBUF ,P-LEXV>\n\t <PUTB ,P-INBUF 0 80>\n\t <COND (<EQUAL? <GET ,P-LEXV 1> ,W?RESTAR>\n\t        <RESTART>\n\t\t<TELL \"Failed.\" CR>\n\t\t<FINISH <> T>)\n\t       (<EQUAL? <GET ,P-LEXV 1> ,W?RESTOR>\n\t\t<COND (<RESTORE>\n\t\t       <TELL \"Ok.\" CR>)\n\t\t      (T\n\t\t       <TELL \"Failed.\" CR>\n\t\t       <FINISH <> T>)>)\n\t       (<EQUAL? <GET ,P-LEXV 1> ,W?QUIT ,W?Q>\n\t\t;<TELL \"You took \" N ,ELAPSED-MOVES \" moves.\" CR>\n\t\t<QUIT>)\n\t       (T\n\t\t<FINISH <> T>)>>\n\n<ROUTINE V-QUIT ;(\"OPTIONAL\" (ASK? T) \"AUX\" SCOR) ()\n\t <V-SCORE>\n\t <COND (<AND <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL CR \"Floyd grins impishly. \\\"Giving up, huh?\\\"\" CR>)>\n\t <TELL CR \"Do you wish to leave the game? (Y is affirmative): \">\n\t <COND (<YES?>\n\t\t<QUIT>)\n\t       (T\n\t\t<TELL \"Ok.\" CR>)>>\n\n<ROUTINE YES? ()\n\t <PUTB ,P-INBUF 0 10> ;\"so you can't input too many characters\"\n\t <PRINTI \">\">\n\t <READ ,P-INBUF ,P-LEXV>\n\t <PUTB ,P-INBUF 0 80>\n\t <COND (<EQUAL? <GET ,P-LEXV 1> ,W?YES ,W?Y>\n\t\t<RTRUE>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<ROUTINE V-VERSION (\"AUX\" (CNT 17))\n\t <TELL\n\"PLANETFALL|\nInfocom interactive fiction - a science fiction story|\nCopyright (c) 1983 by Infocom, Inc. All rights reserved.|\n\">\n\t ;<COND (<NOT <EQUAL? <BAND <GETB 0 1> 8> 0>>\n\t\t<TELL \"Licensed to Tandy Corporation.|\">)>\n\t <TELL\n\"PLANETFALL is a registered trademark of Infocom, Inc.|\nRelease \">\n\t <PRINTN <BAND <GET 0 1> *3777*>>\n\t <TELL \" / Serial number \">\n\t <REPEAT ()\n\t\t <COND (<G? <SET CNT <+ .CNT 1>> 23>\n\t\t\t<RETURN>)\n\t\t       (T\n\t\t\t<PRINTC <GETB 0 .CNT>>)>>\n\t <CRLF>\n\t <COND (<AND <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL CR\n\"\\\"Last version was better,\\\" says Floyd. \\\"More bugs. Bugs make\ngame fun.\\\"\" CR>)>>\n\n<ROUTINE V-AGAIN (\"AUX\" OBJ)\n\t <COND (<NOT ,L-PRSA>\n\t\t<ANYMORE>)\n\t       (<AND <NOT <EQUAL? ,HERE ,LAST-PSEUDO-LOC>>\n\t\t     <EQUAL? ,PSEUDO-OBJECT ,L-PRSO ,L-PRSI>>\n\t\t<SETG L-PRSA <>>\n\t\t<ANYMORE>)\n\t       (<EQUAL? ,L-PRSA ,V?WALK>\n\t\t<DO-WALK ,L-PRSO>)\n\t       (T\n\t        <SET OBJ\n\t\t     <COND (<AND ,L-PRSO\n\t\t\t\t <EQUAL? <LOC ,L-PRSO> <>>>\n\t\t\t    ,L-PRSO)\n\t\t\t   (<AND ,L-PRSI\n\t\t\t\t <EQUAL? <LOC ,L-PRSI> <>>>\n\t\t\t    ,L-PRSI)>>\n\t\t<COND (<AND .OBJ \n\t\t\t    <NOT <EQUAL? .OBJ ,PSEUDO-OBJECT ,ROOMS>>>\n\t\t       <ANYMORE>\n\t\t       <RFATAL>)\n\t\t      (T\n\t\t       <PERFORM ,L-PRSA ,L-PRSO ,L-PRSI>\n\t\t       <RTRUE>)>)>>\n\n\f\n;\"death\"\n\n<ROUTINE JIGS-UP (DESC \"OPTIONAL\" (PLAYER? <>))\n \t <TELL .DESC CR>\n\t <TELL CR\n\"    ****  You have died  ****\" CR>\n\t <FINISH T>>\n\n<ROUTINE V-RESTORE ()\n\t <COND (<AND <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL\n\"Floyd looks disappointed, but understanding. \\\"That part of the game was more\nfun than this part,\\\" he admits.\" CR CR>)>\n\t <COND (<RESTORE>\n\t\t<TELL \"Ok.\" CR>\n\t\t;<V-FIRST-LOOK>)\n\t       (T\n\t\t<TELL \"Failed.\" CR>)>>\n\n<ROUTINE V-SAVE ()\n\t <COND (<AND <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL\n\"Floyd's eyes light up. \\\"Oh boy! Are we gonna try something\ndangerous now?\\\"\" CR CR>)>\n\t <COND (<SAVE>\n\t        <TELL \"Ok.\" CR>)\n\t       (T\n\t\t<TELL \"Failed.\" CR>)>>\n\n<ROUTINE V-RESTART ()\n\t <V-SCORE T>\n\t <COND (<AND <IN? ,FLOYD ,HERE>\n\t\t     <FSET? ,FLOYD ,RLANDBIT>>\n\t\t<SETG FLOYD-SPOKE T>\n\t\t<TELL \"Floyd looks sad. \\\"Going away?\\\" he asks.\" CR>)>\n\t <TELL CR \"Do you wish to restart? (Y is affirmative): \">\n\t <COND (<YES?>\n\t\t<TELL \"Restarting.\" CR>\n\t\t<RESTART>\n\t\t<TELL \"Failed.\" CR>)>>\n\n<CONSTANT REXIT 0>\n<CONSTANT UEXIT 1>\n<CONSTANT NEXIT 2>\n<CONSTANT FEXIT 3>\n<CONSTANT CEXIT 4>\n<CONSTANT DEXIT 5>\n\n<CONSTANT NEXITSTR 0>\n<CONSTANT FEXITFCN 0>\n<CONSTANT CEXITFLAG 1>\n<CONSTANT CEXITSTR 1>\n<CONSTANT DEXITOBJ 1>\n<CONSTANT DEXITSTR 1>\n\n<ROUTINE V-WALK-AROUND ()\n\t <USE-DIRECTIONS>>\n\n<ROUTINE V-WALK-TO ()\n\t <COND (<OR <IN? ,PRSO ,HERE>\n\t\t    <GLOBAL-IN? ,PRSO ,HERE>>\n\t\t<TELL \"It's here!\" CR>)\n\t       (T\n\t\t<USE-DIRECTIONS>)>>\n\n<ROUTINE V-WALK (\"AUX\" PT PTS STR OBJ RM TEMP-ELAPSED)\n\t <COND (<NOT ,P-WALK-DIR>\n\t\t<PERFORM ,V?WALK-TO ,PRSO>\n\t\t<RTRUE>)\n\t       (<SET PT <GETPT ,HERE ,PRSO>>\n\t\t<COND (<SET TEMP-ELAPSED <GETP ,HERE ,P?C-MOVE>>\n\t\t       <SET TEMP-ELAPSED <GET .TEMP-ELAPSED \n\t\t\t\t\t      <- ,PRSO ,LOW-DIRECTION>>>)>\n\t\t<COND (<EQUAL? .TEMP-ELAPSED 0>\n\t\t       <SET TEMP-ELAPSED ,DEFAULT-MOVE>)>\n\t\t<COND (<EQUAL? <SET PTS <PTSIZE .PT>> ,UEXIT>\n\t\t       <SETG C-ELAPSED .TEMP-ELAPSED>\n\t\t       <GOTO <GETB .PT ,REXIT>>)\n\t\t      (<EQUAL? .PTS ,NEXIT>\n\t\t       <TELL <GET .PT ,NEXITSTR> CR>\n\t\t       <RFATAL>)\n\t\t      (<EQUAL? .PTS ,FEXIT>\n\t\t       <COND (<SET RM <APPLY <GET .PT ,FEXITFCN>>>\n\t\t\t      <GOTO .RM>)\n\t\t\t     (T\n\t\t\t      <RFATAL>)>)\n\t\t      (<EQUAL? .PTS ,CEXIT>\n\t\t       <COND (<VALUE <GETB .PT ,CEXITFLAG>>\n\t\t\t      <SETG C-ELAPSED .TEMP-ELAPSED>\n\t\t\t      <GOTO <GETB .PT ,REXIT>>)\n\t\t\t     (<SET STR <GET .PT ,CEXITSTR>>\n\t\t\t      <TELL .STR CR>\n\t\t\t      <RFATAL>)\n\t\t\t     (T\n\t\t\t      <TELL \"You can't go that way.\" CR>\n\t\t\t      <RFATAL>)>)\n\t\t      (<EQUAL? .PTS ,DEXIT>\n\t\t       <COND (<FSET? <SET OBJ <GETB .PT ,DEXITOBJ>> ,OPENBIT>\n\t\t\t      <SETG C-ELAPSED .TEMP-ELAPSED>\n\t\t\t      <GOTO <GETB .PT ,REXIT>>)\n\t\t\t     (<SET STR <GET .PT ,DEXITSTR>>\n\t\t\t      <TELL .STR CR>\n\t\t\t      <RFATAL>)\n\t\t\t     (T\n\t\t\t      <TELL \"The \" D .OBJ \" is closed.\" CR>\n\t\t\t      <THIS-IS-IT .OBJ>\n\t\t\t      <RFATAL>)>)>)\n\t       (<AND <NOT ,LIT>\n\t\t     <PROB 75>>\n\t\t<JIGS-UP\n\"Oh, no! You have walked into the slavering fangs of a lurking grue!\">)\n\t       (T\n\t\t<TELL \"You can't go that way.\" CR>\n\t\t<RFATAL>)>>\n\n<ROUTINE V-INVENTORY ()\n\t <SETG C-ELAPSED 18>\n\t <COND (<FIRST? ,ADVENTURER>\n\t\t<PRINT-CONT ,ADVENTURER>)\n\t       (T\n\t\t<TELL \"You are empty-handed.\" CR>)>>\n\n<GLOBAL INDENTS\n\t<PTABLE \"\"\n\t       \"  \"\n\t       \"    \"\n\t       \"      \"\n\t       \"        \"\n\t       \"          \">>\n\n\f\n;\"object manipulation\"\n\n<ROUTINE PRE-TAKE ()\n\t <COND (<IN? ,PRSO ,ADVENTURER>\n\t\t<TELL \"You already have it.\" CR>)\n\t       (<AND <EQUAL? ,PRSO ,GOOD-BOARD>\n\t\t     <FSET? ,GOOD-BOARD ,NDESCBIT>>\n\t\t<RFALSE>)\n\t       (<AND <FSET? <LOC ,PRSO> ,CONTBIT>\n\t\t     <NOT <FSET? <LOC ,PRSO> ,OPENBIT>>>\n\t\t<TELL \"You can't reach into a closed container.\" CR>\n\t\t<RTRUE>)\n\t       (,PRSI\n\t\t<COND (<NOT <EQUAL? ,PRSI <LOC ,PRSO>>>\n\t\t       <COND (<AND <EQUAL? ,PRSO ,KEY>\n\t\t\t\t   <NOT <FSET? ,KEY ,TOUCHBIT>>>\n\t\t\t      <RFALSE>)\n\t\t\t     (<AND <EQUAL? ,PRSO ,CELERY>\n\t\t\t\t   <EQUAL? ,PRSI ,AMBASSADOR>>\n\t\t\t      <RFALSE>)\n\t\t\t     (T\n\t\t\t      <TELL \"It's not in that!\" CR>)>)\n\t\t      (T\n\t\t       <SETG PRSI <>>\n\t\t       <RFALSE>)>)\n\t       (<EQUAL? ,PRSO <LOC ,ADVENTURER>>\n\t\t<TELL \"You are in it, asteroid-brain!\" CR>)>>\n\n<ROUTINE V-TAKE ()\n\t <COND (<EQUAL? <ITAKE> T>\n\t\t<TELL \"Taken.\" CR>)>>\n\n<GLOBAL FUMBLE-NUMBER 7>\n\n<GLOBAL FUMBLE-PROB 8>\n\n<ROUTINE TRYTAKE ()\n\t <COND (<IN? ,PRSO ,WINNER>\n\t\t<RTRUE>)\n\t       (<AND <FSET? ,PRSO ,TRYTAKEBIT>\n\t\t     <GETP ,PRSO ,P?ACTION>>\n\t\t<PERFORM ,V?TAKE ,PRSO>\n\t\t<RTRUE>)\n\t       (T\n\t\t<ITAKE>)>>\n\n<ROUTINE ITAKE (\"OPTIONAL\" (VB T) \"AUX\" CNT OBJ)\n\t <COND (<NOT <FSET? ,PRSO ,TAKEBIT>>\n\t\t<COND (.VB\n\t\t       <TELL <PICK-ONE ,YUKS> CR>)>\n\t\t<RFALSE>)\n\t       (<AND <NOT <IN? <LOC ,PRSO> ,ADVENTURER>>\n\t\t     <G? <+ <WEIGHT ,PRSO> <WEIGHT ,ADVENTURER>>\n\t\t\t ,LOAD-ALLOWED>>\n\t\t<COND (.VB\n\t\t       <TELL \"Your load is too heavy.\" CR>)>\n\t\t<RFATAL>)\n\t       (<AND <G? <SET CNT <CCOUNT ,ADVENTURER>> ,FUMBLE-NUMBER>\n\t\t     <PROB <* .CNT ,FUMBLE-PROB>>>\n\t\t <SET OBJ <FIRST? ,ADVENTURER>>\n\t\t <REPEAT ()\n\t\t\t<COND (<FSET? .OBJ ,WORNBIT>\n\t\t\t       <SET OBJ <NEXT? .OBJ>>)\n\t\t\t      (T\n\t\t\t       <RETURN>)>>\n\t\t;\"This must go!  Chomping compiler strikes again\"\n\t\t<TELL\n\"Oh, no. The \" D .OBJ \" slips from your arms while taking the \" D ,PRSO\n\" and both tumble to the ground.\" CR>\n\t\t<COND (<AND <EQUAL? ,FLASK .OBJ ,PRSO>\n\t\t\t    <IN? ,CHEMICAL-FLUID ,FLASK>>\n\t\t       <REMOVE ,CHEMICAL-FLUID>\n\t\t       <TELL\n\"Unfortunately, the chemical spills out of the flask and evaporates.\" CR>)>\n\t        <COND (<AND <EQUAL? ,CANTEEN .OBJ ,PRSO>\n\t\t\t    <IN? ,HIGH-PROTEIN ,CANTEEN>\n\t\t\t    <FSET? ,CANTEEN ,OPENBIT>>\n\t\t       <REMOVE ,HIGH-PROTEIN>\n\t\t       <TELL\n\"To make matters worse, the high-protein liquid spills all over\nthe place and then evaporates.\" CR>)>\n\t\t<MOVE .OBJ ,HERE>\n\t\t<MOVE ,PRSO ,HERE>\n\t\t<RFATAL>)\n\t       (T\n\t\t<MOVE ,PRSO ,ADVENTURER>\n\t\t<FCLEAR ,PRSO ,NDESCBIT>\n\t\t<SCORE-OBJ ,PRSO>\n\t\t<FSET ,PRSO ,TOUCHBIT>\n\t\t<COND (<EQUAL? ,PRSO ,SPOUT-PLACED>\n\t\t       <SETG SPOUT-PLACED ,GROUND>)>\n\t\t<RTRUE>)>>\n\n<ROUTINE PRE-PUT ()\n\t <COND (<NOT ,PRSO>\n\t\t<RFALSE>)>\n\t <COND (<FSET? ,PRSO ,WORNBIT>\n\t\t<TELL \"You can't while you're wearing it.\" CR>)\n\t       (<OR <IN? ,PRSO ,GLOBAL-OBJECTS>\n\t\t    <NOT <FSET? ,PRSO ,TAKEBIT>>>\n\t\t<TELL \"Nice try.\" CR>)>>\n\n<ROUTINE V-PUT ()\n\t <COND (<OR <FSET? ,PRSI ,OPENBIT>\n\t\t    <OPENABLE? ,PRSI>\n\t\t    <FSET? ,PRSI ,VEHBIT>>)\n\t       (T\n\t\t<TELL \"You can't do that.\" CR>\n\t\t<RTRUE>)>\n\t <COND (<NOT <FSET? ,PRSI ,OPENBIT>>\n\t\t<TELL \"The \" D ,PRSI \" isn't open.\" CR>)\n\t       (<EQUAL? ,PRSI ,PRSO>\n\t\t<TELL \"How can you do that?\" CR>)\n\t       (<IN? ,PRSO ,PRSI>\n\t\t<TELL \"The \" D ,PRSO \" is already in the \" D ,PRSI \".\" CR>)\n\t       (<IN? ,PRSI ,PRSO>\n\t\t<TELL\n\"How can you put the \" D ,PRSO \" in the \" D ,PRSI\n\" when the \" D ,PRSI \" is already in the \" D ,PRSO \"?\" CR>)\n\t       (<G? <- <+ <WEIGHT ,PRSI> <WEIGHT ,PRSO>>\n\t\t       <GETP ,PRSI ,P?SIZE>>\n\t\t    <GETP ,PRSI ,P?CAPACITY>>\n\t\t<TELL \"There's no room.\" CR>)\n\t       (<AND <NOT <HELD? ,PRSO>>\n\t\t     <NOT <TRYTAKE>>>\n\t\t<RTRUE>)\n\t       (T\n\t\t<SCORE-OBJ ,PRSO>\n\t\t<MOVE ,PRSO ,PRSI>\n\t\t<FSET ,PRSO ,TOUCHBIT>\n\t\t<TELL \"Done.\" CR>)>>\n\n<ROUTINE V-SLIDE ()\n\t <TELL <PICK-ONE ,YUKS> CR>>\n\n<ROUTINE PRE-GIVE ()\n\t <COND (<NOT <HELD? ,PRSO>>\n\t\t<NOT-HOLDING>)>>\n\n<ROUTINE PRE-SGIVE ()\n\t <PERFORM ,V?GIVE ,PRSI ,PRSO>\n\t <RTRUE>>\n\n<ROUTINE V-GIVE ()\n\t <COND (<NOT <FSET? ,PRSI ,ACTORBIT>>\n\t\t<TELL \"You can't give \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \" to \">\n\t\t<COND (<FSET? ,PRSI ,VOWELBIT>\n\t\t       <TELL \"an \">)\n\t\t      (T\n\t\t       <TELL \"a \">)>\n\t\t<TELL D ,PRSI \"!\" CR>)\n\t       (T\n\t\t<TELL \"The \" D ,PRSI \" declines your offer.\" CR>)>>\n\n<ROUTINE V-SGIVE ()\n\t <TELL \"Foo!\" CR>>\n\n<ROUTINE V-DROP ()\n\t <COND (<IDROP>\n\t\t<TELL \"Dropped.\" CR>)>>\n\n<ROUTINE V-THROW ()\n\t <COND (<IDROP>\n\t\t<TELL \"Thrown.\" CR>)>>\n\n<ROUTINE IDROP ()\n\t <COND (<NOT <HELD? ,PRSO>>\n\t\t<TELL \"You're not carrying the \" D ,PRSO \".\" CR>\n\t\t<RFALSE>)\n\t       (<FSET? ,PRSO ,WORNBIT>\n\t\t<TAKE-IT-OFF>\n\t\t<RFALSE>)\n\t       (<AND <NOT <IN? ,PRSO ,WINNER>>\n\t\t     <NOT <FSET? <LOC ,PRSO> ,OPENBIT>>>\n\t\t<TELL \"The \" D ,PRSO \" is closed.\" CR>\n\t\t<RFALSE>)\n\t       (T\n\t\t<MOVE ,PRSO ,HERE>\n\t\t<RTRUE>)>>\n\n\f\n;\"plain old verbs\"\n\n<ROUTINE V-OPEN (\"AUX\" F STR)\n\t <COND (<AND <NOT <FSET? ,PRSO ,CONTBIT>>\n\t\t     <NOT <FSET? ,PRSO ,DOORBIT>>>\n\t\t<TELL\n\"You must be very clever to do that to the \" D ,PRSO \".\" CR>)\n\t       (<OR <FSET? ,PRSO ,DOORBIT>\n\t\t    <NOT <EQUAL? <GETP ,PRSO ,P?CAPACITY> 0>>>\n\t\t<COND (<FSET? ,PRSO ,OPENBIT>\n\t\t       <ALREADY \"open\">)\n\t\t      (T\n\t\t       <FSET ,PRSO ,OPENBIT>\n\t\t       <COND (<FSET? ,PRSO ,DOORBIT>\n\t\t\t      <TELL \"The \" D ,PRSO \" is now open.\" CR>)\n\t\t\t     (<OR <NOT <FIRST? ,PRSO>>\n\t\t\t\t  <FSET? ,PRSO ,TRANSBIT>>\n\t\t\t      <TELL \"Opened.\" CR>)\n\t\t\t     (<AND <SET F <FIRST? ,PRSO>>\n\t\t\t\t   <NOT <NEXT? .F>>\n\t\t\t\t   <SET STR <GETP .F ,P?FDESC>>>\n\t\t\t      <TELL \"The \" D ,PRSO \" opens.\" CR>\n\t\t\t      <TELL .STR CR>)\n\t\t\t     (T\n\t\t\t      <TELL \"Opening the \" D ,PRSO \" reveals \">\n\t\t\t      <PRINT-CONTENTS ,PRSO>\n\t\t\t      <TELL \".\" CR>)>)>)\n\t       (T\n\t\t<TELL \"The \" D ,PRSO \" cannot be opened.\" CR>)>>\n\n<ROUTINE V-OPEN-WITH ()\n\t <COND (<EQUAL? ,PRSI ,HANDS>\n\t\t<PERFORM ,V?OPEN ,PRSO>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL \"That doesn't work.\" CR>)>>\n\n<ROUTINE PRINT-CONTENTS (OBJ \"AUX\" F N (1ST? T) (IT? <>) (TWO? <>))\n\t <COND (<SET F <FIRST? .OBJ>>\n\t\t<REPEAT ()\n\t\t\t<SET N <NEXT? .F>>\n\t\t\t<COND (.1ST?\n\t\t\t       <SET 1ST? <>>)\n\t\t\t      (T\n\t\t\t       <TELL \", \">\n\t\t\t       <COND (<NOT .N>\n\t\t\t\t      <TELL \"and \">)>)>\n\t\t\t<TELL \"a \" D .F>\n\t\t\t<COND (<AND <NOT .IT?>\n\t\t\t\t    <NOT .TWO?>>\n\t\t\t       <SET IT? .F>)\n\t\t\t      (T\n\t\t\t       <SET TWO? T>\n\t\t\t       <SET IT? <>>)>\n\t\t\t<SET F .N>\n\t\t\t<COND (<NOT .F>\n\t\t\t       <COND (<AND .IT?\n\t\t\t\t\t   <NOT .TWO?>>\n\t\t\t\t      <THIS-IS-IT .IT?>)>\n\t\t\t       <RTRUE>)>>)>>\n\n<ROUTINE V-CLOSE ()\n\t <COND (<AND <NOT <FSET? ,PRSO ,CONTBIT>>\n\t\t    <NOT <FSET? ,PRSO ,DOORBIT>>>\n\t\t<TELL \"You can't do that to \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \".\" CR>)\n\t       (<AND <NOT <FSET? ,PRSO ,SURFACEBIT>>\n\t\t     <OR <NOT <EQUAL? <GETP ,PRSO ,P?CAPACITY> 0>>\n\t\t\t <FSET? ,PRSO ,DOORBIT>>>\n\t\t<COND (<FSET? ,PRSO ,OPENBIT>\n\t\t       <FCLEAR ,PRSO ,OPENBIT>\n\t\t       <TELL \"Closed.\" CR>)\n\t\t      (T\n\t\t       <ALREADY \"closed\">)>)\n\t       (T\n\t\t<TELL \"You cannot close that.\" CR>)>>\n\n<ROUTINE CCOUNT (OBJ \"AUX\" (CNT 0) X)\n\t <COND (<SET X <FIRST? .OBJ>>\n\t\t<REPEAT ()\n\t\t\t<SET CNT <+ .CNT 1>>\n\t\t\t<COND (<NOT <SET X <NEXT? .X>>>\n\t\t\t       <RETURN>)>>)>\n\t .CNT>\n\n\"WEIGHT:  Get sum of SIZEs of supplied object, recursing to the nth level.\"\n\n<ROUTINE WEIGHT (OBJ \"AUX\" CONT (WT 0))\n\t <COND (<SET CONT <FIRST? .OBJ>>\n\t\t<REPEAT ()\n\t\t\t<COND (<NOT <FSET? .CONT ,WORNBIT>>\n\t\t\t       <SET WT <+ .WT <WEIGHT .CONT>>>)>\n\t\t\t<COND (<NOT <SET CONT <NEXT? .CONT>>> <RETURN>)>>)>\n\t <+ .WT <GETP .OBJ ,P?SIZE>>>\n\n<GLOBAL COPR-NOTICE\n\" a transcript of interaction with PLANETFALL.|\nPLANETFALL is a registered trademark of Infocom, Inc.|\nCopyright (c) 1983 Infocom, Inc.  All rights reserved.|\">\n\n<ROUTINE V-SCRIPT ()\n\t<COND (<AND <IN? ,FLOYD ,HERE>\n\t\t    <FSET? ,FLOYD ,RLANDBIT>>\n\t       <SETG FLOYD-SPOKE T>\n\t       <TELL\n\"Floyd hops around excitedly. \\\"Oh boy! I've never seen my name in print\nbefore!\\\"\" CR CR>)>\n\t<PUT 0 8 <BOR <GET 0 8> 1>>\n\t<TELL \"Here begins\" ,COPR-NOTICE CR>>\n\n<ROUTINE V-UNSCRIPT ()\n\t<COND (<AND <IN? ,FLOYD ,HERE>\n\t\t    <FSET? ,FLOYD ,RLANDBIT>>\n\t       <SETG FLOYD-SPOKE T>\n\t       <TELL\n\"\\\"Can I have a copy of the printout?\\\" asks Floyd,\nlooking up at you.\" CR CR>)>\n\t<TELL \"Here ends\" ,COPR-NOTICE CR>\n\t<PUT 0 8 <BAND <GET 0 8> -2>>\n\t<RTRUE>>\n\n<ROUTINE PRE-MOVE ()\n\t <COND (<HELD? ,PRSO>\n\t\t<TELL \"Why juggle objects?\" CR>)>>\n\n<ROUTINE V-MOVE ()\n\t <COND (<FSET? ,PRSO ,TAKEBIT>\n\t\t<TELL \"Moving the \" D ,PRSO \" reveals nothing.\" CR>)\n\t       (T\n\t\t<TELL \"You can't move the \" D ,PRSO \".\" CR>)>>\n\n<ROUTINE V-LAMP-ON ()\n\t <COND (<FSET? ,PRSO ,LIGHTBIT>\n\t\t<COND (<FSET? ,PRSO ,ONBIT>\n\t\t       <ALREADY \"on\">)\n\t\t      (T\n\t\t       <FSET ,PRSO ,ONBIT>\n\t\t       <TELL \"The \" D ,PRSO \" is now on.\" CR>)>)\n\t       (T\n\t\t<TELL \"You can't turn that on.\" CR>)>\n\t <RTRUE>>\n\n<ROUTINE V-LAMP-OFF ()\n\t <COND (<FSET? ,PRSO ,LIGHTBIT>\n\t\t<COND (<NOT <FSET? ,PRSO ,ONBIT>>\n\t\t       <ALREADY \"off\">)\n\t\t      (T\n\t\t       <FCLEAR ,PRSO ,ONBIT>\n\t\t       <TELL \"The \" D ,PRSO \" is now off.\" CR>)>)\n\t       (T\n\t\t <TELL \"You can't turn that off.\" CR>)>\n\t <RTRUE>>\n\n<ROUTINE V-WAIT () ;(\"OPTIONAL\" (NUM 3))\n\t <SETG C-ELAPSED 40>\n\t <TELL \"Time passes...\" CR>\n\t ;<REPEAT ()\n\t\t <COND (<L? <SET NUM <- .NUM 1>> 0>\n\t\t\t<RETURN>)\n\t\t       (<CLOCKER>\n\t\t\t<RETURN>)>\n\t\t <SETG INTERNAL-MOVES <+ ,INTERNAL-MOVES 1>>>\n\t ;<SETG CLOCK-WAIT T>>\n\n<ROUTINE PRE-BOARD (\"AUX\" AV)\n\t <SET AV <LOC ,ADVENTURER>>\n\t <COND (<EQUAL? ,PRSO ,GROUND ,GLOBAL-SHUTTLE>\n\t\t<RFALSE>)\n\t       (<FSET? ,PRSO ,VEHBIT>\n\t\t<COND (<FSET? .AV ,VEHBIT>\n\t\t       <TELL \"You are already in it!\" CR>)\n\t\t      (T\n\t\t       <RFALSE>)>)\n\t       (T\n\t\t<TELL \"I suppose you have a theory on boarding \">\n \t        <A-AN>\n\t\t<TELL D ,PRSO \".\" CR>)>\n\t <RFATAL>>\n\n<ROUTINE V-BOARD (\"AUX\" AV)\n\t <TELL \"You are now in the \" D ,PRSO \".\" CR>\n\t <MOVE ,ADVENTURER ,PRSO>\n\t <APPLY <GETP ,PRSO ,P?ACTION> ,M-ENTER>\n\t <RTRUE>>\n\n<ROUTINE V-DISEMBARK ()\n\t <COND (<EQUAL? ,PRSO ,ROOMS>\n\t\t<COND (<IN? ,ADVENTURER ,SAFETY-WEB>\n\t\t       <PERFORM ,V?DISEMBARK ,SAFETY-WEB>\n\t\t       <RTRUE>)\n\t\t      (<IN? ,ADVENTURER ,BED>\n\t\t       <OWN-FEET>)\n\t\t      (<IN? ,ADVENTURER ,SHUTTLE-CAR-ALFIE>\n\t\t       <DO-WALK ,P?NORTH>)\n\t\t      (<IN? ,ADVENTURER ,SHUTTLE-CAR-BETTY>\n\t\t       <DO-WALK ,P?SOUTH>)\n\t\t      (<IN? ,ADVENTURER ,BRIG>\n\t\t       <PERFORM ,V?ZESCAPE>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <DO-WALK ,P?OUT>)>)\n\t       (<NOT <EQUAL? <LOC ,ADVENTURER> ,PRSO>>\n\t\t<TELL \"You're not in that!\" CR>\n\t\t<RFATAL>)\n\t       (T\n\t\t<OWN-FEET>)>>\n\n<ROUTINE OWN-FEET ()\n\t <MOVE ,ADVENTURER ,HERE>\n\t <TELL \"You're on your own feet again.\" CR>>\n\n<ROUTINE V-STAND ()\n\t <COND (<FSET? <LOC ,ADVENTURER> ,VEHBIT>\n\t\t<PERFORM ,V?DISEMBARK <LOC ,ADVENTURER>>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL \"You are already standing, I think.\" CR>)>>\n\n<ROUTINE GOTO (RM \"OPTIONAL\" (V? T) \"AUX\" (WLOC <LOC ,WINNER>) OLIT)\n\t <SET OLIT ,LIT>\n\t <MOVE ,ADVENTURER .RM>\n\t <SETG HERE .RM>\n\t <SETG LIT <LIT? ,HERE>>\n\t <COND (<AND <NOT .OLIT>\n\t\t     <NOT ,LIT>\n\t\t     <PROB 75>>\n\t\t<JIGS-UP\n\"Oh, no! Something (a grue?) slithered into the room and devoured you!\">\n\t\t<RTRUE>)>\n\t <COND (<EQUAL? <APPLY <GETP ,HERE ,P?ACTION> ,M-ENTER> 2>\n\t\t<RTRUE>)>\n\t <COND (.V?\n\t\t<V-FIRST-LOOK>)>\n\t <SCORE-OBJ .RM>\n\t <RTRUE>>\n\n<ROUTINE V-EAT ()\n\t <TELL \"I don't think that the \" D ,PRSO \" would agree with you.\" CR>>\n\n<ROUTINE V-EAT-FROM (\"AUX\" X)\n\t <SET X <FIRST? ,PRSO>>\n\t <COND (<NOT <FSET? ,PRSO ,OPENBIT>>\n\t\t<TELL \"It's closed.\" CR>)\n\t       (<NEXT? .X>\n\t\t<TELL \"There's more than one thing in the \" D ,PRSO \".\" CR>)\n\t       (.X\n\t\t<PERFORM ,V?EAT .X>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL \"It's empty!\" CR>)>>\n\n<ROUTINE V-CURSE ()\n\t <TELL \"Such language from an Ensign in the Stellar Patrol!\" CR>>\n\n<ROUTINE V-LISTEN ()\n\t <SETG C-ELAPSED 18>\n\t <TELL \"The \" D ,PRSO \" makes no sound.\" CR>>\n\n<ROUTINE V-FOLLOW ()\n\t <TELL \"The \" D ,PRSO \" is right here!\" CR>>\n\n<ROUTINE V-LEAP ()\n\t <COND (,PRSO\n\t\t<COND (<IN? ,PRSO ,HERE>\n\t\t       <COND (<FSET? ,PRSO ,ACTORBIT>\n\t\t\t      <TELL\n\"The \" D ,PRSO \" is too big to jump over.\" CR>)\n\t\t\t     (T\n\t\t\t      <V-SKIP>)>)\n\t\t      (T\n\t\t       <TELL \"That would be a good trick.\" CR>)>)\n\t       (T\n\t\t<V-SKIP>)>>\n\n<ROUTINE V-SKIP ()\n\t <TELL <PICK-ONE ,WHEEEEE> CR>>\n\n<ROUTINE V-LEAVE () \n\t <COND (<IN? ,ADVENTURER ,BED>\n\t\t<PERFORM ,V?DISEMBARK ,BED>\n\t\t<RTRUE>)\n\t       (<IN? ,ADVENTURER ,SAFETY-WEB>\n\t\t<PERFORM ,V?DISEMBARK ,SAFETY-WEB>\n\t\t<RTRUE>)\n\t       (T\n\t\t<DO-WALK ,P?OUT>)>>\n\n<ROUTINE V-HELLO ()\n\t <COND (,PRSO\n\t\t<TELL\n\"Until now, I've only heard demented Denebian Devils say \\\"Hello\\\" to \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \".\" CR>)\n\t       (T\n\t\t<TELL <PICK-ONE ,HELLOS> CR>)>>\n\n<GLOBAL HELLOS\n\t<PLTABLE \"Hello.\"\n\t         \"Nice weather we're having.\"\n\t         \"Goodbye.\">>\n\n<ROUTINE V-HELP ()\n\t <TELL\n\"If you're really stuck, you can order a complete map and InvisiClues\nHint Booklet using the order form in your game package.\" CR>>\n\n<GLOBAL WHEEEEE\n\t<PLTABLE\n\"You've spent too much time among the Leaping Loon-toads of Leonia.\"\n\"Having fun?\"\n\"Wheeeeeee!!!\">>\n\n<ROUTINE PRE-READ ()\n\t <COND (<NOT ,LIT>\n\t\t<TELL \"It is impossible to read in the dark.\" CR>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-READ ()\n\t <COND (<NOT <FSET? ,PRSO ,READBIT>>\n\t\t<TELL \"How can I read \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \"?\" CR>)\n\t       (T\n\t\t<TELL <GETP ,PRSO ,P?TEXT> CR>\n\t\t<SETG C-ELAPSED 18>)>>\n\n<ROUTINE V-LOOK-UNDER ()\n\t <TELL \"There is nothing but \">\n\t <COND (<EQUAL? ,PRSO ,AMBASSADOR>\n\t\t<TELL \"slime\">)\n\t       (T\n\t\t<TELL \"dust\">)>\n\t <TELL \" there.\" CR>>\n\n<ROUTINE V-LOOK-BEHIND ()\n\t <V-LOOK-UNDER>>\n\n<ROUTINE V-LOOK-INSIDE ()\n\t <COND (<FSET? ,PRSO ,ACTORBIT>\n\t\t<TELL \"There is nothing special to be seen.\" CR>)\n\t       (<FSET? ,PRSO ,DOORBIT>\n\t\t<COND (<FSET? ,PRSO ,OPENBIT>\n\t\t       <TELL\n\"The \" D ,PRSO \" is open, but I can't tell what's beyond it\">)\n\t\t      (T\n\t\t       <TELL \"The \" D ,PRSO \" is closed\">)>\n\t\t<TELL \".\" CR>)\n\t       (<FSET? ,PRSO ,CONTBIT>\n\t\t<COND (<NOT <FSET? ,PRSO ,OPENBIT>>\n\t\t       <PERFORM ,V?OPEN ,PRSO>\n\t\t       <RTRUE>)\n\t\t      (<SEE-INSIDE? ,PRSO>\n\t\t       <COND (<AND <FIRST? ,PRSO>\n\t\t\t\t   <PRINT-CONT ,PRSO>>\n\t\t\t      <RTRUE>)\n\t\t\t     (<FSET? ,PRSO ,SURFACEBIT>\n\t\t\t      <TELL\n\"There is nothing on the \" D ,PRSO \".\" CR>)\n\t\t\t     (T\n\t\t\t      <TELL \"The \" D ,PRSO \" is empty.\" CR>)>)\n\t\t      (T\n\t\t       <TELL \"The \" D ,PRSO \" is closed.\" CR>)>)\n\t       (<FSET? ,PRSO ,TRANSBIT>\n\t\t<TELL \"You can see dimly through the \" D ,PRSO \".\" CR>)\n\t       (T\n\t\t<TELL \"You can't look inside \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \".\" CR>)>>\n\n<ROUTINE SEE-INSIDE? (OBJ)\n\t <AND <NOT <FSET? .OBJ ,INVISIBLE>>\n\t      <OR <FSET? .OBJ ,TRANSBIT> <FSET? .OBJ ,OPENBIT>>>>\n\n<ROUTINE V-LOOK-DOWN ()\n\t <PERFORM ,V?EXAMINE ,GROUND>\n\t <RTRUE>>\n\n<ROUTINE V-TURN ()\n\t <TELL \"You can't do that.\" CR>>\n\n<ROUTINE V-LOCK ()\n\t <V-TURN>>\n\n<ROUTINE V-UNLOCK ()\n\t <V-TURN>>\n\n<ROUTINE V-ATTACK ()\n\t <COND (<FSET? ,PRSO ,ACTORBIT>\n\t\t<TELL \"The \" D ,PRSO \" is frightened and backs away.\" CR>)\n\t       (T\n\t\t<TELL \"I've known strange beings, but attacking \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \"???\" CR>)>>\n \n<ROUTINE V-KICK ()\n\t <HACK-HACK \"Kicking the \">>\n\n<ROUTINE V-WAVE ()\n\t <HACK-HACK \"Waving the \">>\n\n<ROUTINE V-RUB ()\n\t <HACK-HACK \"Fiddling with the \">>\n\n<ROUTINE V-PUSH ()\n\t <COND (<AND <NOT ,PRSI>\n\t\t     <EQUAL? ,PRSO ,INTNUM>>\n\t\t<COND (<EQUAL? ,HERE ,LIBRARY-LOBBY ,MINI-BOOTH>\n\t\t       <TELL\n\"You probably want to use the TYPE command. Check your documentation.\" CR>)\n\t\t      (<EQUAL? ,P-NUMBER 1>\n\t\t       <COND (<EQUAL? ,HERE ,BOOTH-2 ,BOOTH-3>\n\t\t\t      <PERFORM ,V?PUSH ,TELEPORTATION-BUTTON-1>\n\t\t\t      <RTRUE>)\n\t\t\t     (<EQUAL? ,HERE ,BOOTH-1>\n\t\t\t      <NO-BUTTON ,BOOTH-1>)\n\t\t\t     (T\n\t\t\t      <TELL \"Push a number?!?\" CR>)>)\n\t\t      (<EQUAL? ,P-NUMBER 2>\n\t\t       <COND (<EQUAL? ,HERE ,BOOTH-1 ,BOOTH-3>\n\t\t\t      <PERFORM ,V?PUSH ,TELEPORTATION-BUTTON-2>\n\t\t\t      <RTRUE>)\n\t\t\t     (<EQUAL? ,HERE ,BOOTH-2>\n\t\t\t      <NO-BUTTON ,BOOTH-2>)\n\t\t\t     (T\n\t\t\t      <TELL \"Push a number?!?\" CR>)>)\n\t\t      (<EQUAL? ,P-NUMBER 3>\n\t\t       <COND (<EQUAL? ,HERE ,BOOTH-1 ,BOOTH-2>\n\t\t\t      <PERFORM ,V?PUSH ,TELEPORTATION-BUTTON-3>\n\t\t\t      <RTRUE>)\n\t\t\t     (<EQUAL? ,HERE ,BOOTH-3>\n\t\t\t      <NO-BUTTON ,BOOTH-3>)\n\t\t\t     (T\n\t\t\t      <TELL \"Push a number?!?\" CR>)>)\n\t\t      (T\n\t\t       <TELL \"Push a number?!?\" CR>)>)\n\t       (T\n\t\t<HACK-HACK \"Pushing the \">)>>\n\n<ROUTINE NO-BUTTON (NUMBER)\n\t <TELL \"There's no button here that's labelled with the number \">\n\t <COND (<EQUAL? .NUMBER ,BOOTH-1>\n\t\t<TELL \"1\">)\n\t       (<EQUAL? .NUMBER ,BOOTH-2>\n\t\t<TELL \"2\">)\n\t       (<EQUAL? .NUMBER ,BOOTH-3>\n\t\t<TELL \"3\">)>\n\t <TELL \".\" CR>>\n\n<ROUTINE V-PUSH-UP ()\n\t <HACK-HACK \"Pushing up the \">>\n\n<ROUTINE V-PUSH-DOWN ()\n\t <HACK-HACK \"Pushing down the \">>\n\n<ROUTINE V-PULL ()\n\t <HACK-HACK \"Pulling the \">>\n\n<ROUTINE V-MUNG ()\n\t <HACK-HACK \"Trying to destroy the \">>\n\n<ROUTINE HACK-HACK (STR)\n\t <TELL .STR D ,PRSO <PICK-ONE ,HO-HUM> CR>>\n\n<GLOBAL HO-HUM\n\t<PLTABLE\n\t \" isn't notably helpful.\"\n\t \" has no effect.\"\n\t \" is as worthwhile as cleaning a Grotch cage.\">>\n\n<ROUTINE WORD-TYPE (OBJ WORD \"AUX\" SYNS)\n\t <ZMEMQ .WORD\n\t\t<SET SYNS <GETPT .OBJ ,P?SYNONYM>>\n\t\t<- </ <PTSIZE .SYNS> 2> 1>>>\n\n<ROUTINE V-KNOCK ()\n\t <COND (<WORD-TYPE ,PRSO ,W?DOOR>\n\t\t<TELL \"Nobody's home.\" CR>)\n\t       (T\n\t\t<TELL \"Why knock on \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \"?\" CR>)>>\n\n<ROUTINE V-YELL ()\n\t <TELL \"Aarrrrggggggghhhhhhhh!\" CR>>\n\n<ROUTINE BATTERY-FALLS ()\n\t <TELL \"The battery falls out.\" CR>>\n\n<ROUTINE V-SHAKE (\"AUX\" X)\n\t <COND (<AND <NOT <HELD? ,PRSO>>\n\t\t     <NOT <EQUAL? ,PRSO ,HANDS>>>\n\t\t<NOT-HOLDING>)\n\t       (<EQUAL? ,PRSO ,LASER>\n\t\t<COND (<IN? ,OLD-BATTERY ,LASER>\n\t\t       <MOVE ,OLD-BATTERY ,HERE>\n\t\t       <BATTERY-FALLS>)\n\t\t      (<IN? ,NEW-BATTERY ,LASER>\n\t\t       <MOVE ,NEW-BATTERY ,HERE>\n\t\t       <BATTERY-FALLS>)\n\t\t      (T\n\t\t       <TELL \"Shaken.\" CR>)>)\n\t       (<AND <NOT <FSET? ,PRSO ,OPENBIT>>\n\t\t     <FIRST? ,PRSO>>\n\t\t<TELL\n\"It sounds as if there is something inside the \" D ,PRSO \".\" CR>)\n\t       (<FSET? ,PRSO ,OPENBIT>\n\t\t<COND (<AND <EQUAL? ,PRSO ,FOOD-KIT>\n\t\t\t    <OR <IN? ,RED-GOO ,FOOD-KIT>\n\t\t\t\t<IN? ,GREEN-GOO ,FOOD-KIT>\n\t\t\t\t<IN? ,BROWN-GOO ,FOOD-KIT>>>\n\t\t       <REMOVE ,RED-GOO>\n\t\t       <REMOVE ,GREEN-GOO>\n\t\t       <REMOVE ,BROWN-GOO>\n\t\t       <TELL\n\"Colored goo flies all over everything. Yechh!\" CR>)\n\t\t      (<FIRST? ,PRSO>\n\t\t       <REPEAT ()\n\t\t\t       <COND (<SET X <FIRST? ,PRSO>>\n\t\t\t              <COND (<EQUAL? .X ,HIGH-PROTEIN\n\t\t\t\t\t                ,CHEMICAL-FLUID>\n\t\t\t\t             <REMOVE .X>)\n\t\t\t\t            (T\n\t\t\t\t             <MOVE .X ,HERE>)>)\n\t\t\t             (T\n\t\t\t\t      <RETURN>)>>\n\t\t       <TELL\n\"The contents of the \" D ,PRSO \" spill onto the floor.\" CR>)\n\t\t      (T\n\t\t       <TELL \"You have shaken the \" D ,PRSO \".\" CR>)>)\n\t       (<FSET? ,PRSO ,CONTBIT>\n\t\t<TELL \"The \" D ,PRSO \" sounds empty.\" CR>)\n\t       (T\n\t\t<TELL \"Shaken.\" CR>)>>\n\n<ROUTINE V-SHAKE-WITH ()\n\t <COND (<EQUAL? ,PRSO ,HANDS>\n\t\t<COND (<FSET? ,PRSI ,ACTORBIT>\n\t\t       <PERFORM ,V?SHAKE ,HANDS>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL \"You can't shake hands with \">\n\t\t       <A-AN>\n\t\t       <TELL D ,PRSI \"!\" CR>)>)\n\t       (T\n\t\t<TELL \"Huh?\" CR>)>>\n\n<ROUTINE V-SMELL ()\n\t <TELL \"It smells just like \">\n\t <A-AN>\n\t <TELL D ,PRSO \".\" CR>>\n\n<ROUTINE GLOBAL-IN? (OBJ1 OBJ2 \"AUX\" TEE)\n\t <COND (<SET TEE <GETPT .OBJ2 ,P?GLOBAL>>\n\t\t<ZMEMQB .OBJ1 .TEE <- <PTSIZE .TEE> 1>>)>>\n\n<ROUTINE V-SWIM ()\n\t <COND (<EQUAL? ,HERE ,UNDERWATER>\n\t\t<TELL\n\"Not much else you can do here. Might try a direction next time, though.\" CR>)\n\t       (T\n\t\t<TELL \"You can't swim here!\" CR>)>>\n\n<ROUTINE V-SWIM-DIR ()\n\t <COND (<EQUAL? ,HERE ,UNDERWATER>\n\t\t<TELL \"Okay. You're still underwater.\" CR>)\n\t       (T\n\t\t<PERFORM ,V?SWIM>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-SWIM-UP ()\n\t <COND (<EQUAL? ,HERE ,UNDERWATER>\n\t        <DO-WALK ,P?UP>)\n\t       (<PERFORM ,V?SWIM>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-ALARM ()\n\t <TELL \"The \" D ,PRSO \" isn't sleeping.\" CR>>\n\n<ROUTINE V-ZORK ()\n\t <TELL \"Gesundheit!\" CR>>\n\n<ROUTINE V-SIT ()\n\t <COND (<EQUAL? ,HERE ,ESCAPE-POD>\n\t\t<TELL \"(in the web)\" CR>\n\t\t<PERFORM ,V?BOARD ,SAFETY-WEB>\n\t\t<RTRUE>)\n\t       (<OR <EQUAL? ,HERE ,DORM-A ,DORM-B ,DORM-C>\n\t\t    <EQUAL? ,HERE ,DORM-D ,INFIRMARY>>\n\t\t<TELL \"(on the bed)\" CR>\n\t\t<PERFORM ,V?BOARD ,BED>\n\t\t<RTRUE>)\n\t       (T\n\t\t<SETG C-ELAPSED 31>\n\t\t<TELL\n\"You recline on the floor for a bit, and then stand up again.\" CR>)>>\n\n<ROUTINE V-SIT-DOWN ()\n\t <COND (<EQUAL? ,PRSO ,ROOMS>\n\t\t<PERFORM ,V?SIT>\n\t\t<RTRUE>)\n\t       (T\n\t\t<PERFORM ,V?BOARD ,PRSO>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-GO-UP ()\n\t <DO-WALK ,P?UP>>\n\n<ROUTINE V-CLIMB-ON ()\n\t <COND (<FSET? ,PRSO ,VEHBIT>\n\t\t<PERFORM ,V?BOARD ,PRSO>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL \"You can't climb onto the \" D ,PRSO \".\" CR>)>>\n\n<ROUTINE V-CLIMB-FOO ()\n\t <COND (<FSET? ,PRSO ,CLIMBBIT>\n\t\t<V-CLIMB-UP ,P?UP T>)\n\t       (T\n\t\t<PERFORM ,V?CLIMB-ON ,PRSO>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-CLIMB-UP (\"OPTIONAL\" (DIR ,P?UP) (OBJ <>) \"AUX\" X)\n\t <COND (<GETPT ,HERE .DIR>\n\t\t<DO-WALK .DIR>\n\t\t<RTRUE>)\n\t       (<NOT .OBJ>\n\t\t<TELL \"You can't go that way.\" CR>)\n\t       (T\n\t\t<TELL \"Bizarre!\" CR>)>>\n\n<ROUTINE V-CLIMB-DOWN ()\n\t <COND (<FSET? ,PRSO ,VEHBIT>\n\t\t<V-CLIMB-ON>\n\t\t<RTRUE>)\n\t       (T\n\t\t<V-CLIMB-UP ,P?DOWN>)>>\n\n<ROUTINE PRE-PUT-UNDER ()\n\t <COND (<NOT <HELD? ,PRSO>>\n\t\t<NOT-HOLDING>)\n\t       (<FSET? ,PRSO ,WORNBIT>\n\t\t<TAKE-IT-OFF>)>>\n\t\t\n<ROUTINE V-PUT-UNDER ()\n\t <TELL \"You can't do that.\" CR>>\n\n<ROUTINE V-ENTER ()\n\t <DO-WALK ,P?IN>>\n\n<ROUTINE V-EXIT ()\n\t <DO-WALK ,P?OUT>>\n\n<ROUTINE V-SEARCH ()\n\t <SETG C-ELAPSED 32>\n\t <TELL \"You find nothing unusual.\" CR>>\n\n<ROUTINE V-FIND (\"AUX\" (L <LOC ,PRSO>))\n\t <SETG C-ELAPSED 18>\n\t <COND (<EQUAL? ,PRSO ,ME ,HANDS>\n\t\t<TELL \"You're around here somewhere...\" CR>)\n\t       (<EQUAL? .L ,GLOBAL-OBJECTS>\n\t\t<TELL \"You find it.\" CR>)\n\t       (<IN? ,PRSO ,ADVENTURER>\n\t\t<TELL \"You have it.\" CR>)\n\t       (<OR <IN? ,PRSO ,HERE>\n\t\t    <EQUAL? ,PRSO ,PSEUDO-OBJECT>>\n\t\t<TELL \"It's right here.\" CR>)\n\t       (<FSET? .L ,ACTORBIT>\n\t\t<TELL \"The \" D .L \" has it.\" CR>)\n\t       (<FSET? .L ,CONTBIT>\n\t\t<TELL \"It's in the \" D .L \".\" CR>)\n\t       (ELSE\n\t\t<TELL \"Beats me.\" CR>)>>\n\n<ROUTINE V-TELL ()\n\t <COND (<EQUAL? ,PRSO ,ME>\n\t\t<TELL\n\"Talking to yourself is a sign of impending mental collapse.\" CR>\n\t\t<SETG P-CONT <>>\n\t\t<SETG QUOTE-FLAG <>>\n\t\t<RFATAL>)\n\t       (<FSET? ,PRSO ,ACTORBIT>\n\t\t<COND (,P-CONT\n\t\t       <SETG WINNER ,PRSO>\n\t\t       <SETG HERE <LOC ,WINNER>>)\n\t\t      (T\n\t\t       <TELL\n\"The \" D, PRSO \" looks at you expectantly, as though he thought you were\nabout to talk.\" CR>)>)\n\t       (T\n\t\t<TELL \"Talking to \">\n\t\t<COND (<AND <EQUAL? ,HERE ,DECK-NINE>\n\t\t\t    <EQUAL? ,PRSO ,PSEUDO-OBJECT>>\n\t\t       <TELL \"the \">)\n\t\t      (T\n\t\t       <A-AN>)>\n\t\t<TELL\nD ,PRSO \"? Dr. Quarnsboggle, the Feinstein's psychiatrist, would \">\n\t\t<COND (<EQUAL? ,BLOWUP-COUNTER 5>\n\t\t       <TELL \"have been\">)\n\t\t      (T\n\t\t       <TELL \"be\">)>\n\t\t<TELL \" fascinated to hear that.\" CR>\n\t\t<SETG QUOTE-FLAG <>>\n\t\t<SETG P-CONT <>>\n\t\t<RFATAL>)>>\n\n<ROUTINE V-ASK-FOR ()\n\t <COND (<FSET? ,PRSO ,ACTORBIT>\n\t\t<COND (<IN? ,PRSI ,PRSO>\n\t\t      <TELL\n\"The \" D ,PRSO \" doesn't seem inclined to give up the \" D ,PRSI \".\" CR>)\n\t\t     (T\n\t\t      <TELL\n\"The \" D ,PRSO \" isn't holding the \" D ,PRSI \".\" CR>)>)\n\t       (T\n\t\t<PERFORM ,V?TELL ,PRSO>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-SAY (\"AUX\" V)\n\t <COND (<SET V <FIND-IN ,HERE ,ACTORBIT>>\n\t\t<SETG P-CONT <>>\n\t\t<TELL \"You must address the \" D .V \" directly.\" CR>)\n\t       (T\n\t\t<SETG QUOTE-FLAG <>>\n\t\t<SETG P-CONT <>>\n\t\t<PERFORM ,V?TELL ,ME>)>>\n\n<ROUTINE V-TALK ()\n\t <PERFORM ,V?TELL ,PRSO>\n\t <RTRUE>>\t \n\n<ROUTINE V-ANSWER ()\n\t <TELL \"Nobody is awaiting your answer.\" CR>\n\t <SETG P-CONT <>>\n\t <SETG QUOTE-FLAG <>>\n\t <RTRUE>>\n\n<ROUTINE V-REPLY ()\n\t <TELL \"It is hardly likely that the \" D ,PRSO \" is interested.\" CR>\n\t <SETG P-CONT <>>\n\t <SETG QUOTE-FLAG <>>\n\t <RTRUE>>\n\n<ROUTINE V-KISS ()\n\t <TELL \"I'd sooner kiss a pile of Antarian swamp mold.\" CR>>\n\n<ROUTINE V-RAPE ()\n\t <TELL \"What a (ahem!) strange idea.\" CR>>\n\n<ROUTINE V-DIAGNOSE ()\n\t <SETG C-ELAPSED 18>\n\t <COND (<EQUAL? ,SICKNESS-LEVEL 0>\n\t\t<TELL \"You are in perfect health.\" CR>)\n\t       (T\n\t\t<TELL \"You are \">\n\t\t<COND (<G? ,SICKNESS-LEVEL 7>\n\t\t       <TELL \"severely\">)\n\t\t      (<G? ,SICKNESS-LEVEL 5>\n\t\t       <TELL \"very\">)\n\t\t      (<G? ,SICKNESS-LEVEL 3>\n\t\t       <TELL \"somewhat\">)\n\t\t      (T\n\t\t       <TELL \"a bit\">)>\n\t\t<TELL \" sick and feverish.\" CR>)>\n\t <COND (<EQUAL? ,SLEEPY-LEVEL 0>\n\t\t<TELL \"You feel well-rested.\" CR>)\n\t       (T\n\t\t<TELL \"You feel \">\n\t\t<COND (<G? ,SLEEPY-LEVEL 2>\n\t\t       <TELL \"phenomenally\">)\n\t\t      (<G? ,SLEEPY-LEVEL 1>\n\t\t       <TELL \"quite\">)\n\t\t      (T\n\t\t       <TELL \"sort of\">)>\n\t\t<TELL \" tired.\" CR>)>\n\t <COND (<EQUAL? ,HUNGER-LEVEL 0>\n\t\t<TELL \"You seem to be well-fed.\" CR>)\n\t       (T\n\t\t<TELL \"You seem to be \">\n\t\t<COND (<G? ,HUNGER-LEVEL 4>\n\t\t       <TELL \"awesomely phenomenally\">)\n\t\t      (<G? ,HUNGER-LEVEL 2>\n\t\t       <TELL \"noticeably\">)\n\t\t      (T\n\t\t       <TELL \"fairly\">)>\n\t\t<TELL \" thirsty and hungry.\" CR>)>>\n\n<ROUTINE V-WEAR ()\n\t <COND (<FSET? ,PRSO ,WEARBIT> \n\t\t<TELL \"You are wearing the \" D ,PRSO \".\" CR>\n\t\t<SETG C-ELAPSED 18>\n\t\t<FSET ,PRSO ,WORNBIT>)\n\t       (T\n\t\t<TELL\n\"They're out of fashion, and besides, it wouldn't fit.\" CR>)>>\n\n<ROUTINE V-REMOVE ()\n\t <COND (<FSET? ,PRSO ,WORNBIT>\n\t\t<PERFORM ,V?TAKE-OFF ,PRSO>\n\t\t<RTRUE>)\n\t       (T\n\t\t<PERFORM ,V?TAKE ,PRSO>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-TAKE-OFF ()\n\t <COND (<FSET? ,PRSO ,VEHBIT>\n\t\t<PERFORM ,V?DISEMBARK ,PRSO>\n\t\t<RTRUE>)\n\t       (<FSET? ,PRSO ,WORNBIT>\n\t\t<TELL \"You are no longer wearing the \" D ,PRSO \".\" CR>\n\t\t<SETG C-ELAPSED 18>\n\t\t<FCLEAR ,PRSO ,WORNBIT>)\n\t       (T\n\t\t<TELL \"You aren't wearing that.\" CR>)>>\n\n<ROUTINE V-STEP-ON ()\n\t <TELL \"That's a silly thing to do.\" CR>>\n\n<ROUTINE V-PUT-ON ()\n\t <COND (<EQUAL? ,PRSO ,MAGNET ,LADDER>\n\t\t<PERFORM ,V?ATTRACT ,PRSO ,PRSI>\n\t\t<RTRUE>)\n\t       (T\n\t\t<PERFORM ,V?PUT ,PRSO ,PRSI>\n\t\t<RTRUE>)>>\n\n<ROUTINE V-NO ()\n\t <TELL \"You sound rather negative.\" CR>>\n\n<ROUTINE V-YES ()\n\t <TELL \"You sound rather positive.\" CR>>\n\n<ROUTINE V-MAYBE ()\n\t <TELL \"You sound rather indecisive.\" CR>>\n\n<ROUTINE V-POINT ()\n\t <COND (<IN? ,FLOYD ,HERE>\n\t\t<FLOYDS-FAMOUS-DOOR-ROUTINE>)\n\t       (T\n\t\t<TELL \"It's usually impolite to point.\" CR>)>>\n\n<ROUTINE V-SET ()\n\t <COND (<NOT ,PRSI>\n\t\t<COND (<EQUAL? ,PRSO ,COMBINATION-DIAL ,LASER-DIAL>\n\t\t       <TELL\n\"You must specify a number to set the dial to.\" CR>)\n\t\t      (T\n\t\t       <TELL\n\"Turning the \" D ,PRSO \" accomplishes nothing.\" CR>)>)\n\t       (T\n\t\t<TELL \"Setting \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \" is a strange concept.\" CR>)>>\n\n<ROUTINE V-$VERIFY ()\n\t <COND (<AND <EQUAL? ,PRSO ,INTNUM>\n\t\t     <EQUAL? ,P-NUMBER 502>>\n\t\t<TELL N ,SERIAL CR>)\n\t       (T\n\t\t<TELL \"Verifying...\" CR>\n\t \t<COND (<VERIFY>\n\t\t       <TELL \"Game correct. (YAY!)\" CR>)\n\t\t      (T\n\t\t       <TELL CR \"** Game File Failure **\" CR>)>)>>\n\n<CONSTANT SERIAL 0>\n\n<ROUTINE V-$COMMAND ()\n\t <DIRIN 1>\n\t <RTRUE>>\n\n<ROUTINE V-$RANDOM ()\n\t <COND (<NOT <EQUAL? ,PRSO ,INTNUM>>\n\t\t<TELL \"Illegal call to #RANDOM.\" CR>)\n\t       (T\n\t\t<RANDOM <- 0 ,P-NUMBER>>\n\t\t<RTRUE>)>>\n\n<CONSTANT D-RECORD-ON 4>\n<CONSTANT D-RECORD-OFF -4>\n\n<ROUTINE V-$RECORD ()\n\t <DIROUT ,D-RECORD-ON> ;\"all READS and INPUTS get sent to command file\"\n\t <RTRUE>>\n\n<ROUTINE V-$UNRECORD ()\n\t <DIROUT ,D-RECORD-OFF>\n\t <RTRUE>>\n\n<ROUTINE V-STAND-ON ()\n\t <TELL \"Standing on \">\n\t <A-AN>\n\t <TELL D ,PRSO \" seems like a waste of time.\" CR>>\n\n<ROUTINE V-REACH ()\n\t <COND (<FIRST? ,PRSO>\n\t\t<TELL \"There is something\">)\n\t       (T\n\t\t<TELL \"There is nothing\">)>\n\t <TELL \" inside the \" D ,PRSO \".\" CR>>\n\n<ROUTINE V-REACH-FOR ()\n\t <COND (<FSET? ,PRSO ,TAKEBIT>\n\t\t<PERFORM ,V?TAKE ,PRSO>\n\t\t<RTRUE>)\n\t       (<IN? ,PRSO ,HERE>\n\t\t<TELL \"It's here! Now what?\" CR>)\n\t       (T\n\t\t<TELL \"It is out of reach.\" CR>)>>\n\n<ROUTINE DO-WALK (DIR)\n\t <SETG P-WALK-DIR .DIR>\n\t <PERFORM ,V?WALK .DIR>\n\t <RTRUE>>\n\n<ROUTINE V-FLUSH ()\n\t <TELL \"Flush \">\n\t <A-AN>\n\t <TELL D ,PRSO \"?\" CR>>\n\n<ROUTINE V-FLY ()\n\t <TELL \"Humans are not usually equipped for flying.\" CR>>\n\n<ROUTINE V-SMILE ()\n\t <TELL \"How pleasant!\" CR>>\n\n<ROUTINE V-SALUTE ()\n\t <TELL \"The \" D ,PRSO \" fails to return your salute.\" CR>>\n\n%<COND (<NOT <GASSIGNED? PREDGEN>>\n\t<ROUTINE V-ESCAPE ()\n\t         <QUITTER <ASCII 7> ,INCHAN>>)>\n\n<ROUTINE V-ATTRACT ()\n\t <TELL \"Nothing interesting happens.\" CR>>\n\n<ROUTINE V-ZATTRACT ()\n\t <PERFORM ,V?ATTRACT ,PRSI ,PRSO>\n\t <RTRUE>>\n\n<ROUTINE V-SPAN ()\n\t <TELL \"You can't.\" CR>>\n\n<ROUTINE NUMBERS-ONLY ()\n\t <TELL\n\"This keyboard only has numeric keys. You can type numbers on it, but\nnot words.\" CR>>\n\n<ROUTINE V-TYPE ()\n\t <COND (<EQUAL? ,HERE ,MINI-BOOTH>\n\t\t<COND (<NOT <EQUAL? ,PRSO ,INTNUM>>\n\t\t       <NUMBERS-ONLY>)\n\t\t      (,MINI-ACTIVATED\n\t\t       <COND (<EQUAL? ,P-NUMBER 384>\n\t\t\t      <TELL\n\"You notice the walls of the booth sliding away in all directions, followed\nby a momentary queasiness in the pit of your stomach...\" CR CR>\n\t\t\t      <GOTO ,STATION-384>\n\t\t\t      <SETG BEEN-HERE T>)\n\t\t\t     (<L? ,P-NUMBER 10>\n\t\t\t      <TELL\n\"After a pause a recorded voice says \\\"There are no one-digit computer\nsectors...clearing entry...please type damaged sector number.\\\"\" CR>)\n\t\t\t     (<G? ,P-NUMBER 1024>\n\t\t\t      <TELL \n\"A recorded voice says \\\"Databanks indicate no computer sector corresponding\nto that number. Please check with your supervisor.\\\"\" CR>)\n\t\t\t     (T\n\t\t\t      <JIGS-UP\n\"Ooops! You seem to have transported yourself into an active sector of the\ncomputer. You are fried by powerful electric currents.\">)>)\n\t\t      (T\n\t\t       <TELL\n\"A recording says \\\"Internal computer repair booth not activated.\\\"\" CR>)>)\n\t       (<EQUAL? ,HERE ,LIBRARY-LOBBY>\n\t\t<LIBRARY-TYPE>)\n\t       (T\n\t\t<TELL \"Type on what???\" CR>)>>\n\n<ROUTINE PRE-SZAP ()\n\t <PERFORM ,V?ZAP ,PRSI ,PRSO>\n\t <RTRUE>>\n\n<ROUTINE PRE-ZAP ()\n\t <COND (,PRSI\n\t\t<RFALSE>)\n\t       (<EQUAL? ,PRSO ,LASER>\n\t\t<RFALSE>)\n\t       (<IN? ,LASER ,ADVENTURER>\n\t\t<PERFORM ,V?ZAP ,LASER ,PRSO>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL \"You have nothing to shoot it with.\" CR>)>>\n\n<ROUTINE V-ZAP ()\n\t <COND (<NOT <HELD? ,PRSO>>\n\t\t<NOT-HOLDING>)\n\t       (<NOT <EQUAL? ,PRSO ,LASER>>\n\t\t<TELL \"You can't shoot that.\" CR>)\n\t       (<NOT ,PRSI>\n\t\t<TELL \"At what?\">)\n\t       (T\n\t\t<TELL \"Nothing happens.\" CR>)>>\n\n<ROUTINE V-SZAP ()\n\t <TELL \"Zap!\" CR>> \n\n<ROUTINE V-SCRUB ()\n\t <COND (<AND <NOT ,PRSI>\n\t\t     <NOT <IN? ,SCRUB-BRUSH ,ADVENTURER>>\n\t\t     <NOT <IN? ,TOWEL ,ADVENTURER>>>\n\t\t<TELL \"You don't have anything to scrub with!\" CR>)\n\t       (<AND ,PRSI\n\t\t     <NOT <EQUAL? ,PRSI ,SCRUB-BRUSH ,TOWEL>>>\n\t\t<TELL \"You can't scrub something with that!\" CR>)\n\t       (<FSET? ,PRSO ,ACTORBIT>\n\t\t<TELL \"The \" D ,PRSO \" prefers cleaning himself.\" CR>)\n\t       (T\n\t\t<TELL \"The \" D ,PRSO \" is a bit shinier now.\" CR>)>>\n\n<ROUTINE V-POUR ()\n\t <TELL \"Pouring or spilling non-liquids is specifically forbidden\nby section 17.9.2 of the Galactic Adventure Game Compendium of Rules.\" CR>>\n\n<ROUTINE V-EMPTY (\"AUX\" X)\n\t <COND (<NOT <FSET? ,PRSO ,OPENBIT>>\n\t\t<TELL \"You can't empty it when it's closed!\" CR>)\n\t       (<FIRST? ,PRSO>\n\t\t       <REPEAT ()\n\t\t\t       <COND (<SET X <FIRST? ,PRSO>>\n\t\t\t              <COND (<EQUAL? .X ,HIGH-PROTEIN\n\t\t\t\t\t                ,CHEMICAL-FLUID>\n\t\t\t\t             <REMOVE .X>)\n\t\t\t\t            (T\n\t\t\t\t             <MOVE .X ,HERE>)>)\n\t\t\t             (T\n\t\t\t\t      <RETURN>)>>\n\t\t       <TELL \"The \" D ,PRSO \" is now empty.\" CR>)\n\t       (T\n\t\t<TELL \"There's nothing in the \" D ,PRSO \".\" CR>)>>\n\n<ROUTINE V-THROW-OFF ()\n\t <TELL \"It's difficult to see how that can be done.\" CR>>\n\n<ROUTINE V-SLEEP ()\n\t <COND (<EQUAL? ,SLEEPY-LEVEL 0>\n\t\t<TELL \"You're not tired!\" CR>)\n\t       (<GET <INT I-FALL-ASLEEP> ,C-ENABLED?>\n\t\t<TELL \"You'll probably be asleep before you know it.\" CR>)\n\t       (T\n\t\t<TELL\n\"Civilized members of society usually sleep in beds.\" CR>)>>\n\n<ROUTINE V-FIX-IT ()\n\t <TELL\n\"You shouldn't expect sweeping general commands like this to work. If you\nwant to repair something, you must perform the specific steps required.\" CR>>\n\n<ROUTINE V-OIL ()\n\t <COND (<NOT ,PRSI>\n\t\t<COND (<IN? ,OIL-CAN ,ADVENTURER>\n\t\t       <PERFORM ,V?OIL ,PRSO ,OIL-CAN>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <TELL \"Oil it with what?\" CR>)>)\n\t       (<EQUAL? ,PRSI ,OIL-CAN>\n\t\t<COND (<AND <EQUAL? ,PRSO ,FLOYD>\n\t\t\t    <FSET? ,FLOYD ,RLANDBIT>>\n\t\t       <TELL \"Floyd thanks you for your thoughtfulness.\" CR>)\n\t\t      (T\n\t\t       <TELL \"The \" D, PRSO \" doesn't need oiling.\" CR>)>)\n\t       (T\n\t\t<TELL \"You can't use \">\n\t\t<COND (<FSET? ,PRSI ,VOWELBIT>\n\t\t       <TELL \"an \">)\n\t\t      (T\n\t\t       <TELL \"a \">)>\n\t\t<TELL D ,PRSI \" as an oil can!\" CR>)>>\n\n<ROUTINE V-SHOW ()\n\t <COND (<NOT <HELD? ,PRSO>>\n\t\t<NOT-HOLDING>)\n\t       (<EQUAL? ,PRSI ,ME>\n\t\t<PERFORM ,V?EXAMINE ,PRSO>\n\t\t<RTRUE>)\n\t       (<FSET? ,PRSI ,ACTORBIT>\n\t\t<TELL \"The \" D ,PRSI \" looks at the \" D ,PRSO \".\" CR>)\n\t       (T\n\t\t<TELL \"Why would you want to show something to \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \"?\" CR>)>>\n\n<ROUTINE V-INSERT ()\n\t <COND (<EQUAL? ,HERE ,LIBRARY>\n\t\t<TELL \"(into the spool reader)\" CR>\n\t\t<PERFORM ,V?PUT ,PRSO ,SPOOL-READER>\n\t\t<RTRUE>)\n\t       (<EQUAL? ,HERE ,KITCHEN>\n\t\t<TELL \"(into the niche)\" CR>\n\t\t<PERFORM ,V?PUT ,PRSO ,DISPENSER>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL\n\"You'll have to specify where you want to put the \" D ,PRSO \".\" CR>)>>\n\n<ROUTINE V-TASTE ()\n\t <COND (<OR <EQUAL? ,PRSO ,HIGH-PROTEIN ,RED-GOO>\n\t\t    <EQUAL? ,PRSO ,BROWN-GOO ,GREEN-GOO>>\n\t\t<TELL \"It tastes edible.\" CR>)\n\t       (<EQUAL? ,PRSO ,CHEMICAL-FLUID>\n\t\t<TELL \"It burns your tongue.\" CR>)\n\t       (T\n\t\t<TELL \"It tastes just like \">\n\t\t<A-AN>\n\t\t<TELL D ,PRSO \".\" CR>)>>\n\n<ROUTINE V-ZESCAPE ()\n\t <COND (<EQUAL? ,HERE ,BRIG>\n\t\t<TELL \"Houdini himself would be stumped by this cell.\" CR>)\n\t       (T\n\t\t<TELL\n\"There is no escape. We control the horizontal. We control the vertical.\nWe control the disk drives...\" CR>)>>\n\n<ROUTINE V-TIME ()\n\t <COND (<IN? ,CHRONOMETER ,ADVENTURER>\n\t\t<TELL-TIME>\n\t\t<CRLF>)\n\t       (T\n\t\t<TELL\n\"It's hard to say, since you've removed your chronometer.\" CR>)>>\n\n<ROUTINE V-PLAY ()\n\t <TELL \"How does one play \">\n\t <A-AN>\n         <TELL D ,PRSO \"?\" CR>>\n\n<ROUTINE V-PLAY-WITH ()\n\t <COND (<FSET? ,PRSO ,ACTORBIT>\n\t\t<PERFORM ,V?PLAY ,GLOBAL-GAMES>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL \"I sometimes wonder about your mental health.\" CR>)>>\n\n<ROUTINE V-SCOLD ()\n\t <COND (<FSET? ,PRSO ,ACTORBIT>\n\t\t<PERFORM ,V?TELL ,PRSO>\n\t\t<RTRUE>)\n\t       (T\n\t\t<TELL\n\"For some reason, the \" D, PRSO \" doesn't seem too chagrined.\" CR>)>>\n\n<ROUTINE ROB (WHO WHERE \"AUX\" N X)\n\t <SET X <FIRST? .WHO>>\n\t <REPEAT ()\n\t\t <COND (<NOT .X>\n\t\t\t<RTRUE>)\n\t\t       (T\n\t\t\t<SET N <NEXT? .X>>\n\t\t\t<MOVE .X .WHERE>\n\t\t\t<SET X .N>)>>>\n\n;<ROUTINE V-CRAG ()\n\t <DISABLE <INT I-BLATHER>>\n\t <DISABLE <INT I-AMBASSADOR>>\n\t <DISABLE <INT I-BLOWUP-FEINSTEIN>>\n\t <MOVE ,FOOD-KIT ,ADVENTURER>\n\t <MOVE ,TOWEL ,ADVENTURER>\n\t <SETG C-ELAPSED 1000>\n\t <SETG BLOWUP-COUNTER 5>\n\t <SETG TRIP-COUNTER 15>\n\t <TELL \"What a wimp!\" CR CR>\n\t <GOTO ,CRAG>>\n\n;<ROUTINE V-FORK ()\n\t <TELL \"Is this trip really necesary?\" CR>\n\t <GOTO ,FORK>>\n\n;<ROUTINE V-BOOTH ()\n\t <TELL \"Yeah, okay...\" CR>\n\t <GOTO ,BOOTH-2>>\n\n;<ROUTINE V-CARDS ()\n\t <TELL \"You want 'em, you got 'em...\" CR>\n\t <MOVE ,LOWER-ELEVATOR-CARD ,ADVENTURER>\n\t <MOVE ,UPPER-ELEVATOR-CARD ,ADVENTURER>\n\t <MOVE ,SHUTTLE-CARD ,ADVENTURER>\n\t <MOVE ,KITCHEN-CARD ,ADVENTURER>\n\t <MOVE ,TELEPORTATION-CARD ,ADVENTURER>>\n\t \n;<ROUTINE V-FIX ()\n\t <SETG COMM-FIXED T>\n\t <SETG STEPS-TO-GO 0>\n\t <SETG CHEMICAL-REQUIRED 10>\n\t <SETG DEFENSE-FIXED T>\n\t <REMOVE ,GOOD-BOARD>\n\t <SETG COURSE-CONTROL-FIXED T>\n\t <TELL\n\"Mother-stabbing father-raping mega-wimp!!!\" CR>>\n\n\f\n;\"useful utility routines\"\n\n<GLOBAL YUKS\n\t<PLTABLE\n\t \"Fat chance.\"\n\t \"A valiant attempt.\"\n\t \"You can't be serious.\"\n\t \"Not bloody likely.\"\n\t \"An interesting idea...\"\n\t \"What a concept!\">>\n\n<ROUTINE THIS-IS-IT (OBJ)\n\t <SETG P-IT-OBJECT .OBJ>\n\t <SETG P-IT-LOC ,HERE>>\n\n<ROUTINE ACCESSIBLE? (OBJ \"AUX\" (L <LOC .OBJ>)) ;\"can player TOUCH object?\"\n\t ;\"revised 5/2/84 by SEM and SWG\"\n\t <COND (<FSET? .OBJ ,INVISIBLE>\n\t\t<RFALSE>)\n\t       (<EQUAL? .OBJ ,PSEUDO-OBJECT>\n\t\t<COND (<EQUAL? ,LAST-PSEUDO-LOC ,HERE>\n\t\t       <RTRUE>)\n\t\t      (T\n\t\t       <RFALSE>)>)\n\t       (<NOT .L>\n\t\t<RFALSE>)\n\t       (<EQUAL? .L ,GLOBAL-OBJECTS>\n\t\t<RTRUE>)\t       \n\t       (<AND <EQUAL? .L ,LOCAL-GLOBALS>\n\t\t     <GLOBAL-IN? .OBJ ,HERE>>\n\t\t<RTRUE>)\n\t       (<NOT <EQUAL? <META-LOC .OBJ> ,HERE>>\n\t\t<RFALSE>)\n\t       (<EQUAL? .L ,WINNER ,HERE>\n\t\t<RTRUE>)\n\t       (<AND <FSET? .L ,OPENBIT>\n\t\t     <ACCESSIBLE? .L>>\n\t\t<RTRUE>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<ROUTINE VISIBLE? (OBJ \"AUX\" (L <LOC .OBJ>)) ;\"can player SEE object\"\n\t ;\"revised 5/2/84 by SEM and SWG\"\n\t <COND (<ACCESSIBLE? .OBJ>\n\t\t<RTRUE>)\n\t       (<AND <SEE-INSIDE? .L>\n\t\t     <VISIBLE? .L>>\n\t\t<RTRUE>)\n\t       (T\n\t\t<RFALSE>)>>\n\n<ROUTINE A-AN ()\n\t <COND (<FSET? ,PRSO ,VOWELBIT>\n\t\t<TELL \"an \">)\n\t       (T\n\t\t<TELL \"a \">)>>\n\n<ROUTINE ALREADY (ON-OFF \"OPTIONAL\" (OBJ <>))\n\t <COND (.OBJ\n\t\t<TELL \"The \" D .OBJ \" is \">)\n\t       (T\n\t\t<TELL \"It's \">)>\n\t <TELL \"already \" .ON-OFF \".\" CR>>\n\n<ROUTINE NOT-HOLDING ()\n\t <TELL \"You're not holding the \" D ,PRSO \".\" CR>>\n\n<ROUTINE TAKE-IT-OFF ()\n\t <TELL \"You'll have to take it off, first.\" CR>>\n\n<ROUTINE ANYMORE ()\n\t <TELL \"You can't see that anymore.\" CR>>\n\n<ROUTINE FIXED-FONT-ON () ;\"turns on fixed spacing for the Macintosh\"\n\t <PUT 0 8 <BOR <GET 0 8> 2>>>\n\n<ROUTINE FIXED-FONT-OFF () ;\"turns off fixed spacing for the Macintosh\"\n\t <PUT 0 8 <BAND <GET 0 8> -3>>>"
  }
]