inform-class

[DORMANT] the products of a summer text adventures course
git clone git://git.figbert.com/inform-class.git
Log | Files | Refs | README | LICENSE

Phrasebook.html (920249B)


      1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
      2 <html>
      3 <head><meta http-equiv="content-type" content="text/html; charset=UTF-8">
      4     <style type="text/css">
      5     <!--
      6         *, *:before, *:after {
      7             -moz-box-sizing: border-box;
      8             -webkit-box-sizing: border-box;
      9             box-sizing: border-box;
     10         }
     11         h3.tighter {
     12             margin-top: 0px;
     13         }
     14         p.hang {
     15             padding-left: 25px;
     16             text-indent: -25px;
     17             margin-top: 0px;
     18             margin-bottom: 0px;
     19         }
     20         p.in1 {
     21             padding-left: 0px;
     22         }
     23         p.tightin1 {
     24             padding-left: 0px;
     25             margin-top: 2px;
     26             margin-bottom: 2px;
     27         }
     28         p.halftightin1 {
     29             padding-left: 0px;
     30             margin-bottom: 2px;
     31         }
     32         p.hangingin1 {
     33             padding-left: 50px;
     34             text-indent: -50px;
     35             margin-top: 0px;
     36             margin-bottom: 1px;
     37         }
     38         p.in2 {
     39             padding-left: 25px;
     40         }
     41         p.tightin2 {
     42             padding-left: 25px;
     43             margin-top: 2px;
     44             margin-bottom: 2px;
     45         }
     46         p.halftightin2 {
     47             padding-left: 25px;
     48             margin-bottom: 2px;
     49         }
     50         p.hangingin2 {
     51             padding-left: 75px;
     52             text-indent: -50px;
     53             margin-top: 0px;
     54             margin-bottom: 1px;
     55         }
     56         p.in3 {
     57             padding-left: 50px;
     58         }
     59         p.tightin3 {
     60             padding-left: 50px;
     61             margin-top: 2px;
     62             margin-bottom: 2px;
     63         }
     64         p.halftightin3 {
     65             padding-left: 50px;
     66             margin-bottom: 2px;
     67         }
     68         p.hangingin3 {
     69             padding-left: 100px;
     70             text-indent: -50px;
     71             margin-top: 0px;
     72             margin-bottom: 1px;
     73         }
     74         p.in4 {
     75             padding-left: 75px;
     76         }
     77         p.tightin4 {
     78             padding-left: 75px;
     79             margin-top: 2px;
     80             margin-bottom: 2px;
     81         }
     82         p.halftightin4 {
     83             padding-left: 75px;
     84             margin-bottom: 2px;
     85         }
     86         p.hangingin4 {
     87             padding-left: 125px;
     88             text-indent: -50px;
     89             margin-top: 0px;
     90             margin-bottom: 1px;
     91         }
     92         p.in5 {
     93             padding-left: 100px;
     94         }
     95         p.tightin5 {
     96             padding-left: 100px;
     97             margin-top: 2px;
     98             margin-bottom: 2px;
     99         }
    100         p.halftightin5 {
    101             padding-left: 100px;
    102             margin-bottom: 2px;
    103         }
    104         p.hangingin5 {
    105             padding-left: 150px;
    106             text-indent: -50px;
    107             margin-top: 0px;
    108             margin-bottom: 1px;
    109         }
    110         p.in6 {
    111             padding-left: 125px;
    112         }
    113         p.tightin6 {
    114             padding-left: 125px;
    115             margin-top: 2px;
    116             margin-bottom: 2px;
    117         }
    118         p.halftightin6 {
    119             padding-left: 125px;
    120             margin-bottom: 2px;
    121         }
    122         p.hangingin6 {
    123             padding-left: 175px;
    124             text-indent: -50px;
    125             margin-top: 0px;
    126             margin-bottom: 1px;
    127         }
    128         p.in7 {
    129             padding-left: 150px;
    130         }
    131         p.tightin7 {
    132             padding-left: 150px;
    133             margin-top: 2px;
    134             margin-bottom: 2px;
    135         }
    136         p.halftightin7 {
    137             padding-left: 150px;
    138             margin-bottom: 2px;
    139         }
    140         p.hangingin7 {
    141             padding-left: 200px;
    142             text-indent: -50px;
    143             margin-top: 0px;
    144             margin-bottom: 1px;
    145         }
    146         p.in8 {
    147             padding-left: 175px;
    148         }
    149         p.tightin8 {
    150             padding-left: 175px;
    151             margin-top: 2px;
    152             margin-bottom: 2px;
    153         }
    154         p.halftightin8 {
    155             padding-left: 175px;
    156             margin-bottom: 2px;
    157         }
    158         p.hangingin8 {
    159             padding-left: 225px;
    160             text-indent: -50px;
    161             margin-top: 0px;
    162             margin-bottom: 1px;
    163         }
    164         p.in9 {
    165             padding-left: 200px;
    166         }
    167         p.tightin9 {
    168             padding-left: 200px;
    169             margin-top: 2px;
    170             margin-bottom: 2px;
    171         }
    172         p.halftightin9 {
    173             padding-left: 200px;
    174             margin-bottom: 2px;
    175         }
    176         p.hangingin9 {
    177             padding-left: 250px;
    178             text-indent: -50px;
    179             margin-top: 0px;
    180             margin-bottom: 1px;
    181         }
    182         div.hr {
    183             border: 0;
    184             width: 100%;
    185             color: #707070;
    186             background-color: #707070;
    187             height: 5px;
    188         }
    189         .headingbox {
    190          position: relative;
    191          height: 56px;
    192          padding: 0px;
    193          white-space:nowrap;
    194          background: #eeeeee;  /* grey */
    195         font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    196         -webkit-font-smoothing: antialiased;
    197          }
    198         .headingboxhigh {
    199          position: relative;
    200          height: 117px;
    201          padding: 0px;
    202          white-space:nowrap;
    203          background: #eeeeee;  /* grey */
    204         font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    205         -webkit-font-smoothing: antialiased;
    206          }
    207         .headingboxSucceeded {
    208          position: relative;
    209          height: 56px;
    210          padding: 0px;
    211          white-space:nowrap;
    212          background: #E6FFE6;  /* green */
    213         font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    214         -webkit-font-smoothing: antialiased;
    215          }
    216         .headingboxFailed {
    217          position: relative;
    218          height: 56px;
    219          padding: 0px;
    220          white-space:nowrap;
    221          background: #f69Ca6;  /* red */
    222         font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    223         -webkit-font-smoothing: antialiased;
    224          }
    225         .headingtext {
    226         	position: absolute;
    227         	top: -4px;
    228         	left: -1px;
    229         	width: 100%;
    230         	color: #222222;
    231         	padding: 14px 10px 0px 10px;
    232         	font-size: 20px;
    233         	font-weight: bold;
    234         }
    235         .headingrubric {
    236         	position: absolute;
    237         	top: 36px;
    238         	width: 100%;
    239         	color: #222222;
    240         	padding: 0px 10px 0px 10px;
    241         	font-size: 11px;
    242         	font-weight: bold;
    243         }
    244     -->
    245 </style>
    246 <script type="text/javascript">
    247     function project() {
    248         if ("Project" in window) return window.Project;
    249         return external.Project;
    250         }
    251         function showExtra(id, imid) {
    252             if (document.getElementById(id).style.display == 'block') {
    253                 document.getElementById(id).style.display = 'none';
    254                 document.getElementById(imid).src = 'inform:/doc_images/extra.png';
    255             } else {
    256                 document.getElementById(id).style.display = 'block';
    257                 document.getElementById(imid).src = 'inform:/doc_images/extraclose.png';
    258             }
    259         }
    260         function showBasic(id) {
    261             if (document.getElementById(id).style.display == '') {
    262                 document.getElementById(id).style.display = 'none';
    263             } else {
    264                 document.getElementById(id).style.display = '';
    265             }
    266         }
    267         function showResp(id, imid) {
    268             if (document.getElementById(id)) {
    269                 if (document.getElementById(id).style.display == 'block') {
    270                     document.getElementById(id).style.display = 'none';
    271                     document.getElementById(imid).src = 'inform:/doc_images/responses.png';
    272                 } else {
    273                     document.getElementById(id).style.display = 'block';
    274                     document.getElementById(imid).src = 'inform:/doc_images/responsesclose.png';
    275                 }
    276             }
    277         }
    278         function showAllResp() {
    279             for (var i=0;i<361;i++) {
    280                 showResp('extra'+(1000000+i), 'plus'+(1000000+i));
    281             }
    282         }
    283     </script>
    284     <style type="text/css" media="screen, print">
    285     p {
    286     font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    287     }
    288 
    289     .box a:link { text-decoration: none; }
    290     .box a:visited { text-decoration: none; }
    291     .box a:active { text-decoration: none; }
    292     .box a:hover { text-decoration: none; color: #444444; }
    293 
    294     .smallbox a:link { text-decoration: none; }
    295     .smallbox a:visited { text-decoration: none; }
    296     .smallbox a:active { text-decoration: none; }
    297     .smallbox a:hover { text-decoration: none; color: #444444; }
    298 
    299     .symbol {
    300     	position: absolute;
    301     	top: -4px;
    302     	left: -1px;
    303     	width: 100%;
    304     	color: #ffffff;
    305     	padding: 14px 0px 14px 1px;
    306     	font-size: 20px;
    307     	font-weight: bold;
    308     	text-align: center;
    309     }
    310     .indexno {
    311     	position: absolute;
    312     	top: 1px;
    313     	left: 3px;
    314     	color: #ffffff;
    315     	font-size: 7pt;
    316     	text-align: left;
    317     }
    318     .rubric {
    319     	position: absolute;
    320     	top: 35px;
    321     	width: 100%;
    322     	color: #ffffff;
    323     	font-size: 9px;
    324     	font-weight: bold;
    325     	text-align: center;
    326     }
    327 
    328     .box {
    329      position: relative;
    330      height: 56px;
    331      width: 56px;
    332      padding: 0px;
    333     font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    334     -webkit-font-smoothing: antialiased;
    335     }
    336     .sidebar {
    337      height: 56px;
    338      width: 16px;
    339      background: #888;
    340     font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    341     -webkit-font-smoothing: antialiased;
    342     }
    343     .sidebar:hover { background: #222; }
    344 
    345     .smallbox {
    346      position: relative;
    347      height: 40px;
    348      width: 40px;
    349      padding: 0px;
    350     font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif;
    351     -webkit-font-smoothing: antialiased;
    352     }
    353 
    354     #box1_1 {
    355      background: #cf0a38;
    356      }
    357     #minibox1_1 {
    358      background: #cf0a38;
    359      }
    360     #box1_2 {
    361      background: #cf0a38;
    362      }
    363     #minibox1_2 {
    364      background: #cf0a38;
    365      }
    366     #box1_3 {
    367      background: #cf0a38;
    368      }
    369     #minibox1_3 {
    370      background: #cf0a38;
    371      }
    372     #box1_4 {
    373      background: #cf0a38;
    374      }
    375     #minibox1_4 {
    376      background: #cf0a38;
    377      }
    378     #box1_5 {
    379      background: #cf0a38;
    380      }
    381     #minibox1_5 {
    382      background: #cf0a38;
    383      }
    384     #box2_1 {
    385      background: #ea5b1f;
    386      }
    387     #minibox2_1 {
    388      background: #ea5b1f;
    389      }
    390     #box2_2 {
    391      background: #ea5b1f;
    392      }
    393     #minibox2_2 {
    394      background: #ea5b1f;
    395      }
    396     #box2_3 {
    397      background: #ea5b1f;
    398      }
    399     #minibox2_3 {
    400      background: #ea5b1f;
    401      }
    402     #box2_4 {
    403      background: #ea5b1f;
    404      }
    405     #minibox2_4 {
    406      background: #ea5b1f;
    407      }
    408     #box2_5 {
    409      background: #ea5b1f;
    410      }
    411     #minibox2_5 {
    412      background: #ea5b1f;
    413      }
    414     #box3_1 {
    415      background: #e9cf08;
    416      }
    417     #minibox3_1 {
    418      background: #e9cf08;
    419      }
    420     #box3_2 {
    421      background: #e9cf08;
    422      }
    423     #minibox3_2 {
    424      background: #e9cf08;
    425      }
    426     #box3_3 {
    427      background: #e9cf08;
    428      }
    429     #minibox3_3 {
    430      background: #e9cf08;
    431      }
    432     #box4_1 {
    433      background: #52992f;
    434      }
    435     #minibox4_1 {
    436      background: #52992f;
    437      }
    438     #box4_2 {
    439      background: #52992f;
    440      }
    441     #minibox4_2 {
    442      background: #52992f;
    443      }
    444     #box4_3 {
    445      background: #52992f;
    446      }
    447     #minibox4_3 {
    448      background: #52992f;
    449      }
    450     #box4_4 {
    451      background: #52992f;
    452      }
    453     #minibox4_4 {
    454      background: #52992f;
    455      }
    456     #box5_1 {
    457      background: #1d31b4;
    458      }
    459     #minibox5_1 {
    460      background: #1d31b4;
    461      }
    462     #box5_2 {
    463      background: #1d31b4;
    464      }
    465     #minibox5_2 {
    466      background: #1d31b4;
    467      }
    468     #box6_1 {
    469      background: #001860;
    470      }
    471     #minibox6_1 {
    472      background: #001860;
    473      }
    474     #box6_2 {
    475      background: #001860;
    476      }
    477     #minibox6_2 {
    478      background: #001860;
    479      }
    480     #box6_3 {
    481      background: #001860;
    482      }
    483     #minibox6_3 {
    484      background: #001860;
    485      }
    486     #box7_1 {
    487      background: #8b58bf;
    488      }
    489     #minibox7_1 {
    490      background: #8b58bf;
    491      }
    492     #box7_2 {
    493      background: #8b58bf;
    494      }
    495     #minibox7_2 {
    496      background: #8b58bf;
    497      }
    498     #box8_1 {
    499      background: #111111;
    500      }
    501     #minibox8_1 {
    502      background: #111111;
    503      }
    504 
    505     ul.leaders {
    506         padding: 0;
    507         margin-top: 1px;
    508         margin-bottom: 0;
    509         overflow-x: hidden;
    510         list-style: none}
    511     ul.leaders li.leaded:before {
    512         float: left;
    513         width: 0;
    514         white-space: nowrap;
    515         content:
    516     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    517     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    518     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    519     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    520     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    521     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    522     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    523     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    524     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "
    525     	".  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  "}
    526     ul.leaders li.leaded span:first-child {
    527         padding-right: 0.33em;
    528         background: white}
    529     ul.leaders li.leaded span + span {
    530         float: right;
    531         padding-left: 0.33em;
    532         background: white}
    533     li.indent1 span:first-child {
    534         padding-left: 25px;
    535     }
    536     li.indent2 span:first-child {
    537         padding-left: 50px;
    538     }
    539     li.indent3 span:first-child {
    540         padding-left: 75px;
    541     }
    542     li.indent4 span:first-child {
    543         padding-left: 100px;
    544     }
    545     li.indent5 span:first-child {
    546         padding-left: 125px;
    547     }
    548     li.indent6 span:first-child {
    549         padding-left: 150px;
    550     }
    551     li.indent7 span:first-child {
    552         padding-left: 175px;
    553     }
    554     li.indent8 span:first-child {
    555         padding-left: 200px;
    556     }
    557     li.indent9 span:first-child {
    558         padding-left: 225px;
    559     }
    560 
    561     li.unleaded:before {
    562     	content: "";
    563     }
    564     </style>
    565     <script type="text/javascript">
    566     var qq; window.onload = function() {
    567         if (location.search.length > 0) {
    568             qq = location.search.substring(1, location.search.length);
    569             show_only_one_element(qq);
    570         }
    571     }
    572     function click_element_box(id) {
    573         if (document.getElementById(id).style.display == 'none') {
    574             show_only_one_element(id);
    575         } else {
    576             var x = 0;
    577             if (document.getElementById('segment1').style.display == '') { x++; }
    578             if (document.getElementById('segment2').style.display == '') { x++; }
    579             if (document.getElementById('segment3').style.display == '') { x++; }
    580             if (document.getElementById('segment4').style.display == '') { x++; }
    581             if (x == 1) { show_all_elements(); }
    582             else { show_only_one_element(id); }
    583         }
    584     }
    585     function click_sidebar() {
    586         if (document.getElementById('surround0').style.display == 'none') {
    587             enter_periodic_table();
    588         } else {
    589             show_all_elements();
    590         }
    591     }
    592     function show_all_elements() {
    593         show_element('segment1');
    594         light_up('segment1');
    595         show_element('segment2');
    596         light_up('segment2');
    597         show_element('segment3');
    598         light_up('segment3');
    599         show_element('segment4');
    600         light_up('segment4');
    601     	}
    602     function show_only_one_element(id) {
    603         hide_element('segment1');
    604         light_down('segment1');
    605         hide_element('segment2');
    606         light_down('segment2');
    607         hide_element('segment3');
    608         light_down('segment3');
    609         hide_element('segment4');
    610         light_down('segment4');
    611         show_element(id);
    612         light_up(id);
    613     }
    614     function enter_periodic_table() {
    615         hide_element('segment1');
    616         light_up('segment1');
    617         hide_element('segment2');
    618         light_up('segment2');
    619         hide_element('segment3');
    620         light_up('segment3');
    621         hide_element('segment4');
    622         light_up('segment4');
    623     }
    624     function show_element(id) {
    625         document.getElementById(id).style.display = '';
    626     }
    627     function hide_element(id) {
    628         document.getElementById(id).style.display = 'none';
    629     }
    630     function light_up(id) {
    631         var ic = 'box4_1';
    632         if (id == 'segment2') { ic = 'box4_2';}
    633         if (id == 'segment3') { ic = 'box4_3';}
    634         if (id == 'segment4') { ic = 'box4_4';}
    635         document.getElementById(ic).style.background = '#52992f';
    636     }
    637     function light_down(id) {
    638         var ic = 'box4_1';
    639         if (id == 'segment2') { ic = 'box4_2';}
    640         if (id == 'segment3') { ic = 'box4_3';}
    641         if (id == 'segment4') { ic = 'box4_4';}
    642         document.getElementById(ic).style.background = '#cccccc';
    643     }
    644     </script>
    645 </head>
    646 <body>
    647     <script language="JavaScript">function pasteCode(code) { var myProject = project(); myProject.selectView('source'); myProject.pasteCode(code); }</script>
    648     <font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>
    649     <!--CONTENT BEGINS-->
    650     <div id="periodictable">
    651     <table cellspacing="3" border="0" width="100%">
    652     <tr id="surround4"><td onclick="window.location='Welcome.html'; return false;"><div class="sidebar"></div></td><td onclick="click_element_box('segment1'); return false;"><div id="box4_1" class="box">
    653     <a class="symbol" title="Phrases" href="#">Ph</a>
    654     <div class="indexno">1</div>
    655     <div class="rubric">Phrases</div>
    656     </div>
    657     </td><td onclick="click_element_box('segment2'); return false;"><div id="box4_2" class="box">
    658     <a class="symbol" title="Lexicon" href="#">Lx</a>
    659     <div class="indexno">2</div>
    660     <div class="rubric">Lexicon</div>
    661     </div>
    662     </td><td onclick="click_element_box('segment3'); return false;"><div id="box4_3" class="box">
    663     <a class="symbol" title="Relations" href="#">Rl</a>
    664     <div class="indexno">3</div>
    665     <div class="rubric">Relations</div>
    666     </div>
    667     </td><td onclick="click_element_box('segment4'); return false;"><div id="box4_4" class="box">
    668     <a class="symbol" title="Verbs" href="#">Vb</a>
    669     <div class="indexno">4</div>
    670     <div class="rubric">Verbs</div>
    671     </div>
    672     </td><td onclick="show_all_elements(); return false;" colspan="2" style="width:100%">
    673     <div class="headingbox">
    674     	<div class="headingtext">Phrasebook Index</div>
    675     	<div class="headingrubric">A short dictionary</div>
    676     </div></td>
    677     </tr></table></div><div id="segment1">
    678     <hr><table cellspacing="3" border="0" style="background:#eeeeee;"><tr>
    679     <td valign="top" align="left">
    680     <div id="minibox4_1" class="smallbox">
    681     <a class="symbol" title="Phrases" href="#" onclick="click_element_box('segment1'); return false;">Ph</a>
    682     <div class="indexno">1</div>
    683     </div>
    684     </td>
    685     <td style="width:100%;" align="left" valign="top">
    686     <p style="margin-top:0px;padding-top:0px;margin-bottom:0px;padding-bottom:0px;line-height:150%;"><b>Phrases</b> &mdash; 
    687     A guide to the phrases allowed<br><i>About phrases&nbsp;&nbsp;<a href=inform:/doc159.html><img border=0 src=inform:/doc_images/help.png></a></i></p>
    688     </td>
    689     </tr></table>
    690     <p class="in1"><b>Saying</b></p>Values&nbsp;<a href=#A318><img border=0 src=inform:/doc_images/Below.tif></a>, Names with articles&nbsp;<a href=#A322><img border=0 src=inform:/doc_images/Below.tif></a>, Say if and otherwise&nbsp;<a href=#A328><img border=0 src=inform:/doc_images/Below.tif></a>, Say one of&nbsp;<a href=#A336><img border=0 src=inform:/doc_images/Below.tif></a>, Paragraph control&nbsp;<a href=#A349><img border=0 src=inform:/doc_images/Below.tif></a>, Special characters&nbsp;<a href=#A357><img border=0 src=inform:/doc_images/Below.tif></a>, Fonts and visual effects&nbsp;<a href=#A361><img border=0 src=inform:/doc_images/Below.tif></a>, Some built-in texts&nbsp;<a href=#A367><img border=0 src=inform:/doc_images/Below.tif></a>, Saying lists of things&nbsp;<a href=#A371><img border=0 src=inform:/doc_images/Below.tif></a>, Group in and omit from lists&nbsp;<a href=#A381><img border=0 src=inform:/doc_images/Below.tif></a>, Lists of values&nbsp;<a href=#A385><img border=0 src=inform:/doc_images/Below.tif></a>, Responses&nbsp;<a href=#A390><img border=0 src=inform:/doc_images/Below.tif></a><p class="in1"><b>Values</b></p>Making conditions true&nbsp;<a href=#A391><img border=0 src=inform:/doc_images/Below.tif></a>, Giving values temporary names&nbsp;<a href=#A392><img border=0 src=inform:/doc_images/Below.tif></a>, Arithmetic&nbsp;<a href=#A402><img border=0 src=inform:/doc_images/Below.tif></a>, Real Arithmetic&nbsp;<a href=#A416><img border=0 src=inform:/doc_images/Below.tif></a>, Trigonometry&nbsp;<a href=#A432><img border=0 src=inform:/doc_images/Below.tif></a>, Hyperbolic functions&nbsp;<a href=#A439><img border=0 src=inform:/doc_images/Below.tif></a>, Enumerations&nbsp;<a href=#A445><img border=0 src=inform:/doc_images/Below.tif></a>, Truth states&nbsp;<a href=#A450><img border=0 src=inform:/doc_images/Below.tif></a>, Randomness&nbsp;<a href=#A451><img border=0 src=inform:/doc_images/Below.tif></a>, Tables&nbsp;<a href=#A458><img border=0 src=inform:/doc_images/Below.tif></a>, Sorting tables&nbsp;<a href=#A475><img border=0 src=inform:/doc_images/Below.tif></a>, Breaking down text&nbsp;<a href=#A478><img border=0 src=inform:/doc_images/Below.tif></a>, Matching text&nbsp;<a href=#A491><img border=0 src=inform:/doc_images/Below.tif></a>, Replacing text&nbsp;<a href=#A499><img border=0 src=inform:/doc_images/Below.tif></a>, Casing of text&nbsp;<a href=#A509><img border=0 src=inform:/doc_images/Below.tif></a>, Adaptive text&nbsp;<a href=#A515><img border=0 src=inform:/doc_images/Below.tif></a>, Lists&nbsp;<a href=#A529><img border=0 src=inform:/doc_images/Below.tif></a>, Length of lists&nbsp;<a href=#A542><img border=0 src=inform:/doc_images/Below.tif></a>, Reversing and rotating lists&nbsp;<a href=#A548><img border=0 src=inform:/doc_images/Below.tif></a>, Sorting lists&nbsp;<a href=#A551><img border=0 src=inform:/doc_images/Below.tif></a>, Relations&nbsp;<a href=#A556><img border=0 src=inform:/doc_images/Below.tif></a>, Functional programming&nbsp;<a href=#A570><img border=0 src=inform:/doc_images/Below.tif></a>, Files&nbsp;<a href=#A584><img border=0 src=inform:/doc_images/Below.tif></a>, Figures&nbsp;<a href=#A593><img border=0 src=inform:/doc_images/Below.tif></a>, Sound effects&nbsp;<a href=#A595><img border=0 src=inform:/doc_images/Below.tif></a><p class="in1"><b>Control phrases</b></p>If and unless&nbsp;<a href=#A597><img border=0 src=inform:/doc_images/Below.tif></a>, While&nbsp;<a href=#A600><img border=0 src=inform:/doc_images/Below.tif></a>, Repeat&nbsp;<a href=#A601><img border=0 src=inform:/doc_images/Below.tif></a>, Changing the flow of loops&nbsp;<a href=#A609><img border=0 src=inform:/doc_images/Below.tif></a>, Deciding outcomes&nbsp;<a href=#A611><img border=0 src=inform:/doc_images/Below.tif></a>, Stop or go&nbsp;<a href=#A616><img border=0 src=inform:/doc_images/Below.tif></a><p class="in1"><b>Actions, activities and rules</b></p>Trying actions&nbsp;<a href=#A618><img border=0 src=inform:/doc_images/Below.tif></a>, Action requirements&nbsp;<a href=#A622><img border=0 src=inform:/doc_images/Below.tif></a>, Stop or continue&nbsp;<a href=#A627><img border=0 src=inform:/doc_images/Below.tif></a>, Actions as values&nbsp;<a href=#A629><img border=0 src=inform:/doc_images/Below.tif></a>, Carrying out activities&nbsp;<a href=#A636><img border=0 src=inform:/doc_images/Below.tif></a>, Advanced activities&nbsp;<a href=#A639><img border=0 src=inform:/doc_images/Below.tif></a>, Following rules&nbsp;<a href=#A647><img border=0 src=inform:/doc_images/Below.tif></a>, Success and failure&nbsp;<a href=#A659><img border=0 src=inform:/doc_images/Below.tif></a><p class="in1"><b>Model world</b></p>Ending the story&nbsp;<a href=#A666><img border=0 src=inform:/doc_images/Below.tif></a>, Times of day&nbsp;<a href=#A675><img border=0 src=inform:/doc_images/Below.tif></a>, Durations&nbsp;<a href=#A681><img border=0 src=inform:/doc_images/Below.tif></a>, Timed events&nbsp;<a href=#A683><img border=0 src=inform:/doc_images/Below.tif></a>, Scenes&nbsp;<a href=#A686><img border=0 src=inform:/doc_images/Below.tif></a>, Timing of scenes&nbsp;<a href=#A690><img border=0 src=inform:/doc_images/Below.tif></a>, Player's identity and location&nbsp;<a href=#A694><img border=0 src=inform:/doc_images/Below.tif></a>, Moving and removing things&nbsp;<a href=#A695><img border=0 src=inform:/doc_images/Below.tif></a>, The map&nbsp;<a href=#A699><img border=0 src=inform:/doc_images/Below.tif></a>, Route-finding&nbsp;<a href=#A709><img border=0 src=inform:/doc_images/Below.tif></a>, The object tree&nbsp;<a href=#A713><img border=0 src=inform:/doc_images/Below.tif></a><p class="in1"><b>Understanding</b></p>Asking yes/no questions&nbsp;<a href=#A716><img border=0 src=inform:/doc_images/Below.tif></a>, The player's command&nbsp;<a href=#A717><img border=0 src=inform:/doc_images/Below.tif></a>, Changing the player's command&nbsp;<a href=#A721><img border=0 src=inform:/doc_images/Below.tif></a>, Scope and pronouns&nbsp;<a href=#A725><img border=0 src=inform:/doc_images/Below.tif></a><p><p class="in1"><b>From the extension English Language by Graham Nelson</b></p>Section 1 - Grammatical definitions&nbsp;<a href=#A758><img border=0 src=inform:/doc_images/Below.tif></a>, Section 2 - Saying pronouns&nbsp;<a href=#A763><img border=0 src=inform:/doc_images/Below.tif></a>, Section 3 - Further pronouns&nbsp;<a href=#A773><img border=0 src=inform:/doc_images/Below.tif></a><p><hr><p class="in1"><b>Saying</b></p><a name=A318></a><p class="in2"><b>Values</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra318', 'plus318'); return false;"><img border=0 id="plus318" src=inform:/doc_images/extra.png></a>&nbsp;say "<font color="#4040ff">sayable value</font>"</p>
    691     <div id="extra318" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('say [=0x0022=][=0x0022=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "<font color="#4040ff">sayable value</font>"</p>
    692 
    693     <p>This text substitution takes the value and produces a textual representation of it. Most kinds of value, and really all of the useful ones, are &quot;sayable&quot; - numbers, times, objects, rules, scenes, and so on. Example:</p>
    694     <!-- START CODE "c850" -->
    695     <a id="c850"></a><blockquote class="code"><p class="quoted">
    696     The description of the wrist watch is &quot;The dial reads [time of day].&quot;
    697     </p></blockquote>
    698     <!-- END CODE -->
    699     <p>Here &quot;time of day&quot; is a value - it's a time that varies, and time is a sayable kind of value, so we might get &quot;The dial reads 11:03 AM.&quot;</p>
    700 
    701     <p><b>See</b> &nbsp;<a href=inform:/doc71.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.3. 5.3. Text which names things</p>
    702     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    703     <p class="tightin2"><a href="#" onclick="showExtra('extra319', 'plus319'); return false;"><img border=0 id="plus319" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">number</font> in words]"</p>
    704     <div id="extra319" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... in words]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">number</font> in words]"</p>
    705 
    706     <p>This text substitution writes out the number in English text. Example:</p>
    707     <!-- START CODE "c858" -->
    708     <a id="c858"></a><blockquote class="code"><p class="quoted">
    709     &quot;You've been wandering around for [turn count in words] turns now.&quot;
    710     </p></blockquote>
    711     <!-- END CODE -->
    712     <p>might produce &quot;You've been wandering around for two hundred and thirteen turns now.&quot; The &quot;and&quot; here is natural on one side of the Atlantic but not the other - so with the &quot;Use American dialect.&quot; option in place, it disappears.</p>
    713 
    714     <p><b>See</b> &nbsp;<a href=inform:/doc72.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.4. 5.4. Text with numbers</p>
    715     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    716     <p class="tightin2"><a href="#" onclick="showExtra('extra320', 'plus320'); return false;"><img border=0 id="plus320" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">time</font> in words]"</p>
    717     <div id="extra320" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... in words]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">time</font> in words]"</p>
    718 
    719     <p>This text substitution produces the given time written out in English sentence form. For example:</p>
    720     <!-- START CODE "c2196" -->
    721     <a id="c2196"></a><blockquote class="code"><p class="quoted">
    722     &quot;Through the glass you can see the reversed hands reading [the time of day in words].&quot;
    723     </p></blockquote>
    724     <!-- END CODE -->
    725     <p>might produce</p>
    726     <!-- START CODE "c2197" -->
    727     <a id="c2197"></a><blockquote class="code"><p class="quoted">
    728     Through the glass you can see the reversed hands reading twenty to nine.
    729     </p></blockquote>
    730     <!-- END CODE -->
    731 
    732     <p><b>See</b> &nbsp;<a href=inform:/doc141.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.7. 9.7. Telling the time</p>
    733     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    734     <p class="tightin2"><a href="#" onclick="showExtra('extra321', 'plus321'); return false;"><img border=0 id="plus321" src=inform:/doc_images/extra.png></a>&nbsp;say "[s]"</p>
    735     <div id="extra321" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[s]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[s]"</p>
    736 
    737     <p>This text substitution prints a letter &quot;s&quot; unless the last number printed was 1. Example:</p>
    738     <!-- START CODE "c860" -->
    739     <a id="c860"></a><blockquote class="code"><p class="quoted">
    740     &quot;You've been wandering around for [turn count in words] turn[s] now.&quot;
    741     </p></blockquote>
    742     <!-- END CODE -->
    743     <p>produces &quot;... for one turn now.&quot; or &quot;... for two turns now.&quot; as appropriate. Note that it reacts only to numbers, not to other arithmetic values like times (or, for instance, weights from the &quot;Metric Units&quot; extension).</p>
    744 
    745     <p><b>See</b> &nbsp;<a href=inform:/doc72.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.4. 5.4. Text with numbers</p>
    746     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    747     <a name=A322></a><p class="in2"><b>Names with articles</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra325', 'plus325'); return false;"><img border=0 id="plus325" src=inform:/doc_images/extra.png></a>&nbsp;say "[a <font color="#4040ff">object</font>]"</p>
    748     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[an <font color="#4040ff">object</font>]"</p>
    749     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[A <font color="#4040ff">object</font>]"</p>
    750     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[An <font color="#4040ff">object</font>]"</p>
    751     <div id="extra325" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[a ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[a <font color="#4040ff">object</font>]"</p>
    752 
    753     <p>This text substitution produces the name of the object along with its indefinite article. Example:</p>
    754     <!-- START CODE "c852" -->
    755     <a id="c852"></a><blockquote class="code"><p class="quoted">
    756     Instead of examining something (called the whatever):
    757     <br />&#160;&#160;&#160;&#160;&quot;You can only just make out [a whatever].&quot;
    758     </p></blockquote>
    759     <!-- END CODE -->
    760     <p>which might produce &quot;You can only just make out a lamp-post.&quot;, or &quot;You can only just make out Trevor.&quot;, or &quot;You can only just make out some soldiers.&quot; The &quot;a&quot; or &quot;an&quot; in the wording is replaced by whatever indefinite article applies, if any.</p>
    761 
    762     <p><b>See</b> &nbsp;<a href=inform:/doc71.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.3. 5.3. Text which names things</p>
    763     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    764     <p class="tightin2"><a href="#" onclick="showExtra('extra327', 'plus327'); return false;"><img border=0 id="plus327" src=inform:/doc_images/extra.png></a>&nbsp;say "[the <font color="#4040ff">object</font>]"</p>
    765     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[The <font color="#4040ff">object</font>]"</p>
    766     <div id="extra327" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the <font color="#4040ff">object</font>]"</p>
    767 
    768     <p>This text substitution produces the name of the object along with its definite article. Example:</p>
    769     <!-- START CODE "c854" -->
    770     <a id="c854"></a><blockquote class="code"><p class="quoted">
    771     Instead of examining something (called the whatever):
    772     <br />&#160;&#160;&#160;&#160;&quot;You can only just make out [the whatever].&quot;
    773     </p></blockquote>
    774     <!-- END CODE -->
    775     <p>which might produce &quot;You can only just make out the lamp-post.&quot;, or &quot;You can only just make out Trevor.&quot;, or &quot;You can only just make out the soldiers.&quot; The &quot;the&quot; in the wording is replaced by whatever definite article applies, if any.</p>
    776 
    777     <p><b>See</b> &nbsp;<a href=inform:/doc71.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.3. 5.3. Text which names things</p>
    778     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    779     <a name=A328></a><p class="in2"><b>Say if and otherwise</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra328', 'plus328'); return false;"><img border=0 id="plus328" src=inform:/doc_images/extra.png></a>&nbsp;say "[if <font color="#E00060">a condition</font>]"</p>
    780     <div id="extra328" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[if ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[if <font color="#E00060">a condition</font>]"</p>
    781 
    782     <p>This text substitution produces no text. It's used only for a side-effect: it says that the text following should be said only if the condition is true. That continues until the end of the text, or until an &quot;[end if]&quot; substitution, whichever comes first. If the &quot;[otherwise]&quot; and &quot;[otherwise if]&quot; substitutions are also present, they allow alternatives to be added in case the condition is false. Example:</p>
    783     <!-- START CODE "c899" -->
    784     <a id="c899"></a><blockquote class="code"><p class="quoted">
    785     The wine cask is a container. The printed name of the cask is &quot;[if open]broached, empty cask[otherwise]sealed wine cask&quot;.
    786     </p></blockquote>
    787     <!-- END CODE -->
    788     <p>we find that the cask is described as &quot;a broached, empty cask&quot; when open, and &quot;a sealed wine cask&quot; when closed. A longer example which begins and ends with fixed text, but has two alternatives in the middle:</p>
    789     <!-- START CODE "c900" -->
    790     <a id="c900"></a><blockquote class="code"><p class="quoted">
    791     The Customs Wharf is a room. &quot;Amid the bustle of the quayside, [if the cask is open]many eyes stray to your broached cask. [otherwise]nobody takes much notice of a man heaving a cask about. [end if]Sleek gondolas jostle at the plank pier.&quot;
    792     </p></blockquote>
    793     <!-- END CODE -->
    794 
    795     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    796     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    797     <p class="tightin2"><a href="#" onclick="showExtra('extra329', 'plus329'); return false;"><img border=0 id="plus329" src=inform:/doc_images/extra.png></a>&nbsp;say "[unless <font color="#E00060">a condition</font>]"</p>
    798     <div id="extra329" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[unless ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[unless <font color="#E00060">a condition</font>]"</p>
    799 
    800     <p>This text substitution produces no text. It's used only for a side-effect: it says that the text following should be said only if the condition is false. That continues until the end of the text, or until an &quot;[end if]&quot; substitution, whichever comes first. If the &quot;[otherwise]&quot; and &quot;[otherwise if]&quot; substitutions are also present, they allow alternatives to be added in case the condition is true. Example:</p>
    801     <!-- START CODE "c901" -->
    802     <a id="c901"></a><blockquote class="code"><p class="quoted">
    803     The Customs Hall is a room. &quot;With infinite slowness, with ledgers and quill pens, the clerks ruin their eyesight.[unless the player is a woman] They barely even glance in your direction.&quot;
    804     </p></blockquote>
    805     <!-- END CODE -->
    806 
    807     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    808     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    809     <p class="tightin2"><a href="#" onclick="showExtra('extra330', 'plus330'); return false;"><img border=0 id="plus330" src=inform:/doc_images/extra.png></a>&nbsp;say "[otherwise<font color="#808080">/else</font> if <font color="#E00060">a condition</font>]"</p>
    810     <div id="extra330" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[otherwise if ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[otherwise<font color="#808080">/else</font> if <font color="#E00060">a condition</font>]"</p>
    811 
    812     <p>This text substitution produces no text, and can be used only following an &quot;[if ...]&quot; or &quot;[unless ...]&quot; text substitution. It gives an alternative text to use if the first condition didn't apply, but this one does. Example:</p>
    813     <!-- START CODE "c903" -->
    814     <a id="c903"></a><blockquote class="code"><p class="quoted">
    815     The wine cask is a container. The printed name of the cask is &quot;[if open]broached, empty cask[otherwise if transparent]sealed cask half-full of sloshing wine[otherwise]sealed wine cask&quot;.
    816     </p></blockquote>
    817     <!-- END CODE -->
    818 
    819     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    820     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    821     <p class="tightin2"><a href="#" onclick="showExtra('extra331', 'plus331'); return false;"><img border=0 id="plus331" src=inform:/doc_images/extra.png></a>&nbsp;say "[otherwise<font color="#808080">/else</font> unless <font color="#E00060">a condition</font>]"</p>
    822     <div id="extra331" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[otherwise unless ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[otherwise<font color="#808080">/else</font> unless <font color="#E00060">a condition</font>]"</p>
    823 
    824     <p>This text substitution produces no text, and can be used only following an &quot;[if ...]&quot; or &quot;[unless ...]&quot; text substitution. It gives an alternative text to use if the first condition didn't apply, and this one is false too.</p>
    825 
    826     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    827     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    828     <p class="tightin2"><a href="#" onclick="showExtra('extra333', 'plus333'); return false;"><img border=0 id="plus333" src=inform:/doc_images/extra.png></a>&nbsp;say "[otherwise]"</p>
    829     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[else]"</p>
    830     <div id="extra333" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[otherwise]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[otherwise]"</p>
    831 
    832     <p>This text substitution produces no text, and can be used only following an &quot;[if ...]&quot; or &quot;[unless ...]&quot; text substitution. It switches from text which appears if the condition is true, to text which appears if it is false. Example:</p>
    833     <!-- START CODE "c902" -->
    834     <a id="c902"></a><blockquote class="code"><p class="quoted">
    835     The wine cask is a container. The printed name of the cask is &quot;[if open]broached, empty cask[otherwise]sealed wine cask&quot;.
    836     </p></blockquote>
    837     <!-- END CODE -->
    838 
    839     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    840     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    841     <p class="tightin2"><a href="#" onclick="showExtra('extra334', 'plus334'); return false;"><img border=0 id="plus334" src=inform:/doc_images/extra.png></a>&nbsp;say "[end if]"</p>
    842     <div id="extra334" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[end if]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[end if]"</p>
    843 
    844     <p>This text substitution produces no text, and can be used only to close off a stretch of varying text which begins with &quot;[if ...]&quot;.</p>
    845 
    846     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    847     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    848     <p class="tightin2"><a href="#" onclick="showExtra('extra335', 'plus335'); return false;"><img border=0 id="plus335" src=inform:/doc_images/extra.png></a>&nbsp;say "[end unless]"</p>
    849     <div id="extra335" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[end unless]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[end unless]"</p>
    850 
    851     <p>This text substitution produces no text, and can be used only to close off a stretch of varying text which begins with &quot;[unless ...]&quot;.</p>
    852 
    853     <p><b>See</b> &nbsp;<a href=inform:/doc74.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.6. 5.6. Text with variations</p>
    854     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    855     <a name=A336></a><p class="in2"><b>Say one of</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra336', 'plus336'); return false;"><img border=0 id="plus336" src=inform:/doc_images/extra.png></a>&nbsp;say "[one of]"</p>
    856     <div id="extra336" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[one of]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[one of]"</p>
    857 
    858     <p>This text substitution produces no text. It's used only for a side-effect: it switches between a number of alternative texts, which follow it and are divided by &quot;[or]&quot; substitutions, according to a strategy given in a closing substitution. Example:</p>
    859     <!-- START CODE "c916" -->
    860     <a id="c916"></a><blockquote class="code"><p class="quoted">
    861     &quot;You flip the coin. [one of]Heads[or]Tails[purely at random]!&quot;
    862     </p></blockquote>
    863     <!-- END CODE -->
    864     <p>Here there are just two alternatives, and the strategy is &quot;purely at random&quot;. Exactly half of the time the text will be printed as &quot;You flip the coin. Heads!&quot;; and the other half, &quot;You flip the coin. Tails!&quot;.</p>
    865 
    866     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    867     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    868     <p class="tightin2"><a href="#" onclick="showExtra('extra337', 'plus337'); return false;"><img border=0 id="plus337" src=inform:/doc_images/extra.png></a>&nbsp;say "[or]"</p>
    869     <div id="extra337" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[or]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[or]"</p>
    870 
    871     <p>This text substitution produces no text, and can be used only in a &quot;[one of]...&quot; construction. It divides alternative wordings. Example:</p>
    872     <!-- START CODE "c917" -->
    873     <a id="c917"></a><blockquote class="code"><p class="quoted">
    874     &quot;You flip the coin. [one of]Heads[or]Tails[purely at random]!&quot;
    875     </p></blockquote>
    876     <!-- END CODE -->
    877 
    878     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    879     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    880     <p class="tightin2"><a href="#" onclick="showExtra('extra338', 'plus338'); return false;"><img border=0 id="plus338" src=inform:/doc_images/extra.png></a>&nbsp;say "[at random]"</p>
    881     <div id="extra338" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[at random]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[at random]"</p>
    882 
    883     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are chosen at random except that the same choice cannot come up twice running. This is useful to avoid the deadening effect of repeating the exact same message. Example:</p>
    884     <!-- START CODE "c918" -->
    885     <a id="c918"></a><blockquote class="code"><p class="quoted">
    886     &quot;The light changes randomly again; now it's [one of]green[or]amber[or]red[at random].&quot;
    887     </p></blockquote>
    888     <!-- END CODE -->
    889     <p>Here we can safely say the light &quot;changes&quot;, because the new colour cannot be the same as the one printed the last time.</p>
    890 
    891     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    892     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    893     <p class="tightin2"><a href="#" onclick="showExtra('extra339', 'plus339'); return false;"><img border=0 id="plus339" src=inform:/doc_images/extra.png></a>&nbsp;say "[purely at random]"</p>
    894     <div id="extra339" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[purely at random]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[purely at random]"</p>
    895 
    896     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are chosen uniformly randomly.</p>
    897 
    898     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    899     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    900     <p class="tightin2"><a href="#" onclick="showExtra('extra340', 'plus340'); return false;"><img border=0 id="plus340" src=inform:/doc_images/extra.png></a>&nbsp;say "[then at random]"</p>
    901     <div id="extra340" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[then at random]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[then at random]"</p>
    902 
    903     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are chosen in sequence until all have been seen, and then after that, at random except that the same choice cannot come up twice running. Example:</p>
    904     <!-- START CODE "c919" -->
    905     <a id="c919"></a><blockquote class="code"><p class="quoted">
    906     &quot;Maybe the murderer is [one of]Colonel Mustard[or]Professor Plum[or]Cardinal Cerise[then at random].&quot;
    907     </p></blockquote>
    908     <!-- END CODE -->
    909 
    910     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    911     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    912     <p class="tightin2"><a href="#" onclick="showExtra('extra341', 'plus341'); return false;"><img border=0 id="plus341" src=inform:/doc_images/extra.png></a>&nbsp;say "[then purely at random]"</p>
    913     <div id="extra341" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[then purely at random]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[then purely at random]"</p>
    914 
    915     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are chosen in sequence until all have been seen, but that after that they are chosen uniformly randomly.</p>
    916 
    917     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    918     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    919     <p class="tightin2"><a href="#" onclick="showExtra('extra342', 'plus342'); return false;"><img border=0 id="plus342" src=inform:/doc_images/extra.png></a>&nbsp;say "[sticky random]"</p>
    920     <div id="extra342" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[sticky random]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[sticky random]"</p>
    921 
    922     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that a random choice is made the first time the text is printed, but that it sticks from there on. Example:</p>
    923     <!-- START CODE "c920" -->
    924     <a id="c920"></a><blockquote class="code"><p class="quoted">
    925     &quot;The newspaper headline is: [one of]War Casualties[or]Terrorists[or]Banks[sticky random] [one of]Continue To Expand[or]Lose Out[sticky random].&quot;
    926     </p></blockquote>
    927     <!-- END CODE -->
    928     <p>Although the newspaper headline will change with each playing, it will not alter during play.</p>
    929 
    930     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    931     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    932     <p class="tightin2"><a href="#" onclick="showExtra('extra343', 'plus343'); return false;"><img border=0 id="plus343" src=inform:/doc_images/extra.png></a>&nbsp;say "[as decreasingly likely outcomes]"</p>
    933     <div id="extra343" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[as decreasingly likely outcomes]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[as decreasingly likely outcomes]"</p>
    934 
    935     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are chosen at random, except that the first is most likely to be chosen, the second is next most likely, and so on down to the rarest at the end. Example:</p>
    936     <!-- START CODE "c921" -->
    937     <a id="c921"></a><blockquote class="code"><p class="quoted">
    938     &quot;Zorro strides by, [one of]looking purposeful[or]grim-faced[or]deep in thought[or]suppressing a yawn[or]scratching his ribs[or]trying to conceal that he has cut himself shaving[as decreasingly likely outcomes].&quot;
    939     </p></blockquote>
    940     <!-- END CODE -->
    941     <p>There are six outcomes here: the first is six times as likely as the last, and those in between are similarly scaled, so Zorro cuts himself shaving only once in 21 tries, while he looks purposeful almost a third of the time.</p>
    942 
    943     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    944     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    945     <p class="tightin2"><a href="#" onclick="showExtra('extra344', 'plus344'); return false;"><img border=0 id="plus344" src=inform:/doc_images/extra.png></a>&nbsp;say "[in random order]"</p>
    946     <div id="extra344" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[in random order]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[in random order]"</p>
    947 
    948     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. A random order is chosen for the alternative passages of text, and they are used in that order as the text is printed again and again. When one random cycle finishes, a new one begins. The effect is somewhat like the &quot;shuffle album&quot; feature on an iPod. Example:</p>
    949     <!-- START CODE "c922" -->
    950     <a id="c922"></a><blockquote class="code"><p class="quoted">
    951     &quot;You dip into the chapter on [one of]freshwater fish[or]hairless mammals[or]extinct birds[or]amphibians such as the black salamander[in random order].&quot;
    952     </p></blockquote>
    953     <!-- END CODE -->
    954     <p>One small restriction: if there are more than 32 variations, purely random choices will be printed, and there will be no guarantee that repeats are prevented.</p>
    955 
    956     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    957     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    958     <p class="tightin2"><a href="#" onclick="showExtra('extra345', 'plus345'); return false;"><img border=0 id="plus345" src=inform:/doc_images/extra.png></a>&nbsp;say "[cycling]"</p>
    959     <div id="extra345" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[cycling]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[cycling]"</p>
    960 
    961     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are used one at a time, in turn: after the last one is reached, we start again from the first. Example:</p>
    962     <!-- START CODE "c923" -->
    963     <a id="c923"></a><blockquote class="code"><p class="quoted">
    964     &quot;The pundits discuss [one of]the weather[or]world events[or]celebrity gossip[cycling].&quot;
    965     </p></blockquote>
    966     <!-- END CODE -->
    967 
    968     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    969     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    970     <p class="tightin2"><a href="#" onclick="showExtra('extra346', 'plus346'); return false;"><img border=0 id="plus346" src=inform:/doc_images/extra.png></a>&nbsp;say "[stopping]"</p>
    971     <div id="extra346" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[stopping]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[stopping]"</p>
    972 
    973     <p>This text substitution produces no text, and can be used only to end a &quot;[one of]...&quot; construction. It indicates that the alternatives are used one at a time, in turn: once the last one is reached, it's used forever after. Example:</p>
    974     <!-- START CODE "c924" -->
    975     <a id="c924"></a><blockquote class="code"><p class="quoted">
    976     &quot;[one of]The phone rings[or]The phone rings a second time[or]The phone rings again[stopping].&quot;
    977     </p></blockquote>
    978     <!-- END CODE -->
    979 
    980     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
    981     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
    982     <p class="tightin2"><a href="#" onclick="showExtra('extra348', 'plus348'); return false;"><img border=0 id="plus348" src=inform:/doc_images/extra.png></a>&nbsp;say "[first time]"</p>
    983     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[only]"</p>
    984     <div id="extra348" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[first time]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[first time]"</p>
    985 
    986     <p>This pair of text substitutions causes whatever is between them to be printed only the first time the text is printed. Example:</p>
    987     <!-- START CODE "c925" -->
    988     <a id="c925"></a><blockquote class="code"><p class="quoted">
    989     &quot;The screen door squeaks loudly as when you open it. [first time]Well, you'll get used to it eventually. [only]&quot;
    990     </p></blockquote>
    991     <!-- END CODE -->
    992     <p>This is exactly equivalent to</p>
    993     <!-- START CODE "c926" -->
    994     <a id="c926"></a><blockquote class="code"><p class="quoted">
    995     &quot;The screen door squeaks loudly as when you open it. [one of]Well, you'll get used to it eventually. [or][stopping]&quot;;
    996     </p></blockquote>
    997     <!-- END CODE -->
    998     <p>but easier to read.</p>
    999 
   1000     <p><b>See</b> &nbsp;<a href=inform:/doc75.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.7. 5.7. Text with random alternatives</p>
   1001     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1002     <a name=A349></a><p class="in2"><b>Paragraph control</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra349', 'plus349'); return false;"><img border=0 id="plus349" src=inform:/doc_images/extra.png></a>&nbsp;say "[line break]"</p>
   1003     <div id="extra349" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[line break]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[line break]"</p>
   1004 
   1005     <p>This text substitution produces a line break. Example:</p>
   1006     <!-- START CODE "c943" -->
   1007     <a id="c943"></a><blockquote class="code"><p class="quoted">
   1008     &quot;There is an endless sense of[line break]falling and[line break]falling.&quot;
   1009     </p></blockquote>
   1010     <!-- END CODE -->
   1011     <p>Line breaks are not paragraph breaks, so the result is:</p>
   1012     <!-- START CODE "c944" -->
   1013     <a id="c944"></a><blockquote class="code"><p class="quoted">
   1014     There is an endless sense of
   1015     <br />falling and
   1016     <br />falling.
   1017     </p></blockquote>
   1018     <!-- END CODE -->
   1019     <p>with no extra vertical spacing between these lines.</p>
   1020 
   1021     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1022     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1023     <p class="tightin2"><a href="#" onclick="showExtra('extra350', 'plus350'); return false;"><img border=0 id="plus350" src=inform:/doc_images/extra.png></a>&nbsp;say "[no line break]"</p>
   1024     <div id="extra350" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[no line break]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[no line break]"</p>
   1025 
   1026     <p>This text substitution produces no text. It's used only for a side-effect: it prevents a line break where Inform might otherwise assume one. Example:</p>
   1027     <!-- START CODE "c945" -->
   1028     <a id="c945"></a><blockquote class="code"><p class="quoted">
   1029     &quot;The chorus sing [one of]Jerusalem[or]Rule, Britannia![no line break][at random].&quot;
   1030     </p></blockquote>
   1031     <!-- END CODE -->
   1032     <p>Here the &quot;[no line break]&quot; stops Inform from thinking that the exclamation mark means a sentence ending - it's part of the name of the song &quot;Rule, Britannia!&quot;. So we get</p>
   1033     <!-- START CODE "c946" -->
   1034     <a id="c946"></a><blockquote class="code"><p class="quoted">
   1035     The chorus sing Rule, Britannia!.
   1036     </p></blockquote>
   1037     <!-- END CODE -->
   1038     <p>with no line break between the &quot;!&quot; and &quot;.&quot;.</p>
   1039 
   1040     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1041     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1042     <p class="tightin2"><a href="#" onclick="showExtra('extra351', 'plus351'); return false;"><img border=0 id="plus351" src=inform:/doc_images/extra.png></a>&nbsp;say "[conditional paragraph break]"</p>
   1043     <div id="extra351" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[conditional paragraph break]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[conditional paragraph break]"</p>
   1044 
   1045     <p>This text substitution either produces a paragraph break, or no text at all. It marks a place where Inform can put a paragraph break if necessary; in effect it simulates what Inform does every time a &quot;before&quot; or similar rule finishes. If there is text already printed, and text then follows on, a paragraph break is made. But if not, nothing is done. This is sometimes useful when producing a large amount of text which changes with the circumstances so that it is hard to predict in advance whether a paragraph break is needed or not.</p>
   1046 
   1047     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1048     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1049     <p class="tightin2"><a href="#" onclick="showExtra('extra352', 'plus352'); return false;"><img border=0 id="plus352" src=inform:/doc_images/extra.png></a>&nbsp;say "[command clarification break]"</p>
   1050     <div id="extra352" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[command clarification break]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[command clarification break]"</p>
   1051 
   1052     <p>This text substitution produces a line break, and then also a paragraph break if the text immediately following is a room description brought about by having gone to to a different room and looking around, in which case a line break should be added. In traditional IF, this is used when clarifying what Inform thinks the player intended by a given command. Example:</p>
   1053     <!-- START CODE "c954" -->
   1054     <a id="c954"></a><blockquote class="code"><p class="quoted">
   1055     say &quot;(first opening [the noun])[command clarification break]&quot;;
   1056     </p></blockquote>
   1057     <!-- END CODE -->
   1058     <p>might result in</p>
   1059     <!-- START CODE "c955" -->
   1060     <a id="c955"></a><blockquote class="code"><p class="quoted">
   1061     (first opening the valise)
   1062     <br />You rummage through the valise for tickets, but find nothing.
   1063     </p></blockquote>
   1064     <!-- END CODE -->
   1065 
   1066     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1067     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1068     <p class="tightin2"><a href="#" onclick="showExtra('extra353', 'plus353'); return false;"><img border=0 id="plus353" src=inform:/doc_images/extra.png></a>&nbsp;say "[paragraph break]"</p>
   1069     <div id="extra353" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[paragraph break]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[paragraph break]"</p>
   1070 
   1071     <p>This text substitution produces a paragraph break. Example:</p>
   1072     <!-- START CODE "c951" -->
   1073     <a id="c951"></a><blockquote class="code"><p class="quoted">
   1074     &quot;This is not right.[paragraph break]No, something is terribly wrong.&quot;
   1075     </p></blockquote>
   1076     <!-- END CODE -->
   1077     <p>Paragraph breaks have a little vertical spacing in them, unlike mere line breaks, so the result is:</p>
   1078     <!-- START CODE "c952" -->
   1079     <a id="c952"></a><blockquote class="code"><p class="quoted">
   1080     This is not right.
   1081     </p></blockquote>
   1082     <!-- END CODE -->
   1083     <!-- START CODE "c953" -->
   1084     <a id="c953"></a><blockquote class="code"><p class="quoted">
   1085     No, something is terribly wrong.
   1086     </p></blockquote>
   1087     <!-- END CODE -->
   1088 
   1089     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1090     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1091     <p class="tightin2"><a href="#" onclick="showExtra('extra354', 'plus354'); return false;"><img border=0 id="plus354" src=inform:/doc_images/extra.png></a>&nbsp;say "[run paragraph on]"</p>
   1092     <div id="extra354" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[run paragraph on]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[run paragraph on]"</p>
   1093 
   1094     <p>This text substitution produces no text. It's used only for a side-effect: it prevents a paragraph break occurring after the present text is printed, in case Inform might be tempted to place one there. Example:</p>
   1095     <!-- START CODE "c947" -->
   1096     <a id="c947"></a><blockquote class="code"><p class="quoted">
   1097     Before taking something, say &quot;Very well. [run paragraph on]&quot;.
   1098     </p></blockquote>
   1099     <!-- END CODE -->
   1100     <p>This allows the reply to, say, TAKE ENVELOPE to be</p>
   1101     <!-- START CODE "c948" -->
   1102     <a id="c948"></a><blockquote class="code"><p class="quoted">
   1103     Very well. Taken.
   1104     </p></blockquote>
   1105     <!-- END CODE -->
   1106     <p>rather than</p>
   1107     <!-- START CODE "c949" -->
   1108     <a id="c949"></a><blockquote class="code"><p class="quoted">
   1109     Very well.
   1110     </p></blockquote>
   1111     <!-- END CODE -->
   1112     <!-- START CODE "c950" -->
   1113     <a id="c950"></a><blockquote class="code"><p class="quoted">
   1114     Taken.
   1115     </p></blockquote>
   1116     <!-- END CODE -->
   1117     <p>which is how texts produced by different rules would normally be shown. (It's a traditional printer's term. See Oldfield's Manual of Typography, 1892, under &quot;When two paragraphs are required to be made into one, or, in technical language, 'to run on'.&quot;)</p>
   1118 
   1119     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1120     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1121     <p class="tightin2"><a href="#" onclick="showExtra('extra355', 'plus355'); return false;"><img border=0 id="plus355" src=inform:/doc_images/extra.png></a>&nbsp;say "[run paragraph on with special look spacing]"</p>
   1122     <div id="extra355" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[run paragraph on with special look spacing]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[run paragraph on with special look spacing]"</p>
   1123 
   1124     <p>This text substitution produces no text. It's used only for a side-effect: it indicates that the current printing position does not follow a skipped line, and that further material is expected which will run on from the previous paragraph, but that if no further material turns up then a skipped line would be needed before the next command prompt. (It's very likely that only the Standard Rules will ever need this.)</p>
   1125 
   1126     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p>
   1127     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1128     <p class="tightin2"><a href="#" onclick="showExtra('extra356', 'plus356'); return false;"><img border=0 id="plus356" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> a paragraph break is pending<i>:</i></p>
   1129     <div id="extra356" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('a paragraph break is pending')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> a paragraph break is pending<i>:</i></p>
   1130 
   1131     <p>This condition is true if text has recently been said in such a way that Inform expects to add a paragraph break at the next opportunity (for instance when the present rule ends and another one says something, or when a &quot;[conditional paragraph break]&quot; is made).</p>
   1132 
   1133     <p><b>See</b> &nbsp;<a href=inform:/doc76.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.8. 5.8. Line breaks and paragraph breaks</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   1134     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1135     <a name=A357></a><p class="in2"><b>Special characters</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra357', 'plus357'); return false;"><img border=0 id="plus357" src=inform:/doc_images/extra.png></a>&nbsp;say "[bracket]"</p>
   1136     <div id="extra357" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[bracket]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[bracket]"</p>
   1137 
   1138     <p>This text substitution expands to a single open square bracket, avoiding the problem that a literal [ in text would look to Inform like the opening of a substitution. Example:</p>
   1139     <!-- START CODE "c841" -->
   1140     <a id="c841"></a><blockquote class="code"><p class="quoted">
   1141     &quot;He [bracket]Lord Astor[close bracket] would, wouldn't he?&quot;
   1142     </p></blockquote>
   1143     <!-- END CODE -->
   1144     <p>prints as &quot;He [Lord Astor] would, wouldn't he?&quot;.</p>
   1145 
   1146     <p><b>See</b> &nbsp;<a href=inform:/doc70.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.2. 5.2. How Inform reads quoted text</p>
   1147     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1148     <p class="tightin2"><a href="#" onclick="showExtra('extra358', 'plus358'); return false;"><img border=0 id="plus358" src=inform:/doc_images/extra.png></a>&nbsp;say "[close bracket]"</p>
   1149     <div id="extra358" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[close bracket]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[close bracket]"</p>
   1150 
   1151     <p>This text substitution expands to a single close square bracket, avoiding the problem that a literal ] in text would look to Inform like the closing of a substitution. Example:</p>
   1152     <!-- START CODE "c842" -->
   1153     <a id="c842"></a><blockquote class="code"><p class="quoted">
   1154     &quot;He [bracket]Lord Astor[close bracket] would, wouldn't he?&quot;
   1155     </p></blockquote>
   1156     <!-- END CODE -->
   1157     <p>prints as &quot;He [Lord Astor] would, wouldn't he?&quot;.</p>
   1158 
   1159     <p><b>See</b> &nbsp;<a href=inform:/doc70.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.2. 5.2. How Inform reads quoted text</p>
   1160     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1161     <p class="tightin2"><a href="#" onclick="showExtra('extra359', 'plus359'); return false;"><img border=0 id="plus359" src=inform:/doc_images/extra.png></a>&nbsp;say "[apostrophe<font color="#808080">/'</font>]"</p>
   1162     <div id="extra359" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[apostrophe]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[apostrophe<font color="#808080">/'</font>]"</p>
   1163 
   1164     <p>This text substitution expands to a single quotation mark, avoiding Inform's ordinary rule of converting literal single quotation marks to double at the edges of words. Example:</p>
   1165     <!-- START CODE "c845" -->
   1166     <a id="c845"></a><blockquote class="code"><p class="quoted">
   1167     Instead of going outside, say &quot;Lucy snaps, 'What's the matter? You don't trust my cookin[apostrophe] mister?'&quot;
   1168     </p></blockquote>
   1169     <!-- END CODE -->
   1170     <p>produces:</p>
   1171     <!-- START CODE "c846" -->
   1172     <a id="c846"></a><blockquote class="code"><p class="quoted">
   1173     Lucy snaps, &quot;What's the matter? You don't trust my cookin' mister?&quot;
   1174     </p></blockquote>
   1175     <!-- END CODE -->
   1176     <p>A more abbreviated form would be:</p>
   1177     <!-- START CODE "c847" -->
   1178     <a id="c847"></a><blockquote class="code"><p class="quoted">
   1179     Instead of going outside, say &quot;Lucy snaps, 'What's the matter? You don't trust my cookin['] mister?'&quot;
   1180     </p></blockquote>
   1181     <!-- END CODE -->
   1182     <p>which has exactly the same meaning.</p>
   1183 
   1184     <p><b>See</b> &nbsp;<a href=inform:/doc70.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.2. 5.2. How Inform reads quoted text</p>
   1185     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1186     <p class="tightin2"><a href="#" onclick="showExtra('extra360', 'plus360'); return false;"><img border=0 id="plus360" src=inform:/doc_images/extra.png></a>&nbsp;say "[quotation mark]"</p>
   1187     <div id="extra360" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[quotation mark]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[quotation mark]"</p>
   1188 
   1189     <p>This text substitution expands to a double quotation mark. Most of the time this is unnecessary because of Inform's rule of converting literal single quotation marks to double at the edges of words, so it's needed only if we want a double-quote in the middle of a word for some reason. Example:</p>
   1190     <!-- START CODE "c848" -->
   1191     <a id="c848"></a><blockquote class="code"><p class="quoted">
   1192     &quot;The compass reads 41o21'23[quotation mark]E.&quot;
   1193     </p></blockquote>
   1194     <!-- END CODE -->
   1195     <p>which produces: The compass reads 41o21'23&quot;E. (Note that [&quot;] is not allowed; a double-quotation mark is never allowed inside double-quoted text, not even in a text substitution.)</p>
   1196 
   1197     <p><b>See</b> &nbsp;<a href=inform:/doc70.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.2. 5.2. How Inform reads quoted text</p>
   1198     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1199     <a name=A361></a><p class="in2"><b>Fonts and visual effects</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra361', 'plus361'); return false;"><img border=0 id="plus361" src=inform:/doc_images/extra.png></a>&nbsp;say "[bold type]"</p>
   1200     <div id="extra361" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[bold type]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[bold type]"</p>
   1201 
   1202     <p>This text substitution produces no text. It's used only for a side-effect: to make the text following it appear in bold face. &quot;[roman type]&quot; should be used to switch back to normal. Example:</p>
   1203     <!-- START CODE "c965" -->
   1204     <a id="c965"></a><blockquote class="code"><p class="quoted">
   1205     &quot;Jane looked down. [bold type]Danger[roman type], the sign read.&quot;
   1206     </p></blockquote>
   1207     <!-- END CODE -->
   1208 
   1209     <p><b>See</b> &nbsp;<a href=inform:/doc77.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.9. 5.9. Text with type styles</p>
   1210     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1211     <p class="tightin2"><a href="#" onclick="showExtra('extra362', 'plus362'); return false;"><img border=0 id="plus362" src=inform:/doc_images/extra.png></a>&nbsp;say "[italic type]"</p>
   1212     <div id="extra362" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[italic type]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[italic type]"</p>
   1213 
   1214     <p>This text substitution produces no text. It's used only for a side-effect: to make the text following it appear in italics. &quot;[roman type]&quot; should be used to switch back to normal. Example:</p>
   1215     <!-- START CODE "c966" -->
   1216     <a id="c966"></a><blockquote class="code"><p class="quoted">
   1217     &quot;This is [italic type]very suspicious[roman type], said Peter.&quot;
   1218     </p></blockquote>
   1219     <!-- END CODE -->
   1220 
   1221     <p><b>See</b> &nbsp;<a href=inform:/doc77.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.9. 5.9. Text with type styles</p>
   1222     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1223     <p class="tightin2"><a href="#" onclick="showExtra('extra363', 'plus363'); return false;"><img border=0 id="plus363" src=inform:/doc_images/extra.png></a>&nbsp;say "[roman type]"</p>
   1224     <div id="extra363" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[roman type]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[roman type]"</p>
   1225 
   1226     <p>This text substitution produces no text. It's used only for a side-effect: to return to ordinary Roman type after a previous use of &quot;[bold type]&quot; or &quot;[italic type]&quot;.</p>
   1227 
   1228     <p><b>See</b> &nbsp;<a href=inform:/doc77.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.9. 5.9. Text with type styles</p>
   1229     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1230     <p class="tightin2"><a href="#" onclick="showExtra('extra364', 'plus364'); return false;"><img border=0 id="plus364" src=inform:/doc_images/extra.png></a>&nbsp;say "[fixed letter spacing]"</p>
   1231     <div id="extra364" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[fixed letter spacing]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[fixed letter spacing]"</p>
   1232 
   1233     <p>This text substitution produces no text. It's used only for a side-effect: to make the text following it appear with fixed letter spacing. In variable letter spacing, a lower case &quot;m&quot; is much wider than an &quot;l&quot;, which is natural to the eye since it has been printing practice since the Renaissance. Fixed letter spacing is more like typewriting, and it is best used to reproduce typewritten text or printed notices; it can also be convenient for making simple diagrams. Example:</p>
   1234     <!-- START CODE "c967" -->
   1235     <a id="c967"></a><blockquote class="code"><p class="quoted">
   1236     &quot;On the door is written: [fixed letter spacing]J45--O-O-O[variable letter spacing].&quot;
   1237     </p></blockquote>
   1238     <!-- END CODE -->
   1239 
   1240     <p><b>See</b> &nbsp;<a href=inform:/doc77.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.9. 5.9. Text with type styles</p>
   1241     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1242     <p class="tightin2"><a href="#" onclick="showExtra('extra365', 'plus365'); return false;"><img border=0 id="plus365" src=inform:/doc_images/extra.png></a>&nbsp;say "[variable letter spacing]"</p>
   1243     <div id="extra365" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[variable letter spacing]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[variable letter spacing]"</p>
   1244 
   1245     <p>This text substitution produces no text. It's used only for a side-effect: to return to ordinary letter spacing after a previous use of &quot;[fixed letter spacing]&quot;.</p>
   1246 
   1247     <p><b>See</b> &nbsp;<a href=inform:/doc77.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.9. 5.9. Text with type styles</p>
   1248     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1249     <p class="tightin2"><a href="#" onclick="showExtra('extra366', 'plus366'); return false;"><img border=0 id="plus366" src=inform:/doc_images/extra.png></a>&nbsp;display the boxed quotation (<font color="#4040ff">text</font>)</p>
   1250     <div id="extra366" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('display the boxed quotation')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;display the boxed quotation (<font color="#4040ff">text</font>)</p>
   1251 
   1252     <p>This phrase displays the given text on screen in an overlaid box. For reasons to do with the way such quotations are plotted onto the screen, their text is treated literally: no substitutions in square brackets are obeyed. The quotation will only ever appear once, regardless of the number of times the &quot;display the boxed quotation ...&quot; phrase is reached. Rather than being shown immediately - and thus, probably, scrolling away before it can be seen - the display is held back until the next command prompt is shown to the player. Example:</p>
   1253     <!-- START CODE "c1015" -->
   1254     <a id="c1015"></a><blockquote class="code"><p class="quoted">
   1255     After looking in the Wabe, display the boxed quotation
   1256     <br />&#160;&#160;&#160;&#160;&quot;And 'the wabe' is the grass-plot round
   1257     <br />&#160;&#160;&#160;&#160;a sun-dial, I suppose? said Alice,
   1258     <br />&#160;&#160;&#160;&#160;surprised at her own ingenuity.
   1259     </p></blockquote>
   1260     <!-- END CODE -->
   1261     <!-- START CODE "c1016" -->
   1262     <a id="c1016"></a><blockquote class="code"><p class="quoted">
   1263     &#160;&#160;&#160;&#160;Of course it is. It's called 'wabe,'
   1264     <br />&#160;&#160;&#160;&#160;you know, because it goes a long way
   1265     <br />&#160;&#160;&#160;&#160;before it, and a long way behind it --
   1266     </p></blockquote>
   1267     <!-- END CODE -->
   1268     <!-- START CODE "c1017" -->
   1269     <a id="c1017"></a><blockquote class="code"><p class="quoted">
   1270     &#160;&#160;&#160;&#160;-- Lewis Carroll&quot;.
   1271     </p></blockquote>
   1272     <!-- END CODE -->
   1273     <p>This was the original example used in <span class="italic">Trinity</span>, by Brian Moriarty, which invented the idea. A player exploring Kensington Gardens comes upon a location enigmatically called The Wabe; and by way of explanation, this quotation pops up.</p>
   1274 
   1275     <p><b>See</b> &nbsp;<a href=inform:/doc80.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.12. 5.12. Displaying quotations</p><p><b>Kind:</b> phrase text -> nothing</p>
   1276     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1277     <a name=A367></a><p class="in2"><b>Some built-in texts</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra367', 'plus367'); return false;"><img border=0 id="plus367" src=inform:/doc_images/extra.png></a>&nbsp;say "[the<font color="#808080">/--</font> banner text]"</p>
   1278     <div id="extra367" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the banner text]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the<font color="#808080">/--</font> banner text]"</p>
   1279 
   1280     <p>This text substitution expands to the banner text giving bibliographic details of the current story file, rather like the opening credits of a movie, or the title page of a book.</p>
   1281 
   1282     <p><b>See</b> &nbsp;<a href=inform:/doc323.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.37. 18.37. Printing the banner text</p>
   1283     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1284     <p class="tightin2"><a href="#" onclick="showExtra('extra368', 'plus368'); return false;"><img border=0 id="plus368" src=inform:/doc_images/extra.png></a>&nbsp;say "[the<font color="#808080">/--</font> list of extension credits]"</p>
   1285     <div id="extra368" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the list of extension credits]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the<font color="#808080">/--</font> list of extension credits]"</p>
   1286 
   1287     <p>This text substitution expands to one or more lines of text crediting each of the extensions used by the current source text, along with their version numbers and authors. Extensions whose authors have chosen the &quot;use authorial modesty&quot; option are missed out. Example:</p>
   1288     <!-- START CODE "c9065" -->
   1289     <a id="c9065"></a><blockquote class="code"><p class="quoted">
   1290     Standard Rules version 2/090402 by Graham Nelson
   1291     </p></blockquote>
   1292     <!-- END CODE -->
   1293 
   1294     <p><b>See</b> &nbsp;<a href=inform:/doc435.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;27.6. 27.6. Version numbering</p>
   1295     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1296     <p class="tightin2"><a href="#" onclick="showExtra('extra369', 'plus369'); return false;"><img border=0 id="plus369" src=inform:/doc_images/extra.png></a>&nbsp;say "[the<font color="#808080">/--</font> complete list of extension credits]"</p>
   1297     <div id="extra369" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the complete list of extension credits]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the<font color="#808080">/--</font> complete list of extension credits]"</p>
   1298 
   1299     <p>This text substitution expands to one or more lines of text crediting each of the extensions used by the current source text, along with their version numbers and authors. Every extension is included, even those whose authors have opted for &quot;use authorial modesty&quot;. Example:</p>
   1300     <!-- START CODE "c9067" -->
   1301     <a id="c9067"></a><blockquote class="code"><p class="quoted">
   1302     Standard Rules version 2/090402 by Graham Nelson
   1303     <br />Locksmith version 9 by Emily Short
   1304     </p></blockquote>
   1305     <!-- END CODE -->
   1306 
   1307     <p><b>See</b> &nbsp;<a href=inform:/doc435.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;27.6. 27.6. Version numbering</p>
   1308     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1309     <p class="tightin2"><a href="#" onclick="showExtra('extra370', 'plus370'); return false;"><img border=0 id="plus370" src=inform:/doc_images/extra.png></a>&nbsp;say "[the<font color="#808080">/--</font> player's surroundings]"</p>
   1310     <div id="extra370" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the player[=0x0027=]s surroundings]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the<font color="#808080">/--</font> player's surroundings]"</p>
   1311 
   1312     <p>This text substitution produces a succinct description of where the player is, be this in darkness, in a lighted room or inside an opaque container such as a large packing case. Example:</p>
   1313     <!-- START CODE "c1746" -->
   1314     <a id="c1746"></a><blockquote class="code"><p class="quoted">
   1315     now the left hand status line is &quot;You: [the player's surroundings]&quot;;
   1316     </p></blockquote>
   1317     <!-- END CODE -->
   1318 
   1319     <p><b>See</b> &nbsp;<a href=inform:/doc118.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.3. 8.3. Changing the status line</p>
   1320     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1321     <a name=A371></a><p class="in2"><b>Saying lists of things</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra371', 'plus371'); return false;"><img border=0 id="plus371" src=inform:/doc_images/extra.png></a>&nbsp;list the contents of (<font color="#4040ff">object</font>)</p>
   1322     <div id="extra371" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('list the contents of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;list the contents of (<font color="#4040ff">object</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]with newlines[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;with newlines,<br>
   1323     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]indented[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;indented,<br>
   1324     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]giving inventory information[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;giving inventory information,<br>
   1325     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]as a sentence[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;as a sentence,<br>
   1326     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]including contents[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;including contents,<br>
   1327     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]including all contents[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;including all contents,<br>
   1328     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]tersely[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;tersely,<br>
   1329     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]giving brief inventory information[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;giving brief inventory information,<br>
   1330     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]using the definite article[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using the definite article,<br>
   1331     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]listing marked items only[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;listing marked items only,<br>
   1332     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]prefacing with is/are[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;prefacing with is/are,<br>
   1333     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]not listing concealed items[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;not listing concealed items,<br>
   1334     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]suppressing all articles[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;suppressing all articles,<br>
   1335     &nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:pasteCode('[=0x000A=]with extra indentation[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;with extra indentation,<br>
   1336     &nbsp;&nbsp;&nbsp;&nbsp;<i>and/or</i> <a href="javascript:pasteCode('capitalized[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;capitalized
   1337     </p>
   1338 
   1339     <p>This phrase produces a list of all things whose holder is the given object, according to Inform's traditional conventions for room descriptions and inventory listings. Example:</p>
   1340     <!-- START CODE "c2987" -->
   1341     <a id="c2987"></a><blockquote class="code"><p class="quoted">
   1342     list the contents of Marley Wood, as a sentence, with newlines
   1343     <br />and including all contents;
   1344     </p></blockquote>
   1345     <!-- END CODE -->
   1346     <p>Where this is possible, it's generally better to use &quot;[list of things in ...]&quot; instead, which produces the same result in an acceptable way for the middle of a sentence.</p>
   1347 
   1348     <p><b>See</b> &nbsp;<a href=inform:/doc172.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.14. 11.14. Phrase options</p><p><b>Kind:</b> phrase object -> nothing</p>
   1349     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1350     <p class="tightin2"><a href="#" onclick="showExtra('extra373', 'plus373'); return false;"><img border=0 id="plus373" src=inform:/doc_images/extra.png></a>&nbsp;say "[a list of <font color="#4040ff">description of objects</font>]"</p>
   1351     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[A list of <font color="#4040ff">description of objects</font>]"</p>
   1352     <div id="extra373" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[a list of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[a list of <font color="#4040ff">description of objects</font>]"</p>
   1353 
   1354     <p>This text substitution produces a list, in sentence form, of everything matching the description. Each item is prefaced by its indefinite article. Example:</p>
   1355     <!-- START CODE "c872" -->
   1356     <a id="c872"></a><blockquote class="code"><p class="quoted">
   1357     a maritime bill of lading, some hemp rope and Falconer's Naval Dictionary
   1358     </p></blockquote>
   1359     <!-- END CODE -->
   1360 
   1361     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1362     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1363     <p class="tightin2"><a href="#" onclick="showExtra('extra374', 'plus374'); return false;"><img border=0 id="plus374" src=inform:/doc_images/extra.png></a>&nbsp;say "[list of <font color="#4040ff">description of objects</font>]"</p>
   1364     <div id="extra374" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[list of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[list of <font color="#4040ff">description of objects</font>]"</p>
   1365 
   1366     <p>This text substitution produces a list, in sentence form, of everything matching the description. Example:</p>
   1367     <!-- START CODE "c868" -->
   1368     <a id="c868"></a><blockquote class="code"><p class="quoted">
   1369     &quot;Mr Darcy glares proudly at you. He is wearing [list of things worn by Darcy] and carrying [list of things carried by Darcy].&quot;
   1370     </p></blockquote>
   1371     <!-- END CODE -->
   1372     <p>And, if this were from a dramatisation of the novel by Miss Fielding rather than Miss Austen, we might find:</p>
   1373     <!-- START CODE "c869" -->
   1374     <a id="c869"></a><blockquote class="code"><p class="quoted">
   1375     Mr Darcy glares proudly at you. He is wearing a pair of Newcastle United boxer shorts and carrying a self-help book.
   1376     </p></blockquote>
   1377     <!-- END CODE -->
   1378     <p>If the description matches nothing - for instance, if Darcy has empty hands - then &quot;nothing&quot; is printed.</p>
   1379 
   1380     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1381     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1382     <p class="tightin2"><a href="#" onclick="showExtra('extra376', 'plus376'); return false;"><img border=0 id="plus376" src=inform:/doc_images/extra.png></a>&nbsp;say "[the list of <font color="#4040ff">description of objects</font>]"</p>
   1383     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;say "[The list of <font color="#4040ff">description of objects</font>]"</p>
   1384     <div id="extra376" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the list of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the list of <font color="#4040ff">description of objects</font>]"</p>
   1385 
   1386     <p>This text substitution produces a list, in sentence form, of everything matching the description. Each item is prefaced by its definite article. Example:</p>
   1387     <!-- START CODE "c874" -->
   1388     <a id="c874"></a><blockquote class="code"><p class="quoted">
   1389     the maritime bill of lading, the hemp rope and Falconer's Naval Dictionary
   1390     </p></blockquote>
   1391     <!-- END CODE -->
   1392 
   1393     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1394     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1395     <p class="tightin2"><a href="#" onclick="showExtra('extra377', 'plus377'); return false;"><img border=0 id="plus377" src=inform:/doc_images/extra.png></a>&nbsp;say "[is-are a list of <font color="#4040ff">description of objects</font>]"</p>
   1396     <div id="extra377" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[is-are a list of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[is-are a list of <font color="#4040ff">description of objects</font>]"</p>
   1397 
   1398     <p>This text substitution produces a list, in sentence form, of everything matching the description. Each item is prefaced by its indefinite article, and the whole list starts with &quot;is&quot; (if there's one item or none) or &quot;are&quot; (more than one). Examples:</p>
   1399     <!-- START CODE "c881" -->
   1400     <a id="c881"></a><blockquote class="code"><p class="quoted">
   1401     is a marlin-spike
   1402     <br />are a maritime bill of lading, some hemp rope and Falconer's Naval Dictionary
   1403     </p></blockquote>
   1404     <!-- END CODE -->
   1405 
   1406     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1407     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1408     <p class="tightin2"><a href="#" onclick="showExtra('extra378', 'plus378'); return false;"><img border=0 id="plus378" src=inform:/doc_images/extra.png></a>&nbsp;say "[is-are list of <font color="#4040ff">description of objects</font>]"</p>
   1409     <div id="extra378" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[is-are list of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[is-are list of <font color="#4040ff">description of objects</font>]"</p>
   1410 
   1411     <p>This text substitution produces a list, in sentence form, of everything matching the description. The whole list starts with &quot;is&quot; (if there's one item or none) or &quot;are&quot; (more than one). Examples:</p>
   1412     <!-- START CODE "c880" -->
   1413     <a id="c880"></a><blockquote class="code"><p class="quoted">
   1414     is marlin-spike
   1415     <br />are maritime bill of lading, hemp rope and Falconer's Naval Dictionary
   1416     </p></blockquote>
   1417     <!-- END CODE -->
   1418 
   1419     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1420     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1421     <p class="tightin2"><a href="#" onclick="showExtra('extra379', 'plus379'); return false;"><img border=0 id="plus379" src=inform:/doc_images/extra.png></a>&nbsp;say "[is-are the list of <font color="#4040ff">description of objects</font>]"</p>
   1422     <div id="extra379" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[is-are the list of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[is-are the list of <font color="#4040ff">description of objects</font>]"</p>
   1423 
   1424     <p>This text substitution produces a list, in sentence form, of everything matching the description. Each item is prefaced by its definite article, and the whole list starts with &quot;is&quot; (if there's one item or none) or &quot;are&quot; (more than one). Examples:</p>
   1425     <!-- START CODE "c882" -->
   1426     <a id="c882"></a><blockquote class="code"><p class="quoted">
   1427     is the marlin-spike
   1428     <br />are the maritime bill of lading, the hemp rope and Falconer's Naval Dictionary
   1429     </p></blockquote>
   1430     <!-- END CODE -->
   1431 
   1432     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1433     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1434     <p class="tightin2"><a href="#" onclick="showExtra('extra380', 'plus380'); return false;"><img border=0 id="plus380" src=inform:/doc_images/extra.png></a>&nbsp;say "[a list of <font color="#4040ff">description of objects</font> including contents]"</p>
   1435     <div id="extra380" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[a list of ... including contents]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[a list of <font color="#4040ff">description of objects</font> including contents]"</p>
   1436 
   1437     <p>This text substitution produces a list, in sentence form, of everything matching the description, noting any contents in brackets. This is really intended only to be used by the Standard Rules.</p>
   1438 
   1439     <p><b>See</b> &nbsp;<a href=inform:/doc73.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;5.5. 5.5. Text with lists</p>
   1440     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1441     <a name=A381></a><p class="in2"><b>Group in and omit from lists</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra381', 'plus381'); return false;"><img border=0 id="plus381" src=inform:/doc_images/extra.png></a>&nbsp;group (<font color="#4040ff">description of objects</font>) together</p>
   1442     <div id="extra381" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('group ... together')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;group (<font color="#4040ff">description of objects</font>) together</p>
   1443 
   1444     <p>This phrase causes the objects described to be listed together in a single item as part of an inventory or room description. The effect is temporary, and the phrase should only be used when this list is imminent. Example:</p>
   1445     <!-- START CODE "c6529" -->
   1446     <a id="c6529"></a><blockquote class="code"><p class="quoted">
   1447     Utensil is a kind of thing. The knife, the fork and the spoon are utensils. Before listing contents: group utensils together.
   1448     </p></blockquote>
   1449     <!-- END CODE -->
   1450     <p>This might produce the list item &quot;fork and spoon&quot;.</p>
   1451 
   1452     <p><b>See</b> &nbsp;<a href=inform:/doc299.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.13. 18.13. Listing contents of something</p><p><b>Kind:</b> phrase description of objects -> nothing</p>
   1453     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1454     <p class="tightin2"><a href="#" onclick="showExtra('extra382', 'plus382'); return false;"><img border=0 id="plus382" src=inform:/doc_images/extra.png></a>&nbsp;group (<font color="#4040ff">description of objects</font>) together giving articles</p>
   1455     <div id="extra382" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('group ... together giving articles')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;group (<font color="#4040ff">description of objects</font>) together giving articles</p>
   1456 
   1457     <p>This phrase causes the objects described to be listed together in a single item as part of an inventory or room description, but giving each individual item its indefinite article. The effect is temporary, and the phrase should only be used when this list is imminent. Example:</p>
   1458     <!-- START CODE "c6530" -->
   1459     <a id="c6530"></a><blockquote class="code"><p class="quoted">
   1460     Utensil is a kind of thing. The knife, the fork and the spoon are utensils. Before listing contents: group utensils together giving articles.
   1461     </p></blockquote>
   1462     <!-- END CODE -->
   1463     <p>This might produce the list item &quot;a fork and a spoon&quot;.</p>
   1464 
   1465     <p><b>See</b> &nbsp;<a href=inform:/doc299.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.13. 18.13. Listing contents of something</p><p><b>Kind:</b> phrase description of objects -> nothing</p>
   1466     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1467     <p class="tightin2"><a href="#" onclick="showExtra('extra383', 'plus383'); return false;"><img border=0 id="plus383" src=inform:/doc_images/extra.png></a>&nbsp;group (<font color="#4040ff">description of objects</font>) together as (<font color="#4040ff">text</font>)</p>
   1468     <div id="extra383" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('group ... together as')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;group (<font color="#4040ff">description of objects</font>) together as (<font color="#4040ff">text</font>)</p>
   1469 
   1470     <p>This phrase causes the objects described to be listed together in a single item as part of an inventory or room description, summarised with the given text. The effect is temporary, and the phrase should only be used when this list is imminent. Example:</p>
   1471     <!-- START CODE "c6531" -->
   1472     <a id="c6531"></a><blockquote class="code"><p class="quoted">
   1473     Utensil is a kind of thing. The knife, the fork and the spoon are utensils. Before listing contents: group utensils together as &quot;utensils&quot;.
   1474     </p></blockquote>
   1475     <!-- END CODE -->
   1476     <p>This might produce the list item &quot;two utensils (fork and spoon)&quot;.</p>
   1477 
   1478     <p><b>See</b> &nbsp;<a href=inform:/doc299.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.13. 18.13. Listing contents of something</p><p><b>Kind:</b> phrase (description of objects, text) -> nothing</p>
   1479     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1480     <p class="tightin2"><a href="#" onclick="showExtra('extra384', 'plus384'); return false;"><img border=0 id="plus384" src=inform:/doc_images/extra.png></a>&nbsp;omit contents in listing</p>
   1481     <div id="extra384" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('omit contents in listing')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;omit contents in listing</p>
   1482 
   1483     <p>This phrase changes the form of an inventory listing, room description, etc., so that it will simply list &quot;a bottle of sand&quot; or &quot;an empty bottle&quot;, rather than &quot;a bottle (in which is sand)&quot; or &quot;a bottle (which is empty)&quot;. It should be used only when the listing is imminent, and does not have permanent effect.</p>
   1484 
   1485     <p><b>See</b> &nbsp;<a href=inform:/doc296.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.10. 18.10. Printing the name of something</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   1486     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1487     <a name=A385></a><p class="in2"><b>Lists of values</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra385', 'plus385'); return false;"><img border=0 id="plus385" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">list of values</font> in brace notation]"</p>
   1488     <div id="extra385" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... in brace notation]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">list of values</font> in brace notation]"</p>
   1489 
   1490     <p>This text substitution produces the list in the form of &quot;{&quot;, then a comma-separated list, and then &quot;}&quot;, which looks less like an English sentence but more mathematical. Example:</p>
   1491     <!-- START CODE "c8346" -->
   1492     <a id="c8346"></a><blockquote class="code"><p class="quoted">
   1493     &quot;[list of people in brace notation]&quot;
   1494     </p></blockquote>
   1495     <!-- END CODE -->
   1496     <p>might produce &quot;{ yourself, Mr Darcy, Flashman }&quot;.</p>
   1497 
   1498     <p><b>See</b> &nbsp;<a href=inform:/doc354.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.3. 21.3. Saying lists of values</p>
   1499     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1500     <p class="tightin2"><a href="#" onclick="showExtra('extra386', 'plus386'); return false;"><img border=0 id="plus386" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">list of objects</font> with definite articles]"</p>
   1501     <div id="extra386" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... with definite articles]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">list of objects</font> with definite articles]"</p>
   1502 
   1503     <p>This text substitution writes out the list in sentence form, adding the appropriate definite articles. Example:</p>
   1504     <!-- START CODE "c8348" -->
   1505     <a id="c8348"></a><blockquote class="code"><p class="quoted">
   1506     let L be {the piano, the music stand};
   1507     <br />say &quot;[L with definite articles]&quot;;
   1508     </p></blockquote>
   1509     <!-- END CODE -->
   1510     <p>says &quot;the piano and the music stand&quot;.</p>
   1511 
   1512     <p><b>See</b> &nbsp;<a href=inform:/doc354.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.3. 21.3. Saying lists of values</p>
   1513     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1514     <p class="tightin2"><a href="#" onclick="showExtra('extra387', 'plus387'); return false;"><img border=0 id="plus387" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">list of objects</font> with indefinite articles]"</p>
   1515     <div id="extra387" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... with indefinite articles]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">list of objects</font> with indefinite articles]"</p>
   1516 
   1517     <p>This text substitution writes out the list in sentence form, adding the appropriate indefinite articles. Example:</p>
   1518     <!-- START CODE "c8349" -->
   1519     <a id="c8349"></a><blockquote class="code"><p class="quoted">
   1520     let L be {the piano, the music stand};
   1521     <br />say &quot;[L with definite articles]&quot;;
   1522     </p></blockquote>
   1523     <!-- END CODE -->
   1524     <p>says &quot;a piano and a music stand&quot;.</p>
   1525 
   1526     <p><b>See</b> &nbsp;<a href=inform:/doc354.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.3. 21.3. Saying lists of values</p>
   1527     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1528     <a name=A390></a><p class="in2"><b>Responses</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra390', 'plus390'); return false;"><img border=0 id="plus390" src=inform:/doc_images/extra.png></a>&nbsp;say "[text of <font color="#4040ff">response</font>]"</p>
   1529     <div id="extra390" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[text of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[text of <font color="#4040ff">response</font>]"</p>
   1530 
   1531     <p>This text substitution writes out the current text of the given response.</p>
   1532 
   1533     <p><b>See</b> &nbsp;<a href=inform:/doc223.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.10. 14.10. Responses</p>
   1534     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1535     <p><hr><p class="in1"><b>Values</b></p><a name=A391></a><p class="in2"><b>Making conditions true</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra391', 'plus391'); return false;"><img border=0 id="plus391" src=inform:/doc_images/extra.png></a>&nbsp;now (<font color="#E00060">a condition</font>)</p>
   1536     <div id="extra391" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('now')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;now (<font color="#E00060">a condition</font>)</p>
   1537 
   1538     <p>This phrase makes the condition become true. Examples:</p>
   1539     <!-- START CODE "c1915" -->
   1540     <a id="c1915"></a><blockquote class="code"><p class="quoted">
   1541     now the score is 100;
   1542     <br />now the player is Kevin;
   1543     <br />now the front door is open;
   1544     <br />now Mr Darcy is wearing the top hat;
   1545     <br />now all the doors are open;
   1546     <br />now all of the things in the sack are in the box;
   1547     </p></blockquote>
   1548     <!-- END CODE -->
   1549     <p>Inform issues a problem message if the condition asks to do the impossible (&quot;now 3 is an even number&quot;) or is vague (&quot;now the duck is not in the Lily Pond&quot;) or not in the present tense (&quot;now the front door had been open&quot;).</p>
   1550 
   1551     <p><b>See</b> &nbsp;<a href=inform:/doc126.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.11. 8.11. Now...</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   1552     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1553     <a name=A392></a><p class="in2"><b>Giving values temporary names</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra392', 'plus392'); return false;"><img border=0 id="plus392" src=inform:/doc_images/extra.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be (<font color="#4040ff">value</font>)</p>
   1554     <div id="extra392" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('let ... be')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be (<font color="#4040ff">value</font>)</p>
   1555 
   1556     <p>This phrase creates a new temporary variable, starting it with the value supplied. The variable lasts only for the present block of phrases, which certainly means that it lasts only for the current rule. Examples:</p>
   1557     <!-- START CODE "c3002" -->
   1558     <a id="c3002"></a><blockquote class="code"><p class="quoted">
   1559     let outer bull be 25;
   1560     <br />let the current appearance be &quot;reddish brown&quot;;
   1561     <br />let the special room be Marley Wood;
   1562     </p></blockquote>
   1563     <!-- END CODE -->
   1564     <p>The kinds of these are deduced from the values given, so that, for instance,</p>
   1565     <!-- START CODE "c3003" -->
   1566     <a id="c3003"></a><blockquote class="code"><p class="quoted">
   1567     say &quot;The outer bull scores [the outer bull in words] when you practice archery in [special room].&quot;
   1568     </p></blockquote>
   1569     <!-- END CODE -->
   1570     <p>produces</p>
   1571     <!-- START CODE "c3004" -->
   1572     <a id="c3004"></a><blockquote class="code"><p class="quoted">
   1573     The outer bull scores twenty-five when you practice archery in Marley Wood.
   1574     </p></blockquote>
   1575     <!-- END CODE -->
   1576     <p>The variable name should be a new one; if it's the name of an existing one, then the kinds must agree. So:</p>
   1577     <!-- START CODE "c3005" -->
   1578     <a id="c3005"></a><blockquote class="code"><p class="quoted">
   1579     let outer bull be 25;
   1580     <br />let outer bull be 50;
   1581     </p></blockquote>
   1582     <!-- END CODE -->
   1583     <p>is a legal combination, because the second &quot;let&quot; simply changes the value of the existing &quot;outer bull&quot; variable to a different number.</p>
   1584 
   1585     <p><b>See</b> &nbsp;<a href=inform:/doc173.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.15. 11.15. Let and temporary variables</p><p><b>Kind:</b> phrase (value, value) -> nothing</p>
   1586     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1587     <p class="tightin2"><a href="#" onclick="showExtra('extra393', 'plus393'); return false;"><img border=0 id="plus393" src=inform:/doc_images/extra.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be (<font color="#E00060">name of kind</font>)</p>
   1588     <div id="extra393" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('let ... be')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be (<font color="#E00060">name of kind</font>)</p>
   1589 
   1590     <p>This phrase creates a new temporary variable of the given kind. The variable lasts only for the present block of phrases, which certainly means that it lasts only for the current rule. Example:</p>
   1591     <!-- START CODE "c3006" -->
   1592     <a id="c3006"></a><blockquote class="code"><p class="quoted">
   1593     let inner bull be a number;
   1594     </p></blockquote>
   1595     <!-- END CODE -->
   1596     <p>The variable created holding the default value for that kind - in this case, the number 0. A handful of very obscure kinds have no default values, and then a problem message is produced. Inform also disallows:</p>
   1597     <!-- START CODE "c3007" -->
   1598     <a id="c3007"></a><blockquote class="code"><p class="quoted">
   1599     let the conveyance be a vehicle;
   1600     </p></blockquote>
   1601     <!-- END CODE -->
   1602     <p>because temporary variables aren't allowed to have kinds more specific than &quot;object&quot;. (This is a good thing: suppose there are no vehicles in the world?) It's quite safe in such cases to use</p>
   1603     <!-- START CODE "c3008" -->
   1604     <a id="c3008"></a><blockquote class="code"><p class="quoted">
   1605     let the conveyance be an object;
   1606     </p></blockquote>
   1607     <!-- END CODE -->
   1608     <p>instead, which creates it as the special object value &quot;nothing&quot;.</p>
   1609 
   1610     <p><b>See</b> &nbsp;<a href=inform:/doc173.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.15. 11.15. Let and temporary variables</p><p><b>Kind:</b> phrase (value, value) -> nothing</p>
   1611     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1612     <p class="tightin2"><a href="#" onclick="showExtra('extra394', 'plus394'); return false;"><img border=0 id="plus394" src=inform:/doc_images/extra.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be (<font color="#4040ff">description of relations of values</font>)</p>
   1613     <div id="extra394" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('let ... be')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be (<font color="#4040ff">description of relations of values</font>)</p>
   1614 
   1615     <p>This phrase creates a new temporary variable, and sets its value to the identity of a newly created and equally temporary relation. These last only for the present block of phrases, which certainly means that they exist only in the current rule. Example:</p>
   1616     <!-- START CODE "c4253" -->
   1617     <a id="c4253"></a><blockquote class="code"><p class="quoted">
   1618     let the password dictionary be a relation of texts;
   1619     </p></blockquote>
   1620     <!-- END CODE -->
   1621     <p>This makes a purely temporary various-to-various relation between texts, which lasts as long as the temporary value &quot;password dictionary&quot; lasts. By default, relations are various-to-various, but we could instead write, say:</p>
   1622     <!-- START CODE "c4254" -->
   1623     <a id="c4254"></a><blockquote class="code"><p class="quoted">
   1624     let the nicknames catalogue be a various-to-one relation of texts;
   1625     </p></blockquote>
   1626     <!-- END CODE -->
   1627 
   1628     <p><b>See</b> &nbsp;<a href=inform:/doc212.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.15. 13.15. Temporary relations</p><p><b>Kind:</b> phrase (value, description of relations of Ks to Ls) -> nothing</p>
   1629     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1630     <p class="tightin2"><a href="#" onclick="showExtra('extra395', 'plus395'); return false;"><img border=0 id="plus395" src=inform:/doc_images/extra.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be given by (<font color="#4040ff">equation name</font>)</p>
   1631     <div id="extra395" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('let ... be given by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;let (<font color="#E00060">a new name</font>) be given by (<font color="#4040ff">equation name</font>)</p>
   1632 
   1633     <p>This phrase creates a new temporary variable, starting it with the value found by solving the given equation. The variable lasts only for the present block of phrases, which certainly means that it lasts only for the current rule. Example:</p>
   1634     <!-- START CODE "c4836" -->
   1635     <a id="c4836"></a><blockquote class="code"><p class="quoted">
   1636     let F be given by Newton's Second Law where a is the acceleration due to gravity;
   1637     </p></blockquote>
   1638     <!-- END CODE -->
   1639     <p>There is also a more compact syntax, giving the equation explicitly:</p>
   1640     <!-- START CODE "c4837" -->
   1641     <a id="c4837"></a><blockquote class="code"><p class="quoted">
   1642     let KE be given by KE = mv^2/2 where KE is an energy;
   1643     </p></blockquote>
   1644     <!-- END CODE -->
   1645 
   1646     <p><b>See</b> &nbsp;<a href=inform:/doc243.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.18. 15.18. Equations</p><p><b>Kind:</b> phrase (value, equation name) -> nothing</p>
   1647     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1648     <p class="tightin2"><a href="#" onclick="showExtra('extra396', 'plus396'); return false;"><img border=0 id="plus396" src=inform:/doc_images/extra.png></a>&nbsp;let (<font color="#E00060">a temporary named value</font>) be (<font color="#4040ff">value</font>)</p>
   1649     <div id="extra396" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('let ... be')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;let (<font color="#E00060">a temporary named value</font>) be (<font color="#4040ff">value</font>)</p>
   1650 
   1651     <p>This phrase creates a new temporary variable, starting it with the value supplied. The variable lasts only for the present block of phrases, which certainly means that it lasts only for the current rule. Examples:</p>
   1652     <!-- START CODE "c3002" -->
   1653     <a id="c3002"></a><blockquote class="code"><p class="quoted">
   1654     let outer bull be 25;
   1655     <br />let the current appearance be &quot;reddish brown&quot;;
   1656     <br />let the special room be Marley Wood;
   1657     </p></blockquote>
   1658     <!-- END CODE -->
   1659     <p>The kinds of these are deduced from the values given, so that, for instance,</p>
   1660     <!-- START CODE "c3003" -->
   1661     <a id="c3003"></a><blockquote class="code"><p class="quoted">
   1662     say &quot;The outer bull scores [the outer bull in words] when you practice archery in [special room].&quot;
   1663     </p></blockquote>
   1664     <!-- END CODE -->
   1665     <p>produces</p>
   1666     <!-- START CODE "c3004" -->
   1667     <a id="c3004"></a><blockquote class="code"><p class="quoted">
   1668     The outer bull scores twenty-five when you practice archery in Marley Wood.
   1669     </p></blockquote>
   1670     <!-- END CODE -->
   1671     <p>The variable name should be a new one; if it's the name of an existing one, then the kinds must agree. So:</p>
   1672     <!-- START CODE "c3005" -->
   1673     <a id="c3005"></a><blockquote class="code"><p class="quoted">
   1674     let outer bull be 25;
   1675     <br />let outer bull be 50;
   1676     </p></blockquote>
   1677     <!-- END CODE -->
   1678     <p>is a legal combination, because the second &quot;let&quot; simply changes the value of the existing &quot;outer bull&quot; variable to a different number.</p>
   1679 
   1680     <p><b>See</b> &nbsp;<a href=inform:/doc173.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.15. 11.15. Let and temporary variables</p><p><b>Kind:</b> phrase (value, value) -> nothing</p>
   1681     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1682     <p class="tightin2"><a href="#" onclick="showExtra('extra397', 'plus397'); return false;"><img border=0 id="plus397" src=inform:/doc_images/extra.png></a>&nbsp;let (<font color="#E00060">a temporary named value</font>) be given by (<font color="#4040ff">equation name</font>)</p>
   1683     <div id="extra397" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('let ... be given by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;let (<font color="#E00060">a temporary named value</font>) be given by (<font color="#4040ff">equation name</font>)</p>
   1684 
   1685     <p>This phrase creates a new temporary variable, starting it with the value found by solving the given equation. The variable lasts only for the present block of phrases, which certainly means that it lasts only for the current rule. Example:</p>
   1686     <!-- START CODE "c4836" -->
   1687     <a id="c4836"></a><blockquote class="code"><p class="quoted">
   1688     let F be given by Newton's Second Law where a is the acceleration due to gravity;
   1689     </p></blockquote>
   1690     <!-- END CODE -->
   1691     <p>There is also a more compact syntax, giving the equation explicitly:</p>
   1692     <!-- START CODE "c4837" -->
   1693     <a id="c4837"></a><blockquote class="code"><p class="quoted">
   1694     let KE be given by KE = mv^2/2 where KE is an energy;
   1695     </p></blockquote>
   1696     <!-- END CODE -->
   1697 
   1698     <p><b>See</b> &nbsp;<a href=inform:/doc243.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.18. 15.18. Equations</p><p><b>Kind:</b> phrase (value, equation name) -> nothing</p>
   1699     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1700     <p class="tightin2"><a href="#" onclick="showExtra('extra398', 'plus398'); return false;"><img border=0 id="plus398" src=inform:/doc_images/extra.png></a>&nbsp;increase (<font color="#E00060">a stored value</font>) by (<font color="#4040ff">value</font>)</p>
   1701     <div id="extra398" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('increase ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;increase (<font color="#E00060">a stored value</font>) by (<font color="#4040ff">value</font>)</p>
   1702 
   1703     <p>This phrase increases the variable, table entry, list entry, or property by the given amount, which must be of a compatible kind. Example:</p>
   1704     <!-- START CODE "c1957" -->
   1705     <a id="c1957"></a><blockquote class="code"><p class="quoted">
   1706     increase the score by 8;
   1707     <br />increase the time of day by 5 minutes;
   1708     </p></blockquote>
   1709     <!-- END CODE -->
   1710 
   1711     <p><b>See</b> &nbsp;<a href=inform:/doc127.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.12. 8.12. Increasing and decreasing</p><p><b>Kind:</b> phrase (value, value) -> nothing</p>
   1712     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1713     <p class="tightin2"><a href="#" onclick="showExtra('extra399', 'plus399'); return false;"><img border=0 id="plus399" src=inform:/doc_images/extra.png></a>&nbsp;decrease (<font color="#E00060">a stored value</font>) by (<font color="#4040ff">value</font>)</p>
   1714     <div id="extra399" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('decrease ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;decrease (<font color="#E00060">a stored value</font>) by (<font color="#4040ff">value</font>)</p>
   1715 
   1716     <p>This phrase decreases the variable, table entry, list entry, or property by the given amount, which must be of a compatible kind. Example:</p>
   1717     <!-- START CODE "c1958" -->
   1718     <a id="c1958"></a><blockquote class="code"><p class="quoted">
   1719     decrease the score by 6;
   1720     <br />decrease the carrying capacity of the player by 10;
   1721     </p></blockquote>
   1722     <!-- END CODE -->
   1723 
   1724     <p><b>See</b> &nbsp;<a href=inform:/doc127.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.12. 8.12. Increasing and decreasing</p><p><b>Kind:</b> phrase (value, value) -> nothing</p>
   1725     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1726     <p class="tightin2"><a href="#" onclick="showExtra('extra400', 'plus400'); return false;"><img border=0 id="plus400" src=inform:/doc_images/extra.png></a>&nbsp;increment (<font color="#E00060">a stored value</font>)</p>
   1727     <div id="extra400" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('increment')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;increment (<font color="#E00060">a stored value</font>)</p>
   1728 
   1729     <p>This phrase increases the variable, table entry, list entry, or property by 1. Example:</p>
   1730     <!-- START CODE "c1959" -->
   1731     <a id="c1959"></a><blockquote class="code"><p class="quoted">
   1732     increment the score;
   1733     </p></blockquote>
   1734     <!-- END CODE -->
   1735 
   1736     <p><b>See</b> &nbsp;<a href=inform:/doc127.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.12. 8.12. Increasing and decreasing</p><p><b>Kind:</b> phrase value -> nothing</p>
   1737     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1738     <p class="tightin2"><a href="#" onclick="showExtra('extra401', 'plus401'); return false;"><img border=0 id="plus401" src=inform:/doc_images/extra.png></a>&nbsp;decrement (<font color="#E00060">a stored value</font>)</p>
   1739     <div id="extra401" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('decrement')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;decrement (<font color="#E00060">a stored value</font>)</p>
   1740 
   1741     <p>This phrase decreases the variable, table entry, list entry, or property by 1. Example:</p>
   1742     <!-- START CODE "c1960" -->
   1743     <a id="c1960"></a><blockquote class="code"><p class="quoted">
   1744     decrement the score;
   1745     </p></blockquote>
   1746     <!-- END CODE -->
   1747 
   1748     <p><b>See</b> &nbsp;<a href=inform:/doc127.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.12. 8.12. Increasing and decreasing</p><p><b>Kind:</b> phrase value -> nothing</p>
   1749     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1750     <a name=A402></a><p class="in2"><b>Arithmetic</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra403', 'plus403'); return false;"><img border=0 id="plus403" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) + (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1751     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;(<font color="#4040ff">arithmetic value</font>) plus (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1752     <div id="extra403" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('+')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) + (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1753 
   1754     <p>This phrase performs signed addition on the given values, whose kinds must agree, and produces the result. Examples:</p>
   1755     <!-- START CODE "c4550" -->
   1756     <a id="c4550"></a><blockquote class="code"><p class="quoted">
   1757     200 + 1 = 201
   1758     <br />10:04 AM + two minutes = 10:06 AM
   1759     </p></blockquote>
   1760     <!-- END CODE -->
   1761 
   1762     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase (arithmetic value, arithmetic value) -> arithmetic value</p>
   1763     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1764     <p class="tightin2"><a href="#" onclick="showExtra('extra405', 'plus405'); return false;"><img border=0 id="plus405" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) - (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1765     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;(<font color="#4040ff">arithmetic value</font>) minus (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1766     <div id="extra405" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('-')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) - (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1767 
   1768     <p>This phrase performs signed subtraction on the given values, whose kinds must agree, and produces the result. Examples:</p>
   1769     <!-- START CODE "c4551" -->
   1770     <a id="c4551"></a><blockquote class="code"><p class="quoted">
   1771     200 - 1 = 199
   1772     <br />10:04 AM - two minutes = 10:02 AM
   1773     </p></blockquote>
   1774     <!-- END CODE -->
   1775 
   1776     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase (arithmetic value, arithmetic value) -> arithmetic value</p>
   1777     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1778     <p class="tightin2"><a href="#" onclick="showExtra('extra408', 'plus408'); return false;"><img border=0 id="plus408" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) * (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1779     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;(<font color="#4040ff">arithmetic value</font>) times (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1780     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;(<font color="#4040ff">arithmetic value</font>) multiplied by (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1781     <div id="extra408" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('*')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) * (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1782 
   1783     <p>This phrase performs signed multiplication on the given values, whose kinds must be dimensionally compatible, and produces the result. Examples:</p>
   1784     <!-- START CODE "c4552" -->
   1785     <a id="c4552"></a><blockquote class="code"><p class="quoted">
   1786     201 times 3 = 603
   1787     <br />two minutes times 4 = eight minutes
   1788     </p></blockquote>
   1789     <!-- END CODE -->
   1790 
   1791     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase (arithmetic value, arithmetic value) -> arithmetic value</p>
   1792     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1793     <p class="tightin2"><a href="#" onclick="showExtra('extra410', 'plus410'); return false;"><img border=0 id="plus410" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) <font color="#808080">/</font> (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1794     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;(<font color="#4040ff">arithmetic value</font>) divided by (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1795     <div id="extra410" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) <font color="#808080">/</font> (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1796 
   1797     <p>This phrase performs signed division on the given values, whose kinds must be dimensionally compatible, and produces the result. Examples:</p>
   1798     <!-- START CODE "c4553" -->
   1799     <a id="c4553"></a><blockquote class="code"><p class="quoted">
   1800     201 divided by 3 = 67
   1801     <br />202 divided by 3 = 67
   1802     <br />202.0 divided by 3 = 67.33334
   1803     <br />twenty minutes divided by 4 = five minutes
   1804     <br />twenty minutes divided by five minutes = 4
   1805     </p></blockquote>
   1806     <!-- END CODE -->
   1807     <p>Division rounds whole-number values down to the nearest whole number. An attempt to divide a number by 0 will cause a run-time problem message; but an attempt to divide a real number by 0 will instead produce plus infinity or minus infinity.</p>
   1808 
   1809     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase (arithmetic value, arithmetic value) -> arithmetic value</p>
   1810     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1811     <p class="tightin2"><a href="#" onclick="showExtra('extra411', 'plus411'); return false;"><img border=0 id="plus411" src=inform:/doc_images/extra.png></a>&nbsp;remainder after dividing (<font color="#4040ff">arithmetic value</font>) by (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1812     <div id="extra411" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('remainder after dividing ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;remainder after dividing (<font color="#4040ff">arithmetic value</font>) by (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1813 
   1814     <p>This phrase performs signed division on the given values, whose kinds must be dimensionally compatible, and then produces the remainder. Examples:</p>
   1815     <!-- START CODE "c4554" -->
   1816     <a id="c4554"></a><blockquote class="code"><p class="quoted">
   1817     remainder after dividing 201 by 5 = 1
   1818     <br />remainder after dividing twenty minutes by 7 = six minutes
   1819     </p></blockquote>
   1820     <!-- END CODE -->
   1821     <p>It is mathematically impossible to divide by 0, so any attempt to find the remainder after dividing a number by 0 will cause a run-time problem message. For a real number this won't arise and the remainder will usually be 0.0.</p>
   1822 
   1823     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase (arithmetic value, arithmetic value) -> arithmetic value</p>
   1824     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1825     <p class="tightin2"><a href="#" onclick="showExtra('extra412', 'plus412'); return false;"><img border=0 id="plus412" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) to the nearest (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1826     <div id="extra412" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('to the nearest')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">arithmetic value</font>) to the nearest (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1827 
   1828     <p>This phrase rounds the given value off, rounding upward in boundary cases. Examples:</p>
   1829     <!-- START CODE "c4556" -->
   1830     <a id="c4556"></a><blockquote class="code"><p class="quoted">
   1831     201 to the nearest 5 = 200
   1832     <br />205 to the nearest 10 = 210
   1833     <br />10:27 AM to the nearest five minutes = 10:25 AM
   1834     </p></blockquote>
   1835     <!-- END CODE -->
   1836 
   1837     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase (arithmetic value, arithmetic value) -> arithmetic value</p>
   1838     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1839     <p class="tightin2"><a href="#" onclick="showExtra('extra413', 'plus413'); return false;"><img border=0 id="plus413" src=inform:/doc_images/extra.png></a>&nbsp;square root of (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1840     <div id="extra413" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('square root of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;square root of (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1841 
   1842     <p>This phrase produces an approximate square root, to the nearest integer, of the given value, which must be of a kind which has square roots. Example:</p>
   1843     <!-- START CODE "c4557" -->
   1844     <a id="c4557"></a><blockquote class="code"><p class="quoted">
   1845     square root of 16 = 4
   1846     </p></blockquote>
   1847     <!-- END CODE -->
   1848     <p>Trying to take the square root of a negative number will cause a run-time problem, because then we can't even nearly solve it.</p>
   1849     <p>(Warning: this is slow to compute if the Z-machine setting is used. For</p>
   1850     <p>best performance, use Glulx.)</p>
   1851 
   1852     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase arithmetic value -> arithmetic value</p>
   1853     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1854     <p class="tightin2"><a href="#" onclick="showExtra('extra414', 'plus414'); return false;"><img border=0 id="plus414" src=inform:/doc_images/extra.png></a>&nbsp;cube root of (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1855     <div id="extra414" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('cube root of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cube root of (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   1856 
   1857     <p>This phrase produces an approximate cube root, to the nearest integer, of the given value, which must be of a kind which has cube roots. Example:</p>
   1858     <!-- START CODE "c4559" -->
   1859     <a id="c4559"></a><blockquote class="code"><p class="quoted">
   1860     cube root of 27 = 3
   1861     <br />cube root of -27 = -3
   1862     </p></blockquote>
   1863     <!-- END CODE -->
   1864     <p>(Warning: this is not very accurate if the Z-machine setting is used. For</p>
   1865     <p>best performance, use Glulx.)</p>
   1866 
   1867     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>Kind:</b> phrase arithmetic value -> arithmetic value</p>
   1868     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1869     <p class="tightin2"><a href="#" onclick="showExtra('extra415', 'plus415'); return false;"><img border=0 id="plus415" src=inform:/doc_images/extra.png></a>&nbsp;total (<font color="#4040ff">arithmetic values valued property</font>) of (<font color="#4040ff">description of values</font>) ... <i>value</i></p>
   1870     <div id="extra415" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('total ... of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;total (<font color="#4040ff">arithmetic values valued property</font>) of (<font color="#4040ff">description of values</font>) ... <i>value</i></p>
   1871 
   1872     <p>This phrase produces the total of some property held by all of the values matching the description. A problem message is produced if the values in question can't have that property (&quot;the total carrying capacity of scenes&quot;), or if it holds a kind of value which can't meaningfully be added up (&quot;the total description of open doors&quot;). Example:</p>
   1873     <!-- START CODE "c4760" -->
   1874     <a id="c4760"></a><blockquote class="code"><p class="quoted">
   1875     total carrying capacity of people in the Deep Pool
   1876     </p></blockquote>
   1877     <!-- END CODE -->
   1878 
   1879     <p><b>See</b> &nbsp;<a href=inform:/doc242.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.17. 15.17. Totals</p><p><b>Kind:</b> phrase (arithmetic values valued property, description of values) -> arithmetic value</p>
   1880     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1881     <a name=A416></a><p class="in2"><b>Real Arithmetic (for Glulx only)</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra416', 'plus416'); return false;"><img border=0 id="plus416" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">real number</font> to <font color="#4040ff">number</font> decimal places]"</p>
   1882     <div id="extra416" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... to ... decimal places]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">real number</font> to <font color="#4040ff">number</font> decimal places]"</p>
   1883 
   1884     <p>This text substitution writes out the number to the given number of decimal places. Examples:</p>
   1885     <!-- START CODE "c4547" -->
   1886     <a id="c4547"></a><blockquote class="code"><p class="quoted">
   1887     &quot;The semicircle is roughly [pi to 3 decimal places] paces around.&quot;
   1888     </p></blockquote>
   1889     <!-- END CODE -->
   1890     <p>produces &quot;The semicircle is roughly 3.142 paces around.&quot; The number of places can only usefully be from 1 to 8. Note that, for example, &quot;[1.235 x 10^-7 to 3 decimal places]&quot; produces 0.0; &quot;[1.235678 x 10^8 to 3 decimal places]&quot; produces &quot;1.236 x 10^8&quot;.</p>
   1891 
   1892     <p><b>See</b> &nbsp;<a href=inform:/doc229.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.4. 15.4. Printing real numbers</p>
   1893     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1894     <p class="tightin2"><a href="#" onclick="showExtra('extra417', 'plus417'); return false;"><img border=0 id="plus417" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">real number</font> in decimal notation]"</p>
   1895     <div id="extra417" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... in decimal notation]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">real number</font> in decimal notation]"</p>
   1896 
   1897     <p>This text substitution writes out the number in decimal form, that is, avoiding &quot;x 10^n&quot; even for very large or very small quantities. For example,</p>
   1898     <!-- START CODE "c4548" -->
   1899     <a id="c4548"></a><blockquote class="code"><p class="quoted">
   1900     &quot;[1.23457 x 10^8 in decimal notation]&quot;
   1901     </p></blockquote>
   1902     <!-- END CODE -->
   1903     <p>produces 123457000.0 rather than 1.23457 x 10^8. This can look pretty extreme: for example, &quot;[1.8983 x 10^27 in decimal notation]&quot;, the mass of the planet Jupiter in kilograms, produces 1898296960000000000000000000.0.</p>
   1904 
   1905     <p><b>See</b> &nbsp;<a href=inform:/doc229.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.4. 15.4. Printing real numbers</p>
   1906     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1907     <p class="tightin2"><a href="#" onclick="showExtra('extra418', 'plus418'); return false;"><img border=0 id="plus418" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">real number</font> to <font color="#4040ff">number</font> decimal places in decimal notation]"</p>
   1908     <div id="extra418" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... to ... decimal places in decimal notation]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">real number</font> to <font color="#4040ff">number</font> decimal places in decimal notation]"</p>
   1909 
   1910     <p>This text substitution writes out the number in decimal form, but rounding to the accuracy given.</p>
   1911 
   1912     <p><b>See</b> &nbsp;<a href=inform:/doc229.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.4. 15.4. Printing real numbers</p>
   1913     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1914     <p class="tightin2"><a href="#" onclick="showExtra('extra419', 'plus419'); return false;"><img border=0 id="plus419" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">real number</font> in scientific notation]"</p>
   1915     <div id="extra419" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... in scientific notation]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">real number</font> in scientific notation]"</p>
   1916 
   1917     <p>This text substitution writes out the number in scientific form, that is, using &quot;x 10^n&quot; even for easy-to-judge quantities. For example,</p>
   1918     <!-- START CODE "c4549" -->
   1919     <a id="c4549"></a><blockquote class="code"><p class="quoted">
   1920     &quot;[the reciprocal of 137 in scientific notation]&quot;
   1921     </p></blockquote>
   1922     <!-- END CODE -->
   1923     <p>produces 7.29927 x 10^-3 rather than 0.0073. This can look odd: for example, &quot;[pi in scientific notation]&quot; comes out as 3.14159 x 10^0 rather than 3.14159.</p>
   1924 
   1925     <p><b>See</b> &nbsp;<a href=inform:/doc229.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.4. 15.4. Printing real numbers</p>
   1926     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1927     <p class="tightin2"><a href="#" onclick="showExtra('extra420', 'plus420'); return false;"><img border=0 id="plus420" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">real number</font> to <font color="#4040ff">number</font> decimal places in scientific notation]"</p>
   1928     <div id="extra420" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... to ... decimal places in scientific notation]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">real number</font> to <font color="#4040ff">number</font> decimal places in scientific notation]"</p>
   1929 
   1930     <p>This text substitution writes out the number in scientific form, but rounding to the accuracy given.</p>
   1931 
   1932     <p><b>See</b> &nbsp;<a href=inform:/doc229.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.4. 15.4. Printing real numbers</p>
   1933     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1934     <p class="tightin2"><a href="#" onclick="showExtra('extra421', 'plus421'); return false;"><img border=0 id="plus421" src=inform:/doc_images/extra.png></a>&nbsp;reciprocal of (<font color="#4040ff">real number</font>) ... <i>real number</i></p>
   1935     <div id="extra421" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('reciprocal of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;reciprocal of (<font color="#4040ff">real number</font>) ... <i>real number</i></p>
   1936 
   1937     <p>Calculates 1/x, that is, divides up 1 into this many pieces. Examples:</p>
   1938     <!-- START CODE "c4565" -->
   1939     <a id="c4565"></a><blockquote class="code"><p class="quoted">
   1940     reciprocal of -2 = -0.5
   1941     <br />reciprocal of 0.1 = 10.0
   1942     <br />reciprocal of 7 = 0.14286
   1943     <br />reciprocal of plus infinity = 0.0
   1944     </p></blockquote>
   1945     <!-- END CODE -->
   1946 
   1947     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>Kind:</b> phrase real number -> real number</p>
   1948     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1949     <p class="tightin2"><a href="#" onclick="showExtra('extra422', 'plus422'); return false;"><img border=0 id="plus422" src=inform:/doc_images/extra.png></a>&nbsp;absolute value of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>abs</b>(<i>x</i>)</p>
   1950     <div id="extra422" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('absolute value of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;absolute value of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>abs</b>(<i>x</i>)</p>
   1951 
   1952     <p>Removes the sign from a value, leaving positive numbers alone but making negative ones positive. Examples:</p>
   1953     <!-- START CODE "c4564" -->
   1954     <a id="c4564"></a><blockquote class="code"><p class="quoted">
   1955     absolute value of 62.1 = 62.1
   1956     <br />absolute value of 0 = 0.0
   1957     <br />absolute value of -62.1 = 62.1
   1958     <br />absolute value of minus infinity = plus infinity
   1959     </p></blockquote>
   1960     <!-- END CODE -->
   1961 
   1962     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('abs[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abs()</p><p><b>Name:</b> <a href="javascript:pasteCode('abs function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abs function</p><p><b>Kind:</b> phrase real number -> real number</p>
   1963     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1964     <p class="tightin2"><a href="#" onclick="showExtra('extra423', 'plus423'); return false;"><img border=0 id="plus423" src=inform:/doc_images/extra.png></a>&nbsp;real square root of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>root</b>(<i>x</i>)</p>
   1965     <div id="extra423" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('real square root of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;real square root of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>root</b>(<i>x</i>)</p>
   1966 
   1967     <p>This phrase produces a square root, as accurately as a real number can hold it, of the given value, which must be of a kind which has square roots. Example:</p>
   1968     <!-- START CODE "c4558" -->
   1969     <a id="c4558"></a><blockquote class="code"><p class="quoted">
   1970     real square root of 2 = 1.41421
   1971     </p></blockquote>
   1972     <!-- END CODE -->
   1973     <p>The real square root of a negative number is nonexistent.</p>
   1974 
   1975     <p><b>See</b> &nbsp;<a href=inform:/doc230.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.5. 15.5. Arithmetic</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('root[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;root()</p><p><b>Name:</b> <a href="javascript:pasteCode('root function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;root function</p><p><b>Kind:</b> phrase real number -> real number</p>
   1976     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1977     <p class="tightin2"><a href="#" onclick="showExtra('extra424', 'plus424'); return false;"><img border=0 id="plus424" src=inform:/doc_images/extra.png></a>&nbsp;real square of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>rsqr</b>(<i>x</i>)</p>
   1978     <div id="extra424" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('real square of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;real square of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>rsqr</b>(<i>x</i>)</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('rsqr[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rsqr()</p><p><b>Name:</b> <a href="javascript:pasteCode('rsqr function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rsqr function</p><p><b>Kind:</b> phrase real number -> real number</p>
   1979     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1980     <p class="tightin2"><a href="#" onclick="showExtra('extra425', 'plus425'); return false;"><img border=0 id="plus425" src=inform:/doc_images/extra.png></a>&nbsp;ceiling of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>ceiling</b>(<i>x</i>)</p>
   1981     <div id="extra425" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('ceiling of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;ceiling of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>ceiling</b>(<i>x</i>)</p>
   1982 
   1983     <p>Produces the smallest integer value greater than or equal to the one given. Examples:</p>
   1984     <!-- START CODE "c4562" -->
   1985     <a id="c4562"></a><blockquote class="code"><p class="quoted">
   1986     ceiling of pi = 4.0
   1987     <br />ceiling of -16.315 = -16.0
   1988     </p></blockquote>
   1989     <!-- END CODE -->
   1990     <p>(Note that the result is still a real number; it simply has no fractional part any more.)</p>
   1991 
   1992     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('ceiling[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;ceiling()</p><p><b>Name:</b> <a href="javascript:pasteCode('ceiling function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;ceiling function</p><p><b>Kind:</b> phrase real number -> real number</p>
   1993     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   1994     <p class="tightin2"><a href="#" onclick="showExtra('extra426', 'plus426'); return false;"><img border=0 id="plus426" src=inform:/doc_images/extra.png></a>&nbsp;floor of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>floor</b>(<i>x</i>)</p>
   1995     <div id="extra426" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('floor of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;floor of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>floor</b>(<i>x</i>)</p>
   1996 
   1997     <p>Produces the largest integer value less than or equal to the one given. Examples:</p>
   1998     <!-- START CODE "c4563" -->
   1999     <a id="c4563"></a><blockquote class="code"><p class="quoted">
   2000     floor of pi = 3.0
   2001     <br />floor of -16.315 = -17.0
   2002     </p></blockquote>
   2003     <!-- END CODE -->
   2004     <p>(Note that the result is still a real number; it simply has no fractional part any more.)</p>
   2005 
   2006     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('floor[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;floor()</p><p><b>Name:</b> <a href="javascript:pasteCode('floor function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;floor function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2007     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2008     <p class="tightin2"><a href="#" onclick="showExtra('extra427', 'plus427'); return false;"><img border=0 id="plus427" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">real number</font>) to the nearest whole number ... <i>number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>int</b>(<i>x</i>)</p>
   2009     <div id="extra427" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('to the nearest whole number')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">real number</font>) to the nearest whole number ... <i>number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>int</b>(<i>x</i>)</p>
   2010 
   2011     <p>This phrase performs signed addition on the given values, whose kinds must agree, and produces the result. Examples:</p>
   2012     <!-- START CODE "c4540" -->
   2013     <a id="c4540"></a><blockquote class="code"><p class="quoted">
   2014     1.4 to the nearest whole number = 1
   2015     <br />1.6 to the nearest whole number = 2
   2016     <br />-1.6 to the nearest whole number = -2
   2017     </p></blockquote>
   2018     <!-- END CODE -->
   2019     <p>We probably ought to bear in mind that the limited range of &quot;number&quot; means that the nearest whole number might not be all that near. For example:</p>
   2020     <!-- START CODE "c4541" -->
   2021     <a id="c4541"></a><blockquote class="code"><p class="quoted">
   2022     6 x 10^23 to the nearest whole number = 2147483647
   2023     </p></blockquote>
   2024     <!-- END CODE -->
   2025     <p>because 2147483647 is the highest value a &quot;number&quot; can have.</p>
   2026 
   2027     <p><b>See</b> &nbsp;<a href=inform:/doc228.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.3. 15.3. Real number conversions</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('int[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;int()</p><p><b>Name:</b> <a href="javascript:pasteCode('int function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;int function</p><p><b>Kind:</b> phrase real number -> number</p>
   2028     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2029     <p class="tightin2"><a href="#" onclick="showExtra('extra428', 'plus428'); return false;"><img border=0 id="plus428" src=inform:/doc_images/extra.png></a>&nbsp;natural<font color="#808080">/--</font> logarithm of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>log</b>(<i>x</i>)</p>
   2030     <div id="extra428" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('natural logarithm of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;natural<font color="#808080">/--</font> logarithm of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>log</b>(<i>x</i>)</p>
   2031 
   2032     <p>Finds what power e would have to be raised to in order to get this value. Examples:</p>
   2033     <!-- START CODE "c4570" -->
   2034     <a id="c4570"></a><blockquote class="code"><p class="quoted">
   2035     logarithm of e = 1.0
   2036     <br />logarithm of 1 = 0.0
   2037     <br />logarithm of 1000 = 6.90776
   2038     <br />logarithm of exponential of 7.12 = 7.12
   2039     </p></blockquote>
   2040     <!-- END CODE -->
   2041     <p>Logarithms of zero or negative numbers are nonexistent. This is the function which most calculators label as &quot;ln&quot;, for &quot;log natural&quot;, but in mathematical and scientific papers it's more often written &quot;log&quot;, and Inform follows that convention.</p>
   2042 
   2043     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('log[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;log()</p><p><b>Name:</b> <a href="javascript:pasteCode('log function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;log function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2044     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2045     <p class="tightin2"><a href="#" onclick="showExtra('extra429', 'plus429'); return false;"><img border=0 id="plus429" src=inform:/doc_images/extra.png></a>&nbsp;logarithm to base (<font color="#4040ff">number</font>) of (<font color="#4040ff">real number</font>) ... <i>real number</i></p>
   2046     <div id="extra429" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('logarithm to base ... of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;logarithm to base (<font color="#4040ff">number</font>) of (<font color="#4040ff">real number</font>) ... <i>real number</i></p>
   2047 
   2048     <p>Finds what power the base would have to be raised to in order to get this value. Examples:</p>
   2049     <!-- START CODE "c4569" -->
   2050     <a id="c4569"></a><blockquote class="code"><p class="quoted">
   2051     logarithm to base 10 of 1000000 = 6.0
   2052     <br />logarithm to base 10 of 350 = 2.54407
   2053     <br />logarithm to base 2 of 256 = 8.0
   2054     </p></blockquote>
   2055     <!-- END CODE -->
   2056     <p>Logarithms of zero or negative numbers are nonexistent. Note that &quot;logarithm to base 10 of ...&quot; is what most calculators call simply &quot;log&quot;, but Inform doesn't: it uses &quot;log&quot; for natural logarithms.</p>
   2057 
   2058     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>Kind:</b> phrase (number, real number) -> real number</p>
   2059     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2060     <p class="tightin2"><a href="#" onclick="showExtra('extra430', 'plus430'); return false;"><img border=0 id="plus430" src=inform:/doc_images/extra.png></a>&nbsp;exponential of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>exp</b>(<i>x</i>)</p>
   2061     <div id="extra430" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('exponential of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;exponential of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>exp</b>(<i>x</i>)</p>
   2062 
   2063     <p>Computes e to the given power, where e is the base of natural logarithms. Examples:</p>
   2064     <!-- START CODE "c4568" -->
   2065     <a id="c4568"></a><blockquote class="code"><p class="quoted">
   2066     exponential of 0 = 1.0
   2067     <br />exponential of 1 = e = 2.7182818
   2068     <br />exponential of -10 = 4.53999 x 10^-5
   2069     <br />exponential of 10 = 22026.46484
   2070     <br />exponential of logarithm of 7.12 = 7.12
   2071     </p></blockquote>
   2072     <!-- END CODE -->
   2073 
   2074     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('exp[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;exp()</p><p><b>Name:</b> <a href="javascript:pasteCode('exp function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;exp function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2075     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2076     <p class="tightin2"><a href="#" onclick="showExtra('extra431', 'plus431'); return false;"><img border=0 id="plus431" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">real number</font>) to the power (<font color="#4040ff">real number</font>) ... <i>real number</i></p>
   2077     <div id="extra431" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('to the power')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">real number</font>) to the power (<font color="#4040ff">real number</font>) ... <i>real number</i></p>
   2078 
   2079     <p>Computes x to the power y. Examples:</p>
   2080     <!-- START CODE "c4566" -->
   2081     <a id="c4566"></a><blockquote class="code"><p class="quoted">
   2082     2 to the power 4 = 16.0
   2083     <br />100 to the power 0.5 = 10.0
   2084     <br />7 to the power -1 = 0.14286
   2085     <br />pi to the power 0 = 1.0
   2086     </p></blockquote>
   2087     <!-- END CODE -->
   2088     <p>In the words of the Glulx specification document (section 2.12), &quot;the special cases are breathtaking&quot;: if you need to know exactly what, say, &quot;minus infinity to the power Y&quot; will do for different cases of Y, refer to the details of the &quot;pow&quot; opcode.</p>
   2089 
   2090     <p><b>See</b> &nbsp;<a href=inform:/doc231.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.6. 15.6. Powers and logarithms</p><p><b>Kind:</b> phrase (real number, real number) -> real number</p>
   2091     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2092     <a name=A432></a><p class="in2"><b>Trigonometry (for Glulx only)</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra432', 'plus432'); return false;"><img border=0 id="plus432" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">real number</font>) degrees ... <i>real number</i></p>
   2093     <div id="extra432" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('degrees')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">real number</font>) degrees ... <i>real number</i></p>
   2094 
   2095     <p>Inform measures angles in radians, a convention in which the angle for a half circle is pi, and a right angle is pi divided by 2. This is better from a mathematical point of view, but in practice most people think about angles using degrees, where 180 degrees is a half-circle and a right angle is 90 degrees. This phrase helps with that by converting from degrees to radians: in other words, it multiplies by 0.0174532925, since that's roughly 1/180th of pi. Examples:</p>
   2096     <!-- START CODE "c4571" -->
   2097     <a id="c4571"></a><blockquote class="code"><p class="quoted">
   2098     sine of 90 degrees = 0.0
   2099     <br />cosine of 60 degrees = 0.5
   2100     </p></blockquote>
   2101     <!-- END CODE -->
   2102 
   2103     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>Kind:</b> phrase real number -> real number</p>
   2104     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2105     <p class="tightin2"><a href="#" onclick="showExtra('extra433', 'plus433'); return false;"><img border=0 id="plus433" src=inform:/doc_images/extra.png></a>&nbsp;sine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>sin</b>(<i>x</i>)</p>
   2106     <div id="extra433" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>sin</b>(<i>x</i>)</p>
   2107 
   2108     <p>The length of the upright of a right-angled triangle with this angle and a hypotenuse of length 1, where angle is measured in radians. Examples:</p>
   2109     <!-- START CODE "c4572" -->
   2110     <a id="c4572"></a><blockquote class="code"><p class="quoted">
   2111     sine of 0 = 0
   2112     <br />sine of 45 degrees = 0.70711
   2113     <br />sine of (pi divided by 4) = 0.70711
   2114     <br />sine of (pi divided by 2) = 1.0
   2115     <br />sine of pi = 0
   2116     </p></blockquote>
   2117     <!-- END CODE -->
   2118 
   2119     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('sin[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sin()</p><p><b>Name:</b> <a href="javascript:pasteCode('sin function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sin function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2120     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2121     <p class="tightin2"><a href="#" onclick="showExtra('extra434', 'plus434'); return false;"><img border=0 id="plus434" src=inform:/doc_images/extra.png></a>&nbsp;cosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>cos</b>(<i>x</i>)</p>
   2122     <div id="extra434" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('cosine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>cos</b>(<i>x</i>)</p>
   2123 
   2124     <p>The length of the base of a right-angled triangle with this angle and a hypotenuse of length 1, where angle is measured in radians. Examples:</p>
   2125     <!-- START CODE "c4573" -->
   2126     <a id="c4573"></a><blockquote class="code"><p class="quoted">
   2127     cosine of 0 = 1.0
   2128     <br />cosine of 45 degrees = 0.70711
   2129     <br />cosine of (pi divided by 4) = 0.70711
   2130     <br />cosine of (pi divided by 2) = 0.0
   2131     <br />cosine of pi = -1.0
   2132     </p></blockquote>
   2133     <!-- END CODE -->
   2134 
   2135     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('cos[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cos()</p><p><b>Name:</b> <a href="javascript:pasteCode('cos function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cos function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2136     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2137     <p class="tightin2"><a href="#" onclick="showExtra('extra435', 'plus435'); return false;"><img border=0 id="plus435" src=inform:/doc_images/extra.png></a>&nbsp;tangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>tan</b>(<i>x</i>)</p>
   2138     <div id="extra435" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('tangent of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;tangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>tan</b>(<i>x</i>)</p>
   2139 
   2140     <p>The ratio of the upright length to the base length in a right-angled triangle with this angle and a hypotenuse of length 1, where angle is measured in radians. Examples:</p>
   2141     <!-- START CODE "c4574" -->
   2142     <a id="c4574"></a><blockquote class="code"><p class="quoted">
   2143     tangent of 0 = 0.0
   2144     <br />tangent of 45 degrees = 1.0
   2145     <br />tangent of (pi divided by 4) = 1.0
   2146     <br />tangent of (pi divided by 2) = plus infinity
   2147     </p></blockquote>
   2148     <!-- END CODE -->
   2149 
   2150     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('tan[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;tan()</p><p><b>Name:</b> <a href="javascript:pasteCode('tan function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;tan function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2151     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2152     <p class="tightin2"><a href="#" onclick="showExtra('extra436', 'plus436'); return false;"><img border=0 id="plus436" src=inform:/doc_images/extra.png></a>&nbsp;arcsine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arcsin</b>(<i>x</i>)</p>
   2153     <div id="extra436" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('arcsine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arcsine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arcsin</b>(<i>x</i>)</p>
   2154 
   2155     <p>The inverse of the sine function.</p>
   2156 
   2157     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('arcsin[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arcsin()</p><p><b>Name:</b> <a href="javascript:pasteCode('arcsin function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arcsin function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2158     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2159     <p class="tightin2"><a href="#" onclick="showExtra('extra437', 'plus437'); return false;"><img border=0 id="plus437" src=inform:/doc_images/extra.png></a>&nbsp;arccosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arccos</b>(<i>x</i>)</p>
   2160     <div id="extra437" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('arccosine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arccosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arccos</b>(<i>x</i>)</p>
   2161 
   2162     <p>The inverse of the cosine function.</p>
   2163 
   2164     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('arccos[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arccos()</p><p><b>Name:</b> <a href="javascript:pasteCode('arccos function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arccos function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2165     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2166     <p class="tightin2"><a href="#" onclick="showExtra('extra438', 'plus438'); return false;"><img border=0 id="plus438" src=inform:/doc_images/extra.png></a>&nbsp;arctangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arctan</b>(<i>x</i>)</p>
   2167     <div id="extra438" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('arctangent of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arctangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arctan</b>(<i>x</i>)</p>
   2168 
   2169     <p>The inverse of the tangent function.</p>
   2170 
   2171     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('arctan[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arctan()</p><p><b>Name:</b> <a href="javascript:pasteCode('arctan function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arctan function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2172     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2173     <a name=A439></a><p class="in2"><b>Hyperbolic functions (for Glulx only)</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra439', 'plus439'); return false;"><img border=0 id="plus439" src=inform:/doc_images/extra.png></a>&nbsp;hyperbolic sine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>sinh</b>(<i>x</i>)</p>
   2174     <div id="extra439" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hyperbolic sine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hyperbolic sine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>sinh</b>(<i>x</i>)</p>
   2175 
   2176     <p>The hyperbolic sine function, often written &quot;sinh&quot; but pronounced &quot;shine&quot;.</p>
   2177 
   2178     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('sinh[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sinh()</p><p><b>Name:</b> <a href="javascript:pasteCode('sinh function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sinh function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2179     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2180     <p class="tightin2"><a href="#" onclick="showExtra('extra440', 'plus440'); return false;"><img border=0 id="plus440" src=inform:/doc_images/extra.png></a>&nbsp;hyperbolic cosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>cosh</b>(<i>x</i>)</p>
   2181     <div id="extra440" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hyperbolic cosine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hyperbolic cosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>cosh</b>(<i>x</i>)</p>
   2182 
   2183     <p>The hyperbolic cosine function, often written &quot;cosh&quot;.</p>
   2184 
   2185     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('cosh[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cosh()</p><p><b>Name:</b> <a href="javascript:pasteCode('cosh function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cosh function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2186     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2187     <p class="tightin2"><a href="#" onclick="showExtra('extra441', 'plus441'); return false;"><img border=0 id="plus441" src=inform:/doc_images/extra.png></a>&nbsp;hyperbolic tangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>tanh</b>(<i>x</i>)</p>
   2188     <div id="extra441" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hyperbolic tangent of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hyperbolic tangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>tanh</b>(<i>x</i>)</p>
   2189 
   2190     <p>The hyperbolic tangent function, often written &quot;tanh&quot;.</p>
   2191 
   2192     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('tanh[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;tanh()</p><p><b>Name:</b> <a href="javascript:pasteCode('tanh function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;tanh function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2193     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2194     <p class="tightin2"><a href="#" onclick="showExtra('extra442', 'plus442'); return false;"><img border=0 id="plus442" src=inform:/doc_images/extra.png></a>&nbsp;hyperbolic arcsine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arcsinh</b>(<i>x</i>)</p>
   2195     <div id="extra442" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hyperbolic arcsine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hyperbolic arcsine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arcsinh</b>(<i>x</i>)</p>
   2196 
   2197     <p>The inverse of the hyperbolic sine function.</p>
   2198 
   2199     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('arcsinh[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arcsinh()</p><p><b>Name:</b> <a href="javascript:pasteCode('arcsinh function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arcsinh function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2200     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2201     <p class="tightin2"><a href="#" onclick="showExtra('extra443', 'plus443'); return false;"><img border=0 id="plus443" src=inform:/doc_images/extra.png></a>&nbsp;hyperbolic arccosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arccosh</b>(<i>x</i>)</p>
   2202     <div id="extra443" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hyperbolic arccosine of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hyperbolic arccosine of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arccosh</b>(<i>x</i>)</p>
   2203 
   2204     <p>The inverse of the hyperbolic cosine function.</p>
   2205 
   2206     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('arccosh[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arccosh()</p><p><b>Name:</b> <a href="javascript:pasteCode('arccosh function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arccosh function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2207     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2208     <p class="tightin2"><a href="#" onclick="showExtra('extra444', 'plus444'); return false;"><img border=0 id="plus444" src=inform:/doc_images/extra.png></a>&nbsp;hyperbolic arctangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arctanh</b>(<i>x</i>)</p>
   2209     <div id="extra444" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hyperbolic arctangent of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hyperbolic arctangent of (<font color="#4040ff">real number</font>) ... <i>real number</i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<i>y</i>&nbsp;=&nbsp;<b>arctanh</b>(<i>x</i>)</p>
   2210 
   2211     <p>The inverse of the hyperbolic tangent function.</p>
   2212 
   2213     <p><b>See</b> &nbsp;<a href=inform:/doc232.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;15.7. 15.7. Trigonometry</p><p><b>In equations:</b> write as <a href="javascript:pasteCode('arctanh[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arctanh()</p><p><b>Name:</b> <a href="javascript:pasteCode('arctanh function[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;arctanh function</p><p><b>Kind:</b> phrase real number -> real number</p>
   2214     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2215     <a name=A445></a><p class="in2"><b>Enumerations</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra445', 'plus445'); return false;"><img border=0 id="plus445" src=inform:/doc_images/extra.png></a>&nbsp;number of (<font color="#4040ff">description of values</font>) ... <i>number</i></p>
   2216     <div id="extra445" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of (<font color="#4040ff">description of values</font>) ... <i>number</i></p>
   2217 
   2218     <p>This phrase counts the number of values matching the description, which may of course be 0. Example:</p>
   2219     <!-- START CODE "c1042" -->
   2220     <a id="c1042"></a><blockquote class="code"><p class="quoted">
   2221     number of open doors
   2222     </p></blockquote>
   2223     <!-- END CODE -->
   2224     <p>produces the number of doors, anywhere in the model world, which are currently open. A Problem message is produced if the number is potentially infinite, or impractical to count: for instance, Inform rejects &quot;number of odd numbers&quot;.</p>
   2225 
   2226     <p><b>See</b> &nbsp;<a href=inform:/doc82.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.1. 6.1. What are descriptions?</p><p><b>Kind:</b> phrase description of values -> number</p>
   2227     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2228     <p class="tightin2"><a href="#" onclick="showExtra('extra446', 'plus446'); return false;"><img border=0 id="plus446" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) after (<font color="#4040ff">enumerated value</font>) ... <i>value</i></p>
   2229     <div id="extra446" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('after')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) after (<font color="#4040ff">enumerated value</font>) ... <i>value</i></p>
   2230 
   2231     <p>This phrase produces the next-created value of the given kind, which should be an enumeration. Example: if we have</p>
   2232     <!-- START CODE "c3074" -->
   2233     <a id="c3074"></a><blockquote class="code"><p class="quoted">
   2234     Colour is a kind of value. The colours are red, orange, yellow, green, blue, indigo and violet.
   2235     </p></blockquote>
   2236     <!-- END CODE -->
   2237     <p>then &quot;colour after orange&quot; is yellow.</p>
   2238 
   2239     <p><b>See</b> &nbsp;<a href=inform:/doc176.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.18. 11.18. The value after and the value before</p><p><b>Kind:</b> phrase (K [enumerated value], K) -> K</p>
   2240     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2241     <p class="tightin2"><a href="#" onclick="showExtra('extra447', 'plus447'); return false;"><img border=0 id="plus447" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) before (<font color="#4040ff">enumerated value</font>) ... <i>value</i></p>
   2242     <div id="extra447" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('before')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) before (<font color="#4040ff">enumerated value</font>) ... <i>value</i></p>
   2243 
   2244     <p>This phrase produces the previous-created value of the given kind, which should be an enumeration. Example: if we have</p>
   2245     <!-- START CODE "c3075" -->
   2246     <a id="c3075"></a><blockquote class="code"><p class="quoted">
   2247     Colour is a kind of value. The colours are red, orange, yellow, green, blue, indigo and violet.
   2248     </p></blockquote>
   2249     <!-- END CODE -->
   2250     <p>then &quot;colour before blue&quot; is green.</p>
   2251 
   2252     <p><b>See</b> &nbsp;<a href=inform:/doc176.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.18. 11.18. The value after and the value before</p><p><b>Kind:</b> phrase (K [enumerated value], K) -> K</p>
   2253     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2254     <p class="tightin2"><a href="#" onclick="showExtra('extra448', 'plus448'); return false;"><img border=0 id="plus448" src=inform:/doc_images/extra.png></a>&nbsp;first value of (<font color="#E00060">name of kind</font>) ... <i>value</i></p>
   2255     <div id="extra448" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('first value of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;first value of (<font color="#E00060">name of kind</font>) ... <i>value</i></p>
   2256 
   2257     <p>This phrase produces the first-created value of the given kind, which should be an enumeration. Example: if we have</p>
   2258     <!-- START CODE "c3072" -->
   2259     <a id="c3072"></a><blockquote class="code"><p class="quoted">
   2260     Colour is a kind of value. The colours are red, orange, yellow, green, blue, indigo and violet.
   2261     </p></blockquote>
   2262     <!-- END CODE -->
   2263     <p>then &quot;first value of colour&quot; is red.</p>
   2264 
   2265     <p><b>See</b> &nbsp;<a href=inform:/doc176.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.18. 11.18. The value after and the value before</p><p><b>Kind:</b> phrase K [enumerated value] -> K</p>
   2266     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2267     <p class="tightin2"><a href="#" onclick="showExtra('extra449', 'plus449'); return false;"><img border=0 id="plus449" src=inform:/doc_images/extra.png></a>&nbsp;last value of (<font color="#E00060">name of kind</font>) ... <i>value</i></p>
   2268     <div id="extra449" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('last value of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;last value of (<font color="#E00060">name of kind</font>) ... <i>value</i></p>
   2269 
   2270     <p>This phrase produces the last-created value of the given kind, which should be an enumeration. Example: if we have</p>
   2271     <!-- START CODE "c3073" -->
   2272     <a id="c3073"></a><blockquote class="code"><p class="quoted">
   2273     Colour is a kind of value. The colours are red, orange, yellow, green, blue, indigo and violet.
   2274     </p></blockquote>
   2275     <!-- END CODE -->
   2276     <p>then &quot;last value of colour&quot; is violet.</p>
   2277 
   2278     <p><b>See</b> &nbsp;<a href=inform:/doc176.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.18. 11.18. The value after and the value before</p><p><b>Kind:</b> phrase K [enumerated value] -> K</p>
   2279     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2280     <a name=A450></a><p class="in2"><b>Truth states</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra450', 'plus450'); return false;"><img border=0 id="plus450" src=inform:/doc_images/extra.png></a>&nbsp;whether or not (<font color="#E00060">a condition</font>) ... <i>truth state</i></p>
   2281     <div id="extra450" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('whether or not')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;whether or not (<font color="#E00060">a condition</font>) ... <i>truth state</i></p>
   2282 
   2283     <p>This phrase converts a condition into its result as a value, which is always either &quot;true&quot; or &quot;false&quot;. Example:</p>
   2284     <!-- START CODE "c2871" -->
   2285     <a id="c2871"></a><blockquote class="code"><p class="quoted">
   2286     whether or not 20 is an odd number
   2287     </p></blockquote>
   2288     <!-- END CODE -->
   2289     <p>produces the truth state &quot;false&quot;. This is mostly useful for storing up results to look at later:</p>
   2290     <!-- START CODE "c2872" -->
   2291     <a id="c2872"></a><blockquote class="code"><p class="quoted">
   2292     let victory be whether or not all the treasures are in the cabinet;
   2293     </p></blockquote>
   2294     <!-- END CODE -->
   2295     <p>and then subsequently:</p>
   2296     <!-- START CODE "c2873" -->
   2297     <a id="c2873"></a><blockquote class="code"><p class="quoted">
   2298     if victory is true, ...
   2299     </p></blockquote>
   2300     <!-- END CODE -->
   2301 
   2302     <p><b>See</b> &nbsp;<a href=inform:/doc163.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.5. 11.5. Conditions and questions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   2303     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2304     <a name=A451></a><p class="in2"><b>Randomness</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra451', 'plus451'); return false;"><img border=0 id="plus451" src=inform:/doc_images/extra.png></a>&nbsp;a<font color="#808080">/--</font> random (<font color="#4040ff">description of values</font>) ... <i>value</i></p>
   2305     <div id="extra451" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('a random')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;a<font color="#808080">/--</font> random (<font color="#4040ff">description of values</font>) ... <i>value</i></p>
   2306 
   2307     <p>This phrase makes a uniformly random choice from values satisfying the description given. Example:</p>
   2308     <!-- START CODE "c2033" -->
   2309     <a id="c2033"></a><blockquote class="code"><p class="quoted">
   2310     a random visited room
   2311     <br />a random scene
   2312     </p></blockquote>
   2313     <!-- END CODE -->
   2314     <p>A problem message is issued if the range is too large (for instance, &quot;a random text&quot;). Unexpected results may follow if no value fits the description, unless we are describing objects, in which case the result is the special value &quot;nothing&quot;.</p>
   2315 
   2316     <p><b>See</b> &nbsp;<a href=inform:/doc134.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.19. 8.19. Random choices of things</p><p><b>Kind:</b> phrase description of Ks -> K</p>
   2317     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2318     <p class="tightin2"><a href="#" onclick="showExtra('extra455', 'plus455'); return false;"><img border=0 id="plus455" src=inform:/doc_images/extra.png></a>&nbsp;a random (<font color="#E00060">name of kind</font>) between (<font color="#4040ff">arithmetic value</font>) and (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   2319     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;a random (<font color="#E00060">name of kind</font>) from (<font color="#4040ff">arithmetic value</font>) to (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   2320     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;a random (<font color="#E00060">name of kind</font>) between (<font color="#4040ff">enumerated value</font>) and (<font color="#4040ff">enumerated value</font>) ... <i>value</i></p>
   2321     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;a random (<font color="#E00060">name of kind</font>) from (<font color="#4040ff">enumerated value</font>) to (<font color="#4040ff">enumerated value</font>) ... <i>value</i></p>
   2322     <div id="extra455" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('a random ... between ... and')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;a random (<font color="#E00060">name of kind</font>) between (<font color="#4040ff">arithmetic value</font>) and (<font color="#4040ff">arithmetic value</font>) ... <i>value</i></p>
   2323 
   2324     <p>This phrase produces a uniformly random value in the range given. Examples:</p>
   2325     <!-- START CODE "c1986" -->
   2326     <a id="c1986"></a><blockquote class="code"><p class="quoted">
   2327     a random number from 10 to 99
   2328     <br />a random time from 2:31 PM to 2:57 PM
   2329     </p></blockquote>
   2330     <!-- END CODE -->
   2331     <p>If we make a new kind of value:</p>
   2332     <!-- START CODE "c1987" -->
   2333     <a id="c1987"></a><blockquote class="code"><p class="quoted">
   2334     A cloud pattern is a kind of value. The cloud patterns are cumulus, altocumulus, cumulonimbus, stratus, cirrus, nimbus, nimbostratus.
   2335     </p></blockquote>
   2336     <!-- END CODE -->
   2337     <p>then we can also take random values from it:</p>
   2338     <!-- START CODE "c1988" -->
   2339     <a id="c1988"></a><blockquote class="code"><p class="quoted">
   2340     a random cloud pattern between stratus and nimbus
   2341     </p></blockquote>
   2342     <!-- END CODE -->
   2343     <p>which has three possible outcomes, all equally likely.</p>
   2344 
   2345     <p><b>See</b> &nbsp;<a href=inform:/doc133.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.18. 8.18. Randomness</p><p><b>Kind:</b> phrase (K [arithmetic value], K, K) -> K</p>
   2346     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2347     <p class="tightin2"><a href="#" onclick="showExtra('extra456', 'plus456'); return false;"><img border=0 id="plus456" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> a random chance of (<font color="#4040ff">number</font>) in (<font color="#4040ff">number</font>) succeeds<i>:</i></p>
   2348     <div id="extra456" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('a random chance of ... in ... succeeds')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> a random chance of (<font color="#4040ff">number</font>) in (<font color="#4040ff">number</font>) succeeds<i>:</i></p>
   2349 
   2350     <p>This condition is true X/Yths of the time, where X and Y are the numbers. Example:</p>
   2351     <!-- START CODE "c1989" -->
   2352     <a id="c1989"></a><blockquote class="code"><p class="quoted">
   2353     if a random chance of 2 in 3 succeeds, ...
   2354     </p></blockquote>
   2355     <!-- END CODE -->
   2356     <p>Here is a rule which applies only 15% of the time:</p>
   2357     <!-- START CODE "c1990" -->
   2358     <a id="c1990"></a><blockquote class="code"><p class="quoted">
   2359     Instead of waiting when a random chance of 15 in 100 succeeds: ...
   2360     </p></blockquote>
   2361     <!-- END CODE -->
   2362 
   2363     <p><b>See</b> &nbsp;<a href=inform:/doc133.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.18. 8.18. Randomness</p><p><b>Kind:</b> phrase (number, number) -> truth state</p>
   2364     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2365     <p class="tightin2"><a href="#" onclick="showExtra('extra457', 'plus457'); return false;"><img border=0 id="plus457" src=inform:/doc_images/extra.png></a>&nbsp;seed the random-number generator with (<font color="#4040ff">number</font>)</p>
   2366     <div id="extra457" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('seed the random-number generator with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;seed the random-number generator with (<font color="#4040ff">number</font>)</p>
   2367 
   2368     <p>This phrase changes the seed number as specified. Any random numbers generated after that depend only on the seed. Example: the following sentence will &quot;fix&quot; the process of generating these random numbers so that they are not random at all - the same sequence of random numbers will be produced on each run.</p>
   2369     <!-- START CODE "c1991" -->
   2370     <a id="c1991"></a><blockquote class="code"><p class="quoted">
   2371     When play begins, seed the random-number generator with 1234.
   2372     </p></blockquote>
   2373     <!-- END CODE -->
   2374     <p>The seed value &quot;1234&quot; can be anything positive; a different sequence of random numbers will be produced for each different seed value. A seed value of 0 restores the RNG to properly random behaviour again.</p>
   2375 
   2376     <p><b>See</b> &nbsp;<a href=inform:/doc133.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.18. 8.18. Randomness</p><p><b>Kind:</b> phrase number -> nothing</p>
   2377     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2378     <a name=A458></a><p class="in2"><b>Tables</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra458', 'plus458'); return false;"><img border=0 id="plus458" src=inform:/doc_images/extra.png></a>&nbsp;choose a<font color="#808080">/the/--</font> row (<font color="#4040ff">number</font>) in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2379     <div id="extra458" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('choose a row ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;choose a<font color="#808080">/the/--</font> row (<font color="#4040ff">number</font>) in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2380 
   2381     <p>This phrase selects the row with the given number. Row numbers in a table start from 1, so</p>
   2382     <!-- START CODE "c5088" -->
   2383     <a id="c5088"></a><blockquote class="code"><p class="quoted">
   2384     choose row 1 from the Table of Recent Monarchs
   2385     </p></blockquote>
   2386     <!-- END CODE -->
   2387     <p>selects the top row.</p>
   2388 
   2389     <p><b>See</b> &nbsp;<a href=inform:/doc250.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.5. 16.5. Choosing rows</p><p><b>Kind:</b> phrase (number, table name) -> nothing</p>
   2390     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2391     <p class="tightin2"><a href="#" onclick="showExtra('extra459', 'plus459'); return false;"><img border=0 id="plus459" src=inform:/doc_images/extra.png></a>&nbsp;choose a<font color="#808080">/the/--</font> row with (<font color="#4040ff">table column</font>) of (<font color="#4040ff">value</font>) in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2392     <div id="extra459" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('choose a row with ... of ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;choose a<font color="#808080">/the/--</font> row with (<font color="#4040ff">table column</font>) of (<font color="#4040ff">value</font>) in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2393 
   2394     <p>This phrase selects the first row, working down from the top of the given table, in which the given column has the given value. Example:</p>
   2395     <!-- START CODE "c5090" -->
   2396     <a id="c5090"></a><blockquote class="code"><p class="quoted">
   2397     choose row with a name of &quot;Victoria&quot; in the Table of Recent Monarchs;
   2398     </p></blockquote>
   2399     <!-- END CODE -->
   2400     <p>A run-time problem message is produced if the value isn't found anywhere in that column.</p>
   2401 
   2402     <p><b>See</b> &nbsp;<a href=inform:/doc250.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.5. 16.5. Choosing rows</p><p><b>Kind:</b> phrase (Ks valued table column, K, table name) -> nothing</p>
   2403     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2404     <p class="tightin2"><a href="#" onclick="showExtra('extra460', 'plus460'); return false;"><img border=0 id="plus460" src=inform:/doc_images/extra.png></a>&nbsp;choose a<font color="#808080">/the/--</font> blank row in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2405     <div id="extra460" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('choose a blank row in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;choose a<font color="#808080">/the/--</font> blank row in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2406 
   2407     <p>This phrase chooses a row in the given table which is currently blank under every column. A run-time problem message is issued if no rows are blank. Example:</p>
   2408     <!-- START CODE "c5138" -->
   2409     <a id="c5138"></a><blockquote class="code"><p class="quoted">
   2410     choose a blank row in Table 3;
   2411     <br />now element entry is &quot;Fluorine&quot;;
   2412     <br />now symbol entry is &quot;F&quot;;
   2413     <br />now atomic number entry is 9;
   2414     <br />now atomic weight entry is 19;
   2415     </p></blockquote>
   2416     <!-- END CODE -->
   2417 
   2418     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase table name -> nothing</p>
   2419     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2420     <p class="tightin2"><a href="#" onclick="showExtra('extra461', 'plus461'); return false;"><img border=0 id="plus461" src=inform:/doc_images/extra.png></a>&nbsp;choose a<font color="#808080">/the/--</font> random row in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2421     <div id="extra461" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('choose a random row in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;choose a<font color="#808080">/the/--</font> random row in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2422 
   2423     <p>This phrase makes a uniformly random choice of non-blank rows in the given table. Note that although a table always has at least one row, it can't be guaranteed that it always has a non-blank row, so it's possible for this to fail: if it does, a real-time problem message is thrown.</p>
   2424 
   2425     <p><b>See</b> &nbsp;<a href=inform:/doc250.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.5. 16.5. Choosing rows</p><p><b>Kind:</b> phrase table name -> nothing</p>
   2426     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2427     <p class="tightin2"><a href="#" onclick="showExtra('extra462', 'plus462'); return false;"><img border=0 id="plus462" src=inform:/doc_images/extra.png></a>&nbsp;number of rows in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>) ... <i>number</i></p>
   2428     <div id="extra462" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of rows in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of rows in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>) ... <i>number</i></p>
   2429 
   2430     <p>This phrase produces the number of rows (including any blank rows) in the given table. Example:</p>
   2431     <!-- START CODE "c5038" -->
   2432     <a id="c5038"></a><blockquote class="code"><p class="quoted">
   2433     number of rows in the Table of Selected Elements
   2434     </p></blockquote>
   2435     <!-- END CODE -->
   2436 
   2437     <p><b>See</b> &nbsp;<a href=inform:/doc247.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.2. 16.2. Looking up entries</p><p><b>Kind:</b> phrase table name -> number</p>
   2438     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2439     <p class="tightin2"><a href="#" onclick="showExtra('extra463', 'plus463'); return false;"><img border=0 id="plus463" src=inform:/doc_images/extra.png></a>&nbsp;number of blank rows in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>) ... <i>number</i></p>
   2440     <div id="extra463" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of blank rows in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of blank rows in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>) ... <i>number</i></p>
   2441 
   2442     <p>This phrase produces the number of rows in the given table which are entirely blank (that is, blank under every column).</p>
   2443 
   2444     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase table name -> number</p>
   2445     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2446     <p class="tightin2"><a href="#" onclick="showExtra('extra464', 'plus464'); return false;"><img border=0 id="plus464" src=inform:/doc_images/extra.png></a>&nbsp;number of filled rows in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>) ... <i>number</i></p>
   2447     <div id="extra464" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of filled rows in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of filled rows in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>) ... <i>number</i></p>
   2448 
   2449     <p>This phrase produces the number of rows in the given table which are not entirely blank (that is, at least one column has a value in this row).</p>
   2450 
   2451     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase table name -> number</p>
   2452     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2453     <p class="tightin2"><a href="#" onclick="showExtra('extra465', 'plus465'); return false;"><img border=0 id="plus465" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> there is (<font color="#E00060">a table entry</font>)<i>:</i></p>
   2454     <div id="extra465" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('there is')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> there is (<font color="#E00060">a table entry</font>)<i>:</i></p>
   2455 
   2456     <p>This condition is true if the entry referred to exists, that is, that is, the space for it in the table is not blank. Examples:</p>
   2457     <!-- START CODE "c5105" -->
   2458     <a id="c5105"></a><blockquote class="code"><p class="quoted">
   2459     if there is a symbol corresponding to an atomic number of 30 in the Table of Standard Elements ...
   2460     <br />if there is an atomic number in row 2 of the Table of Standard Elements ...
   2461     </p></blockquote>
   2462     <!-- END CODE -->
   2463 
   2464     <p><b>See</b> &nbsp;<a href=inform:/doc252.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.7. 16.7. Blank entries</p><p><b>Kind:</b> phrase value -> truth state</p>
   2465     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2466     <p class="tightin2"><a href="#" onclick="showExtra('extra466', 'plus466'); return false;"><img border=0 id="plus466" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> there is no (<font color="#E00060">a table entry</font>)<i>:</i></p>
   2467     <div id="extra466" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('there is no')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> there is no (<font color="#E00060">a table entry</font>)<i>:</i></p>
   2468 
   2469     <p>This condition is true if the entry referred to does not exist, that is, the space for it in the table is blank. Examples:</p>
   2470     <!-- START CODE "c5106" -->
   2471     <a id="c5106"></a><blockquote class="code"><p class="quoted">
   2472     if there is no symbol corresponding to an atomic number of 30 in the Table of Standard Elements ...
   2473     <br />if there is no atomic number in row 2 of the Table of Standard Elements ...
   2474     </p></blockquote>
   2475     <!-- END CODE -->
   2476 
   2477     <p><b>See</b> &nbsp;<a href=inform:/doc252.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.7. 16.7. Blank entries</p><p><b>Kind:</b> phrase value -> truth state</p>
   2478     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2479     <p class="tightin2"><a href="#" onclick="showExtra('extra467', 'plus467'); return false;"><img border=0 id="plus467" src=inform:/doc_images/extra.png></a>&nbsp;blank out (<font color="#E00060">a table entry</font>)</p>
   2480     <div id="extra467" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('blank out')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;blank out (<font color="#E00060">a table entry</font>)</p>
   2481 
   2482     <p>This phrase replaces the entry referred to with a blank, erasing any value previously stored there. Example:</p>
   2483     <!-- START CODE "c5141" -->
   2484     <a id="c5141"></a><blockquote class="code"><p class="quoted">
   2485     choose row 1 in the Table of Fish Habitats;
   2486     <br />blank out the salinity entry;
   2487     </p></blockquote>
   2488     <!-- END CODE -->
   2489 
   2490     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase value -> nothing</p>
   2491     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2492     <p class="tightin2"><a href="#" onclick="showExtra('extra468', 'plus468'); return false;"><img border=0 id="plus468" src=inform:/doc_images/extra.png></a>&nbsp;blank out the whole row</p>
   2493     <div id="extra468" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('blank out the whole row')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;blank out the whole row</p>
   2494 
   2495     <p>This phrase replaces the currently chosen row with blanks, erasing any value previously stored under any of the columns. Example:</p>
   2496     <!-- START CODE "c5142" -->
   2497     <a id="c5142"></a><blockquote class="code"><p class="quoted">
   2498     choose row 1 in the Table of Fish Habitats;
   2499     <br />blank out the whole row;
   2500     </p></blockquote>
   2501     <!-- END CODE -->
   2502 
   2503     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   2504     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2505     <p class="tightin2"><a href="#" onclick="showExtra('extra469', 'plus469'); return false;"><img border=0 id="plus469" src=inform:/doc_images/extra.png></a>&nbsp;blank out the whole (<font color="#4040ff">table column</font>) in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2506     <div id="extra469" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('blank out the whole ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;blank out the whole (<font color="#4040ff">table column</font>) in<font color="#808080">/from</font> (<font color="#4040ff">table name</font>)</p>
   2507 
   2508     <p>This phrase replaces the currently chosen column with blanks, erasing any value previously stored in any of the rows. Example:</p>
   2509     <!-- START CODE "c5143" -->
   2510     <a id="c5143"></a><blockquote class="code"><p class="quoted">
   2511     blank out the whole salinity column in the Table of Fish Habitats;
   2512     </p></blockquote>
   2513     <!-- END CODE -->
   2514 
   2515     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase (table column, table name) -> nothing</p>
   2516     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2517     <p class="tightin2"><a href="#" onclick="showExtra('extra470', 'plus470'); return false;"><img border=0 id="plus470" src=inform:/doc_images/extra.png></a>&nbsp;blank out the whole of (<font color="#4040ff">table name</font>)</p>
   2518     <div id="extra470" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('blank out the whole of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;blank out the whole of (<font color="#4040ff">table name</font>)</p>
   2519 
   2520     <p>This phrase replaces every row of the currently chosen table with blanks, erasing any value previously stored anywhere in it. Example:</p>
   2521     <!-- START CODE "c5144" -->
   2522     <a id="c5144"></a><blockquote class="code"><p class="quoted">
   2523     blank out the whole of the Table of Fish Habitats;
   2524     </p></blockquote>
   2525     <!-- END CODE -->
   2526     <p>This is only really useful when a Table is being used to hold working space for some calculation or other.</p>
   2527 
   2528     <p><b>See</b> &nbsp;<a href=inform:/doc255.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.10. 16.10. Adding and removing rows</p><p><b>Kind:</b> phrase table name -> nothing</p>
   2529     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2530     <p class="tightin2"><a href="#" onclick="showExtra('extra471', 'plus471'); return false;"><img border=0 id="plus471" src=inform:/doc_images/extra.png></a>&nbsp;showme the contents of (<font color="#4040ff">table name</font>)</p>
   2531     <div id="extra471" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('showme the contents of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;showme the contents of (<font color="#4040ff">table name</font>)</p>
   2532 
   2533     <p>This phrase prints a crude but sometimes useful display on screen of the current contents of the named table. It's intended for authors to see when testing, not for players of the finished version to see.</p>
   2534 
   2535     <p><b>See</b> &nbsp;<a href=inform:/doc249.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.4. 16.4. Changing entries</p><p><b>Kind:</b> phrase table name -> nothing</p>
   2536     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2537     <p class="tightin2"><a href="#" onclick="showExtra('extra472', 'plus472'); return false;"><img border=0 id="plus472" src=inform:/doc_images/extra.png></a>&nbsp;say "[the<font color="#808080">/--</font> current table row]"</p>
   2538     <div id="extra472" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[the current table row]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[the<font color="#808080">/--</font> current table row]"</p>
   2539 
   2540     <p>This text substitution produces a crude but sometimes useful listing of the entries in the currently chosen table row.</p>
   2541 
   2542     <p><b>See</b> &nbsp;<a href=inform:/doc249.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.4. 16.4. Changing entries</p>
   2543     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2544     <p class="tightin2"><a href="#" onclick="showExtra('extra473', 'plus473'); return false;"><img border=0 id="plus473" src=inform:/doc_images/extra.png></a>&nbsp;say "[row <font color="#4040ff">number</font> in<font color="#808080">/from</font> <font color="#4040ff">table name</font>]"</p>
   2545     <div id="extra473" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[row ... in ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[row <font color="#4040ff">number</font> in<font color="#808080">/from</font> <font color="#4040ff">table name</font>]"</p>
   2546 
   2547     <p>This text substitution produces a crude but sometimes useful listing of the entries in the specified row.</p>
   2548 
   2549     <p><b>See</b> &nbsp;<a href=inform:/doc249.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.4. 16.4. Changing entries</p>
   2550     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2551     <p class="tightin2"><a href="#" onclick="showExtra('extra474', 'plus474'); return false;"><img border=0 id="plus474" src=inform:/doc_images/extra.png></a>&nbsp;say "[<font color="#4040ff">table column</font> in<font color="#808080">/from</font> <font color="#4040ff">table name</font>]"</p>
   2552     <div id="extra474" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[... in ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[<font color="#4040ff">table column</font> in<font color="#808080">/from</font> <font color="#4040ff">table name</font>]"</p>
   2553 
   2554     <p>This text substitution produces a crude but sometimes useful listing of the entries in the specified column.</p>
   2555 
   2556     <p><b>See</b> &nbsp;<a href=inform:/doc249.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.4. 16.4. Changing entries</p>
   2557     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2558     <a name=A475></a><p class="in2"><b>Sorting tables</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra475', 'plus475'); return false;"><img border=0 id="plus475" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">table name</font>) in<font color="#808080">/into</font> random order</p>
   2559     <div id="extra475" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in random order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">table name</font>) in<font color="#808080">/into</font> random order</p>
   2560 
   2561     <p>This phrase rearranges the rows of the given table so that the non-blank rows occur at the top, in a uniformly random order, and any blank rows at the bottom. Example:</p>
   2562     <!-- START CODE "c5156" -->
   2563     <a id="c5156"></a><blockquote class="code"><p class="quoted">
   2564     sort the Table of Recent Monarchs in random order;
   2565     </p></blockquote>
   2566     <!-- END CODE -->
   2567 
   2568     <p><b>See</b> &nbsp;<a href=inform:/doc256.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.11. 16.11. Sorting</p><p><b>Kind:</b> phrase table name -> nothing</p>
   2569     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2570     <p class="tightin2"><a href="#" onclick="showExtra('extra476', 'plus476'); return false;"><img border=0 id="plus476" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">table name</font>) in<font color="#808080">/into</font> (<font color="#4040ff">table column</font>) order</p>
   2571     <div id="extra476" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in ... order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">table name</font>) in<font color="#808080">/into</font> (<font color="#4040ff">table column</font>) order</p>
   2572 
   2573     <p>This phrase rearranges the rows of the given table so that the non-blank rows occur at the top, so that the given column has ascending order, and any blank rows at the bottom. Example:</p>
   2574     <!-- START CODE "c5157" -->
   2575     <a id="c5157"></a><blockquote class="code"><p class="quoted">
   2576     sort the Table of Recent Monarchs in accession order;
   2577     </p></blockquote>
   2578     <!-- END CODE -->
   2579     <p>Ascending order means 1 up to 10, say, or A up to Z, with blank values coming last.</p>
   2580 
   2581     <p><b>See</b> &nbsp;<a href=inform:/doc256.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.11. 16.11. Sorting</p><p><b>Kind:</b> phrase (table name, table column) -> nothing</p>
   2582     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2583     <p class="tightin2"><a href="#" onclick="showExtra('extra477', 'plus477'); return false;"><img border=0 id="plus477" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">table name</font>) in<font color="#808080">/into</font> reverse (<font color="#4040ff">table column</font>) order</p>
   2584     <div id="extra477" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in reverse ... order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">table name</font>) in<font color="#808080">/into</font> reverse (<font color="#4040ff">table column</font>) order</p>
   2585 
   2586     <p>This phrase rearranges the rows of the given table so that the non-blank rows occur at the top, so that the given column has descending order, and any blank rows at the bottom. Example:</p>
   2587     <!-- START CODE "c5158" -->
   2588     <a id="c5158"></a><blockquote class="code"><p class="quoted">
   2589     sort the Table of Recent Monarchs in reverse name order;
   2590     </p></blockquote>
   2591     <!-- END CODE -->
   2592     <p>Descending order means 10 down to 1, say, or Z down to A, with blank values coming last.</p>
   2593 
   2594     <p><b>See</b> &nbsp;<a href=inform:/doc256.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.11. 16.11. Sorting</p><p><b>Kind:</b> phrase (table name, table column) -> nothing</p>
   2595     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2596     <a name=A478></a><p class="in2"><b>Breaking down text</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra478', 'plus478'); return false;"><img border=0 id="plus478" src=inform:/doc_images/extra.png></a>&nbsp;number of characters in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2597     <div id="extra478" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of characters in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of characters in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2598 
   2599     <p>This phrase produces the number of characters from the text. Characters include letters, digits, punctuation symbols, spaces or other letter-forms. Examples:</p>
   2600     <!-- START CODE "c8093" -->
   2601     <a id="c8093"></a><blockquote class="code"><p class="quoted">
   2602     number of characters in &quot;War and Peace&quot;
   2603     <br />number of characters in &quot;&quot;
   2604     </p></blockquote>
   2605     <!-- END CODE -->
   2606     <p>produce 13 and 0 respectively.</p>
   2607 
   2608     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase text -> number</p>
   2609     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2610     <p class="tightin2"><a href="#" onclick="showExtra('extra479', 'plus479'); return false;"><img border=0 id="plus479" src=inform:/doc_images/extra.png></a>&nbsp;number of words in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2611     <div id="extra479" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of words in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of words in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2612 
   2613     <p>This phrase produces the number of words from the text. Words for this purpose are what's left after breaking the text up at punctuation or spacing (spaces, line breaks, paragraph breaks) and then removing that punctuation or spacing. Example:</p>
   2614     <!-- START CODE "c8096" -->
   2615     <a id="c8096"></a><blockquote class="code"><p class="quoted">
   2616     number of words in &quot;ice-hot, don't you think?&quot;
   2617     </p></blockquote>
   2618     <!-- END CODE -->
   2619     <p>produces 5.</p>
   2620 
   2621     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase text -> number</p>
   2622     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2623     <p class="tightin2"><a href="#" onclick="showExtra('extra480', 'plus480'); return false;"><img border=0 id="plus480" src=inform:/doc_images/extra.png></a>&nbsp;number of punctuated words in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2624     <div id="extra480" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of punctuated words in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of punctuated words in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2625 
   2626     <p>This phrase produces the number of words from the text. Words for this purpose are what's left after breaking the text up at punctuation or spacing (spaces, line breaks, paragraph breaks) and then removing the spacing, but leaving the punctuation as independent words. Example:</p>
   2627     <!-- START CODE "c8098" -->
   2628     <a id="c8098"></a><blockquote class="code"><p class="quoted">
   2629     number of punctuated words in &quot;ice-hot, don't you think?&quot;
   2630     </p></blockquote>
   2631     <!-- END CODE -->
   2632     <p>produces 8; see if you can find them all.</p>
   2633 
   2634     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase text -> number</p>
   2635     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2636     <p class="tightin2"><a href="#" onclick="showExtra('extra481', 'plus481'); return false;"><img border=0 id="plus481" src=inform:/doc_images/extra.png></a>&nbsp;number of unpunctuated words in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2637     <div id="extra481" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of unpunctuated words in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of unpunctuated words in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2638 
   2639     <p>This phrase produces the number of words from the text. Words for this purpose are what's left after breaking the text up at spacing (spaces, line breaks, paragraph breaks) but including all punctuation as if it were part of the spelling of the words it joins to. Example:</p>
   2640     <!-- START CODE "c8100" -->
   2641     <a id="c8100"></a><blockquote class="code"><p class="quoted">
   2642     number of unpunctuated words in &quot;ice-hot, don't you think?&quot;
   2643     </p></blockquote>
   2644     <!-- END CODE -->
   2645     <p>produces just 4.</p>
   2646 
   2647     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase text -> number</p>
   2648     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2649     <p class="tightin2"><a href="#" onclick="showExtra('extra482', 'plus482'); return false;"><img border=0 id="plus482" src=inform:/doc_images/extra.png></a>&nbsp;number of lines in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2650     <div id="extra482" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of lines in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of lines in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2651 
   2652     <p>This phrase produces the number of lines in the text. Unless explicit use is made of line-breaking, lines and paragraphs will be the same - it doesn't refer to lines as visible on screen, because we have no way of knowing what size screen the player might have. Example: the number of lines in</p>
   2653     <!-- START CODE "c8101" -->
   2654     <a id="c8101"></a><blockquote class="code"><p class="quoted">
   2655     &quot;Sensational news just in![paragraph break]The Martians have invaded Miranda.[line break](One of the moons of Uranus, that is.)&quot;
   2656     </p></blockquote>
   2657     <!-- END CODE -->
   2658     <p>is 3.</p>
   2659 
   2660     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase text -> number</p>
   2661     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2662     <p class="tightin2"><a href="#" onclick="showExtra('extra483', 'plus483'); return false;"><img border=0 id="plus483" src=inform:/doc_images/extra.png></a>&nbsp;number of paragraphs in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2663     <div id="extra483" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of paragraphs in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of paragraphs in (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2664 
   2665     <p>This phrase produces the number of paragraphs in the text. Example: the number of paragraphs in</p>
   2666     <!-- START CODE "c8102" -->
   2667     <a id="c8102"></a><blockquote class="code"><p class="quoted">
   2668     &quot;Sensational news just in![paragraph break]The Martians have invaded Miranda.[line break](One of the moons of Uranus, that is.)&quot;
   2669     </p></blockquote>
   2670     <!-- END CODE -->
   2671     <p>is 2.</p>
   2672 
   2673     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase text -> number</p>
   2674     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2675     <p class="tightin2"><a href="#" onclick="showExtra('extra484', 'plus484'); return false;"><img border=0 id="plus484" src=inform:/doc_images/extra.png></a>&nbsp;character number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2676     <div id="extra484" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('character number ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;character number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2677 
   2678     <p>This phrase produces the Nth character from the text, counting from 1. Characters include letters, digits, punctuation symbols, spaces or other letter-forms. Example:</p>
   2679     <!-- START CODE "c8092" -->
   2680     <a id="c8092"></a><blockquote class="code"><p class="quoted">
   2681     character number 8 in &quot;numberless projects of social reform&quot;
   2682     </p></blockquote>
   2683     <!-- END CODE -->
   2684     <p>produces &quot;e&quot;. If the index is less than 1 or more than the length of the text, the result is an empty text, &quot;&quot;.</p>
   2685 
   2686     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase (number, text) -> text</p>
   2687     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2688     <p class="tightin2"><a href="#" onclick="showExtra('extra485', 'plus485'); return false;"><img border=0 id="plus485" src=inform:/doc_images/extra.png></a>&nbsp;word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2689     <div id="extra485" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('word number ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2690 
   2691     <p>This phrase produces the Nth word from the text, counting from 1. Words for this purpose are what's left after breaking the text up at punctuation or spacing (spaces, line breaks, paragraph breaks) and then removing that punctuation or spacing. Example:</p>
   2692     <!-- START CODE "c8095" -->
   2693     <a id="c8095"></a><blockquote class="code"><p class="quoted">
   2694     word number 3 in &quot;ice-hot, don't you think?&quot;
   2695     </p></blockquote>
   2696     <!-- END CODE -->
   2697     <p>produces &quot;don't&quot;. If the index is less than 1 or more than the number of words in the text, the result is an empty text, &quot;&quot;.</p>
   2698 
   2699     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase (number, text) -> text</p>
   2700     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2701     <p class="tightin2"><a href="#" onclick="showExtra('extra486', 'plus486'); return false;"><img border=0 id="plus486" src=inform:/doc_images/extra.png></a>&nbsp;punctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2702     <div id="extra486" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('punctuated word number ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;punctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2703 
   2704     <p>This phrase produces the Nth word from the text, counting from 1. Words for this purpose are what's left after breaking the text up at punctuation or spacing (spaces, line breaks, paragraph breaks) and then removing the spacing, but leaving the punctuation as independent words. Example:</p>
   2705     <!-- START CODE "c8097" -->
   2706     <a id="c8097"></a><blockquote class="code"><p class="quoted">
   2707     punctuated word number 2 in &quot;ice-hot, don't you think?&quot;
   2708     </p></blockquote>
   2709     <!-- END CODE -->
   2710     <p>produces &quot;-&quot;. The punctuated words here are &quot;ice&quot;, &quot;-&quot;, &quot;hot&quot;, &quot;,&quot;, &quot;don't&quot;, &quot;you&quot;, &quot;think&quot;, &quot;?&quot;. If two or more punctuation marks are adjacent, they are counted as different words, except for runs of dashes or periods: thus &quot;,,&quot; has two punctuated words, but &quot;--&quot; and &quot;...&quot; have only one each. If the index is less than 1 or more than the number of punctuated words in the text, the result is an empty text, &quot;&quot;.</p>
   2711 
   2712     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase (number, text) -> text</p>
   2713     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2714     <p class="tightin2"><a href="#" onclick="showExtra('extra487', 'plus487'); return false;"><img border=0 id="plus487" src=inform:/doc_images/extra.png></a>&nbsp;unpunctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2715     <div id="extra487" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('unpunctuated word number ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;unpunctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2716 
   2717     <p>This phrase produces the Nth word from the text, counting from 1. Words for this purpose are what's left after breaking the text up at spacing (spaces, line breaks, paragraph breaks) but including all punctuation as if it were part of the spelling of the words it joins to. Example:</p>
   2718     <!-- START CODE "c8099" -->
   2719     <a id="c8099"></a><blockquote class="code"><p class="quoted">
   2720     unpunctuated word number 1 in &quot;ice-hot, don't you think?&quot;
   2721     </p></blockquote>
   2722     <!-- END CODE -->
   2723     <p>produces &quot;ice-hot,&quot;. The unpunctuated words in &quot;ice-hot, don't you think?&quot; are &quot;ice-hot,&quot;, &quot;don't&quot;, &quot;you&quot;, &quot;think?&quot;. If the index is less than 1 or more than the number of punctuated words in the text, the result is an empty text, &quot;&quot;.</p>
   2724 
   2725     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase (number, text) -> text</p>
   2726     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2727     <p class="tightin2"><a href="#" onclick="showExtra('extra488', 'plus488'); return false;"><img border=0 id="plus488" src=inform:/doc_images/extra.png></a>&nbsp;line number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2728     <div id="extra488" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('line number ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;line number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2729 
   2730     <p>This phrase produces the Nth line from the text, counting from 1. Unless explicit use is made of line-breaking, lines and paragraphs will be the same - it doesn't refer to lines as visible on screen, because we have no way of knowing what size screen the player might have.</p>
   2731 
   2732     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase (number, text) -> text</p>
   2733     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2734     <p class="tightin2"><a href="#" onclick="showExtra('extra489', 'plus489'); return false;"><img border=0 id="plus489" src=inform:/doc_images/extra.png></a>&nbsp;paragraph number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2735     <div id="extra489" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('paragraph number ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;paragraph number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2736 
   2737     <p>This phrase produces the Nth paragraph from the text, counting from 1.</p>
   2738 
   2739     <p><b>See</b> &nbsp;<a href=inform:/doc345.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.3. 20.3. Characters, words, punctuated words, unpunctuated words, lines, paragraphs</p><p><b>Kind:</b> phrase (number, text) -> text</p>
   2740     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2741     <p class="tightin2"><a href="#" onclick="showExtra('extra490', 'plus490'); return false;"><img border=0 id="plus490" src=inform:/doc_images/extra.png></a>&nbsp;substituted form of (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2742     <div id="extra490" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('substituted form of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;substituted form of (<font color="#4040ff">text</font>) ... <i>text</i></p>
   2743 
   2744     <p>This takes a text and makes substitution occur immediately. For example,</p>
   2745     <!-- START CODE "c8186" -->
   2746     <a id="c8186"></a><blockquote class="code"><p class="quoted">
   2747     substituted form of &quot;time of death, [time of day]&quot;
   2748     </p></blockquote>
   2749     <!-- END CODE -->
   2750     <p>produces something like &quot;time of death, 9:15 AM&quot; rather than &quot;time of death, [time of day]&quot;. It's entirely legal to apply this to text which never had any substitutions in, so</p>
   2751     <!-- START CODE "c8187" -->
   2752     <a id="c8187"></a><blockquote class="code"><p class="quoted">
   2753     substituted form of &quot;balloon&quot;
   2754     </p></blockquote>
   2755     <!-- END CODE -->
   2756     <p>produces &quot;balloon&quot;.</p>
   2757 
   2758     <p><b>See</b> &nbsp;<a href=inform:/doc349.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.7. 20.7. Making new text with text substitutions</p><p><b>Kind:</b> phrase text -> text</p>
   2759     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2760     <a name=A491></a><p class="in2"><b>Matching text</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra491', 'plus491'); return false;"><img border=0 id="plus491" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) exactly matches the text (<font color="#4040ff">text</font>)<i>:</i></p>
   2761     <div id="extra491" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('exactly matches the text')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) exactly matches the text (<font color="#4040ff">text</font>)<i>:</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2762     </p>
   2763 
   2764     <p>This condition is true if the second text matches the first, starting at the beginning and finishing at the end. This appears to be the same as testing if one is equal to the other, but that's not quite true: for example,</p>
   2765     <!-- START CODE "c8125" -->
   2766     <a id="c8125"></a><blockquote class="code"><p class="quoted">
   2767     if &quot;[score]&quot; exactly matches the text &quot;[best score]&quot;, ...
   2768     </p></blockquote>
   2769     <!-- END CODE -->
   2770     <p>is true if the score and best score currently print out as the same text, which will be true if they are currently equal as numbers; but</p>
   2771     <!-- START CODE "c8126" -->
   2772     <a id="c8126"></a><blockquote class="code"><p class="quoted">
   2773     if &quot;[score]&quot; is &quot;[best score]&quot;, ...
   2774     </p></blockquote>
   2775     <!-- END CODE -->
   2776     <p>is never true - these are different texts, even if they sometimes look the same.</p>
   2777 
   2778     <p><b>See</b> &nbsp;<a href=inform:/doc347.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.5. 20.5. Matching and exactly matching</p><p><b>Kind:</b> phrase (text, text) -> truth state</p>
   2779     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2780     <p class="tightin2"><a href="#" onclick="showExtra('extra492', 'plus492'); return false;"><img border=0 id="plus492" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) matches the text (<font color="#4040ff">text</font>)<i>:</i></p>
   2781     <div id="extra492" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('matches the text')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) matches the text (<font color="#4040ff">text</font>)<i>:</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2782     </p>
   2783 
   2784     <p>This condition is true if the second text occurs anywhere inside the first. Examples:</p>
   2785     <!-- START CODE "c8122" -->
   2786     <a id="c8122"></a><blockquote class="code"><p class="quoted">
   2787     if &quot;[score]&quot; matches the text &quot;3&quot;, ...
   2788     </p></blockquote>
   2789     <!-- END CODE -->
   2790     <p>tests whether the digit 3 occurs anywhere in the score, as printed out; and</p>
   2791     <!-- START CODE "c8123" -->
   2792     <a id="c8123"></a><blockquote class="code"><p class="quoted">
   2793     if the printed name of the location matches the text &quot;the&quot;, ...
   2794     </p></blockquote>
   2795     <!-- END CODE -->
   2796     <p>tests to see whether &quot;the&quot; can be found anywhere in the current room's name. Note that the location &quot;Smotheringly Hot Jungle&quot; would pass this test - it's there if you look. On the other hand, &quot;The Orangery&quot; would not, because &quot;The&quot; does not match against &quot;the&quot;. We can get around this in a variety of ways, one of which is to tell Inform to be insensitive to the case (upper or lower) of letters:</p>
   2797     <!-- START CODE "c8124" -->
   2798     <a id="c8124"></a><blockquote class="code"><p class="quoted">
   2799     if the printed name of the location matches the text &quot;the&quot;, case insensitively: ...
   2800     </p></blockquote>
   2801     <!-- END CODE -->
   2802 
   2803     <p><b>See</b> &nbsp;<a href=inform:/doc347.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.5. 20.5. Matching and exactly matching</p><p><b>Kind:</b> phrase (text, text) -> truth state</p>
   2804     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2805     <p class="tightin2"><a href="#" onclick="showExtra('extra493', 'plus493'); return false;"><img border=0 id="plus493" src=inform:/doc_images/extra.png></a>&nbsp;number of times (<font color="#4040ff">text</font>) matches the text (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2806     <div id="extra493" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of times ... matches the text')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of times (<font color="#4040ff">text</font>) matches the text (<font color="#4040ff">text</font>) ... <i>number</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2807     </p>
   2808 
   2809     <p>This produces the number of times the second text occurs within the first. The matches are not allowed to overlap. Example:</p>
   2810     <!-- START CODE "c8127" -->
   2811     <a id="c8127"></a><blockquote class="code"><p class="quoted">
   2812     number of times &quot;pell-mell sally&quot; matches the text &quot;ll&quot; = 3
   2813     <br />number of times &quot;xyzzy&quot; matches the text &quot;Z&quot; = 0
   2814     <br />number of times &quot;xyzzy&quot; matches the text &quot;Z&quot;, case insensitively = 2
   2815     <br />number of times &quot;aaaaaaaa&quot; matches the text &quot;aaaa&quot; = 2
   2816     </p></blockquote>
   2817     <!-- END CODE -->
   2818 
   2819     <p><b>See</b> &nbsp;<a href=inform:/doc347.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.5. 20.5. Matching and exactly matching</p><p><b>Kind:</b> phrase (text, text) -> number</p>
   2820     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2821     <p class="tightin2"><a href="#" onclick="showExtra('extra494', 'plus494'); return false;"><img border=0 id="plus494" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) exactly matches the regular expression (<font color="#4040ff">text</font>)<i>:</i></p>
   2822     <div id="extra494" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('exactly matches the regular expression')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) exactly matches the regular expression (<font color="#4040ff">text</font>)<i>:</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2823     </p>
   2824 
   2825     <p>This condition is true if the whole text (starting from the beginning and finishing at the end) can be matched against the given regular expression. The option &quot;case insensitively&quot; causes lower and upper case letters to be treated as equivalent.</p>
   2826 
   2827     <p><b>See</b> &nbsp;<a href=inform:/doc348.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.6. 20.6. Regular expression matching</p><p><b>Kind:</b> phrase (text, text) -> truth state</p>
   2828     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2829     <p class="tightin2"><a href="#" onclick="showExtra('extra495', 'plus495'); return false;"><img border=0 id="plus495" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) matches the regular expression (<font color="#4040ff">text</font>)<i>:</i></p>
   2830     <div id="extra495" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('matches the regular expression')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) matches the regular expression (<font color="#4040ff">text</font>)<i>:</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2831     </p>
   2832 
   2833     <p>This condition is true if any contiguous part of the text can be matched against the given regular expression. Examples:</p>
   2834     <!-- START CODE "c8128" -->
   2835     <a id="c8128"></a><blockquote class="code"><p class="quoted">
   2836     if &quot;taramasalata&quot; matches the regular expression &quot;a.*l&quot;, ...
   2837     </p></blockquote>
   2838     <!-- END CODE -->
   2839     <p>is true, since this looks for a part of &quot;taramasalata&quot; which begins with &quot;a&quot;, continues with any number of characters, and finishes with &quot;l&quot;; so it matches &quot;aramasal&quot;. (Not &quot;asal&quot;, because it gets the makes the leftmost match it can.) The option &quot;case insensitively&quot; causes lower and upper case letters to be treated as equivalent.</p>
   2840 
   2841     <p><b>See</b> &nbsp;<a href=inform:/doc348.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.6. 20.6. Regular expression matching</p><p><b>Kind:</b> phrase (text, text) -> truth state</p>
   2842     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2843     <p class="tightin2"><a href="#" onclick="showExtra('extra496', 'plus496'); return false;"><img border=0 id="plus496" src=inform:/doc_images/extra.png></a>&nbsp;text matching regular expression ... <i>text</i></p>
   2844     <div id="extra496" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('text matching regular expression')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;text matching regular expression ... <i>text</i></p>
   2845 
   2846     <p>This phrase is only meaningful immediately after a successful match of a regular expression against text, and it produces the text which matched. Example:</p>
   2847     <!-- START CODE "c8129" -->
   2848     <a id="c8129"></a><blockquote class="code"><p class="quoted">
   2849     if &quot;taramasalata&quot; matches the regular expression &quot;m.*l&quot;:
   2850     <br />&#160;&#160;&#160;&#160;say &quot;[text matching regular expression].&quot;;
   2851     </p></blockquote>
   2852     <!-- END CODE -->
   2853     <p>says &quot;masal.&quot;</p>
   2854 
   2855     <p><b>See</b> &nbsp;<a href=inform:/doc348.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.6. 20.6. Regular expression matching</p><p><b>Kind:</b> phrase nothing -> text</p>
   2856     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2857     <p class="tightin2"><a href="#" onclick="showExtra('extra497', 'plus497'); return false;"><img border=0 id="plus497" src=inform:/doc_images/extra.png></a>&nbsp;text matching subexpression (<font color="#4040ff">number</font>) ... <i>text</i></p>
   2858     <div id="extra497" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('text matching subexpression')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;text matching subexpression (<font color="#4040ff">number</font>) ... <i>text</i></p>
   2859 
   2860     <p>This phrase is only meaningful immediately after a successful match of a regular expression against text, and it produces the text which matched. The number must be from 1 to 9, and must correspond to one of the bracketed groups in the expression just matched. Example: after</p>
   2861     <!-- START CODE "c8148" -->
   2862     <a id="c8148"></a><blockquote class="code"><p class="quoted">
   2863     if &quot;taramasalata&quot; matches the regular expression &quot;a(r.*l)a(.)&quot;:
   2864     </p></blockquote>
   2865     <!-- END CODE -->
   2866     <p>the &quot;text matching regular expression&quot; is &quot;aramasalat&quot;, the &quot;text matching subexpression 1&quot; is &quot;ramasal&quot;, and &quot;text matching subexpression 2&quot; is &quot;t&quot;.</p>
   2867 
   2868     <p><b>See</b> &nbsp;<a href=inform:/doc348.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.6. 20.6. Regular expression matching</p><p><b>Kind:</b> phrase number -> text</p>
   2869     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2870     <p class="tightin2"><a href="#" onclick="showExtra('extra498', 'plus498'); return false;"><img border=0 id="plus498" src=inform:/doc_images/extra.png></a>&nbsp;number of times (<font color="#4040ff">text</font>) matches the regular expression (<font color="#4040ff">text</font>) ... <i>number</i></p>
   2871     <div id="extra498" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of times ... matches the regular expression')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of times (<font color="#4040ff">text</font>) matches the regular expression (<font color="#4040ff">text</font>) ... <i>number</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2872     </p>
   2873 
   2874     <p>This produces the number of times that contiguous pieces of the text can be matched against the regular expression, without allowing them to overlap.</p>
   2875 
   2876     <p><b>See</b> &nbsp;<a href=inform:/doc348.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.6. 20.6. Regular expression matching</p><p><b>Kind:</b> phrase (text, text) -> number</p>
   2877     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2878     <a name=A499></a><p class="in2"><b>Replacing text</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra499', 'plus499'); return false;"><img border=0 id="plus499" src=inform:/doc_images/extra.png></a>&nbsp;replace the text (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2879     <div id="extra499" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace the text ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace the text (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2880     </p>
   2881 
   2882     <p>This phrase acts on the named text by searching and replacing, as many non-overlapping times as possible. Example:</p>
   2883     <!-- START CODE "c8263" -->
   2884     <a id="c8263"></a><blockquote class="code"><p class="quoted">
   2885     replace the text &quot;a&quot; in V with &quot;z&quot;
   2886     </p></blockquote>
   2887     <!-- END CODE -->
   2888     <p>changes every lower-case &quot;a&quot; to &quot;z&quot;: the same thing done with the &quot;case insensitively&quot; option would change each &quot;a&quot; or &quot;A&quot; to &quot;z&quot;.</p>
   2889 
   2890     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (text, text, text) -> nothing</p>
   2891     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2892     <p class="tightin2"><a href="#" onclick="showExtra('extra500', 'plus500'); return false;"><img border=0 id="plus500" src=inform:/doc_images/extra.png></a>&nbsp;replace the regular expression (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2893     <div id="extra500" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace the regular expression ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace the regular expression (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('case insensitively[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;case insensitively
   2894     </p>
   2895 
   2896     <p>This phrase acts on the named text by matching the regular expression and replacing anything which fits it, as many non-overlapping times as possible. Example:</p>
   2897     <!-- START CODE "c8266" -->
   2898     <a id="c8266"></a><blockquote class="code"><p class="quoted">
   2899     replace the regular expression &quot;\d+&quot; in V with &quot;...&quot;
   2900     </p></blockquote>
   2901     <!-- END CODE -->
   2902     <p>changes &quot;The Battle of Waterloo, 1815, rivalled Trafalgar, 1805&quot; to &quot;The Battle of Waterloo, ..., rivalled Trafalgar, ...&quot;. The &quot;case insensitively&quot; causes lower and upper case letters to be treated as if the same letter.</p>
   2903     <p>When replacing a regular expression, the replacement text also has a few special meanings (though, thankfully, many fewer than for the expression itself). Once again &quot;\n&quot; and &quot;\t&quot; can be used for line break and tab characters, and &quot;\\&quot; must be used for an actual backslash. But, very usefully, &quot;\1&quot; to &quot;\9&quot; expand as the contents of groups numbered 1 to 9, and &quot;\0&quot; to the exact text matched. So:</p>
   2904     <!-- START CODE "c8267" -->
   2905     <a id="c8267"></a><blockquote class="code"><p class="quoted">
   2906     replace the regular expression &quot;\d+&quot; in V with &quot;roughly \0&quot;
   2907     </p></blockquote>
   2908     <!-- END CODE -->
   2909     <p>adds the word &quot;roughly&quot; in front of any run of digits in V, because \0 becomes in turn whichever run of digits matched. And</p>
   2910     <!-- START CODE "c8268" -->
   2911     <a id="c8268"></a><blockquote class="code"><p class="quoted">
   2912     replace the regular expression &quot;(\w+) (.*)&quot; in V with &quot;\2, \1&quot;
   2913     </p></blockquote>
   2914     <!-- END CODE -->
   2915     <p>performs the transformation &quot;Frank Booth&quot; to &quot;Booth, Frank&quot;.</p>
   2916     <p>Finally, prefixing the number by &quot;l&quot; or &quot;u&quot; forces the text it represents into lower or upper case, respectively. For instance:</p>
   2917     <!-- START CODE "c8269" -->
   2918     <a id="c8269"></a><blockquote class="code"><p class="quoted">
   2919     replace the regular expression &quot;\b(\w)(\w*)&quot; in X with &quot;\u1\l2&quot;;
   2920     </p></blockquote>
   2921     <!-- END CODE -->
   2922     <p>changes the casing of X to &quot;title casing&quot;, where each individual word is capitalised. (This is a little slow on large texts, since so many matches and replacements are made: it's more efficient to use the official phrases for changing case.)</p>
   2923 
   2924     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (text, text, text) -> nothing</p>
   2925     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2926     <p class="tightin2"><a href="#" onclick="showExtra('extra501', 'plus501'); return false;"><img border=0 id="plus501" src=inform:/doc_images/extra.png></a>&nbsp;replace the word (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2927     <div id="extra501" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace the word ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace the word (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2928 
   2929     <p>This phrase acts on the named text by searching and replacing, as many non-overlapping times as possible, where the search text must occur as a whole word. Example:</p>
   2930     <!-- START CODE "c8265" -->
   2931     <a id="c8265"></a><blockquote class="code"><p class="quoted">
   2932     replace the word &quot;Bob&quot; in V with &quot;Robert&quot;
   2933     </p></blockquote>
   2934     <!-- END CODE -->
   2935     <p>changes &quot;Bob got on the Bobsleigh&quot; to &quot;Robert got on the Bobsleigh&quot;.</p>
   2936 
   2937     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (text, text, text) -> nothing</p>
   2938     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2939     <p class="tightin2"><a href="#" onclick="showExtra('extra502', 'plus502'); return false;"><img border=0 id="plus502" src=inform:/doc_images/extra.png></a>&nbsp;replace the punctuated word (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2940     <div id="extra502" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace the punctuated word ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace the punctuated word (<font color="#4040ff">text</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2941 
   2942     <p>This phrase acts on the named text by searching and replacing, as many non-overlapping times as possible, where the search text must occur as a whole word or run of punctuation.</p>
   2943 
   2944     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (text, text, text) -> nothing</p>
   2945     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2946     <p class="tightin2"><a href="#" onclick="showExtra('extra503', 'plus503'); return false;"><img border=0 id="plus503" src=inform:/doc_images/extra.png></a>&nbsp;replace character number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2947     <div id="extra503" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace character number ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace character number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2948 
   2949     <p>This phrase acts on the named text by placing the given text in place of the Nth character, counting from 1. Example:</p>
   2950     <!-- START CODE "c8259" -->
   2951     <a id="c8259"></a><blockquote class="code"><p class="quoted">
   2952     let V be &quot;mope&quot;;
   2953     <br />replace character number 3 in V with &quot;lecul&quot;;
   2954     <br />say V;
   2955     </p></blockquote>
   2956     <!-- END CODE -->
   2957     <p>says &quot;molecule&quot;.</p>
   2958 
   2959     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (number, text, text) -> nothing</p>
   2960     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2961     <p class="tightin2"><a href="#" onclick="showExtra('extra504', 'plus504'); return false;"><img border=0 id="plus504" src=inform:/doc_images/extra.png></a>&nbsp;replace word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2962     <div id="extra504" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace word number ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2963 
   2964     <p>This phrase acts on the named text by placing the given text in place of the Nth word, counting from 1, and dividing words at spacing or punctuation. Example:</p>
   2965     <!-- START CODE "c8260" -->
   2966     <a id="c8260"></a><blockquote class="code"><p class="quoted">
   2967     let V be &quot;Does the well run dry?&quot;;
   2968     <br />replace word number 3 in V with &quot;jogger&quot;;
   2969     <br />say V;
   2970     </p></blockquote>
   2971     <!-- END CODE -->
   2972     <p>says &quot;Does the jogger run dry?&quot;.</p>
   2973 
   2974     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (number, text, text) -> nothing</p>
   2975     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2976     <p class="tightin2"><a href="#" onclick="showExtra('extra505', 'plus505'); return false;"><img border=0 id="plus505" src=inform:/doc_images/extra.png></a>&nbsp;replace punctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2977     <div id="extra505" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace punctuated word number ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace punctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2978 
   2979     <p>This phrase acts on the named text by placing the given text in place of the Nth word, counting from 1, and dividing words at spacing, counting punctuation runs as words in their own right. Example:</p>
   2980     <!-- START CODE "c8261" -->
   2981     <a id="c8261"></a><blockquote class="code"><p class="quoted">
   2982     let V be &quot;Frankly, yes, I agree.&quot;;
   2983     <br />replace punctuated word number 2 in V with &quot;:&quot;;
   2984     <br />say V;
   2985     </p></blockquote>
   2986     <!-- END CODE -->
   2987     <p>says &quot;Frankly: yes, I agree.&quot;.</p>
   2988 
   2989     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (number, text, text) -> nothing</p>
   2990     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   2991     <p class="tightin2"><a href="#" onclick="showExtra('extra506', 'plus506'); return false;"><img border=0 id="plus506" src=inform:/doc_images/extra.png></a>&nbsp;replace unpunctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2992     <div id="extra506" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace unpunctuated word number ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace unpunctuated word number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   2993 
   2994     <p>This phrase acts on the named text by placing the given text in place of the Nth word, counting from 1, and dividing words at spacing, counting punctuation as part of a word just as if it were lettering. Example:</p>
   2995     <!-- START CODE "c8262" -->
   2996     <a id="c8262"></a><blockquote class="code"><p class="quoted">
   2997     let V be &quot;Frankly, yes, I agree.&quot;;
   2998     <br />replace unpunctuated word number 2 in V with &quot;of course&quot;;
   2999     <br />say V;
   3000     </p></blockquote>
   3001     <!-- END CODE -->
   3002     <p>says &quot;Frankly, of course I agree.&quot;.</p>
   3003 
   3004     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (number, text, text) -> nothing</p>
   3005     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3006     <p class="tightin2"><a href="#" onclick="showExtra('extra507', 'plus507'); return false;"><img border=0 id="plus507" src=inform:/doc_images/extra.png></a>&nbsp;replace line number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   3007     <div id="extra507" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace line number ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace line number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   3008 
   3009     <p>This phrase acts on the named text by placing the given text in place of the Nth line, counting from 1. Lines are divided by paragraph or line breaks.</p>
   3010 
   3011     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (number, text, text) -> nothing</p>
   3012     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3013     <p class="tightin2"><a href="#" onclick="showExtra('extra508', 'plus508'); return false;"><img border=0 id="plus508" src=inform:/doc_images/extra.png></a>&nbsp;replace paragraph number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   3014     <div id="extra508" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace paragraph number ... in ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace paragraph number (<font color="#4040ff">number</font>) in (<font color="#4040ff">text</font>) with (<font color="#4040ff">text</font>)</p>
   3015 
   3016     <p>This phrase acts on the named text by placing the given text in place of the Nth paragraph, counting from 1.</p>
   3017 
   3018     <p><b>See</b> &nbsp;<a href=inform:/doc350.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.8. 20.8. Replacements</p><p><b>Kind:</b> phrase (number, text, text) -> nothing</p>
   3019     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3020     <a name=A509></a><p class="in2"><b>Casing of text</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra509', 'plus509'); return false;"><img border=0 id="plus509" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">text</font>) in lower case ... <i>text</i></p>
   3021     <div id="extra509" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in lower case')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">text</font>) in lower case ... <i>text</i></p>
   3022 
   3023     <p>This phrase produces a new version of the given text, but with all upper case letters reduced to lower case. Example: &quot;a ticket to Tromsø via Østfold&quot; becomes</p>
   3024     <!-- START CODE "c8103" -->
   3025     <a id="c8103"></a><blockquote class="code"><p class="quoted">
   3026     &quot;a ticket to tromsø via østfold&quot;
   3027     </p></blockquote>
   3028     <!-- END CODE -->
   3029 
   3030     <p><b>See</b> &nbsp;<a href=inform:/doc346.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.4. 20.4. Upper and lower case letters</p><p><b>Kind:</b> phrase text -> text</p>
   3031     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3032     <p class="tightin2"><a href="#" onclick="showExtra('extra510', 'plus510'); return false;"><img border=0 id="plus510" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">text</font>) in upper case ... <i>text</i></p>
   3033     <div id="extra510" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in upper case')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">text</font>) in upper case ... <i>text</i></p>
   3034 
   3035     <p>This phrase produces a new version of the given text, but with all upper case letters reduced to lower case. Example: &quot;a ticket to Tromsø via Østfold&quot; becomes</p>
   3036     <!-- START CODE "c8104" -->
   3037     <a id="c8104"></a><blockquote class="code"><p class="quoted">
   3038     &quot;A TICKET TO TROMSØ VIA ØSTFOLD&quot;
   3039     </p></blockquote>
   3040     <!-- END CODE -->
   3041 
   3042     <p><b>See</b> &nbsp;<a href=inform:/doc346.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.4. 20.4. Upper and lower case letters</p><p><b>Kind:</b> phrase text -> text</p>
   3043     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3044     <p class="tightin2"><a href="#" onclick="showExtra('extra511', 'plus511'); return false;"><img border=0 id="plus511" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">text</font>) in title case ... <i>text</i></p>
   3045     <div id="extra511" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in title case')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">text</font>) in title case ... <i>text</i></p>
   3046 
   3047     <p>This phrase produces a new version of the given text, but with casing of words changed to title casing: this capitalises the first letter of each word, and lowers the rest. Example: &quot;a ticket to Tromsø via Østfold&quot; becomes</p>
   3048     <!-- START CODE "c8105" -->
   3049     <a id="c8105"></a><blockquote class="code"><p class="quoted">
   3050     &quot;A Ticket To Tromsø Via Østfold&quot;
   3051     </p></blockquote>
   3052     <!-- END CODE -->
   3053 
   3054     <p><b>See</b> &nbsp;<a href=inform:/doc346.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.4. 20.4. Upper and lower case letters</p><p><b>Kind:</b> phrase text -> text</p>
   3055     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3056     <p class="tightin2"><a href="#" onclick="showExtra('extra512', 'plus512'); return false;"><img border=0 id="plus512" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">text</font>) in sentence case ... <i>text</i></p>
   3057     <div id="extra512" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in sentence case')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">text</font>) in sentence case ... <i>text</i></p>
   3058 
   3059     <p>This phrase produces a new version of the given text, but with casing of words changed to sentence casing: this capitalises the first letter of each sentence and reduces the rest to lower case. Example: &quot;a ticket to Tromsø via Østfold&quot; becomes</p>
   3060     <!-- START CODE "c8106" -->
   3061     <a id="c8106"></a><blockquote class="code"><p class="quoted">
   3062     &quot;A ticket to tromsø via østfold&quot;
   3063     </p></blockquote>
   3064     <!-- END CODE -->
   3065 
   3066     <p><b>See</b> &nbsp;<a href=inform:/doc346.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.4. 20.4. Upper and lower case letters</p><p><b>Kind:</b> phrase text -> text</p>
   3067     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3068     <p class="tightin2"><a href="#" onclick="showExtra('extra513', 'plus513'); return false;"><img border=0 id="plus513" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) is in lower case<i>:</i></p>
   3069     <div id="extra513" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('is in lower case')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) is in lower case<i>:</i></p>
   3070 
   3071     <p>This condition is true if every character in the text is a lower case letter. Examples: this is true for &quot;wax&quot;, but false for &quot;wax seal&quot; or &quot;eZ mOnEy&quot;.</p>
   3072 
   3073     <p><b>See</b> &nbsp;<a href=inform:/doc346.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.4. 20.4. Upper and lower case letters</p><p><b>Kind:</b> phrase text -> truth state</p>
   3074     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3075     <p class="tightin2"><a href="#" onclick="showExtra('extra514', 'plus514'); return false;"><img border=0 id="plus514" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) is in upper case<i>:</i></p>
   3076     <div id="extra514" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('is in upper case')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">text</font>) is in upper case<i>:</i></p>
   3077 
   3078     <p>This condition is true if every character in the text is in upper case. Examples: this is true for &quot;BEESWAX&quot;, but false for &quot;ROOM 101&quot;.</p>
   3079 
   3080     <p><b>See</b> &nbsp;<a href=inform:/doc346.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;20.4. 20.4. Upper and lower case letters</p><p><b>Kind:</b> phrase text -> truth state</p>
   3081     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3082     <a name=A515></a><p class="in2"><b>Adaptive text</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra515', 'plus515'); return false;"><img border=0 id="plus515" src=inform:/doc_images/extra.png></a>&nbsp;say "[infinitive of <font color="#4040ff">verb</font>]"</p>
   3083     <div id="extra515" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[infinitive of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[infinitive of <font color="#4040ff">verb</font>]"</p>
   3084 
   3085     <p>Produces the infinitive of the given verb. Note that this is without a &quot;to&quot;: for example, &quot;[infinitive of the verb carry]&quot; is &quot;carry&quot;, not &quot;to carry&quot;.</p>
   3086 
   3087     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3088     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3089     <p class="tightin2"><a href="#" onclick="showExtra('extra516', 'plus516'); return false;"><img border=0 id="plus516" src=inform:/doc_images/extra.png></a>&nbsp;say "[past participle of <font color="#4040ff">verb</font>]"</p>
   3090     <div id="extra516" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[past participle of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[past participle of <font color="#4040ff">verb</font>]"</p>
   3091 
   3092     <p>Produces the past participle of the given verb. For example, &quot;[past participle of the verb carry]&quot; is &quot;carried&quot;. Warning: because modal verbs like &quot;should&quot; or &quot;might&quot; are defective in English, this will produce odd results on them - &quot;shoulded&quot; and &quot;mighted&quot;, for example.</p>
   3093 
   3094     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3095     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3096     <p class="tightin2"><a href="#" onclick="showExtra('extra517', 'plus517'); return false;"><img border=0 id="plus517" src=inform:/doc_images/extra.png></a>&nbsp;say "[present participle of <font color="#4040ff">verb</font>]"</p>
   3097     <div id="extra517" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[present participle of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[present participle of <font color="#4040ff">verb</font>]"</p>
   3098 
   3099     <p>Produces the present participle of the given verb. For example, &quot;[present participle of the verb carry]&quot; is &quot;carrying&quot;. Warning: because modal verbs like &quot;should&quot; or &quot;might&quot; are defective in English, this will produce odd results on them - &quot;shoulding&quot; and &quot;mighting&quot;, for example.</p>
   3100 
   3101     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3102     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3103     <p class="tightin2"><a href="#" onclick="showExtra('extra518', 'plus518'); return false;"><img border=0 id="plus518" src=inform:/doc_images/extra.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font>]"</p>
   3104     <div id="extra518" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[adapt ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font>]"</p>
   3105 
   3106     <p>Adapts the given verb to the current story tense and story viewpoint. For example, &quot;you [adapt the verb provoke]&quot; might produce &quot;you provoke&quot;.</p>
   3107 
   3108     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3109     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3110     <p class="tightin2"><a href="#" onclick="showExtra('extra519', 'plus519'); return false;"><img border=0 id="plus519" src=inform:/doc_images/extra.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font>]"</p>
   3111     <div id="extra519" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[adapt ... in ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font>]"</p>
   3112 
   3113     <p>Adapts the given verb to the given tense but the current story viewpoint. For example, &quot;you [adapt the verb provoke in the past tense]&quot; might produce &quot;you provoked&quot;.</p>
   3114 
   3115     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3116     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3117     <p class="tightin2"><a href="#" onclick="showExtra('extra520', 'plus520'); return false;"><img border=0 id="plus520" src=inform:/doc_images/extra.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3118     <div id="extra520" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[adapt ... from ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3119 
   3120     <p>Adapts the given verb to the current story tense but the given viewpoint. For example, &quot;he [adapt the verb provoke from the third person singular]&quot; might produce &quot;he provokes&quot;.</p>
   3121 
   3122     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3123     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3124     <p class="tightin2"><a href="#" onclick="showExtra('extra521', 'plus521'); return false;"><img border=0 id="plus521" src=inform:/doc_images/extra.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3125     <div id="extra521" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[adapt ... in ... from ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[adapt <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3126 
   3127     <p>Adapts the given verb to the given tense and viewpoint. For example, &quot;we [adapt the verb provoke in the future tense from the first person plural]&quot; might produce &quot;we will provoke&quot;.</p>
   3128 
   3129     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3130     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3131     <p class="tightin2"><a href="#" onclick="showExtra('extra522', 'plus522'); return false;"><img border=0 id="plus522" src=inform:/doc_images/extra.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font>]"</p>
   3132     <div id="extra522" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[negate ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font>]"</p>
   3133 
   3134     <p>Adapts the given verb to the current story tense and story viewpoint, giving it a negative sense. For example, &quot;you [negate the verb provoke]&quot; might produce &quot;you do not provoke&quot;.</p>
   3135 
   3136     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3137     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3138     <p class="tightin2"><a href="#" onclick="showExtra('extra523', 'plus523'); return false;"><img border=0 id="plus523" src=inform:/doc_images/extra.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font>]"</p>
   3139     <div id="extra523" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[negate ... in ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font>]"</p>
   3140 
   3141     <p>Adapts the given verb to the given tense but the current story viewpoint, giving it a negative sense. For example, &quot;you [negate the verb provoke in the past tense]&quot; might produce &quot;you did not provoke&quot;.</p>
   3142 
   3143     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3144     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3145     <p class="tightin2"><a href="#" onclick="showExtra('extra524', 'plus524'); return false;"><img border=0 id="plus524" src=inform:/doc_images/extra.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3146     <div id="extra524" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[negate ... from ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3147 
   3148     <p>Adapts the given verb to the current story tense but the given viewpoint, giving it a negative sense. For example, &quot;he [negate the verb provoke from the third person singular]&quot; might produce &quot;he does not provoke&quot;.</p>
   3149 
   3150     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3151     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3152     <p class="tightin2"><a href="#" onclick="showExtra('extra525', 'plus525'); return false;"><img border=0 id="plus525" src=inform:/doc_images/extra.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3153     <div id="extra525" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[negate ... in ... from ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[negate <font color="#4040ff">verb</font> in <font color="#4040ff">grammatical tense</font> from <font color="#4040ff">narrative viewpoint</font>]"</p>
   3154 
   3155     <p>Adapts the given verb to the given tense and viewpoint, giving it a negative sense. For example, &quot;we [negate the verb provoke in the future tense from the first person plural]&quot; might produce &quot;we will not provoke&quot;.</p>
   3156 
   3157     <p><b>See</b> &nbsp;<a href=inform:/doc222.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.9. 14.9. Verbs as values</p>
   3158     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3159     <p class="tightin2"><a href="#" onclick="showExtra('extra526', 'plus526'); return false;"><img border=0 id="plus526" src=inform:/doc_images/extra.png></a>&nbsp;meaning of (<font color="#4040ff">verb</font>) ... <i>relation of objects</i></p>
   3160     <div id="extra526" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('meaning of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;meaning of (<font color="#4040ff">verb</font>) ... <i>relation of objects</i></p><p><b>Kind:</b> phrase verb -> relation of objects</p>
   3161     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3162     <p class="tightin2"><a href="#" onclick="showExtra('extra527', 'plus527'); return false;"><img border=0 id="plus527" src=inform:/doc_images/extra.png></a>&nbsp;say "[here]"</p>
   3163     <div id="extra527" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[here]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[here]"</p>
   3164 
   3165     <p>Produces &quot;here&quot; if the story tense is the present tense, and &quot;there&quot; otherwise.</p>
   3166 
   3167     <p><b>See</b> &nbsp;<a href=inform:/doc214.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.1. 14.1. Tense and narrative viewpoint</p>
   3168     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3169     <p class="tightin2"><a href="#" onclick="showExtra('extra528', 'plus528'); return false;"><img border=0 id="plus528" src=inform:/doc_images/extra.png></a>&nbsp;say "[now]"</p>
   3170     <div id="extra528" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[now]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[now]"</p>
   3171 
   3172     <p>Produces &quot;now&quot; if the story tense is the present tense, and &quot;then&quot; otherwise.</p>
   3173 
   3174     <p><b>See</b> &nbsp;<a href=inform:/doc214.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;14.1. 14.1. Tense and narrative viewpoint</p>
   3175     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3176     <a name=A529></a><p class="in2"><b>Lists</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra529', 'plus529'); return false;"><img border=0 id="plus529" src=inform:/doc_images/extra.png></a>&nbsp;add (<font color="#4040ff">value</font>) to (<font color="#4040ff">list of values</font>)</p>
   3177     <div id="extra529" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('add ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;add (<font color="#4040ff">value</font>) to (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if absent[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if absent
   3178     </p>
   3179 
   3180     <p>This phrase adds the given value to the end of the list. Example:</p>
   3181     <!-- START CODE "c8382" -->
   3182     <a id="c8382"></a><blockquote class="code"><p class="quoted">
   3183     let L be {60, 168};
   3184     <br />add 360 to L;
   3185     </p></blockquote>
   3186     <!-- END CODE -->
   3187     <p>results in L being {60, 168, 360}. Note that the value is added even if it already occurs somewhere in L; this can be avoided with &quot;if absent&quot;. So:</p>
   3188     <!-- START CODE "c8383" -->
   3189     <a id="c8383"></a><blockquote class="code"><p class="quoted">
   3190     add 168 to L, if absent;
   3191     </p></blockquote>
   3192     <!-- END CODE -->
   3193     <p>would do nothing - it is already there.</p>
   3194 
   3195     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (K, list of Ks) -> nothing</p>
   3196     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3197     <p class="tightin2"><a href="#" onclick="showExtra('extra530', 'plus530'); return false;"><img border=0 id="plus530" src=inform:/doc_images/extra.png></a>&nbsp;add (<font color="#4040ff">value</font>) at entry (<font color="#4040ff">number</font>) in (<font color="#4040ff">list of values</font>)</p>
   3198     <div id="extra530" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('add ... at entry ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;add (<font color="#4040ff">value</font>) at entry (<font color="#4040ff">number</font>) in (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if absent[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if absent
   3199     </p>
   3200 
   3201     <p>This phrase adds the given value so that it becomes the entry with that index number in the list. Example:</p>
   3202     <!-- START CODE "c8385" -->
   3203     <a id="c8385"></a><blockquote class="code"><p class="quoted">
   3204     let L be {1, 2, 3, 4, 8, 24};
   3205     <br />add 12 at entry 6 in L;
   3206     </p></blockquote>
   3207     <!-- END CODE -->
   3208     <p>sets L to {1, 2, 3, 4, 8, 12, 24}. If there are N entries in L, then we can add at any of entries 1 up to N+1: adding at entry N+1 means adding at the end. The phrase option &quot;if absent&quot; makes the phrase do nothing if the value already exists anywhere in L.</p>
   3209 
   3210     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (K, number, list of Ks) -> nothing</p>
   3211     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3212     <p class="tightin2"><a href="#" onclick="showExtra('extra531', 'plus531'); return false;"><img border=0 id="plus531" src=inform:/doc_images/extra.png></a>&nbsp;add (<font color="#4040ff">list of values</font>) to (<font color="#4040ff">list of values</font>)</p>
   3213     <div id="extra531" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('add ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;add (<font color="#4040ff">list of values</font>) to (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if absent[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if absent
   3214     </p>
   3215 
   3216     <p>This phrase adds the first list to the end of the second. Example:</p>
   3217     <!-- START CODE "c8384" -->
   3218     <a id="c8384"></a><blockquote class="code"><p class="quoted">
   3219     let L be {2, 3, 5, 7};
   3220     <br />add {11, 13, 17, 19} to L;
   3221     </p></blockquote>
   3222     <!-- END CODE -->
   3223     <p>results in L being {2, 3, 5, 7, 11, 13, 17, 19}.</p>
   3224 
   3225     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (list of Ks, list of Ks) -> nothing</p>
   3226     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3227     <p class="tightin2"><a href="#" onclick="showExtra('extra532', 'plus532'); return false;"><img border=0 id="plus532" src=inform:/doc_images/extra.png></a>&nbsp;add (<font color="#4040ff">list of values</font>) at entry (<font color="#4040ff">number</font>) in (<font color="#4040ff">list of values</font>)</p>
   3228     <div id="extra532" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('add ... at entry ... in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;add (<font color="#4040ff">list of values</font>) at entry (<font color="#4040ff">number</font>) in (<font color="#4040ff">list of values</font>)</p>
   3229 
   3230     <p>This phrase adds the first list to the second so that it begins at the given position. Example:</p>
   3231     <!-- START CODE "c8386" -->
   3232     <a id="c8386"></a><blockquote class="code"><p class="quoted">
   3233     let L be {1, 2, 3, 4};
   3234     <br />add {4, 8, 12} at entry 3 in L;
   3235     </p></blockquote>
   3236     <!-- END CODE -->
   3237     <p>results in L being {1, 2, 4, 8, 12, 3, 4}.</p>
   3238 
   3239     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (list of Ks, number, list of Ks) -> nothing</p>
   3240     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3241     <p class="tightin2"><a href="#" onclick="showExtra('extra533', 'plus533'); return false;"><img border=0 id="plus533" src=inform:/doc_images/extra.png></a>&nbsp;remove (<font color="#4040ff">value</font>) from (<font color="#4040ff">list of values</font>)</p>
   3242     <div id="extra533" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('remove ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;remove (<font color="#4040ff">value</font>) from (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if present[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if present
   3243     </p>
   3244 
   3245     <p>This phrase removes every instance of the given value from the list. Example:</p>
   3246     <!-- START CODE "c8389" -->
   3247     <a id="c8389"></a><blockquote class="code"><p class="quoted">
   3248     let L be {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
   3249     <br />remove 1 from L;
   3250     </p></blockquote>
   3251     <!-- END CODE -->
   3252     <p>results in L being {3, 4, 5, 9, 2, 6, 5, 3}. Ordinarily &quot;remove 7 from L&quot; would produce a run-time problem, since L does not contain the value 7, but using the &quot;if present&quot; option lets us off this: the phrase then does nothing if L does not contain the value to be removed.</p>
   3253 
   3254     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (K, list of Ks) -> nothing</p>
   3255     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3256     <p class="tightin2"><a href="#" onclick="showExtra('extra534', 'plus534'); return false;"><img border=0 id="plus534" src=inform:/doc_images/extra.png></a>&nbsp;remove (<font color="#4040ff">list of values</font>) from (<font color="#4040ff">list of values</font>)</p>
   3257     <div id="extra534" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('remove ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;remove (<font color="#4040ff">list of values</font>) from (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if present[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if present
   3258     </p>
   3259 
   3260     <p>This phrase removes every instance of any value in the first list from the second. Example:</p>
   3261     <!-- START CODE "c8390" -->
   3262     <a id="c8390"></a><blockquote class="code"><p class="quoted">
   3263     let L be {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
   3264     <br />remove {0, 2, 4, 6, 8} from L;
   3265     </p></blockquote>
   3266     <!-- END CODE -->
   3267     <p>results in L being {3, 1, 1, 5, 9, 5, 3}. If both lists are large, this can be a slow process, and we might do better by sorting them and trying a more sophisticated method. But this is convenient for anything reasonable-sized.</p>
   3268 
   3269     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (list of Ks, list of Ks) -> nothing</p>
   3270     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3271     <p class="tightin2"><a href="#" onclick="showExtra('extra535', 'plus535'); return false;"><img border=0 id="plus535" src=inform:/doc_images/extra.png></a>&nbsp;remove entry (<font color="#4040ff">number</font>) from (<font color="#4040ff">list of values</font>)</p>
   3272     <div id="extra535" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('remove entry ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;remove entry (<font color="#4040ff">number</font>) from (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if present[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if present
   3273     </p>
   3274 
   3275     <p>This phrase removes the entry at the given position, counting from 1 as the first entry. (Once it is removed, the other entries shuffle down.) Example:</p>
   3276     <!-- START CODE "c8391" -->
   3277     <a id="c8391"></a><blockquote class="code"><p class="quoted">
   3278     let L be {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
   3279     <br />remove entry 3 from L;
   3280     </p></blockquote>
   3281     <!-- END CODE -->
   3282     <p>results in L being {3, 1, 1, 5, 9, 2, 6, 5, 3}.</p>
   3283 
   3284     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (number, list of values) -> nothing</p>
   3285     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3286     <p class="tightin2"><a href="#" onclick="showExtra('extra536', 'plus536'); return false;"><img border=0 id="plus536" src=inform:/doc_images/extra.png></a>&nbsp;remove entries (<font color="#4040ff">number</font>) to (<font color="#4040ff">number</font>) from (<font color="#4040ff">list of values</font>)</p>
   3287     <div id="extra536" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('remove entries ... to ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;remove entries (<font color="#4040ff">number</font>) to (<font color="#4040ff">number</font>) from (<font color="#4040ff">list of values</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('if present[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if present
   3288     </p>
   3289 
   3290     <p>This phrase removes the entries at the given range of positions, counting from 1 as the first entry. (Once they are removed, the other entries shuffle down.) Example:</p>
   3291     <!-- START CODE "c8392" -->
   3292     <a id="c8392"></a><blockquote class="code"><p class="quoted">
   3293     let L be {3, 1, 4, 1, 5, 9, 2, 6, 5, 3};
   3294     <br />remove entries 3 to 6 from L;
   3295     </p></blockquote>
   3296     <!-- END CODE -->
   3297     <p>results in L being {3, 1, 2, 6, 5, 3}.</p>
   3298 
   3299     <p><b>See</b> &nbsp;<a href=inform:/doc356.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.5. 21.5. Building lists</p><p><b>Kind:</b> phrase (number, number, list of values) -> nothing</p>
   3300     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3301     <p class="tightin2"><a href="#" onclick="showExtra('extra537', 'plus537'); return false;"><img border=0 id="plus537" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) is listed in (<font color="#4040ff">list of values</font>)<i>:</i></p>
   3302     <div id="extra537" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('is listed in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) is listed in (<font color="#4040ff">list of values</font>)<i>:</i></p>
   3303 
   3304     <p>This condition is true if the given value, which must be of a compatible kind, is one of those in the list. For instance, if L is our list of the numbers 2, 3, 5, 7 and 11 then 5 is listed in it but 6 is not.</p>
   3305 
   3306     <p><b>See</b> &nbsp;<a href=inform:/doc355.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.4. 21.4. Testing and iterating over lists</p><p><b>Kind:</b> phrase (K, list of Ks) -> truth state</p>
   3307     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3308     <p class="tightin2"><a href="#" onclick="showExtra('extra538', 'plus538'); return false;"><img border=0 id="plus538" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) is not listed in (<font color="#4040ff">list of values</font>)<i>:</i></p>
   3309     <div id="extra538" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('is not listed in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) is not listed in (<font color="#4040ff">list of values</font>)<i>:</i></p>
   3310 
   3311     <p>This condition is true if the given value, which must be of a compatible kind, is not one of those in the list.</p>
   3312 
   3313     <p><b>See</b> &nbsp;<a href=inform:/doc355.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.4. 21.4. Testing and iterating over lists</p><p><b>Kind:</b> phrase (K, list of Ks) -> truth state</p>
   3314     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3315     <p class="tightin2"><a href="#" onclick="showExtra('extra539', 'plus539'); return false;"><img border=0 id="plus539" src=inform:/doc_images/extra.png></a>&nbsp;list of (<font color="#4040ff">description of values</font>) ... <i>value</i></p>
   3316     <div id="extra539" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('list of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;list of (<font color="#4040ff">description of values</font>) ... <i>value</i></p>
   3317 
   3318     <p>This phrase produces the list of all values matching the given description. Inform will issue a problem message if the result would be an infinite list, or one which is impractical to test: for instance &quot;list of even numbers&quot; is not feasible.</p>
   3319 
   3320     <p><b>See</b> &nbsp;<a href=inform:/doc357.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.6. 21.6. Lists of objects</p><p><b>Kind:</b> phrase description of Ks -> list of Ks</p>
   3321     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3322     <p class="tightin2"><a href="#" onclick="showExtra('extra540', 'plus540'); return false;"><img border=0 id="plus540" src=inform:/doc_images/extra.png></a>&nbsp;multiple object list ... <i>list of objects</i></p>
   3323     <div id="extra540" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('multiple object list')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;multiple object list ... <i>list of objects</i></p>
   3324 
   3325     <p>This phrase produces the current multiple object list as a value. The list will be the collection of objects found to match a plural noun like ALL in the most recent command typed by the player. If there is no multiple object, say if the command was TAKE PEAR, the list will be empty: it won't be a list of size 1.</p>
   3326 
   3327     <p><b>See</b> &nbsp;<a href=inform:/doc284.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;17.20. 17.20. Multiple action processing</p><p><b>Kind:</b> phrase nothing -> list of objects</p>
   3328     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3329     <p class="tightin2"><a href="#" onclick="showExtra('extra541', 'plus541'); return false;"><img border=0 id="plus541" src=inform:/doc_images/extra.png></a>&nbsp;alter the multiple object list to (<font color="#4040ff">list of objects</font>)</p>
   3330     <div id="extra541" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('alter the multiple object list to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;alter the multiple object list to (<font color="#4040ff">list of objects</font>)</p>
   3331 
   3332     <p>This phrase sets the multiple object list to the given value. The list is ordinarily the collection of objects found to match a plural noun like ALL in the most recent command typed by the player, but using this phrase at the right moment (before the &quot;generate action rule&quot; in the turn sequence rules takes effect).</p>
   3333 
   3334     <p><b>See</b> &nbsp;<a href=inform:/doc284.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;17.20. 17.20. Multiple action processing</p><p><b>Kind:</b> phrase list of objects -> nothing</p>
   3335     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3336     <a name=A542></a><p class="in2"><b>Length of lists</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra542', 'plus542'); return false;"><img border=0 id="plus542" src=inform:/doc_images/extra.png></a>&nbsp;number of entries in<font color="#808080">/of</font> (<font color="#4040ff">list of values</font>) ... <i>number</i></p>
   3337     <div id="extra542" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of entries in')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of entries in<font color="#808080">/of</font> (<font color="#4040ff">list of values</font>) ... <i>number</i></p>
   3338 
   3339     <p>This phrase produces the number of positions in the list. Example:</p>
   3340     <!-- START CODE "c8451" -->
   3341     <a id="c8451"></a><blockquote class="code"><p class="quoted">
   3342     the number of entries in {1, 1, 1, 3, 1}
   3343     </p></blockquote>
   3344     <!-- END CODE -->
   3345     <p>is 5, even though there are only two genuinely different items in the list.</p>
   3346 
   3347     <p><b>See</b> &nbsp;<a href=inform:/doc360.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.9. 21.9. Accessing entries in a list</p><p><b>Kind:</b> phrase list of values -> number</p>
   3348     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3349     <p class="tightin2"><a href="#" onclick="showExtra('extra543', 'plus543'); return false;"><img border=0 id="plus543" src=inform:/doc_images/extra.png></a>&nbsp;truncate (<font color="#4040ff">list of values</font>) to (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3350     <div id="extra543" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('truncate ... to ... entries')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;truncate (<font color="#4040ff">list of values</font>) to (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3351 
   3352     <p>This phrase alters the given list so that it now has no more than the number of entries given. Example:</p>
   3353     <!-- START CODE "c8514" -->
   3354     <a id="c8514"></a><blockquote class="code"><p class="quoted">
   3355     truncate L to 8 entries;
   3356     </p></blockquote>
   3357     <!-- END CODE -->
   3358     <p>shortens L to length 8 if it is currently longer than that, trimming entries from the end, but would (for instance) leave a list of length 3 unchanged. Note that</p>
   3359     <!-- START CODE "c8515" -->
   3360     <a id="c8515"></a><blockquote class="code"><p class="quoted">
   3361     truncate L to 0 entries;
   3362     </p></blockquote>
   3363     <!-- END CODE -->
   3364     <p>empties it to { }, the list with nothing in.</p>
   3365 
   3366     <p><b>See</b> &nbsp;<a href=inform:/doc361.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.10. 21.10. Lengthening or shortening a list</p><p><b>Kind:</b> phrase (list of values, number) -> nothing</p>
   3367     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3368     <p class="tightin2"><a href="#" onclick="showExtra('extra544', 'plus544'); return false;"><img border=0 id="plus544" src=inform:/doc_images/extra.png></a>&nbsp;truncate (<font color="#4040ff">list of values</font>) to the first (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3369     <div id="extra544" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('truncate ... to the first ... entries')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;truncate (<font color="#4040ff">list of values</font>) to the first (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3370 
   3371     <p>This phrase alters the given list so that it now consists only of the initial part of the list with the given length. Example:</p>
   3372     <!-- START CODE "c8516" -->
   3373     <a id="c8516"></a><blockquote class="code"><p class="quoted">
   3374     truncate L to the first 4 entries;
   3375     </p></blockquote>
   3376     <!-- END CODE -->
   3377     <p>turns {1, 3, 5, 7, 9, 11} to {1, 3, 5, 7}.</p>
   3378 
   3379     <p><b>See</b> &nbsp;<a href=inform:/doc361.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.10. 21.10. Lengthening or shortening a list</p><p><b>Kind:</b> phrase (list of values, number) -> nothing</p>
   3380     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3381     <p class="tightin2"><a href="#" onclick="showExtra('extra545', 'plus545'); return false;"><img border=0 id="plus545" src=inform:/doc_images/extra.png></a>&nbsp;truncate (<font color="#4040ff">list of values</font>) to the last (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3382     <div id="extra545" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('truncate ... to the last ... entries')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;truncate (<font color="#4040ff">list of values</font>) to the last (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3383 
   3384     <p>This phrase alters the given list so that it now consists only of the final part of the list with the given length. Example:</p>
   3385     <!-- START CODE "c8517" -->
   3386     <a id="c8517"></a><blockquote class="code"><p class="quoted">
   3387     truncate L to the last 4 entries;
   3388     </p></blockquote>
   3389     <!-- END CODE -->
   3390     <p>turns {1, 3, 5, 7, 9, 11} to {5, 7, 9, 11}.</p>
   3391 
   3392     <p><b>See</b> &nbsp;<a href=inform:/doc361.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.10. 21.10. Lengthening or shortening a list</p><p><b>Kind:</b> phrase (list of values, number) -> nothing</p>
   3393     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3394     <p class="tightin2"><a href="#" onclick="showExtra('extra546', 'plus546'); return false;"><img border=0 id="plus546" src=inform:/doc_images/extra.png></a>&nbsp;extend (<font color="#4040ff">list of values</font>) to (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3395     <div id="extra546" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('extend ... to ... entries')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;extend (<font color="#4040ff">list of values</font>) to (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3396 
   3397     <p>This phrase pads out the list with default values as needed so that it now has at least the given length. (If the list is already at least that length, nothing is done.) Example:</p>
   3398     <!-- START CODE "c8518" -->
   3399     <a id="c8518"></a><blockquote class="code"><p class="quoted">
   3400     extend L to 80 entries;
   3401     </p></blockquote>
   3402     <!-- END CODE -->
   3403     <p>lengthens L to length 80 if it is currently shorter than that.</p>
   3404 
   3405     <p><b>See</b> &nbsp;<a href=inform:/doc361.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.10. 21.10. Lengthening or shortening a list</p><p><b>Kind:</b> phrase (list of values, number) -> nothing</p>
   3406     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3407     <p class="tightin2"><a href="#" onclick="showExtra('extra547', 'plus547'); return false;"><img border=0 id="plus547" src=inform:/doc_images/extra.png></a>&nbsp;change (<font color="#4040ff">list of values</font>) to have (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3408     <div id="extra547" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('change ... to have ... entries')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;change (<font color="#4040ff">list of values</font>) to have (<font color="#4040ff">number</font>) entries<font color="#808080">/entry</font></p>
   3409 
   3410     <p>This phrase alters the given list so that it now has exactly the number of entries given. Example:</p>
   3411     <!-- START CODE "c8513" -->
   3412     <a id="c8513"></a><blockquote class="code"><p class="quoted">
   3413     change L to have 21 entries;
   3414     </p></blockquote>
   3415     <!-- END CODE -->
   3416     <p>If L previously had more than 21 entries, they are thrown away (and lost forever); if L previously had fewer, then new entries are created, using the default value for whatever kind of value L holds. So extending a list of numbers will pad it out with 0s, but extending a list of texts will pad it out with the empty text &quot;&quot;, and so on.</p>
   3417 
   3418     <p><b>See</b> &nbsp;<a href=inform:/doc361.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.10. 21.10. Lengthening or shortening a list</p><p><b>Kind:</b> phrase (list of values, number) -> nothing</p>
   3419     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3420     <a name=A548></a><p class="in2"><b>Reversing and rotating lists</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra548', 'plus548'); return false;"><img border=0 id="plus548" src=inform:/doc_images/extra.png></a>&nbsp;reverse (<font color="#4040ff">list of values</font>)</p>
   3421     <div id="extra548" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('reverse')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;reverse (<font color="#4040ff">list of values</font>)</p>
   3422 
   3423     <p>This phrase puts the list in reverse order. The old entry 1 becomes the new last entry, and so on: reversing an empty list or a list containing only one entry leaves it unchanged. Example:</p>
   3424     <!-- START CODE "c8443" -->
   3425     <a id="c8443"></a><blockquote class="code"><p class="quoted">
   3426     let L be {11, 12, 14, 15, 16, 17};
   3427     <br />reverse L;
   3428     </p></blockquote>
   3429     <!-- END CODE -->
   3430     <p>results in L being {17, 16, 15, 14, 12, 11}.</p>
   3431 
   3432     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase list of values -> nothing</p>
   3433     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3434     <p class="tightin2"><a href="#" onclick="showExtra('extra549', 'plus549'); return false;"><img border=0 id="plus549" src=inform:/doc_images/extra.png></a>&nbsp;rotate (<font color="#4040ff">list of values</font>)</p>
   3435     <div id="extra549" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rotate')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rotate (<font color="#4040ff">list of values</font>)</p>
   3436 
   3437     <p>This phrase shuffles the entries of the list forwards (to the right) by one place, so that the 1st becomes 2nd, the 2nd becomes 3rd, and so on until the last, which becomes the new first entry. Example:</p>
   3438     <!-- START CODE "c8449" -->
   3439     <a id="c8449"></a><blockquote class="code"><p class="quoted">
   3440     let L be { &quot;cow&quot;, &quot;heifer&quot;, &quot;bullock&quot; };
   3441     <br />rotate L;
   3442     </p></blockquote>
   3443     <!-- END CODE -->
   3444     <p>results in L being { &quot;bullock&quot;, &quot;cow&quot;, &quot;heifer&quot; }.</p>
   3445 
   3446     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase list of values -> nothing</p>
   3447     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3448     <p class="tightin2"><a href="#" onclick="showExtra('extra550', 'plus550'); return false;"><img border=0 id="plus550" src=inform:/doc_images/extra.png></a>&nbsp;rotate (<font color="#4040ff">list of values</font>) backwards</p>
   3449     <div id="extra550" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rotate ... backwards')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rotate (<font color="#4040ff">list of values</font>) backwards</p>
   3450 
   3451     <p>This phrase shuffles the entries of the list backwards (to the left) by one place, so that the 3rd becomes 2nd, the 2nd becomes 1st, and so on; the previous 1st entry becomes the new last entry. Example:</p>
   3452     <!-- START CODE "c8450" -->
   3453     <a id="c8450"></a><blockquote class="code"><p class="quoted">
   3454     let L be { &quot;cow&quot;, &quot;heifer&quot;, &quot;bullock&quot; };
   3455     <br />rotate L backwards;
   3456     </p></blockquote>
   3457     <!-- END CODE -->
   3458     <p>results in L being { &quot;heifer&quot;, &quot;bullock&quot;, &quot;cow&quot;}. (This achieves the same effect as &quot;reverse L; rotate L; reverse L;&quot; but is a little faster, and a lot less effort to read.)</p>
   3459 
   3460     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase list of values -> nothing</p>
   3461     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3462     <a name=A551></a><p class="in2"><b>Sorting lists</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra551', 'plus551'); return false;"><img border=0 id="plus551" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">list of values</font>)</p>
   3463     <div id="extra551" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">list of values</font>)</p>
   3464 
   3465     <p>This phrase puts the list into ascending order. Example:</p>
   3466     <!-- START CODE "c8444" -->
   3467     <a id="c8444"></a><blockquote class="code"><p class="quoted">
   3468     let L be {6 PM, 11:13 AM, 4:21 PM, 9:01 AM};
   3469     <br />sort L;
   3470     </p></blockquote>
   3471     <!-- END CODE -->
   3472     <p>results in L being {9:01 AM, 11:13 AM, 4:21 PM, 6 PM}.</p>
   3473 
   3474     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase list of values -> nothing</p>
   3475     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3476     <p class="tightin2"><a href="#" onclick="showExtra('extra552', 'plus552'); return false;"><img border=0 id="plus552" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">list of values</font>) in<font color="#808080">/into</font> reverse order</p>
   3477     <div id="extra552" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in reverse order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">list of values</font>) in<font color="#808080">/into</font> reverse order</p>
   3478 
   3479     <p>This phrase puts the list into descending order. Example:</p>
   3480     <!-- START CODE "c8445" -->
   3481     <a id="c8445"></a><blockquote class="code"><p class="quoted">
   3482     let L be {6 PM, 11:13 AM, 4:21 PM, 9:01 AM};
   3483     <br />sort L in reverse order;
   3484     </p></blockquote>
   3485     <!-- END CODE -->
   3486     <p>results in L being {6 PM, 4:21 PM, 11:13 AM, 9:01 AM}.</p>
   3487 
   3488     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase list of values -> nothing</p>
   3489     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3490     <p class="tightin2"><a href="#" onclick="showExtra('extra553', 'plus553'); return false;"><img border=0 id="plus553" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">list of values</font>) in<font color="#808080">/into</font> random order</p>
   3491     <div id="extra553" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in random order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">list of values</font>) in<font color="#808080">/into</font> random order</p>
   3492 
   3493     <p>This phrase puts the list into a uniformly random order, shuffling it as if it were a pack of cards. Example:</p>
   3494     <!-- START CODE "c8446" -->
   3495     <a id="c8446"></a><blockquote class="code"><p class="quoted">
   3496     let L be {1, 2, 3, 4, 5, 6};
   3497     <br />sort L in random order;
   3498     </p></blockquote>
   3499     <!-- END CODE -->
   3500     <p>might result in L being {3, 1, 5, 6, 4, 2}. Or any of 719 other arrangements, including being left as it was.</p>
   3501 
   3502     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase list of values -> nothing</p>
   3503     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3504     <p class="tightin2"><a href="#" onclick="showExtra('extra554', 'plus554'); return false;"><img border=0 id="plus554" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">list of objects</font>) in<font color="#808080">/into</font> (<font color="#4040ff">property</font>) order</p>
   3505     <div id="extra554" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in ... order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">list of objects</font>) in<font color="#808080">/into</font> (<font color="#4040ff">property</font>) order</p>
   3506 
   3507     <p>This phrase puts the list into ascending order of the values of the given property for the items in the list; this is only allowed if all of those values do have the property in question. Example:</p>
   3508     <!-- START CODE "c8447" -->
   3509     <a id="c8447"></a><blockquote class="code"><p class="quoted">
   3510     let L be the list of people;
   3511     <br />sort L in carrying capacity order;
   3512     </p></blockquote>
   3513     <!-- END CODE -->
   3514     <p>would arrange people with weaklings first, titans last.</p>
   3515 
   3516     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase (list of objects, property) -> nothing</p>
   3517     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3518     <p class="tightin2"><a href="#" onclick="showExtra('extra555', 'plus555'); return false;"><img border=0 id="plus555" src=inform:/doc_images/extra.png></a>&nbsp;sort (<font color="#4040ff">list of objects</font>) in<font color="#808080">/into</font> reverse (<font color="#4040ff">property</font>) order</p>
   3519     <div id="extra555" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('sort ... in reverse ... order')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;sort (<font color="#4040ff">list of objects</font>) in<font color="#808080">/into</font> reverse (<font color="#4040ff">property</font>) order</p>
   3520 
   3521     <p>This phrase puts the list into descending order of the values of the given property for the items in the list; this is only allowed if all of those values do have the property in question. Example:</p>
   3522     <!-- START CODE "c8448" -->
   3523     <a id="c8448"></a><blockquote class="code"><p class="quoted">
   3524     let L be the list of people;
   3525     <br />sort L in reverse carrying capacity order;
   3526     </p></blockquote>
   3527     <!-- END CODE -->
   3528     <p>would arrange people with titans first, weaklings last.</p>
   3529 
   3530     <p><b>See</b> &nbsp;<a href=inform:/doc359.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.8. 21.8. Sorting, reversing and rotating lists</p><p><b>Kind:</b> phrase (list of objects, property) -> nothing</p>
   3531     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3532     <a name=A556></a><p class="in2"><b>Relations</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra556', 'plus556'); return false;"><img border=0 id="plus556" src=inform:/doc_images/extra.png></a>&nbsp;show relation (<font color="#4040ff">relation of values</font>)</p>
   3533     <div id="extra556" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('show relation')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;show relation (<font color="#4040ff">relation of values</font>)</p>
   3534 
   3535     <p>This phrase is for testing purposes only. It shows the current state of the named relation, that is, it shows which values relate to which other ones, where it's possible to do this in any sensible way.</p>
   3536 
   3537     <p><b>See</b> &nbsp;<a href=inform:/doc204.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.7. 13.7. Relations in groups</p><p><b>Kind:</b> phrase relation of values -> nothing</p>
   3538     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3539     <p class="tightin2"><a href="#" onclick="showExtra('extra557', 'plus557'); return false;"><img border=0 id="plus557" src=inform:/doc_images/extra.png></a>&nbsp;next step via (<font color="#4040ff">relation of objects</font>) from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>object</i></p>
   3540     <div id="extra557" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('next step via ... from ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;next step via (<font color="#4040ff">relation of objects</font>) from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>object</i></p>
   3541 
   3542     <p>This phrase tries to find a shortest route between the two given endpoints, using the given relation of objects to determine single steps. Example:</p>
   3543     <!-- START CODE "c4152" -->
   3544     <a id="c4152"></a><blockquote class="code"><p class="quoted">
   3545     next step via the overlooking relation from the Folly to the Chinese Lake
   3546     </p></blockquote>
   3547     <!-- END CODE -->
   3548     <p>The result is the special object value &quot;nothing&quot; if the two endpoints are the same or if no route exists.</p>
   3549 
   3550     <p><b>See</b> &nbsp;<a href=inform:/doc208.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.11. 13.11. Indirect relations</p><p><b>Kind:</b> phrase (relation of objects, object, object) -> object</p>
   3551     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3552     <p class="tightin2"><a href="#" onclick="showExtra('extra558', 'plus558'); return false;"><img border=0 id="plus558" src=inform:/doc_images/extra.png></a>&nbsp;number of steps via (<font color="#4040ff">relation of objects</font>) from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>number</i></p>
   3553     <div id="extra558" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of steps via ... from ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of steps via (<font color="#4040ff">relation of objects</font>) from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>number</i></p>
   3554 
   3555     <p>This phrase tries to find the length of a shortest route between the two given endpoints, using the given relation of objects to determine single steps. Example:</p>
   3556     <!-- START CODE "c4153" -->
   3557     <a id="c4153"></a><blockquote class="code"><p class="quoted">
   3558     number of steps via the overlooking relation from the Folly to the Chinese Lake
   3559     </p></blockquote>
   3560     <!-- END CODE -->
   3561     <p>The result is 0 if the two endpoints are the same, or -1 if no route exists.</p>
   3562 
   3563     <p><b>See</b> &nbsp;<a href=inform:/doc208.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.11. 13.11. Indirect relations</p><p><b>Kind:</b> phrase (relation of objects, object, object) -> number</p>
   3564     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3565     <p class="tightin2"><a href="#" onclick="showExtra('extra559', 'plus559'); return false;"><img border=0 id="plus559" src=inform:/doc_images/extra.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) that<font color="#808080">/which/whom</font> (<font color="#4040ff">relation of values</font>) relates ... <i>value</i></p>
   3566     <div id="extra559" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('list of ... that ... relates')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) that<font color="#808080">/which/whom</font> (<font color="#4040ff">relation of values</font>) relates ... <i>value</i></p>
   3567 
   3568     <p>This phrase produces a list of all X which relate to anything under the given relation. Example: suppose partnership relates various texts to various texts. Then we can obtain</p>
   3569     <!-- START CODE "c4213" -->
   3570     <a id="c4213"></a><blockquote class="code"><p class="quoted">
   3571     list of texts which the partnership relation relates
   3572     </p></blockquote>
   3573     <!-- END CODE -->
   3574 
   3575     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (K, relation of Ks to Ls) -> list of Ks</p>
   3576     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3577     <p class="tightin2"><a href="#" onclick="showExtra('extra561', 'plus561'); return false;"><img border=0 id="plus561" src=inform:/doc_images/extra.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) to which<font color="#808080">/whom</font> (<font color="#4040ff">relation of values</font>) relates ... <i>value</i></p>
   3578     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;list of (<font color="#E00060">name of kind</font>) that<font color="#808080">/which/whom</font> (<font color="#4040ff">relation of values</font>) relates to ... <i>value</i></p>
   3579     <div id="extra561" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('list of ... to which ... relates')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) to which<font color="#808080">/whom</font> (<font color="#4040ff">relation of values</font>) relates ... <i>value</i></p>
   3580 
   3581     <p>This phrase produces a list of all Y which anything relates to under the given relation. Example: suppose partnership relates various texts to various texts. Then we can obtain</p>
   3582     <!-- START CODE "c4214" -->
   3583     <a id="c4214"></a><blockquote class="code"><p class="quoted">
   3584     list of texts which the partnership relation relates to
   3585     </p></blockquote>
   3586     <!-- END CODE -->
   3587 
   3588     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (L, relation of Ks to Ls) -> list of Ls</p>
   3589     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3590     <p class="tightin2"><a href="#" onclick="showExtra('extra562', 'plus562'); return false;"><img border=0 id="plus562" src=inform:/doc_images/extra.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) that<font color="#808080">/which/who</font> relate to (<font color="#4040ff">value</font>) by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3591     <div id="extra562" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('list of ... that relate to ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) that<font color="#808080">/which/who</font> relate to (<font color="#4040ff">value</font>) by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3592 
   3593     <p>This phrase produces a list of all the X such that X relates to the given value V by the given relation. Example: suppose partnership relates various texts to various texts. Then we can obtain</p>
   3594     <!-- START CODE "c4211" -->
   3595     <a id="c4211"></a><blockquote class="code"><p class="quoted">
   3596     list of texts which relate to &quot;cheese&quot; by the partnership relation
   3597     </p></blockquote>
   3598     <!-- END CODE -->
   3599     <p>which might be, say, { &quot;chalk&quot;, &quot;grapes&quot;, &quot;macaroni&quot; }. The answer might be the empty set, but that's not a problem.</p>
   3600 
   3601     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (K, L, relation of Ks to Ls) -> list of Ks</p>
   3602     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3603     <p class="tightin2"><a href="#" onclick="showExtra('extra564', 'plus564'); return false;"><img border=0 id="plus564" src=inform:/doc_images/extra.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) to which<font color="#808080">/whom</font> (<font color="#4040ff">value</font>) relates by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3604     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;list of (<font color="#E00060">name of kind</font>) that<font color="#808080">/which/whom</font> (<font color="#4040ff">value</font>) relates to by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3605     <div id="extra564" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('list of ... to which ... relates by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;list of (<font color="#E00060">name of kind</font>) to which<font color="#808080">/whom</font> (<font color="#4040ff">value</font>) relates by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3606 
   3607     <p>This phrase produces a list of all Y such that the given value V relates to Y by the given relation. Example: suppose partnership relates various texts to various texts. Then we can obtain</p>
   3608     <!-- START CODE "c4212" -->
   3609     <a id="c4212"></a><blockquote class="code"><p class="quoted">
   3610     list of texts to which &quot;chalk&quot; relates by the partnership relation
   3611     </p></blockquote>
   3612     <!-- END CODE -->
   3613     <p>which might be, say, { &quot;cheese&quot;, &quot;blackboard&quot;, &quot;cliffs&quot; }. The answer might be the empty set, but that's not a problem.</p>
   3614 
   3615     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (L, K, relation of Ks to Ls) -> list of Ls</p>
   3616     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3617     <p class="tightin2"><a href="#" onclick="showExtra('extra565', 'plus565'); return false;"><img border=0 id="plus565" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#E00060">name of kind</font>) relates to (<font color="#4040ff">value</font>) by (<font color="#4040ff">relation of values</font>)<i>:</i></p>
   3618     <div id="extra565" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('relates to ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#E00060">name of kind</font>) relates to (<font color="#4040ff">value</font>) by (<font color="#4040ff">relation of values</font>)<i>:</i></p>
   3619 
   3620     <p>This condition is true if the value V is such that something relates to V by the given relation. Example: suppose partnership relates various texts to various texts. Then we can test</p>
   3621     <!-- START CODE "c4208" -->
   3622     <a id="c4208"></a><blockquote class="code"><p class="quoted">
   3623     if a text relates to &quot;cheese&quot; by the partnership relation, ...
   3624     </p></blockquote>
   3625     <!-- END CODE -->
   3626 
   3627     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (K, L, relation of Ks to Ls) -> truth state</p>
   3628     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3629     <p class="tightin2"><a href="#" onclick="showExtra('extra566', 'plus566'); return false;"><img border=0 id="plus566" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) relates to (<font color="#E00060">name of kind</font>) by (<font color="#4040ff">relation of values</font>)<i>:</i></p>
   3630     <div id="extra566" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('relates to ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) relates to (<font color="#E00060">name of kind</font>) by (<font color="#4040ff">relation of values</font>)<i>:</i></p>
   3631 
   3632     <p>This condition is true if the value V is such that V relates to something by the given relation. Example: suppose partnership relates various texts to various texts. Then we can test</p>
   3633     <!-- START CODE "c4207" -->
   3634     <a id="c4207"></a><blockquote class="code"><p class="quoted">
   3635     if &quot;chalk&quot; relates to a text by the partnership relation, ...
   3636     </p></blockquote>
   3637     <!-- END CODE -->
   3638 
   3639     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (K, L, relation of Ks to Ls) -> truth state</p>
   3640     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3641     <p class="tightin2"><a href="#" onclick="showExtra('extra567', 'plus567'); return false;"><img border=0 id="plus567" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) that<font color="#808080">/which/who</font> relates to (<font color="#4040ff">value</font>) by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3642     <div id="extra567" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('that relates to ... by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) that<font color="#808080">/which/who</font> relates to (<font color="#4040ff">value</font>) by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3643 
   3644     <p>This phrase produces an X such that X relates to the given value V by the given relation. Example: suppose partnership relates various texts to various texts. Then we can obtain</p>
   3645     <!-- START CODE "c4210" -->
   3646     <a id="c4210"></a><blockquote class="code"><p class="quoted">
   3647     the text which relates to &quot;cheese&quot; by the partnership relation
   3648     </p></blockquote>
   3649     <!-- END CODE -->
   3650     <p>which might be, say, &quot;chalk&quot;. It's a run-time problem to use this if no such X exists.</p>
   3651 
   3652     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (K, L, relation of Ks to Ls) -> K</p>
   3653     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3654     <p class="tightin2"><a href="#" onclick="showExtra('extra569', 'plus569'); return false;"><img border=0 id="plus569" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) to which<font color="#808080">/whom</font> (<font color="#4040ff">value</font>) relates by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3655     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;(<font color="#E00060">name of kind</font>) that<font color="#808080">/which/whom</font> (<font color="#4040ff">value</font>) relates to by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3656     <div id="extra569" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('to which ... relates by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) to which<font color="#808080">/whom</font> (<font color="#4040ff">value</font>) relates by (<font color="#4040ff">relation of values</font>) ... <i>value</i></p>
   3657 
   3658     <p>This phrase produces an Y such that the given value V relates to Y by the given relation. Example: suppose partnership relates various texts to various texts. Then we can obtain</p>
   3659     <!-- START CODE "c4209" -->
   3660     <a id="c4209"></a><blockquote class="code"><p class="quoted">
   3661     the text to which &quot;chalk&quot; relates by the partnership relation
   3662     </p></blockquote>
   3663     <!-- END CODE -->
   3664     <p>which might be, say, &quot;cheese&quot;. It's a run-time problem to use this if no such Y exists.</p>
   3665 
   3666     <p><b>See</b> &nbsp;<a href=inform:/doc210.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;13.13. 13.13. Relations involving values</p><p><b>Kind:</b> phrase (L, K, relation of Ks to Ls) -> L</p>
   3667     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3668     <a name=A570></a><p class="in2"><b>Functional programming</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra570', 'plus570'); return false;"><img border=0 id="plus570" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) matches (<font color="#4040ff">description of values</font>)<i>:</i></p>
   3669     <div id="extra570" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('matches')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">value</font>) matches (<font color="#4040ff">description of values</font>)<i>:</i></p>
   3670 
   3671     <p>This condition is true if the value matches the description; the kinds must be compatible, or Inform will issue a problem message. There is no point using this for cases where the description is given explicitly:</p>
   3672     <!-- START CODE "c8672" -->
   3673     <a id="c8672"></a><blockquote class="code"><p class="quoted">
   3674     if 4 matches even numbers, ...
   3675     </p></blockquote>
   3676     <!-- END CODE -->
   3677     <p>because it is easier to write just:</p>
   3678     <!-- START CODE "c8673" -->
   3679     <a id="c8673"></a><blockquote class="code"><p class="quoted">
   3680     if 4 is an even number, ...
   3681     </p></blockquote>
   3682     <!-- END CODE -->
   3683     <p>So this condition is only useful when the description is stored in some variable, and its identity is not known.</p>
   3684 
   3685     <p><b>See</b> &nbsp;<a href=inform:/doc364.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.2. 22.2. Descriptions as values</p><p><b>Kind:</b> phrase (K, description of Ks) -> truth state</p>
   3686     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3687     <p class="tightin2"><a href="#" onclick="showExtra('extra571', 'plus571'); return false;"><img border=0 id="plus571" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">phrase nothing -> value</font>) applied ... <i>value</i></p>
   3688     <div id="extra571" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('applied')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">phrase nothing -> value</font>) applied ... <i>value</i></p>
   3689 
   3690     <p>This phrase produces the result of applying the given phrase, which must be one which takes no values itself.</p>
   3691 
   3692     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase phrase nothing -> K -> K</p>
   3693     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3694     <p class="tightin2"><a href="#" onclick="showExtra('extra572', 'plus572'); return false;"><img border=0 id="plus572" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">phrase value -> value</font>) applied to (<font color="#4040ff">value</font>) ... <i>value</i></p>
   3695     <div id="extra572" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('applied to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">phrase value -> value</font>) applied to (<font color="#4040ff">value</font>) ... <i>value</i></p>
   3696 
   3697     <p>This phrase produces the result of applying the given phrase, which must be one which takes one value itself.</p>
   3698 
   3699     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase (phrase K -> L, K) -> L</p>
   3700     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3701     <p class="tightin2"><a href="#" onclick="showExtra('extra573', 'plus573'); return false;"><img border=0 id="plus573" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">phrase (value, value) -> value</font>) applied to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) ... <i>value</i></p>
   3702     <div id="extra573" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('applied to ... and')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">phrase (value, value) -> value</font>) applied to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) ... <i>value</i></p>
   3703 
   3704     <p>This phrase produces the result of applying the given phrase, which must be one which takes two values itself.</p>
   3705 
   3706     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase (phrase (K, L) -> M, K, L) -> M</p>
   3707     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3708     <p class="tightin2"><a href="#" onclick="showExtra('extra574', 'plus574'); return false;"><img border=0 id="plus574" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">phrase (value, value, value) -> value</font>) applied to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) ... <i>value</i></p>
   3709     <div id="extra574" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('applied to ... and ... and')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">phrase (value, value, value) -> value</font>) applied to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) ... <i>value</i></p>
   3710 
   3711     <p>This phrase produces the result of applying the given phrase, which must be one which takes three values itself.</p>
   3712 
   3713     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase (phrase (K, L, M) -> N, K, L, M) -> N</p>
   3714     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3715     <p class="tightin2"><a href="#" onclick="showExtra('extra575', 'plus575'); return false;"><img border=0 id="plus575" src=inform:/doc_images/extra.png></a>&nbsp;apply (<font color="#4040ff">phrase nothing -> nothing</font>)</p>
   3716     <div id="extra575" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('apply')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;apply (<font color="#4040ff">phrase nothing -> nothing</font>)</p>
   3717 
   3718     <p>This phrase causes the given phrase to be applied. It must be one which takes no values itself.</p>
   3719 
   3720     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase phrase nothing -> nothing -> nothing</p>
   3721     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3722     <p class="tightin2"><a href="#" onclick="showExtra('extra576', 'plus576'); return false;"><img border=0 id="plus576" src=inform:/doc_images/extra.png></a>&nbsp;apply (<font color="#4040ff">phrase value -> nothing</font>) to (<font color="#4040ff">value</font>)</p>
   3723     <div id="extra576" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('apply ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;apply (<font color="#4040ff">phrase value -> nothing</font>) to (<font color="#4040ff">value</font>)</p>
   3724 
   3725     <p>This phrase causes the given phrase to be applied. It must be one which takes one value itself.</p>
   3726 
   3727     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase (phrase K -> nothing, K) -> nothing</p>
   3728     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3729     <p class="tightin2"><a href="#" onclick="showExtra('extra577', 'plus577'); return false;"><img border=0 id="plus577" src=inform:/doc_images/extra.png></a>&nbsp;apply (<font color="#4040ff">phrase (value, value) -> nothing</font>) to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>)</p>
   3730     <div id="extra577" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('apply ... to ... and')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;apply (<font color="#4040ff">phrase (value, value) -> nothing</font>) to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>)</p>
   3731 
   3732     <p>This phrase causes the given phrase to be applied. It must be one which takes two values itself.</p>
   3733 
   3734     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase (phrase (K, L) -> nothing, K, L) -> nothing</p>
   3735     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3736     <p class="tightin2"><a href="#" onclick="showExtra('extra578', 'plus578'); return false;"><img border=0 id="plus578" src=inform:/doc_images/extra.png></a>&nbsp;apply (<font color="#4040ff">phrase (value, value, value) -> nothing</font>) to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>)</p>
   3737     <div id="extra578" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('apply ... to ... and ... and')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;apply (<font color="#4040ff">phrase (value, value, value) -> nothing</font>) to (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>) and (<font color="#4040ff">value</font>)</p>
   3738 
   3739     <p>This phrase causes the given phrase to be applied. It must be one which takes three values itself.</p>
   3740 
   3741     <p><b>See</b> &nbsp;<a href=inform:/doc365.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.3. 22.3. Phrases as values</p><p><b>Kind:</b> phrase (phrase (K, L, M) -> nothing, K, L, M) -> nothing</p>
   3742     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3743     <p class="tightin2"><a href="#" onclick="showExtra('extra579', 'plus579'); return false;"><img border=0 id="plus579" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">phrase value -> value</font>) applied to (<font color="#4040ff">list of values</font>) ... <i>value</i></p>
   3744     <div id="extra579" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('applied to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">phrase value -> value</font>) applied to (<font color="#4040ff">list of values</font>) ... <i>value</i></p>
   3745 
   3746     <p>This phrase takes the list, applies the phrase to each entry in the list, and forms a new list of the result. Example:</p>
   3747     <!-- START CODE "c8698" -->
   3748     <a id="c8698"></a><blockquote class="code"><p class="quoted">
   3749     To decide what number is double (N - a number) (this is doubling):
   3750     <br />&#160;&#160;&#160;&#160;decide on N plus N.
   3751     </p></blockquote>
   3752     <!-- END CODE -->
   3753     <p>Then &quot;doubling applied to 2&quot; produces 4, by the simpler definition of &quot;applied to&quot;, but also:</p>
   3754     <!-- START CODE "c8699" -->
   3755     <a id="c8699"></a><blockquote class="code"><p class="quoted">
   3756     doubling applied to {2, 3, 4}
   3757     </p></blockquote>
   3758     <!-- END CODE -->
   3759     <p>produces the list {4, 6, 8}.</p>
   3760 
   3761     <p><b>See</b> &nbsp;<a href=inform:/doc367.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.5. 22.5. Map, filter and reduce</p><p><b>Kind:</b> phrase (phrase K -> L, list of Ks) -> list of Ls</p>
   3762     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3763     <p class="tightin2"><a href="#" onclick="showExtra('extra580', 'plus580'); return false;"><img border=0 id="plus580" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">phrase (value, value) -> value</font>) reduction of (<font color="#4040ff">list of values</font>) ... <i>value</i></p>
   3764     <div id="extra580" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('reduction of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">phrase (value, value) -> value</font>) reduction of (<font color="#4040ff">list of values</font>) ... <i>value</i></p>
   3765 
   3766     <p>This phrase works through the list and accumulates the values in it, using the phrase supplied. Example: if we have</p>
   3767     <!-- START CODE "c8709" -->
   3768     <a id="c8709"></a><blockquote class="code"><p class="quoted">
   3769     To decide what number is the sum of (N - number) and (M - number)
   3770     <br />&#160;&#160;&#160;&#160;(this is summing):
   3771     <br />&#160;&#160;&#160;&#160;decide on N + M.
   3772     </p></blockquote>
   3773     <!-- END CODE -->
   3774     <p>then the summing reduction of {3, 8, 4, 19, 7} is the number 41, obtained by</p>
   3775     <!-- START CODE "c8710" -->
   3776     <a id="c8710"></a><blockquote class="code"><p class="quoted">
   3777     (((3 + 8) + 4) + 19) + 7
   3778     </p></blockquote>
   3779     <!-- END CODE -->
   3780     <p>so that the summing phrase has been used four times.</p>
   3781 
   3782     <p><b>See</b> &nbsp;<a href=inform:/doc367.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.5. 22.5. Map, filter and reduce</p><p><b>Kind:</b> phrase (phrase (K, K) -> K, list of Ks) -> K</p>
   3783     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3784     <p class="tightin2"><a href="#" onclick="showExtra('extra581', 'plus581'); return false;"><img border=0 id="plus581" src=inform:/doc_images/extra.png></a>&nbsp;filter to (<font color="#4040ff">description of values</font>) of (<font color="#4040ff">list of values</font>) ... <i>value</i></p>
   3785     <div id="extra581" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('filter to ... of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;filter to (<font color="#4040ff">description of values</font>) of (<font color="#4040ff">list of values</font>) ... <i>value</i></p>
   3786 
   3787     <p>This phrase produces a new list which is a thinner version of the one given, so that it contains only those values which match the description given. Example:</p>
   3788     <!-- START CODE "c8703" -->
   3789     <a id="c8703"></a><blockquote class="code"><p class="quoted">
   3790     filter to even numbers of {3, 8, 4, 19, 7}
   3791     </p></blockquote>
   3792     <!-- END CODE -->
   3793     <p>produces {8, 4}, with the values 3, 19, and 7 failing to make it through. A sufficiently fine filter may well thin out a list to a single entry, or even no entries at all, but the result is always a list.</p>
   3794 
   3795     <p><b>See</b> &nbsp;<a href=inform:/doc367.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;22.5. 22.5. Map, filter and reduce</p><p><b>Kind:</b> phrase (description of Ks, list of Ks) -> list of Ks</p>
   3796     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3797     <p class="tightin2"><a href="#" onclick="showExtra('extra582', 'plus582'); return false;"><img border=0 id="plus582" src=inform:/doc_images/extra.png></a>&nbsp;showme (<font color="#4040ff">value</font>)</p>
   3798     <div id="extra582" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('showme')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;showme (<font color="#4040ff">value</font>)</p>
   3799 
   3800     <p>This phrase is intended for testing purposes only. If used in a story file running inside the Inform application, it prints a line of text showing the given value and its kind; in a Released story file, it does nothing at all. Example:</p>
   3801     <!-- START CODE "c2859" -->
   3802     <a id="c2859"></a><blockquote class="code"><p class="quoted">
   3803     When play begins: showme 11.
   3804     </p></blockquote>
   3805     <!-- END CODE -->
   3806     <p>produces</p>
   3807     <!-- START CODE "c2860" -->
   3808     <a id="c2860"></a><blockquote class="code"><p class="quoted">
   3809     number: 11
   3810     </p></blockquote>
   3811     <!-- END CODE -->
   3812     <p>More usefully:</p>
   3813     <!-- START CODE "c2861" -->
   3814     <a id="c2861"></a><blockquote class="code"><p class="quoted">
   3815     Every turn: showme the score.
   3816     </p></blockquote>
   3817     <!-- END CODE -->
   3818     <p>Now, every turn, we get a line in the story's transcript like so:</p>
   3819     <!-- START CODE "c2862" -->
   3820     <a id="c2862"></a><blockquote class="code"><p class="quoted">
   3821     &quot;score&quot; = number: 0
   3822     </p></blockquote>
   3823     <!-- END CODE -->
   3824     <p>Inform uses the quotation marks and equals sign to show that it had to do some work to find the answer. &quot;score&quot; wasn't a constant value - it was a variable, and Inform had to look up the current value.</p>
   3825 
   3826     <p><b>See</b> &nbsp;<a href=inform:/doc162.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.4. 11.4. The showme phrase</p><p><b>Kind:</b> phrase value -> nothing</p>
   3827     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3828     <p class="tightin2"><a href="#" onclick="showExtra('extra583', 'plus583'); return false;"><img border=0 id="plus583" src=inform:/doc_images/extra.png></a>&nbsp;default value of (<font color="#E00060">name of kind</font>) ... <i>value</i></p>
   3829     <div id="extra583" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('default value of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;default value of (<font color="#E00060">name of kind</font>) ... <i>value</i></p>
   3830 
   3831     <p>Produces the default value of the kind named. Examples:</p>
   3832     <!-- START CODE "c707" -->
   3833     <a id="c707"></a><blockquote class="code"><p class="quoted">
   3834     The silver repeater is here. &quot;You catch sight of a silver repeater watch, hands immobile at [default value of time].&quot;
   3835     </p></blockquote>
   3836     <!-- END CODE -->
   3837     <p>produces the output:</p>
   3838     <!-- START CODE "c708" -->
   3839     <a id="c708"></a><blockquote class="code"><p class="quoted">
   3840     You catch sight of a silver repeater watch, hands immobile at 9:00 am.
   3841     </p></blockquote>
   3842     <!-- END CODE -->
   3843     <p>because nine in the morning is the default time in Inform. If we have:</p>
   3844     <!-- START CODE "c709" -->
   3845     <a id="c709"></a><blockquote class="code"><p class="quoted">
   3846     Brightness is a kind of value. The brightnesses are guttering, weak, radiant and blazing.
   3847     </p></blockquote>
   3848     <!-- END CODE -->
   3849     <p>then &quot;default value of brightness&quot; is guttering, the first brightness created.  When it comes to kinds of object, we sometimes have to be a little careful. For example,</p>
   3850     <!-- START CODE "c710" -->
   3851     <a id="c710"></a><blockquote class="code"><p class="quoted">
   3852     default value of room
   3853     </p></blockquote>
   3854     <!-- END CODE -->
   3855     <p>is always going to be fine (it's always the first room created in the source text). But</p>
   3856     <!-- START CODE "c711" -->
   3857     <a id="c711"></a><blockquote class="code"><p class="quoted">
   3858     default value of vehicle
   3859     </p></blockquote>
   3860     <!-- END CODE -->
   3861     <p>would produce a Problem message if there were no vehicles in the world.</p>
   3862 
   3863     <p><b>See</b> &nbsp;<a href=inform:/doc62.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;4.11. 4.11. Default values of kinds</p><p><b>Kind:</b> phrase K -> K</p>
   3864     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3865     <a name=A584></a><p class="in2"><b>Files (for Glulx external files language element only)</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra584', 'plus584'); return false;"><img border=0 id="plus584" src=inform:/doc_images/extra.png></a>&nbsp;read (<font color="#4040ff">external file</font>) into (<font color="#4040ff">table name</font>)</p>
   3866     <div id="extra584" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('read ... into')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;read (<font color="#4040ff">external file</font>) into (<font color="#4040ff">table name</font>)</p>
   3867 
   3868     <p>This phrase causes the entire contents of the given table to be read in from the given file. Note that files must have been declared, and must be referred to by their Inform names, not by textual filenames. Example:</p>
   3869     <!-- START CODE "c8751" -->
   3870     <a id="c8751"></a><blockquote class="code"><p class="quoted">
   3871     read File of Glaciation Data into the Table of Antarctic Reserves
   3872     </p></blockquote>
   3873     <!-- END CODE -->
   3874     <p>Any rows left spare at the foot of the table are automatically blanked. On the other hand if the file is too large to fit into the table - with too many columns or too many rows - a run-time problem is produced.</p>
   3875 
   3876     <p><b>See</b> &nbsp;<a href=inform:/doc385.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.13. 23.13. Writing and reading tables to external files</p><p><b>Kind:</b> phrase (external file, table name) -> nothing</p>
   3877     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3878     <p class="tightin2"><a href="#" onclick="showExtra('extra585', 'plus585'); return false;"><img border=0 id="plus585" src=inform:/doc_images/extra.png></a>&nbsp;write (<font color="#4040ff">external file</font>) from (<font color="#4040ff">table name</font>)</p>
   3879     <div id="extra585" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('write ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;write (<font color="#4040ff">external file</font>) from (<font color="#4040ff">table name</font>)</p>
   3880 
   3881     <p>This phrase causes the entire contents of the given table to be written out to the given file. Note that files must have been declared, and must be referred to by their Inform names, not by textual filenames. Example:</p>
   3882     <!-- START CODE "c8750" -->
   3883     <a id="c8750"></a><blockquote class="code"><p class="quoted">
   3884     write File of Glaciation Data from the Table of Antarctic Reserves
   3885     </p></blockquote>
   3886     <!-- END CODE -->
   3887     <p>Any blank rows in the table are automatically moved to the bottom, and only the non-blank rows are written.</p>
   3888 
   3889     <p><b>See</b> &nbsp;<a href=inform:/doc385.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.13. 23.13. Writing and reading tables to external files</p><p><b>Kind:</b> phrase (external file, table name) -> nothing</p>
   3890     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3891     <p class="tightin2"><a href="#" onclick="showExtra('extra586', 'plus586'); return false;"><img border=0 id="plus586" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">external file</font>) exists<i>:</i></p>
   3892     <div id="extra586" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('exists')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">external file</font>) exists<i>:</i></p>
   3893 
   3894     <p>This condition is true if the file-system used by the player appears to contain a file with the right name. For example, if we declared:</p>
   3895     <!-- START CODE "c8752" -->
   3896     <a id="c8752"></a><blockquote class="code"><p class="quoted">
   3897     The binary File of Glaciation Data is called &quot;icedata&quot;.
   3898     </p></blockquote>
   3899     <!-- END CODE -->
   3900     <p>and then tested</p>
   3901     <!-- START CODE "c8753" -->
   3902     <a id="c8753"></a><blockquote class="code"><p class="quoted">
   3903     if the File of Glaciation Data exists, ...
   3904     </p></blockquote>
   3905     <!-- END CODE -->
   3906     <p>then Inform would search for a file called &quot;icedata&quot;. (The arrangements for where this might be stored, and its filename extension, vary from platform to platform.)</p>
   3907 
   3908     <p><b>See</b> &nbsp;<a href=inform:/doc385.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.13. 23.13. Writing and reading tables to external files</p><p><b>Kind:</b> phrase external file -> truth state</p>
   3909     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3910     <p class="tightin2"><a href="#" onclick="showExtra('extra587', 'plus587'); return false;"><img border=0 id="plus587" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> ready to read (<font color="#4040ff">external file</font>)<i>:</i></p>
   3911     <div id="extra587" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('ready to read')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> ready to read (<font color="#4040ff">external file</font>)<i>:</i></p>
   3912 
   3913     <p>This condition is true if the file exists and is marked as being ready to read; that is, it is not in a state where another program is currently writing it. Example:</p>
   3914     <!-- START CODE "c8855" -->
   3915     <a id="c8855"></a><blockquote class="code"><p class="quoted">
   3916     if ready to read the file of Invariants, ...
   3917     </p></blockquote>
   3918     <!-- END CODE -->
   3919 
   3920     <p><b>See</b> &nbsp;<a href=inform:/doc387.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.15. 23.15. Exchanging files with other programs</p><p><b>Kind:</b> phrase external file -> truth state</p>
   3921     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3922     <p class="tightin2"><a href="#" onclick="showExtra('extra588', 'plus588'); return false;"><img border=0 id="plus588" src=inform:/doc_images/extra.png></a>&nbsp;mark (<font color="#4040ff">external file</font>) as ready to read</p>
   3923     <div id="extra588" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('mark ... as ready to read')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;mark (<font color="#4040ff">external file</font>) as ready to read</p>
   3924 
   3925     <p>This phrase marks that we have finished writing to the given file, so that any external program is welcome to read it now. Example:</p>
   3926     <!-- START CODE "c8856" -->
   3927     <a id="c8856"></a><blockquote class="code"><p class="quoted">
   3928     mark the file of Invariants as ready to read;
   3929     </p></blockquote>
   3930     <!-- END CODE -->
   3931 
   3932     <p><b>See</b> &nbsp;<a href=inform:/doc387.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.15. 23.15. Exchanging files with other programs</p><p><b>Kind:</b> phrase external file -> nothing</p>
   3933     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3934     <p class="tightin2"><a href="#" onclick="showExtra('extra589', 'plus589'); return false;"><img border=0 id="plus589" src=inform:/doc_images/extra.png></a>&nbsp;mark (<font color="#4040ff">external file</font>) as not ready to read</p>
   3935     <div id="extra589" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('mark ... as not ready to read')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;mark (<font color="#4040ff">external file</font>) as not ready to read</p>
   3936 
   3937     <p>This phrase marks that we are about to start writing to the given file, so that any external program should wait until we're finished if it wants to read the file. Example:</p>
   3938     <!-- START CODE "c8857" -->
   3939     <a id="c8857"></a><blockquote class="code"><p class="quoted">
   3940     mark the file of Invariants as not ready to read;
   3941     </p></blockquote>
   3942     <!-- END CODE -->
   3943 
   3944     <p><b>See</b> &nbsp;<a href=inform:/doc387.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.15. 23.15. Exchanging files with other programs</p><p><b>Kind:</b> phrase external file -> nothing</p>
   3945     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3946     <p class="tightin2"><a href="#" onclick="showExtra('extra590', 'plus590'); return false;"><img border=0 id="plus590" src=inform:/doc_images/extra.png></a>&nbsp;write (<font color="#4040ff">text</font>) to (<font color="#4040ff">external file</font>)</p>
   3947     <div id="extra590" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('write ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;write (<font color="#4040ff">text</font>) to (<font color="#4040ff">external file</font>)</p>
   3948 
   3949     <p>This phrase makes the given text become the entire contents of the named file. Note that files must have been declared, and must be referred to by their Inform names, not by textual filenames. Example:</p>
   3950     <!-- START CODE "c8799" -->
   3951     <a id="c8799"></a><blockquote class="code"><p class="quoted">
   3952     write &quot;Jackdaws love my big sphinx of quartz.&quot; to the file of Abecedary Wisdom;
   3953     </p></blockquote>
   3954     <!-- END CODE -->
   3955 
   3956     <p><b>See</b> &nbsp;<a href=inform:/doc386.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.14. 23.14. Writing, reading and appending text to files</p><p><b>Kind:</b> phrase (text, external file) -> nothing</p>
   3957     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3958     <p class="tightin2"><a href="#" onclick="showExtra('extra591', 'plus591'); return false;"><img border=0 id="plus591" src=inform:/doc_images/extra.png></a>&nbsp;append (<font color="#4040ff">text</font>) to (<font color="#4040ff">external file</font>)</p>
   3959     <div id="extra591" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('append ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;append (<font color="#4040ff">text</font>) to (<font color="#4040ff">external file</font>)</p>
   3960 
   3961     <p>This phrase adds the given text to the end of the current contents of the named file (creating it if it does not exist on disc). Note that files must have been declared, and must be referred to by their Inform names, not by textual filenames. Example:</p>
   3962     <!-- START CODE "c8800" -->
   3963     <a id="c8800"></a><blockquote class="code"><p class="quoted">
   3964     append &quot;Jinxed wizards pluck ivy from the big quilt.&quot; to the file of Abecedary Wisdom;
   3965     </p></blockquote>
   3966     <!-- END CODE -->
   3967 
   3968     <p><b>See</b> &nbsp;<a href=inform:/doc386.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.14. 23.14. Writing, reading and appending text to files</p><p><b>Kind:</b> phrase (text, external file) -> nothing</p>
   3969     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3970     <p class="tightin2"><a href="#" onclick="showExtra('extra592', 'plus592'); return false;"><img border=0 id="plus592" src=inform:/doc_images/extra.png></a>&nbsp;say "[text of <font color="#4040ff">external file</font>]"</p>
   3971     <div id="extra592" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[text of ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[text of <font color="#4040ff">external file</font>]"</p>
   3972 
   3973     <p>This text expands to the contents of the named file. Note that files must have been declared, and must be referred to by their Inform names, not by textual filenames. Example:</p>
   3974     <!-- START CODE "c8801" -->
   3975     <a id="c8801"></a><blockquote class="code"><p class="quoted">
   3976     &quot;[text of the File of Abecedary Wisdom]&quot;
   3977     </p></blockquote>
   3978     <!-- END CODE -->
   3979 
   3980     <p><b>See</b> &nbsp;<a href=inform:/doc386.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.14. 23.14. Writing, reading and appending text to files</p>
   3981     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3982     <a name=A593></a><p class="in2"><b>Figures (for figures language element only)</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra593', 'plus593'); return false;"><img border=0 id="plus593" src=inform:/doc_images/extra.png></a>&nbsp;display (<font color="#4040ff">figure name</font>)</p>
   3983     <div id="extra593" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('display')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;display (<font color="#4040ff">figure name</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('one time only[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;one time only
   3984     </p>
   3985 
   3986     <p>This phrase causes the figure to be displayed in a way visible to the player. If the option &quot;one time only&quot; is used, it will have no effect if the figure has been displayed before. Example:</p>
   3987     <!-- START CODE "c8736" -->
   3988     <a id="c8736"></a><blockquote class="code"><p class="quoted">
   3989     display the Figure of Woodlands;
   3990     </p></blockquote>
   3991     <!-- END CODE -->
   3992 
   3993     <p><b>See</b> &nbsp;<a href=inform:/doc378.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.6. 23.6. Displaying the figures</p><p><b>Kind:</b> phrase figure name -> nothing</p>
   3994     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   3995     <p class="tightin2"><a href="#" onclick="showExtra('extra594', 'plus594'); return false;"><img border=0 id="plus594" src=inform:/doc_images/extra.png></a>&nbsp;Glulx resource ID of (<font color="#4040ff">figure name</font>) ... <i>number</i></p>
   3996     <div id="extra594" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('Glulx resource ID of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;Glulx resource ID of (<font color="#4040ff">figure name</font>) ... <i>number</i></p>
   3997 
   3998     <p>This phrase produces the ID number used in the eventual Glulx file for the given figure.</p>
   3999 
   4000     <p><b>See</b> &nbsp;<a href=inform:/doc382.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.10. 23.10. Some technicalities about figures and sounds</p><p><b>Kind:</b> phrase figure name -> number</p>
   4001     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4002     <a name=A595></a><p class="in2"><b>Sound effects (for sounds language element only)</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra595', 'plus595'); return false;"><img border=0 id="plus595" src=inform:/doc_images/extra.png></a>&nbsp;play (<font color="#4040ff">sound name</font>)</p>
   4003     <div id="extra595" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('play')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;play (<font color="#4040ff">sound name</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('one time only[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;one time only
   4004     </p>
   4005 
   4006     <p>This phrase causes the sound effect to be played. If the option &quot;one time only&quot; is used, it will have no effect if the sound effect has been played before. Example:</p>
   4007     <!-- START CODE "c8739" -->
   4008     <a id="c8739"></a><blockquote class="code"><p class="quoted">
   4009     play the sound of rustling leaves;
   4010     </p></blockquote>
   4011     <!-- END CODE -->
   4012 
   4013     <p><b>See</b> &nbsp;<a href=inform:/doc380.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.8. 23.8. Declaring and playing back sounds</p><p><b>Kind:</b> phrase sound name -> nothing</p>
   4014     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4015     <p class="tightin2"><a href="#" onclick="showExtra('extra596', 'plus596'); return false;"><img border=0 id="plus596" src=inform:/doc_images/extra.png></a>&nbsp;Glulx resource ID of (<font color="#4040ff">sound name</font>) ... <i>number</i></p>
   4016     <div id="extra596" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('Glulx resource ID of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;Glulx resource ID of (<font color="#4040ff">sound name</font>) ... <i>number</i></p>
   4017 
   4018     <p>This phrase produces the ID number used in the eventual Glulx file for the given sound effect.</p>
   4019 
   4020     <p><b>See</b> &nbsp;<a href=inform:/doc382.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;23.10. 23.10. Some technicalities about figures and sounds</p><p><b>Kind:</b> phrase sound name -> number</p>
   4021     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4022     <p><hr><p class="in1"><b>Control phrases</b></p><a name=A597></a><p class="in2"><b>If and unless</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra597', 'plus597'); return false;"><img border=0 id="plus597" src=inform:/doc_images/extra.png></a>&nbsp;if (<font color="#E00060">a condition</font>):
   4023     </p>
   4024     <div id="extra597" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('if ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if (<font color="#E00060">a condition</font>):
   4025     </p>
   4026 
   4027     <p>This phrase causes the single phrase, or block of phrases, following it to be obeyed only if the condition is true. (If the condition must contain a comma for some reason, the block form should be used.) Example:</p>
   4028     <!-- START CODE "c2901" -->
   4029     <a id="c2901"></a><blockquote class="code"><p class="quoted">
   4030     if the red door is open, say &quot;You could try going east?&quot;
   4031     </p></blockquote>
   4032     <!-- END CODE -->
   4033 
   4034     <p><b>See</b> &nbsp;<a href=inform:/doc164.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.6. 11.6. If</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4035     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4036     <p class="tightin2"><a href="#" onclick="showExtra('extra598', 'plus598'); return false;"><img border=0 id="plus598" src=inform:/doc_images/extra.png></a>&nbsp;unless (<font color="#E00060">a condition</font>):
   4037     </p>
   4038     <div id="extra598" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('unless ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;unless (<font color="#E00060">a condition</font>):
   4039     </p>
   4040 
   4041     <p>This phrase causes the single phrase, or block of phrases, following it to be obeyed only if the condition is false. (If the condition must contain a comma for some reason, the block form should be used.) Example:</p>
   4042     <!-- START CODE "c2902" -->
   4043     <a id="c2902"></a><blockquote class="code"><p class="quoted">
   4044     unless the red door is closed, say &quot;You could try going east?&quot;
   4045     </p></blockquote>
   4046     <!-- END CODE -->
   4047 
   4048     <p><b>See</b> &nbsp;<a href=inform:/doc164.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.6. 11.6. If</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4049     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4050     <p class="tightin2"><a href="#" onclick="showExtra('extra599', 'plus599'); return false;"><img border=0 id="plus599" src=inform:/doc_images/extra.png></a>&nbsp;if (<font color="#4040ff">value</font>) is:
   4051     </p>
   4052     <div id="extra599" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('if ... is:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;if (<font color="#4040ff">value</font>) is:
   4053     </p>
   4054 
   4055     <p>This phrase switches between a variety of possible blocks of phrases to follow, depending on the value given. Example:</p>
   4056     <!-- START CODE "c2927" -->
   4057     <a id="c2927"></a><blockquote class="code"><p class="quoted">
   4058     if the dangerous item is:
   4059     <br />&#160;&#160;&#160;&#160;-- the electric hairbrush:
   4060     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;say &quot;Mind your head.&quot;;
   4061     <br />&#160;&#160;&#160;&#160;-- the silver spoon:
   4062     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;say &quot;Steer clear of the cutlery drawer.&quot;
   4063     </p></blockquote>
   4064     <!-- END CODE -->
   4065     <p>One alternative is allowed to be &quot;otherwise&quot;, which is used only if none of the other cases apply, and which therefore guarantees that in any situation exactly one of the blocks will be followed.</p>
   4066     <!-- START CODE "c2928" -->
   4067     <a id="c2928"></a><blockquote class="code"><p class="quoted">
   4068     if N is:
   4069     <br />&#160;&#160;&#160;&#160;-- 1: say &quot;1.&quot;;
   4070     <br />&#160;&#160;&#160;&#160;-- 2: say &quot;2.&quot;;
   4071     <br />&#160;&#160;&#160;&#160;-- otherwise: say &quot;Neither 1 nor 2.&quot;;
   4072     </p></blockquote>
   4073     <!-- END CODE -->
   4074 
   4075     <p><b>See</b> &nbsp;<a href=inform:/doc166.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.8. 11.8. Otherwise</p><p><b>Kind:</b> phrase value -> nothing</p>
   4076     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4077     <a name=A600></a><p class="in2"><b>While</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra600', 'plus600'); return false;"><img border=0 id="plus600" src=inform:/doc_images/extra.png></a>&nbsp;while (<font color="#E00060">a condition</font>):
   4078     </p>
   4079     <div id="extra600" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('while ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;while (<font color="#E00060">a condition</font>):
   4080     </p>
   4081 
   4082     <p>This phrase causes the block of phrases following it to be repeated over and over for as long the condition is true. If it isn't even true the first time, the block is skipped over and nothing happens. Example:</p>
   4083     <!-- START CODE "c2936" -->
   4084     <a id="c2936"></a><blockquote class="code"><p class="quoted">
   4085     while someone (called the victim) is in the Crypt:
   4086     <br />&#160;&#160;&#160;&#160;say &quot;A bolt of lightning strikes [the victim]!&quot;;
   4087     <br />&#160;&#160;&#160;&#160;now the victim is in the Afterlife;
   4088     </p></blockquote>
   4089     <!-- END CODE -->
   4090 
   4091     <p><b>See</b> &nbsp;<a href=inform:/doc167.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.9. 11.9. While</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4092     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4093     <a name=A601></a><p class="in2"><b>Repeat</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra602', 'plus602'); return false;"><img border=0 id="plus602" src=inform:/doc_images/extra.png></a>&nbsp;repeat with (<font color="#E00060">a new name</font>) running from (<font color="#4040ff">arithmetic value</font>) to (<font color="#4040ff">arithmetic value</font>):
   4094     </p>
   4095     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;repeat with (<font color="#E00060">a new name</font>) running from (<font color="#4040ff">enumerated value</font>) to (<font color="#4040ff">enumerated value</font>):
   4096     </p>
   4097     <div id="extra602" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat with ... running from ... to ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat with (<font color="#E00060">a new name</font>) running from (<font color="#4040ff">arithmetic value</font>) to (<font color="#4040ff">arithmetic value</font>):
   4098     </p>
   4099 
   4100     <p>This phrase causes the block of phrases following it to be repeated once for each value in the given range, storing that value in the named variable. (The variable exists only temporarily, within the repetition.) Example:</p>
   4101     <!-- START CODE "c2940" -->
   4102     <a id="c2940"></a><blockquote class="code"><p class="quoted">
   4103     repeat with counter running from 1 to 10:
   4104     <br />&#160;&#160;&#160;&#160;...
   4105     </p></blockquote>
   4106     <!-- END CODE -->
   4107     <p>This, and runs through the given phrases ten times. Within those phrases, a special value called &quot;counter&quot; has the value 1 the first time through, then the value 2, then 3 and so on up to 10. (It can of course be called whatever we like: this is only an example.) The range can be from any kind where ranges make sense - anything on which arithmetic can be done, so for instance</p>
   4108     <!-- START CODE "c2941" -->
   4109     <a id="c2941"></a><blockquote class="code"><p class="quoted">
   4110     repeat with moment running from 4 PM to 4:07 PM:
   4111     <br />&#160;&#160;&#160;&#160;...
   4112     </p></blockquote>
   4113     <!-- END CODE -->
   4114     <p>and also any enumeration:</p>
   4115     <!-- START CODE "c2942" -->
   4116     <a id="c2942"></a><blockquote class="code"><p class="quoted">
   4117     Colour is a kind of value. The colours are red, orange, yellow, green, blue, indigo and violet.
   4118     </p></blockquote>
   4119     <!-- END CODE -->
   4120     <!-- START CODE "c2943" -->
   4121     <a id="c2943"></a><blockquote class="code"><p class="quoted">
   4122     ...
   4123     <br />&#160;&#160;&#160;&#160;repeat with hue running from orange to indigo:
   4124     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;...
   4125     </p></blockquote>
   4126     <!-- END CODE -->
   4127 
   4128     <p><b>See</b> &nbsp;<a href=inform:/doc168.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.10. 11.10. Repeat</p><p><b>Kind:</b> phrase (K, K [arithmetic value], K) -> nothing</p>
   4129     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4130     <p class="tightin2"><a href="#" onclick="showExtra('extra603', 'plus603'); return false;"><img border=0 id="plus603" src=inform:/doc_images/extra.png></a>&nbsp;repeat with (<font color="#E00060">a new name</font>) running through (<font color="#4040ff">description of values</font>):
   4131     </p>
   4132     <div id="extra603" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat with ... running through ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat with (<font color="#E00060">a new name</font>) running through (<font color="#4040ff">description of values</font>):
   4133     </p>
   4134 
   4135     <p>This phrase causes the block of phrases following it to be repeated once for each value matching the description, storing that value in the named variable. (The variable exists only temporarily, within the repetition.) Example:</p>
   4136     <!-- START CODE "c2957" -->
   4137     <a id="c2957"></a><blockquote class="code"><p class="quoted">
   4138     repeat with item running through open containers:
   4139     <br />&#160;&#160;&#160;&#160;...
   4140     </p></blockquote>
   4141     <!-- END CODE -->
   4142     <p>If there are no containers, or they are all closed, the phrases will not be followed at all. Inform will issue a Problem message if the range of the loop may be infinite: for example, it won't allow:</p>
   4143     <!-- START CODE "c2958" -->
   4144     <a id="c2958"></a><blockquote class="code"><p class="quoted">
   4145     repeat with X running through odd numbers:
   4146     <br />&#160;&#160;&#160;&#160;...
   4147     </p></blockquote>
   4148     <!-- END CODE -->
   4149     <p>On the other hand it will allow:</p>
   4150     <!-- START CODE "c2959" -->
   4151     <a id="c2959"></a><blockquote class="code"><p class="quoted">
   4152     repeat with T running through times:
   4153     <br />&#160;&#160;&#160;&#160;...
   4154     </p></blockquote>
   4155     <!-- END CODE -->
   4156     <p>which repeats 1440 times, starting with T at midnight and finishing at 11:59 PM. See the Kinds index for which kinds of value can be repeated through.</p>
   4157 
   4158     <p><b>See</b> &nbsp;<a href=inform:/doc169.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.11. 11.11. Repeat running through</p><p><b>Kind:</b> phrase (K, description of Ks) -> nothing</p>
   4159     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4160     <p class="tightin2"><a href="#" onclick="showExtra('extra604', 'plus604'); return false;"><img border=0 id="plus604" src=inform:/doc_images/extra.png></a>&nbsp;repeat with (<font color="#E00060">a new name</font>) running through (<font color="#4040ff">list of values</font>):
   4161     </p>
   4162     <div id="extra604" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat with ... running through ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat with (<font color="#E00060">a new name</font>) running through (<font color="#4040ff">list of values</font>):
   4163     </p>
   4164 
   4165     <p>This phrase causes the block of phrases following it to be repeated once for each item in the given list, storing that value in the named variable. (The variable exists only temporarily, within the repetition.) Example:</p>
   4166     <!-- START CODE "c8380" -->
   4167     <a id="c8380"></a><blockquote class="code"><p class="quoted">
   4168     let L be {2, 3, 5, 7, 11, 13, 17, 19};
   4169     <br />repeat with prime running through L:
   4170     <br />&#160;&#160;&#160;&#160;...
   4171     </p></blockquote>
   4172     <!-- END CODE -->
   4173     <p>If the list is empty, nothing happens: the &quot;...&quot; phrase(s) are never tried.</p>
   4174 
   4175     <p><b>See</b> &nbsp;<a href=inform:/doc355.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;21.4. 21.4. Testing and iterating over lists</p><p><b>Kind:</b> phrase (object, list of values) -> nothing</p>
   4176     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4177     <p class="tightin2"><a href="#" onclick="showExtra('extra605', 'plus605'); return false;"><img border=0 id="plus605" src=inform:/doc_images/extra.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>):
   4178     </p>
   4179     <div id="extra605" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat through ...:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>):
   4180     </p>
   4181 
   4182     <p>This phrase causes the block of phrases following it to be repeated once for each row in the given table, choosing each row in turn, from top to bottom. Blank rows are skipped. Example:</p>
   4183     <!-- START CODE "c5092" -->
   4184     <a id="c5092"></a><blockquote class="code"><p class="quoted">
   4185     To list the succession:
   4186     <br />&#160;&#160;&#160;&#160;say &quot;The Succession List runs as follows...&quot;;
   4187     <br />&#160;&#160;&#160;&#160;repeat through the Table of Recent Monarchs:
   4188     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;say &quot;[accession entry]: [name entry] ([family entry]).&quot;
   4189     </p></blockquote>
   4190     <!-- END CODE -->
   4191 
   4192     <p><b>See</b> &nbsp;<a href=inform:/doc251.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.6. 16.6. Repeating through tables</p><p><b>Kind:</b> phrase table name -> nothing</p>
   4193     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4194     <p class="tightin2"><a href="#" onclick="showExtra('extra606', 'plus606'); return false;"><img border=0 id="plus606" src=inform:/doc_images/extra.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>) in reverse order:
   4195     </p>
   4196     <div id="extra606" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat through ... in reverse order:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>) in reverse order:
   4197     </p>
   4198 
   4199     <p>This phrase causes the block of phrases following it to be repeated once for each row in the given table, choosing each row in turn, from bottom to top. Blank rows are skipped.</p>
   4200 
   4201     <p><b>See</b> &nbsp;<a href=inform:/doc251.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.6. 16.6. Repeating through tables</p><p><b>Kind:</b> phrase table name -> nothing</p>
   4202     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4203     <p class="tightin2"><a href="#" onclick="showExtra('extra607', 'plus607'); return false;"><img border=0 id="plus607" src=inform:/doc_images/extra.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>) in (<font color="#4040ff">table column</font>) order:
   4204     </p>
   4205     <div id="extra607" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat through ... in ... order:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>) in (<font color="#4040ff">table column</font>) order:
   4206     </p>
   4207 
   4208     <p>This phrase causes the block of phrases following it to be repeated once for each row in the given table, choosing each row in turn, in order of the values in the given column. Blank rows are skipped. Example:</p>
   4209     <!-- START CODE "c5093" -->
   4210     <a id="c5093"></a><blockquote class="code"><p class="quoted">
   4211     repeat through the Table of Recent Monarchs in name order: ...
   4212     <br />repeat through the Table of Recent Monarchs in accession order: ...
   4213     </p></blockquote>
   4214     <!-- END CODE -->
   4215     <p>work through the same table in rather different orders. The sequence is lower to higher (small numbers to high numbers, A to Z, and so on); insert &quot;reverse&quot; after &quot;in&quot; to reverse this.</p>
   4216 
   4217     <p><b>See</b> &nbsp;<a href=inform:/doc251.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.6. 16.6. Repeating through tables</p><p><b>Kind:</b> phrase (table name, table column) -> nothing</p>
   4218     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4219     <p class="tightin2"><a href="#" onclick="showExtra('extra608', 'plus608'); return false;"><img border=0 id="plus608" src=inform:/doc_images/extra.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>) in reverse (<font color="#4040ff">table column</font>) order:
   4220     </p>
   4221     <div id="extra608" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('repeat through ... in reverse ... order:[=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;repeat through (<font color="#4040ff">table name</font>) in reverse (<font color="#4040ff">table column</font>) order:
   4222     </p>
   4223 
   4224     <p>This phrase causes the block of phrases following it to be repeated once for each row in the given table, choosing each row in turn, in order of the values in the given column. Blank rows are skipped. Example:</p>
   4225     <!-- START CODE "c5094" -->
   4226     <a id="c5094"></a><blockquote class="code"><p class="quoted">
   4227     repeat through the Table of Recent Monarchs in reverse name order: ...
   4228     <br />repeat through the Table of Recent Monarchs in reverse accession order: ...
   4229     </p></blockquote>
   4230     <!-- END CODE -->
   4231     <p>work through the same table in rather different orders. The sequence is higher to lower (high numbers to small numbers, Z to A, and so on); delete the &quot;reverse&quot; after &quot;in&quot; to reverse this.</p>
   4232 
   4233     <p><b>See</b> &nbsp;<a href=inform:/doc251.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;16.6. 16.6. Repeating through tables</p><p><b>Kind:</b> phrase (table name, table column) -> nothing</p>
   4234     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4235     <a name=A609></a><p class="in2"><b>Changing the flow of loops</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra609', 'plus609'); return false;"><img border=0 id="plus609" src=inform:/doc_images/extra.png></a>&nbsp;break</p>
   4236     <div id="extra609" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('break')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;break</p>
   4237 
   4238     <p>This phrase can only be used inside &quot;repeat&quot;, &quot;while&quot; block, and causes both the current repetition and the entire loop to finish immediately. Example:</p>
   4239     <!-- START CODE "c2981" -->
   4240     <a id="c2981"></a><blockquote class="code"><p class="quoted">
   4241     repeat with X running from 1 to 10:
   4242     <br />&#160;&#160;&#160;&#160;if X is 7, break;
   4243     <br />&#160;&#160;&#160;&#160;say &quot;[X] &quot;.
   4244     </p></blockquote>
   4245     <!-- END CODE -->
   4246     <p>produces the text &quot;1 2 3 4 5 6 &quot;, with nothing after &quot;6&quot; because the loop was broken at that point. The &quot;say&quot; wasn't reached on the 7th repetition, and the 8th, 9th and 10th never happened.</p>
   4247 
   4248     <p><b>See</b> &nbsp;<a href=inform:/doc170.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.12. 11.12. Next and break</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4249     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4250     <p class="tightin2"><a href="#" onclick="showExtra('extra610', 'plus610'); return false;"><img border=0 id="plus610" src=inform:/doc_images/extra.png></a>&nbsp;next</p>
   4251     <div id="extra610" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('next')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;next</p>
   4252 
   4253     <p>This phrase can only be used inside a &quot;repeat&quot; or &quot;while&quot; block, and causes the current repetition of the block to finish immediately. That either means the next repetition begins, or (if we are already at the last one) the loop ends too. Example:</p>
   4254     <!-- START CODE "c2980" -->
   4255     <a id="c2980"></a><blockquote class="code"><p class="quoted">
   4256     repeat with X running from 1 to 10:
   4257     <br />&#160;&#160;&#160;&#160;if X is 4, next;
   4258     <br />&#160;&#160;&#160;&#160;say &quot;[X] &quot;.
   4259     </p></blockquote>
   4260     <!-- END CODE -->
   4261     <p>produces the text &quot;1 2 3 5 6 7 8 9 10 &quot;, with no &quot;4&quot; because the &quot;say&quot; phrase was never reached on the fourth repetition.</p>
   4262 
   4263     <p><b>See</b> &nbsp;<a href=inform:/doc170.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.12. 11.12. Next and break</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4264     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4265     <a name=A611></a><p class="in2"><b>Deciding outcomes</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra612', 'plus612'); return false;"><img border=0 id="plus612" src=inform:/doc_images/extra.png></a>&nbsp;yes</p>
   4266     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;decide yes</p>
   4267     <div id="extra612" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('yes')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;yes</p>
   4268 
   4269     <p>This phrase can only be used in the definition of a phrase to decide whether a condition holds. It ends the decision process immediately and makes the condition true.</p>
   4270 
   4271     <p><b>See</b> &nbsp;<a href=inform:/doc174.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.16. 11.16. New conditions, new adjectives</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4272     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4273     <p class="tightin2"><a href="#" onclick="showExtra('extra614', 'plus614'); return false;"><img border=0 id="plus614" src=inform:/doc_images/extra.png></a>&nbsp;no</p>
   4274     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;decide no</p>
   4275     <div id="extra614" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('no')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;no</p>
   4276 
   4277     <p>This phrase can only be used in the definition of a phrase to decide whether a condition holds. It ends the decision process immediately and makes the condition false.</p>
   4278 
   4279     <p><b>See</b> &nbsp;<a href=inform:/doc174.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.16. 11.16. New conditions, new adjectives</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4280     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4281     <p class="tightin2"><a href="#" onclick="showExtra('extra615', 'plus615'); return false;"><img border=0 id="plus615" src=inform:/doc_images/extra.png></a>&nbsp;decide on (<font color="#4040ff">value</font>)</p>
   4282     <div id="extra615" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('decide on')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;decide on (<font color="#4040ff">value</font>)</p>
   4283 
   4284     <p>This phrase can only be used in the body of a definition of a phrase to decide a value. It causes the calculation to end immediately, with the outcome being the given value, which must be of the kind expected. Example:</p>
   4285     <!-- START CODE "c3042" -->
   4286     <a id="c3042"></a><blockquote class="code"><p class="quoted">
   4287     To decide which number is double (N - a number):
   4288     <br />&#160;&#160;&#160;&#160;let D be N times N;
   4289     <br />&#160;&#160;&#160;&#160;decide on D.
   4290     </p></blockquote>
   4291     <!-- END CODE -->
   4292 
   4293     <p><b>See</b> &nbsp;<a href=inform:/doc175.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.17. 11.17. Phrases to decide other things</p><p><b>Kind:</b> phrase value -> nothing</p>
   4294     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4295     <a name=A616></a><p class="in2"><b>Stop or go</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra616', 'plus616'); return false;"><img border=0 id="plus616" src=inform:/doc_images/extra.png></a>&nbsp;do nothing</p>
   4296     <div id="extra616" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('do nothing')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;do nothing</p>
   4297 
   4298     <p>This phrase does nothing at all. It is very occasionally useful to make a rule which does nothing:</p>
   4299     <!-- START CODE "c2814" -->
   4300     <a id="c2814"></a><blockquote class="code"><p class="quoted">
   4301     This is the largely ineffective rule:
   4302     <br />&#160;&#160;&#160;&#160;do nothing.
   4303     </p></blockquote>
   4304     <!-- END CODE -->
   4305 
   4306     <p><b>See</b> &nbsp;<a href=inform:/doc159.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.1. 11.1. What are phrases?</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4307     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4308     <p class="tightin2"><a href="#" onclick="showExtra('extra617', 'plus617'); return false;"><img border=0 id="plus617" src=inform:/doc_images/extra.png></a>&nbsp;stop</p>
   4309     <div id="extra617" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('stop')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;stop</p>
   4310 
   4311     <p>This phrase causes the current rule to end immediately. It is most often used in the definition of other phrases:</p>
   4312     <!-- START CODE "c2982" -->
   4313     <a id="c2982"></a><blockquote class="code"><p class="quoted">
   4314     To judge the score:
   4315     <br />&#160;&#160;&#160;&#160;if the score is 0, stop;
   4316     <br />&#160;&#160;&#160;&#160;say &quot;The score is [score in words] more than it was a half-hour ago.&quot;
   4317     </p></blockquote>
   4318     <!-- END CODE -->
   4319     <p>In the case when the score is 0, the &quot;stop&quot; ends the phrase immediately, so that the subsequent text is printed only if the score is not 0.</p>
   4320     <p>&quot;Stop&quot; can also be used in action rules, though this is not very good style - it's clearer to use &quot;stop the action&quot;, which is exactly equivalent.</p>
   4321 
   4322     <p><b>See</b> &nbsp;<a href=inform:/doc171.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.13. 11.13. Stop</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4323     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4324     <p><hr><p class="in1"><b>Actions, activities and rules</b></p><a name=A618></a><p class="in2"><b>Trying actions</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra618', 'plus618'); return false;"><img border=0 id="plus618" src=inform:/doc_images/extra.png></a>&nbsp;try (<font color="#4040ff">action</font>)</p>
   4325     <div id="extra618" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('try')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;try (<font color="#4040ff">action</font>)</p>
   4326 
   4327     <p>This phrase makes the action, which has to be named literally, take effect now. Example:</p>
   4328     <!-- START CODE "c1329" -->
   4329     <a id="c1329"></a><blockquote class="code"><p class="quoted">
   4330     Instead of entering the trapdoor, try going up.
   4331     </p></blockquote>
   4332     <!-- END CODE -->
   4333     <p>It's as if the player had typed GO UP as a command. Note that the action has to be specific:</p>
   4334     <!-- START CODE "c1330" -->
   4335     <a id="c1330"></a><blockquote class="code"><p class="quoted">
   4336     try eating something;
   4337     </p></blockquote>
   4338     <!-- END CODE -->
   4339     <p>is not allowed, since it doesn't say exactly what is to be eaten.</p>
   4340 
   4341     <p><b>See</b> &nbsp;<a href=inform:/doc101.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;7.4. 7.4. Try and try silently</p><p><b>Kind:</b> phrase action -> nothing</p>
   4342     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4343     <p class="tightin2"><a href="#" onclick="showExtra('extra620', 'plus620'); return false;"><img border=0 id="plus620" src=inform:/doc_images/extra.png></a>&nbsp;silently try (<font color="#4040ff">action</font>)</p>
   4344     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;try silently (<font color="#4040ff">action</font>)</p>
   4345     <div id="extra620" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('silently try')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;silently try (<font color="#4040ff">action</font>)</p>
   4346 
   4347     <p>This phrase makes the action, which has to be named literally, take effect now, under the &quot;silent&quot; convention which means that routine messages aren't printed. Example:</p>
   4348     <!-- START CODE "c1333" -->
   4349     <a id="c1333"></a><blockquote class="code"><p class="quoted">
   4350     try silently taking the napkin;
   4351     </p></blockquote>
   4352     <!-- END CODE -->
   4353     <p>Silence is maintained only if this new action, the taking of the napkin, is successful (so if the napkin is successfully taken, the text &quot;Taken.&quot; will not appear): if the action should fail, a suitable objection will be voiced as usual.</p>
   4354 
   4355     <p><b>See</b> &nbsp;<a href=inform:/doc101.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;7.4. 7.4. Try and try silently</p><p><b>Kind:</b> phrase action -> nothing</p>
   4356     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4357     <p class="tightin2"><a href="#" onclick="showExtra('extra621', 'plus621'); return false;"><img border=0 id="plus621" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> action is not silent<i>:</i></p>
   4358     <div id="extra621" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action is not silent')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> action is not silent<i>:</i></p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4359     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4360     <a name=A622></a><p class="in2"><b>Action requirements</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra622', 'plus622'); return false;"><img border=0 id="plus622" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> action requires a touchable noun<i>:</i></p>
   4361     <div id="extra622" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action requires a touchable noun')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> action requires a touchable noun<i>:</i></p>
   4362 
   4363     <p>This condition is true if the action being processed is one whose (first) noun is an object which needs to be touchable by the actor. For example, it's true for &quot;taking&quot;, but false for &quot;examining&quot;.</p>
   4364 
   4365     <p><b>See</b> &nbsp;<a href=inform:/doc183.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.7. 12.7. New actions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4366     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4367     <p class="tightin2"><a href="#" onclick="showExtra('extra623', 'plus623'); return false;"><img border=0 id="plus623" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> action requires a touchable second noun<i>:</i></p>
   4368     <div id="extra623" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action requires a touchable second noun')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> action requires a touchable second noun<i>:</i></p>
   4369 
   4370     <p>This condition is true if the action being processed is one whose second noun is an object which needs to be touchable by the actor. For example, it's true for &quot;putting the brick in the sack&quot;, but false for &quot;throwing the brick at the window&quot;.</p>
   4371 
   4372     <p><b>See</b> &nbsp;<a href=inform:/doc183.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.7. 12.7. New actions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4373     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4374     <p class="tightin2"><a href="#" onclick="showExtra('extra624', 'plus624'); return false;"><img border=0 id="plus624" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> action requires a carried noun<i>:</i></p>
   4375     <div id="extra624" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action requires a carried noun')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> action requires a carried noun<i>:</i></p>
   4376 
   4377     <p>This condition is true if the action being processed is one whose (first) noun is an object which needs to be carried by the actor. For example, it's true for &quot;dropping&quot;, but false for &quot;taking&quot;.</p>
   4378 
   4379     <p><b>See</b> &nbsp;<a href=inform:/doc183.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.7. 12.7. New actions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4380     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4381     <p class="tightin2"><a href="#" onclick="showExtra('extra625', 'plus625'); return false;"><img border=0 id="plus625" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> action requires a carried second noun<i>:</i></p>
   4382     <div id="extra625" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action requires a carried second noun')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> action requires a carried second noun<i>:</i></p>
   4383 
   4384     <p>This condition is true if the action being processed is one whose second noun is an object which needs to be carried by the actor.</p>
   4385 
   4386     <p><b>See</b> &nbsp;<a href=inform:/doc183.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.7. 12.7. New actions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4387     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4388     <p class="tightin2"><a href="#" onclick="showExtra('extra626', 'plus626'); return false;"><img border=0 id="plus626" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> action requires light<i>:</i></p>
   4389     <div id="extra626" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action requires light')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> action requires light<i>:</i></p>
   4390 
   4391     <p>This condition is true if the action being processed is one which can only be performed if the actor has light to see by. For example, it's true for &quot;examining&quot;, but false for &quot;dropping&quot;.</p>
   4392 
   4393     <p><b>See</b> &nbsp;<a href=inform:/doc183.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.7. 12.7. New actions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4394     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4395     <a name=A627></a><p class="in2"><b>Stop or continue</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra627', 'plus627'); return false;"><img border=0 id="plus627" src=inform:/doc_images/extra.png></a>&nbsp;stop the action</p>
   4396     <div id="extra627" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('stop the action')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;stop the action</p>
   4397 
   4398     <p>This phrase stops the current rule, stops the rulebook being worked through, and finally stops the action being processed. Example:</p>
   4399     <!-- START CODE "c1312" -->
   4400     <a id="c1312"></a><blockquote class="code"><p class="quoted">
   4401     Before taking the key:
   4402     <br />&#160;&#160;&#160;&#160;say &quot;It seems to be soldered to the keyhole.&quot;;
   4403     <br />&#160;&#160;&#160;&#160;stop the action.
   4404     </p></blockquote>
   4405     <!-- END CODE -->
   4406 
   4407     <p><b>See</b> &nbsp;<a href=inform:/doc100.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;7.3. 7.3. Before rules</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4408     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4409     <p class="tightin2"><a href="#" onclick="showExtra('extra628', 'plus628'); return false;"><img border=0 id="plus628" src=inform:/doc_images/extra.png></a>&nbsp;continue the action</p>
   4410     <div id="extra628" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('continue the action')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;continue the action</p>
   4411 
   4412     <p>This phrase ends the current rule, but in a way which keeps its rulebook going, so that the action being processed will carry on rather than being stopped. Example:</p>
   4413     <!-- START CODE "c1313" -->
   4414     <a id="c1313"></a><blockquote class="code"><p class="quoted">
   4415     Instead of taking the napkin:
   4416     <br />&#160;&#160;&#160;&#160;say &quot;(first unfolding its delicate origami swan)[command clarification break]&quot;;
   4417     <br />&#160;&#160;&#160;&#160;continue the action.
   4418     </p></blockquote>
   4419     <!-- END CODE -->
   4420     <p>An &quot;instead&quot; rule ordinarily stops the action when it finishes, so the &quot;continue the action&quot; is needed to make things carry on. (This rule would have been better written as a &quot;before&quot; rule, in fact, but it shows the idea.)</p>
   4421 
   4422     <p><b>See</b> &nbsp;<a href=inform:/doc100.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;7.3. 7.3. Before rules</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4423     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4424     <a name=A629></a><p class="in2"><b>Actions as values</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra629', 'plus629'); return false;"><img border=0 id="plus629" src=inform:/doc_images/extra.png></a>&nbsp;current action ... <i>action</i></p>
   4425     <div id="extra629" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('current action')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;current action ... <i>action</i></p>
   4426 
   4427     <p>This phrase produces the action currently being processed as a value - it literally stores the action, and remembers, if necessary, the exact wording of the player's command at the time it was stored - so that even actions arising from commands like LOOK UP X100 IN THE CODE BOOK can be stored faithfully. Examples:</p>
   4428     <!-- START CODE "c3659" -->
   4429     <a id="c3659"></a><blockquote class="code"><p class="quoted">
   4430     let the present whim be the current action;
   4431     <br />say &quot;How you would like to be [current action].&quot;;
   4432     </p></blockquote>
   4433     <!-- END CODE -->
   4434     <p>This only makes sense if an action is currently going on, so it shouldn't be used in &quot;every turn&quot; rules, for instance.</p>
   4435 
   4436     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase nothing -> action</p>
   4437     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4438     <p class="tightin2"><a href="#" onclick="showExtra('extra630', 'plus630'); return false;"><img border=0 id="plus630" src=inform:/doc_images/extra.png></a>&nbsp;action of (<font color="#4040ff">action</font>) ... <i>action</i></p>
   4439     <div id="extra630" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;action of (<font color="#4040ff">action</font>) ... <i>action</i></p>
   4440 
   4441     <p>This phrase is now seldom needed. It produces a literally typed action as a value. Example:</p>
   4442     <!-- START CODE "c3672" -->
   4443     <a id="c3672"></a><blockquote class="code"><p class="quoted">
   4444     now the best idea yet is the action of pushing the button;
   4445     </p></blockquote>
   4446     <!-- END CODE -->
   4447     <p>Nowadays in most contexts we can just type &quot;pushing the button&quot; as a value, and that will work fine, so this phrase is retained only to keep old code working.</p>
   4448 
   4449     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase action -> action</p>
   4450     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4451     <p class="tightin2"><a href="#" onclick="showExtra('extra631', 'plus631'); return false;"><img border=0 id="plus631" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">action</font>) involves (<font color="#4040ff">object</font>)<i>:</i></p>
   4452     <div id="extra631" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('involves')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">action</font>) involves (<font color="#4040ff">object</font>)<i>:</i></p>
   4453 
   4454     <p>This condition is true if the object appears as any of the actor, the noun or the second noun in the action. Example:</p>
   4455     <!-- START CODE "c3671" -->
   4456     <a id="c3671"></a><blockquote class="code"><p class="quoted">
   4457     if the current action involves Algy
   4458     </p></blockquote>
   4459     <!-- END CODE -->
   4460     <p>would be true for &quot;give revolver to Algy&quot;, &quot;Algy trying flying the Sopwith Camel&quot;, &quot;examine Algy&quot; and so on, but false for &quot;ask Raymond about secret airfield&quot;.</p>
   4461 
   4462     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase (action, object) -> truth state</p>
   4463     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4464     <p class="tightin2"><a href="#" onclick="showExtra('extra632', 'plus632'); return false;"><img border=0 id="plus632" src=inform:/doc_images/extra.png></a>&nbsp;action name part of (<font color="#4040ff">action</font>) ... <i>action name</i></p>
   4465     <div id="extra632" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('action name part of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;action name part of (<font color="#4040ff">action</font>) ... <i>action name</i></p>
   4466 
   4467     <p>This phrase produces the action name part of an action. Example: suppose the current actor is Algy, who is throwing the brick at Biggles. Then</p>
   4468     <!-- START CODE "c3667" -->
   4469     <a id="c3667"></a><blockquote class="code"><p class="quoted">
   4470     action name part of the current action = throwing it at action
   4471     </p></blockquote>
   4472     <!-- END CODE -->
   4473 
   4474     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase action -> action name</p>
   4475     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4476     <p class="tightin2"><a href="#" onclick="showExtra('extra633', 'plus633'); return false;"><img border=0 id="plus633" src=inform:/doc_images/extra.png></a>&nbsp;noun part of (<font color="#4040ff">action</font>) ... <i>object</i></p>
   4477     <div id="extra633" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('noun part of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;noun part of (<font color="#4040ff">action</font>) ... <i>object</i></p>
   4478 
   4479     <p>This phrase produces the (first) noun of an action. Example: suppose the current actor is Algy, who is throwing the brick at Biggles. Then</p>
   4480     <!-- START CODE "c3668" -->
   4481     <a id="c3668"></a><blockquote class="code"><p class="quoted">
   4482     noun part of the current action = the brick
   4483     </p></blockquote>
   4484     <!-- END CODE -->
   4485     <p>If the noun is something other than an object, this produces just &quot;nothing&quot;, the non-object.</p>
   4486 
   4487     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase action -> object</p>
   4488     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4489     <p class="tightin2"><a href="#" onclick="showExtra('extra634', 'plus634'); return false;"><img border=0 id="plus634" src=inform:/doc_images/extra.png></a>&nbsp;second noun part of (<font color="#4040ff">action</font>) ... <i>object</i></p>
   4490     <div id="extra634" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('second noun part of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;second noun part of (<font color="#4040ff">action</font>) ... <i>object</i></p>
   4491 
   4492     <p>This phrase produces the second noun of an action. Example: suppose the current actor is Algy, who is throwing the brick at Biggles. Then</p>
   4493     <!-- START CODE "c3669" -->
   4494     <a id="c3669"></a><blockquote class="code"><p class="quoted">
   4495     second noun part of the current action = Biggles
   4496     </p></blockquote>
   4497     <!-- END CODE -->
   4498     <p>If the second noun is something other than an object (for instance for the command SET DIAL TO 3417 it would be the number 3417), this produces just &quot;nothing&quot;, the non-object.</p>
   4499 
   4500     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase action -> object</p>
   4501     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4502     <p class="tightin2"><a href="#" onclick="showExtra('extra635', 'plus635'); return false;"><img border=0 id="plus635" src=inform:/doc_images/extra.png></a>&nbsp;actor part of (<font color="#4040ff">action</font>) ... <i>object</i></p>
   4503     <div id="extra635" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('actor part of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;actor part of (<font color="#4040ff">action</font>) ... <i>object</i></p>
   4504 
   4505     <p>This phrase produces the person who would be carrying out the action if it were being tried. Example: suppose the current actor is Algy, who is throwing the brick at Biggles. Then</p>
   4506     <!-- START CODE "c3670" -->
   4507     <a id="c3670"></a><blockquote class="code"><p class="quoted">
   4508     actor part of the current action = Algy
   4509     </p></blockquote>
   4510     <!-- END CODE -->
   4511 
   4512     <p><b>See</b> &nbsp;<a href=inform:/doc196.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;12.20. 12.20. Stored actions</p><p><b>Kind:</b> phrase action -> object</p>
   4513     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4514     <a name=A636></a><p class="in2"><b>Carrying out activities</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra636', 'plus636'); return false;"><img border=0 id="plus636" src=inform:/doc_images/extra.png></a>&nbsp;carry out the (<font color="#4040ff">activity</font>) activity</p>
   4515     <div id="extra636" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('carry out the ... activity')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;carry out the (<font color="#4040ff">activity</font>) activity</p>
   4516 
   4517     <p>This phrase carries out the given activity, which must be one not applying to any value. Example:</p>
   4518     <!-- START CODE "c6313" -->
   4519     <a id="c6313"></a><blockquote class="code"><p class="quoted">
   4520     carry out the assaying activity;
   4521     </p></blockquote>
   4522     <!-- END CODE -->
   4523 
   4524     <p><b>See</b> &nbsp;<a href=inform:/doc291.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.5. 18.5. New activities</p><p><b>Kind:</b> phrase activity -> nothing</p>
   4525     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4526     <p class="tightin2"><a href="#" onclick="showExtra('extra637', 'plus637'); return false;"><img border=0 id="plus637" src=inform:/doc_images/extra.png></a>&nbsp;carry out the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4527     <div id="extra637" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('carry out the ... activity with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;carry out the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4528 
   4529     <p>This phrase carries out the given activity, which must apply to a kind of value matching the one supplied. Example:</p>
   4530     <!-- START CODE "c6314" -->
   4531     <a id="c6314"></a><blockquote class="code"><p class="quoted">
   4532     carry out the analysing activity with the pitchblende;
   4533     <br />carry out the announcing activity with the score;
   4534     </p></blockquote>
   4535     <!-- END CODE -->
   4536 
   4537     <p><b>See</b> &nbsp;<a href=inform:/doc291.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.5. 18.5. New activities</p><p><b>Kind:</b> phrase (activity on Ks, K) -> nothing</p>
   4538     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4539     <p class="tightin2"><a href="#" onclick="showExtra('extra638', 'plus638'); return false;"><img border=0 id="plus638" src=inform:/doc_images/extra.png></a>&nbsp;continue the activity</p>
   4540     <div id="extra638" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('continue the activity')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;continue the activity</p>
   4541 
   4542     <p>This phrase should be used only in rules in activity rulebooks. It causes the current rule to end, but without result, so that the activity continues rather than stopping as a result of the rule. This is useful for rulebooks (like the &quot;for&quot; rulebook of an activity) where the default is that a rule does stop the activity.</p>
   4543 
   4544     <p><b>See</b> &nbsp;<a href=inform:/doc291.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.5. 18.5. New activities</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4545     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4546     <a name=A639></a><p class="in2"><b>Advanced activities</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra639', 'plus639'); return false;"><img border=0 id="plus639" src=inform:/doc_images/extra.png></a>&nbsp;begin the (<font color="#4040ff">activity</font>) activity</p>
   4547     <div id="extra639" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('begin the ... activity')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;begin the (<font color="#4040ff">activity</font>) activity</p>
   4548 
   4549     <p>This phrase causes the named activity to become active, and runs its &quot;before&quot; rulebook. The activity must be one which applies to nothing. Example:</p>
   4550     <!-- START CODE "c6378" -->
   4551     <a id="c6378"></a><blockquote class="code"><p class="quoted">
   4552     begin the assaying activity;
   4553     </p></blockquote>
   4554     <!-- END CODE -->
   4555     <p>In all cases a matching &quot;end the ... activity&quot; or else &quot;abandon the ... activity&quot; phrase must be reached.</p>
   4556 
   4557     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase activity -> nothing</p>
   4558     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4559     <p class="tightin2"><a href="#" onclick="showExtra('extra640', 'plus640'); return false;"><img border=0 id="plus640" src=inform:/doc_images/extra.png></a>&nbsp;begin the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4560     <div id="extra640" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('begin the ... activity with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;begin the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4561 
   4562     <p>This phrase causes the named activity to become active, and runs its &quot;before&quot; rulebook. The activity must be one which applies to a value of a matching kind. Example:</p>
   4563     <!-- START CODE "c6379" -->
   4564     <a id="c6379"></a><blockquote class="code"><p class="quoted">
   4565     begin the analysing activity with the pitchblende;
   4566     </p></blockquote>
   4567     <!-- END CODE -->
   4568     <p>In all cases a matching &quot;end the ... activity with ...&quot; or else &quot;abandon the ... activity with...&quot; phrase must be reached.</p>
   4569 
   4570     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase (activity on Ks, K) -> nothing</p>
   4571     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4572     <p class="tightin2"><a href="#" onclick="showExtra('extra641', 'plus641'); return false;"><img border=0 id="plus641" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> handling (<font color="#4040ff">activity on values</font>) activity<i>:</i></p>
   4573     <div id="extra641" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('handling ... activity')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> handling (<font color="#4040ff">activity on values</font>) activity<i>:</i></p>
   4574 
   4575     <p>This should be used only where the given activity has been started with &quot;begin ...&quot; and will be finished with &quot;end ...&quot;. It runs the &quot;for&quot; rules for the activity, and then comes out true if none of those for rules intervened in the handling of that activity. (The activity must be one which doesn't apply to any value.)</p>
   4576 
   4577     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase activity on values -> truth state</p>
   4578     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4579     <p class="tightin2"><a href="#" onclick="showExtra('extra642', 'plus642'); return false;"><img border=0 id="plus642" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> handling (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)<i>:</i></p>
   4580     <div id="extra642" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('handling ... activity with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> handling (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)<i>:</i></p>
   4581 
   4582     <p>This should be used only where the given activity has been started with &quot;begin ...&quot; and will be finished with &quot;end ...&quot;. It runs the &quot;for&quot; rules for the activity, and then comes out true if none of those for rules intervened in the handling of that activity. (The given value must be the one it is being applied to.)</p>
   4583 
   4584     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase (activity on Ks, K) -> truth state</p>
   4585     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4586     <p class="tightin2"><a href="#" onclick="showExtra('extra643', 'plus643'); return false;"><img border=0 id="plus643" src=inform:/doc_images/extra.png></a>&nbsp;end the (<font color="#4040ff">activity</font>) activity</p>
   4587     <div id="extra643" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('end the ... activity')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;end the (<font color="#4040ff">activity</font>) activity</p>
   4588 
   4589     <p>This phrase runs the &quot;after&quot; rulebook of the activity and then causes it to become inactive. The activity must be one which applies to nothing. Example:</p>
   4590     <!-- START CODE "c6380" -->
   4591     <a id="c6380"></a><blockquote class="code"><p class="quoted">
   4592     end the assaying activity;
   4593     </p></blockquote>
   4594     <!-- END CODE -->
   4595     <p>This must only happen to match an earlier &quot;begin the ... activity&quot; phrase.</p>
   4596 
   4597     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase activity -> nothing</p>
   4598     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4599     <p class="tightin2"><a href="#" onclick="showExtra('extra644', 'plus644'); return false;"><img border=0 id="plus644" src=inform:/doc_images/extra.png></a>&nbsp;end the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4600     <div id="extra644" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('end the ... activity with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;end the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4601 
   4602     <p>This phrase runs the &quot;after&quot; rulebook of the activity and then causes it to become inactive. The activity must be one which applies to a value of a matching kind. Example:</p>
   4603     <!-- START CODE "c6381" -->
   4604     <a id="c6381"></a><blockquote class="code"><p class="quoted">
   4605     end the analysing activity with the pitchblende;
   4606     </p></blockquote>
   4607     <!-- END CODE -->
   4608     <p>This must only happen to match an earlier &quot;begin the ... activity with...&quot; phrase.</p>
   4609 
   4610     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase (activity on Ks, K) -> nothing</p>
   4611     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4612     <p class="tightin2"><a href="#" onclick="showExtra('extra645', 'plus645'); return false;"><img border=0 id="plus645" src=inform:/doc_images/extra.png></a>&nbsp;abandon the (<font color="#4040ff">activity</font>) activity</p>
   4613     <div id="extra645" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('abandon the ... activity')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abandon the (<font color="#4040ff">activity</font>) activity</p>
   4614 
   4615     <p>This phrase ends an activity at once (without consulting any further rulebooks, including its &quot;after&quot; rulebook). It can only be used with an activity which has had its &quot;begin&quot; but not yet its &quot;end&quot; phrase; it is a drastic remedy best taken only if it is clear that circumstances have changed so that the activity now seems inappropriate. It must not be used during one of the rules for the activity: it can only be used between the begin and for stages, or between the for and end stages.</p>
   4616     <!-- START CODE "c6385" -->
   4617     <a id="c6385"></a><blockquote class="code"><p class="quoted">
   4618     abandon the assaying activity;
   4619     </p></blockquote>
   4620     <!-- END CODE -->
   4621 
   4622     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase activity -> nothing</p>
   4623     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4624     <p class="tightin2"><a href="#" onclick="showExtra('extra646', 'plus646'); return false;"><img border=0 id="plus646" src=inform:/doc_images/extra.png></a>&nbsp;abandon the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4625     <div id="extra646" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('abandon the ... activity with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abandon the (<font color="#4040ff">activity on values</font>) activity with (<font color="#4040ff">value</font>)</p>
   4626 
   4627     <p>This phrase ends an activity at once (without consulting any further rulebooks, including its &quot;after&quot; rulebook). It can only be used with an activity which has had its &quot;begin&quot; but not yet its &quot;end&quot; phrase; it is a drastic remedy best taken only if it is clear that circumstances have changed so that the activity now seems inappropriate. It must not be used during one of the rules for the activity: it can only be used between the begin and for stages, or between the for and end stages.</p>
   4628     <!-- START CODE "c6386" -->
   4629     <a id="c6386"></a><blockquote class="code"><p class="quoted">
   4630     abandon the analysing activity with the pitchblende;
   4631     </p></blockquote>
   4632     <!-- END CODE -->
   4633 
   4634     <p><b>See</b> &nbsp;<a href=inform:/doc293.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.7. 18.7. Beginning and ending activities manually</p><p><b>Kind:</b> phrase (activity on Ks, K) -> nothing</p>
   4635     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4636     <a name=A647></a><p class="in2"><b>Following rules</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra647', 'plus647'); return false;"><img border=0 id="plus647" src=inform:/doc_images/extra.png></a>&nbsp;follow (<font color="#4040ff">rule</font>)</p>
   4637     <div id="extra647" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('follow')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;follow (<font color="#4040ff">rule</font>)</p>
   4638 
   4639     <p>This phrase causes the rule to be obeyed immediately (rather than simply at predetermined times such as when a particular action is being tried, or at the end of every turn, and such). Example:</p>
   4640     <!-- START CODE "c7579" -->
   4641     <a id="c7579"></a><blockquote class="code"><p class="quoted">
   4642     follow the advance time rule;
   4643     <br />follow the appraisal rulebook;
   4644     </p></blockquote>
   4645     <!-- END CODE -->
   4646 
   4647     <p><b>See</b> &nbsp;<a href=inform:/doc334.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.8. 19.8. New rulebooks</p><p><b>Kind:</b> phrase rule -> nothing</p>
   4648     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4649     <p class="tightin2"><a href="#" onclick="showExtra('extra648', 'plus648'); return false;"><img border=0 id="plus648" src=inform:/doc_images/extra.png></a>&nbsp;follow (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>)</p>
   4650     <div id="extra648" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('follow ... for')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;follow (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>)</p>
   4651 
   4652     <p>This phrase causes the rule to be obeyed immediately (rather than simply at predetermined times such as when a particular action is being tried, or at the end of every turn, and such), and applies it to the value given, which must be of a matching kind. Example:</p>
   4653     <!-- START CODE "c7859" -->
   4654     <a id="c7859"></a><blockquote class="code"><p class="quoted">
   4655     follow the reaching inside rulebook for the electrified cage;
   4656     </p></blockquote>
   4657     <!-- END CODE -->
   4658 
   4659     <p><b>See</b> &nbsp;<a href=inform:/doc335.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.9. 19.9. Basis of a rulebook</p><p><b>Kind:</b> phrase (Ks based rule producing values, K) -> nothing</p>
   4660     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4661     <p class="tightin2"><a href="#" onclick="showExtra('extra649', 'plus649'); return false;"><img border=0 id="plus649" src=inform:/doc_images/extra.png></a>&nbsp;follow (<font color="#4040ff">nothing based rule</font>)</p>
   4662     <div id="extra649" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('follow')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;follow (<font color="#4040ff">nothing based rule</font>)</p>
   4663 
   4664     <p>This phrase causes the rule to be obeyed immediately (rather than simply at predetermined times such as when a particular action is being tried, or at the end of every turn, and such). Example:</p>
   4665     <!-- START CODE "c7579" -->
   4666     <a id="c7579"></a><blockquote class="code"><p class="quoted">
   4667     follow the advance time rule;
   4668     <br />follow the appraisal rulebook;
   4669     </p></blockquote>
   4670     <!-- END CODE -->
   4671 
   4672     <p><b>See</b> &nbsp;<a href=inform:/doc334.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.8. 19.8. New rulebooks</p><p><b>Kind:</b> phrase nothing based rule -> nothing</p>
   4673     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4674     <p class="tightin2"><a href="#" onclick="showExtra('extra650', 'plus650'); return false;"><img border=0 id="plus650" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) produced by (<font color="#4040ff">rule producing values</font>) ... <i>value</i></p>
   4675     <div id="extra650" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('produced by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) produced by (<font color="#4040ff">rule producing values</font>) ... <i>value</i></p>
   4676 
   4677     <p>This phrase is used to follow the named rule, and to collect the resulting value.</p>
   4678 
   4679     <p><b>See</b> &nbsp;<a href=inform:/doc339.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.13. 19.13. Rulebooks producing values</p><p><b>Kind:</b> phrase (K, rule producing Ks) -> K</p>
   4680     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4681     <p class="tightin2"><a href="#" onclick="showExtra('extra651', 'plus651'); return false;"><img border=0 id="plus651" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) produced by (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>) ... <i>value</i></p>
   4682     <div id="extra651" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('produced by ... for')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) produced by (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>) ... <i>value</i></p>
   4683 
   4684     <p>This phrase is used to follow the named rule based on the value given, and to collect the resulting value.</p>
   4685 
   4686     <p><b>See</b> &nbsp;<a href=inform:/doc339.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.13. 19.13. Rulebooks producing values</p><p><b>Kind:</b> phrase (L, Ks based rule producing Ls, K) -> L</p>
   4687     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4688     <p class="tightin2"><a href="#" onclick="showExtra('extra652', 'plus652'); return false;"><img border=0 id="plus652" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#E00060">name of kind</font>) produced by (<font color="#4040ff">nothing based rule producing values</font>) ... <i>value</i></p>
   4689     <div id="extra652" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('produced by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#E00060">name of kind</font>) produced by (<font color="#4040ff">nothing based rule producing values</font>) ... <i>value</i></p>
   4690 
   4691     <p>This phrase is used to follow the named rule, and to collect the resulting value.</p>
   4692 
   4693     <p><b>See</b> &nbsp;<a href=inform:/doc339.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.13. 19.13. Rulebooks producing values</p><p><b>Kind:</b> phrase (K, nothing based rule producing Ks) -> K</p>
   4694     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4695     <p class="tightin2"><a href="#" onclick="showExtra('extra653', 'plus653'); return false;"><img border=0 id="plus653" src=inform:/doc_images/extra.png></a>&nbsp;abide by (<font color="#4040ff">rule</font>)</p>
   4696     <div id="extra653" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('abide by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abide by (<font color="#4040ff">rule</font>)</p>
   4697 
   4698     <p>This phrase applies the given rule, and makes its result the result of the present rule. If the rule being abided by succeeds or fails then the original rule also stops, at once and without going on to any further instructions. Example:</p>
   4699     <!-- START CODE "c8032" -->
   4700     <a id="c8032"></a><blockquote class="code"><p class="quoted">
   4701     The omnibus rule:
   4702     <br />&#160;&#160;&#160;&#160;abide by the first rule;
   4703     <br />&#160;&#160;&#160;&#160;abide by the second rule;
   4704     <br />&#160;&#160;&#160;&#160;abide by the third rule;
   4705     <br />&#160;&#160;&#160;&#160;abide by the fourth rule.
   4706     </p></blockquote>
   4707     <!-- END CODE -->
   4708     <p>This duplicates the effect of a rulebook of four rules: the &quot;omnibus rule&quot; tries each in turn, and stops as soon as any of them stop.</p>
   4709 
   4710     <p><b>See</b> &nbsp;<a href=inform:/doc340.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.14. 19.14. Abide by</p><p><b>Kind:</b> phrase rule -> nothing</p>
   4711     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4712     <p class="tightin2"><a href="#" onclick="showExtra('extra654', 'plus654'); return false;"><img border=0 id="plus654" src=inform:/doc_images/extra.png></a>&nbsp;abide by (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>)</p>
   4713     <div id="extra654" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('abide by ... for')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abide by (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>)</p>
   4714 
   4715     <p>This phrase applies the given rule to the given value, and makes its result the result of the present rule. If the rule being abided by succeeds or fails then the original rule also stops, at once and without going on to any further instructions.</p>
   4716 
   4717     <p><b>See</b> &nbsp;<a href=inform:/doc340.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.14. 19.14. Abide by</p><p><b>Kind:</b> phrase (Ks based rule producing values, K) -> nothing</p>
   4718     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4719     <p class="tightin2"><a href="#" onclick="showExtra('extra655', 'plus655'); return false;"><img border=0 id="plus655" src=inform:/doc_images/extra.png></a>&nbsp;abide by (<font color="#4040ff">nothing based rule</font>)</p>
   4720     <div id="extra655" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('abide by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;abide by (<font color="#4040ff">nothing based rule</font>)</p>
   4721 
   4722     <p>This phrase applies the given rule, and makes its result the result of the present rule. If the rule being abided by succeeds or fails then the original rule also stops, at once and without going on to any further instructions. Example:</p>
   4723     <!-- START CODE "c8032" -->
   4724     <a id="c8032"></a><blockquote class="code"><p class="quoted">
   4725     The omnibus rule:
   4726     <br />&#160;&#160;&#160;&#160;abide by the first rule;
   4727     <br />&#160;&#160;&#160;&#160;abide by the second rule;
   4728     <br />&#160;&#160;&#160;&#160;abide by the third rule;
   4729     <br />&#160;&#160;&#160;&#160;abide by the fourth rule.
   4730     </p></blockquote>
   4731     <!-- END CODE -->
   4732     <p>This duplicates the effect of a rulebook of four rules: the &quot;omnibus rule&quot; tries each in turn, and stops as soon as any of them stop.</p>
   4733 
   4734     <p><b>See</b> &nbsp;<a href=inform:/doc340.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.14. 19.14. Abide by</p><p><b>Kind:</b> phrase nothing based rule -> nothing</p>
   4735     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4736     <p class="tightin2"><a href="#" onclick="showExtra('extra658', 'plus658'); return false;"><img border=0 id="plus658" src=inform:/doc_images/extra.png></a>&nbsp;anonymously abide by (<font color="#4040ff">rule</font>)</p>
   4737     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;anonymously abide by (<font color="#4040ff">values based rule producing values</font>) for (<font color="#4040ff">value</font>)</p>
   4738     <p class="tightin2"><img border=0 src=inform:/doc_images/noextra.png>&nbsp;anonymously abide by (<font color="#4040ff">nothing based rule</font>)</p>
   4739     <div id="extra658" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('anonymously abide by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;anonymously abide by (<font color="#4040ff">rule</font>)</p>
   4740 
   4741     <p>This phrase applies the given rule, and makes its result the result of the present rule. If the rule being abided by succeeds or fails then the original rule also stops, at once and without going on to any further instructions. However, the rule deemed to have decided the outcome is the one abided by, not the one doing the abiding.</p>
   4742 
   4743     <p><b>See</b> &nbsp;<a href=inform:/doc340.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.14. 19.14. Abide by</p><p><b>Kind:</b> phrase rule -> nothing</p>
   4744     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4745     <a name=A659></a><p class="in2"><b>Success and failure</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra659', 'plus659'); return false;"><img border=0 id="plus659" src=inform:/doc_images/extra.png></a>&nbsp;make no decision</p>
   4746     <div id="extra659" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('make no decision')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;make no decision</p>
   4747 
   4748     <p>This causes the current rule to end immediately, but with no outcome. That means the rulebook being worked through will continue to run on, beginning with the next rule.</p>
   4749 
   4750     <p><b>See</b> &nbsp;<a href=inform:/doc337.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.11. 19.11. Success and failure</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4751     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4752     <p class="tightin2"><a href="#" onclick="showExtra('extra660', 'plus660'); return false;"><img border=0 id="plus660" src=inform:/doc_images/extra.png></a>&nbsp;rule succeeds</p>
   4753     <div id="extra660" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rule succeeds')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rule succeeds</p>
   4754 
   4755     <p>This causes the current rule to end immediately, with its outcome considered to be a success. The rulebook being worked through also ends, and is also a success.</p>
   4756 
   4757     <p><b>See</b> &nbsp;<a href=inform:/doc337.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.11. 19.11. Success and failure</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4758     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4759     <p class="tightin2"><a href="#" onclick="showExtra('extra661', 'plus661'); return false;"><img border=0 id="plus661" src=inform:/doc_images/extra.png></a>&nbsp;rule fails</p>
   4760     <div id="extra661" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rule fails')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rule fails</p>
   4761 
   4762     <p>This causes the current rule to end immediately, with its outcome considered to be a failure. The rulebook being worked through also ends, and is also a failure.</p>
   4763 
   4764     <p><b>See</b> &nbsp;<a href=inform:/doc337.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.11. 19.11. Success and failure</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4765     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4766     <p class="tightin2"><a href="#" onclick="showExtra('extra662', 'plus662'); return false;"><img border=0 id="plus662" src=inform:/doc_images/extra.png></a>&nbsp;rule succeeds with result (<font color="#4040ff">value</font>)</p>
   4767     <div id="extra662" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rule succeeds with result')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;rule succeeds with result (<font color="#4040ff">value</font>)</p>
   4768 
   4769     <p>This phrase can only be used in a rule which produces a value, and the value given must be of the right kind. It causes the current rule to finish immediately, to succeed, and to produce the value given.</p>
   4770 
   4771     <p><b>See</b> &nbsp;<a href=inform:/doc339.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.13. 19.13. Rulebooks producing values</p><p><b>Kind:</b> phrase value -> nothing</p>
   4772     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4773     <p class="tightin2"><a href="#" onclick="showExtra('extra663', 'plus663'); return false;"><img border=0 id="plus663" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> rule succeeded<i>:</i></p>
   4774     <div id="extra663" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rule succeeded')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> rule succeeded<i>:</i></p>
   4775 
   4776     <p>This condition is true if the most recently followed rule or rulebook ended in success. Example:</p>
   4777     <!-- START CODE "c7889" -->
   4778     <a id="c7889"></a><blockquote class="code"><p class="quoted">
   4779     follow the hypothetical clever rule;
   4780     <br />if rule succeeded:
   4781     <br />&#160;&#160;&#160;&#160;...
   4782     </p></blockquote>
   4783     <!-- END CODE -->
   4784 
   4785     <p><b>See</b> &nbsp;<a href=inform:/doc337.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.11. 19.11. Success and failure</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4786     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4787     <p class="tightin2"><a href="#" onclick="showExtra('extra664', 'plus664'); return false;"><img border=0 id="plus664" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> rule failed<i>:</i></p>
   4788     <div id="extra664" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('rule failed')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> rule failed<i>:</i></p>
   4789 
   4790     <p>This condition is true if the most recently followed rule or rulebook ended in failure. Example:</p>
   4791     <!-- START CODE "c7890" -->
   4792     <a id="c7890"></a><blockquote class="code"><p class="quoted">
   4793     follow the hypothetical clever rule;
   4794     <br />if rule failed:
   4795     <br />&#160;&#160;&#160;&#160;...
   4796     </p></blockquote>
   4797     <!-- END CODE -->
   4798     <p>Note that this is not the opposite of &quot;rule succeeded&quot;, because there's a third possibility: that it ended with no outcome.</p>
   4799 
   4800     <p><b>See</b> &nbsp;<a href=inform:/doc337.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.11. 19.11. Success and failure</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4801     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4802     <p class="tightin2"><a href="#" onclick="showExtra('extra665', 'plus665'); return false;"><img border=0 id="plus665" src=inform:/doc_images/extra.png></a>&nbsp;outcome of the rulebook ... <i>rulebook outcome</i></p>
   4803     <div id="extra665" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('outcome of the rulebook')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;outcome of the rulebook ... <i>rulebook outcome</i></p>
   4804 
   4805     <p>This phrase produces the (named) outcome of the phrase most recently followed. Example:</p>
   4806     <!-- START CODE "c7923" -->
   4807     <a id="c7923"></a><blockquote class="code"><p class="quoted">
   4808     follow the audibility rules;
   4809     <br />if the outcome of the rulebook is the absolute silence outcome:
   4810     <br />&#160;&#160;&#160;&#160;say &quot;You could hear a pin drop in here.&quot;
   4811     </p></blockquote>
   4812     <!-- END CODE -->
   4813 
   4814     <p><b>See</b> &nbsp;<a href=inform:/doc338.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;19.12. 19.12. Named outcomes</p><p><b>Kind:</b> phrase nothing -> rulebook outcome</p>
   4815     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4816     <p><hr><p class="in1"><b>Model world</b></p><a name=A666></a><p class="in2"><b>Ending the story</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra666', 'plus666'); return false;"><img border=0 id="plus666" src=inform:/doc_images/extra.png></a>&nbsp;end the story</p>
   4817     <div id="extra666" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('end the story')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;end the story</p>
   4818 
   4819     <p>This phrase ends the story at the next opportunity (typically as soon as the current rule ends), with the closing message &quot;The End.&quot; The end is not considered final.</p>
   4820 
   4821     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4822     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4823     <p class="tightin2"><a href="#" onclick="showExtra('extra667', 'plus667'); return false;"><img border=0 id="plus667" src=inform:/doc_images/extra.png></a>&nbsp;end the story finally</p>
   4824     <div id="extra667" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('end the story finally')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;end the story finally</p>
   4825 
   4826     <p>This phrase ends the story at the next opportunity (typically as soon as the current rule ends), with the closing message &quot;The End.&quot; The end is considered final, and any hidden menu options will be revealed.</p>
   4827 
   4828     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4829     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4830     <p class="tightin2"><a href="#" onclick="showExtra('extra668', 'plus668'); return false;"><img border=0 id="plus668" src=inform:/doc_images/extra.png></a>&nbsp;end the story saying (<font color="#4040ff">text</font>)</p>
   4831     <div id="extra668" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('end the story saying')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;end the story saying (<font color="#4040ff">text</font>)</p>
   4832 
   4833     <p>This phrase ends the story at the next opportunity (typically as soon as the current rule ends), with the closing message given in the text. The end is not considered final. Example:</p>
   4834     <!-- START CODE "c2086" -->
   4835     <a id="c2086"></a><blockquote class="code"><p class="quoted">
   4836     end the story saying &quot;You have been stymied&quot;
   4837     </p></blockquote>
   4838     <!-- END CODE -->
   4839 
   4840     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase text -> nothing</p>
   4841     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4842     <p class="tightin2"><a href="#" onclick="showExtra('extra669', 'plus669'); return false;"><img border=0 id="plus669" src=inform:/doc_images/extra.png></a>&nbsp;end the story finally saying (<font color="#4040ff">text</font>)</p>
   4843     <div id="extra669" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('end the story finally saying')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;end the story finally saying (<font color="#4040ff">text</font>)</p>
   4844 
   4845     <p>This phrase ends the story at the next opportunity (typically as soon as the current rule ends), with the closing message given in the text. The end is considered final, and any hidden menu options will be revealed. Example:</p>
   4846     <!-- START CODE "c2087" -->
   4847     <a id="c2087"></a><blockquote class="code"><p class="quoted">
   4848     end the story finally saying &quot;You have defeated Sauron&quot;
   4849     </p></blockquote>
   4850     <!-- END CODE -->
   4851 
   4852     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase text -> nothing</p>
   4853     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4854     <p class="tightin2"><a href="#" onclick="showExtra('extra670', 'plus670'); return false;"><img border=0 id="plus670" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> story has ended<i>:</i></p>
   4855     <div id="extra670" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('story has ended')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> story has ended<i>:</i></p>
   4856 
   4857     <p>This condition is true if an end has been declared using one of the &quot;end the story...&quot; phrases.</p>
   4858 
   4859     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4860     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4861     <p class="tightin2"><a href="#" onclick="showExtra('extra671', 'plus671'); return false;"><img border=0 id="plus671" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> story has ended finally<i>:</i></p>
   4862     <div id="extra671" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('story has ended finally')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> story has ended finally<i>:</i></p>
   4863 
   4864     <p>This condition is true if an end has been declared using one of the &quot;end the story finally...&quot; phrases, so that an ending has been reached which the author feels is a completion of the player's experience.</p>
   4865 
   4866     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4867     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4868     <p class="tightin2"><a href="#" onclick="showExtra('extra672', 'plus672'); return false;"><img border=0 id="plus672" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> story has not ended<i>:</i></p>
   4869     <div id="extra672" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('story has not ended')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> story has not ended<i>:</i></p>
   4870 
   4871     <p>This condition is true if no end has been declared using one of the &quot;end the story...&quot; phrases.</p>
   4872 
   4873     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4874     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4875     <p class="tightin2"><a href="#" onclick="showExtra('extra673', 'plus673'); return false;"><img border=0 id="plus673" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> story has not ended finally<i>:</i></p>
   4876     <div id="extra673" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('story has not ended finally')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> story has not ended finally<i>:</i></p>
   4877 
   4878     <p>This condition is true if an end has been declared using one of the &quot;end the story...&quot; phrases, but not &quot;finally&quot;, so the author feels that the player can get further experience by playing again and trying different approaches.</p>
   4879 
   4880     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   4881     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4882     <p class="tightin2"><a href="#" onclick="showExtra('extra674', 'plus674'); return false;"><img border=0 id="plus674" src=inform:/doc_images/extra.png></a>&nbsp;resume the story</p>
   4883     <div id="extra674" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('resume the story')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;resume the story</p>
   4884 
   4885     <p>This phrase causes an ended story to resume exactly as if no &quot;end the story...&quot; phrase had been used. Example:</p>
   4886     <!-- START CODE "c2091" -->
   4887     <a id="c2091"></a><blockquote class="code"><p class="quoted">
   4888     When play ends:
   4889     <br />&#160;&#160;&#160;&#160;if the story has not ended finally:
   4890     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;say &quot;Oh dear. Still, here's another chance.&quot;;
   4891     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;resume the story.
   4892     </p></blockquote>
   4893     <!-- END CODE -->
   4894     <p>The phrase is likely to be sensible only as part of a &quot;when play ends&quot; rule. Other traditional uses include giving the player three lives, as in an old-school arcade machine.</p>
   4895 
   4896     <p><b>See</b> &nbsp;<a href=inform:/doc138.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.4. 9.4. When play ends</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   4897     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4898     <a name=A675></a><p class="in2"><b>Times of day</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra675', 'plus675'); return false;"><img border=0 id="plus675" src=inform:/doc_images/extra.png></a>&nbsp;minutes part of (<font color="#4040ff">time</font>) ... <i>number</i></p>
   4899     <div id="extra675" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('minutes part of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;minutes part of (<font color="#4040ff">time</font>) ... <i>number</i></p>
   4900 
   4901     <p>This phrase converts a time to a number, then takes the result mod 60, which in effect produces the number of minutes after the hours are thrown away. Example:</p>
   4902     <!-- START CODE "c2211" -->
   4903     <a id="c2211"></a><blockquote class="code"><p class="quoted">
   4904     minutes part of 12:41 PM
   4905     </p></blockquote>
   4906     <!-- END CODE -->
   4907     <p>produces 41.</p>
   4908 
   4909     <p><b>See</b> &nbsp;<a href=inform:/doc144.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.10. 9.10. Calculating times</p><p><b>Kind:</b> phrase time -> number</p>
   4910     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4911     <p class="tightin2"><a href="#" onclick="showExtra('extra676', 'plus676'); return false;"><img border=0 id="plus676" src=inform:/doc_images/extra.png></a>&nbsp;hours part of (<font color="#4040ff">time</font>) ... <i>number</i></p>
   4912     <div id="extra676" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hours part of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;hours part of (<font color="#4040ff">time</font>) ... <i>number</i></p>
   4913 
   4914     <p>This phrase converts a time to a number, then divides the result by 60, which in effect produces the number of hours after minutes are thrown away. Example:</p>
   4915     <!-- START CODE "c2212" -->
   4916     <a id="c2212"></a><blockquote class="code"><p class="quoted">
   4917     hours part of 8:21 AM
   4918     </p></blockquote>
   4919     <!-- END CODE -->
   4920     <p>produces 8.</p>
   4921 
   4922     <p><b>See</b> &nbsp;<a href=inform:/doc144.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.10. 9.10. Calculating times</p><p><b>Kind:</b> phrase time -> number</p>
   4923     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4924     <p class="tightin2"><a href="#" onclick="showExtra('extra677', 'plus677'); return false;"><img border=0 id="plus677" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">time</font>) is before (<font color="#4040ff">time</font>)<i>:</i></p>
   4925     <div id="extra677" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('is before')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">time</font>) is before (<font color="#4040ff">time</font>)<i>:</i></p>
   4926 
   4927     <p>This condition is true if the first time occurs earlier in the day than the second. In recognition of the fact that very few stories begin before 4 AM, whereas many run on past midnight, the start of the day is taken to be 4 AM: thus 3:59 AM is after 11:10 PM, but 4:04 AM is before it.</p>
   4928 
   4929     <p><b>See</b> &nbsp;<a href=inform:/doc143.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.9. 9.9. Comparing and shifting times</p><p><b>Kind:</b> phrase (time, time) -> truth state</p>
   4930     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4931     <p class="tightin2"><a href="#" onclick="showExtra('extra678', 'plus678'); return false;"><img border=0 id="plus678" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">time</font>) is after (<font color="#4040ff">time</font>)<i>:</i></p>
   4932     <div id="extra678" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('is after')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">time</font>) is after (<font color="#4040ff">time</font>)<i>:</i></p>
   4933 
   4934     <p>This condition is true if the first time occurs later in the day than the second. In recognition of the fact that very few stories begin before 4 AM, whereas many run on past midnight, the start of the day is taken to be 4 AM: thus 3:59 AM is after 11:10 PM, but 4:04 AM is before it.</p>
   4935 
   4936     <p><b>See</b> &nbsp;<a href=inform:/doc143.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.9. 9.9. Comparing and shifting times</p><p><b>Kind:</b> phrase (time, time) -> truth state</p>
   4937     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4938     <p class="tightin2"><a href="#" onclick="showExtra('extra679', 'plus679'); return false;"><img border=0 id="plus679" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">time</font>) before (<font color="#4040ff">time</font>) ... <i>time</i></p>
   4939     <div id="extra679" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('before')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">time</font>) before (<font color="#4040ff">time</font>) ... <i>time</i></p>
   4940 
   4941     <p>This phrase produces a time earlier by the amount given, keeping within the 24 hour clock. Example:</p>
   4942     <!-- START CODE "c2209" -->
   4943     <a id="c2209"></a><blockquote class="code"><p class="quoted">
   4944     7 hours before 5:30 AM
   4945     </p></blockquote>
   4946     <!-- END CODE -->
   4947     <p>produces 10:30 PM.</p>
   4948 
   4949     <p><b>See</b> &nbsp;<a href=inform:/doc143.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.9. 9.9. Comparing and shifting times</p><p><b>Kind:</b> phrase (time, time) -> time</p>
   4950     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4951     <p class="tightin2"><a href="#" onclick="showExtra('extra680', 'plus680'); return false;"><img border=0 id="plus680" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">time</font>) after (<font color="#4040ff">time</font>) ... <i>time</i></p>
   4952     <div id="extra680" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('after')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">time</font>) after (<font color="#4040ff">time</font>) ... <i>time</i></p>
   4953 
   4954     <p>This phrase produces a time later by the amount given, keeping within the 24 hour clock. Example:</p>
   4955     <!-- START CODE "c2210" -->
   4956     <a id="c2210"></a><blockquote class="code"><p class="quoted">
   4957     9 hours after 11 AM
   4958     </p></blockquote>
   4959     <!-- END CODE -->
   4960     <p>produces 8 PM.</p>
   4961 
   4962     <p><b>See</b> &nbsp;<a href=inform:/doc143.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.9. 9.9. Comparing and shifting times</p><p><b>Kind:</b> phrase (time, time) -> time</p>
   4963     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4964     <a name=A681></a><p class="in2"><b>Durations</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra681', 'plus681'); return false;"><img border=0 id="plus681" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">number</font>) minutes ... <i>time</i></p>
   4965     <div id="extra681" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('minutes')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">number</font>) minutes ... <i>time</i></p>
   4966 
   4967     <p>This phrase converts numbers into lengths of time. Example:</p>
   4968     <!-- START CODE "c2205" -->
   4969     <a id="c2205"></a><blockquote class="code"><p class="quoted">
   4970     15 minutes
   4971     </p></blockquote>
   4972     <!-- END CODE -->
   4973     <p>Because it's a phrase, not just a notation for writing constants down, the number doesn't have to be given literally:</p>
   4974     <!-- START CODE "c2206" -->
   4975     <a id="c2206"></a><blockquote class="code"><p class="quoted">
   4976     let X be 5;
   4977     <br />if the player is in the Slow Room, now X is 10;
   4978     <br />let deadline be the time of day plus X minutes;
   4979     </p></blockquote>
   4980     <!-- END CODE -->
   4981     <p>Note that lengths of time can't exceed 1440 minutes.</p>
   4982 
   4983     <p><b>See</b> &nbsp;<a href=inform:/doc142.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.8. 9.8. Approximate times, lengths of time</p><p><b>Kind:</b> phrase number -> time</p>
   4984     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4985     <p class="tightin2"><a href="#" onclick="showExtra('extra682', 'plus682'); return false;"><img border=0 id="plus682" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">number</font>) hours ... <i>time</i></p>
   4986     <div id="extra682" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('hours')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">number</font>) hours ... <i>time</i></p>
   4987 
   4988     <p>This phrase converts numbers into lengths of time. Example:</p>
   4989     <!-- START CODE "c2207" -->
   4990     <a id="c2207"></a><blockquote class="code"><p class="quoted">
   4991     10 hours
   4992     </p></blockquote>
   4993     <!-- END CODE -->
   4994     <p>Note that lengths of time can't exceed 24 hours.</p>
   4995 
   4996     <p><b>See</b> &nbsp;<a href=inform:/doc142.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.8. 9.8. Approximate times, lengths of time</p><p><b>Kind:</b> phrase number -> time</p>
   4997     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   4998     <a name=A683></a><p class="in2"><b>Timed events</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra683', 'plus683'); return false;"><img border=0 id="plus683" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">rule</font>) in (<font color="#4040ff">number</font>) turn<font color="#808080">/turns</font> from now</p>
   4999     <div id="extra683" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in ... turn from now')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">rule</font>) in (<font color="#4040ff">number</font>) turn<font color="#808080">/turns</font> from now</p>
   5000 
   5001     <p>This phrase causes the given rule to be run at a given number of turns after the current one. Example:</p>
   5002     <!-- START CODE "c2220" -->
   5003     <a id="c2220"></a><blockquote class="code"><p class="quoted">
   5004     the egg-timer clucks in four turns from now;
   5005     </p></blockquote>
   5006     <!-- END CODE -->
   5007 
   5008     <p><b>See</b> &nbsp;<a href=inform:/doc145.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.11. 9.11. Future events</p><p><b>Kind:</b> phrase (rule, number) -> nothing</p>
   5009     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5010     <p class="tightin2"><a href="#" onclick="showExtra('extra684', 'plus684'); return false;"><img border=0 id="plus684" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">rule</font>) at (<font color="#4040ff">time</font>)</p>
   5011     <div id="extra684" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('at')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">rule</font>) at (<font color="#4040ff">time</font>)</p>
   5012 
   5013     <p>This phrase causes the given rule to be run at a given time of day. Example:</p>
   5014     <!-- START CODE "c2221" -->
   5015     <a id="c2221"></a><blockquote class="code"><p class="quoted">
   5016     the egg-timer clucks at 11:35 AM;
   5017     </p></blockquote>
   5018     <!-- END CODE -->
   5019 
   5020     <p><b>See</b> &nbsp;<a href=inform:/doc145.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.11. 9.11. Future events</p><p><b>Kind:</b> phrase (rule, time) -> nothing</p>
   5021     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5022     <p class="tightin2"><a href="#" onclick="showExtra('extra685', 'plus685'); return false;"><img border=0 id="plus685" src=inform:/doc_images/extra.png></a>&nbsp;(<font color="#4040ff">rule</font>) in (<font color="#4040ff">time</font>) from now</p>
   5023     <div id="extra685" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in ... from now')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;(<font color="#4040ff">rule</font>) in (<font color="#4040ff">time</font>) from now</p>
   5024 
   5025     <p>This phrase causes the given rule to be run at a given time offset from the current time of day. Example:</p>
   5026     <!-- START CODE "c2219" -->
   5027     <a id="c2219"></a><blockquote class="code"><p class="quoted">
   5028     the egg-timer clucks in 18 minutes from now;
   5029     </p></blockquote>
   5030     <!-- END CODE -->
   5031 
   5032     <p><b>See</b> &nbsp;<a href=inform:/doc145.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;9.11. 9.11. Future events</p><p><b>Kind:</b> phrase (rule, time) -> nothing</p>
   5033     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5034     <a name=A686></a><p class="in2"><b>Scenes</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra686', 'plus686'); return false;"><img border=0 id="plus686" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has happened<i>:</i></p>
   5035     <div id="extra686" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('has happened')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has happened<i>:</i></p>
   5036 
   5037     <p>This condition is true if the given scene has both begun and ended.</p>
   5038 
   5039     <p><b>See</b> &nbsp;<a href=inform:/doc153.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.4. 10.4. During scenes</p><p><b>Kind:</b> phrase scene -> truth state</p>
   5040     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5041     <p class="tightin2"><a href="#" onclick="showExtra('extra687', 'plus687'); return false;"><img border=0 id="plus687" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has not happened<i>:</i></p>
   5042     <div id="extra687" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('has not happened')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has not happened<i>:</i></p>
   5043 
   5044     <p>This condition is true if the given scene has not ended (or never started).</p>
   5045 
   5046     <p><b>See</b> &nbsp;<a href=inform:/doc153.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.4. 10.4. During scenes</p><p><b>Kind:</b> phrase scene -> truth state</p>
   5047     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5048     <p class="tightin2"><a href="#" onclick="showExtra('extra688', 'plus688'); return false;"><img border=0 id="plus688" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has ended<i>:</i></p>
   5049     <div id="extra688" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('has ended')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has ended<i>:</i></p>
   5050 
   5051     <p>This condition is true if the given scene ended at least once.</p>
   5052 
   5053     <p><b>See</b> &nbsp;<a href=inform:/doc153.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.4. 10.4. During scenes</p><p><b>Kind:</b> phrase scene -> truth state</p>
   5054     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5055     <p class="tightin2"><a href="#" onclick="showExtra('extra689', 'plus689'); return false;"><img border=0 id="plus689" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has not ended<i>:</i></p>
   5056     <div id="extra689" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('has not ended')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">scene</font>) has not ended<i>:</i></p>
   5057 
   5058     <p>This condition is true if the given scene has never ended.</p>
   5059 
   5060     <p><b>See</b> &nbsp;<a href=inform:/doc153.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.4. 10.4. During scenes</p><p><b>Kind:</b> phrase scene -> truth state</p>
   5061     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5062     <a name=A690></a><p class="in2"><b>Timing of scenes</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra690', 'plus690'); return false;"><img border=0 id="plus690" src=inform:/doc_images/extra.png></a>&nbsp;time since (<font color="#4040ff">scene</font>) began ... <i>time</i></p>
   5063     <div id="extra690" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('time since ... began')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;time since (<font color="#4040ff">scene</font>) began ... <i>time</i></p>
   5064 
   5065     <p>This phrase produces the time since the named scene began, which only makes sense, of course, if it has indeed begun. Example:</p>
   5066     <!-- START CODE "c2408" -->
   5067     <a id="c2408"></a><blockquote class="code"><p class="quoted">
   5068     time since Entire Game began
   5069     </p></blockquote>
   5070     <!-- END CODE -->
   5071 
   5072     <p><b>See</b> &nbsp;<a href=inform:/doc152.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.3. 10.3. Using the Scene index</p><p><b>Kind:</b> phrase scene -> time</p>
   5073     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5074     <p class="tightin2"><a href="#" onclick="showExtra('extra691', 'plus691'); return false;"><img border=0 id="plus691" src=inform:/doc_images/extra.png></a>&nbsp;time when (<font color="#4040ff">scene</font>) began ... <i>time</i></p>
   5075     <div id="extra691" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('time when ... began')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;time when (<font color="#4040ff">scene</font>) began ... <i>time</i></p>
   5076 
   5077     <p>This phrase produces the time (i.e., the value of the &quot;time of day&quot; variable) at the moment when the given scene began.</p>
   5078 
   5079     <p><b>See</b> &nbsp;<a href=inform:/doc152.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.3. 10.3. Using the Scene index</p><p><b>Kind:</b> phrase scene -> time</p>
   5080     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5081     <p class="tightin2"><a href="#" onclick="showExtra('extra692', 'plus692'); return false;"><img border=0 id="plus692" src=inform:/doc_images/extra.png></a>&nbsp;time since (<font color="#4040ff">scene</font>) ended ... <i>time</i></p>
   5082     <div id="extra692" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('time since ... ended')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;time since (<font color="#4040ff">scene</font>) ended ... <i>time</i></p>
   5083 
   5084     <p>This phrase produces the time since the named scene ended, which only makes sense, of course, if it has indeed ended. Example:</p>
   5085     <!-- START CODE "c2409" -->
   5086     <a id="c2409"></a><blockquote class="code"><p class="quoted">
   5087     time since Formal Dinner ended
   5088     </p></blockquote>
   5089     <!-- END CODE -->
   5090 
   5091     <p><b>See</b> &nbsp;<a href=inform:/doc152.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.3. 10.3. Using the Scene index</p><p><b>Kind:</b> phrase scene -> time</p>
   5092     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5093     <p class="tightin2"><a href="#" onclick="showExtra('extra693', 'plus693'); return false;"><img border=0 id="plus693" src=inform:/doc_images/extra.png></a>&nbsp;time when (<font color="#4040ff">scene</font>) ended ... <i>time</i></p>
   5094     <div id="extra693" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('time when ... ended')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;time when (<font color="#4040ff">scene</font>) ended ... <i>time</i></p>
   5095 
   5096     <p>This phrase produces the time (i.e., the value of the &quot;time of day&quot; variable) at the moment when the given scene ended.</p>
   5097 
   5098     <p><b>See</b> &nbsp;<a href=inform:/doc152.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;10.3. 10.3. Using the Scene index</p><p><b>Kind:</b> phrase scene -> time</p>
   5099     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5100     <a name=A694></a><p class="in2"><b>Player's identity and location</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra694', 'plus694'); return false;"><img border=0 id="plus694" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> in darkness<i>:</i></p>
   5101     <div id="extra694" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('in darkness')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> in darkness<i>:</i></p>
   5102 
   5103     <p>This condition is true if the player currently has no light to see by. Note that the test is more complicated than simply testing</p>
   5104     <!-- START CODE "c2869" -->
   5105     <a id="c2869"></a><blockquote class="code"><p class="quoted">
   5106     if the player is in a dark room, ...
   5107     </p></blockquote>
   5108     <!-- END CODE -->
   5109     <p>since the player might have a torch, or be inside a cage which is itself in a dark room, and so on.</p>
   5110 
   5111     <p><b>See</b> &nbsp;<a href=inform:/doc163.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.5. 11.5. Conditions and questions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   5112     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5113     <a name=A695></a><p class="in2"><b>Moving and removing things</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra695', 'plus695'); return false;"><img border=0 id="plus695" src=inform:/doc_images/extra.png></a>&nbsp;move (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>)</p>
   5114     <div id="extra695" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('move ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;move (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>)&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]without printing a room description[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;without printing a room description,<br>
   5115     &nbsp;&nbsp;&nbsp;&nbsp;<i>or</i> <a href="javascript:pasteCode('printing an abbreviated room description[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;printing an abbreviated room description
   5116     </p>
   5117 
   5118     <p>This phrase moves the first-named object to the second. Example:</p>
   5119     <!-- START CODE "c1822" -->
   5120     <a id="c1822"></a><blockquote class="code"><p class="quoted">
   5121     move the genie's lamp to Aladdin's Cave;
   5122     </p></blockquote>
   5123     <!-- END CODE -->
   5124     <p>The first object named has to be a thing; the destination must be a room, as here, a container, a supporter, or a person. When something is moved, all its parts and contents (and all their contents, and so on) move with it. If the thing being moved is a person, then the destination is required to be a room or an enterable container. (In particular, a person cannot be carried by another person.)</p>
   5125     <p>Two options can be used if the object being moved is the player.</p>
   5126     <!-- START CODE "c1823" -->
   5127     <a id="c1823"></a><blockquote class="code"><p class="quoted">
   5128     move the player to Aladdin's Cave, without printing a room description
   5129     </p></blockquote>
   5130     <!-- END CODE -->
   5131     <p>omits the description which would otherwise be produced. A compromise is to use:</p>
   5132     <!-- START CODE "c1824" -->
   5133     <a id="c1824"></a><blockquote class="code"><p class="quoted">
   5134     move the player to Aladdin's Cave, printing an abbreviated room description
   5135     </p></blockquote>
   5136     <!-- END CODE -->
   5137     <p>which gives a full description if the player has never been here before, but only a brief one if it is a familiar scene. These options have no effect for any other objects being moved.</p>
   5138 
   5139     <p><b>See</b> &nbsp;<a href=inform:/doc122.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.7. 8.7. Moving things</p><p><b>Kind:</b> phrase (object, object) -> nothing</p>
   5140     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5141     <p class="tightin2"><a href="#" onclick="showExtra('extra696', 'plus696'); return false;"><img border=0 id="plus696" src=inform:/doc_images/extra.png></a>&nbsp;remove (<font color="#4040ff">object</font>) from play<a href="#" onclick="showExtra('extra696', 'plus696'); return false;"><img border=0 src=inform:/doc_images/deprecated.png></a>&nbsp;</p>
   5142     <div id="extra696" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('remove ... from play')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;remove (<font color="#4040ff">object</font>) from play</p>
   5143 
   5144     <p>Removes the given object from play, so that it is not present in any room. We are not permitted to remove rooms, or doors, or the player, from play; but we are permitted to remove backdrops, making them disappear from all rooms in which they are present. Example:</p>
   5145     <!-- START CODE "c1891" -->
   5146     <a id="c1891"></a><blockquote class="code"><p class="quoted">
   5147     remove the gold coin from play;
   5148     </p></blockquote>
   5149     <!-- END CODE -->
   5150 
   5151     <p><b>See</b> &nbsp;<a href=inform:/doc125.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.10. 8.10. Removing things from play</p><p><b>Kind:</b> phrase object -> nothing</p>
   5152     </p><p><b>Warning:</b> This phrase is now deprecated! It will probably be withdrawn in future builds of Inform, and even the present build will reject it if the 'Use no deprecated features' option is set. If you're using it now, try following the documentation link above for advice on what to write instead.</font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5153     <p class="tightin2"><a href="#" onclick="showExtra('extra697', 'plus697'); return false;"><img border=0 id="plus697" src=inform:/doc_images/extra.png></a>&nbsp;move (<font color="#4040ff">object</font>) backdrop to all (<font color="#4040ff">description of objects</font>)</p>
   5154     <div id="extra697" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('move ... backdrop to all')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;move (<font color="#4040ff">object</font>) backdrop to all (<font color="#4040ff">description of objects</font>)</p>
   5155 
   5156     <p>This phrase moves the backdrop so that it is now present in every room matching the given description. Example: If we define</p>
   5157     <!-- START CODE "c1843" -->
   5158     <a id="c1843"></a><blockquote class="code"><p class="quoted">
   5159     A room can be wet or dry. A room is usually dry. The Rock Pool is wet.
   5160     </p></blockquote>
   5161     <!-- END CODE -->
   5162     <p>then we can write</p>
   5163     <!-- START CODE "c1844" -->
   5164     <a id="c1844"></a><blockquote class="code"><p class="quoted">
   5165     move the stream backdrop to all wet rooms;
   5166     </p></blockquote>
   5167     <!-- END CODE -->
   5168     <p>This phrasing, &quot;move the ... backdrop to all ...&quot; is deliberately meant to look unlike the simpler &quot;move ... to ...&quot;, to emphasise that this kind of movement is possible only for backdrops.</p>
   5169 
   5170     <p><b>See</b> &nbsp;<a href=inform:/doc123.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.8. 8.8. Moving backdrops</p><p><b>Kind:</b> phrase (object, description of objects) -> nothing</p>
   5171     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5172     <p class="tightin2"><a href="#" onclick="showExtra('extra698', 'plus698'); return false;"><img border=0 id="plus698" src=inform:/doc_images/extra.png></a>&nbsp;update backdrop positions</p>
   5173     <div id="extra698" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('update backdrop positions')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;update backdrop positions</p>
   5174 
   5175     <p>This phrase runs through all backdrops in the model world and makes sure they are correctly in, or not in, the current location, so that everything appears right from the player's point of view. Example:</p>
   5176     <!-- START CODE "c1845" -->
   5177     <a id="c1845"></a><blockquote class="code"><p class="quoted">
   5178     The Upper Cave is above the Rock Pool. The Ledge is east of the Pool. The stream is a backdrop.
   5179     </p></blockquote>
   5180     <!-- END CODE -->
   5181     <!-- START CODE "c1846" -->
   5182     <a id="c1846"></a><blockquote class="code"><p class="quoted">
   5183     When play begins:
   5184     <br />&#160;&#160;&#160;&#160;move the stream backdrop to all wet rooms.
   5185     </p></blockquote>
   5186     <!-- END CODE -->
   5187     <!-- START CODE "c1847" -->
   5188     <a id="c1847"></a><blockquote class="code"><p class="quoted">
   5189     A lever is in the Cave. The lever is fixed in place.
   5190     </p></blockquote>
   5191     <!-- END CODE -->
   5192     <!-- START CODE "c1848" -->
   5193     <a id="c1848"></a><blockquote class="code"><p class="quoted">
   5194     Instead of pulling the lever when the Cave is dry:
   5195     <br />&#160;&#160;&#160;&#160;now the Cave is wet;
   5196     <br />&#160;&#160;&#160;&#160;now the lever is in the Rock Pool;
   5197     <br />&#160;&#160;&#160;&#160;now the lever is portable;
   5198     <br />&#160;&#160;&#160;&#160;update backdrop positions;
   5199     <br />&#160;&#160;&#160;&#160;say &quot;The old rusty lever pulls away, and the thin cave wall goes with it, so that a stream bursts into the cave, falling to the pool below.&quot;
   5200     </p></blockquote>
   5201     <!-- END CODE -->
   5202 
   5203     <p><b>See</b> &nbsp;<a href=inform:/doc123.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.8. 8.8. Moving backdrops</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   5204     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5205     <a name=A699></a><p class="in2"><b>The map</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra699', 'plus699'); return false;"><img border=0 id="plus699" src=inform:/doc_images/extra.png></a>&nbsp;location of (<font color="#4040ff">object</font>) ... <i>room</i></p>
   5206     <div id="extra699" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('location of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;location of (<font color="#4040ff">object</font>) ... <i>room</i></p>
   5207 
   5208     <p>This phrase produces the room which, perhaps indirectly, contains the object given. Example: if the player stands in Biblioll College and wears a waistcoat, inside which is a fob watch, then</p>
   5209     <!-- START CODE "c483" -->
   5210     <a id="c483"></a><blockquote class="code"><p class="quoted">
   5211     location of the fob watch
   5212     </p></blockquote>
   5213     <!-- END CODE -->
   5214     <p>is Biblioll College. In general, a thing cannot be in two rooms at once, but there are two exceptions: two-sided doors, present on both sides, and backdrops. The &quot;location of&quot; a door is its front side, but a backdrop has no location. (Objects which are not things at all, such as rooms and directions, also have no location.)</p>
   5215 
   5216     <p><b>See</b> &nbsp;<a href=inform:/doc50.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;3.25. 3.25. The location of something</p><p><b>Kind:</b> phrase object -> room</p>
   5217     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5218     <p class="tightin2"><a href="#" onclick="showExtra('extra700', 'plus700'); return false;"><img border=0 id="plus700" src=inform:/doc_images/extra.png></a>&nbsp;room (<font color="#4040ff">direction</font>) from<font color="#808080">/of</font> (<font color="#4040ff">room</font>) ... <i>room</i></p>
   5219     <div id="extra700" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('room ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;room (<font color="#4040ff">direction</font>) from<font color="#808080">/of</font> (<font color="#4040ff">room</font>) ... <i>room</i></p>
   5220 
   5221     <p>This phrase produces the room which the given map direction leads to, or the special value &quot;nothing&quot; if it leads nowhere. If it leads to a door, the result is the room through that door. Examples:</p>
   5222     <!-- START CODE "c1149" -->
   5223     <a id="c1149"></a><blockquote class="code"><p class="quoted">
   5224     say &quot;You look north into [the room north from the Garden].&quot;
   5225     <br />if the room north from the Garden is nothing, say &quot;The grass leads nowhere.&quot;
   5226     </p></blockquote>
   5227     <!-- END CODE -->
   5228 
   5229     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (direction, room) -> room</p>
   5230     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5231     <p class="tightin2"><a href="#" onclick="showExtra('extra701', 'plus701'); return false;"><img border=0 id="plus701" src=inform:/doc_images/extra.png></a>&nbsp;door (<font color="#4040ff">direction</font>) from<font color="#808080">/of</font> (<font color="#4040ff">room</font>) ... <i>door</i></p>
   5232     <div id="extra701" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('door ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;door (<font color="#4040ff">direction</font>) from<font color="#808080">/of</font> (<font color="#4040ff">room</font>) ... <i>door</i></p>
   5233 
   5234     <p>This phrase produces the door which the given map direction leads to, or the special value &quot;nothing&quot; if it leads nowhere or to a room. Examples:</p>
   5235     <!-- START CODE "c1150" -->
   5236     <a id="c1150"></a><blockquote class="code"><p class="quoted">
   5237     let the barrier be the door north from the Garden;
   5238     <br />if the barrier is a door, say &quot;Well, [the barrier] is in the way.&quot;;
   5239     </p></blockquote>
   5240     <!-- END CODE -->
   5241 
   5242     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (direction, room) -> door</p>
   5243     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5244     <p class="tightin2"><a href="#" onclick="showExtra('extra702', 'plus702'); return false;"><img border=0 id="plus702" src=inform:/doc_images/extra.png></a>&nbsp;other side of (<font color="#4040ff">door</font>) from (<font color="#4040ff">room</font>) ... <i>object</i></p>
   5245     <div id="extra702" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('other side of ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;other side of (<font color="#4040ff">door</font>) from (<font color="#4040ff">room</font>) ... <i>object</i></p>
   5246 
   5247     <p>This phrase produces the room on the other side of the door, as seen from the given vantage point, which needs to be one of its sides. Example: if</p>
   5248     <!-- START CODE "c274" -->
   5249     <a id="c274"></a><blockquote class="code"><p class="quoted">
   5250     The red rock stair is east of the Orchard and above the Undertomb.
   5251     </p></blockquote>
   5252     <!-- END CODE -->
   5253     <p>then &quot;other side of the red rock stair from the Undertomb&quot; produces the Orchard, and vice versa.</p>
   5254 
   5255     <p><b>See</b> &nbsp;<a href=inform:/doc37.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;3.12. 3.12. Doors</p><p><b>Kind:</b> phrase (door, room) -> object</p>
   5256     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5257     <p class="tightin2"><a href="#" onclick="showExtra('extra703', 'plus703'); return false;"><img border=0 id="plus703" src=inform:/doc_images/extra.png></a>&nbsp;direction of (<font color="#4040ff">door</font>) from (<font color="#4040ff">room</font>) ... <i>object</i></p>
   5258     <div id="extra703" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('direction of ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;direction of (<font color="#4040ff">door</font>) from (<font color="#4040ff">room</font>) ... <i>object</i></p>
   5259 
   5260     <p>This phrase produces the direction in which the door leads, as seen from the given vantage point, which needs to be one of its sides. Example: if</p>
   5261     <!-- START CODE "c275" -->
   5262     <a id="c275"></a><blockquote class="code"><p class="quoted">
   5263     The red rock stair is east of the Orchard and above the Undertomb.
   5264     </p></blockquote>
   5265     <!-- END CODE -->
   5266     <p>then &quot;direction of the red rock stair from the Undertomb&quot; produces up.</p>
   5267 
   5268     <p><b>See</b> &nbsp;<a href=inform:/doc37.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;3.12. 3.12. Doors</p><p><b>Kind:</b> phrase (door, room) -> object</p>
   5269     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5270     <p class="tightin2"><a href="#" onclick="showExtra('extra704', 'plus704'); return false;"><img border=0 id="plus704" src=inform:/doc_images/extra.png></a>&nbsp;room-or-door (<font color="#4040ff">direction</font>) from<font color="#808080">/of</font> (<font color="#4040ff">room</font>) ... <i>object</i></p>
   5271     <div id="extra704" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('room-or-door ... from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;room-or-door (<font color="#4040ff">direction</font>) from<font color="#808080">/of</font> (<font color="#4040ff">room</font>) ... <i>object</i></p>
   5272 
   5273     <p>This phrase produces the object which the given map direction leads to, which will always be either a room, a door or the special value &quot;nothing&quot;. The phrase is used mainly by the Standard Rules, for technical reasons, and usually it's better to use &quot;room ... from ...&quot; or &quot;door ... from ...&quot; instead.</p>
   5274 
   5275     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (direction, room) -> object</p>
   5276     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5277     <p class="tightin2"><a href="#" onclick="showExtra('extra705', 'plus705'); return false;"><img border=0 id="plus705" src=inform:/doc_images/extra.png></a>&nbsp;change (<font color="#4040ff">direction</font>) exit of (<font color="#4040ff">room</font>) to (<font color="#4040ff">room</font>)</p>
   5278     <div id="extra705" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('change ... exit of ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;change (<font color="#4040ff">direction</font>) exit of (<font color="#4040ff">room</font>) to (<font color="#4040ff">room</font>)</p>
   5279 
   5280     <p>This phrase alters the map so that the given map connection is made. Note that connections can be made to rooms, but not doors: the positions of doors are fixed. Example:</p>
   5281     <!-- START CODE "c1775" -->
   5282     <a id="c1775"></a><blockquote class="code"><p class="quoted">
   5283     change the east exit of the Closet to the Tsar's Imperial Dining Salon
   5284     </p></blockquote>
   5285     <!-- END CODE -->
   5286     <p>Since &quot;nothing&quot; is not a room, this doesn't allow us to change the exit to nothing, so there is a separate definition of:</p>
   5287     <!-- START CODE "c1776" -->
   5288     <a id="c1776"></a><blockquote class="code"><p class="quoted">
   5289     change the west exit of the Closet to nothing
   5290     </p></blockquote>
   5291     <!-- END CODE -->
   5292 
   5293     <p><b>See</b> &nbsp;<a href=inform:/doc120.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.5. 8.5. Change of properties with values</p><p><b>Kind:</b> phrase (direction, room, room) -> nothing</p>
   5294     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5295     <p class="tightin2"><a href="#" onclick="showExtra('extra706', 'plus706'); return false;"><img border=0 id="plus706" src=inform:/doc_images/extra.png></a>&nbsp;change (<font color="#4040ff">direction</font>) exit of (<font color="#4040ff">room</font>) to nothing<font color="#808080">/nowhere</font></p>
   5296     <div id="extra706" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('change ... exit of ... to nothing')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;change (<font color="#4040ff">direction</font>) exit of (<font color="#4040ff">room</font>) to nothing<font color="#808080">/nowhere</font></p>
   5297 
   5298     <p>This phrase alters the map so that the given map connection is unmade. Example:</p>
   5299     <!-- START CODE "c1777" -->
   5300     <a id="c1777"></a><blockquote class="code"><p class="quoted">
   5301     change the west exit of the Closet to nowhere
   5302     </p></blockquote>
   5303     <!-- END CODE -->
   5304 
   5305     <p><b>See</b> &nbsp;<a href=inform:/doc120.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.5. 8.5. Change of properties with values</p><p><b>Kind:</b> phrase (direction, room) -> nothing</p>
   5306     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5307     <p class="tightin2"><a href="#" onclick="showExtra('extra707', 'plus707'); return false;"><img border=0 id="plus707" src=inform:/doc_images/extra.png></a>&nbsp;front side of (<font color="#4040ff">object</font>) ... <i>room</i></p>
   5308     <div id="extra707" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('front side of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;front side of (<font color="#4040ff">object</font>) ... <i>room</i></p>
   5309 
   5310     <p>This phrase produces the first of the one or two rooms containing a door - first in the order given in the source text. Example: if</p>
   5311     <!-- START CODE "c272" -->
   5312     <a id="c272"></a><blockquote class="code"><p class="quoted">
   5313     The red rock stair is east of the Orchard and above the Undertomb.
   5314     </p></blockquote>
   5315     <!-- END CODE -->
   5316     <p>then &quot;front side of the red rock stair&quot; produces the Orchard. For a one-sided door, this produces the only room containing the door.</p>
   5317 
   5318     <p><b>See</b> &nbsp;<a href=inform:/doc37.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;3.12. 3.12. Doors</p><p><b>Kind:</b> phrase object -> room</p>
   5319     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5320     <p class="tightin2"><a href="#" onclick="showExtra('extra708', 'plus708'); return false;"><img border=0 id="plus708" src=inform:/doc_images/extra.png></a>&nbsp;back side of (<font color="#4040ff">object</font>) ... <i>room</i></p>
   5321     <div id="extra708" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('back side of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;back side of (<font color="#4040ff">object</font>) ... <i>room</i></p>
   5322 
   5323     <p>This phrase produces the last of the one or two rooms containing a door - last in the order given in the source text. Example: if</p>
   5324     <!-- START CODE "c273" -->
   5325     <a id="c273"></a><blockquote class="code"><p class="quoted">
   5326     The red rock stair is east of the Orchard and above the Undertomb.
   5327     </p></blockquote>
   5328     <!-- END CODE -->
   5329     <p>then &quot;back side of the red rock stair&quot; produces the Undertomb. A one-sided door has no &quot;back side.&quot;</p>
   5330 
   5331     <p><b>See</b> &nbsp;<a href=inform:/doc37.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;3.12. 3.12. Doors</p><p><b>Kind:</b> phrase object -> room</p>
   5332     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5333     <a name=A709></a><p class="in2"><b>Route-finding</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra709', 'plus709'); return false;"><img border=0 id="plus709" src=inform:/doc_images/extra.png></a>&nbsp;best route from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5334     <div id="extra709" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('best route from ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;best route from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>object</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]using doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using doors,<br>
   5335     &nbsp;&nbsp;&nbsp;&nbsp;<i>or</i> <a href="javascript:pasteCode('using even locked doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using even locked doors
   5336     </p>
   5337 
   5338     <p>This phrase produces a direction to take in order to get from A to B by the shortest number of movements between rooms, or produces &quot;nothing&quot; if there is no way through at all. Example:</p>
   5339     <!-- START CODE "c1151" -->
   5340     <a id="c1151"></a><blockquote class="code"><p class="quoted">
   5341     The description of the brass compass is &quot;The dial points quiveringly to [best route from the location to the Lodestone Room].&quot;
   5342     </p></blockquote>
   5343     <!-- END CODE -->
   5344     <p>Best routes are ordinarily forbidden to go through doors, but if the suffix &quot;using doors&quot; is added as an option then any open or openable and unlocked door may be used on the way; and if &quot;using even locked doors&quot; is given, then any door at all will do. Since magnetism is no respecter of property, that seems right here:</p>
   5345     <!-- START CODE "c1152" -->
   5346     <a id="c1152"></a><blockquote class="code"><p class="quoted">
   5347     The description of the brass compass is &quot;The dial points quiveringly to [best route from the location to the Lodestone Room, using even locked doors].&quot;
   5348     </p></blockquote>
   5349     <!-- END CODE -->
   5350 
   5351     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (object, object) -> object</p>
   5352     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5353     <p class="tightin2"><a href="#" onclick="showExtra('extra710', 'plus710'); return false;"><img border=0 id="plus710" src=inform:/doc_images/extra.png></a>&nbsp;number of moves from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>number</i></p>
   5354     <div id="extra710" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of moves from ... to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of moves from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) ... <i>number</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]using doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using doors,<br>
   5355     &nbsp;&nbsp;&nbsp;&nbsp;<i>or</i> <a href="javascript:pasteCode('using even locked doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using even locked doors
   5356     </p>
   5357 
   5358     <p>This phrase produces the number of map connections which must be followed in order to get from A to B by the shortest number of movements between rooms. If A and B are the same, the answer is 0; if there is no route at all, the answer is -1. Example:</p>
   5359     <!-- START CODE "c1154" -->
   5360     <a id="c1154"></a><blockquote class="code"><p class="quoted">
   5361     The description of the proximity gadget is &quot;You are now [number of moves from the location to the Sundial] moves from the Sundial.&quot;;
   5362     </p></blockquote>
   5363     <!-- END CODE -->
   5364 
   5365     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (object, object) -> number</p>
   5366     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5367     <p class="tightin2"><a href="#" onclick="showExtra('extra711', 'plus711'); return false;"><img border=0 id="plus711" src=inform:/doc_images/extra.png></a>&nbsp;best route from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) through (<font color="#4040ff">description of objects</font>) ... <i>object</i></p>
   5368     <div id="extra711" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('best route from ... to ... through')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;best route from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) through (<font color="#4040ff">description of objects</font>) ... <i>object</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]using doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using doors,<br>
   5369     &nbsp;&nbsp;&nbsp;&nbsp;<i>or</i> <a href="javascript:pasteCode('using even locked doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using even locked doors
   5370     </p>
   5371 
   5372     <p>This phrase produces a direction to take in order to get from A to B by the shortest number of movements between rooms which match the given description, or produces &quot;nothing&quot; if there is no way through at all. Example:</p>
   5373     <!-- START CODE "c1153" -->
   5374     <a id="c1153"></a><blockquote class="code"><p class="quoted">
   5375     best route from the Drawbridge to the Keep through visited rooms
   5376     </p></blockquote>
   5377     <!-- END CODE -->
   5378     <p>The condition - in this case, that &quot;visited rooms&quot; must be used - also applies to both ends of the journey, so if either Drawbridge or Keep are unvisited then this is &quot;nothing&quot;. (Similarly, saying something like &quot;...through containers&quot; would mean there is never a route.)</p>
   5379 
   5380     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (object, object, description of objects) -> object</p>
   5381     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5382     <p class="tightin2"><a href="#" onclick="showExtra('extra712', 'plus712'); return false;"><img border=0 id="plus712" src=inform:/doc_images/extra.png></a>&nbsp;number of moves from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) through (<font color="#4040ff">description of objects</font>) ... <i>number</i></p>
   5383     <div id="extra712" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('number of moves from ... to ... through')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;number of moves from (<font color="#4040ff">object</font>) to (<font color="#4040ff">object</font>) through (<font color="#4040ff">description of objects</font>) ... <i>number</i>&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('[=0x000A=]using doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using doors,<br>
   5384     &nbsp;&nbsp;&nbsp;&nbsp;<i>or</i> <a href="javascript:pasteCode('using even locked doors[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;using even locked doors
   5385     </p>
   5386 
   5387     <p>This phrase produces the number of map connections which must be followed in order to get from A to B by the shortest number of movements between rooms matching the given description. If A and B are the same, the answer is 0; if there is no route at all, or if either A or B fail to match the description themselves, the answer is -1.</p>
   5388 
   5389     <p><b>See</b> &nbsp;<a href=inform:/doc95.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;6.14. 6.14. Adjacent rooms and routes through the map</p><p><b>Kind:</b> phrase (object, object, description of objects) -> number</p>
   5390     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5391     <a name=A713></a><p class="in2"><b>The object tree</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra713', 'plus713'); return false;"><img border=0 id="plus713" src=inform:/doc_images/extra.png></a>&nbsp;holder of (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5392     <div id="extra713" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('holder of')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;holder of (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5393 
   5394     <p>This phrase produces the container, supporter, carrier, wearer or room in which the object resides.</p>
   5395 
   5396     <p><b>See</b> &nbsp;<a href=inform:/doc132.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.17. 8.17. Looking at containment by hand</p><p><b>Kind:</b> phrase object -> object</p>
   5397     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5398     <p class="tightin2"><a href="#" onclick="showExtra('extra714', 'plus714'); return false;"><img border=0 id="plus714" src=inform:/doc_images/extra.png></a>&nbsp;next thing held after (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5399     <div id="extra714" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('next thing held after')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;next thing held after (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5400 
   5401     <p>This phrase produces the next item of the list of things held by something. Example: suppose Baroness Orczy is carrying a lapdog and a string of pearls.</p>
   5402     <!-- START CODE "c1984" -->
   5403     <a id="c1984"></a><blockquote class="code"><p class="quoted">
   5404     next thing held after the lapdog
   5405     </p></blockquote>
   5406     <!-- END CODE -->
   5407     <p>is then the string of pearls.</p>
   5408 
   5409     <p><b>See</b> &nbsp;<a href=inform:/doc132.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.17. 8.17. Looking at containment by hand</p><p><b>Kind:</b> phrase object -> object</p>
   5410     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5411     <p class="tightin2"><a href="#" onclick="showExtra('extra715', 'plus715'); return false;"><img border=0 id="plus715" src=inform:/doc_images/extra.png></a>&nbsp;first thing held by (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5412     <div id="extra715" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('first thing held by')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;first thing held by (<font color="#4040ff">object</font>) ... <i>object</i></p>
   5413 
   5414     <p>This phrase produces the first of the list of things held by the object. Example:</p>
   5415     <!-- START CODE "c1983" -->
   5416     <a id="c1983"></a><blockquote class="code"><p class="quoted">
   5417     first thing held by Baroness Orczy
   5418     </p></blockquote>
   5419     <!-- END CODE -->
   5420 
   5421     <p><b>See</b> &nbsp;<a href=inform:/doc132.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;8.17. 8.17. Looking at containment by hand</p><p><b>Kind:</b> phrase object -> object</p>
   5422     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5423     <p><hr><p class="in1"><b>Understanding</b></p><a name=A716></a><p class="in2"><b>Asking yes/no questions</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra716', 'plus716'); return false;"><img border=0 id="plus716" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> player consents<i>:</i></p>
   5424     <div id="extra716" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('player consents')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> player consents<i>:</i></p>
   5425 
   5426     <p>This condition is unusual in doing something and not simply making a silent check: it waits for the player to type YES (or Y) or NO (or N) at the keyboard, and then is true if the answer was yes. Example:</p>
   5427     <!-- START CODE "c2870" -->
   5428     <a id="c2870"></a><blockquote class="code"><p class="quoted">
   5429     say &quot;Are you quite sure you want to kiss the Queen? &quot;;
   5430     <br />if the player consents:
   5431     <br />&#160;&#160;&#160;&#160;...
   5432     </p></blockquote>
   5433     <!-- END CODE -->
   5434 
   5435     <p><b>See</b> &nbsp;<a href=inform:/doc163.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;11.5. 11.5. Conditions and questions</p><p><b>Kind:</b> phrase nothing -> truth state</p>
   5436     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5437     <a name=A717></a><p class="in2"><b>The player's command</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra717', 'plus717'); return false;"><img border=0 id="plus717" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) matches (<font color="#4040ff">topic</font>)<i>:</i></p>
   5438     <div id="extra717" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('matches')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) matches (<font color="#4040ff">topic</font>)<i>:</i></p>
   5439 
   5440     <p>This condition is true if the given snippet exactly matches the specification. Example:</p>
   5441     <!-- START CODE "c7189" -->
   5442     <a id="c7189"></a><blockquote class="code"><p class="quoted">
   5443     if the player's command matches &quot;room [number]&quot;, ...
   5444     </p></blockquote>
   5445     <!-- END CODE -->
   5446     <p>will be true if the command is ROOM 101, but not if it's EXPLORE ROOM 7.</p>
   5447 
   5448     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase (snippet, topic) -> truth state</p>
   5449     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5450     <p class="tightin2"><a href="#" onclick="showExtra('extra718', 'plus718'); return false;"><img border=0 id="plus718" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) does not match (<font color="#4040ff">topic</font>)<i>:</i></p>
   5451     <div id="extra718" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('does not match')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) does not match (<font color="#4040ff">topic</font>)<i>:</i></p>
   5452 
   5453     <p>This condition is true if the given snippet does not exactly match the specification.</p>
   5454 
   5455     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase (snippet, topic) -> truth state</p>
   5456     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5457     <p class="tightin2"><a href="#" onclick="showExtra('extra719', 'plus719'); return false;"><img border=0 id="plus719" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) includes (<font color="#4040ff">topic</font>)<i>:</i></p>
   5458     <div id="extra719" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('includes')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) includes (<font color="#4040ff">topic</font>)<i>:</i></p>
   5459 
   5460     <p>This condition is true if the given snippet includes words matching the specification, either at the beginning, in the middle, or at the end. Example:</p>
   5461     <!-- START CODE "c7190" -->
   5462     <a id="c7190"></a><blockquote class="code"><p class="quoted">
   5463     if the player's command includes &quot;room [number]&quot;, ...
   5464     </p></blockquote>
   5465     <!-- END CODE -->
   5466     <p>will be true if the command is ROOM 101, EXPLORE ROOM 7, or ROOM 22 AHOY, but not if it's VISIT ROOM GAMMA 7.</p>
   5467 
   5468     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase (snippet, topic) -> truth state</p>
   5469     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5470     <p class="tightin2"><a href="#" onclick="showExtra('extra720', 'plus720'); return false;"><img border=0 id="plus720" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) does not include (<font color="#4040ff">topic</font>)<i>:</i></p>
   5471     <div id="extra720" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('does not include')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> (<font color="#4040ff">snippet</font>) does not include (<font color="#4040ff">topic</font>)<i>:</i></p>
   5472 
   5473     <p>This condition is true if the given snippet does not include any run of words which matches the specification.</p>
   5474 
   5475     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase (snippet, topic) -> truth state</p>
   5476     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5477     <a name=A721></a><p class="in2"><b>Changing the player's command</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra721', 'plus721'); return false;"><img border=0 id="plus721" src=inform:/doc_images/extra.png></a>&nbsp;change the text of the player's command to (<font color="#4040ff">text</font>)</p>
   5478     <div id="extra721" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('change the text of the player[=0x0027=]s command to')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;change the text of the player's command to (<font color="#4040ff">text</font>)</p>
   5479 
   5480     <p>This phrase should be used only in &quot;after&quot; rules for the &quot;reading a command&quot; activity; it replaces the current command text entirely. Example:</p>
   5481     <!-- START CODE "c7195" -->
   5482     <a id="c7195"></a><blockquote class="code"><p class="quoted">
   5483     After reading a command:
   5484     <br />&#160;&#160;&#160;&#160;let T be &quot;[the player's command]&quot;;
   5485     <br />&#160;&#160;&#160;&#160;replace the regular expression &quot;\p&quot; in T with &quot;&quot;;
   5486     <br />&#160;&#160;&#160;&#160;change the text of the player's command to T.
   5487     </p></blockquote>
   5488     <!-- END CODE -->
   5489     <p>This converts the player's command to text, which is then manipulated by searching for any punctuation mark and replacing it with blank text (that is, deleted), and then put back again as the new command.</p>
   5490 
   5491     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase text -> nothing</p>
   5492     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5493     <p class="tightin2"><a href="#" onclick="showExtra('extra722', 'plus722'); return false;"><img border=0 id="plus722" src=inform:/doc_images/extra.png></a>&nbsp;replace (<font color="#4040ff">snippet</font>) with (<font color="#4040ff">text</font>)</p>
   5494     <div id="extra722" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('replace ... with')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;replace (<font color="#4040ff">snippet</font>) with (<font color="#4040ff">text</font>)</p>
   5495 
   5496     <p>This phrase should be used only in &quot;after&quot; rules for the &quot;reading a command&quot; activity; it replaces the snippet of command, usually the &quot;matched text&quot; found immediately before, with the given text. Example:</p>
   5497     <!-- START CODE "c7192" -->
   5498     <a id="c7192"></a><blockquote class="code"><p class="quoted">
   5499     if the player's command includes &quot;room [number]&quot;:
   5500     <br />&#160;&#160;&#160;&#160;replace the matched text with &quot;office&quot;.
   5501     </p></blockquote>
   5502     <!-- END CODE -->
   5503 
   5504     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase (snippet, text) -> nothing</p>
   5505     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5506     <p class="tightin2"><a href="#" onclick="showExtra('extra723', 'plus723'); return false;"><img border=0 id="plus723" src=inform:/doc_images/extra.png></a>&nbsp;cut (<font color="#4040ff">snippet</font>)</p>
   5507     <div id="extra723" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('cut')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;cut (<font color="#4040ff">snippet</font>)</p>
   5508 
   5509     <p>This phrase should be used only in &quot;after&quot; rules for the &quot;reading a command&quot; activity; it removes the snippet of command. Example:</p>
   5510     <!-- START CODE "c7193" -->
   5511     <a id="c7193"></a><blockquote class="code"><p class="quoted">
   5512     if the player's command includes &quot;or else&quot;:
   5513     <br />&#160;&#160;&#160;&#160;cut the matched text.
   5514     </p></blockquote>
   5515     <!-- END CODE -->
   5516 
   5517     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase snippet -> nothing</p>
   5518     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5519     <p class="tightin2"><a href="#" onclick="showExtra('extra724', 'plus724'); return false;"><img border=0 id="plus724" src=inform:/doc_images/extra.png></a>&nbsp;reject the player's command</p>
   5520     <div id="extra724" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('reject the player[=0x0027=]s command')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;reject the player's command</p>
   5521 
   5522     <p>This phrase should be used only in rules for the &quot;reading a command&quot; activity. It tells Inform not to bother analysing the text further, but to go back to the keyboard. (No time passes; no turn elapses; nothing happens in the simulated world.)</p>
   5523 
   5524     <p><b>See</b> &nbsp;<a href=inform:/doc319.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.33. 18.33. Reading a command</p><p><b>Kind:</b> phrase nothing -> nothing</p>
   5525     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5526     <a name=A725></a><p class="in2"><b>Scope and pronouns</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra725', 'plus725'); return false;"><img border=0 id="plus725" src=inform:/doc_images/extra.png></a>&nbsp;place (<font color="#4040ff">object</font>) in scope</p>
   5527     <div id="extra725" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('place ... in scope')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;place (<font color="#4040ff">object</font>) in scope&nbsp;&nbsp;&nbsp;&nbsp;<br><i>optionally</i> <a href="javascript:pasteCode('but not its contents[=0x000A=][=0x000A=]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;but not its contents
   5528     </p>
   5529 
   5530     <p>This phrase should only be used in rules for the &quot;deciding the scope of...&quot; activity. It places the given object in scope, making it accessible to the player's commands, regardless of where it is in the model world. Examples:</p>
   5531     <!-- START CODE "c6939" -->
   5532     <a id="c6939"></a><blockquote class="code"><p class="quoted">
   5533     place the distant volcano in scope;
   5534     <br />place the lacquered box in scope, but not its contents;
   5535     </p></blockquote>
   5536     <!-- END CODE -->
   5537     <p>Ordinarily if something is placed in scope, then so are its parts and (in the case of a supporter or a transparent or open container) its contents; using the &quot;but not its contents&quot; option we can place just the box itself in scope.</p>
   5538 
   5539     <p><b>See</b> &nbsp;<a href=inform:/doc315.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.29. 18.29. Deciding the scope of something</p><p><b>Kind:</b> phrase object -> nothing</p>
   5540     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5541     <p class="tightin2"><a href="#" onclick="showExtra('extra726', 'plus726'); return false;"><img border=0 id="plus726" src=inform:/doc_images/extra.png></a>&nbsp;place the<font color="#808080">/--</font> contents of (<font color="#4040ff">object</font>) in scope</p>
   5542     <div id="extra726" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('place the contents of ... in scope')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;place the<font color="#808080">/--</font> contents of (<font color="#4040ff">object</font>) in scope</p>
   5543 
   5544     <p>This phrase should only be used in rules for the &quot;deciding the scope of...&quot; activity. It places the things inside or on top of the given object in scope, making them accessible to the player's commands, but it does nothing to place the object itself in scope. (It might of course be in scope anyway, and if it is then this phrase won't remove it.) Example:</p>
   5545     <!-- START CODE "c6940" -->
   5546     <a id="c6940"></a><blockquote class="code"><p class="quoted">
   5547     place the contents of the lacquered box in scope;
   5548     <br />place the contents of the Marbled Steps in scope;
   5549     </p></blockquote>
   5550     <!-- END CODE -->
   5551     <p>Note that the object in question can be a room, as in this second example.</p>
   5552 
   5553     <p><b>See</b> &nbsp;<a href=inform:/doc315.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;18.29. 18.29. Deciding the scope of something</p><p><b>Kind:</b> phrase object -> nothing</p>
   5554     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5555     <p class="tightin2"><a href="#" onclick="showExtra('extra727', 'plus727'); return false;"><img border=0 id="plus727" src=inform:/doc_images/extra.png></a>&nbsp;set pronouns from (<font color="#4040ff">object</font>)</p>
   5556     <div id="extra727" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('set pronouns from')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;set pronouns from (<font color="#4040ff">object</font>)</p>
   5557 
   5558     <p>This phrase adjusts the meaning of pronouns like IT, HIM, HER and THEM in the command parser as if the object mentioned has become the subject of conversation. Example: the combination of</p>
   5559     <!-- START CODE "c6098" -->
   5560     <a id="c6098"></a><blockquote class="code"><p class="quoted">
   5561     set pronouns from the key;
   5562     <br />set pronouns from Bunny;
   5563     </p></blockquote>
   5564     <!-- END CODE -->
   5565     <p>might change IT to mean the silver key and HIM to mean Harry &quot;Bunny&quot; Manders, while leaving HER and THEM unaltered.</p>
   5566 
   5567     <p><b>See</b> &nbsp;<a href=inform:/doc282.html><img border=0 src=inform:/doc_images/help.png></a>&nbsp;17.18. 17.18. Changing the meaning of pronouns</p><p><b>Kind:</b> phrase object -> nothing</p>
   5568     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5569     <p><hr><p class="in1"><b>From the extension English Language by Graham Nelson</b></p><a name=A758></a><p class="in2"><b>Section 1 - Grammatical definitions</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra758', 'plus758'); return false;"><img border=0 id="plus758" src=inform:/doc_images/extra.png></a>&nbsp;say "[regarding <font color="#4040ff">object</font>]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5570     <div id="extra758" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[regarding ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[regarding <font color="#4040ff">object</font>]"</p>
   5571     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5572     <p class="tightin2"><a href="#" onclick="showExtra('extra759', 'plus759'); return false;"><img border=0 id="plus759" src=inform:/doc_images/extra.png></a>&nbsp;say "[regarding <font color="#4040ff">number</font>]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5573     <div id="extra759" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[regarding ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[regarding <font color="#4040ff">number</font>]"</p>
   5574     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5575     <p class="tightin2"><a href="#" onclick="showExtra('extra760', 'plus760'); return false;"><img border=0 id="plus760" src=inform:/doc_images/extra.png></a>&nbsp;say "[regarding list writer internals]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5576     <div id="extra760" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[regarding list writer internals]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[regarding list writer internals]"</p>
   5577     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5578     <p class="tightin2"><a href="#" onclick="showExtra('extra761', 'plus761'); return false;"><img border=0 id="plus761" src=inform:/doc_images/extra.png></a>&nbsp;say "[regarding <font color="#4040ff">description of objects</font>]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5579     <div id="extra761" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[regarding ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[regarding <font color="#4040ff">description of objects</font>]"</p>
   5580     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5581     <p class="tightin2"><a href="#" onclick="showExtra('extra762', 'plus762'); return false;"><img border=0 id="plus762" src=inform:/doc_images/extra.png></a>&nbsp;<i>if</i> prior naming context is plural<i>:</i>&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5582     <div id="extra762" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('prior naming context is plural')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;<i>if</i> prior naming context is plural<i>:</i></p><p><b>Kind:</b> phrase nothing -> truth state</p>
   5583     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5584     <a name=A763></a><p class="in2"><b>Section 2 - Saying pronouns</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra763', 'plus763'); return false;"><img border=0 id="plus763" src=inform:/doc_images/extra.png></a>&nbsp;say "[we]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5585     <div id="extra763" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[we]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[we]"</p>
   5586     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5587     <p class="tightin2"><a href="#" onclick="showExtra('extra764', 'plus764'); return false;"><img border=0 id="plus764" src=inform:/doc_images/extra.png></a>&nbsp;say "[us]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5588     <div id="extra764" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[us]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[us]"</p>
   5589     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5590     <p class="tightin2"><a href="#" onclick="showExtra('extra765', 'plus765'); return false;"><img border=0 id="plus765" src=inform:/doc_images/extra.png></a>&nbsp;say "[ours]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5591     <div id="extra765" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[ours]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[ours]"</p>
   5592     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5593     <p class="tightin2"><a href="#" onclick="showExtra('extra766', 'plus766'); return false;"><img border=0 id="plus766" src=inform:/doc_images/extra.png></a>&nbsp;say "[ourselves]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5594     <div id="extra766" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[ourselves]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[ourselves]"</p>
   5595     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5596     <p class="tightin2"><a href="#" onclick="showExtra('extra767', 'plus767'); return false;"><img border=0 id="plus767" src=inform:/doc_images/extra.png></a>&nbsp;say "[our]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5597     <div id="extra767" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[our]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[our]"</p>
   5598     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5599     <p class="tightin2"><a href="#" onclick="showExtra('extra768', 'plus768'); return false;"><img border=0 id="plus768" src=inform:/doc_images/extra.png></a>&nbsp;say "[We]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5600     <div id="extra768" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[We]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[We]"</p>
   5601     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5602     <p class="tightin2"><a href="#" onclick="showExtra('extra769', 'plus769'); return false;"><img border=0 id="plus769" src=inform:/doc_images/extra.png></a>&nbsp;say "[Us]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5603     <div id="extra769" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Us]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Us]"</p>
   5604     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5605     <p class="tightin2"><a href="#" onclick="showExtra('extra770', 'plus770'); return false;"><img border=0 id="plus770" src=inform:/doc_images/extra.png></a>&nbsp;say "[Ours]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5606     <div id="extra770" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Ours]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Ours]"</p>
   5607     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5608     <p class="tightin2"><a href="#" onclick="showExtra('extra771', 'plus771'); return false;"><img border=0 id="plus771" src=inform:/doc_images/extra.png></a>&nbsp;say "[Ourselves]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5609     <div id="extra771" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Ourselves]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Ourselves]"</p>
   5610     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5611     <p class="tightin2"><a href="#" onclick="showExtra('extra772', 'plus772'); return false;"><img border=0 id="plus772" src=inform:/doc_images/extra.png></a>&nbsp;say "[Our]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5612     <div id="extra772" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Our]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Our]"</p>
   5613     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5614     <a name=A773></a><p class="in2"><b>Section 3 - Further pronouns</b></p><p class="tightin2"><a href="#" onclick="showExtra('extra773', 'plus773'); return false;"><img border=0 id="plus773" src=inform:/doc_images/extra.png></a>&nbsp;say "[those]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5615     <div id="extra773" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[those]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[those]"</p>
   5616     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5617     <p class="tightin2"><a href="#" onclick="showExtra('extra774', 'plus774'); return false;"><img border=0 id="plus774" src=inform:/doc_images/extra.png></a>&nbsp;say "[Those]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5618     <div id="extra774" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Those]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Those]"</p>
   5619     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5620     <p class="tightin2"><a href="#" onclick="showExtra('extra775', 'plus775'); return false;"><img border=0 id="plus775" src=inform:/doc_images/extra.png></a>&nbsp;say "[those in <font color="#4040ff">grammatical case</font>]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5621     <div id="extra775" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[those in ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[those in <font color="#4040ff">grammatical case</font>]"</p>
   5622     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5623     <p class="tightin2"><a href="#" onclick="showExtra('extra776', 'plus776'); return false;"><img border=0 id="plus776" src=inform:/doc_images/extra.png></a>&nbsp;say "[Those in <font color="#4040ff">grammatical case</font>]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5624     <div id="extra776" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Those in ...]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Those in <font color="#4040ff">grammatical case</font>]"</p>
   5625     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5626     <p class="tightin2"><a href="#" onclick="showExtra('extra777', 'plus777'); return false;"><img border=0 id="plus777" src=inform:/doc_images/extra.png></a>&nbsp;say "[they]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5627     <div id="extra777" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[they]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[they]"</p>
   5628     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5629     <p class="tightin2"><a href="#" onclick="showExtra('extra778', 'plus778'); return false;"><img border=0 id="plus778" src=inform:/doc_images/extra.png></a>&nbsp;say "[They]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5630     <div id="extra778" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[They]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[They]"</p>
   5631     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5632     <p class="tightin2"><a href="#" onclick="showExtra('extra779', 'plus779'); return false;"><img border=0 id="plus779" src=inform:/doc_images/extra.png></a>&nbsp;say "[their]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5633     <div id="extra779" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[their]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[their]"</p>
   5634     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5635     <p class="tightin2"><a href="#" onclick="showExtra('extra780', 'plus780'); return false;"><img border=0 id="plus780" src=inform:/doc_images/extra.png></a>&nbsp;say "[Their]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5636     <div id="extra780" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Their]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Their]"</p>
   5637     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5638     <p class="tightin2"><a href="#" onclick="showExtra('extra781', 'plus781'); return false;"><img border=0 id="plus781" src=inform:/doc_images/extra.png></a>&nbsp;say "[them]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5639     <div id="extra781" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[them]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[them]"</p>
   5640     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5641     <p class="tightin2"><a href="#" onclick="showExtra('extra782', 'plus782'); return false;"><img border=0 id="plus782" src=inform:/doc_images/extra.png></a>&nbsp;say "[Them]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5642     <div id="extra782" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Them]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Them]"</p>
   5643     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5644     <p class="tightin2"><a href="#" onclick="showExtra('extra783', 'plus783'); return false;"><img border=0 id="plus783" src=inform:/doc_images/extra.png></a>&nbsp;say "[theirs]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5645     <div id="extra783" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[theirs]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[theirs]"</p>
   5646     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5647     <p class="tightin2"><a href="#" onclick="showExtra('extra784', 'plus784'); return false;"><img border=0 id="plus784" src=inform:/doc_images/extra.png></a>&nbsp;say "[Theirs]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5648     <div id="extra784" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Theirs]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Theirs]"</p>
   5649     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5650     <p class="tightin2"><a href="#" onclick="showExtra('extra785', 'plus785'); return false;"><img border=0 id="plus785" src=inform:/doc_images/extra.png></a>&nbsp;say "[themselves]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5651     <div id="extra785" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[themselves]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[themselves]"</p>
   5652     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5653     <p class="tightin2"><a href="#" onclick="showExtra('extra786', 'plus786'); return false;"><img border=0 id="plus786" src=inform:/doc_images/extra.png></a>&nbsp;say "[Themselves]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5654     <div id="extra786" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Themselves]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Themselves]"</p>
   5655     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5656     <p class="tightin2"><a href="#" onclick="showExtra('extra787', 'plus787'); return false;"><img border=0 id="plus787" src=inform:/doc_images/extra.png></a>&nbsp;say "[they're]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5657     <div id="extra787" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[they[=0x0027=]re]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[they're]"</p>
   5658     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5659     <p class="tightin2"><a href="#" onclick="showExtra('extra788', 'plus788'); return false;"><img border=0 id="plus788" src=inform:/doc_images/extra.png></a>&nbsp;say "[They're]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5660     <div id="extra788" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[They[=0x0027=]re]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[They're]"</p>
   5661     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5662     <p class="tightin2"><a href="#" onclick="showExtra('extra789', 'plus789'); return false;"><img border=0 id="plus789" src=inform:/doc_images/extra.png></a>&nbsp;say "[It]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5663     <div id="extra789" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[It]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[It]"</p>
   5664     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5665     <p class="tightin2"><a href="#" onclick="showExtra('extra790', 'plus790'); return false;"><img border=0 id="plus790" src=inform:/doc_images/extra.png></a>&nbsp;say "[There]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5666     <div id="extra790" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[There]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[There]"</p>
   5667     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5668     <p class="tightin2"><a href="#" onclick="showExtra('extra791', 'plus791'); return false;"><img border=0 id="plus791" src=inform:/doc_images/extra.png></a>&nbsp;say "[it]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5669     <div id="extra791" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[it]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[it]"</p>
   5670     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5671     <p class="tightin2"><a href="#" onclick="showExtra('extra792', 'plus792'); return false;"><img border=0 id="plus792" src=inform:/doc_images/extra.png></a>&nbsp;say "[there]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5672     <div id="extra792" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[there]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[there]"</p>
   5673     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5674     <p class="tightin2"><a href="#" onclick="showExtra('extra793', 'plus793'); return false;"><img border=0 id="plus793" src=inform:/doc_images/extra.png></a>&nbsp;say "[It's]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5675     <div id="extra793" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[It[=0x0027=]s]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[It's]"</p>
   5676     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5677     <p class="tightin2"><a href="#" onclick="showExtra('extra794', 'plus794'); return false;"><img border=0 id="plus794" src=inform:/doc_images/extra.png></a>&nbsp;say "[There's]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5678     <div id="extra794" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[There[=0x0027=]s]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[There's]"</p>
   5679     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5680     <p class="tightin2"><a href="#" onclick="showExtra('extra795', 'plus795'); return false;"><img border=0 id="plus795" src=inform:/doc_images/extra.png></a>&nbsp;say "[it's]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5681     <div id="extra795" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[it[=0x0027=]s]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[it's]"</p>
   5682     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5683     <p class="tightin2"><a href="#" onclick="showExtra('extra796', 'plus796'); return false;"><img border=0 id="plus796" src=inform:/doc_images/extra.png></a>&nbsp;say "[there's]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5684     <div id="extra796" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[there[=0x0027=]s]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[there's]"</p>
   5685     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5686     <p class="tightin2"><a href="#" onclick="showExtra('extra797', 'plus797'); return false;"><img border=0 id="plus797" src=inform:/doc_images/extra.png></a>&nbsp;say "[possessive]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5687     <div id="extra797" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[possessive]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[possessive]"</p>
   5688     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5689     <p class="tightin2"><a href="#" onclick="showExtra('extra798', 'plus798'); return false;"><img border=0 id="plus798" src=inform:/doc_images/extra.png></a>&nbsp;say "[Possessive]"&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a></p>
   5690     <div id="extra798" style="display: none;"><p class="in3"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color: #e0e0e0"><tr><td width="8"><img src="inform:/bg_images/tl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/tr_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr><tr><td width="8"></td><td><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><a href="javascript:pasteCode('[Possessive]')"><img border=0 src=inform:/doc_images/paste.png></a>&nbsp;say "[Possessive]"</p>
   5691     </font></td><td width="8"></td></tr><tr><td width="8"><img src="inform:/bg_images/bl_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td><td></td><td width="8"><img src="inform:/bg_images/br_corner_e0e0e0.gif" width="8" height="8" border="0" alt="..." /></td></tr></table></div>
   5692     </div>
   5693     <div id="segment2">
   5694     <hr><table cellspacing="3" border="0" style="background:#eeeeee;"><tr>
   5695     <td valign="top" align="left">
   5696     <div id="minibox4_2" class="smallbox">
   5697     <a class="symbol" title="Lexicon" href="#" onclick="click_element_box('segment2'); return false;">Lx</a>
   5698     <div class="indexno">2</div>
   5699     </div>
   5700     </td>
   5701     <td style="width:100%;" align="left" valign="top">
   5702     <p style="margin-top:0px;padding-top:0px;margin-bottom:0px;padding-bottom:0px;line-height:150%;"><b>Lexicon</b> &mdash; 
   5703     Words used in descriptions<br><i>About descriptions&nbsp;&nbsp;<a href=inform:/doc82.html><img border=0 src=inform:/doc_images/help.png></a></i></p>
   5704     </td>
   5705     </tr></table>
   5706     <a name=LEXICON></a><p><small>For instance, the description 'an unlocked door' is made up from the adjective 'unlocked' and the noun 'door', both of which can be found below. Property adjectives, like 'open', can be used when creating things - 'In the Ballroom is an open container' is allowed because 'open' is a property - but those with complicated definitions, like 'empty', can only be tested during play, e.g. with rules like 'Instead of taking an empty container, ...'.</small></p><p class="hang">a</p>
   5707     <p class="hang">a part of, to be&nbsp;<a href=#A10000><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5708     <p class="hang">above, to be&nbsp;<a href=#A10001><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5709     <p class="hang">accusative&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical case</p>
   5710     <p class="hang">achieve</p>
   5711     <p class="hang">active ... <i>adjective: (of </i>use option<i>) it has been requested in the source text</i></p>
   5712     <p class="hang">adjacent ... <i>adjective: (of </i>room<i>) A room is adjacent if it is adjacent to the location</i></p>
   5713     <p class="hang">adjacent to, to be&nbsp;<a href=#A10002><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5714     <p class="hang">all <i>used in conditions: 'if all of the doors are open'</i></p>
   5715     <p class="hang">all but <i>used to count things: 'all but three containers'</i></p>
   5716     <p class="hang">all except <i>- see </i>all but<i></i></p>
   5717     <p class="hang">almost all <i>used in conditions: true if 80 percent or more possibilities work</i></p>
   5718     <p class="hang">almost no <i>used in conditions: true if fewer than 20 percent of possibilities work</i></p>
   5719     <p class="hang">ambiguously plural ... <i>adjective: (of </i>object<i>) either/or property of </i>object<i></i></p>
   5720     <p class="hang">an</p>
   5721     <p class="hang">animal ... <i>noun, a kind of </i>person</p>
   5722     <p class="hang">appreciate</p>
   5723     <p class="hang">aren't holding that error ... <i>noun, value of </i>command parser error</p>
   5724     <p class="hang">arrive</p>
   5725     <p class="hang">at least <i>used to count things: 'at least five doors'</i></p>
   5726     <p class="hang">at least, to be&nbsp;<a href=#A10003><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5727     <p class="hang">at most <i>- see </i>at least<i></i></p>
   5728     <p class="hang">at most, to be&nbsp;<a href=#A10004><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5729     <p></p><p class="hang">backdrop&nbsp;<a href=inform:/doc34.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>thing</p>
   5730     <p class="hang">be&nbsp;<a href=#A10005><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5731     <p class="hang">be able to</p>
   5732     <p class="hang">be able to see&nbsp;<a href=#A10006><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5733     <p class="hang">be able to touch&nbsp;<a href=#A10007><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5734     <p class="hang">being able to see, to be&nbsp;<a href=#A10008><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5735     <p class="hang">being able to touch, to be&nbsp;<a href=#A10009><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5736     <p class="hang">below, to be&nbsp;<a href=#A10010><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5737     <p></p><p class="hang">can only do that to something animate error ... <i>noun, value of </i>command parser error</p>
   5738     <p class="hang">can only use multiple objects error ... <i>noun, value of </i>command parser error</p>
   5739     <p class="hang">can't again the addressee error ... <i>noun, value of </i>command parser error</p>
   5740     <p class="hang">can't see any such thing error ... <i>noun, value of </i>command parser error</p>
   5741     <p class="hang">can't see it at the moment error ... <i>noun, value of </i>command parser error</p>
   5742     <p class="hang">can't see whom to talk to error ... <i>noun, value of </i>command parser error</p>
   5743     <p class="hang">can't talk to inanimate things error ... <i>noun, value of </i>command parser error</p>
   5744     <p class="hang">can't use multiple objects error ... <i>noun, value of </i>command parser error</p>
   5745     <p class="hang">care</p>
   5746     <p class="hang">carried ... <i>adjective: (of </i>thing<i>) a thing is carried if the player is carrying it</i></p>
   5747     <p class="hang">carried by, to be&nbsp;<a href=#A10011><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5748     <p class="hang">carry&nbsp;<a href=#A10012><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5749     <p class="hang">carrying, to be&nbsp;<a href=#A10013><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5750     <p class="hang">close</p>
   5751     <p class="hang">closed ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i>, opposite of </i>open<i></i></p>
   5752     <p class="hang">comma can't begin error ... <i>noun, value of </i>command parser error</p>
   5753     <p class="hang">conceal&nbsp;<a href=#A10014><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5754     <p class="hang">concealed ... <i>adjective: (of </i>thing<i>) Something is concealed rather than unconcealed if the holder of it conceals it</i></p>
   5755     <p class="hang">concealed by, to be&nbsp;<a href=#A10015><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5756     <p class="hang">concealing, to be&nbsp;<a href=#A10016><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5757     <p class="hang">contain&nbsp;<a href=#A10017><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5758     <p class="hang">contained by, to be&nbsp;<a href=#A10018><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5759     <p class="hang">contained in, to be&nbsp;<a href=#A10019><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5760     <p class="hang">container ... <i>noun, a kind of </i>thing</p>
   5761     <p class="hang">containing, to be&nbsp;<a href=#A10020><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5762     <p class="hang">could</p>
   5763     <p></p><p class="hang">dark ... <i>adjective: (of </i>object<i>) either/or property of </i>room<i>, opposite of </i>lighted<i></i></p>
   5764     <p class="hang">described ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>undescribed<i></i></p>
   5765     <p class="hang">device&nbsp;<a href=inform:/doc39.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>thing</p>
   5766     <p class="hang">didn't understand addressee's last name error ... <i>noun, value of </i>command parser error</p>
   5767     <p class="hang">didn't understand error ... <i>noun, value of </i>command parser error</p>
   5768     <p class="hang">didn't understand that number error ... <i>noun, value of </i>command parser error</p>
   5769     <p class="hang">didn't understand the way that finished error ... <i>noun, value of </i>command parser error</p>
   5770     <p class="hang">die</p>
   5771     <p class="hang">direction&nbsp;<a href=inform:/doc51.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>object</p>
   5772     <p class="hang">discover</p>
   5773     <p class="hang">do</p>
   5774     <p class="hang">door&nbsp;<a href=inform:/doc37.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>thing</p>
   5775     <p class="hang">drop</p>
   5776     <p></p><p class="hang">each <i>- see </i>all<i></i></p>
   5777     <p class="hang">eat</p>
   5778     <p class="hang">edible ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>inedible<i></i></p>
   5779     <p class="hang">empty ... <i>adjective: <br>1. (of </i>text<i>) it contains no characters; <br>2. (of </i>table name<i>) a table name is empty rather than non-empty if the number of filled rows in it is 0; <br>3. (of </i>rulebook<i>) it contains no rules, so that following it does nothing and makes no decision; <br>4. (of </i>activity<i>) its before, for and after rulebooks are all empty; <br>5. (of </i>list of k<i>) it contains no entries; <br>6. (of </i>relation<i>) it does not relate any values, that is, R (x, y) is false for all x and y</i></p>
   5780     <p class="hang">enclose&nbsp;<a href=#A10021><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5781     <p class="hang">enclosed by, to be&nbsp;<a href=#A10022><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5782     <p class="hang">enclosing, to be&nbsp;<a href=#A10023><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5783     <p class="hang">English language ... <i>noun, value of </i>natural language</p>
   5784     <p class="hang">enterable ... <i>adjective: (of </i>object<i>) either/or property of </i>container<i> or </i>supporter<i></i></p>
   5785     <p class="hang">Entire Game ... <i>noun, value of </i>scene</p>
   5786     <p class="hang">equivalence ... <i>adjective: (of </i>relation<i>) it is an equivalence relation, that is, it relates in groups</i></p>
   5787     <p class="hang">even ... <i>adjective: (of </i>number<i>) a number is even rather than odd if the remainder after dividing it by 2 is 0</i></p>
   5788     <p class="hang">every <i>- see </i>all<i>, and can also be used in generalisations such as 'A nose is part of every person.'</i></p>
   5789     <p class="hang">exactly <i>whereas 'if two doors are open' implicitly means 'if at least two doors are open', 'if exactly two...' makes the count precise</i></p>
   5790     <p class="hang">excepted something not included error ... <i>noun, value of </i>command parser error</p>
   5791     <p class="hang">existent ... <i>adjective: (of </i>real number<i>)  opposite of </i>nonexistent<i></i></p>
   5792     <p></p><p class="hang">feel</p>
   5793     <p class="hang">female ... <i>adjective: (of </i>object<i>) either/or property of </i>person<i>, opposite of </i>male<i></i></p>
   5794     <p class="hang">feminine gender&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical gender</p>
   5795     <p class="hang">fewer than <i>pedantic way to say </i>less than<i> when counting</i></p>
   5796     <p class="hang">Figure of cover ... <i>noun, value of </i>figure name</p>
   5797     <p class="hang">find</p>
   5798     <p class="hang">finite ... <i>adjective: (of </i>real number<i>)  opposite of </i>infinite<i></i></p>
   5799     <p class="hang">first person plural&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>narrative viewpoint</p>
   5800     <p class="hang">first person singular&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>narrative viewpoint</p>
   5801     <p class="hang">fixed in place ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>portable<i></i></p>
   5802     <p class="hang">French language ... <i>noun, value of </i>natural language</p>
   5803     <p class="hang">full ... <i>adjective: (of </i>table name<i>) a table name is full rather than non-full if the number of blank rows in it is 0</i></p>
   5804     <p class="hang">future tense&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical tense</p>
   5805     <p></p><p class="hang">German language ... <i>noun, value of </i>natural language</p>
   5806     <p class="hang">get</p>
   5807     <p class="hang">give</p>
   5808     <p class="hang">go</p>
   5809     <p class="hang">going on ... <i>adjective: (of </i>activity<i>) one of its three rulebooks is currently being run</i></p>
   5810     <p class="hang">greater than <i>used to count things: 'greater than three rooms'</i></p>
   5811     <p class="hang">greater than, to be&nbsp;<a href=#A10024><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5812     <p></p><p class="hang">had by, to be&nbsp;<a href=#A10025><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5813     <p class="hang">handled ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i></i></p>
   5814     <p class="hang">happen</p>
   5815     <p class="hang">happening ... <i>adjective: (of </i>scene<i>) it is currently taking place</i></p>
   5816     <p class="hang">have&nbsp;<a href=#A10026><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5817     <p class="hang">having, to be&nbsp;<a href=#A10027><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5818     <p class="hang">hear</p>
   5819     <p class="hang">held ... <i>adjective: (of </i>thing<i>) a thing is held if the player is holding it</i></p>
   5820     <p class="hang">held by, to be&nbsp;<a href=#A10028><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5821     <p class="hang">held in, to be&nbsp;<a href=#A10029><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5822     <p class="hang">held inside, to be&nbsp;<a href=#A10030><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5823     <p class="hang">hold&nbsp;<a href=#A10031><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5824     <p class="hang">holding, to be&nbsp;<a href=#A10032><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5825     <p></p><p class="hang">I beg your pardon error ... <i>noun, value of </i>command parser error</p>
   5826     <p class="hang">improper-named ... <i>adjective: (of </i>object<i>) either/or property of </i>object<i>, opposite of </i>proper-named<i></i></p>
   5827     <p class="hang">in, to be&nbsp;<a href=#A10033><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5828     <p class="hang">inactive ... <i>adjective: (of </i>use option<i>)  opposite of </i>active<i></i></p>
   5829     <p class="hang">incorporate&nbsp;<a href=#A10034><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5830     <p class="hang">incorporated by, to be&nbsp;<a href=#A10035><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5831     <p class="hang">incorporating, to be&nbsp;<a href=#A10036><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5832     <p class="hang">inedible ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>edible<i></i></p>
   5833     <p class="hang">infinite ... <i>adjective: (of </i>real number<i>) a real number is infinite rather than finite if it is plus infinity or it is minus infinity</i></p>
   5834     <p class="hang">inside, to be&nbsp;<a href=#A10037><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5835     <p class="hang">invisible ... <i>adjective: (of </i>thing<i>)  opposite of </i>visible<i></i></p>
   5836     <p class="hang">Italian language ... <i>noun, value of </i>natural language</p>
   5837     <p></p><p class="hang">jump</p>
   5838     <p></p><p class="hang">lack</p>
   5839     <p class="hang">lead</p>
   5840     <p class="hang">less than <i>- see </i>more than<i></i></p>
   5841     <p class="hang">less than, to be&nbsp;<a href=#A10038><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5842     <p class="hang">lighted ... <i>adjective: (of </i>object<i>) either/or property of </i>room<i>, opposite of </i>dark<i></i></p>
   5843     <p class="hang">like</p>
   5844     <p class="hang">listen</p>
   5845     <p class="hang">lit ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>unlit<i></i></p>
   5846     <p class="hang">locale-supportable ... <i>adjective: (of </i>thing<i>) a thing (called the item) is locale-supportable if the item is not scenery and the item is not mentioned and the item is not undescribed</i></p>
   5847     <p class="hang">lock</p>
   5848     <p class="hang">lockable ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i> or </i>container<i></i></p>
   5849     <p class="hang">locked ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i> or </i>container<i>, opposite of </i>unlocked<i></i></p>
   5850     <p class="hang">look</p>
   5851     <p></p><p class="hang">male ... <i>adjective: (of </i>object<i>) either/or property of </i>person<i>, opposite of </i>female<i></i></p>
   5852     <p class="hang">man ... <i>noun, a kind of </i>person</p>
   5853     <p class="hang">mapped above, to be&nbsp;<a href=#A10039><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5854     <p class="hang">mapped below, to be&nbsp;<a href=#A10040><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5855     <p class="hang">mapped down of, to be&nbsp;<a href=#A10041><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5856     <p class="hang">mapped east of, to be&nbsp;<a href=#A10042><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5857     <p class="hang">mapped inside, to be&nbsp;<a href=#A10043><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5858     <p class="hang">mapped north of, to be&nbsp;<a href=#A10044><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5859     <p class="hang">mapped northeast of, to be&nbsp;<a href=#A10045><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5860     <p class="hang">mapped northwest of, to be&nbsp;<a href=#A10046><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5861     <p class="hang">mapped outside, to be&nbsp;<a href=#A10047><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5862     <p class="hang">mapped south of, to be&nbsp;<a href=#A10048><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5863     <p class="hang">mapped southeast of, to be&nbsp;<a href=#A10049><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5864     <p class="hang">mapped southwest of, to be&nbsp;<a href=#A10050><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5865     <p class="hang">mapped up of, to be&nbsp;<a href=#A10051><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5866     <p class="hang">mapped west of, to be&nbsp;<a href=#A10052><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5867     <p class="hang">marked for listing ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i> or </i>direction<i>, opposite of </i>unmarked for listing<i></i></p>
   5868     <p class="hang">masculine gender&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical gender</p>
   5869     <p class="hang">may</p>
   5870     <p class="hang">mean&nbsp;<a href=#A10053><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5871     <p class="hang">meaning, to be&nbsp;<a href=#A10054><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5872     <p class="hang">meaningful ... <i>adjective: (of </i>verb<i>) it has a meaning in Inform as a relation, rather than existing only to be printed out</i></p>
   5873     <p class="hang">meaningless ... <i>adjective: (of </i>verb<i>)  opposite of </i>meaningful<i></i></p>
   5874     <p class="hang">meant by, to be&nbsp;<a href=#A10055><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5875     <p class="hang">mentioned ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>unmentioned<i></i></p>
   5876     <p class="hang">might</p>
   5877     <p class="hang">modal ... <i>adjective: (of </i>verb<i>) it modifies the likelihood of another verb happening, rather than being meaningful itself</i></p>
   5878     <p class="hang">more than <i>used to count things: 'more than three rooms'</i></p>
   5879     <p class="hang">most <i>used in conditions: true if a simple majority of possibilities work</i></p>
   5880     <p class="hang">must</p>
   5881     <p></p><p class="hang">need</p>
   5882     <p class="hang">negative ... <i>adjective: <br>1. (of </i>number<i>) a number is negative if it is less than zero; <br>2. (of </i>real number<i>) a real number is negative if it is less than zero</i></p>
   5883     <p class="hang">neuter ... <i>adjective: (of </i>object<i>) either/or property of </i>person<i></i></p>
   5884     <p class="hang">neuter gender&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical gender</p>
   5885     <p class="hang">no <i>opposite of 'all': 'if no door is open...'</i></p>
   5886     <p class="hang">nominative&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical case</p>
   5887     <p class="hang">non-empty ... <i>adjective: <br>1. (of </i>text<i>)  opposite of </i>empty<i>; <br>2. (of </i>table name<i>)  opposite of </i>empty<i>; <br>3. (of </i>rulebook<i>)  opposite of </i>empty<i>; <br>4. (of </i>activity<i>)  opposite of </i>empty<i>; <br>5. (of </i>list of k<i>)  opposite of </i>empty<i>; <br>6. (of </i>relation<i>)  opposite of </i>empty<i></i></p>
   5888     <p class="hang">non-full ... <i>adjective: (of </i>table name<i>)  opposite of </i>full<i></i></p>
   5889     <p class="hang">non-modal ... <i>adjective: (of </i>verb<i>)  opposite of </i>modal<i></i></p>
   5890     <p class="hang">non-recurring ... <i>adjective: (of </i>scene<i>) either/or property of </i>scene<i>, opposite of </i>recurring<i></i></p>
   5891     <p class="hang">none <i>opposite of 'all of': 'if none of the doors is open...'</i></p>
   5892     <p class="hang">nonexistent ... <i>adjective: (of </i>real number<i>) it results from an impossible calculation, like the square root of minus one</i></p>
   5893     <p class="hang">not a verb I recognise error ... <i>noun, value of </i>command parser error</p>
   5894     <p class="hang">not enough of those available error ... <i>noun, value of </i>command parser error</p>
   5895     <p class="hang">not something you need to refer to error ... <i>noun, value of </i>command parser error</p>
   5896     <p class="hang">not sure what it refers to error ... <i>noun, value of </i>command parser error</p>
   5897     <p class="hang">nothing to do error ... <i>noun, value of </i>command parser error</p>
   5898     <p class="hang">noun did not make sense in that context error ... <i>noun, value of </i>command parser error</p>
   5899     <p></p><p class="hang">odd ... <i>adjective: (of </i>number<i>)  opposite of </i>even<i></i></p>
   5900     <p class="hang">off-stage ... <i>adjective: (of </i>thing<i>)  opposite of </i>on-stage<i></i></p>
   5901     <p class="hang">offstage ... <i>adjective: (of </i>thing<i>) Something is offstage if it is off-stage</i></p>
   5902     <p class="hang">on, to be&nbsp;<a href=#A10056><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5903     <p class="hang">on top of, to be&nbsp;<a href=#A10057><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5904     <p class="hang">on-stage ... <i>adjective: (of </i>thing<i>) it is indirectly in one of the rooms</i></p>
   5905     <p class="hang">one-to-one ... <i>adjective: (of </i>relation<i>) it is a one-to-one relation, that is, any given X can relate to only one Y, and vice versa</i></p>
   5906     <p class="hang">one-to-various ... <i>adjective: (of </i>relation<i>) it is a one-to-various relation, that is, any given Y has only one X such that X relates to Y</i></p>
   5907     <p class="hang">only understood as far as error ... <i>noun, value of </i>command parser error</p>
   5908     <p class="hang">opaque ... <i>adjective: (of </i>object<i>) either/or property of </i>container<i>, opposite of </i>transparent<i></i></p>
   5909     <p class="hang">open ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i> or </i>container<i>, opposite of </i>closed<i></i></p>
   5910     <p class="hang">open</p>
   5911     <p class="hang">openable ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i> or </i>container<i>, opposite of </i>unopenable<i></i></p>
   5912     <p></p><p class="hang">part of, to be&nbsp;<a href=#A10058><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5913     <p class="hang">parts of, to be&nbsp;<a href=#A10059><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5914     <p class="hang">pass</p>
   5915     <p class="hang">past perfect tense&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical tense</p>
   5916     <p class="hang">past tense&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical tense</p>
   5917     <p class="hang">perfect tense&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical tense</p>
   5918     <p class="hang">person&nbsp;<a href=inform:/doc42.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>thing</p>
   5919     <p class="hang">pick</p>
   5920     <p class="hang">player's holdall&nbsp;<a href=inform:/doc46.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>container</p>
   5921     <p class="hang">plural-named ... <i>adjective: (of </i>object<i>) either/or property of </i>object<i>, opposite of </i>singular-named<i></i></p>
   5922     <p class="hang">portable ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>fixed in place<i></i></p>
   5923     <p class="hang">positive ... <i>adjective: <br>1. (of </i>number<i>) a number is positive if it is greater than zero; <br>2. (of </i>real number<i>) a real number is positive if it is greater than zero</i></p>
   5924     <p class="hang">present tense&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>grammatical tense</p>
   5925     <p class="hang">privately-named ... <i>adjective: (of </i>object<i>) either/or property of </i>room<i>, </i>region<i>, </i>thing<i> or </i>direction<i>, opposite of </i>publicly-named<i></i></p>
   5926     <p class="hang">proper-named ... <i>adjective: (of </i>object<i>) either/or property of </i>object<i>, opposite of </i>improper-named<i></i></p>
   5927     <p class="hang">provide&nbsp;<a href=#A10060><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5928     <p class="hang">provided by, to be&nbsp;<a href=#A10061><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5929     <p class="hang">providing, to be&nbsp;<a href=#A10062><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5930     <p class="hang">provoke</p>
   5931     <p class="hang">publicly-named ... <i>adjective: (of </i>object<i>) either/or property of </i>room<i>, opposite of </i>privately-named<i></i></p>
   5932     <p class="hang">pull</p>
   5933     <p class="hang">push</p>
   5934     <p class="hang">pushable between rooms ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i></i></p>
   5935     <p class="hang">put</p>
   5936     <p></p><p class="hang">recurring ... <i>adjective: (of </i>scene<i>) either/or property of </i>scene<i>, opposite of </i>non-recurring<i></i></p>
   5937     <p class="hang">referred to a determination of scope error ... <i>noun, value of </i>command parser error</p>
   5938     <p class="hang">region&nbsp;<a href=inform:/doc29.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>object</p>
   5939     <p class="hang">regionally in, to be&nbsp;<a href=#A10063><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5940     <p class="hang">relate&nbsp;<a href=#A10064><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5941     <p class="hang">related by, to be&nbsp;<a href=#A10065><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5942     <p class="hang">relating, to be&nbsp;<a href=#A10066><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5943     <p class="hang">room&nbsp;<a href=inform:/doc27.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>object</p>
   5944     <p class="hang">rub</p>
   5945     <p></p><p class="hang">said too little error ... <i>noun, value of </i>command parser error</p>
   5946     <p class="hang">say</p>
   5947     <p class="hang">scenery ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i></i></p>
   5948     <p class="hang">search</p>
   5949     <p class="hang">second person plural&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>narrative viewpoint</p>
   5950     <p class="hang">second person singular&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>narrative viewpoint</p>
   5951     <p class="hang">see</p>
   5952     <p class="hang">seem</p>
   5953     <p class="hang">set</p>
   5954     <p class="hang">should</p>
   5955     <p class="hang">singular-named ... <i>adjective: (of </i>object<i>) either/or property of </i>object<i>, opposite of </i>plural-named<i></i></p>
   5956     <p class="hang">smell</p>
   5957     <p class="hang">sniff</p>
   5958     <p class="hang">some</p>
   5959     <p class="hang">Spanish language ... <i>noun, value of </i>natural language</p>
   5960     <p class="hang">squeeze</p>
   5961     <p class="hang">substituted ... <i>adjective: (of </i>text<i>) any square-bracketed text substitutions in it have been made</i></p>
   5962     <p class="hang">support&nbsp;<a href=#A10067><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5963     <p class="hang">supported by, to be&nbsp;<a href=#A10068><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5964     <p class="hang">supported on, to be&nbsp;<a href=#A10069><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5965     <p class="hang">supporter ... <i>noun, a kind of </i>thing</p>
   5966     <p class="hang">supporting, to be&nbsp;<a href=#A10070><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5967     <p class="hang">Swedish language ... <i>noun, value of </i>natural language</p>
   5968     <p class="hang">switch</p>
   5969     <p class="hang">switched off ... <i>adjective: (of </i>object<i>) either/or property of </i>device<i>, opposite of </i>switched on<i></i></p>
   5970     <p class="hang">switched on ... <i>adjective: (of </i>object<i>) either/or property of </i>device<i>, opposite of </i>switched off<i></i></p>
   5971     <p class="hang">symmetric ... <i>adjective: (of </i>relation<i>) it is a symmetric relation, that is, it's always true that X is related to Y if and only if Y is related to X</i></p>
   5972     <p></p><p class="hang">take</p>
   5973     <p class="hang">talk</p>
   5974     <p class="hang">taste</p>
   5975     <p class="hang">that <i>used to place a further condition on a description: like 'which' in 'A which is B', or 'A which carries B', for instance.</i></p>
   5976     <p class="hang">the</p>
   5977     <p class="hang">the same property as, to be&nbsp;<a href=#A10071><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5978     <p class="hang">thing ... <i>noun, a kind of </i>object</p>
   5979     <p class="hang">third person plural&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>narrative viewpoint</p>
   5980     <p class="hang">third person singular&nbsp;<a href='inform://Extensions/Extensions/Graham%20Nelson/English%20Language.html' title="English Language by Graham Nelson" STYLE="text-decoration: none"><img border=0 src=inform:/doc_images/Revealext.png></a> ... <i>noun, value of </i>narrative viewpoint</p>
   5981     <p class="hang">through, to be&nbsp;<a href=#A10072><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5982     <p class="hang">touch</p>
   5983     <p class="hang">touchable ... <i>adjective: (of </i>thing<i>) Something is touchable rather than untouchable if the player can touch it</i></p>
   5984     <p class="hang">transparent ... <i>adjective: (of </i>object<i>) either/or property of </i>container<i>, opposite of </i>opaque<i></i></p>
   5985     <p class="hang">turn</p>
   5986     <p></p><p class="hang">unconcealed ... <i>adjective: (of </i>thing<i>)  opposite of </i>concealed<i></i></p>
   5987     <p class="hang">under half <i>used in conditions: true if fewer than half of possibilities work</i></p>
   5988     <p class="hang">undescribed ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>described<i></i></p>
   5989     <p class="hang">unlit ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>lit<i></i></p>
   5990     <p class="hang">unlock&nbsp;<a href=#A10073><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5991     <p class="hang">unlocked ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i>, opposite of </i>locked<i></i></p>
   5992     <p class="hang">unlocked by, to be&nbsp;<a href=#A10074><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5993     <p class="hang">unlocking, to be&nbsp;<a href=#A10075><img border=0 src=inform:/doc_images/Below.tif></a></p>
   5994     <p class="hang">unmarked for listing ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>marked for listing<i></i></p>
   5995     <p class="hang">unmentioned ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i>, opposite of </i>mentioned<i></i></p>
   5996     <p class="hang">unopenable ... <i>adjective: (of </i>object<i>) either/or property of </i>door<i>, opposite of </i>openable<i></i></p>
   5997     <p class="hang">unsubstituted ... <i>adjective: (of </i>text<i>)  opposite of </i>substituted<i></i></p>
   5998     <p class="hang">untouchable ... <i>adjective: (of </i>thing<i>)  opposite of </i>touchable<i></i></p>
   5999     <p class="hang">unvisited ... <i>adjective: (of </i>object<i>) either/or property of </i>room<i>, opposite of </i>visited<i></i></p>
   6000     <p></p><p class="hang">various-to-one ... <i>adjective: (of </i>relation<i>) it is a various-to-one relation, that is, any given X relates to only one Y</i></p>
   6001     <p class="hang">various-to-various ... <i>adjective: (of </i>relation<i>) it is a various-to-various relation, that is, there are no limitations on how many X can relate to a given Y, or vice versa</i></p>
   6002     <p class="hang">vehicle&nbsp;<a href=inform:/doc41.html><img border=0 src=inform:/doc_images/help.png></a> ... <i>noun, a kind of </i>container</p>
   6003     <p class="hang">visible ... <i>adjective: (of </i>thing<i>) Something is visible rather than invisible if the player can see it</i></p>
   6004     <p class="hang">visited ... <i>adjective: (of </i>object<i>) either/or property of </i>room<i>, opposite of </i>unvisited<i></i></p>
   6005     <p></p><p class="hang">wait</p>
   6006     <p class="hang">wave</p>
   6007     <p class="hang">wear&nbsp;<a href=#A10076><img border=0 src=inform:/doc_images/Below.tif></a></p>
   6008     <p class="hang">wearable ... <i>adjective: (of </i>object<i>) either/or property of </i>thing<i></i></p>
   6009     <p class="hang">wearing, to be&nbsp;<a href=#A10077><img border=0 src=inform:/doc_images/Below.tif></a></p>
   6010     <p class="hang">which <i>used to place a further condition on a description: like 'which' in 'A which is B', or 'A which carries B', for instance.</i></p>
   6011     <p class="hang">who <i>used to place a further condition on a description: like 'which' in 'A which is B', or 'A which carries B', for instance.</i></p>
   6012     <p class="hang">win</p>
   6013     <p class="hang">within, to be&nbsp;<a href=#A10078><img border=0 src=inform:/doc_images/Below.tif></a></p>
   6014     <p class="hang">woman ... <i>noun, a kind of </i>person</p>
   6015     <p class="hang">worn ... <i>adjective: (of </i>thing<i>) a thing is worn if the player is wearing it</i></p>
   6016     <p class="hang">worn by, to be&nbsp;<a href=#A10079><img border=0 src=inform:/doc_images/Below.tif></a></p>
   6017     <p class="hang">would</p>
   6018     </div>
   6019     <div id="segment3">
   6020     <hr><table cellspacing="3" border="0" style="background:#eeeeee;"><tr>
   6021     <td valign="top" align="left">
   6022     <div id="minibox4_3" class="smallbox">
   6023     <a class="symbol" title="Relations" href="#" onclick="click_element_box('segment3'); return false;">Rl</a>
   6024     <div class="indexno">3</div>
   6025     </div>
   6026     </td>
   6027     <td style="width:100%;" align="left" valign="top">
   6028     <p style="margin-top:0px;padding-top:0px;margin-bottom:0px;padding-bottom:0px;line-height:150%;"><b>Relations</b> &mdash; 
   6029     Relations give meaning to verbs<br><i>About relations&nbsp;&nbsp;<a href=inform:/doc200.html><img border=0 src=inform:/doc_images/help.png></a></i></p>
   6030     </td>
   6031     </tr></table>
   6032     <p><table border="0" cellspacing="0" cellpadding="0"><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><i>name</i>&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><i>category</i>&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><i>relates this...</i>&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2><i>...to this</i></font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>equality &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>equality&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>value&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>value</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>provision &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>provision&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>value&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>property</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numerically-greater-than &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numeric&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numerically-less-than &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numeric&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numerically-greater-than-or-equal-to &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numeric&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numerically-less-than-or-equal-to &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>numeric&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>arithmetic value</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>containment &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>container/room&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>support &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>supporter&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>incorporation &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>carrying &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>person&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>holding &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>person&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>wearing &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>person&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>possession &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>person&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room-containment &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>visibility &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>touchability &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>concealment &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>enclosure &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>object&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>object</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>adjacency &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>regional-containment &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>spatial&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>region&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/region</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  north &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  northeast &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  northwest &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  south &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  southeast &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  southwest &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  east &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  west &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  up &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  down &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  inside &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>mapping  outside &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>map&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room/door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>leading-through &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>one-to-various&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>room&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>door</font></td></tr><tr><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>lock-fitting &nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>one-to-various&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing&nbsp;&nbsp;&nbsp;&nbsp;</font></td><td align="left" valign="top"><font face="lucida grande,geneva,arial,tahoma,verdana,helvetica,helv" size=2>thing</font></td></tr></table></p></div>
   6033     <div id="segment4">
   6034     <hr><table cellspacing="3" border="0" style="background:#eeeeee;"><tr>
   6035     <td valign="top" align="left">
   6036     <div id="minibox4_4" class="smallbox">
   6037     <a class="symbol" title="Verbs" href="#" onclick="click_element_box('segment4'); return false;">Vb</a>
   6038     <div class="indexno">4</div>
   6039     </div>
   6040     </td>
   6041     <td style="width:100%;" align="left" valign="top">
   6042     <p style="margin-top:0px;padding-top:0px;margin-bottom:0px;padding-bottom:0px;line-height:150%;"><b>Verbs</b> &mdash; 
   6043     A table of verbs<br><i>About verbs&nbsp;&nbsp;<a href=inform:/doc198.html><img border=0 src=inform:/doc_images/help.png></a></i></p>
   6044     </td>
   6045     </tr></table>
   6046     <p></p><p>Verbs listed as "for saying only" are values of the kind "verb" and can be used in adaptive text, but they have no meaning to Inform, so they can't be used in sentences about what's in the story.</p><p class="hang"><a name=A10000></a>To be <b>a part of</b> ... <i>reversed incorporation </i></p><p class="hang"><a name=A10001></a>To be <b>above</b> ... <i>reversed mapping  up </i></p><p class="hang"><a name=A10002></a>To <b>achieve</b> ... for saying only</p><p class="hang"><a name=A10003></a>To be <b>adjacent to</b> ... <i>reversed adjacency </i></p><p class="hang"><a name=A10004></a>To <b>appreciate</b> ... for saying only</p><p class="hang"><a name=A10005></a>To <b>arrive</b> ... for saying only</p><p class="hang"><a name=A10006></a>To be <b>at least</b> ... <i>numerically-greater-than-or-equal-to </i></p><p class="hang"><a name=A10007></a>To be <b>at most</b> ... <i>numerically-less-than-or-equal-to </i></p><p class="hang"><a name=A10008></a>To <b>be</b> ... <i>equality </i></p><p class="tightin2"><i>present:</i>&nbsp;A is B; A are B</p>
   6047     <p class="tightin2"><i>past:</i>&nbsp;A was B; A were B</p>
   6048     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  been B</p>
   6049     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  been B; A had  been B; A had  been B</p>
   6050     <p class="hang"><a name=A10009></a>To <b>be able to</b> ... for saying only</p><p class="hang"><a name=A10010></a>To <b>be able to see</b> ... <i>visibility </i></p><p class="tightin2"><i>present:</i>&nbsp;A can  see B; A can  see B; B can  be  seen  by A; B can  be  seen  by A</p>
   6051     <p class="tightin2"><i>past:</i>&nbsp;A could  see B; A could  see B; B could  be  seen  by A; B could  be  seen  by A</p>
   6052     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  been  able  to  see B; B has  been  able  to  be  seen  by A</p>
   6053     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  been  able  to  see B; A had  been  able  to  see B; A had  been  able  to  see B; B have  been  able  to  be  seen  by A; B had  been  able  to  be  seen  by A; B had  been  able  to  be  seen  by A</p>
   6054     <p class="hang"><a name=A10011></a>To <b>be able to touch</b> ... <i>touchability </i></p><p class="tightin2"><i>present:</i>&nbsp;A can  touch B; A can  touch B; B can  be  touched  by A; B can  be  touched  by A</p>
   6055     <p class="tightin2"><i>past:</i>&nbsp;A could  touch B; A could  touch B; B could  be  touched  by A; B could  be  touched  by A</p>
   6056     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  been  able  to  touch B; B has  been  able  to  be  touched  by A</p>
   6057     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  been  able  to  touch B; A had  been  able  to  touch B; A had  been  able  to  touch B; B have  been  able  to  be  touched  by A; B had  been  able  to  be  touched  by A; B had  been  able  to  be  touched  by A</p>
   6058     <p class="hang"><a name=A10012></a>To be <b>being able to see</b> ... <i>visibility </i></p><p class="hang"><a name=A10013></a>To be <b>being able to touch</b> ... <i>touchability </i></p><p class="hang"><a name=A10014></a>To be <b>below</b> ... <i>reversed mapping  down </i></p><p class="hang"><a name=A10015></a>To <b>care</b> ... for saying only</p><p class="hang"><a name=A10016></a>To be <b>carried by</b> ... <i>reversed carrying </i></p><p class="hang"><a name=A10017></a>To <b>carry</b> ... <i>carrying </i></p><p class="tightin2"><i>present:</i>&nbsp;A carries B; A carry B</p>
   6059     <p class="tightin2"><i>past:</i>&nbsp;A carried B; A carried B</p>
   6060     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  carried B</p>
   6061     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  carried B; A had  carried B; A had  carried B</p>
   6062     <p class="hang"><a name=A10018></a>To be <b>carrying</b> ... <i>carrying </i></p><p class="hang"><a name=A10019></a>To <b>close</b> ... for saying only</p><p class="hang"><a name=A10020></a>To <b>conceal</b> ... <i>concealment </i></p><p class="tightin2"><i>present:</i>&nbsp;A conceals B; A conceal B</p>
   6063     <p class="tightin2"><i>past:</i>&nbsp;A concealed B; A concealed B</p>
   6064     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  concealed B</p>
   6065     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  concealed B; A had  concealed B; A had  concealed B</p>
   6066     <p class="hang"><a name=A10021></a>To be <b>concealed by</b> ... <i>reversed concealment </i></p><p class="hang"><a name=A10022></a>To be <b>concealing</b> ... <i>concealment </i></p><p class="hang"><a name=A10023></a>To <b>contain</b> ... <i>containment </i></p><p class="tightin2"><i>present:</i>&nbsp;A contains B; A contain B</p>
   6067     <p class="tightin2"><i>past:</i>&nbsp;A contained B; A contained B</p>
   6068     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  contained B</p>
   6069     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  contained B; A had  contained B; A had  contained B</p>
   6070     <p class="hang"><a name=A10024></a>To be <b>contained by</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10025></a>To be <b>contained in</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10026></a>To be <b>containing</b> ... <i>containment </i></p><p class="hang"><a name=A10027></a>To <b>could</b> ... for saying only</p><p class="hang"><a name=A10028></a>To <b>die</b> ... for saying only</p><p class="hang"><a name=A10029></a>To <b>discover</b> ... for saying only</p><p class="hang"><a name=A10030></a>To <b>do</b> ... for saying only</p><p class="hang"><a name=A10031></a>To <b>drop</b> ... for saying only</p><p class="hang"><a name=A10032></a>To <b>eat</b> ... for saying only</p><p class="hang"><a name=A10033></a>To <b>enclose</b> ... <i>enclosure </i></p><p class="tightin2"><i>present:</i>&nbsp;A encloses B; A enclose B</p>
   6071     <p class="tightin2"><i>past:</i>&nbsp;A enclosed B; A enclosed B</p>
   6072     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  enclosed B</p>
   6073     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  enclosed B; A had  enclosed B; A had  enclosed B</p>
   6074     <p class="hang"><a name=A10034></a>To be <b>enclosed by</b> ... <i>reversed enclosure </i></p><p class="hang"><a name=A10035></a>To be <b>enclosing</b> ... <i>enclosure </i></p><p class="hang"><a name=A10036></a>To <b>feel</b> ... for saying only</p><p class="hang"><a name=A10037></a>To <b>find</b> ... for saying only</p><p class="hang"><a name=A10038></a>To <b>get</b> ... for saying only</p><p class="hang"><a name=A10039></a>To <b>give</b> ... for saying only</p><p class="hang"><a name=A10040></a>To <b>go</b> ... for saying only</p><p class="hang"><a name=A10041></a>To be <b>greater than</b> ... <i>numerically-greater-than </i></p><p class="hang"><a name=A10042></a>To be <b>had by</b> ... <i>reversed possession </i></p><p class="hang"><a name=A10043></a>To <b>happen</b> ... for saying only</p><p class="hang"><a name=A10044></a>To <b>have</b> ... <i>possession </i></p><p class="tightin2"><i>present:</i>&nbsp;A has B; A have B</p>
   6075     <p class="tightin2"><i>past:</i>&nbsp;A had B; A had B</p>
   6076     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  had B</p>
   6077     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  had B; A had  had B; A had  had B</p>
   6078     <p class="hang"><a name=A10045></a>To be <b>having</b> ... <i>possession </i></p><p class="hang"><a name=A10046></a>To <b>hear</b> ... for saying only</p><p class="hang"><a name=A10047></a>To be <b>held by</b> ... <i>reversed holding </i></p><p class="hang"><a name=A10048></a>To be <b>held in</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10049></a>To be <b>held inside</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10050></a>To <b>hold</b> ... <i>holding </i></p><p class="tightin2"><i>present:</i>&nbsp;A holds B; A hold B</p>
   6079     <p class="tightin2"><i>past:</i>&nbsp;A held B; A held B</p>
   6080     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  held B</p>
   6081     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  held B; A had  held B; A had  held B</p>
   6082     <p class="hang"><a name=A10051></a>To be <b>holding</b> ... <i>holding </i></p><p class="hang"><a name=A10052></a>To be <b>in</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10053></a>To <b>incorporate</b> ... <i>incorporation </i></p><p class="tightin2"><i>present:</i>&nbsp;A incorporates B; A incorporate B</p>
   6083     <p class="tightin2"><i>past:</i>&nbsp;A incorporated B; A incorporated B</p>
   6084     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  incorporated B</p>
   6085     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  incorporated B; A had  incorporated B; A had  incorporated B</p>
   6086     <p class="hang"><a name=A10054></a>To be <b>incorporated by</b> ... <i>reversed incorporation </i></p><p class="hang"><a name=A10055></a>To be <b>incorporating</b> ... <i>incorporation </i></p><p class="hang"><a name=A10056></a>To be <b>inside</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10057></a>To <b>jump</b> ... for saying only</p><p class="hang"><a name=A10058></a>To <b>lack</b> ... for saying only</p><p class="hang"><a name=A10059></a>To <b>lead</b> ... for saying only</p><p class="hang"><a name=A10060></a>To be <b>less than</b> ... <i>numerically-less-than </i></p><p class="hang"><a name=A10061></a>To <b>like</b> ... for saying only</p><p class="hang"><a name=A10062></a>To <b>listen</b> ... for saying only</p><p class="hang"><a name=A10063></a>To <b>lock</b> ... for saying only</p><p class="hang"><a name=A10064></a>To <b>look</b> ... for saying only</p><p class="hang"><a name=A10065></a>To be <b>mapped above</b> ... <i>reversed mapping  up </i></p><p class="hang"><a name=A10066></a>To be <b>mapped below</b> ... <i>reversed mapping  down </i></p><p class="hang"><a name=A10067></a>To be <b>mapped down of</b> ... <i>mapping  down </i></p><p class="hang"><a name=A10068></a>To be <b>mapped east of</b> ... <i>mapping  east </i></p><p class="hang"><a name=A10069></a>To be <b>mapped inside</b> ... <i>mapping  inside </i></p><p class="hang"><a name=A10070></a>To be <b>mapped north of</b> ... <i>mapping  north </i></p><p class="hang"><a name=A10071></a>To be <b>mapped northeast of</b> ... <i>mapping  northeast </i></p><p class="hang"><a name=A10072></a>To be <b>mapped northwest of</b> ... <i>mapping  northwest </i></p><p class="hang"><a name=A10073></a>To be <b>mapped outside</b> ... <i>mapping  outside </i></p><p class="hang"><a name=A10074></a>To be <b>mapped south of</b> ... <i>mapping  south </i></p><p class="hang"><a name=A10075></a>To be <b>mapped southeast of</b> ... <i>mapping  southeast </i></p><p class="hang"><a name=A10076></a>To be <b>mapped southwest of</b> ... <i>mapping  southwest </i></p><p class="hang"><a name=A10077></a>To be <b>mapped up of</b> ... <i>mapping  up </i></p><p class="hang"><a name=A10078></a>To be <b>mapped west of</b> ... <i>mapping  west </i></p><p class="hang"><a name=A10079></a>To <b>may</b> ... for saying only</p><p class="hang"><a name=A10080></a>To <b>mean</b> ... <i>meaning </i></p><p class="tightin2"><i>present:</i>&nbsp;A means B; A mean B</p>
   6087     <p class="tightin2"><i>past:</i>&nbsp;A meant B; A meant B</p>
   6088     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  meant B</p>
   6089     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  meant B; A had  meant B; A had  meant B</p>
   6090     <p class="hang"><a name=A10081></a>To be <b>meaning</b> ... <i>meaning </i></p><p class="hang"><a name=A10082></a>To be <b>meant by</b> ... <i>reversed meaning </i></p><p class="hang"><a name=A10083></a>To <b>might</b> ... for saying only</p><p class="hang"><a name=A10084></a>To <b>must</b> ... for saying only</p><p class="hang"><a name=A10085></a>To <b>need</b> ... for saying only</p><p class="hang"><a name=A10086></a>To be <b>on</b> ... <i>reversed support </i></p><p class="hang"><a name=A10087></a>To be <b>on top of</b> ... <i>reversed support </i></p><p class="hang"><a name=A10088></a>To <b>open</b> ... for saying only</p><p class="hang"><a name=A10089></a>To be <b>part of</b> ... <i>reversed incorporation </i></p><p class="hang"><a name=A10090></a>To be <b>parts of</b> ... <i>reversed incorporation </i></p><p class="hang"><a name=A10091></a>To <b>pass</b> ... for saying only</p><p class="hang"><a name=A10092></a>To <b>pick</b> ... for saying only</p><p class="hang"><a name=A10093></a>To <b>provide</b> ... <i>provision </i></p><p class="tightin2"><i>present:</i>&nbsp;A provides B; A provide B</p>
   6091     <p class="tightin2"><i>past:</i>&nbsp;A provided B; A provided B</p>
   6092     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  provided B</p>
   6093     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  provided B; A had  provided B; A had  provided B</p>
   6094     <p class="hang"><a name=A10094></a>To be <b>provided by</b> ... <i>reversed provision </i></p><p class="hang"><a name=A10095></a>To be <b>providing</b> ... <i>provision </i></p><p class="hang"><a name=A10096></a>To <b>provoke</b> ... for saying only</p><p class="hang"><a name=A10097></a>To <b>pull</b> ... for saying only</p><p class="hang"><a name=A10098></a>To <b>push</b> ... for saying only</p><p class="hang"><a name=A10099></a>To <b>put</b> ... for saying only</p><p class="hang"><a name=A10100></a>To be <b>regionally in</b> ... <i>reversed regional-containment </i></p><p class="hang"><a name=A10101></a>To <b>relate</b> ... <i>universal </i></p><p class="tightin2"><i>present:</i>&nbsp;A relates B; A relate B</p>
   6095     <p class="tightin2"><i>past:</i>&nbsp;A related B; A related B</p>
   6096     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  related B</p>
   6097     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  related B; A had  related B; A had  related B</p>
   6098     <p class="hang"><a name=A10102></a>To be <b>related by</b> ... <i>reversed universal </i></p><p class="hang"><a name=A10103></a>To be <b>relating</b> ... <i>universal </i></p><p class="hang"><a name=A10104></a>To <b>rub</b> ... for saying only</p><p class="hang"><a name=A10105></a>To <b>say</b> ... for saying only</p><p class="hang"><a name=A10106></a>To <b>search</b> ... for saying only</p><p class="hang"><a name=A10107></a>To <b>see</b> ... for saying only</p><p class="hang"><a name=A10108></a>To <b>seem</b> ... for saying only</p><p class="hang"><a name=A10109></a>To <b>set</b> ... for saying only</p><p class="hang"><a name=A10110></a>To <b>should</b> ... for saying only</p><p class="hang"><a name=A10111></a>To <b>smell</b> ... for saying only</p><p class="hang"><a name=A10112></a>To <b>sniff</b> ... for saying only</p><p class="hang"><a name=A10113></a>To <b>squeeze</b> ... for saying only</p><p class="hang"><a name=A10114></a>To <b>support</b> ... <i>support </i></p><p class="tightin2"><i>present:</i>&nbsp;A supports B; A support B</p>
   6099     <p class="tightin2"><i>past:</i>&nbsp;A supported B; A supported B</p>
   6100     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  supported B</p>
   6101     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  supported B; A had  supported B; A had  supported B</p>
   6102     <p class="hang"><a name=A10115></a>To be <b>supported by</b> ... <i>reversed support </i></p><p class="hang"><a name=A10116></a>To be <b>supported on</b> ... <i>reversed support </i></p><p class="hang"><a name=A10117></a>To be <b>supporting</b> ... <i>support </i></p><p class="hang"><a name=A10118></a>To <b>switch</b> ... for saying only</p><p class="hang"><a name=A10119></a>To <b>take</b> ... for saying only</p><p class="hang"><a name=A10120></a>To <b>talk</b> ... for saying only</p><p class="hang"><a name=A10121></a>To <b>taste</b> ... for saying only</p><p class="hang"><a name=A10122></a>To be <b>the same property as</b>&nbsp;<a href="source:story.ni#line13"><img border=0 src=inform:/doc_images/Reveal.tif></a> ... <i>same-specification-as </i></p><p class="hang"><a name=A10123></a>To be <b>through</b> ... <i>leading-through </i></p><p class="hang"><a name=A10124></a>To <b>touch</b> ... for saying only</p><p class="hang"><a name=A10125></a>To <b>turn</b> ... for saying only</p><p class="hang"><a name=A10126></a>To <b>unlock</b> ... <i>lock-fitting </i></p><p class="tightin2"><i>present:</i>&nbsp;A unlocks B; A unlock B</p>
   6103     <p class="tightin2"><i>past:</i>&nbsp;A unlocked B; A unlocked B</p>
   6104     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  unlocked B</p>
   6105     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  unlocked B; A had  unlocked B; A had  unlocked B</p>
   6106     <p class="hang"><a name=A10127></a>To be <b>unlocked by</b> ... <i>reversed lock-fitting </i></p><p class="hang"><a name=A10128></a>To be <b>unlocking</b> ... <i>lock-fitting </i></p><p class="hang"><a name=A10129></a>To <b>wait</b> ... for saying only</p><p class="hang"><a name=A10130></a>To <b>wave</b> ... for saying only</p><p class="hang"><a name=A10131></a>To <b>wear</b> ... <i>wearing </i></p><p class="tightin2"><i>present:</i>&nbsp;A wears B; A wear B</p>
   6107     <p class="tightin2"><i>past:</i>&nbsp;A wore B; A wore B</p>
   6108     <p class="tightin2"><i>present perfect:</i>&nbsp;A has  worn B</p>
   6109     <p class="tightin2"><i>past perfect:</i>&nbsp;A have  worn B; A had  worn B; A had  worn B</p>
   6110     <p class="hang"><a name=A10132></a>To be <b>wearing</b> ... <i>wearing </i></p><p class="hang"><a name=A10133></a>To <b>win</b> ... for saying only</p><p class="hang"><a name=A10134></a>To be <b>within</b> ... <i>reversed containment </i></p><p class="hang"><a name=A10135></a>To be <b>worn by</b> ... <i>reversed wearing </i></p><p class="hang"><a name=A10136></a>To <b>would</b> ... for saying only</p></div>
   6111     <hr>
   6112 
   6113     <!--CONTENT ENDS-->
   6114     </font>
   6115 </body>
   6116 </html>