Blob


1 .\" 10/22/92 activate next line before installing
2 .pi #9/bin/auxpm
3 .
4 . \" IZ - initialization
5 .de IZ
6 .fp 1 R \" force a font out into prefix
7 .nr PS 10 \" point size
8 .nr VS 12 \" line spacing
9 .ps \\n(PS
10 .ie \\n(VS>=41 .vs \\n(VSu
11 .el .vs \\n(VSp
12 .nr LL 6i \" line length
13 .ll \\n(LLu
14 .nr LT \\n(.l \" title length
15 .lt \\n(LTu
16 .if !\\n(HM .nr HM 1i \" top of page
17 .if !\\n(FM .nr FM 1i \" footer margin
18 .if !\\n(FO .nr FO \\n(.p-\\n(FM \" bottom of page
19 . \" to set text ht to N, set FO to N + \n(HM. default is 10i
20 .pl 32767u \" safety first: big pages for pm
21 .if !\\n(PO .nr PO \\n(.ou \" page offset
22 .nr PI 5n \" .PP paragraph indent
23 .nr QI 5n \" .QS indent
24 .nr DI 5n \" .DS indent
25 .nr PD 0.3v \" paragraph vertical separation
26 .nr TS 0.5v \" space around tables
27 .nr Kf 0.5v \" space around .KF/.KE
28 .nr Ks 0.5v \" space around .KS/.KE
29 .
30 .nr P1 .4i \" indent for .P1/.P2
31 .nr dP 1 \" delta point size for programs in .P1/.P2
32 .nr dV 2p \" delta vertical for programs
33 .nr dT 8 \" delta tab stop for programs
34 .nr DV .5v \" space before start of program
35 .nr IP 0 \" ?
36 .nr IR 0 \" ?
37 .nr I1 \\n(PIu
38 .ev 1
39 .if !\\n(FL .nr FL \\n(LLu \" footnote length
40 .ll \\n(FLu
41 .ps 8 \" text size & leading in footnote
42 .vs 10p
43 .ev
44 .if \\*(CH .ds CH "\(hy \\\\n(PN \(hy
45 .ds # #\\\\n(.c \\\\n(.F
46 .
47 .
48 .ME \" initialize date strings
49 .rm ME
50 . \" accents: \*'e \*`e \*:u \*^e \*~n \*va \*,c
51 .ds ' \h'\w'e'u*4/10'\z\(aa\h'-\w'e'u*4/10'
52 .ds ` \h'\w'e'u*4/10'\z\(ga\h'-\w'e'u*4/10'
53 .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'
54 .ds ^ \\\\k:\\h'-\\\\n(.fu+1u/2u*2u+\\\\n(.fu-1u*0.13m+0.06m'\\z^\\h'|\\\\n:u'
55 .ds ~ \\\\k:\\h'-\\\\n(.fu+1u/2u*2u+\\\\n(.fu-1u*0.13m+0.06m'\\z~\\h'|\\\\n:u'
56 .ds v \\\\k:\\\\h'+\\\\w'e'u/4u'\\\\v'-0.6m'\\\\s6v\\\\s0\\\\v'0.6m'\\\\h'|\\\\n:u'
57 .ds , \\\\k:\\\\h'\\\\w'c'u*0.4u'\\\\z,\\\\h'|\\\\n:u'
58 ..
59 .
60 .
61 . \" SP - generate paddable space
62 .de SP
63 .br
64 .nr X 1v
65 .if \\n(.$ .nr X \\$1v
66 .ie '\\$2'exactly' \{\
67 \v'\\nXu'\ \h'-\w'\ 'u'\c
68 .sp \\$1\}
69 .el .X "SP \\nX \\$2"
70 ..
71 . \" NE - need space on this page
72 .de NE
73 .nr X 1v
74 .if \\n(.$ .nr X \\$1v
75 .X "NE \\nX \\$2"
76 ..
77 . \" BP, FL, FC - begin page, flush figures, flush column
78 .de BP
79 .br
80 .X CMD BP
81 ..
82 .de FL
83 .br
84 .X CMD FL
85 ..
86 .de FC
87 .br
88 .X CMD FC
89 ..
90 . \" X - generate an x X ... command in the output
91 .de X
92 ....ie '\\n(.z'' \\!x X \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
93 ....el \\!.X "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
94 ...
95 .if !'\\n(.z'' .if \\n(.$=1 \\!.X "\\$1
96 .if !'\\n(.z'' .if \\n(.$=2 \\!.X "\\$1 \\$2
97 .if !'\\n(.z'' .if \\n(.$=3 \\!.X "\\$1 \\$2 \\$3
98 .if !'\\n(.z'' .if \\n(.$>3 \\!.X "\\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
99 .if '\\n(.z'' .if \\n(.$=1 \\!x X \\$1 \\*#
100 .if '\\n(.z'' .if \\n(.$=2 \\!x X \\$1 \\$2 \\*#
101 .if '\\n(.z'' .if \\n(.$=3 \\!x X \\$1 \\$2 \\$3 \\*#
102 .if '\\n(.z'' .if \\n(.$=4 \\!x X \\$1 \\$2 \\$3 \\$4 \\*#
103 .if '\\n(.z'' .if \\n(.$>4 \\!x X \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9 \\*#
104 ..
105 . \" DA - force date
106 .de DA
107 .if \\n(.$ .ds DY \\$1 \\$2 \\$3 \\$4
108 .ds CF \\*(DY
109 ..
110 . \" ND - set new or no date
111 .de ND
112 .ds DY \\$1 \\$2 \\$3 \\$4
113 .rm CF
114 ..
115 .de ME \" ME - set month strings
116 .if \\n(mo-0 .ds MO January
117 .if \\n(mo-1 .ds MO February
118 .if \\n(mo-2 .ds MO March
119 .if \\n(mo-3 .ds MO April
120 .if \\n(mo-4 .ds MO May
121 .if \\n(mo-5 .ds MO June
122 .if \\n(mo-6 .ds MO July
123 .if \\n(mo-7 .ds MO August
124 .if \\n(mo-8 .ds MO September
125 .if \\n(mo-9 .ds MO October
126 .if \\n(mo-10 .ds MO November
127 .if \\n(mo-11 .ds MO December
128 .if \\n(dw-0 .ds DW Sunday
129 .if \\n(dw-1 .ds DW Monday
130 .if \\n(dw-2 .ds DW Tuesday
131 .if \\n(dw-3 .ds DW Wednesday
132 .if \\n(dw-4 .ds DW Thursday
133 .if \\n(dw-5 .ds DW Friday
134 .if \\n(dw-6 .ds DW Saturday
135 .if "\\*(DY"" .ds DY \\*(MO \\n(dy, 19\\n(yr
136 ..
137 . \" FP - font position for a family
138 .de FP
139 .if '\\$1'palatino'\{\
140 . fp 1 PA
141 . fp 2 PI
142 . fp 3 PB
143 . fp 4 PX\}
144 .if '\\$1'century'\{\
145 . ie '\\*(.T'202'\{\
146 . fp 1 NR Centsb
147 . fp 2 NI CentI
148 . fp 3 NB CentB
149 . fp 4 NX CentBI\}
150 . el \{\
151 . fp 1 NR
152 . fp 2 NI
153 . fp 3 NB
154 . fp 4 NX\}\}
155 .if '\\$1'helvetica'\{\
156 . fp 1 H
157 . fp 2 HI
158 . fp 3 HB
159 . fp 4 HX\}
160 .if '\\$1'bembo'\{\
161 . ie '\\*(.T'202'\{\
162 . fp 1 B1 Bembo
163 . fp 2 B2 BemboI
164 . fp 3 B3 BemboB
165 . fp 4 B4 BemboBI\}
166 . el \{\
167 . fp 1 B1
168 . fp 2 B2
169 . fp 3 B3
170 . fp 4 B4\}\}
171 .if '\\$1'optima'\{\
172 . fp 1 R Optima
173 . fp 2 I OptimaI
174 . fp 3 B OptimaB
175 . fp 4 BI OptimaBI\}
176 .if '\\$1'souvenir'\{\
177 . fp 1 R Souvenir
178 . fp 2 I SouvenirI
179 . fp 3 B SouvenirB
180 . fp 4 BI SouvenirBI\}
181 .if '\\$1'melior'\{\
182 . fp 1 R Melior
183 . fp 2 I MeliorI
184 . fp 3 B MeliorB
185 . fp 4 BI MeliorBI\}
186 .if '\\$1'times'\{\
187 . fp 1 R
188 . fp 2 I
189 . fp 3 B
190 . fp 4 BI\}
191 ..
192 . \" TL - title
193 .de TL
194 .br
195 .if !\\n(1T .BG
196 ....hy 0
197 .ft 3
198 .ps \\n(PS+2p
199 .vs \\n(VS+2p
200 .ll \\n(LLu
201 .ce 100 \" turned off in .RT
202 .sp .5i
203 ..
204 . \" AU - remember author(s)
205 .de AU
206 .ft 1
207 .ps \\n(PS
208 .ie \\n(VS>=41 .vs \\n(VSu
209 .el .vs \\n(VSp
210 .SP .5
211 ..
212 . \" AI - author's institution
213 .de AI
214 .SP .25
215 .ft 2
216 ..
217 . \" AB - begin abstract
218 .de AB
219 .nr AB 1 \" we're in abstract
220 .if !\\n(1T .BG
221 .ft 1
222 .ps \\n(PS
223 .vs \\n(VSp
224 .ce
225 .in +\\n(.lu/12u
226 .ll -\\n(.lu/12u
227 .SP 1
228 .ie \\n(.$ \\$1
229 .el ABSTRACT
230 .SP .75
231 .RT
232 ..
233 . \" AE - end of abstract
234 .de AE
235 .br
236 .nr AB 0
237 .in 0
238 .ll \\n(LLu
239 .ps \\n(PS
240 .ie \\n(VS>=41 .vs \\n(VSu
241 .el .vs \\n(VSp
242 .SP
243 ..
244 . \" 2C - 2 columns
245 .de 2C
246 .MC 2
247 ..
248 . \" 1C - 1 column
249 .de 1C
250 .MC 1
251 ..
252 . \" MC - multiple columns
253 .de MC
254 .br
255 .if \\n(1T .RT
256 .if \\n(1T .NP
257 .if !\\n(OL .nr OL \\n(LL
258 .if \\n(CW=0 .nr CW \\n(LL*7/15
259 .if \\n(GW=0 .nr GW \\n(LL-(2*\\n(CW)
260 .nr x \\n(CW+\\n(GW
261 .if "\\$1"" .MC 2
262 .if \\$1=1 \{\
263 . X MC 1 0
264 . nr LL \\n(OLu\}
265 .if \\$1=2 \{\
266 . X MC 2 \\nx
267 . nr LL \\n(CWu\}
268 .ll \\n(LLu
269 .if \\$1>2 .tm -mpm can't handle more than two columns
270 .if \\n(1T .RT
271 ..
272 . \" TS - table start, TE - table end; also TC, TQ, TH
273 .de TS
274 .br
275 .if !\\n(1T .RT
276 .SP \\n(TSu TS
277 .X "US TS
278 .if \\$1H .TQ
279 .nr IX 1
280 ..
281 .de TC
282 .nr TZ \\n(.lu
283 .if \\n(.$ .nr TZ \\$1n
284 .ta \\n(TZuR
285 ..
286 .de TD
287 .LP
288 .nr TZ 0
289 ..
290 .de TQ
291 .di TT
292 .nr IT 1
293 ..
294 .de TH
295 .if \\n(.d>0.5v \{\
296 . nr T. 0
297 . T# 0\}
298 .di
299 .nr TQ \\n(.i
300 .nr HT 1
301 .in 0
302 .mk #a
303 .mk #b
304 .mk #c
305 .mk #d
306 .mk #e
307 .mk #f
308 .TT
309 .in \\n(TQu
310 .mk #T
311 ..
312 . \" TE - table end
313 .de TE
314 .nr IX 0
315 .if \\n(IT .if !\\n(HT \{\
316 . di
317 . nr EF \\n(.u
318 . nf
319 . TT
320 . if \\n(EF .fi\}
321 .nr IT 0
322 .nr HT 0
323 .rm a+ b+ c+ d+ e+ f+ g+ h+ i+ j+ k+ l+ n+ m+
324 .rr 32 33 34 35 36 37 38 40 79 80 81 82
325 .rr a| b| c| d| e| f| g| h| i| j| k| l| m|
326 .rr a- b- c- d- e- f- g- h- i- j- k- l- m-
327 .X "END US TE
328 .SP \\n(TSu TE
329 .bp
330 ..
331 . \" EQ - equation, breakout and display
332 .de EQ
333 .nr EF \\n(.u
334 .rm EE
335 .nr LE 1 \" 1 is center
336 .ds EL \\$1
337 .if "\\$1"L" \{\
338 . ds EL \\$2
339 . nr LE 0\}
340 .if "\\$1"C" .ds EL \\$2
341 .if "\\$1"R" \{\
342 . ds EL \\$2 \" 2 is right adjust
343 . nr LE 2\}
344 .if "\\$1"I" \{\
345 . nr LE 0
346 . if "\\$3"" .ds EE \\h'|10n'
347 . el .ds EE \\h'\\$3'
348 . ds EL \\$2\}
349 .if \\n(YE .nf
350 .di EZ
351 ..
352 . \" EN - end of equation
353 .de EN
354 .br
355 .di
356 .rm EZ
357 .nr ZN \\n(dn
358 .if \\n(ZN .if !\\n(YE .LP
359 .if !\\n(ZN .if !"\\*(EL"" .nr ZN 1
360 .if \\n(ZN \{\
361 . SP .5v EQ
362 . X "US EQ"\}
363 'pc
364 .if \\n(BD .nr LE 0 \" don't center if block display or mark/lineup
365 .if \\n(MK \{\
366 . if \\n(LE=1 .ds EE \\h'|10n'
367 . nr LE 0\}
368 'lt \\n(.lu
369 .if !\\n(EP .if \\n(ZN \{\
370 . if \\n(LE=1 .tl \(ts\(ts\\*(10\(ts\\*(EL\(ts
371 . if \\n(LE=2 .tl \(ts\(ts\(ts\\*(10\\*(EL\(ts
372 . if !\\n(LE \{\
373 . if !\\n(BD .tl \(ts\\*(EE\\*(10\(ts\(ts\\*(EL\(ts
374 . if \\n(BD .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
375 . if \\n(BD \!\\*(10\\t\\*(EL\}\}
376 .if \\n(EP .if \\n(ZN \{\
377 . if \\n(LE=1 .tl \(ts\\*(EL\(ts\\*(10\(ts\(ts
378 . if \\n(LE=2 .tl \(ts\\*(EL\(ts\(ts\\*(10\(ts
379 . if !\\n(LE \{\
380 . if !\\n(BD .tl \(ts\\*(EL\\*(EE\\*(10\(ts\(ts\(ts
381 . if \\n(BD .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
382 . if \\n(BD \!\\h'-\\\\n(.iu'\\*(EL\\h'|0'\\*(10\}\}
383 'lt \\n(LLu
384 'pc %
385 .if \\n(YE .if \\n(EF .fi
386 .if \\n(ZN .X "END US EQ"
387 .if \\n(ZN .SP .5v EN
388 .if \\n(ZN .bp
389 ..
390 . \" PS - start picture
391 .de PS \" $1 is height, $2 is width, in inches
392 .br
393 .nr X 0.35v
394 .if \\$1>0 .X "SP \\nX PS"
395 .ie \\$1>0 .nr $1 \\$1
396 .el .nr $1 0
397 .X "US PS \\$1
398 .in (\\n(.lu-\\$2)/2u
399 ..
400 . \" PE - end of picture
401 .de PE
402 .in
403 .X "END US PE
404 .nr X .65v
405 .if \\n($1>0 .X "SP \\nX PE"
406 .bp
407 ..
408 .de IS \" for -mpm only
409 .KS
410 ..
411 .de IE
412 .KE
413 .bp
414 ..
415 . \" NP - new page
416 .de NP
417 .ev 2
418 .bp
419 .if \\n(KF=0 \{\
420 . nr PX \\n(.s
421 . nr PF \\n(.f
422 . nr PV \\n(.v
423 . lt \\n(LTu
424 . ps \\n(PS
425 . vs \\n(PS+2
426 . ft 1
427 . if \\n(PO .po \\n(POu \" why isn't this reset???
428 . PT \\$1
429 . bp
430 . rs
431 . BT
432 . bp
433 . nr %# +1
434 . ps \\n(PX
435 . vs \\n(PVu
436 . ft \\n(PF \}
437 .ev
438 ..
440 .ds %e .tl '\\*(LH'\\*(CH'\\*(RH'
441 .ds %o .tl '\\*(LH'\\*(CH'\\*(RH'
442 .ds %E .tl '\\*(LF'\\*(CF'\\*(RF'
443 .ds %O .tl '\\*(LF'\\*(CF'\\*(RF'
445 . \" PT - page title
446 .de PT
447 .nr PN \\n(%#
448 .X "PT \\n(%#
449 .sp \\n(HMu/2u
450 .if \\n(OL .lt \\n(OLu \" why isn't this reset???
451 .if \\n(BT>0 .if \\n(%#%2 \\*(%o
452 .if \\n(BT>0 .if !\\n(%#%2 \\*(%e
453 .if \\n(BT=0 .tl '\0''' \" put out something or spacing is curdled
454 .X "END PT \\n(%#
455 ..
456 . \" BT - bottom title
457 .de BT
458 .X "BT \\n(%#
459 .sp |\\n(FMu/2u+\\n(FOu-1v
460 .if \\n(%#%2 \\*(%O
461 .if !\\n(%#%2 \\*(%E
462 .nr BT \\n(BT+1
463 .X "END BT \\n(%#
464 ..
465 . \" KS - non-floating keep
466 .de KS
467 .br
468 .if "\\n(.z"" .NP \" defends poorly against including ht of page stuff in diversion for .B1
469 .X "US KS 0
470 .nr KS +1
471 .SP \\n(Ksu
472 ..
473 . \" KF - floating keep
474 .de KF
475 .ev 1
476 .br
477 .if \\n(KS>0 .tm KF won't work inside KS, line \\n(.c, file \\n(.F
478 .if \\n(KF>0 .tm KF won't work inside KF, line \\n(.c, file \\n(.F
479 .nr KF 1
480 .nr 10 0
481 . if !'\\$1'' .nr 10 \\$1u
482 . if '\\$1'bottom' .nr 10 \\n(FOu-1u
483 . if '\\$1'top' .nr 10 \\n(HM
484 . if \\n(10 .X "UF \\n(10 KF"
485 . if !\\n(10 .X "UF \\n(HM KF"
486 . nr X \\n(FOu-2u
487 . if \\n(10 .X "UF \\n(10 KF"
488 . if !\\n(10 .X "UF \\nX KF"
489 .nr SJ \\n(.u
490 .ps \\n(PS
491 .if \\n(VS>40 .vs \\n(VSu
492 .if \\n(VS<=39 .vs \\n(VSp
493 .ll \\n(LLu
494 .lt \\n(LTu
495 .SP \\n(Kfu
496 ..
497 . \" KE - end of KS/KF
498 .de KE
499 .bp
500 .ie \\n(KS>0 \{\
501 . SP \\n(Ksu
502 . X "END US KS
503 . nr KS -1 \}
504 .el .ie \\n(KF>0 \{\
505 . SP \\n(Kfu
506 . nr KF 0
507 . X "END UF KF"
508 . if \\n(SJ .fi
509 . ev \}
510 .el .tm .KE without preceding .KS or .KF, line \\n(.c, file \\n(.F
511 ..
513 . \" DS - display. .DS C center; L left-adjust; I indent (default)
514 .de DS \" $2 = amount of indent
515 .KS
516 .nf
517 .\\$1D \\$2 \\$1
518 .ft 1
519 .if !\\n(IF \{\
520 . ps \\n(PS
521 . if \\n(VS>40 .vs \\n(VSu
522 . if \\n(VS<=39 .vs \\n(VSp\}
523 ..
524 .de D
525 .ID \\$1
526 ..
527 .de CD
528 .XD
529 .ce 1000
530 ..
531 .de ID
532 .XD
533 .if \\n(.$=0 .in +\\n(DIu
534 .if \\n(.$=1 .if "\\$1"I" .in +\\n(DIu
535 .if \\n(.$=1 .if !"\\$1"I" .in +\\$1n
536 .if \\n(.$>1 .in +\\$2n
537 .....in +0.5i
538 .....if \\n(.$ .if !"\\$1"I" .if !"\\$1"" .in \\n(DIu
539 .....if \\n(.$ .if !"\\$1"I" .if !"\\$1"" .in +\\$1n
540 ..
541 .de LD
542 .XD
543 ..
544 .de XD
545 .nf
546 .nr OI \\n(.i
547 .SP \\n(DVu
548 ..
549 . \" BD - block display: save everything, then center it.
550 .de BD
551 .XD
552 .nr BD 1
553 .nf
554 .in \\n(OIu
555 .di DD
556 ..
557 . \" DE - display end
558 .de DE
559 .ce 0
560 .if \\n(BD>0 .XF
561 .nr BD 0
562 .in \\n(OIu
563 .SP \\n(DVu
564 .KE
565 .fi
566 ..
567 . \" XF - finish a block display to be recentered.
568 .de XF
569 .di
570 .if \\n(dl>\\n(BD .nr BD \\n(dl
571 .if \\n(BD<\\n(.l .in (\\n(.lu-\\n(BDu)/2u
572 .nr EI \\n(.l-\\n(.i
573 .ta \\n(EIuR
574 .nf
575 .DD
576 .in \\n(OIu
577 ..
580 . \" SH - (unnumbered) section heading
581 .de SH
582 .RT
583 .nr X 1v
584 .nr Y 3v
585 .if \\n(1T .NP
586 .if \\n(1T .X "NE \\nY SH" \" should these be reversed, change Y to 4v
587 .if \\n(1T .X "SP \\nX SH
588 .ft 3
589 ..
590 . \" NH - numbered heading
591 .de NH
592 .RT
593 .nr X 1v
594 .nr Y 3v
595 .if \\n(1T .NP
596 .if \\n(1T .X "NE \\nY NH" \" should these be reversed, change Y to 4v
597 .if \\n(1T .X "SP \\nX NH
598 .ft 3
599 .nr NS \\$1
600 .if !\\n(.$ .nr NS 1
601 .if !\\n(NS .nr NS 1
602 .nr H\\n(NS +1
603 .if !\\n(NS-4 .nr H5 0
604 .if !\\n(NS-3 .nr H4 0
605 .if !\\n(NS-2 .nr H3 0
606 .if !\\n(NS-1 .nr H2 0
607 .if !\\$1 .if \\n(.$ .nr H1 1
608 .ds SN \\n(H1.
609 .if \\n(NS-1 .as SN \\n(H2.
610 .if \\n(NS-2 .as SN \\n(H3.
611 .if \\n(NS-3 .as SN \\n(H4.
612 .if \\n(NS-4 .as SN \\n(H5.
613 \\*(SN
614 ..
615 . \" RT - reset at beginning of each PP, LP, etc.
616 .de RT
617 .if !\\n(AB .if !\\n(1T .BG
618 .ce 0
619 .if !\\n(AB .if !\\n(KF .if !\\n(IF .if !\\n(IX .if !\\n(BE .di
620 .if \\n(QP \{\
621 . ll +\\n(QIu
622 . in -\\n(QIu
623 . nr QP -1\}
624 .if !\\n(AB \{\
625 . ll \\n(LLu\}
626 .if !\\n(IF .if !\\n(AB \{\
627 . ps \\n(PS
628 . ie \\n(VS>=41 .vs \\n(VSu
629 . el .vs \\n(VSp\}
630 .ie \\n(IP \{\
631 . in \\n(I\\n(IRu
632 . nr IP -1\}
633 .el .if !\\n(IR \{\
634 . nr I1 \\n(PIu
635 . nr I2 0
636 . nr I3 0
637 . nr I4 0
638 . nr I5 0\}
639 .if !\\n(AB .ft 1
640 .ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n 80n
641 .fi
642 ..
643 . \" BG - begin, execute at first TL, AB, NH, SH, PP, etc.
644 .de BG \" IZ has been called, so registers have some value
645 .br
646 .if \\n(CW>0 .if \\n(LL=0 .nr LL \\n(CW+\\n(CW+\\n(GW
647 .ll \\n(LLu
648 .lt \\n(LLu
649 .po \\n(POu
650 .nr YE 1 \" ok to cause break in .EQ (earlier ones won't)
651 .ev 0
652 .hy 14
653 .ev
654 .ev 1
655 .hy 14
656 .ev
657 .ev 2
658 .hy 14
659 .ev
660 .nr 1T 1
661 .X "PARM NP \\n(HM
662 .X "PARM FO \\n(FO
663 .if !\\n(%# .nr %# 1
664 ..
665 . \" PP - paragraph
666 .de PP
667 .RT
668 .if \\n(1T .NP
669 .if \\n(1T .X "SP \\n(PD PP"
670 .if \\n(1T .X "BS 2 PP"
671 .ti +\\n(PIu
672 ..
673 . \" LP - left aligned paragraph
674 .de LP
675 .RT
676 .if \\n(1T .NP
677 .if \\n(1T .X "SP \\n(PD LP"
678 .if \\n(1T .X "BS 2 LP"
679 ..
680 . \" IP - indented paragraph
681 .de IP
682 .RT
683 .if !\\n(IP .nr IP +1
684 .if \\n(1T .NP
685 .if \\n(1T .X "SP \\n(PD PP"
686 .if \\n(1T .X "BS 2 IP"
687 .nr IU \\n(IR+1
688 .if \\n(.$>1 .nr I\\n(IU \\$2n+\\n(I\\n(IRu
689 .if \\n(I\\n(IU=0 .nr I\\n(IU \\n(PIu+\\n(I\\n(IRu
690 .in \\n(I\\n(IUu
691 .nr TY \\n(TZ-\\n(.i
692 .nr JQ \\n(I\\n(IU-\\n(I\\n(IR
693 .ta \\n(JQu \\n(TYuR
694 .if \\n(.$ \{\
695 .ti \\n(I\\n(IRu
696 \&\\$1\t\c\}
697 ..
698 . \" QP - quoted paragraph (within IP)
699 .de QP
700 .RT
701 .if \\n(1T .NP
702 .if \\n(1T .X "SP \\n(PD QP"
703 .if \\n(1T .X "BS 2 QP"
704 .nr QP 1
705 .in +\\n(QIu
706 .ll -\\n(QIu
707 .ti \\n(.iu
708 ..
709 . \" RS - prepare for double indenting
710 .de RS
711 .nr IS \\n(IP
712 .RT
713 .nr IP \\n(IS
714 .nr IU \\n(IR
715 .nr IR +1
716 .if !\\n(I\\n(IR .nr I\\n(IR \\n(I\\n(IU+\\n(PIu
717 .in \\n(I\\n(IRu
718 .nr TY \\n(TZ-\\n(.i
719 .ta \\n(TYuR
720 ..
721 . \" RE - retreat to the left
722 .de RE
723 .nr IS \\n(IP
724 .RT
725 .nr IP \\n(IS
726 .if \\n(IR>0 .nr IR -1
727 .in \\n(I\\n(IRu
728 ..
729 . \" B - bold font
730 .de B
731 .nr PQ \\n(.f
732 .ft 3
733 .if \\n(.$ \&\\$1\\f\\n(PQ\\$2
734 ..
735 . \" BI - bold italic
736 .de BI
737 .nr PQ \\n(.f
738 .ft 4
739 .if \\n(.$ \&\\$1\\f\\n(PQ\\$2
740 ..
741 . \" R - Roman font
742 .de R
743 .nr PQ \\n(.f
744 .ft 1
745 .if \\n(.$ \&\\$1\f\\n(PQ\\$2
746 ..
747 . \" I - italic font
748 .de I
749 .nr PQ \\n(.f
750 .ft 2
751 .if \\n(.$ \&\\$1\^\f\\n(PQ\\$2
752 ..
753 . \" CW - constant width font from -ms
754 .de CW
755 .nr PQ \\n(.f
756 .if \\n(.$=0 .ft CW
757 .if \\n(.$>0 \%\&\\$3\f(CW\\$1\\f\\n(PQ\\$2
758 ..
759 .de IT \" ditto to italicize argument
760 .nr Sf \\n(.f
761 \%\&\\$3\f2\\$1\f\\n(Sf\&\\$2
762 ..
763 . \" TA - tabs set in ens or chars
764 .de TA
765 .ta \\$1n \\$2n \\$3n \\$4n \\$5n \\$6n \\$7n \\$8n \\$9n
766 ..
767 . \" SM - make smaller size
768 .de SM
769 .ie \\n(.$ \&\\$3\s-2\\$1\s0\\$2
770 .el .ps -2
771 ..
772 . \" LG - make larger size
773 .de LG
774 .ie \\n(.$ \&\\$3\s+2\\$1\s0\\$2
775 .el .ps +2
776 ..
777 . \" NL - return to normal size
778 .de NL
779 .ps \\n(PS
780 ..
781 . \" FS - begin footnote
782 .de FS
783 .if \\n(IF>0 .tm .FS within .FS/.FE, line \\n(.c, file \\n(.F
784 .if \\n(KF>0 .tm .FS won't work inside .KF, line \\n(.c, file \\n(.F
785 .if \\n(KS>0 .tm .FS won't work inside .KS, line \\n(.c, file \\n(.F
786 .nr IF 1
787 .ev 1
788 .ps \\n(PS-2
789 .ie \\n(VS>=41 .vs \\n(VSu-2p
790 .el .vs \\n(VSp-2p
791 .ll \\n(LLu
792 .br
793 .nr X \\n(FOu
794 .X "BF \\nX FS
795 .SP .3v
796 ....FA \" deleted by authority of cvw, 10/17/88
797 ..
798 . \" FE - end footnote
799 .de FE
800 .if !\\n(IF .tm .FE without .FS, line \\n(.c, file \\n(.F
801 .br
802 .X "END BF FE
803 .bp
804 .ev
805 .nr IF 0
806 ..
807 . \" FA - the line for a footnote
808 .de FA
809 \l'1i'
810 .br
811 ..
812 . \" Tm - message to be passed on
813 .de Tm
814 .ev 2
815 .if \\n(.$=1 .X "TM \\$1
816 .if \\n(.$=2 .X "TM \\$1 \\$2
817 .if \\n(.$=3 .X "TM \\$1 \\$2 \\$3
818 .if \\n(.$=4 .X "TM \\$1 \\$2 \\$3 \\$4
819 .if \\n(.$=5 .X "TM \\$1 \\$2 \\$3 \\$4 \\$5
820 .if \\n(.$=6 .X "TM \\$1 \\$2 \\$3 \\$4 \\$5 \\$6
821 .if \\n(.$=7 .X "TM \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7
822 .if \\n(.$=8 .X "TM \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8
823 .if \\n(.$=9 .X "TM \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
824 .br
825 .ev
826 ..
827 .de MH
828 AT&T Bell Laboratories
829 Murray Hill, New Jersey 07974
830 ..
831 .de HO
832 AT&T Bell Laboratories
833 Holmdel, New Jersey 07733
834 ..
835 .de WH
836 AT&T Bell Laboratories
837 Whippany, New Jersey 07981
838 ..
839 .de IH
840 AT&T Bell Laboratories
841 Naperville, Illinois 60540
842 ..
843 . \" UL - underline argument, don't italicize
844 .de UL
845 \\$1\l'|0\(ul'\\$2
846 ..
847 . \" UX - print $2 UNIX $1
848 .de UX
849 .ie \\n(UX \\$2\s-1UNIX\s0\\$1
850 .el \{\
851 \\$2\s-1UNIX\\s0\\$1\(rg
852 .nr UX 1\}
853 ..
854 . \" QS - start quote
855 .de QS
856 .br
857 .LP
858 .in +\\n(QIu
859 .ll -\\n(QIu
860 ..
861 . \" QE - end quote
862 .de QE
863 .br
864 .ll +\\n(QIu
865 .in -\\n(QIu
866 .LP
867 ..
868 . \" B1 - begin boxed stuff
869 .de B1
870 .br
871 .di BB
872 .nr BC 0
873 .if "\\$1"C" .nr BC 1
874 .nr BE 1
875 ..
876 . \" B2 - end boxed stuff
877 .de B2
878 .br
879 .nr BI 1n
880 .if \\n(.$>0 .nr BI \\$1n
881 .di
882 .nr BE 0
883 .nr BW \\n(dl
884 .nr BH \\n(dn
885 .ne \\n(BHu+\\n(.Vu
886 .nr BQ \\n(.j
887 .nf
888 .ti 0
889 .if \\n(BC>0 .in +(\\n(.lu-\\n(BWu)/2u
890 .in +\\n(BIu
891 .ls 1
892 .BB
893 .ls
894 .in -\\n(BIu
895 .nr BW +2*\\n(BI
896 .sp -1
897 \l'\\n(BWu\(ul'\L'-\\n(BHu'\l'|0\(ul'\h'|0'\L'\\n(BHu'
898 .if \\n(BC>0 .in -(\\n(.lu-\\n(BWu)/2u
899 .if \\n(BQ .fi
900 .br
901 ..
902 . \" BX - boxed stuff
903 .de BX
904 \(br\|\\$1\|\(br\l'|0\(rn'\l'|0\(ul'
905 ..
907 . \" macros for programs, etc.
909 .ig
910 programs are displayed between .P1/.P2 pairs
911 default is to indent by 1/2 inch, nofill, dP smaller
912 .P1 x causes an indent of x instead.
914 .P3 can be used to specify optional page-break points
915 inside .P1/.P2
916 ..
918 . \" P1 - start of program
919 .de P1
920 .nr $1 \\n(P1
921 .if \\n(.$ .nr $1 \\$1n
922 .br
923 .X "SP \\n(DV P1"
924 .X "US P1"
925 .in \\n($1u
926 .nf
927 .nr v \\n(.v
928 .ps -\\n(dP
929 .vs -\\n(dVu
930 .ft CW
931 .nr t \\n(dT*\\w'x'u
932 .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
933 ..
934 . \" P2 - end of program
935 .de P2
936 .br
937 .ps \\n(PS
938 .vs \\nvu
939 .ft 1
940 .in
941 .X "END US P1
942 .X "SP \\n(DV P2"
943 .fi
944 ..
945 . \" P3 - provides optional unpadded break in P1/P2
946 .de P3
947 .nr x \\n(DV
948 .nr DV 0
949 .P2
950 .P1 \\n($1u
951 .nr DV \\nx
952 ..
953 .de [
955 ..
956 .de ]
958 ..
959 .IZ
960 .rm IZ
961 .so /sys/lib/tmac/tmac.srefs