Annotation of 43BSDReno/lib/librpc/doc/tmac.sun, revision 1.1.1.1

1.1       root        1: .\" @(#)tmac.sun 1.1 84/12/21 SMI; The Sun Macro Package
                      2: .ds // /usr/lib/ms/
                      3: .      \" IZ - initialize (before text begins)
                      4: .de IZ
                      5: .nr FM 1i
                      6: .nr YY -\\n(FMu
                      7: .nr XX 0 1
                      8: .nr IP 0
                      9: .nr PI 4n
                     10: .nr QI 5n
                     11: .nr FI 2n
                     12: .nr I0 \\n(PIu
                     13: .if n .nr PD 1v
                     14: .if t .nr PD .5v
                     15: .if n .nr DD 1v
                     16: .if t .nr DD .5v
                     17: .nr PS 11
                     18: .nr VS 13
                     19: .ps \\n(PS
                     20: .vs \\n(VSp
                     21: .nr dP 1
                     22: .nr dV 1
                     23: .nr ML 3v
                     24: .nr IR 0
                     25: .nr TB 0
                     26: .nr SJ \\n(.j
                     27: .if \\nO .po \\nOu
                     28: .nr PO \\n(.ou
                     29: .nr LL 6.5i
                     30: .ll \\n(LLu
                     31: .lt 6.5i
                     32: .ev 1
                     33: .nr FL 6i
                     34: .ll \\n(FLu
                     35: .ps 8
                     36: .vs 10p
                     37: .ev
                     38: .ds CH - \\\\n(PN -
                     39: .if n .ds CF \\*(DY
                     40: .wh 0 NP
                     41: .wh -\\n(FMu FO
                     42: .ch FO 16i
                     43: .wh -\\n(FMu FX
                     44: .ch FO -\\n(FMu
                     45: .wh -\\n(FMu/2u BT
                     46: ..
                     47: .      \" RT - reset (at new paragraph)
                     48: .de RT
                     49: .if !\\n(1T .BG
                     50: .if !\\n(IK .if !\\n(IF .if !\\n(IX .if !\\n(BE .di
                     51: .if \\n(TM .ls 2
                     52: .ce 0
                     53: .ul 0
                     54: .if \\n(QP \{\
                     55: .      ll +\\n(QIu
                     56: .      in -\\n(QIu
                     57: .      nr QP -1
                     58: .\}
                     59: .if \\n(NX<=1 .if !\\n(AJ .ll \\n(LLu
                     60: .if !\\n(IF \{\
                     61: .      ps \\n(PS
                     62: .      if \\n(VS>=40 .vs \\n(VSu
                     63: .      if \\n(VS<=39 .vs \\n(VSp
                     64: .\}
                     65: .if !\\n(IP .nr I0 \\n(PIu
                     66: .if \\n(IP \{\
                     67: .      in -\\n(I\\n(IRu
                     68: .      nr IP -1
                     69: .\}
                     70: .ft 1
                     71: .TA
                     72: .fi
                     73: ..
                     74: .      \" TA - set default tabs
                     75: .de TA
                     76: .if n .ta 8n 16n 24n 32n 40n 48n 56n 64n 72n 80n
                     77: .if t .ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n
                     78: ..
                     79: .      \" BG - begin (at first paragraph)
                     80: .de BG
                     81: .br
                     82: .nr YE 1
                     83: .di
                     84: .ce 0
                     85: .nr KI 0
                     86: .hy 14
                     87: .nr 1T 1
                     88: .S\\n(ST
                     89: .rm S0 S1 S2 SY TX AX WT RP
                     90: .\"redefs
                     91: .de TL
                     92: .ft 3
                     93: .ce 99
                     94: .sp
                     95: .LG
                     96: \\..
                     97: .de AU
                     98: .ft 2
                     99: .if n .ul 0
                    100: .ce 99
                    101: .sp
                    102: .NL
                    103: \\..
                    104: .de AI
                    105: .ft 1
                    106: .if n .ul 0
                    107: .ce 99
                    108: .if n .sp
                    109: .if t .sp .5
                    110: .NL
                    111: \\..
                    112: .RA
                    113: .rn FJ FS
                    114: .rn FK FE
                    115: .nf
                    116: .ev 1
                    117: .ps \\n(PS-2
                    118: .vs \\n(.s+2p
                    119: .ev
                    120: .if !\\n(KG .nr FP 0
                    121: .nr KG 0
                    122: .if \\n(FP \{\
                    123: .      FS
                    124: .      FG
                    125: .      FE
                    126: .\}
                    127: .br
                    128: .if \\n(TV .if n .sp 2
                    129: .if \\n(TV .if t .sp 1
                    130: .fi
                    131: .ll \\n(LLu
                    132: ..
                    133: .       \" RA - redefine abstract
                    134: .de RA
                    135: .de AB
                    136: .br
                    137: .if !\\n(1T .BG
                    138: .ce
                    139: .sp
                    140: .if !\\n(.$ ABSTRACT
                    141: .if \\n(.$ .if !\\$1no \\$1
                    142: .if !\\n(.$ .sp
                    143: .if \\n(.$ .if !\\$1no .sp
                    144: .sp
                    145: .nr AJ 1
                    146: .in +\\n(.lu/12u
                    147: .ll -\\n(.lu/12u
                    148: .RT
                    149: .if \\n(TM .ls 1
                    150: \\..
                    151: .de AE
                    152: .nr AJ 0
                    153: .br
                    154: .in 0
                    155: .ll \\n(LLu
                    156: .if \\n(VS>=40 .vs \\n(VSu
                    157: .if \\n(VS<=39 .vs \\n(VSp
                    158: .if \\n(TM .ls 2
                    159: \\..
                    160: ..
                    161: .       \" RP - released paper format
                    162: .de RP
                    163: .nr ST 2
                    164: .if \\$1no .nr ST 1
                    165: .pn 0
                    166: .br
                    167: ..
                    168: .       \" TL - source file for cover sheet
                    169: .de TL
                    170: .rn TL @T
                    171: .so \*(//ms.cov
                    172: .TL
                    173: .rm @T
                    174: ..
                    175: .      \" Paragraph Depth
                    176: .de PD
                    177: .if t .nr PD .5v
                    178: .if n .nr PD 1v
                    179: .if !\\$1 .nr PD \\$1v
                    180: ..
                    181: .      \" PP - regular paragraph
                    182: .de PP
                    183: .RT
                    184: .if \\n(1T .sp \\n(PDu
                    185: .ne 1.1
                    186: .ti +\\n(PIu
                    187: ..
                    188: .      \" LP - left paragraph
                    189: .de LP
                    190: .RT
                    191: .if \\n(1T .sp \\n(PDu
                    192: .ne 1.1
                    193: .ti \\n(.iu
                    194: ..
                    195: .      \" IP - indented paragraph
                    196: .de IP
                    197: .RT
                    198: .if \\n(1T .sp \\n(PDu
                    199: .ne 1.1
                    200: .if !\\n(IP .nr IP +1
                    201: .if \\n(.$-1 .nr I\\n(IR \\$2n
                    202: .in +\\n(I\\n(IRu
                    203: .ta \\n(I\\n(IRu
                    204: .if \\n(.$ \{\
                    205: .ds HT \&\\$1\^\^\^
                    206: .ti -\\n(I\\n(IRu
                    207: \\*(HT\t\c
                    208: .if \w\\*(HTu>(\\n(I\\n(IRu) .br
                    209: .\}
                    210: ..
                    211: .      \" XP - exdented paragraph
                    212: .de XP
                    213: .RT
                    214: .if \\n(1T .sp \\n(PDu
                    215: .ne 1.1
                    216: .if !\\n(IP .nr IP +1
                    217: .in +\\n(I\\n(IRu
                    218: .ti -\\n(I\\n(IRu
                    219: ..
                    220: .      \" QP - quote paragraph
                    221: .de QP
                    222: .ti \\n(.iu
                    223: .RT
                    224: .if \\n(1T .sp \\n(PDu
                    225: .ne 1.1
                    226: .nr QP 1
                    227: .in +\\n(QIu
                    228: .ll -\\n(QIu
                    229: .ti \\n(.iu
                    230: .if \\n(TM .ls 1
                    231: ..
                    232: .      \" SH - section header
                    233: .de SH
                    234: .ti \\n(.iu
                    235: .RT
                    236: .if \\n(1T .sp
                    237: .RT
                    238: .ne 3.1
                    239: .ft B
                    240: ..
                    241: .      \"                 $1 = C: As Chapter Heading; TOC Entry
                    242: .      \" UH - UnNumbered $1 = M: As Chapter Heading; no TOC entry
                    243: .      \"      Headings   $1 = H: Centered Heading; no TOC entry
                    244: .      \"                 $1 = HC: Centered Heading; TOC Entry
                    245: .      \"                 $1 = S: Left Adjusted Heading; no TOC entry
                    246: .      \"                 $1 = SC: Left Adjusted Heading; TOC Entry
                    247: .      \"                 $1 = CONTENTS: Setup for Table of Contents
                    248: .      \"                 $1 = INDEX: Setup for Index
                    249: .      \"                 $1 = TABLES: Setup for List of Tables
                    250: .      \"                 $1 = FIGURES: Setup for List of Figures
                    251: .de UH
                    252: .SH
                    253: .if '\\$1'C' \{\
                    254: .ne 1.0i+2v
                    255: .ad c
                    256: .ps 18
                    257: .vs 24
                    258: \\&
                    259: .sp 0.5i
                    260: \\$2
                    261: .sp 0.5i
                    262: .ps
                    263: .vs
                    264: .ad b
                    265: .R
                    266: \}
                    267: .if '\\$1'M' \{\
                    268: .ne 1.0i+2v
                    269: .ad c
                    270: .ps 18
                    271: .vs 24
                    272: \\&
                    273: .sp 0.5i
                    274: \\$2
                    275: .sp 0.5i
                    276: .ps
                    277: .vs
                    278: .ad b
                    279: .R
                    280: \}
                    281: .if '\\$1'H' \{\
                    282: .ne 0.7i+2v
                    283: .ad c
                    284: .if \\n(NS=2 .ft B
                    285: .if \\n(NS=2 .ps 14p
                    286: .if \\n(NS=2 .vs 18p
                    287: \\&
                    288: .sp 0.25i
                    289: \\$2
                    290: .sp 0.1i
                    291: .ad b
                    292: .R \}
                    293: .if '\\$1'S' \{\
                    294: .ne 0.2i+2v
                    295: .if \\n(NS=3 .ft I
                    296: .if \\n(NS=3 .ps 12p
                    297: .if \\n(NS=3 .vs 15p
                    298: \\&
                    299: .sp 0.1i
                    300: \\$2
                    301: .sp 0.1i
                    302: .R \}
                    303: .if '\\$1'HC' \{\
                    304: .ne 0.7i+2v
                    305: .ad c
                    306: .if \\n(NS=2 .ft B
                    307: .if \\n(NS=2 .ps 14p
                    308: .if \\n(NS=2 .vs 18p
                    309: \\&
                    310: .sp 0.25i
                    311: \\$2
                    312: .sp 0.1i
                    313: .ad b
                    314: .R \}
                    315: .if '\\$1'SC' \{\
                    316: .ne 0.2i+2v
                    317: .if \\n(NS=3 .ft I
                    318: .if \\n(NS=3 .ps 12p
                    319: .if \\n(NS=3 .vs 15p
                    320: \\&
                    321: .sp 0.1i
                    322: \\$2
                    323: .sp 0.1i
                    324: .R \}
                    325: .if '\\$1'C'  .if \\n(IK  \!.tm .CE U "\\$2" \\\\n(PN \\n(dT \\n(H1
                    326: .if '\\$1'C'  .if !\\n(IK .tm .CE U "\\$2" \\n(PN \\n(dT \\n(H1
                    327: .if '\\$1'HC' .if \\n(IK  \!.tm .CE UH "\\$2" \\\\n(PN \\n(dT \\n(H1
                    328: .if '\\$1'HC' .if !\\n(IK .tm .CE UH "\\$2" \\n(PN \\n(dT \\n(H1
                    329: .if '\\$1'SC' .if \\n(IK  \!.tm .CE UH "\\$2" \\\\n(PN \\n(dT \\n(H1
                    330: .if '\\$1'SC' .if !\\n(IK .tm .CE UH "\\$2" \\n(PN \\n(dT \\n(H1
                    331: .if '\\$1'CONTENTS' .nr cF 1
                    332: .if '\\$1'TABLES' .nr cF 1
                    333: .if '\\$1'FIGURES' .nr cF 1
                    334: .if '\\$1'INDEX' .nr cF 1
                    335: .if \\n(cF \{\
                    336: .LP
                    337: .EH ''''
                    338: .OH ''''
                    339: .EF ''\- \\\\\\\\n(PN \-''
                    340: .OF ''\- \\\\\\\\n(PN \-''
                    341: .if \\nP .pn \\nP+1
                    342: .if \\nP .nr PN \\nP
                    343: .nf
                    344: .if '\\$1'CONTENTS' .ds hD Contents
                    345: .if '\\$1'TABLES' .ds hD Tables
                    346: .if '\\$1'FIGURES' .ds hD Figures
                    347: .if '\\$1'INDEX' .ds hD Index
                    348: .ps 11
                    349: .nr PS 11
                    350: .vs 14
                    351: .nr VS 14
                    352: .ne 1.0i+2v
                    353: \\&
                    354: .sp 0.5i
                    355: .ce
                    356: .ps 18
                    357: .vs 24
                    358: .ft B
                    359: \\*(hD
                    360: .sp 0.5i
                    361: .R
                    362: .ps 11
                    363: .nr PS 11
                    364: .vs 14
                    365: .nr VS 14
                    366: .af PN i
                    367: .if !'\\$1'INDEX' \{\
                    368: .ll -0.5i
                    369: .in +0.5i \}
                    370: .if '\\$1'INDEX' \{\
                    371: .ps 10
                    372: .nr PS 10
                    373: .vs 12
                    374: .nr VS 12
                    375: .2C\}\}
                    376: ..
                    377: .      \" SE - Make special entry in the Contents File
                    378: .de SE
                    379: .if \\n(IK \!.tm SE \\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\$7\t\\$8\t\\$9\t\\\\n(PN\t\\n(dT\t\\n(H1
                    380: .if !\\n(IK .tm SE \\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\$7\t\\$8\t\\$9\t\\n(PN\t\\n(dT\t\\n(H1
                    381: ..
                    382: .      \" H - Header - $1=level, $2=text
                    383: .      \" $1: [1-5]=levels, C=chapter, A=appendix, PA=paperappendix
                    384: .de H
                    385: .ti \\n(.iu
                    386: .RT
                    387: .if \\n(1T .sp
                    388: .RT
                    389: .ne 3.1
                    390: .ft B
                    391: .nr NS \\$1
                    392: .if '\\$1'C' .nr NS 1
                    393: .if '\\$1'C' .nr dT 1
                    394: .if '\\$1'A' .nr NS 1
                    395: .if '\\$1'A' .nr dT 1
                    396: .if '\\$1'PA' .nr NS 1
                    397: .if \\n(NS=1 .if !'\\$1'1' .if !'\\$1'PA'\{\
                    398: .if \\nC .nr H1 \\nC-1
                    399: .nr C 0
                    400: .nr T1 0
                    401: .nr F1 0
                    402: .bp 1 \}
                    403: .if '\\$1'A' .if !\\n(aP \{\
                    404: .nr aP 1
                    405: .nr H1 0
                    406: .af H1 A \}
                    407: .if '\\$1'PA' .if !\\n(aP \{\
                    408: .nr aP 1
                    409: .nr H1 0
                    410: .af H1 A \}
                    411: .af PN 1
                    412: .nr H\\n(NS +1
                    413: .if !\\n(NS-4 .nr H5 0
                    414: .if !\\n(NS-3 .nr H4 0
                    415: .if !\\n(NS-2 .nr H3 0
                    416: .if !\\n(NS-1 .nr H2 0
                    417: .if \\n(NS=1 .ds MT \\$2
                    418: .if \\n(NS=1 .if !'\\$1'1' .if !'\\$1'PA'\{\
                    419: .ad c
                    420: .ps 18
                    421: .vs 24
                    422: \\&
                    423: .sp 0.5i
                    424: .if '\\$1'C' .ds hS Chapter \\n(H1
                    425: .if '\\$1'A' .ds hS Appendix \\n(H1
                    426: \\*(hS
                    427: .sp
                    428: \\$2
                    429: .sp 0.5i
                    430: .ps
                    431: .vs
                    432: .ad b \}
                    433: .if \\n(NS>=1 .if !'\\$1'C' .if !'\\$1'A' .if !'\\$1'PA'\{\
                    434: .sp 10p
                    435: .ne 33p+20p
                    436: .ds SN \\n(H1.
                    437: .if \\n(NS>1 .as SN \\n(H2.
                    438: .if \\n(NS>2 .as SN \\n(H3.
                    439: .if \\n(NS>3 .as SN \\n(H4.
                    440: .if \\n(NS>4 .as SN \\n(H5.
                    441: .if \\n(NS=1 .ft B
                    442: .if \\n(NS=1 .ps 16p
                    443: .if \\n(NS=1 .vs 18p
                    444: .if \\n(NS=2 .ft B
                    445: .if \\n(NS=2 .ps 14p
                    446: .if \\n(NS=2 .vs 18p
                    447: .if \\n(NS=3 .ft I
                    448: .if \\n(NS=3 .ps 12p
                    449: .if \\n(NS=3 .vs 15p
                    450: .if \\n(NS=4 .ft I
                    451: .if \\n(NS=4 .ps 11p
                    452: .if \\n(NS=4 .vs 15p
                    453: .if \\n(NS=5 .ft R
                    454: .if \\n(NS=5 .ps \\n(PSp
                    455: .if \\n(NS=5 .vs \\n(VSp
                    456: .in +\\w'\\*(SN\\ \\ 'u
                    457: .ta \\w'\\*(SN\\ \\ 'u
                    458: .ti -\\w'\\*(SN\\ \\ 'u
                    459: \\*(SN\\ \\ \t\c
                    460: \&\\$2
                    461: .in
                    462: .ps
                    463: .vs
                    464: .sp 7p \}
                    465: .if '\\$1'PA'\{\
                    466: .sp 13p
                    467: .ne 33p+20p
                    468: .ft B
                    469: .ps 16p
                    470: .vs 18p
                    471: .in +\\w'\\*(SN\\ \\ 'u
                    472: .ta \\w'\\*(SN\\ \\ 'u
                    473: .ti -\\w'\\*(SN\\ \\ 'u
                    474: .ds SN Appendix \\n(H1.
                    475: .ti -\\w'\\*(SN\\ \\ 'u
                    476: \\*(SN\\ \\ \t\c
                    477: \&\\$2
                    478: .in
                    479: .ps
                    480: .vs
                    481: .sp 7p \}
                    482: .R
                    483: .if '\\$1'C' .if  \\n(IK \!.tm .CE C "\\$2" \\\\n(PN \\n(dT \\n(H1
                    484: .if '\\$1'C' .if !\\n(IK .tm .CE C "\\$2" \\n(PN \\n(dT \\n(H1
                    485: .if '\\$1'A' .if  \\n(IK \!.tm .CE A "\\$2" \\\\n(PN \\n(dT \\n(H1
                    486: .if '\\$1'A' .if !\\n(IK .tm .CE A "\\$2" \\n(PN \\n(dT \\n(H1
                    487: .if '\\$1'1' .if  \\n(IK \!.tm .CE N "\\$2" \\\\n(PN \\n(dT \\n(H1
                    488: .if '\\$1'1' .if !\\n(IK .tm .CE N "\\$2" \\n(PN \\n(dT \\n(H1
                    489: .if '\\$1'PA' .if  \\n(IK \!.tm .CE N "\\$2" \\\\n(PN \\n(dT \\n(H1
                    490: .if '\\$1'PA' .if !\\n(IK .tm .CE N "\\$2" \\n(PN \\n(dT \\n(H1
                    491: .if \\n(NS>1 .if  \\n(IK \!.tm .CE N "\\$2" \\\\n(PN \\n(dT \\n(H1 \\n(H2 \\n(H3 \\n(H4 \\n(H5
                    492: .if \\n(NS>1 .if !\\n(IK .tm .CE N "\\$2" \\n(PN \\n(dT \\n(H1 \\n(H2 \\n(H3 \\n(H4 \\n(H5
                    493: ..
                    494: .      \" TN - Table Caption
                    495: .de TN
                    496: .nr T1 +1
                    497: .sp
                    498: .if \\n(dT  .ds tS Table \\n(H1-\\n(T1: \\$1
                    499: .if !\\n(dT .ds tS Table \\n(T1: \\$1
                    500: .ce
                    501: \\*(tS
                    502: .sp
                    503: .ie \\n(IK \!.tm .CE T "\\$1" \\\\n(PN \\n(dT \\n(H1 \\n(T1
                    504: .el .tm .CE T "\\$1" \\n(PN \\n(dT \\n(H1 \\n(T1
                    505: ..
                    506: .      \" FN - Figure Caption
                    507: .de FN
                    508: .nr F1 +1
                    509: .sp
                    510: .if \\n(dT  .ds tS Figure \\n(H1-\\n(F1: \\$1
                    511: .if !\\n(dT .ds tS Figure \\n(F1: \\$1
                    512: .ce
                    513: \\*(tS
                    514: .sp
                    515: .ie \\n(IK \!.tm .CE F "\\$1" \\\\n(PN \\n(dT \\n(H1 \\n(F1
                    516: .el .tm .CE F "\\$1" \\n(PN \\n(dT \\n(H1 \\n(F1
                    517: ..
                    518: .      \" CE - table of contents entry
                    519: .      \" $1 : header type;  $2 : text;  $3 : page number;  $4 : document type
                    520: .      \" $5 : chapter number;  $6, 7, 8 : additional numbers
                    521: .de CE
                    522: .fi
                    523: .na
                    524: .nh
                    525: .rm lS
                    526: .ds rS \\$3
                    527: .if !'\\$4'0' .ds rS \\$5-\\$3
                    528: .if '\\$1'N' .if '\\$6\\$7\\$8\\$9'' .ds rS \fB\\$3\fP
                    529: .if '\\$1'C' .if !'\\$5'' .if !'\\$5'0' .ds rS \fB\\$5-\\$3\fP
                    530: .if '\\$1'A' .if !'\\$5'' .if !'\\$5'0' .ds rS \fB\\$5-\\$3\fP
                    531: .if '\\$1'T' .if '\\$4'0' .ds lS Table \\$6\ \ 
                    532: .if '\\$1'F' .if '\\$4'0' .ds lS Figure \\$6\ \ 
                    533: .if '\\$1'T' .if '\\$4'1' .ds lS Table \\$5-\\$6\ \ 
                    534: .if '\\$1'F' .if '\\$4'1' .ds lS Figure \\$5-\\$6\ \ 
                    535: .if '\\$1'A' .ds lS \fBAppendix \\$5\fP\ \ 
                    536: .if '\\$1'C' .ds lS \fBChapter \\$5\fP\ \ 
                    537: .if '\\$1'N' .ds lS \\$5.\ \ 
                    538: .if '\\$1'N' .if '\\$6\\$7\\$8\\$9'' .ds lS \fB\\$5.\fP\ \ 
                    539: .if '\\$1'N' .if !'\\$6'' .if !'\\$6'0' .ds lS "    \\$5.\\$6.\ \ 
                    540: .if '\\$1'N' .if !'\\$7'' .if !'\\$7'0' .ds lS "        \\$5.\\$6.\\$7.\ \ 
                    541: .if '\\$1'N' .if !'\\$8'' .if !'\\$8'0' .ds lS "            \\$5.\\$6.\\$7.\\$8.\ \ 
                    542: .if '\\$1'N' .if !'\\$9'' .if !'\\$9'0' .ds lS "                \\$5.\\$6.\\$7.\\$8.\\$9\ \ 
                    543: .if '\\$1'N' .if '\\$6\\$7\\$8\\$9'' .ne 3
                    544: .if '\\$1'U' .ne 3
                    545: .if '\\$1'A' .ne 3
                    546: .if '\\$1'C' .ne 3
                    547: .if '\\$1'N' .if '\\$6\\$7\\$8\\$9'' .sp
                    548: .if '\\$1'U' .sp
                    549: .if '\\$1'A' .sp
                    550: .if '\\$1'C' .sp
                    551: .\" Reduce line length, save section # width, increase indent:
                    552: .nr $l \\n(.l \"save line length
                    553: .ll -8n  \"try 8 ens for now
                    554: .nr wN \\w\\*(lSu \"wN = width of section number
                    555: .in +\\n(wNu
                    556: .\" Output number (lS) and text ($2) with short line length
                    557: .ti -\\n(wNu  \"don't indent first line
                    558: .vs \\n(.sp+2p  \"normalize spacing
                    559: .\" We need at least two lines for this 'moving-backward' hack to work:
                    560: .ne 2v
                    561: \&\\*(lS\\$2
                    562: .\"Restore line length and indent
                    563: .ll
                    564: .in
                    565: .\"  Go back to previous line, output leader & page number:
                    566: .nf  \"leaders only work right in no-fill mode!
                    567: .\" If last line broke, we have to correct for indent:
                    568: .if (\\w\\*(lS\\$2u)<=(\\n(.lu-\\n(.iu-8n) .nr wN 0
                    569: .ll -\\n(wNu
                    570: .ti +\\n(wNu
                    571: .ta \\n(.lu-\\n(.iu-5nR \\n(.lu-\\n(.iuR
                    572: .sp -1v
                    573: .vs \"(now can restore original vertical spacing)
                    574: \\h'|\\n(.nu+.5n'\s-3\a\s+3\t\\*(rS
                    575: .\"Restore line length (again):
                    576: .ll
                    577: ..
                    578: .      \" NH - numbered header
                    579: .de NH
                    580: .SH
                    581: .nr NS \\$1
                    582: .if !\\n(.$ .nr NS 1
                    583: .if !\\n(NS .nr NS 1
                    584: .nr H\\n(NS +1
                    585: .if !\\n(NS-4 .nr H5 0
                    586: .if !\\n(NS-3 .nr H4 0
                    587: .if !\\n(NS-2 .nr H3 0
                    588: .if !\\n(NS-1 .nr H2 0
                    589: .if !\\$1 .if \\n(.$ .nr H1 1
                    590: .if \\$1S \{\
                    591: .      nr NS \\n(.$-1
                    592: .      nr H1 \\$2
                    593: .      nr H2 \\$3
                    594: .      nr H3 \\$4
                    595: .      nr H4 \\$5
                    596: .      nr H5 \\$6
                    597: .\}
                    598: .ds SN \\n(H1.
                    599: .if \\n(NS-1 .as SN \\n(H2.
                    600: .if \\n(NS-2 .as SN \\n(H3.
                    601: .if \\n(NS-3 .as SN \\n(H4.
                    602: .if \\n(NS-4 .as SN \\n(H5.
                    603: \\*(SN
                    604: ..
                    605: .      \" LS - listing start
                    606: .de LS
                    607: .ie \\$1no .ID \\$2
                    608: .el .DS I \\$1
                    609: .nr PQ \\n(.f
                    610: .ft L
                    611: .ps -\\n(dP
                    612: .vs -\\n(dV
                    613: .nr @ \\w'x'u*8
                    614: .if \\n(.$ .nr @ \\w'x'u*\\$2
                    615: .if \\n(.$ .if \\$1no .nr @ \\w'x'u*\\$3
                    616: .ta \\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u
                    617: ..
                    618: .      \" LE - listing end
                    619: .de LE
                    620: .ft \\n(PQ
                    621: .ps \\n(PS
                    622: .if \\n(VS>=40 .vs \\n(VSu
                    623: .if \\n(VS<=39 .vs \\n(VSp
                    624: .DE
                    625: ..
                    626: .      \" DS - display with keep (L=left I=indent C=center B=block)
                    627: .de DS
                    628: .KS
                    629: .\\$1D \\$2 \\$1
                    630: .ft 1
                    631: .ps \\n(PS
                    632: .if \\n(VS>=40 .vs \\n(VSu
                    633: .if \\n(VS<=39 .vs \\n(VSp
                    634: ..
                    635: .de D
                    636: .ID \\$1
                    637: ..
                    638: .      \" ID - indented display with no keep
                    639: .de ID
                    640: .XD
                    641: .if t .in +.5i
                    642: .if n .in +8
                    643: .if \\n(.$ .if !\\$1I .if !\\$1 \{\
                    644: .      in \\n(OIu
                    645: .      in +\\$1n
                    646: .\}
                    647: ..
                    648: .      \" LD - left display with no keep
                    649: .de LD
                    650: .XD
                    651: ..
                    652: .      \" CD - centered display with no keep
                    653: .de CD
                    654: .XD
                    655: .ce 999
                    656: ..
                    657: .      \" XD - real display macro
                    658: .de XD
                    659: .nf
                    660: .nr OI \\n(.i
                    661: .sp \\n(DDu
                    662: .if \\n(TM .ls 1
                    663: ..
                    664: .      \" DE - end display of any kind
                    665: .de DE
                    666: .ce 0
                    667: .if \\n(BD .DF
                    668: .nr BD 0
                    669: .in \\n(OIu
                    670: .KE
                    671: .if \\n(TM .ls 2
                    672: .sp \\n(DDu
                    673: .fi
                    674: ..
                    675: .      \" BD - block display: center entire block
                    676: .de BD
                    677: .XD
                    678: .nr BD 1
                    679: .nf
                    680: .in \\n(OIu
                    681: .di DD
                    682: ..
                    683: .      \" DF - finish block display
                    684: .de DF
                    685: .di
                    686: .if \\n(dl>\\n(BD .nr BD \\n(dl
                    687: .if \\n(BD<\\n(.l .in (\\n(.lu-\\n(BDu)/2u
                    688: .nr EI \\n(.l-\\n(.i
                    689: .ta \\n(EIuR
                    690: .DD
                    691: .in \\n(OIu
                    692: ..
                    693: .      \" KS - begin regular keep
                    694: .de KS
                    695: .nr KN \\n(.u
                    696: .if !\\n(IK .if !\\n(IF .KQ
                    697: .nr IK +1
                    698: ..
                    699: .      \" KQ - real keep processor
                    700: .de KQ
                    701: .br
                    702: .nr KI \\n(.i
                    703: .ev 2
                    704: .TA
                    705: .br
                    706: .in \\n(KIu
                    707: .ps \\n(PS
                    708: .if \\n(VS>=40 .vs \\n(VSu
                    709: .if \\n(VS<=39 .vs \\n(VSp
                    710: .ll \\n(LLu
                    711: .lt \\n(LTu
                    712: .if \\n(NX>1 .ll \\n(CWu
                    713: .if \\n(NX>1 .lt \\n(CWu
                    714: .di KK
                    715: .nr TB 0
                    716: ..
                    717: .      \" KF - begin floating keep
                    718: .de KF
                    719: .nr KN \\n(.u
                    720: .if !\\n(IK .FQ
                    721: .nr IK +1
                    722: ..
                    723: .      \" FQ - real floating keep processor
                    724: .de FQ
                    725: .nr KI \\n(.i
                    726: .ev 2
                    727: .TA
                    728: .br
                    729: .in \\n(KIu
                    730: .ps \\n(PS
                    731: .if \\n(VS>=40 .vs \\n(VSu
                    732: .if \\n(VS<=39 .vs \\n(VSp
                    733: .ll \\n(LLu
                    734: .lt \\n(LTu
                    735: .if \\n(NX>1 .ll \\n(CWu
                    736: .if \\n(NX>1 .lt \\n(CWu
                    737: .di KK
                    738: .nr TB 1
                    739: ..
                    740: .      \" KE - end keep
                    741: .de KE
                    742: .if \\n(IK .if !\\n(IK-1 .if !\\n(IF .RQ
                    743: .if \\n(IK .nr IK -1
                    744: ..
                    745: .      \" RQ - real keep release
                    746: .de RQ
                    747: .br
                    748: .di
                    749: .nr NF 0
                    750: .if \\n(dn-\\n(.t .nr NF 1
                    751: .if \\n(TC .nr NF 1
                    752: .if \\n(NF .if !\\n(TB .sp 200
                    753: .if !\\n(NF .if \\n(TB .nr TB 0
                    754: .nf
                    755: .rs
                    756: .nr TC 5
                    757: .in 0
                    758: .ls 1
                    759: .if !\\n(TB \{\
                    760: .      ev
                    761: .      br
                    762: .      ev 2
                    763: .      KK
                    764: .\}
                    765: .ls
                    766: .ce 0
                    767: .if !\\n(TB .rm KK
                    768: .if \\n(TB .da KJ
                    769: .if \\n(TB \!.KD \\n(dn
                    770: .if \\n(TB .KK
                    771: .if \\n(TB .di
                    772: .nr TC \\n(TB
                    773: .if \\n(KN .fi
                    774: .in
                    775: .ev
                    776: ..
                    777: .      \" start picture
                    778: .de PS
                    779: .      \" $1 is height, $2 is width in units
                    780: .if t .sp .3
                    781: .in (\\n(.lu-\\$2u)/2u
                    782: .ne \\$1u
                    783: ..
                    784: .      \" end of picture
                    785: .de PE
                    786: .in
                    787: .if t .sp .6
                    788: ..
                    789: .      \" KD - keep redivert
                    790: .de KD
                    791: .nr KM 0
                    792: .if \\n(.zKJ .nr KM 1
                    793: .if \\n(KM \!.KD \\$1
                    794: .if !\\n(KM .if \\n(.t<\\$1 .di KJ
                    795: ..
                    796: .      \" EM - end macro (process leftover keep)
                    797: .de EM
                    798: .br
                    799: .if !\\n(TB .if t .wh -1p CM
                    800: .if \\n(TB \{\
                    801: \&\c
                    802: '      bp
                    803: .      NP
                    804: .      ch CM 160
                    805: .\}
                    806: ..
                    807: .de XK
                    808: .nr TD 1
                    809: .nf
                    810: .ls 1
                    811: .in 0
                    812: .rn KJ KL
                    813: .KL
                    814: .rm KL
                    815: .if \\n(.zKJ .di
                    816: .nr TB 0
                    817: .if \\n(.zKJ .nr TB 1
                    818: .br
                    819: .in
                    820: .ls
                    821: .fi
                    822: .nr TD 0
                    823: ..
                    824: .      \" NP - new page
                    825: .de NP
                    826: .if !\\n(LT .nr LT \\n(LLu
                    827: .if \\n(FM+\\n(HM>=\\n(.p \{\
                    828: .      tm HM + FM longer than page
                    829: .      ab
                    830: .\}
                    831: .\".if t .CM
                    832: .if !\\n(HM .nr HM 1i
                    833: .po \\n(POu
                    834: .nr PF \\n(.f
                    835: .nr PX \\n(.s
                    836: .ft 1
                    837: .ps \\n(PS
                    838: 'sp \\n(HMu/2u
                    839: .PT
                    840: 'sp |\\n(HMu
                    841: .HD    \"undefined
                    842: .ps \\n(PX
                    843: .ft \\n(PF
                    844: .nr XX 0 1
                    845: .nr YY 0-\\n(FMu
                    846: .ch FO 16i
                    847: .ch FX 17i
                    848: .ch FO -\\n(FMu
                    849: .ch FX \\n(.pu-\\n(FMu
                    850: .if \\n(MF .FV
                    851: .nr MF 0
                    852: .mk
                    853: .os
                    854: .ev 1
                    855: .if !\\n(TD .if \\n(TC<5 .XK
                    856: .nr TC 0
                    857: .ev
                    858: .nr TQ \\n(.i
                    859: .nr TK \\n(.u
                    860: .if \\n(IT \{\
                    861: .      in 0
                    862: .      nf
                    863: .      TT
                    864: .      in \\n(TQu
                    865: .      if \\n(TK .fi
                    866: .\}
                    867: .ns
                    868: .mk #T
                    869: .if t .if \\n(.o+\\n(LL>7.54i .tm PO + LL wider than 7.54i
                    870: ..
                    871: .      \" PT - page titles
                    872: .de PT
                    873: .lt \\n(LTu
                    874: .pc %
                    875: .nr PN \\n%
                    876: .nr PT \\n%
                    877: .if \\n(P1 .nr PT 2
                    878: .if \\n(PT>1 .if !\\n(EH .if !\\n(OH .tl \\*(LH\\*(CH\\*(RH
                    879: .if \\n(PT>1 .if \\n(OH .if o .tl \\*(O1
                    880: .if \\n(PT>1 .if \\n(EH .if e .tl \\*(E2
                    881: .lt \\n(.lu
                    882: ..
                    883: .      \" OH - odd page header
                    884: .de OH
                    885: .nr OH 1
                    886: .if !\\n(.$ .nr OH 0
                    887: .ds O1 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
                    888: ..
                    889: .      \" EH - even page header
                    890: .de EH
                    891: .nr EH 1
                    892: .if !\\n(.$ .nr EH 0
                    893: .ds E2 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
                    894: ..
                    895: .      \" P1 - PT on 1st page
                    896: .de P1
                    897: .nr P1 1
                    898: ..
                    899: .      \" FO - footer
                    900: .de FO
                    901: .rn FO FZ
                    902: .if \\n(IT .nr T. 1
                    903: .if \\n(IT .if !\\n(FC .T# 1
                    904: .if \\n(IT .br
                    905: .nr FC +1
                    906: .if \\n(NX<2 .nr WF 0
                    907: .nr dn 0
                    908: .if \\n(FC<=1 .if \\n(XX .XF
                    909: .rn FZ FO
                    910: .nr MF 0
                    911: .if \\n(dn .nr MF 1
                    912: .if !\\n(WF .nr YY 0-\\n(FMu
                    913: .if !\\n(WF .ch FO \\n(YYu
                    914: .if !\\n(dn .nr WF 0
                    915: .if \\n(FC<=1 .if !\\n(XX \{\
                    916: .      if \\n(NX>1 .RC
                    917: .      if \\n(NX<2 'bp
                    918: .\}
                    919: .nr FC -1
                    920: .if \\n(ML .ne \\n(MLu
                    921: ..
                    922: .      \" BT - bottom title
                    923: .de BT
                    924: .nr PF \\n(.f
                    925: .nr PX \\n(.s
                    926: .ft 1
                    927: .ps \\n(PS
                    928: .lt \\n(LTu
                    929: .po \\n(POu
                    930: .if \\n(TM .if \\n(CT \{\
                    931: .      tl ''\\n(PN''
                    932: .      nr CT 0
                    933: .\}
                    934: .if \\n% .if !\\n(EF .if !\\n(OF .tl \\*(LF\\*(CF\\*(RF
                    935: .if \\n% .if \\n(OF .if o .tl \\*(O3
                    936: .if \\n% .if \\n(EF .if e .tl \\*(E4
                    937: .ft \\n(PF
                    938: .ps \\n(PX
                    939: ..
                    940: .      \" OF - odd page footer
                    941: .de OF
                    942: .nr OF 1
                    943: .if !\\n(.$ .nr OF 0
                    944: .ds O3 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
                    945: ..
                    946: .      \" EF - even page footer
                    947: .de EF
                    948: .nr EF 1
                    949: .if !\\n(.$ .nr EF 0
                    950: .ds E4 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
                    951: ..
                    952: .      \" 2C - double column
                    953: .de 2C
                    954: .MC
                    955: ..
                    956: .      \" 1C - single column
                    957: .de 1C
                    958: .MC \\n(LLu
                    959: .hy 14
                    960: ..
                    961: .      \" MC - multiple columns, arg is col width
                    962: .de MC
                    963: .nr L1 \\n(LL*7/15
                    964: .if \\n(.$ .nr L1 \\$1n
                    965: .nr NQ \\n(LL/\\n(L1
                    966: .if \\n(NQ<1 .nr NQ 1
                    967: .if \\n(NQ>2 .if (\\n(LL%\\n(L1)=0 .nr NQ -1
                    968: .if !\\n(1T \{\
                    969: .      BG
                    970: .      if n .sp 4
                    971: .      if t .sp 2
                    972: .\}
                    973: .if !\\n(NX .nr NX 1
                    974: .if !\\n(NX=\\n(NQ \{\
                    975: .      RT
                    976: .      if \\n(NX>1 .bp
                    977: .      mk
                    978: .      nr NC 1
                    979: .      po \\n(POu
                    980: .\}
                    981: .if \\n(NQ>1 .hy 12
                    982: .nr NX \\n(NQ
                    983: .nr CW \\n(L1
                    984: .ll \\n(CWu
                    985: .nr FL \\n(CWu*11u/12u
                    986: .if \\n(NX>1 .nr GW (\\n(LL-(\\n(NX*\\n(CW))/(\\n(NX-1)
                    987: .nr RO \\n(CW+\\n(GW
                    988: .ns
                    989: ..
                    990: .de RC
                    991: .if \\n(NC>=\\n(NX .C2
                    992: .if \\n(NC<\\n(NX .C1
                    993: .nr NC \\n(ND
                    994: .if \\n(iL>0 .if !"\\*(iC"" \{\
                    995: .if \\n(.i>0 .ti -\\n(.i
                    996: \\*(iC
                    997: .ti -4 \}
                    998: ..
                    999: .de C1
                   1000: .rt
                   1001: .po +\\n(ROu
                   1002: .nr ND \\n(NC+1
                   1003: .nr XX 0 1
                   1004: .if \\n(MF .FV
                   1005: .ch FX \\n(.pu-\\n(FMu
                   1006: .ev 1
                   1007: .if \\n(TB .XK
                   1008: .nr TC 0
                   1009: .ev
                   1010: .nr TQ \\n(.i
                   1011: .if \\n(IT .in 0
                   1012: .if \\n(IT .TT
                   1013: .if \\n(IT .in \\n(TQu
                   1014: .mk #T
                   1015: .ns
                   1016: ..
                   1017: .de C2
                   1018: .po \\n(POu
                   1019: 'bp
                   1020: .nr ND 1
                   1021: ..
                   1022: .      \" RS - right shift
                   1023: .de RS
                   1024: .nr IS \\n(IP
                   1025: .RT
                   1026: .nr IP \\n(IS
                   1027: .if \\n(IP .in +\\n(I\\n(IRu
                   1028: .nr IR +1
                   1029: .nr I\\n(IR \\n(PIu
                   1030: .in +\\n(I\\n(IRu
                   1031: ..
                   1032: .      \" RE - retreat left
                   1033: .de RE
                   1034: .nr IS \\n(IP
                   1035: .RT
                   1036: .nr IP \\n(IS
                   1037: .if \\n(IR .nr IR -1
                   1038: .if \\n(IP<=0 .in -\\n(I\\n(IRu
                   1039: ..
                   1040: .      \" I - italic font
                   1041: .de I
                   1042: .nr PQ \\n(.f
                   1043: .if t .ft 2
                   1044: .ie \\$1 .if n .ul 999
                   1045: .el .if n .ul 1
                   1046: .if t .if !\\$1 \&\f\\n(PQ\\$3\fI\\$1\|\f\\n(PQ\\$2
                   1047: .if n .if \\n(.$=1 \&\\$1
                   1048: .if n .if \\n(.$>2 \&\\$3\c
                   1049: .if n .if \\n(.$>1 \&\\$1\c
                   1050: .if n .if \\n(.$>1 \&\\$2
                   1051: ..
                   1052: .      \" B - bold font
                   1053: .de B
                   1054: .nr PQ \\n(.f
                   1055: .if t .ft 3
                   1056: .ie \\$1 .if n .ul 999
                   1057: .el .if n .ul 1
                   1058: .if t .if !\\$1 \&\f\\n(PQ\\$3\fB\\$1\f\\n(PQ\\$2
                   1059: .if n .if \\n(.$=1 \&\\$1
                   1060: .if n .if \\n(.$>2 \&\\$3\c
                   1061: .if n .if \\n(.$>1 \&\\$1\c
                   1062: .if n .if \\n(.$>1 \&\\$2
                   1063: ..
                   1064: .      \" R - Roman font
                   1065: .de R
                   1066: .if n .ul 0
                   1067: .ft 1
                   1068: ..
                   1069: .      \" L - listing font
                   1070: .de L
                   1071: .if n .ul
                   1072: \%\&\\$3\fL\\$1\f1\&\\$2
                   1073: ..
                   1074: .      \" LB - bold listing font
                   1075: .de LB
                   1076: .if n .ul
                   1077: \%\&\\$3\f(LB\\$1\f1\&\\$2
                   1078: ..
                   1079: .      \" UL - underline in troff
                   1080: .de UL
                   1081: .if t \\$1\l'|0\(ul'\\$2
                   1082: .if n .I \\$1 \\$2
                   1083: ..
                   1084: .      \" SM - make text small
                   1085: .de SM
                   1086: .ps -2
                   1087: .if !"\\$1"" \\$3\&\\$1\\$2
                   1088: .if !"\\$1"" .ps +2
                   1089: ..
                   1090: .      \" LG - larger
                   1091: .de LG
                   1092: .ps +2
                   1093: .if !"\\$1"" \\$3\&\\$1\\$2
                   1094: .if !"\\$1"" .ps -2
                   1095: ..
                   1096: .      \" NL - normal
                   1097: .de NL
                   1098: .ps \\n(PS
                   1099: ..
                   1100: .      \" combinations of Roman, italic, bold
                   1101: .de RI
                   1102: \&\fR\\$1\fI\\$2\^\fR\\$3\fI\\$4\^\fR\\$5\fI\\$6\^\fR\\$7\fI\\$8\^\fR\\$9
                   1103: ..
                   1104: .de RB
                   1105: \&\fR\\$1\fB\\$2\fR\\$3\fB\\$4\fR\\$5\fB\\$6\fR\\$7\fB\\$8\fR\\$9
                   1106: ..
                   1107: .de IR
                   1108: \&\fI\\$1\^\fR\\$2\fI\\$3\^\fR\\$4\fI\\$5\^\fR\\$6\fI\\$7\^\fR\\$8\fI\\$9\^\fR
                   1109: ..
                   1110: .de IB
                   1111: \&\fI\\$1\^\fB\\$2\fI\\$3\^\fB\\$4\fI\\$5\^\fB\\$6\fI\\$7\^\fB\\$8\fI\\$9\^\fR
                   1112: ..
                   1113: .de BR
                   1114: \&\fB\\$1\fR\\$2\fB\\$3\fR\\$4\fB\\$5\fR\\$6\fB\\$7\fR\\$8\fB\\$9\fR
                   1115: ..
                   1116: .de BI
                   1117: \&\fB\\$1\fI\\$2\^\fB\\$3\fI\\$4\^\fB\\$5\fI\\$6\^\fB\\$7\fI\\$8\^\fB\\$9\fR
                   1118: ..
                   1119: .      \" \** - numbered footnote
                   1120: .ds * \\*([.\\n+*\\*(.]
                   1121: .      \" FJ - replaces FS after cover
                   1122: .de FJ
                   1123: 'ce 0
                   1124: .di
                   1125: .ev 1
                   1126: .ll \\n(FLu
                   1127: .da FF
                   1128: .br
                   1129: .if \\n(IF .tm Nested footnote
                   1130: .nr IF 1
                   1131: .if !\\n+(XX-1 .FA
                   1132: .if !\\n(MF .if !\\n(.$ .if \\n* .FP \\n*
                   1133: .if !\\n(MF .if \\n(.$ .FP \\$1 no
                   1134: ..
                   1135: .      \" FK - replaces FE after cover
                   1136: .de FK
                   1137: .br
                   1138: .in 0
                   1139: .nr IF 0
                   1140: .di
                   1141: .ev
                   1142: .if !\\n(XX-1 .nr dn +\\n(.v
                   1143: .nr YY -\\n(dn
                   1144: .if !\\n(NX .nr WF 1
                   1145: .if \\n(dl>\\n(CW .nr WF 1
                   1146: .if (\\n(nl+\\n(.v)<=(\\n(.p+\\n(YY) .ch FO \\n(YYu
                   1147: .if (\\n(nl+\\n(.v)>(\\n(.p+\\n(YY) \{\
                   1148: .      if \\n(nl>(\\n(HM+1.5v) .ch FO \\n(nlu+\\n(.vu
                   1149: .      if \\n(nl+\\n(FM+1v>\\n(.p .ch FX \\n(.pu-\\n(FMu+2v
                   1150: .      if \\n(nl<=(\\n(HM+1.5v) .ch FO \\n(HMu+(4u*\\n(.vu)
                   1151: .\}
                   1152: ..
                   1153: .      \" FS - begin footnote on cover
                   1154: .de FS
                   1155: .ev 1
                   1156: .br
                   1157: .ll \\n(FLu
                   1158: .da FG
                   1159: .if !\\n(.$ .if \\n* .FP \\n*
                   1160: .if \\n(.$ .FP \\$1 no
                   1161: ..
                   1162: .      \" FE - end footnote on cover
                   1163: .de FE
                   1164: .br
                   1165: .di
                   1166: .nr FP \\n(dn
                   1167: .if !\\n(1T .nr KG 1
                   1168: .ev
                   1169: ..
                   1170: .      \" FA - print line before footnotes
                   1171: .de FA
                   1172: .in 0
                   1173: .if n _________________________
                   1174: .if t \l'1i'
                   1175: .br
                   1176: ..
                   1177: .      \" FP - footnote paragraph
                   1178: .de FP
                   1179: .sp \\n(PDu/2u
                   1180: .if \\n(FF<2 .ti \\n(FIu
                   1181: .if \\n(FF=3 \{\
                   1182: .      in \\n(FIu*2u
                   1183: .      ta \\n(FIu*2u
                   1184: .      ti 0
                   1185: .\}
                   1186: .if !\\n(FF \{\
                   1187: .      ie "\\$2"no" \\$1\0\c
                   1188: .      el \\*([.\\$1\\*(.]\0\c
                   1189: .\}
                   1190: .if \\n(FF .if \\n(FF<3 \{\
                   1191: .      ie "\\$2"no" \\$1\0\c
                   1192: .      el \\$1.\0\c
                   1193: .\}
                   1194: .if \\n(FF=3 \{\
                   1195: .      ie "\\$2"no" \\$1\t\c
                   1196: .      el \\$1.\t\c
                   1197: .\}
                   1198: ..
                   1199: .      \" FV - get leftover footnote from previous page
                   1200: .de FV
                   1201: .FS
                   1202: .nf
                   1203: .ls 1
                   1204: .FY
                   1205: .ls
                   1206: .fi
                   1207: .FE
                   1208: ..
                   1209: .      \" FX - divert leftover footnote for next page
                   1210: .de FX
                   1211: .if \\n(XX .di FY
                   1212: .if \\n(XX .ns
                   1213: ..
                   1214: .      \" XF - actually print footnote
                   1215: .de XF
                   1216: .if \\n(nlu+1v>(\\n(.pu-\\n(FMu) .ch FX \\n(nlu+1.9v
                   1217: .ev 1
                   1218: .nf
                   1219: .ls 1
                   1220: .FF
                   1221: .rm FF
                   1222: .nr XX 0 1
                   1223: .br
                   1224: .ls
                   1225: .di
                   1226: .fi
                   1227: .ev
                   1228: ..
                   1229: .      \" TS - source file for tbl
                   1230: .de TS
                   1231: .rn TS @T
                   1232: .so \*(//ms.tbl
                   1233: .TS \\$1 \\$2
                   1234: .rm @T
                   1235: ..
                   1236: .      \" EQ - source file for eqn
                   1237: .de EQ
                   1238: .rn EQ @T
                   1239: .so \*(//ms.eqn
                   1240: .EQ \\$1 \\$2
                   1241: .rm @T
                   1242: ..
                   1243: .       \" ]- - source file for refer
                   1244: .de ]-
                   1245: .rn ]- @T
                   1246: .so \*(//ms.ref
                   1247: .]-
                   1248: .rm @T
                   1249: ..
                   1250: .       \" [< - for refer -s or -e
                   1251: .de ]<
                   1252: .rn ]< @T
                   1253: .so \*(//ms.ref
                   1254: .]<
                   1255: .rm @T
                   1256: ..
                   1257: .if \n(.V>19 .ds [. \f1[
                   1258: .if \n(.V>19 .ds .] ]\fP
                   1259: .if \n(.V<20 .ds [. \f1\s-2\v'-.4m'
                   1260: .if \n(.V<20 .ds .] \v'.4m'\s+2\fP
                   1261: .ds <. .
                   1262: .ds <, ,
                   1263: .if n .ds Q \&"
                   1264: .if n .ds U \&"
                   1265: .if n .ds - \%--
                   1266: .if t .ds Q ``
                   1267: .if t .ds U ''
                   1268: .if t .ds - \(em
                   1269: .ds ' \h'\w'e'u/5'\z\'\h'-\w'e'u/5'
                   1270: .ds ` \h'\w'e'u/5'\z\`\h'-\w'e'u/5'
                   1271: .ds ^ \h'\w'o'u/10'\z^\h'-\w'e'u/10'
                   1272: .ds , \h'\w'c'u/5'\z,\h'-\w'e'u/5'
                   1273: .ds : \h'\w'u'u/5'\z"\h'-\w'e'u/5'
                   1274: .ds ~ \h'\w'n'u/10'\z~\h'-\w'e'u/10'
                   1275: .ds C \h'\w'c'u/5'\v'-.6m'\s-4\zv\s+4\v'.6m'\h'-\w'c'u/5'
                   1276: .      \" AM - better accent marks
                   1277: .de AM
                   1278: .so \*(//ms.acc
                   1279: ..
                   1280: .       \" TM - thesis mode
                   1281: .de TM
                   1282: .so \*(//ms.ths
                   1283: ..
                   1284: .      \" BX - word in a box
                   1285: .de BX
                   1286: .if t \(br\|\\$1\|\(br\l'|0\(rn'\l'|0\(ul'
                   1287: .if n \(br\\kA\|\\$1\|\\kB\(br\v'-1v'\h'|\\nBu'\l'|\\nAu'\v'1v'\l'|\\nAu'
                   1288: ..
                   1289: .      \" B1 - source file for boxed text
                   1290: .de B1
                   1291: .rn B1 @T
                   1292: .so \*(//ms.tbl
                   1293: .B1 \\$1
                   1294: .rm @T
                   1295: ..
                   1296: .       \" XS - table of contents
                   1297: .de XS
                   1298: .rn XS @T
                   1299: .so \*(//ms.toc
                   1300: .XS \\$1 \\$2
                   1301: .rm @T           
                   1302: ..  
                   1303: .      \" IX - Make an Index Entry
                   1304: .de IX
                   1305: .if \\nI .if \\n(dT .if \\n(IK \!.tm .IE\t\\$1\t\\$2\t\\$3\t\\n(H1-\\\\n(PN\t
                   1306: .if \\nI .if \\n(dT .if !\\n(IK .tm .IE\t\\$1\t\\$2\t\\$3\t\\n(H1-\\n(PN\t
                   1307: .if \\nI .if !\\n(dT .if \\n(IK \!.tm .IE\t\\$1\t\\$2\t\\$3\t\\\\n(PN\t
                   1308: .if \\nI .if !\\n(dT .if !\\n(IK .tm .IE\t\\$1\t\\$2\t\\$3\t\\n(PN\t
                   1309: .if !\\nI .if \\n(dT .if \\n(IK \!.tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\n(H1-\\\\n(PN
                   1310: .if !\\nI .if \\n(dT .if !\\n(IK .tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\n(H1-\\n(PN
                   1311: .if !\\nI .if !\\n(dT .if \\n(IK \!.tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\\\n(PN
                   1312: .if !\\nI .if !\\n(dT .if !\\n(IK .tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\n(PN
                   1313: ..
                   1314: .      \" IH - Make an Index Header
                   1315: .de IH
                   1316: .if \\n(dT .if \\n(IK \!.tm .IE\tHEADER\t\\$1\t\\$2\t\\$3\t\\$4\t\\n(H1-\\\\n(PN
                   1317: .if \\n(dT .if !\\n(IK .tm .IE\tHEADER\t\\$1\t\\$2\t\\$3\t\\$4\t\\n(H1-\\n(PN
                   1318: .if !\\n(dT .if \\n(IK \!.tm .IE\tHEADER\t\\$1\t\\$2\t\\$3\t\\$4\t\\\\n(PN
                   1319: .if !\\n(dT .if !\\n(IK .tm .IE\tHEADER\t\\$1\t\\$2\t\\$3\t\\$4\t\\n(PN
                   1320: ..
                   1321: .      \" UX - UNIX macro
                   1322: .de UX
                   1323: .ie \\n(UX \s-1UNIX\s0\\$1
                   1324: .el \{\
                   1325: \s-1UNIX\s0\\$1\(dg
                   1326: .FS
                   1327: \(dg \s-1UNIX\s0 is a trademark of Bell Laboratories.
                   1328: .FE
                   1329: .nr UX 1
                   1330: .\}
                   1331: ..
                   1332: .\"
                   1333: .\" Here is the SUN normal form macro,
                   1334: .\" which tries to align for the cross grid
                   1335: .\"
                   1336: .de Sn
                   1337: .ta 2i 3i 4i 5i 6i
                   1338: .nr PS 10
                   1339: .nr VS 12
                   1340: .nr LL 5.8i
                   1341: .nr PO +.75i
                   1342: .ps 10
                   1343: .vs 12
                   1344: .ll 5.8i
                   1345: .po +.75i
                   1346: .tl '''
                   1347: ..
                   1348: .\"
                   1349: .\" Do a small type display
                   1350: .\"
                   1351: .de Ds
                   1352: .DS
                   1353: .ps 10
                   1354: .vs 12
                   1355: ..
                   1356: .de De
                   1357: .DE
                   1358: ..
                   1359: .\"
                   1360: .\" These are my memo macros, invoked by using
                   1361: .\" .MM and then specifying the appropriate pieces.
                   1362: .\" Relies on the -ms or -msun macros.
                   1363: .\"
                   1364: .\" .MM -- initialize memo
                   1365: .\" .TO -- Send it to
                   1366: .\" .FR -- From
                   1367: .\" .DA -- String for date
                   1368: .\" .SU -- String for subject
                   1369: .\" .CC -- Carbon Copies
                   1370: .\" .DI -- Distribution List
                   1371: .\" .EC -- End copy list 
                   1372: .\" 
                   1373: .de MM
                   1374: .vs 10p
                   1375: .sp 8v
                   1376: .ll 6.0i
                   1377: .ps 26
                   1378: .br
                   1379: .in +5i
                   1380: .ft 3
                   1381: s\|\|u\|\|n
                   1382: .br
                   1383: .ps 12
                   1384: .ft 1
                   1385: microsystems
                   1386: .in -5i
                   1387: .br
                   1388: .sp
                   1389: .ps 12
                   1390: ..
                   1391: .de TO
                   1392: .mk
                   1393: .ps 9
                   1394: To:
                   1395: .ps 11
                   1396: .if t .ti +\w'Subject: 'u
                   1397: .rt
                   1398: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1399: ..
                   1400: .de DA
                   1401: .if t .in +6i
                   1402: .if t .in -\w'\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7'u
                   1403: .if t .in -\w'Date: 'u
                   1404: .if t .rt
                   1405: .if n .sp 
                   1406: Date:
                   1407: .if t .br
                   1408: .if t .rt
                   1409: .if t .ti +\w'Date: 'u
                   1410: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1411: .br
                   1412: .if t .in +w'\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7'u
                   1413: .if t .in +w'Date: 'u
                   1414: .if t .in -6i
                   1415: .sp
                   1416: ..
                   1417: .de FR
                   1418: .mk
                   1419: .ps 9
                   1420: From:
                   1421: .if t .rt
                   1422: .ps 11
                   1423: .if t .ti +\w'Subject: 'u
                   1424: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1425: .if t .rt
                   1426: .sp
                   1427: ..
                   1428: .de SU
                   1429: .mk
                   1430: .ps 9
                   1431: Subject:
                   1432: .if t .rt
                   1433: .ps 11
                   1434: .if t .ti +\w'Subject: 'u
                   1435: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1436: .if t .rt
                   1437: .sp
                   1438: ..
                   1439: .de CC
                   1440: .mk
                   1441: .ps 9
                   1442: CC:
                   1443: .ps 11
                   1444: .in +\w'Subject: 'u
                   1445: .if t .rt
                   1446: .nf
                   1447: ..
                   1448: .de DI
                   1449: .ps 9
                   1450: Distribution
                   1451: .br
                   1452: .mk
                   1453: List:
                   1454: .ps 11
                   1455: .in +\w'Subject: 'u
                   1456: .rt
                   1457: .nf
                   1458: ..
                   1459: .de EC
                   1460: .sp
                   1461: .in -\w'Subject: 'u
                   1462: .fi
                   1463: .. 
                   1464: .de pp
                   1465: .sp
                   1466: ..
                   1467: .\"
                   1468: .\" These are macros for making foils.
                   1469: .\" .Fp invokes the foil package initialization stuff,
                   1470: .\" .Fl gets you a foil, and 
                   1471: .\" .It gets an item
                   1472: .\" .Tl gets a title for the foil
                   1473: .\" .Ip gets a second paragraph in the bullet
                   1474: .\" .Tp gets a text paragraph, not printed on foils
                   1475: .\" .Te ends a text paragraph
                   1476: .\"
                   1477: .de Fp
                   1478: .EF 'Copyright 1984 Sun Micro''Educational Material'
                   1479: .OF 'Copyright 1984 Sun Micro''Educational Material'
                   1480: ..
                   1481: .de Fl
                   1482: .bp 1
                   1483: .LP
                   1484: .sp 2
                   1485: .ll 6.5i
                   1486: .nr PS 18
                   1487: .nr VS 21
                   1488: .ps 18
                   1489: .vs 21
                   1490: ..
                   1491: .de Tl
                   1492: .ps \\n(PS+10
                   1493: .vs \\n(VS+11
                   1494: .ce 10
                   1495: .ft 3
                   1496: \\$1 \\$2 \\$3 
                   1497: \\$4 \\$5 \\$6 \\$7
                   1498: .ft 1
                   1499: .ce 0
                   1500: .br
                   1501: .ps \\n(PS
                   1502: .vs \\n(VS
                   1503: ..
                   1504: .de Sl
                   1505: .ps \\n(PS+4
                   1506: .vs \\n(VS+5
                   1507: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1508: .br
                   1509: .ps \\n(PS
                   1510: .vs \\n(VS
                   1511: ..
                   1512: .de St
                   1513: .rs
                   1514: .ps \\n(PS+4
                   1515: .vs \\n(VS+5
                   1516: \|\|
                   1517: .sp -2
                   1518: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1519: .sp 2
                   1520: .br
                   1521: .ps \\n(PS
                   1522: .vs \\n(VS
                   1523: ..
                   1524: .de It
                   1525: .sp 1
                   1526: .IP \(bu
                   1527: .ps \\n(PS+6 
                   1528: .vs \\n(VS+7
                   1529: \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
                   1530: .sp 1
                   1531: .ps \\n(PS
                   1532: .vs \\n(VS
                   1533: ..
                   1534: .de Ip
                   1535: .sp 1
                   1536: ..
                   1537: .de Tp
                   1538: .ig Te
                   1539: ..
                   1540: .co
                   1541: .if \n(mo-0 .ds MO January
                   1542: .if \n(mo-1 .ds MO February
                   1543: .if \n(mo-2 .ds MO March
                   1544: .if \n(mo-3 .ds MO April
                   1545: .if \n(mo-4 .ds MO May
                   1546: .if \n(mo-5 .ds MO June
                   1547: .if \n(mo-6 .ds MO July
                   1548: .if \n(mo-7 .ds MO August
                   1549: .if \n(mo-8 .ds MO September
                   1550: .if \n(mo-9 .ds MO October
                   1551: .if \n(mo-10 .ds MO November
                   1552: .if \n(mo-11 .ds MO December
                   1553: .ds DY \*(MO \n(dy, 19\n(yr
                   1554: .nr * 0 1
                   1555: .IZ
                   1556: .em EM
                   1557: .rm IZ RA //

unix.superglobalmegacorp.com

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