Annotation of researchv8dc/cmd/monk/db/macro.m, revision 1.1.1.1

1.1       root        1: |include(macro.h)
                      2: 
                      3: |macro(.top.of.page;
                      4:        [
                      5: '\"    #T used by tbl to draw boxes ?????
                      6: '\"    :2 store for multi-page table heading
                      7: '\"    :A multi-page table heading being used
                      8: '\"    :T top of table printed
                      9: '\"    :d prevent )h from outputting a floating group
                     10: '\"    :o footer trap location
                     11: '\"    :q amount of footnote text
                     12: '\"    :r position at end of page header macro
                     13: '\"    :u position to return to for second column output
                     14: '\"    :v width of stored footnote 0=narrow, 1=wide
                     15: '\"    :w output counter for floating keeps
                     16: '\"    :z input counter for floating keeps
                     17: '\"    P page number register
                     18: '\"    ;i remembered indent TEMP
                     19: '\"    ;o prevailing page offset ??????? bug with .po
                     20: '\"    ;t copy of :w TEMP
                     21: '\"    ;w convert to alpha format TEMP
                     22: .              de )h
                     23: .              ev 2                                    \" use header environment
                     24: .              if "\*(.T"aps" \{\
                     25: .                      nr ;o \\n(.o                    \" save prevailing page offset
                     26: .                      po 0                            \" always from left margin
                     27: .                      lt 7.5i                         \" width of photo composer
                     28: .                      ps 10                           \" 10 point roman font
                     29: .                      vs 10p
                     30: .                      ft 1
                     31: .                      tl '--''--'                     \" output the cut marks
                     32: .                      ft                              \" restore values
                     33: .                      vs
                     34: .                      ps
                     35: .                      lt
                     36: .                      po \\n(;ou\}
                     37: .              nr P +1                                 \" incr page number
                     38: .              lt \\nWu                                \" use line length for title
                     39: .              TP                                      \" user-redefinable macro
                     40: .              br                                      \" force a break in the header environment
                     41: .              ev                                      \" back to main environment
                     42: .              ie \\n(:q .ch )f -\\n(:ou               \" reset footer trap
                     43: .              el .nr :v 0                             \" no saved footnotes, thus narrow
                     44: .              mk :r                                   \" position at end of page header macro
                     45: .              mk :u                                   \" save where second column starts
                     46: '\"    output floating displays
                     47: .              if \\n(:d=0&(\\n(:z-\\n(:w) \{\
                     48: .                      nr ;t \\n(:w%26+1               \" get index of next output element
                     49: .                      af ;w a                         \" conversion register for display queue names
                     50: .                      nr ;w \\n(;t                    \" form the next queue element name
                     51: .                      )z                              \" output at least one floating display
                     52: .                      )s                              \" but as many as will fit
                     53: .                      rr ;t ;w \}                     \" free storage
                     54: '\"    print top part of multi-page table
                     55: .              nr :T 0                                 \" mark multi-page table header not printed
                     56: .              if \\n(:A>0 \{\
                     57: .                      nr ;i \\n(.i                    \" save prevailing indent
                     58: .                      in 0                            \" indent back
                     59: .                      :2                              \" heading
                     60: .                      nr :T 1                         \" mark multi-page table header printed
                     61: .                      in \\n(;iu \}                   \" restore prevailing indent
                     62: .              mk #T                                   \" mark spot for table drawing ???????
                     63: .              rr ;i ;o ;t ;w                          \" free storage
                     64: .              ns                                      \" avoid .sp in user text here
                     65: ..
                     66: ])
                     67: 
                     68: |macro(top.of.page;
                     69:        [
                     70: '\"    EH string containing even top title info
                     71: '\"    OH string containing odd top title info
                     72: '\"    P page number register
                     73: '\"    PH string containing top title info
                     74: '\"    ;P page number register TEMP
                     75: .              de TP
                     76: '              sp
                     77: .              af ;P \\gP                              \" save format of P
                     78: .              af P 1                                  \" normal format for next line
                     79: .              nr ;P \\nP                              \" must use different name for P
                     80: .              af P \\g(;P                             \" restore format to P
                     81: .              af ;P 1                                 \" normal format for control register
                     82: '              sp 2
                     83: .              if \\n(;P-1 .tl \\*(PH                  \" output headers
                     84: .              if !\\n(;P%2 .tl \\*(EH
                     85: .              if \\n(;P%2 .tl \\*(OH
                     86: '              sp 2
                     87: .              if \\n(;P=4 .if "\\*(f0"model" \{.nr L 13.25i   \" model sheet kludge
                     88: .              pl 13.25i \}                            \" model sheet kludge
                     89: .              rr ;P                                   \" free storage
                     90: ..
                     91: ])
                     92: 
                     93: |macro(.end.of.page;
                     94:        [
                     95: '\"    #T used by tbl to draw boxes ?????
                     96: '\"    :2 store for multi-page table heading
                     97: '\"    :A multi-page table heading being used
                     98: '\"    :C 0=one column, 1=first column, 2=second column
                     99: '\"    :K position for )f trap
                    100: '\"    :T top of table printed
                    101: '\"    :d prevent )h from outputting a floating group
                    102: '\"    :f bottom of table printed
                    103: '\"    :m initial footer place and partial footnote diverter trap
                    104: '\"    :o footer trap location
                    105: '\"    :q amount of footnote text
                    106: '\"    :v width of stored footnote 0=narrow, 1=wide
                    107: '\"    :w output counter for floating keeps
                    108: '\"    :z input counter for floating keeps
                    109: '\"    T. ?????
                    110: '\"    ;i remembered indent TEMP
                    111: '\"    ;o page offset transfer TEMP
                    112: '\"    ;t copy of :w TEMP
                    113: '\"    ;u hidden def of )f TEMP
                    114: '\"    ;w convert to alpha format TEMP
                    115: '\"    ;y room left on the page TEMP
                    116: .              de )f
                    117: '\"    print bottom part of boxed multi-page table
                    118: .              if \\n(:A \{\
                    119: .                      rn )f ;u                        \"hide footer
                    120: .                      nr T. 1
                    121: .                      if \\n(:f=0 .T# 1               \" print multi-page table footer
                    122: '                      br                              \" output new page
                    123: .                      nr :f 1                         \" remember footer has been printed
                    124: .                      rn ;u )f \}                     \" restore footer
                    125: .              nr ;y \\n(.pu-\\n(nlu-\\n(:mu           \" compute amount of room left on the page
                    126: .              if \\n(:qu>4v .nr ;y -4v                \" output a reasonable amount
                    127: '\"    if footnotes and there is room left and full page or left column output,
                    128: '\"    or narrow footnotes, call footnote expander
                    129: .              ie \\n(:q&\\n(;y&((\\n(:C<2):(\\n(:v=0)) .)o
                    130: .              el \{\
                    131: .                      ch )f -\\n(:mu                  \" hide footnote divider trap
                    132: .                      nr :o \\n(:m+\\n(:q \}          \" reset footer trap location
                    133: .              ie \\n(:C=0 'bp                         \" new page if not multi-column
                    134: '\"    end second column
                    135: .              el .ie \\n(:C=2 \{\
                    136: .                      nr ;o \\nOu                     \" save second column offset
                    137: .                      nr O \\n(:Ou                    \" restore first column offset
                    138: .                      nr :O \\n(;o                    \" save second column offset
                    139: .                      po \\nOu                        \" reset page offset
                    140: .                      nr :C 1                         \" set col indicator
                    141: '                      bp                              \" force next page
                    142: .                      rr ;o \}                        \" free storage
                    143: '\"    end first column
                    144: .                  el \{\
                    145: .                      rt \\n(:uu                      \" return to top
                    146: .                      nr ;o \\nOu                     \" save first column offset
                    147: .                      nr O \\n(:Ou                    \" restore second column offset
                    148: .                      nr :O \\n(;o                    \" save first column offset
                    149: .                      po \\nOu                        \" advance page offset
                    150: .                      nr :C 2                         \" set col indicator
                    151: .                      if \\n(:q .ch )f -\\n(:ou       \" reset footer trap
                    152: '\"    output floating displays that are narrow
                    153: .                      if \\n(:d=0&(\\n(:z-\\n(:w) \{\
                    154: .                              nr ;t \\n(:w%26+1       \" get index of next output element
                    155: .                              af ;w a                 \" conversion register for display queue names
                    156: .                              nr ;w \\n(;t            \" form the next queue element name
                    157: '\"    inhibit if wide display
                    158: .                              if \\n(!\\n(;w=1 \{\
                    159: .                                      )z              \" output at least one floating display
                    160: .                                      )s \}           \" but as many as will fit
                    161: .                              rr ; o ;t ;w \}         \" free storage
                    162: '\"    print top part of multi-page table
                    163: .                      nr :T 0                         \" mark multi-page table header not printed
                    164: .                      if \\n(:A>0 \{\
                    165: .                              nr ;i \\n(.i            \" save prevailing indent
                    166: .                              in 0                    \" indent back
                    167: .                              :2                      \" heading
                    168: .                              nr :T 1                 \" mark multi-page table header printed
                    169: .                              in \\n(;iu \}           \" restore prevailing indent
                    170: .                      mk #T                           \" mark spot for table drawing ???????
                    171: .                      rr ;i ;t ;w                     \" free storage
                    172: .                      ns \}                           \" avoid .sp in user text here
                    173: .              if \\n(:A \{\
                    174: .                      nr :K \\n(:ou+2v                \" position for )f trap
                    175: .                      ch >f -(\\n(:Ku+1v)             \" when moved by >f macro
                    176: '                      br \}
                    177: .              rr ;y                                   \" free storage
                    178: ..
                    179: ])
                    180: 
                    181: |macro(.float.output;
                    182:        [
                    183: '\"    !{a-z} width of stored floating 0=narrow, 1=wide
                    184: '\"    :C 0=one column, 1=first column, 2=second column
                    185: '\"    :d prevent )h from outputting a floating group
                    186: '\"    :w output counter for floating keeps
                    187: '\"    :z input counter for floating keeps
                    188: '\"    ?{a-z} text of stored floating
                    189: '\"    |{a-z} size of stored floating
                    190: '\"    ;i remembered indent TEMP
                    191: '\"    ;l remembered line spacing TEMP
                    192: '\"    ;q remembered fill/no-fill mode TEMP
                    193: '\"    ;w convert to alpha format TEMP
                    194: .              de )z
                    195: .              if !\\n(:z-\\n(:w .tm no floats to output
                    196: .              nr :w \\n(:w%26+1                       \" get index of next output element
                    197: .              af ;w a                                 \" conversion register for display queue names
                    198: .              nr ;w \\n(:w                            \" form the next queue element name
                    199: .              nr ;q \\n(.u                            \" save prevailing fill/no-fill mode
                    200: .              nr ;l \\n(.L                            \" save line spacing
                    201: .              nr ;i \\n(.i                            \" save prevailing indent
                    202: .              ev 1                                    \" use footnote environment
                    203: .              nf                                      \" bring it back in no-fill
                    204: .              ls 1                                    \" output display in ls 1
                    205: .              in 0                                    \" indent back
                    206: .              nr :d 1                                 \" inhibit header from calling )y
                    207: .              rs                                      \" restore spacing
                    208: .              br                                      \" output partial line before display
                    209: .              ?\\n(;w                                 \" lay out one keep
                    210: .              if \\n(;q .fi                           \" restore fill if necessary
                    211: .              ls \\n(;L                               \" restore line spacing
                    212: .              in \\n(;iu                              \" restore prevailing indent
                    213: .              nr :d 0                                 \" allow )h to process fl keeps again
                    214: .              ev                                      \" back to previous environment
                    215: .              ne 2                                    \" require two lines under float
                    216: .              rm ?\\n(;w                              \" free storage
                    217: .              rr |\\n(;w !\\n(;w
                    218: .              rr ;i ;l ;q ;w
                    219: ..
                    220: ])
                    221: 
                    222: |macro(.multiple.float.output;
                    223:        [
                    224: '\"    !{a-z} width of stored floating 0=narrow, 1=wide
                    225: '\"    :C 0=one column, 1=first column, 2=second column
                    226: '\"    :m initial footer place and partial footnote diverter trap
                    227: '\"    :o footer trap location
                    228: '\"    :r position at end of page header macro
                    229: '\"    :w output counter for floating keeps
                    230: '\"    :z input counter for floating keeps
                    231: '\"    |{a-z} size of stored floating
                    232: '\"    ;h height of floating display on top of queue TEMP
                    233: '\"    ;t copy of :w TEMP
                    234: '\"    ;w convert to alpha format TEMP
                    235: .              de )s
                    236: '\"    inhibit if no floats in queue
                    237: .              if \\n(:z-\\n(:w \{\
                    238: .                      nr ;t \\n(:w%26+1               \" get index of next output element
                    239: .                      af ;w a                         \" conversion register for display queue names
                    240: .                      nr ;w \\n(;t                    \" form the next queue element name
                    241: .                      nr ;h \\n(|\\n(;w               \" height of current display
                    242: '\"    The following if condition tests: (1) if wide displays and (2) we are on the
                    243: '\"    first column and (3) if the float fits on the current page
                    244: '\"    or (4) the float is too large to fit on any one page, and (5) we have used
                    245: '\"    less than half of the current page. (the five conditions are grouped
                    246: '\"    in the form ((1 & 2) & (1 : (2 & 3))). If this total condition is true,
                    247: '\"    then a float is output.
                    248: .                      if (((\\n(!\\n(;w=1)&(\\n(:C<2))&\
                    249: ((\\n(;h<\\n(.t):((\\n(;h>(\\n(.p-\\n(:r-\\n(:m))&\
                    250: (\\n(nl<=(\\n(.p-\\n(:r-\\n(:o/2u+\\n(:r))))) \{\
                    251: .                              )z                      \" output it
                    252: .                              )s \}                   \" recurse
                    253: .                      rr ;h ;t ;w \}                  \" free storage
                    254: ..
                    255: ])
                    256: 
                    257: |macro(.flush.float.output;
                    258:        [
                    259: '\"    :d prevent )h from outputting a floating group
                    260: '\"    :w output counter for floating keeps
                    261: '\"    :z input counter for floating keeps
                    262: '\"    ;o copy of :w TEMP
                    263: .              de )w
                    264: '\"    inhibit if no floats in queue
                    265: .              if \\n(:z-\\n(:w \{\
                    266: .                      nr ;o \\n(:w                    \" save output count
                    267: .                      )s
                    268: .                      if \\n(:w=\\n(;o \{\
                    269: .                              nr :d 1                 \" inhibit header from calling )y
                    270: .                              rs                      \" turn on spacing
                    271: .                              bp                      \" top of next page
                    272: .                              nr :d 0 \}              \" allow )h to process fl keeps again
                    273: .                      )w \}                           \" recurse
                    274: .              rr ;o                                   \" free storage
                    275: ..
                    276: ])
                    277: 
                    278: |macro(.footnote.output;
                    279:        [
                    280: '\"    dump accumulated footnote text
                    281: '\"    long text may spring )n trap so the remaining partial
                    282: '\"    text may go into :3
                    283: '\"    :3 store for partial footnotes
                    284: '\"    :m initial footer place and partial footnote diverter trap
                    285: '\"    :o footer trap location
                    286: '\"    :q amount of footnote text
                    287: '\"    :v width of stored footnote 0=narrow, 1=wide
                    288: .              de )o
                    289: .              ev 1                                    \" use footnote environment
                    290: .              nf                                      \" bring it back in no-fill
                    291: .              ls 1                                    \" output display in ls 1
                    292: .              in 0                                    \" indent back
                    293: .              :F                                      \" lay out footnotes
                    294: '\"    did we spring the partial footnote trap
                    295: .              ie "\\n(.z":3" \{\
                    296: .                      br                              \" get last partial line
                    297: .                      di                              \" end diversion
                    298: .                      nr :q \\n(dnu                   \" fix amount of footnote text
                    299: .                      rn :3 :F \}                     \" put text back in :F
                    300: .              el .nr :q 0                             \" clear amount of footnote text
                    301: .              ev                                      \" back to main environment
                    302: .              if \\n(:qu<=2v \{\                      \" ignore just divider line
                    303: .                      nr :q 0                         \" clear amount of footnote text
                    304: .                      rm :F \}                        \" clear text of footnote
                    305: .              nr :o \\n(:mu+\\n(:qu                   \" reset footnote location register
                    306: .              ch )f -\\n(:ou                          \" reset trap for footer
                    307: ..
                    308: ])
                    309: 
                    310: |macro(.footnote.diverter;
                    311:        [
                    312: '\"    partial footnote text diverter
                    313: '\"    called via trap planted at -\n(:m
                    314: '\"    since the default footer trap is also at -n(:m,
                    315: '\"    this macro actually invoked when the footer trap
                    316: '\"    has been moved up due to footnote processing
                    317: '\"    :3 store for partial footnotes
                    318: '\"    :q amount of footnote text
                    319: '\"    ;o prevailing page offset ??????? bug with .po
                    320: .              de )n
                    321: .              if \\n(:q \{\
                    322: .                      di :3
                    323: .                      nr ;o \\n(.o            \" save prevailing page offset
                    324: .                      po \\nOu                \" always from left margin
                    325: .                      ps 10                   \" 10 point roman font          
                    326: .                      vs 10p
                    327: .                      ft 1
                    328: .                      ie \n(.A=0 \l@\\n(.lu@
                    329: .                      el _____________________________
                    330: .                      ft                      \" restore values
                    331: .                      vs
                    332: .                      ps
                    333: .                      po \\n(;ou\}
                    334: ..
                    335: ])
                    336: 
                    337: |macro(.end.of.file;
                    338:        [
                    339: .              de )q
                    340: ..
                    341: ])
                    342: 
                    343: |macro(.initalize;
                    344:        [
                    345: '\"    REQUIRED INITIALIZATIONS
                    346: '\"    initialize various regs
                    347: '\"    !{a-z} width of stored floating 0=narrow, 1=wide
                    348: '\"    #T used by tbl to draw boxes ?????
                    349: '\"    :0 store for initally diverted text
                    350: '\"    :1 store for centered block text
                    351: '\"    :2 store for multi-page table heading
                    352: '\"    :3 store for partial footnotes
                    353: '\"    :A multi-page table heading being used
                    354: .              nr :A 0
                    355: '\"    :C 0=one column, 1=first column, 2=second column
                    356: .              nr :C 0
                    357: '\"    :F Footnote text
                    358: '\"    :K position for )f trap
                    359: .              nr :K 0
                    360: '\"    :O page offset for other column
                    361: .              nr :O 0
                    362: '\"    :T top of table printed
                    363: .              nr :T 0
                    364: '\"    :W page width for full page output
                    365: .              nr :W 0
                    366: '\"    :d prevent )h from outputting a floating group
                    367: .              nr :d 0
                    368: '\"    :f bottom of table printed
                    369: .              nr :f 0
                    370: '\"    :m initial footer place and partial footnote diverter trap
                    371: .              nr :m .8i
                    372: '\"    :o footer trap location
                    373: .              nr :o \n(:mu
                    374: '\"    :q amount of footnote text
                    375: .              nr :q 0
                    376: '\"    :r position at end of page header macro
                    377: .              nr :r .6i
                    378: '\"    :u position to return to for second column output
                    379: .              nr :u .6i
                    380: '\"    :v width of stored footnote 0=narrow, 1=wide
                    381: .              nr :v 0
                    382: '\"    :w output counter for floating keeps
                    383: .              nr :w 0
                    384: '\"    :x flag indicating footnote in progress
                    385: .              nr :x 0
                    386: '\"    :y flag indicating group/float in progress
                    387: .              nr :y 0
                    388: '\"    :z input counter for floating keeps
                    389: .              nr :z 0
                    390: '\"    ?{a-z} text of stored floating
                    391: '\"    AT string containing AT&T in helvetica
                    392: .              ds AT \fP\f(HBA\h'-.2m'T\h'-.15m'\s0\s13&\s0\s16\h'-.15m'T
                    393: '\"    DT date string
                    394: .              if \n(mo-0 .ds DT January
                    395: .              if \n(mo-1 .ds DT February
                    396: .              if \n(mo-2 .ds DT March
                    397: .              if \n(mo-3 .ds DT April
                    398: .              if \n(mo-4 .ds DT May
                    399: .              if \n(mo-5 .ds DT June
                    400: .              if \n(mo-6 .ds DT July
                    401: .              if \n(mo-7 .ds DT August
                    402: .              if \n(mo-8 .ds DT September
                    403: .              if \n(mo-9 .ds DT October
                    404: .              if \n(mo-10 .ds DT November
                    405: .              if \n(mo-11 .ds DT December
                    406: .              as DT " \n(dy, 19\n(yr
                    407: '\"    EH string containing even top title info
                    408: '\"    F default font
                    409: .              nr F 1
                    410: '\"    L page length
                    411: .              if !\nL .nr L 11i
                    412: '\"    LO string containing logo
                    413: .              ie "\*(.T"aps" .ds LO \s36\(Lb\s0
                    414: .              el .ds LO \s36\(L1\s0\s16\v'-.4'\*(AT\v'.4'\h'-\w'\*(AT'u'\fP\s0
                    415: '\"    OH string containing odd top title info
                    416: '\"    P page number
                    417: .              if \nP .nr P -1
                    418: .              nr P \nP 1
                    419: '\"    PH string containing top title info
                    420: .              ds PH ''- \\nP -''              \" top of page string
                    421: '\"    O page offset
                    422: .              if !\w'\gO' .ie t .nr O .963i
                    423: .                      el .nr O 0i
                    424: .              if "\*(.T"202" .nr O \nO-.34375i
                    425: .              if "\*(.T"aps" .nr O \nO-.21875i
                    426: '\"    S default point size
                    427: .              if !\nS .nr S 10
                    428: '\"    T. ?????
                    429: '\"    W page width
                    430: .              if !\nW .nr W 6i
                    431: '\"    |{a-z} size of stored floating
                    432: '\"    INITIAL SET UP
                    433: .              wh 0 )h                                 \" trap for header
                    434: .              wh -\n(:mu )f                           \" trap for footer
                    435: .              ch )f 15i                               \" move it over partial footnote diverter
                    436: .              wh -\n(:mu )n                           \" trap for partial footnote diverter
                    437: .              ch )f -\n(:mu
                    438: .              em )q                                   \" end macro
                    439: '\"    TROFF ACCENTS (` ' ^ ~ cedilla and 2 umlauts)
                    440: '\"    The accent string must follow immediately the character to be accented.
                    441: '\"    These strings are "tuned" to the Times Roman type faces ONLY.
                    442: '\"    The R, I, and B fonts are assumed to be mounted in
                    443: '\"    positions 1, 2, and 3, respectively.
                    444: '\"    All of these strings alter the number register `:'.
                    445: '\"    Grave accent -- {aeou}\*`
                    446: .              ds ` \\k:\h@-\\n(.wu*8u/10u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*.2m@\(ga\h@|\\n:u@
                    447: '\"    Lower-case acute accent -- {aeou}\*'
                    448: .              ds ' \\k:\h@-\\n(.wu*8u/10u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*.2m+.07m@\(aa\h@|\\n:u@
                    449: '\"    Upper-case acute accent -- {aeou}\*+
                    450: .              ds + \\k:\h@-\\n(.wu*8u/10u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*.2m+.07m@\[email protected]@\(aa\[email protected]@\h@|\\n:u@
                    451: '\"    Circumflex -- {aeou}\*^
                    452: .              ds ^ \\k:\h@-\\n(.wu*8u/10u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*.15m-.07m@\
                    453: \h@\\n(.fu-1u/2u*.02m@^\h@|\\n:u@
                    454: '\"    Tilde -- n\*~ (But watch out for ".tr ~")
                    455: .              ds ~ \\k:\h@-\\n(.wu*8u/10u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*.2m-.07m@\
                    456: \h@\\n(.fu-1u/2u*.05m@~\h@|\\n:u@
                    457: '\"    Cedilla -- c\*,
                    458: .              ds , \\k:\h@-\\n(.wu*85u/100u@\[email protected]@,\[email protected]@\h@|\\n:u@
                    459: '\"    Lower-case umlaut -- {aeou}\*:
                    460: .              ds : \\k:\h@-\\n(.wu*85u/100u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*3u*.06m@\
                    461: \h@3u-\\n(.fu/2u*.05m-.1m@\
                    462: \[email protected]@\z.\h@\\n(.fu-1u/2u*.05m+.2m@.\[email protected]@\h@|\\n:u@
                    463: '\"    Upper-case umlaut -- {AEOU}\*;
                    464: .              ds ; \\k:\h@-\\n(.wu*75u/100u@\h@\\n(.fu/2u*2u+1u-\\n(.fu*3u*.09m@\
                    465: \h@3u-\\n(.fu/2u*.06m-.15m@\h@\\n(.fu-1u/2u*.04m@\
                    466: \[email protected]@\z.\[email protected]@.\[email protected]@\h@|\\n:u@
                    467: '\"    Nasal -- c\*-
                    468: .              ds - \\k:\h@-\\n(.wu*75u/100u@\[email protected]@`\[email protected]@\h@|\\n:u@
                    469: '\"    Slash -- c\*/
                    470: .              ds / \\k:\h@-\\n(.wu*85u/100u@\[email protected]@\(aa\[email protected]@\h@|\\n:u@
                    471: ])

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.