|
|
1.1 root 1: .lg 0
2: .ds sd /usr/lib/tmac
3: .\" RT - reset everything to normal state
4: .de RT
5: .if \\n(CS \{\
6: .SR 1
7: .BG\}
8: .if !\\n(1T .BG
9: .ce 0
10: .if !\\n(IK .if !\\n(IF .if !\\n(IX .if !\\n(BE .if !\\n(FT .di
11: .ul 0
12: .if \\n(QP \{\
13: . ll +\\n(QIu
14: . in -\\n(QIu
15: . nr QP -1\}
16: .if \\n(NX<=1 .if \\n(AJ=0 .if \\n(FT=0 .ll \\n(LLu
17: .if !\\n(IF \{\
18: . ps \\n(PS
19: . ie \\n(VS>=41 .vs \\n(VSu
20: . el .vs \\n(VSp\}
21: .ie \\n(IP \{\
22: . in \\n(I\\n(IRu
23: . nr IP -1\}
24: .el .if !\\n(IR \{\
25: . nr I1 \\n(PIu
26: . nr I2 0
27: . nr I3 0
28: . nr I4 0
29: . nr I5 0\}
30: .ft 1
31: .ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n 80n
32: .hy \\n(HY
33: .fi
34: ..
35: . \"IZ - initialization
36: .de IZ
37: .so \\*(sd/tmac.sdisp
38: .nr TN 0
39: .em EM
40: . \" ACCENTS say \*'e or \*`e to get e acute or e grave both were 4/10
41: .ds ' \h'\w'e'u*1/10'\z\(aa\h'-\w'e'u*1/10'
42: .ds ` \h'\w'e'u*2/10'\z\(ga\h'-\w'e'u*2/10'
43: . \" UMLAUT \*:u, etc.
44: .if t .ds : \\v'-0.6m'\\h'(1u-(\\\\n(.fu%2u))*0.13m+0.00m'\\z.\\h'0.2m'\\z.\\h'-((1u-(\\\\n(.fu%2u))*0.13m+0.20m)'\\v'0.6m'
45: .if n .ds : \z"
46: . \" TILDE and CIRCUMFLEX
47: .ds ^ \\\\k:\\h'-\\\\n(.fu+1u/2u*2u+\\\\n(.fu-1u*0.13m+0.06m'\\z^\\h'|\\\\n:u'
48: .ds ~ \\\\k:\\h'-\\\\n(.fu+1u/2u*2u+\\\\n(.fu-1u*0.13m+0.06m'\\z~\\h'|\\\\n:u'
49: . \" czech v symbol
50: .ds v \\\\k:\\\\h'+\\\\w'e'u/4u'\\\\v'-0.6m'\\\\s6v\\\\s0\\\\v'0.6m'\\\\h'|\\\\n:u'
51: . \" cedilla
52: .ds , \\\\k:\\\\h'\\\\w'c'u*0.4u'\\\\z,\\\\h'|\\\\n:u'
53: .so \\*(sd/tmac.srefs
54: .ch FO \\n(YYu
55: .if !\\n(FM .nr FM 1.i \"changed from 1.25
56: .nr YY -\\n(FMu
57: .nr XX 0 1
58: .nr IP 0
59: .nr PI 5n
60: .nr QI 5n
61: .nr I0 \\n(PIu
62: .nr PS 10
63: .nr VS 12
64: .nr HY 14
65: .ie n \{\
66: . if !\\n(PD .nr PD 1v
67: . nr DV 1v\}
68: .el \{\
69: . if !\\n(PD .nr PD 0.3v
70: . nr DV .5v\}
71: .nr ML 3v
72: .ps \\n(PS
73: .ie \\n(VS>=41 .vs \\n(VSu
74: .el .vs \\n(VSp
75: .nr IR 0
76: .nr I0 0
77: .nr I1 \\n(PIu
78: .nr TB 0
79: .nr SJ \\n(.j
80: .nr LL 6i
81: .ll \\n(LLu
82: .nr LT \\n(.l
83: .lt \\n(LTu
84: .ev 1
85: .if !\\n(FL .nr FL \\n(LLu*11u/12u
86: .ll \\n(FLu
87: .ps 8
88: .vs 10p
89: .ev
90: .if \\*(CH .ds CH "\(hy \\\\n(PN \(hy
91: .wh 0 NP
92: .wh -\\n(FMu FO
93: .ch FO 16i
94: .wh -\\n(FMu FX
95: .ch FO -\\n(FMu
96: .wh -.618i-6u BT
97: ........if t .wh -\\n(FMu/2u BT
98: .if n .wh -\\n(FMu/2u-1v BT
99: .nr CW 0-1
100: .nr GW 0-1
101: ..
102: .de TM
103: .if !\\n(IM .if !\\n(MN .pn 0
104: .so \\*(sd/tmac.scover
105: .if !\\n(IM .if !\\n(MN .rm IM MF MR
106: .if n .if !\\n(.T .pi /usr/bin/col
107: .nr ST 1
108: .ds QF TECHNICAL MEMORANDUM
109: .br
110: .ds MN \\$1
111: .if !"\\$1"" .nr MM 1
112: .if !"\\$2"" .nr MC 1
113: .if !"\\$3"" .nr MG 1
114: .nr TN 1
115: .if \\n(.$-1 .ds CA \\$2
116: .if \\n(.$-2 .ds CC \\$3
117: .rm RP S0 S2 AX
118: ..
119: . \" IM - internal memorandum
120: .de IM
121: .nr IM 1
122: .TM "\\$1" "\\$2" "\\$3"
123: .rm QF
124: .RA
125: .rm RA RP MF MR
126: ..
127: . \" MF - memorandum for file.
128: .de MF
129: .nr MN 1
130: .TM "\\$1" "\\$2" "\\$3"
131: .rm MR
132: .rm IM
133: .RA
134: .rm RA RP TM
135: ..
136: . \" MR - memo for record
137: .de MR
138: .nr MN 2
139: .TM "\\$1" "\\$2" "\\$3"
140: .ds QF MEMORANDUM FOR RECORD
141: .rm MF
142: .RA
143: .rm RA RP IM TM
144: ..
145: . \" LT - letter
146: .de LT
147: .if !\\n(PO .ie n .nr PO 1.1i
148: .el .nr PO 1.1i
149: .po \\n(POu
150: .LP
151: .rs
152: .if !"\\$1"" \{\
153: . vs -2p
154: . ta 4.9i 5.45i
155: . sp .2i
156: . nf
157: \s36\(L1\s0 \s18\f(HB\v'-1'A\h'-.1'T\h'-.1'&\h'-.1'T\v'1'\s0
158: . br
159: \s7\l'7i'\s0
160: . br
161: \s8\f(HBAT&T Bell Laboratories\fP \fH600 Mountain Avenue
162: . br
163: Murray Hill, NJ 07974-2070
164: . br
165: 201-582-3000\f1\s0
166: . sp -.75i
167: . vs
168: . fi \}
169: .if n \{\
170: . sp 1i
171: . in 4.55i\}
172: .if t \{\
173: . sp 1.10i
174: . in 4.85i\}
175: .ll 8i
176: \\*(DY
177: .ll
178: .in 0
179: .br
180: .if t .sp 3
181: .if n \{\
182: . sp
183: . na\}
184: .nf
185: .rm CF
186: .de SG \" nested defn
187: .sp 2
188: .ta 3.5i
189: Sincerely,
190: .sp 3
191: \\\\$1
192: .ds CH
193: \\..
194: ..
195: .de OK
196: .br
197: .di
198: .di OD
199: ..
200: .de RP \" released paper
201: .nr ST 2
202: .pn 0
203: .rm SG CS TM QF IM MR MF EG
204: .br
205: ..
206: .de TR \" Comp. Sci. Tech Rept series.
207: .nr ST 3
208: .pn 0
209: .ds MN \\$1
210: .rm SG CS TM QF IM MR M EG
211: .br
212: ..
213: . \"FP - font position for a family
214: .de FP
215: .ds TF \\$1
216: .if '\\$1'palatino'\{\
217: . fp 1 PA
218: . fp 2 PI
219: . fp 3 PB
220: . fp 4 PX\}
221: .if '\\$1'century'\{\
222: . ie '\\*(.T'202'\{\
223: . fp 1 NR Centsb
224: . fp 2 NI CentI
225: . fp 3 NB CentB
226: . fp 4 NX CentBI\}
227: . el \{\
228: . fp 1 NR
229: . fp 2 NI
230: . fp 3 NB
231: . fp 4 NX\}\}
232: .if '\\$1'helvetica'\{\
233: . fp 1 H
234: . fp 2 HI
235: . fp 3 HB
236: . fp 4 HX\}
237: .if '\\$1'bembo'\{\
238: . ie '\\*(.T'202'\{\
239: . fp 1 B1 Bembo
240: . fp 2 B2 BemboI
241: . fp 3 B3 BemboB
242: . fp 4 B4 BemboBI\}
243: . el \{\
244: . fp 1 B1
245: . fp 2 B2
246: . fp 3 B3
247: . fp 4 B4\}\}
248: .if '\\$1'optima'\{\
249: . fp 1 R Optima
250: . fp 2 I OptimaI
251: . fp 3 B OptimaB
252: . fp 4 BI OptimaBI\}
253: .if '\\$1'souvenir'\{\
254: . fp 1 R Souvenir
255: . fp 2 I SouvenirI
256: . fp 3 B SouvenirB
257: . fp 4 BI SouvenirBI\}
258: .if '\\$1'melior'\{\
259: . fp 1 R Melior
260: . fp 2 I MeliorI
261: . fp 3 B MeliorB
262: . fp 4 BI MeliorBI\}
263: .if '\\$1'times'\{\
264: . fp 1 R
265: . fp 2 I
266: . fp 3 B
267: . fp 4 BI\}
268: ..
269: . \"TL - title and initialization
270: .de TL
271: .br
272: .nr TV 1
273: .if \\n(IM .rm CS
274: .if \\n(MN .rm CS
275: .ME
276: .rm ME
277: .di WT
278: .na
279: .fi
280: .ll 5.0i
281: .if n .if \\n(TN .ll 29
282: .if t .if \\n(TN .ll 3.5i
283: .ft 3
284: .ps \\n(PS
285: .if !\\n(TN \{\
286: . ps +2
287: . vs \\n(.s+2
288: . rm CS\}
289: .hy 0
290: ..
291: .de TX
292: .rs
293: .sp .5i
294: .ce 1000
295: .if n .ul 1000
296: .ps 12
297: .ft 3
298: .vs 15p
299: .ne 4
300: .hy 0
301: .WT
302: .hy \\n(HY
303: .ce 0
304: .ul 0
305: ..
306: . \" AU - author(s)
307: .de AU
308: .nr AV 1
309: .ad \\n(SJ
310: .br
311: .di
312: .br
313: .nf
314: .nr NA +1
315: .ds R\\n(NA \\$1
316: .ds E\\n(NA \\$2
317: .di A\\n(NA
318: .ll \\n(LLu
319: .ie t \{\
320: . ie !\\n(TN .ft 2
321: . el \{\
322: . ft 3
323: . ll 1.4i\}\}
324: .el \{\
325: . ie !\\n(TN .ft 1
326: . el \{\
327: . ft 3
328: . ll 16\}\}
329: .ps \\n(PS
330: ..
331: .de AX
332: .ft 1
333: .rs
334: .ce 1000
335: .if n .ul 0
336: .ps \\n(PS
337: .ie \\n(VS>=41 .vs \\n(VSu
338: .el .vs \\n(VSp
339: .if t \{\
340: . sp
341: . A1
342: . sp 0.5
343: . ns
344: . I1
345: . if \\n(NA-1 .sp
346: . A2
347: . if \\n(NA-1 .sp 0.5
348: . ns
349: . I2
350: . if \\n(NA-2 .sp
351: . A3
352: . if \\n(NA-2 .sp 0.5
353: . ns
354: . I3
355: . if \\n(NA-3 .sp
356: . A4
357: . if \\n(NA-3 .sp 0.5
358: . ns
359: . I4
360: . if \\n(NA-4 .sp
361: . A5
362: . if \\n(NA-4 .sp 0.5
363: . ns
364: . I5
365: . if \\n(NA-5 .sp
366: . A6
367: . if \\n(NA-5 .sp 0.5
368: . ns
369: . I6
370: . if \\n(NA-6 .sp
371: . A7
372: . if \\n(NA-6 .sp 0.5
373: . ns
374: . I7
375: . if \\n(NA-7 .sp
376: . A8
377: . if \\n(NA-7 .sp 0.5
378: . ns
379: . I8
380: . if \\n(NA-8 .sp
381: . A9
382: . if \\n(NA-8 .sp 0.5
383: . ns
384: . I9\}
385: .if n \{\
386: . sp 2
387: . A1
388: . sp
389: . ns
390: . I1
391: . if \\n(NA-1 .sp 2
392: . A2
393: . if \\n(NA-1 .sp
394: . ns
395: . I2
396: . if \\n(NA-2 .sp 2
397: . A3
398: . if \\n(NA-2 .sp
399: . ns
400: . I3
401: . if \\n(NA-3 .sp 2
402: . A4
403: . if \\n(NA-3 .sp
404: . ns
405: . I4
406: . if \\n(NA-4 .sp 2
407: . A5
408: . if \\n(NA-4 .sp
409: . ns
410: . I5
411: . if \\n(NA-5 .sp 2
412: . A6
413: . if \\n(NA-5 .sp
414: . ns
415: . I6
416: . if \\n(NA-6 .sp 2
417: . A7
418: . if \\n(NA-6 .sp
419: . ns
420: . I7
421: . if \\n(NA-7 .sp 2
422: . A8
423: . if \\n(NA-7 .sp
424: . ns
425: . I8
426: . if \\n(NA-8 .sp 2
427: . A9
428: . if \\n(NA-8 .sp
429: . ns
430: . I9\}
431: ..
432: . \"AI - authors institution
433: .de AI
434: .br
435: .ft 1
436: .di
437: .di I\\n(NA
438: .nf
439: ..
440: . \"AB - begin an abstract
441: .de AB
442: .br
443: .di
444: .ul 0
445: .ce 0
446: .nr 1T 1
447: .nr IK 1
448: .nr KI 1
449: .di WB
450: .rs
451: .nr AJ 1
452: .ce 1
453: .ft 2
454: .if n .ul
455: .ll \\n(LLu
456: .ie \\n(.$ \{\
457: . if !"\\$1"-" .if !"\\$1"no" \\$1
458: . if !"\\$1"-" .if !"\\$1"no" .sp\}
459: .el \{\
460: ABSTRACT
461: .sp\}
462: .hy \\n(HY
463: .ul 0
464: .ce 0
465: .fi
466: .ft 1
467: .nr OJ \\n(.i
468: .in +\\n(.lu/12u
469: .ll -\\n(.lu/12u
470: .br
471: .ps \\n(PS
472: .ie \\n(VS>=41 .vs \\n(VSu
473: .el .vs \\n(VSp
474: .ti +\\n(PIu
475: ..
476: . \"AE - end of an abstract
477: .de AE
478: .br
479: .di
480: .ll \\n(LLu
481: .ps \\n(PS
482: .ie \\n(VS>=41 .vs \\n(VSu
483: .el .vs \\n(VSp
484: .nr 1T 0
485: .nr IK 0
486: .in \\n(OJu
487: .nr AJ 0
488: .di
489: .ce 0
490: .if \\n(ST=2 .SY
491: .if \\n(ST<3 .rm SY
492: ..
493: . \"S2 - release paper style
494: . \"SY - cover sheet of released paper
495: .de SY
496: .ll \\n(LLu
497: .ns
498: .if \\n(TV .TX
499: .if \\n(AV .AX
500: .rs
501: .ce 0
502: .nf
503: .sp 3
504: .ls 1
505: .pn 2
506: .WB
507: .ls
508: .sp 3v
509: \\*(DY
510: .sp |9i
511: .if \\n(FP .FA
512: .FG
513: .if \\n(GA=1 .nr GA 2
514: .fi
515: ..
516: . \"S2 - first text page, released paper format
517: .de S2
518: .ce 0
519: .br
520: .SY
521: .rm SY
522: .bp 1
523: .if \\n(TV .TX
524: .if \\n(AV .AX
525: .rs
526: .ce 0
527: .ft 1
528: .ad \\n(SJ
529: ..
530: . \"S0- mike lesk conserve paper style
531: .de S0
532: .ce 0
533: .br
534: .ll \\n(LLu
535: .if \\n(TV+\\n(AV .ns
536: .if \\n(TV .TX
537: .if \\n(AV .AX
538: .if \\n(TV+\\n(AV .rs
539: .ce 0
540: .if \\n(TV .sp 2
541: .ls 1
542: .if \\n(FP \{\
543: . FJ
544: . nf
545: . FG
546: . fi
547: . FK
548: . nr FP 0\}
549: .nf
550: .WB
551: .ls
552: .fi
553: .ad \\n(SJ
554: ..
555: . \"S3 - CSTR style
556: .de S3
557: .rs
558: .sp |2.25i
559: .ce 1000
560: .I1
561: .if \\n(NA>1 \{\
562: . sp .5
563: . I2\}
564: .if \\n(NA>2 \{\
565: . sp .5
566: . I3\}
567: .if \\n(NA>3 \{\
568: . sp .5
569: . I4\}
570: .if \\n(NA>4 \{\
571: . sp .5
572: . I5\}
573: .if \\n(NA>5 \{\
574: . sp .5
575: . I6\}
576: .if \\n(NA>6 \{\
577: . sp .5
578: . I7\}
579: .if \\n(NA>7 \{\
580: . sp .5
581: . I8\}
582: .if \\n(NA>8 \{\
583: . sp .5
584: . I9\}
585: .sp |4i
586: . \"check how long title is: can space extra .25 inch if short
587: .di EZ
588: .WT
589: .di
590: .if \\n(dn<1.5v .if \\n(NA=1 .sp .25i
591: .ft 1
592: Computing Science Technical Report No. \\*(MN
593: .sp
594: .if t .ft 3
595: .if n .ul 100
596: .ps 12
597: .vs 15p
598: .hy 0
599: .WT
600: .hy \\n(HY
601: .ft 1
602: .if n .ul 0
603: .ps 10
604: .vs 12p
605: .sp
606: .ft 1
607: .A1
608: .A2
609: .A3
610: .A4
611: .A5
612: .A6
613: .A7
614: .A8
615: .A9
616: .ce 0
617: .sp |8.5i
618: .ce 0
619: \\*(DY
620: .DZ
621: .bp 0
622: .ft 1
623: .S2
624: ..
625: . \"SG - signature
626: .de SG
627: .br
628: .KS
629: .in +2u*\\n(.lu/3u
630: .sp 4
631: .A1
632: .if \\n(NA-1 .sp 4
633: .A2
634: .if \\n(NA-2 .sp 4
635: .A3
636: .if \\n(NA-3 .sp 4
637: .A4
638: .if \\n(NA-4 .sp 4
639: .A5
640: .if \\n(NA>5 .sp 4
641: .A6
642: .if \\n(NA>6 .sp 4
643: .A7
644: .if \\n(NA>7 .sp 4
645: .A8
646: .if \\n(NA>8 .sp 4
647: .A9
648: .in
649: .nf
650: .if \\n(.$<1 .G9
651: .sp -1
652: .if \\n(.$>=1 \\$1
653: .if \\n(.$>=2 \\$2
654: .if \\n(.$>=3 \\$3
655: .if \\n(.$>=4 \\$4
656: .if \\n(.$>=5 \\$5
657: .if \\n(.$>=6 \\$6
658: .if \\n(.$>=7 \\$7
659: .if \\n(.$>=8 \\$8
660: .if \\n(.$>=9 \\$9
661: .fi
662: .br
663: .KE
664: ..
665: . \"Tables. TS - table start, TE - table end
666: .de TS
667: .br
668: .if !\\n(1T .RT
669: .ul 0
670: .ti \\n(.iu
671: .if t .sp 0.5
672: .if n .sp
673: .if \\$1H .TQ
674: .nr IX 1
675: ..
676: .de TQ
677: .di TT
678: .nr IT 1
679: ..
680: .de TH
681: .if \\n(.d>0.5v \{\
682: . nr T. 0
683: . T# 0\}
684: .di
685: .nr TQ \\n(.i
686: .nr HT 1
687: .in 0
688: .mk #a
689: .mk #b
690: .mk #c
691: .mk #d
692: .mk #e
693: .mk #f
694: .TT
695: .in \\n(TQu
696: .mk #T
697: ..
698: .de TE
699: .nr IX 0
700: .if \\n(IT .if !\\n(HT \{\
701: . di
702: . nr EF \\n(.u
703: . nf
704: . TT
705: . if \\n(EF .fi\}
706: .nr IT 0
707: .nr HT 0
708: .if n .sp 1
709: .if t .sp 0.5
710: .rm a+ b+ c+ d+ e+ f+ g+ h+ i+ j+ k+ l+ n+ m+
711: .rr 32 33 34 35 36 37 38 40 79 80 81 82
712: .rr a| b| c| d| e| f| g| h| i| j| k| l| m|
713: .rr a- b- c- d- e- f- g- h- i- j- k- l- m-
714: ..
715: .so \*(sd/tmac.skeep
716: .de EQ \"equation, breakout and display
717: .nr EF \\n(.u
718: .rm EE
719: .nr LE 1 \" 1 is center
720: .ds EL \\$1
721: .if "\\$1"L" \{\
722: . ds EL \\$2
723: . nr LE 0\}
724: .if "\\$1"C" .ds EL \\$2
725: .if "\\$1"R" \{\
726: . ds EL \\$2 \" 2 is right adjust
727: . nr LE 2\}
728: .if "\\$1"I" \{\
729: . nr LE 0
730: . if "\\$3"" .ds EE \\h'|10n'
731: . el .ds EE \\h'\\$3'
732: . ds EL \\$2\}
733: .if \\n(YE .nf
734: .di EZ
735: ..
736: .de EN \" end of a displayed equation
737: .br
738: .di
739: .rm EZ
740: .nr ZN \\n(dn
741: .if \\n(ZN .if !\\n(YE .LP
742: .if !\\n(ZN .if !"\\*(EL"" .nr ZN 1
743: .if \\n(ZN \{\
744: . ie "\\n(.z"" \{\
745: . if t .if !\\n(nl=\\n(PE .sp .5
746: . if n .if !\\n(nl=\\n(PE .sp 1\}
747: . el \{\
748: . if t .if !\\n(.d=\\n(PE .sp .5
749: . if n .if !\\n(.d=\\n(PE .sp 1\}\}
750: 'pc
751: .if \\n(BD .nr LE 0 \" don't center if block display or mark/lineup
752: .if \\n(MK \{\
753: . if \\n(LE=1 .ds EE \\h'|10n'
754: . nr LE 0\}
755: 'lt \\n(.lu
756: .if !\\n(EP .if \\n(ZN \{\
757: . if \\n(LE=1 .tl \(ts\(ts\\*(10\(ts\\*(EL\(ts
758: . if \\n(LE=2 .tl \(ts\(ts\(ts\\*(10\\*(EL\(ts
759: . if !\\n(LE \{\
760: . if !\\n(BD .tl \(ts\\*(EE\\*(10\(ts\(ts\\*(EL\(ts
761: . if \\n(BD .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
762: . if \\n(BD \!\\*(10\\t\\*(EL\}\}
763: .if \\n(EP .if \\n(ZN \{\
764: . if \\n(LE=1 .tl \(ts\\*(EL\(ts\\*(10\(ts\(ts
765: . if \\n(LE=2 .tl \(ts\\*(EL\(ts\(ts\\*(10\(ts
766: . if !\\n(LE \{\
767: . if !\\n(BD .tl \(ts\\*(EL\\*(EE\\*(10\(ts\(ts\(ts
768: . if \\n(BD .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
769: . if \\n(BD \!\\h'-\\\\n(.iu'\\*(EL\\h'|0'\\*(10\}\}
770: 'lt \\n(LLu
771: 'pc %
772: .if \\n(YE .if \\n(EF .fi
773: .if t .if \\n(ZN .sp .5
774: .if n .if \\n(ZN .sp
775: .ie "\\n(.z"" .nr PE \\n(nl
776: .el .nr PE \\n(.d
777: ..
778: .de PS \" start picture
779: . \" $1 is height, $2 is width, both in inches
780: .if \\$1>0 .sp .35
781: .ie \\$1>0 .nr $1 \\$1
782: .el .nr $1 0
783: .in (\\n(.lu-\\$2)/2u
784: .ne \\$1
785: ..
786: .de PE \" end of picture
787: .in
788: .if \\n($1>0 .sp .65
789: ..
790: . \" .P1/.P2 macros for programs
791: .
792: .nr XP 1 \" delta point size for program
793: .nr XV 1p \" delta vertical for programs
794: .nr XT 8 \" delta tab stop for programs
795: .nr DV .5v \" space before start of program
796: .
797: .de P1
798: .nr P1 .4i \" program indent in .P1
799: .nr OI .4i
800: .if \\n(.$ .nr P1 \\$1
801: .br
802: .nr v \\n(.v
803: .di p1
804: .in \\n(P1u
805: .nf
806: .ps -\\n(XP
807: .vs -\\n(XVu
808: .ft CW
809: .nr t \\n(XT*\\w'x'u
810: .ta 1u*\\ntu 2u*\\ntu 3u*\\ntu 4u*\\ntu 5u*\\ntu 6u*\\ntu 7u*\\ntu 8u*\\ntu 9u*\\ntu 10u*\\ntu 11u*\\ntu 12u*\\ntu 13u*\\ntu 14u*\\ntu
811: ..
812: .
813: .de P2
814: .br
815: .ps \\n(PS
816: .vs \\n(VSp
817: .vs \\nvu
818: .ft 1
819: .in
820: .di
821: .br
822: .sp \\n(DVu
823: .br
824: .if \\n(.$=0 .ne \\n(dnu \" -\\n(DVu
825: .nf
826: .p1
827: .sp \\n(DVu
828: .br
829: .fi
830: ..
831: .
832: .de ME
833: .nr SJ \\n(.j
834: .if \\n(LL .nr LT \\n(LL
835: .nr YE 1
836: .if !\\n(PO .nr PO \\n(.o
837: .if \\n(mo-0 .ds MO January
838: .if \\n(mo-1 .ds MO February
839: .if \\n(mo-2 .ds MO March
840: .if \\n(mo-3 .ds MO April
841: .if \\n(mo-4 .ds MO May
842: .if \\n(mo-5 .ds MO June
843: .if \\n(mo-6 .ds MO July
844: .if \\n(mo-7 .ds MO August
845: .if \\n(mo-8 .ds MO September
846: .if \\n(mo-9 .ds MO October
847: .if \\n(mo-10 .ds MO November
848: .if \\n(mo-11 .ds MO December
849: .if \\n(dw-0 .ds DW Sunday
850: .if \\n(dw-1 .ds DW Monday
851: .if \\n(dw-2 .ds DW Tuesday
852: .if \\n(dw-3 .ds DW Wednesday
853: .if \\n(dw-4 .ds DW Thursday
854: .if \\n(dw-5 .ds DW Friday
855: .if \\n(dw-6 .ds DW Saturday
856: .if "\\*(DY"" .ds DY \\*(MO \\n(dy, 19\\n(yr
857: .if "\\*(CF"" .if n .ds CF "\\*(DY
858: ..
859: . \"EM end up macro - process left over keep-release
860: .de EM
861: .br
862: .if \\n(AJ .tm Syntax error: no .AE
863: .if \\n(IF .ab Missing .FE somewhere
864: .if t .if \\n(TB=0 .wh -1p CM
865: .if \\n(TB \{\&\c
866: ' bp
867: . NP
868: . ch CM 160\}
869: ..
870: . \"NP new page
871: .de NP
872: .rr PE
873: .if \\n(FM+\\n(HM>=\\n(.p \{\
874: . tm Margins bigger than page length.
875: . ab
876: . ex\}
877: .if t .CM
878: .if !\\n(HM .nr HM 1.i
879: 'sp 20u+\\n(HMu/2u
880: .ev 1
881: .nr PX \\n(.s
882: .nr PF \\n(.f
883: .nr PV \\n(.v
884: .lt \\n(LTu
885: .ps \\n(PS
886: .vs \\n(PS+2
887: .ft 1
888: .if \\n(PO .po \\n(POu
889: .PT
890: .ps \\n(PX
891: .vs \\n(PVu
892: .ft \\n(PF
893: .ev
894: 'sp |\\n(HMu
895: .nr XX 0 1
896: .nr YY 0-\\n(FMu
897: .ch FO 16i
898: .ch FX 17i
899: .ch FO \\n(.pu-\\n(FMu
900: .ch FX \\n(.pu-\\n(FMu
901: .if \\n(MF .FV
902: .nr MF 0
903: .mk
904: .os
905: .ev 1
906: .if !\\n(TD .if \\n(TC<5 .XK
907: .nr TC 0
908: .ns
909: .ev
910: .nr TQ \\n(.i
911: .nr TK \\n(.u
912: .if \\n(IT \{\
913: . in 0
914: . nf
915: . TT
916: . in \\n(TQu
917: . if \\n(TK .fi\
918: \}
919: .mk #T
920: ....if t .if \\n(.o+\\n(LL>7.75i .tm Offset + line length exceeds 7.75 inches, too wide
921: ..
922: .de XK
923: .nr TD 1
924: .nf
925: .ls 1
926: .in 0
927: .rn KJ KL
928: .KL
929: .rm KL
930: .if "\\n(.z"KJ" .di
931: .nr TB 0
932: .if "\\n(.z"KJ" .nr TB 1
933: .br
934: .in
935: .ls
936: .fi
937: .if (\\n(nl+1v)>(\\n(.p-\\n(FM) \{\
938: . if \\n(NX>1 .RC
939: . if \\n(NX<1 .bp\}
940: .nr TD 0
941: ..
942: .de KD
943: .nr KM 0
944: .if "\\n(.z"" .if \\$2>0 .if \\n(nl>\\n(HM \{\
945: . if (\\n(nl+1v)<(\\n(.p-\\n(FM) .di KJ \" full page figure must have new page
946: . sp 15i\}
947: .if "\\n(.z"" .if \\n(nl>\\n(HM .if \\$2=0 .if (\\n(nl+1v)>(\\n(.p-\\n(FM) .sp 15i
948: .if "\\n(.z"KJ" .nr KM 1 \" KM is 1 if in a rediversion of keeps
949: .if \\n(KM>0 \!.KD \\$1 \\$2
950: .nr KR \\n(.t
951: .if \\n(nl<=\\n(HM .nr KR 32767
952: .if \\n(KM=0 \{\
953: . if \\n(KR<\\$1 \{\
954: . di KJ
955: . nr KM 1\}
956: . if \\$2>0 .if (\\n(nl+1v)>(\\n(.p-\\n(FM) .sp 15i\}
957: .rs
958: .if \\n(KM=0 .if \\$2>0 .sp \\n(.tu-\\$1u
959: ..
960: .de PT
961: .lt \\n(LLu
962: .pc %
963: .nr PN \\n%
964: .if \\n%-1 .tl '\\*(LH'\\*(CH'\\*(RH'
965: .lt \\n(.lu
966: ..
967: . \"FO - footer of page
968: .de FO
969: .rn FO FZ
970: .if \\n(IT>0 \{\
971: . nr T. 1
972: . if \\n(FC=0 .T# 1
973: . br\}
974: .nr FC +1
975: .if \\n(NX<2 .nr WF 0
976: .nr dn 0
977: .if \\n(FC<=1 .if \\n(XX .XF
978: .rn FZ FO
979: .nr MF 0
980: .if \\n(dn .nr MF 1
981: .if !\\n(WF \{\
982: . nr YY 0-\\n(FMu
983: . ch FO \\n(YYu\}
984: .if !\\n(dn .nr WF 0
985: .if \\n(FC<=1 .if \\n(XX=0 \{\
986: . if \\n(NX>1 .RC
987: . if \\n(NX<1 'bp\}
988: .nr FC -1
989: .if \\n(ML>0 .ne \\n(MLu
990: ..
991: . \"2C - begin double column
992: .de 2C
993: .MC \" default MC is double column
994: ..
995: .de MC \" multiple columns- arg is line length
996: .nr L1 \\n(LL*7/15
997: .if \\n(CW>=0 .nr L1 \\n(CWu
998: .if \\n(.$ .nr L1 \\$1n
999: .if \\n(GW>=0 .nr GW \\n(GWu
1000: .if \\n(.$>1 .nr GW \\$2n
1001: .nr NQ \\n(LL/\\n(L1
1002: .if \\n(NQ<1 .nr NQ 1
1003: .if \\n(NQ>2 .if (\\n(LL%\\n(L1)=0 .nr NQ -1
1004: .if !\\n(1T \{\
1005: . BG
1006: . if n .sp 4
1007: . if t .sp 2\}
1008: .if \\n(NX=0 .nr NX 1
1009: .if !\\n(NX=\\n(NQ \{\
1010: . RT
1011: . if \\n(NX>1 .bp
1012: . mk
1013: . nr NC 1
1014: . po \\n(POu\}
1015: .if \\n(NQ>1 .hy \\n(HY
1016: .nr NX \\n(NQ
1017: .if \\n(NX>1 .nr CW \\n(L1
1018: .ll \\n(L1u
1019: .nr FL \\n(L1u*11u/12u
1020: .if \\n(NX>1 .if \\n(GW<0 .nr GW (\\n(LL-(\\n(NX*\\n(L1))/(\\n(NX-1)
1021: .nr RO \\n(L1+\\n(GW
1022: .ns
1023: ..
1024: .de RC
1025: .ie \\n(NC>=\\n(NX .C2
1026: .el .C1
1027: ..
1028: .de C1
1029: .rt
1030: .po +\\n(ROu
1031: .nr NC +1
1032: .if \\n(NC>\\n(NX .nr NC 1
1033: .nr XX 0 1
1034: .nr YY 0-\\n(FMu
1035: .if \\n(MF .FV
1036: .ch FX \\n(.pu-\\n(FMu
1037: .ev 1
1038: .if \\n(TB .XK
1039: .nr TC 0
1040: .ev
1041: .nr TQ \\n(.i
1042: .if \\n(IT \{\
1043: . in 0
1044: . TT
1045: . in \\n(TQu\}
1046: .mk #T
1047: .ns
1048: ..
1049: .de C2
1050: .po \\n(POu
1051: .nr NC +1
1052: .if \\n(NC>\\n(NX .nr NC 1
1053: 'bp
1054: ..
1055: . \"1C - return to single column format
1056: .de 1C
1057: .MC \\n(LLu
1058: .hy \\n(HY
1059: ..
1060: .de MH
1061: AT&T Bell Laboratories
1062: Murray Hill, New Jersey 07974
1063: ..
1064: .de PY
1065: AT&T Bell Laboratories
1066: Piscataway, New Jersey 08854
1067: ..
1068: .de BT
1069: .nr PX \\n(.s
1070: .nr PF \\n(.f
1071: .ft 1
1072: .ps \\n(PS
1073: 'lt \\n(LTu
1074: .po \\n(POu
1075: .if \\n%>0 .tl \(ts\\*(LF\(ts\\*(CF\(ts\\*(RF\(ts
1076: .ft \\n(PF
1077: .ps \\n(PX
1078: ..
1079: . \"PP - paragraph
1080: .de PP
1081: .RT
1082: .if \\n(1T .sp \\n(PDu
1083: .ti +\\n(PIu
1084: ..
1085: . \"SH - (unnumbered) section heading
1086: .de SH
1087: .ti \\n(.iu
1088: .RT
1089: .ie \\n(1T .sp 1
1090: .el .BG
1091: .RT
1092: .ne 4
1093: .ft 3
1094: .if n .ul 1000
1095: ..
1096: . \"NH - numbered heading
1097: .de NH
1098: .RT
1099: .ie \\n(1T .sp 1
1100: .el .BG
1101: .RT
1102: .ne 4
1103: .ft 3
1104: .if n .ul 1000
1105: .nr NS \\$1
1106: .if !\\n(.$ .nr NS 1
1107: .if !\\n(NS .nr NS 1
1108: .nr H\\n(NS +1
1109: .if !\\n(NS-4 .nr H5 0
1110: .if !\\n(NS-3 .nr H4 0
1111: .if !\\n(NS-2 .nr H3 0
1112: .if !\\n(NS-1 .nr H2 0
1113: .if !\\$1 .if \\n(.$ .nr H1 1
1114: .ds SN \\n(H1.
1115: .ti \\n(.iu
1116: .if \\n(NS-1 .as SN \\n(H2.
1117: .if \\n(NS-2 .as SN \\n(H3.
1118: .if \\n(NS-3 .as SN \\n(H4.
1119: .if \\n(NS-4 .as SN \\n(H5.
1120: \\*(SN
1121: ..
1122: . \"BG - begin, execute at first PP
1123: .de BG
1124: .br
1125: .ME
1126: .rm ME
1127: .di
1128: .ce 0
1129: .nr KI 0
1130: .hy \\n(HY
1131: .nr 1T 1
1132: .nr CS 0
1133: .S\\n(ST
1134: .rm S0 S1 S2 S3 OD OK TX AX WT CS TM IM MF MR RP I1 I2 I3 I4 I5 CB E1 E2
1135: .de TL
1136: .ft 3
1137: .sp
1138: .if n .ul 100
1139: .ce 100
1140: .ps +2
1141: \\..
1142: .de AU
1143: .ft 2
1144: .if n .ul 0
1145: .ce 100
1146: .sp
1147: .NL
1148: \\..
1149: .de AI
1150: .ft 1
1151: .ce 100
1152: .if n .ul 0
1153: .if n .sp
1154: .if t .sp .5
1155: .NL
1156: \\..
1157: .RA
1158: .rm RA
1159: .rn FJ FS
1160: .rn FK FE
1161: .nf
1162: .ev 1
1163: .ps \\n(PS-2
1164: .vs \\n(.s+2p
1165: .ev
1166: .if !\\n(KG .nr FP 0
1167: .if \\n(GA>1 .if \\n(KG=0 .nr GA 0 \" next UNIX must be flagged.
1168: .nr KG 0
1169: .if \\n(FP \{\
1170: . FS
1171: . FG
1172: . FE\}
1173: .br
1174: .if n .if \\n(TV .sp 2
1175: .if t .if \\n(TV .sp 1
1176: .fi
1177: .ll \\n(LLu
1178: .ev 1
1179: .if !\\n(FL .nr FL \\n(LLu*11u/12u
1180: .ll \\n(FLu
1181: .ev
1182: ..
1183: .de RA \"redefine abstract macros
1184: .de AB
1185: .br
1186: .if !\\n(1T .BG
1187: .ce 1
1188: .sp 1
1189: .ie \\n(.$ \{\
1190: . if !"\\$1"-" .if !"\\$1"no" \{\
1191: \\$1
1192: .sp\}\}
1193: .el \{\
1194: ABSTRACT
1195: .sp\}
1196: .sp 1
1197: .nr AJ 1
1198: .in +\\n(.lu/12u
1199: .ll -\\n(.lu/12u
1200: .RT
1201: \\..
1202: .de AE
1203: .nr AJ 0
1204: .br
1205: .in 0
1206: .ll \\n(LLu
1207: .ie \\n(VS>=41 .vs \\n(VSu
1208: .el .vs \\n(VSp
1209: \\..
1210: ..
1211: . \"IP - indented paragraph
1212: .de IP
1213: .RT
1214: .if !\\n(IP .nr IP +1
1215: .ie \\n(ID>0 .sp \\n(IDu
1216: .el .sp \\n(PDu
1217: .nr IU \\n(IR+1
1218: .if \\n(.$>1 .nr I\\n(IU \\$2n+\\n(I\\n(IRu
1219: .if \\n(I\\n(IU=0 .nr I\\n(IU \\n(PIu+\\n(I\\n(IRu
1220: .in \\n(I\\n(IUu
1221: .nr TY \\n(TZ-\\n(.i
1222: .nr JQ \\n(I\\n(IU-\\n(I\\n(IR
1223: .ta \\n(JQu \\n(TYuR
1224: .if \\n(.$ \{\
1225: .ti \\n(I\\n(IRu
1226: \&\\$1\t\c\}
1227: ..
1228: . \"LP - left aligned (block) paragraph
1229: .de LP
1230: .ti \\n(.iu
1231: .RT
1232: .if \\n(1T .sp \\n(PDu
1233: ..
1234: .de QP
1235: .ti \\n(.iu
1236: .RT
1237: .if \\n(1T .sp \\n(PDu
1238: .ne 1.1
1239: .nr QP 1
1240: .in +\\n(QIu
1241: .ll -\\n(QIu
1242: .ti \\n(.iu
1243: ..
1244: . \"IE - synonym for .LP
1245: .de IE
1246: .LP
1247: ..
1248: . \"RS - prepare for double indenting
1249: .de RS
1250: .nr IS \\n(IP
1251: .RT
1252: .nr IP \\n(IS
1253: .nr IU \\n(IR
1254: .nr IR +1
1255: .if !\\n(I\\n(IR .nr I\\n(IR \\n(I\\n(IU+\\n(PIu
1256: .in \\n(I\\n(IRu
1257: .nr TY \\n(TZ-\\n(.i
1258: .ta \\n(TYuR
1259: ..
1260: . \"RE - retreat to the left
1261: .de RE
1262: .nr IS \\n(IP
1263: .RT
1264: .nr IP \\n(IS
1265: .if \\n(IR>0 .nr IR -1
1266: .in \\n(I\\n(IRu
1267: ..
1268: .de TC
1269: .nr TZ \\n(.lu
1270: .if \\n(.$ .nr TZ \\$1n
1271: .ta \\n(TZuR
1272: ..
1273: .de TD
1274: .LP
1275: .nr TZ 0
1276: ..
1277: . \"CM - cut mark
1278: .de CM
1279: .po 0
1280: .lt 7.6i
1281: .ft 1
1282: .ps 10
1283: .vs 4p
1284: .if "\\*(.T"aps" .tl '--''--'
1285: .po
1286: .vs
1287: .lt
1288: .ps
1289: .ft
1290: ..
1291: . \" fontname(CW) fontstr(\f(CW) first_arg goes_after goes_before
1292: .de OF
1293: .nr PQ \\n(.f
1294: .hy 0
1295: .if t .if "\\$3"" .ft \\$1
1296: .if t .if !"\\$3"" \{\
1297: \&\\$5\\$2\\$3\\f\\n(PQ\\$4
1298: .hy \\n(HY\}
1299: .if n \{\
1300: . if \\n(.=5 \&\\$5
1301: . ie "\\$3"" .ul 1000
1302: . el .ul 1
1303: . if \\n(.$=3 \&\\$3
1304: . if \\n(.$>3 \&\\$3\\c
1305: . if \\n(.$>3 \&\\$4
1306: . hy \\n(HY\}
1307: ..
1308: . \"B - bold font
1309: .de B
1310: .OF 3 \\f3 "\\$1" "\\$2" "\\$3"
1311: ..
1312: .de BI \" bold italic -- only on 202
1313: .OF 4 \\f4 "\\$1" "\\$2" "\\$3"
1314: ..
1315: . \"R - Roman font
1316: .de R
1317: .nr PQ \\n(.f
1318: .ft 1
1319: .ie \\n(.$>0 \&\\$1\f\\n(PQ\\$2
1320: .el .if n .ul 0
1321: ..
1322: . \"I - italic font
1323: .de I
1324: .OF 2 \\f2 "\\$1" "\\$2" "\\$3"
1325: ..
1326: . \"CW - constant width font
1327: .de CW
1328: .OF CW \\f(CW "\\$1" "\\$2" "\\$3"
1329: ..
1330: . \"TA - tabs set in ens or chars
1331: .de TA
1332: .ta \\$1n \\$2n \\$3n \\$4n \\$5n \\$6n \\$7n \\$8n \\$9n
1333: ..
1334: . \"SM - make smaller size
1335: .de SM
1336: .ie \\n(.$ \&\\$3\s-2\\$1\s0\\$2
1337: .el .ps -2
1338: ..
1339: . \"LG - make larger size
1340: .de LG
1341: .ps +2
1342: ..
1343: . \"NL - return to normal size
1344: .de NL
1345: .ps \\n(PS
1346: ..
1347: . \"DA - force date; ND - no date or new date.
1348: .de DA
1349: .if \\n(.$ .ds DY \\$1 \\$2 \\$3 \\$4
1350: .ds CF \\*(DY
1351: ..
1352: .de ND
1353: .ME
1354: .rm ME
1355: .ds DY \\$1 \\$2 \\$3 \\$4
1356: .rm CF
1357: ..
1358: .de FN
1359: .FS
1360: ..
1361: . \"FS - begin footnote
1362: .de FJ
1363: 'ce 0
1364: .nr IA \\n(IP
1365: .nr IB \\n(.i
1366: .ev1
1367: .ll \\n(FLu
1368: .da FF
1369: .br
1370: .if \\n(IF \{\
1371: . tm Footnote within footnote-illegal.
1372: . ab\}
1373: .nr IF 1
1374: .if !\\n+(XX-1 .FA
1375: ..
1376: . \"FE - footnote end
1377: .de FK
1378: .br
1379: .in 0
1380: .nr IF 0
1381: .di
1382: .ev
1383: .if !\\n(XX-1 .nr dn +\\n(.v
1384: .nr YY -\\n(dn
1385: .if !\\n(NX .nr WF 1
1386: .if \\n(dl>\\n(CW .nr WF 1
1387: .ie (\\n(nl+\\n(.v)<=(\\n(.p+\\n(YY) .ch FO \\n(YYu
1388: .el \{\
1389: . if \\n(nl>(\\n(HM+1.5v) .ch FO \\n(nlu+\\n(.vu
1390: . if \\n(nl+\\n(FM+1v>\\n(.p .ch FX \\n(.pu-\\n(FMu+2v
1391: . if \\n(nl<=(\\n(HM+1.5v) .ch FO \\n(HMu+(4u*\\n(.vu)\}
1392: .nr IP \\n(IA
1393: 'in \\n(IBu
1394: ..
1395: .\" First page footer.
1396: .de FS
1397: .ev1
1398: .br
1399: .ll \\n(FLu
1400: .da FG
1401: ..
1402: .de FE
1403: .br
1404: .di
1405: .nr FP \\n(dn
1406: .if !\\n(1T .nr KG 1 \"not in abstract repeat next page.
1407: .if "\\n(.z"OD" .nr KG 0 \" if in OK, don't repeat.
1408: .ev
1409: ..
1410: .de FA
1411: .if n __________________________
1412: .if t \l'1i'
1413: .br
1414: ..
1415: .de FV
1416: .FS
1417: .nf
1418: .ls 1
1419: .FY
1420: .ls
1421: .fi
1422: .FE
1423: ..
1424: .de FX
1425: .if \\n(XX \{\
1426: . di FY
1427: . ns\}
1428: ..
1429: .de XF
1430: .if \\n(nlu+1v>(\\n(.pu-\\n(FMu) .ch FX \\n(nlu+1.9v
1431: .ev1
1432: .nf
1433: .ls 1
1434: .FF
1435: .rm FF
1436: .nr XX 0 1
1437: .br
1438: .ls
1439: .di
1440: .fi
1441: .ev
1442: ..
1443: .de FL
1444: .ev1
1445: .nr FL \\$1n
1446: .ll \\$1
1447: .ev
1448: ..
1449: .de HO
1450: AT&T Bell Laboratories
1451: Holmdel, New Jersey 07733
1452: ..
1453: .de WH
1454: AT&T Bell Laboratories
1455: Whippany, New Jersey 07981
1456: ..
1457: .de IH
1458: AT&T Bell Laboratories
1459: Naperville, Illinois 60540
1460: ..
1461: .de UL \" underline argument, don't italicize
1462: .ie t \\$1\l'|0\(ul'\\$2
1463: .el .I "\\$1" "\\$2"
1464: ..
1465: .de UX
1466: .ie \\n(GA \\$2\s-1UNIX\s0\\$1
1467: .el \{\
1468: .ie n \{\\$2UNIX\\$1*
1469: .FS
1470: * UNIX is a
1471: .ie \\$3=1 Footnote
1472: .el registered trademark
1473: of AT&T.
1474: .FE\}
1475: .el \\$2\s-1UNIX\\s0\\$1\\f1\(rg\\fP
1476: .nr GA 1\}
1477: ..
1478: .de US
1479: the
1480: .UX
1481: operating system\\$1
1482: ..
1483: .de QS
1484: .br
1485: .LP
1486: .in +\\n(QIu
1487: .ll -\\n(QIu
1488: ..
1489: .de QE
1490: .br
1491: .ll +\\n(QIu
1492: .in -\\n(QIu
1493: .LP
1494: ..
1495: .de B1 \" begin boxed stuff
1496: .br
1497: .di BB
1498: .nr BC 0
1499: .if "\\$1"C" .nr BC 1
1500: .nr BE 1
1501: ..
1502: .de B2 \" end boxed stuff
1503: .br
1504: .nr BI 1n
1505: .if \\n(.$>0 .nr BI \\$1n
1506: .di
1507: .nr BE 0
1508: .nr BW \\n(dl
1509: .nr BH \\n(dn
1510: .ne \\n(BHu+\\n(.Vu
1511: .nr BQ \\n(.j
1512: .nf
1513: .ti 0
1514: .if \\n(BC>0 .in +(\\n(.lu-\\n(BWu)/2u
1515: .in +\\n(BIu
1516: .ls 1
1517: .BB
1518: .ls
1519: .in -\\n(BIu
1520: .nr BW +2*\\n(BI
1521: .sp -1
1522: \l'\\n(BWu\(ul'\L'-\\n(BHu'\l'|0\(ul'\h'|0'\L'\\n(BHu'
1523: .nr BW -2*\\n(BI
1524: .if \\n(BC>0 .in -(\\n(.lu-\\n(BWu)/2u
1525: .if \\n(BQ .fi
1526: .br
1527: ..
1528: .de AT
1529: .nf
1530: .sp
1531: .ne 2
1532: Attached:
1533: ..
1534: .de CT
1535: .nf
1536: .sp
1537: .ne 2
1538: .ie \\n(.$ Copy to \\$1:
1539: .el Copy to:
1540: ..
1541: .de BX
1542: .ie t \(br\|\\$1\|\(br\l'|0\(rn'\l'|0\(ul'
1543: .el \(br\\kA\|\\$1\|\\kB\(br\v'-1v'\h'|\\nBu'\l'|\\nAu'\v'1v'\l'|\\nAu'
1544: ..
1545: .IZ
1546: .rm IZ
1547: .de [
1548: [
1549: ..
1550: .de ]
1551: ]
1552: ..
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.