V10/vol2/index/tmac.s

Compare this file to the similar file:
Show the results in this format:

.lg 0
.ds sd /usr/lib/tmac
.\"	RT -  reset everything to normal state
.de RT
.if \\n(CS \{\
.SR 1
.BG\}
.if !\\n(1T .BG
.ce 0
.if !\\n(IK .if !\\n(IF .if !\\n(IX .if !\\n(BE .if !\\n(FT .di
.ul 0
.if \\n(QP \{\
.	ll +\\n(QIu
.	in -\\n(QIu
.	nr QP -1\}
.if \\n(NX<=1 .if \\n(AJ=0 .if \\n(FT=0 .ll \\n(LLu
.if !\\n(IF \{\
.	ps \\n(PS
.	ie \\n(VS>=41 .vs \\n(VSu
.	el .vs \\n(VSp\}
.ie \\n(IP \{\
.	in \\n(I\\n(IRu
.	nr IP -1\}
.el .if !\\n(IR \{\
.	nr I1 \\n(PIu
.	nr I2 0
.	nr I3 0
.	nr I4 0
.	nr I5 0\}
.ft 1
.ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n 80n
.hy \\n(HY
.fi
..
.	\"IZ - initialization
.de IZ
.so \\*(sd/tmac.sdisp
.nr TN 0
.em EM
. \"  ACCENTS  say \*'e or \*`e to get e acute or e grave both were 4/10
.ds ' \h'\w'e'u*1/10'\z\(aa\h'-\w'e'u*1/10'
.ds ` \h'\w'e'u*2/10'\z\(ga\h'-\w'e'u*2/10'
. \"  UMLAUT  \*:u, etc.
.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'
.if n .ds : \z"
. \" TILDE and CIRCUMFLEX
.ds ^ \\\\k:\\h'-\\\\n(.fu+1u/2u*2u+\\\\n(.fu-1u*0.13m+0.06m'\\z^\\h'|\\\\n:u'
.ds ~ \\\\k:\\h'-\\\\n(.fu+1u/2u*2u+\\\\n(.fu-1u*0.13m+0.06m'\\z~\\h'|\\\\n:u'
.	\" czech v symbol
.ds v \\\\k:\\\\h'+\\\\w'e'u/4u'\\\\v'-0.6m'\\\\s6v\\\\s0\\\\v'0.6m'\\\\h'|\\\\n:u'
.		\" cedilla
.ds , \\\\k:\\\\h'\\\\w'c'u*0.4u'\\\\z,\\\\h'|\\\\n:u'
.so \\*(sd/tmac.srefs
.ch FO \\n(YYu
.if !\\n(FM .nr FM 1.i		\"changed from 1.25
.nr YY -\\n(FMu
.nr XX 0 1
.nr IP 0
.nr PI 5n
.nr QI 5n
.nr I0 \\n(PIu
.nr PS 10
.nr VS 12
.nr HY 14
.ie n \{\
.	if !\\n(PD .nr PD 1v
.	nr DV 1v\}
.el \{\
.	if !\\n(PD .nr PD 0.3v
.	nr DV .5v\}
.nr ML 3v
.ps \\n(PS
.ie \\n(VS>=41 .vs \\n(VSu
.el .vs \\n(VSp
.nr IR 0
.nr I0 0
.nr I1 \\n(PIu
.nr TB 0
.nr SJ \\n(.j
.nr LL 6i
.ll \\n(LLu
.nr LT \\n(.l
.lt \\n(LTu
.ev 1
.if !\\n(FL .nr FL \\n(LLu*11u/12u
.ll \\n(FLu
.ps 8
.vs 10p
.ev
.if \\*(CH .ds CH "\(hy \\\\n(PN \(hy
.wh 0 NP
.wh -\\n(FMu FO
.ch FO 16i
.wh -\\n(FMu FX
.ch FO -\\n(FMu
.wh -.618i-6u BT
........if t .wh -\\n(FMu/2u BT
.if n .wh -\\n(FMu/2u-1v BT
.nr CW 0-1
.nr GW 0-1
..
.de TM
.if !\\n(IM .if !\\n(MN .pn 0
.so \\*(sd/tmac.scover
.if !\\n(IM .if !\\n(MN .rm IM MF MR
.if n .if !\\n(.T .pi /usr/bin/col
.nr ST 1
.ds QF TECHNICAL MEMORANDUM
.br
.ds MN \\$1
.if !"\\$1"" .nr MM 1
.if !"\\$2"" .nr MC 1
.if !"\\$3"" .nr MG 1
.nr TN 1
.if \\n(.$-1 .ds CA \\$2
.if \\n(.$-2 .ds CC \\$3
.rm RP S0 S2 AX
..
.		\" IM - internal memorandum
.de IM
.nr IM 1
.TM "\\$1" "\\$2" "\\$3"
.rm QF
.RA
.rm RA RP MF MR
..
.		\" MF - memorandum for file.
.de MF
.nr MN 1
.TM "\\$1" "\\$2" "\\$3"
.rm MR
.rm IM
.RA
.rm RA RP TM
..
.		\" MR - memo for record
.de MR
.nr MN 2
.TM "\\$1" "\\$2" "\\$3"
.ds QF MEMORANDUM FOR RECORD
.rm MF
.RA
.rm RA RP IM TM
..
.	\" LT - letter
.de LT
.if !\\n(PO .ie n .nr PO 1.1i
.el .nr PO 1.1i
.po \\n(POu
.LP
.rs
.if !"\\$1"" \{\
.	vs -2p
.	ta 4.9i 5.45i
.	sp .2i
.	nf
	\s36\(L1\s0	\s18\f(HB\v'-1'A\h'-.1'T\h'-.1'&\h'-.1'T\v'1'\s0
.	br
\s7\l'7i'\s0
.	br
\s8\f(HBAT&T Bell Laboratories\fP		\fH600 Mountain Avenue
.	br
		Murray Hill, NJ 07974-2070
.	br
		201-582-3000\f1\s0
.	sp -.75i
.	vs
.	fi \}
.if n \{\
.	sp 1i
.	in 4.55i\}
.if t \{\
.	sp 1.10i
.	in 4.85i\}
.ll 8i
\\*(DY
.ll
.in 0
.br
.if t .sp 3
.if n \{\
.	sp
.	na\}
.nf
.rm CF
.de SG	\" nested defn
.sp 2
.ta 3.5i
	Sincerely,
.sp 3
	\\\\$1
.ds CH
\\..
..
.de OK
.br
.di
.di OD
..
.de RP		\" released paper
.nr ST 2
.pn 0
.rm SG CS TM QF IM MR MF EG
.br
..
.de TR		\" Comp. Sci. Tech Rept series.
.nr ST 3
.pn 0
.ds MN \\$1
.rm SG CS TM QF IM MR M EG
.br
..
.	\"FP - font position for a family
.de FP
.ds TF \\$1
.if '\\$1'palatino'\{\
.	fp 1 PA
.	fp 2 PI
.	fp 3 PB
.	fp 4 PX\}
.if '\\$1'century'\{\
.	ie '\\*(.T'202'\{\
.		fp 1 NR Centsb
.		fp 2 NI CentI
.		fp 3 NB CentB
.		fp 4 NX CentBI\}
.	el \{\
.		fp 1 NR
.		fp 2 NI
.		fp 3 NB
.		fp 4 NX\}\}
.if '\\$1'helvetica'\{\
.	fp 1 H
.	fp 2 HI
.	fp 3 HB
.	fp 4 HX\}
.if '\\$1'bembo'\{\
.	ie '\\*(.T'202'\{\
.		fp 1 B1 Bembo
.		fp 2 B2 BemboI
.		fp 3 B3 BemboB
.		fp 4 B4 BemboBI\}
.	el \{\
.		fp 1 B1
.		fp 2 B2
.		fp 3 B3
.		fp 4 B4\}\}
.if '\\$1'optima'\{\
.	fp 1 R Optima
.	fp 2 I OptimaI
.	fp 3 B OptimaB
.	fp 4 BI OptimaBI\}
.if '\\$1'souvenir'\{\
.	fp 1 R Souvenir
.	fp 2 I SouvenirI
.	fp 3 B SouvenirB
.	fp 4 BI SouvenirBI\}
.if '\\$1'melior'\{\
.	fp 1 R Melior
.	fp 2 I MeliorI
.	fp 3 B MeliorB
.	fp 4 BI MeliorBI\}
.if '\\$1'times'\{\
.	fp 1 R
.	fp 2 I
.	fp 3 B
.	fp 4 BI\}
..
.	\"TL - title and initialization
.de TL
.br
.nr TV 1
.if \\n(IM .rm CS
.if \\n(MN .rm CS
.ME
.rm ME
.di WT
.na
.fi
.ll 5.0i
.if n .if \\n(TN .ll 29
.if t .if \\n(TN .ll 3.5i
.ft 3
.ps \\n(PS
.if !\\n(TN \{\
.	ps +2
.	vs \\n(.s+2
.	rm CS\}
.hy 0
..
.de TX
.rs
.sp .5i
.ce 1000
.if n .ul 1000
.ps 12
.ft 3
.vs 15p
.ne 4
.hy 0
.WT
.hy \\n(HY
.ce 0
.ul 0
..
.	\"	AU - author(s)
.de AU
.nr AV 1
.ad \\n(SJ
.br
.di
.br
.nf
.nr NA +1
.ds R\\n(NA \\$1
.ds E\\n(NA \\$2
.di A\\n(NA
.ll \\n(LLu
.ie t \{\
.	ie !\\n(TN .ft 2
.	el \{\
.		ft 3
.		ll 1.4i\}\}
.el \{\
.	ie !\\n(TN .ft 1
.	el \{\
.		ft 3
.		ll 16\}\}
.ps \\n(PS
..
.de AX
.ft 1
.rs
.ce 1000
.if n .ul 0
.ps \\n(PS
.ie \\n(VS>=41 .vs \\n(VSu
.el .vs \\n(VSp
.if t \{\
.	sp
.	A1
.	sp 0.5
.	ns
.	I1
.	if \\n(NA-1 .sp
.	A2
.	if \\n(NA-1 .sp 0.5
.	ns
.	I2
.	if \\n(NA-2 .sp
.	A3
.	if \\n(NA-2 .sp 0.5
.	ns
.	I3
.	if \\n(NA-3 .sp
.	A4
.	if \\n(NA-3 .sp 0.5
.	ns
.	I4
.	if \\n(NA-4 .sp
.	A5
.	if \\n(NA-4 .sp 0.5
.	ns
.	I5
.	if \\n(NA-5 .sp
.	A6
.	if \\n(NA-5 .sp 0.5
.	ns
.	I6
.	if \\n(NA-6 .sp
.	A7
.	if \\n(NA-6 .sp 0.5
.	ns
.	I7
.	if \\n(NA-7 .sp
.	A8
.	if \\n(NA-7 .sp 0.5
.	ns
.	I8
.	if \\n(NA-8 .sp
.	A9
.	if \\n(NA-8 .sp 0.5
.	ns
.	I9\}
.if n \{\
.	sp 2
.	A1
.	sp 
.	ns
.	I1
.	if \\n(NA-1 .sp 2
.	A2
.	if \\n(NA-1 .sp
.	ns
.	I2
.	if \\n(NA-2 .sp 2
.	A3
.	if \\n(NA-2 .sp
.	ns
.	I3
.	if \\n(NA-3 .sp 2
.	A4
.	if \\n(NA-3 .sp
.	ns
.	I4
.	if \\n(NA-4 .sp 2
.	A5
.	if \\n(NA-4 .sp
.	ns
.	I5
.	if \\n(NA-5 .sp 2
.	A6
.	if \\n(NA-5 .sp
.	ns
.	I6
.	if \\n(NA-6 .sp 2
.	A7
.	if \\n(NA-6 .sp
.	ns
.	I7
.	if \\n(NA-7 .sp 2
.	A8
.	if \\n(NA-7 .sp
.	ns
.	I8
.	if \\n(NA-8 .sp 2
.	A9
.	if \\n(NA-8 .sp
.	ns
.	I9\}
..
.	\"AI - authors institution
.de AI
.br
.ft 1
.di
.di I\\n(NA
.nf
..
.	\"AB - begin an abstract
.de AB
.br
.di
.ul 0
.ce 0
.nr 1T 1
.nr IK 1
.nr KI 1
.di WB
.rs
.nr AJ 1
.ce 1
.ft 2
.if n .ul
.ll \\n(LLu
.ie \\n(.$ \{\
.	if !"\\$1"-" .if !"\\$1"no" \\$1
.	if !"\\$1"-" .if !"\\$1"no" .sp\}
.el \{\
ABSTRACT
.sp\}
.hy \\n(HY
.ul 0
.ce 0
.fi
.ft 1
.nr OJ \\n(.i
.in +\\n(.lu/12u
.ll -\\n(.lu/12u
.br
.ps \\n(PS
.ie \\n(VS>=41 .vs \\n(VSu
.el .vs \\n(VSp
.ti +\\n(PIu
..
.	\"AE - end of an abstract
.de AE
.br
.di
.ll \\n(LLu
.ps \\n(PS
.ie \\n(VS>=41 .vs \\n(VSu
.el .vs \\n(VSp
.nr 1T 0
.nr IK 0
.in \\n(OJu
.nr AJ 0
.di
.ce 0
.if \\n(ST=2 .SY
.if \\n(ST<3 .rm SY
..
.	\"S2 - release paper style
.	\"SY - cover sheet of released paper
.de SY
.ll \\n(LLu
.ns
.if \\n(TV .TX
.if \\n(AV .AX
.rs
.ce 0
.nf
.sp 3
.ls 1
.pn 2
.WB
.ls 
.sp 3v
\\*(DY
.sp |9i
.if \\n(FP .FA
.FG
.if \\n(GA=1 .nr GA 2
.fi
..
.	\"S2 - first text page, released paper format
.de S2
.ce 0
.br
.SY
.rm SY
.bp 1
.if \\n(TV .TX
.if \\n(AV .AX
.rs
.ce 0
.ft 1
.ad \\n(SJ
..
.	\"S0- mike lesk conserve paper style
.de S0
.ce 0
.br
.ll \\n(LLu
.if \\n(TV+\\n(AV .ns
.if \\n(TV .TX
.if \\n(AV .AX
.if \\n(TV+\\n(AV .rs
.ce 0
.if \\n(TV .sp 2
.ls 1
.if \\n(FP \{\
.	FJ
.	nf
.	FG
.	fi
.	FK
.	nr FP 0\}
.nf
.WB
.ls
.fi
.ad \\n(SJ
..
.	\"S3 - CSTR style
.de S3
.rs
.sp |2.25i
.ce 1000
.I1
.if \\n(NA>1 \{\
.	sp .5
.	I2\}
.if \\n(NA>2 \{\
.	sp .5
.	I3\}
.if \\n(NA>3 \{\
.	sp .5
.	I4\}
.if \\n(NA>4 \{\
.	sp .5
.	I5\}
.if \\n(NA>5 \{\
.	sp .5
.	I6\}
.if \\n(NA>6 \{\
.	sp .5
.	I7\}
.if \\n(NA>7 \{\
.	sp .5
.	I8\}
.if \\n(NA>8 \{\
.	sp .5
.	I9\}
.sp |4i
.	\"check how long title is: can space extra .25 inch if short
.di EZ
.WT
.di
.if \\n(dn<1.5v .if \\n(NA=1 .sp .25i
.ft 1
Computing Science Technical Report No. \\*(MN
.sp
.if t .ft 3
.if n .ul 100
.ps 12
.vs 15p
.hy 0
.WT
.hy \\n(HY
.ft 1
.if n .ul 0
.ps 10
.vs 12p
.sp
.ft 1
.A1
.A2
.A3
.A4
.A5
.A6
.A7
.A8
.A9
.ce 0
.sp |8.5i
.ce 0
\\*(DY
.DZ
.bp 0
.ft 1
.S2
..
.	\"SG - signature
.de SG
.br
.KS
.in +2u*\\n(.lu/3u
.sp 4
.A1
.if \\n(NA-1 .sp 4
.A2
.if \\n(NA-2 .sp 4
.A3
.if \\n(NA-3 .sp 4
.A4
.if \\n(NA-4 .sp 4
.A5
.if \\n(NA>5 .sp 4
.A6
.if \\n(NA>6 .sp 4
.A7
.if \\n(NA>7 .sp 4
.A8
.if \\n(NA>8 .sp 4
.A9
.in
.nf
.if \\n(.$<1 .G9
.sp -1
.if \\n(.$>=1 \\$1
.if \\n(.$>=2 \\$2
.if \\n(.$>=3 \\$3
.if \\n(.$>=4 \\$4
.if \\n(.$>=5 \\$5
.if \\n(.$>=6 \\$6
.if \\n(.$>=7 \\$7
.if \\n(.$>=8 \\$8
.if \\n(.$>=9 \\$9
.fi
.br
.KE
..
.	\"Tables.  TS - table start, TE - table end
.de TS
.br
.if !\\n(1T .RT
.ul 0
.ti \\n(.iu
.if t .sp 0.5
.if n .sp
.if \\$1H .TQ
.nr IX 1
..
.de TQ
.di TT
.nr IT 1
..
.de TH
.if \\n(.d>0.5v \{\
.	nr T. 0
.	T# 0\}
.di
.nr TQ \\n(.i
.nr HT 1
.in 0
.mk #a
.mk #b
.mk #c
.mk #d
.mk #e
.mk #f
.TT
.in \\n(TQu
.mk #T
..
.de TE
.nr IX 0
.if \\n(IT .if !\\n(HT \{\
.	di
.	nr EF \\n(.u
.	nf
.	TT
.	if \\n(EF .fi\}
.nr IT 0
.nr HT 0
.if n .sp 1
.if t .sp 0.5
.rm a+ b+ c+ d+ e+ f+ g+ h+ i+ j+ k+ l+ n+ m+
.rr 32 33 34 35 36 37 38 40 79 80 81 82
.rr a| b| c| d| e| f| g| h| i| j| k| l| m|
.rr a- b- c- d- e- f- g- h- i- j- k- l- m-
..
.so \*(sd/tmac.skeep
.de EQ  \"equation, breakout and display
.nr EF \\n(.u
.rm EE
.nr LE 1	\" 1 is center
.ds EL \\$1
.if "\\$1"L" \{\
.	ds EL \\$2
.	nr LE 0\}
.if "\\$1"C" .ds EL \\$2
.if "\\$1"R" \{\
.	ds EL \\$2 \" 2 is right adjust
.	nr LE 2\}
.if "\\$1"I" \{\
.	nr LE 0
.	if "\\$3"" .ds EE \\h'|10n'
.	el .ds EE \\h'\\$3'
.	ds EL \\$2\}
.if \\n(YE .nf
.di EZ
..
.de EN  \" end of a displayed equation
.br
.di
.rm EZ
.nr ZN \\n(dn
.if \\n(ZN .if !\\n(YE .LP
.if !\\n(ZN .if !"\\*(EL"" .nr ZN 1
.if \\n(ZN \{\
.	ie "\\n(.z"" \{\
.		if t .if !\\n(nl=\\n(PE .sp .5
.		if n .if !\\n(nl=\\n(PE .sp 1\}
.	el \{\
.		if t .if !\\n(.d=\\n(PE .sp .5
.		if n .if !\\n(.d=\\n(PE .sp 1\}\}
'pc
.if \\n(BD .nr LE 0 \" don't center if block display or mark/lineup
.if \\n(MK \{\
.	if \\n(LE=1 .ds EE \\h'|10n'
.	nr LE 0\}
'lt \\n(.lu
.if !\\n(EP .if \\n(ZN \{\
.	if \\n(LE=1 .tl \(ts\(ts\\*(10\(ts\\*(EL\(ts
.	if \\n(LE=2 .tl \(ts\(ts\(ts\\*(10\\*(EL\(ts
.	if !\\n(LE \{\
.		if !\\n(BD .tl \(ts\\*(EE\\*(10\(ts\(ts\\*(EL\(ts
.		if \\n(BD .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
.		if \\n(BD \!\\*(10\\t\\*(EL\}\}
.if \\n(EP .if \\n(ZN \{\
.	if \\n(LE=1 .tl \(ts\\*(EL\(ts\\*(10\(ts\(ts
.	if \\n(LE=2 .tl \(ts\\*(EL\(ts\(ts\\*(10\(ts
.	if !\\n(LE \{\
.		if !\\n(BD .tl \(ts\\*(EL\\*(EE\\*(10\(ts\(ts\(ts
.		if \\n(BD .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
.		if \\n(BD \!\\h'-\\\\n(.iu'\\*(EL\\h'|0'\\*(10\}\}
'lt \\n(LLu
'pc %
.if \\n(YE .if \\n(EF .fi
.if t .if \\n(ZN .sp .5
.if n .if \\n(ZN .sp
.ie "\\n(.z"" .nr PE \\n(nl
.el .nr PE \\n(.d
..
.de PS	\" start picture
.	\" $1 is height, $2 is width, both in inches
.if \\$1>0 .sp .35
.ie \\$1>0 .nr $1 \\$1
.el .nr $1 0
.in (\\n(.lu-\\$2)/2u
.ne \\$1
..
.de PE	\" end of picture
.in
.if \\n($1>0 .sp .65
..
.			\" .P1/.P2 macros for programs
.
.nr XP 1	\" delta point size for program
.nr XV 1p	\" delta vertical for programs
.nr XT 8	\" delta tab stop for programs
.nr DV .5v	\" space before start of program
.
.de P1
.nr P1 .4i	\" program indent in .P1
.nr OI .4i
.if \\n(.$ .nr P1 \\$1
.br
.nr v \\n(.v
.di p1
.in \\n(P1u
.nf
.ps -\\n(XP
.vs -\\n(XVu
.ft CW
.nr t \\n(XT*\\w'x'u
.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
..
.
.de P2
.br
.ps \\n(PS
.vs \\n(VSp
.vs \\nvu
.ft 1
.in
.di
.br
.sp \\n(DVu
.br
.if \\n(.$=0 .ne \\n(dnu  \" -\\n(DVu
.nf
.p1
.sp \\n(DVu
.br
.fi
..
.
.de ME
.nr SJ \\n(.j
.if \\n(LL .nr LT \\n(LL
.nr YE 1
.if !\\n(PO .nr PO \\n(.o
.if \\n(mo-0 .ds MO January
.if \\n(mo-1 .ds MO February
.if \\n(mo-2 .ds MO March
.if \\n(mo-3 .ds MO April
.if \\n(mo-4 .ds MO May
.if \\n(mo-5 .ds MO June
.if \\n(mo-6 .ds MO July
.if \\n(mo-7 .ds MO August
.if \\n(mo-8 .ds MO September
.if \\n(mo-9 .ds MO October
.if \\n(mo-10 .ds MO November
.if \\n(mo-11 .ds MO December
.if \\n(dw-0 .ds DW Sunday
.if \\n(dw-1 .ds DW Monday
.if \\n(dw-2 .ds DW Tuesday
.if \\n(dw-3 .ds DW Wednesday
.if \\n(dw-4 .ds DW Thursday
.if \\n(dw-5 .ds DW Friday
.if \\n(dw-6 .ds DW Saturday
.if "\\*(DY"" .ds DY \\*(MO \\n(dy, 19\\n(yr
.if "\\*(CF"" .if n .ds CF "\\*(DY
..
.	\"EM end up macro - process left over keep-release
.de EM
.br
.if \\n(AJ .tm Syntax error: no .AE
.if \\n(IF .ab Missing .FE somewhere
.if t .if \\n(TB=0 .wh -1p CM
.if \\n(TB \{\&\c
'	bp
.	NP
.	ch CM 160\}
..
.	\"NP new page
.de NP
.rr PE
.if \\n(FM+\\n(HM>=\\n(.p \{\
.	tm Margins bigger than page length.
.	ab
.	ex\}
.if t .CM
.if !\\n(HM .nr HM 1.i
'sp 20u+\\n(HMu/2u
.ev 1
.nr PX \\n(.s
.nr PF \\n(.f
.nr PV \\n(.v
.lt \\n(LTu
.ps \\n(PS
.vs \\n(PS+2
.ft 1
.if \\n(PO .po \\n(POu
.PT
.ps \\n(PX
.vs \\n(PVu
.ft \\n(PF
.ev
'sp |\\n(HMu
.nr XX 0 1
.nr YY 0-\\n(FMu
.ch FO 16i
.ch FX 17i
.ch FO \\n(.pu-\\n(FMu
.ch FX \\n(.pu-\\n(FMu
.if \\n(MF .FV
.nr MF 0
.mk
.os
.ev 1
.if !\\n(TD .if \\n(TC<5  .XK
.nr TC 0
.ns
.ev
.nr TQ \\n(.i
.nr TK \\n(.u
.if \\n(IT \{\
.	in 0
.	nf
.	TT
.	in \\n(TQu
.	if \\n(TK .fi\
\}
.mk #T
....if t .if \\n(.o+\\n(LL>7.75i .tm Offset + line length exceeds 7.75 inches, too wide
..
.de XK
.nr TD 1
.nf
.ls 1
.in 0
.rn KJ KL
.KL
.rm KL
.if "\\n(.z"KJ" .di
.nr TB 0
.if "\\n(.z"KJ" .nr TB 1
.br
.in
.ls
.fi
.if (\\n(nl+1v)>(\\n(.p-\\n(FM) \{\
.	if \\n(NX>1 .RC
.	if \\n(NX<1 .bp\}
.nr TD 0
..
.de KD
.nr KM 0
.if "\\n(.z"" .if \\$2>0 .if \\n(nl>\\n(HM \{\
.	if (\\n(nl+1v)<(\\n(.p-\\n(FM) .di KJ \" full page figure must have new page
.	sp 15i\}
.if "\\n(.z"" .if \\n(nl>\\n(HM .if \\$2=0 .if (\\n(nl+1v)>(\\n(.p-\\n(FM) .sp 15i
.if "\\n(.z"KJ" .nr KM 1 \" KM is 1 if in a rediversion of keeps
.if \\n(KM>0 \!.KD \\$1 \\$2
.nr KR \\n(.t
.if \\n(nl<=\\n(HM .nr KR 32767
.if \\n(KM=0 \{\
.	if \\n(KR<\\$1 \{\
.		di KJ
.		nr KM 1\}
.	if \\$2>0 .if (\\n(nl+1v)>(\\n(.p-\\n(FM) .sp 15i\}
.rs
.if \\n(KM=0 .if \\$2>0 .sp \\n(.tu-\\$1u
..
.de PT
.lt \\n(LLu
.pc %
.nr PN \\n%
.if \\n%-1 .tl '\\*(LH'\\*(CH'\\*(RH'
.lt \\n(.lu
..
.	\"FO - footer of page
.de FO
.rn FO FZ
.if \\n(IT>0 \{\
.	nr T. 1
.	if \\n(FC=0  .T# 1
.	br\}
.nr FC +1
.if \\n(NX<2 .nr WF 0
.nr dn 0
.if \\n(FC<=1 .if \\n(XX .XF
.rn FZ FO
.nr MF 0
.if \\n(dn  .nr MF 1
.if !\\n(WF \{\
.	nr YY 0-\\n(FMu
.	ch FO \\n(YYu\}
.if !\\n(dn .nr WF 0
.if \\n(FC<=1 .if \\n(XX=0 \{\
.	if \\n(NX>1 .RC
.	if \\n(NX<1 'bp\}
.nr FC -1
.if \\n(ML>0 .ne \\n(MLu
..
.	\"2C - begin double column
.de 2C
.MC \" default MC is double column
..
.de MC \" multiple columns- arg is line length
.nr L1 \\n(LL*7/15
.if \\n(CW>=0 .nr L1 \\n(CWu
.if \\n(.$ .nr L1 \\$1n
.if \\n(GW>=0 .nr GW \\n(GWu
.if \\n(.$>1 .nr GW \\$2n
.nr NQ \\n(LL/\\n(L1
.if \\n(NQ<1 .nr NQ 1
.if \\n(NQ>2 .if (\\n(LL%\\n(L1)=0 .nr NQ -1
.if !\\n(1T \{\
.	BG
.	if n .sp 4
.	if t .sp 2\}
.if \\n(NX=0 .nr NX 1
.if !\\n(NX=\\n(NQ \{\
.	RT
.	if \\n(NX>1 .bp
.	mk
.	nr NC 1
.	po \\n(POu\}
.if \\n(NQ>1 .hy \\n(HY
.nr NX \\n(NQ
.if \\n(NX>1 .nr CW \\n(L1
.ll \\n(L1u
.nr FL \\n(L1u*11u/12u
.if \\n(NX>1 .if \\n(GW<0 .nr GW (\\n(LL-(\\n(NX*\\n(L1))/(\\n(NX-1)
.nr RO \\n(L1+\\n(GW
.ns
..
.de RC
.ie \\n(NC>=\\n(NX .C2
.el .C1
..
.de C1
.rt
.po +\\n(ROu
.nr NC +1
.if \\n(NC>\\n(NX .nr NC 1
.nr XX 0 1
.nr YY 0-\\n(FMu
.if \\n(MF .FV
.ch FX \\n(.pu-\\n(FMu
.ev 1
.if \\n(TB .XK
.nr TC 0
.ev
.nr TQ \\n(.i
.if \\n(IT \{\
.	in 0
.	TT
.	in \\n(TQu\}
.mk #T
.ns
..
.de C2
.po \\n(POu
.nr NC +1
.if \\n(NC>\\n(NX .nr NC 1
'bp
..
.	\"1C - return to single column format
.de 1C
.MC \\n(LLu
.hy \\n(HY
..
.de MH
AT&T Bell Laboratories
Murray Hill, New Jersey 07974
..
.de PY
AT&T Bell Laboratories
Piscataway, New Jersey 08854
..
.de BT
.nr PX \\n(.s
.nr PF \\n(.f
.ft 1
.ps \\n(PS
'lt \\n(LTu
.po \\n(POu
.if \\n%>0 .tl \(ts\\*(LF\(ts\\*(CF\(ts\\*(RF\(ts
.ft \\n(PF
.ps \\n(PX
..
.	\"PP - paragraph
.de PP
.RT
.if \\n(1T .sp \\n(PDu
.ti +\\n(PIu
..
.	\"SH - (unnumbered) section heading
.de SH
.ti \\n(.iu
.RT
.ie \\n(1T .sp 1
.el .BG
.RT
.ne 4
.ft 3
.if n .ul 1000
..
.	\"NH - numbered heading
.de NH
.RT
.ie \\n(1T .sp 1
.el .BG
.RT
.ne 4
.ft 3
.if n .ul 1000
.nr NS \\$1
.if !\\n(.$ .nr NS 1
.if !\\n(NS .nr NS 1
.nr H\\n(NS +1
.if !\\n(NS-4 .nr H5 0
.if !\\n(NS-3 .nr H4 0
.if !\\n(NS-2 .nr H3 0
.if !\\n(NS-1 .nr H2 0
.if !\\$1 .if \\n(.$ .nr H1 1
.ds SN \\n(H1.
.ti \\n(.iu
.if \\n(NS-1 .as SN \\n(H2.
.if \\n(NS-2 .as SN \\n(H3.
.if \\n(NS-3 .as SN \\n(H4.
.if \\n(NS-4 .as SN \\n(H5.
\\*(SN
..
.	\"BG - begin, execute at first PP
.de BG
.br
.ME
.rm ME
.di
.ce 0
.nr KI 0
.hy \\n(HY
.nr 1T 1
.nr CS 0
.S\\n(ST
.rm S0 S1 S2 S3 OD OK TX AX WT CS TM IM MF MR RP I1 I2 I3 I4 I5 CB E1 E2
.de TL
.ft 3
.sp
.if n .ul 100
.ce 100
.ps +2
\\..
.de AU
.ft 2
.if n .ul 0
.ce 100
.sp
.NL
\\..
.de AI
.ft 1
.ce 100
.if n .ul 0
.if n .sp
.if t .sp .5
.NL
\\..
.RA
.rm RA
.rn FJ FS
.rn FK FE
.nf
.ev 1
.ps \\n(PS-2
.vs \\n(.s+2p
.ev
.if !\\n(KG .nr FP 0 
.if \\n(GA>1 .if \\n(KG=0 .nr GA 0 \" next UNIX must be flagged.
.nr KG 0 
.if \\n(FP \{\
.	FS
.	FG
.	FE\}
.br
.if n .if \\n(TV .sp 2
.if t .if \\n(TV .sp 1
.fi
.ll \\n(LLu
.ev 1
.if !\\n(FL .nr FL \\n(LLu*11u/12u
.ll \\n(FLu
.ev
..
.de RA \"redefine abstract macros
.de AB
.br
.if !\\n(1T .BG
.ce 1
.sp 1
.ie \\n(.$ \{\
.	if !"\\$1"-" .if !"\\$1"no" \{\
\\$1
.sp\}\}
.el \{\
ABSTRACT
.sp\}
.sp 1
.nr AJ 1
.in +\\n(.lu/12u
.ll -\\n(.lu/12u
.RT
\\..
.de AE
.nr AJ 0
.br
.in 0
.ll \\n(LLu
.ie \\n(VS>=41 .vs \\n(VSu
.el .vs \\n(VSp
\\..
..
.	\"IP - indented paragraph
.de IP
.RT
.if !\\n(IP .nr IP +1
.ie \\n(ID>0 .sp \\n(IDu
.el .sp \\n(PDu
.nr IU \\n(IR+1
.if \\n(.$>1 .nr I\\n(IU \\$2n+\\n(I\\n(IRu
.if \\n(I\\n(IU=0 .nr I\\n(IU \\n(PIu+\\n(I\\n(IRu
.in \\n(I\\n(IUu
.nr TY \\n(TZ-\\n(.i
.nr JQ \\n(I\\n(IU-\\n(I\\n(IR
.ta \\n(JQu \\n(TYuR
.if \\n(.$ \{\
.ti \\n(I\\n(IRu
\&\\$1\t\c\}
..
.	\"LP - left aligned (block) paragraph
.de LP
.ti \\n(.iu
.RT
.if \\n(1T .sp \\n(PDu
..
.de QP
.ti \\n(.iu
.RT
.if \\n(1T .sp \\n(PDu
.ne 1.1
.nr QP 1
.in +\\n(QIu
.ll -\\n(QIu
.ti \\n(.iu
..
.	\"IE - synonym for .LP
.de IE
.LP
..
.	\"RS - prepare for double indenting
.de RS
.nr IS \\n(IP
.RT
.nr IP \\n(IS
.nr IU \\n(IR
.nr IR +1
.if !\\n(I\\n(IR .nr I\\n(IR \\n(I\\n(IU+\\n(PIu
.in \\n(I\\n(IRu
.nr TY \\n(TZ-\\n(.i
.ta \\n(TYuR
..
.	\"RE - retreat to the left
.de RE
.nr IS \\n(IP
.RT
.nr IP \\n(IS
.if \\n(IR>0 .nr IR -1
.in \\n(I\\n(IRu
..
.de TC
.nr TZ \\n(.lu
.if \\n(.$ .nr TZ \\$1n
.ta \\n(TZuR
..
.de TD
.LP
.nr TZ 0
..
.	\"CM - cut mark
.de CM
.po 0
.lt 7.6i
.ft 1
.ps 10
.vs 4p
.if "\\*(.T"aps" .tl '--''--'
.po
.vs
.lt
.ps
.ft
..
.		\" fontname(CW) fontstr(\f(CW) first_arg goes_after goes_before
.de OF
.nr PQ \\n(.f
.hy 0
.if t .if "\\$3"" .ft \\$1
.if t .if !"\\$3"" \{\
\&\\$5\\$2\\$3\\f\\n(PQ\\$4
.hy \\n(HY\}
.if n \{\
.	if \\n(.=5 \&\\$5
.	ie "\\$3"" .ul 1000
.	el .ul 1
.	if \\n(.$=3 \&\\$3
.	if \\n(.$>3 \&\\$3\\c
.	if \\n(.$>3 \&\\$4
.	hy \\n(HY\}
..
.	\"B - bold font
.de B
.OF 3 \\f3 "\\$1" "\\$2" "\\$3"
..
.de BI	\" bold italic -- only on 202
.OF 4 \\f4 "\\$1" "\\$2" "\\$3"
..
.	\"R - Roman font
.de R
.nr PQ \\n(.f
.ft 1
.ie \\n(.$>0 \&\\$1\f\\n(PQ\\$2
.el .if n .ul 0
..
.	\"I - italic font
.de I
.OF 2 \\f2 "\\$1" "\\$2" "\\$3"
..
.	\"CW - constant width font
.de CW
.OF CW \\f(CW "\\$1" "\\$2" "\\$3"
..
.	\"TA - tabs set in ens or chars
.de TA
.ta \\$1n \\$2n \\$3n \\$4n \\$5n \\$6n \\$7n \\$8n \\$9n
..
.	\"SM - make smaller size
.de SM
.ie \\n(.$ \&\\$3\s-2\\$1\s0\\$2
.el .ps -2
..
.	\"LG - make larger size
.de LG
.ps +2
..
.	\"NL - return to normal size
.de NL
.ps \\n(PS
..
.	\"DA - force date; ND - no date or new date.
.de DA
.if \\n(.$ .ds DY \\$1 \\$2 \\$3 \\$4
.ds CF \\*(DY
..
.de ND
.ME
.rm ME
.ds DY \\$1 \\$2 \\$3 \\$4
.rm CF
..
.de FN
.FS
..
.	\"FS - begin footnote
.de FJ
'ce 0
.nr IA \\n(IP
.nr IB \\n(.i
.ev1
.ll \\n(FLu
.da FF
.br
.if \\n(IF \{\
.	tm Footnote within footnote-illegal.
.	ab\}
.nr IF 1
.if !\\n+(XX-1 .FA
..
.	\"FE - footnote end
.de FK
.br
.in 0
.nr IF 0
.di
.ev
.if !\\n(XX-1 .nr dn +\\n(.v
.nr YY -\\n(dn
.if !\\n(NX .nr WF 1
.if \\n(dl>\\n(CW .nr WF 1
.ie (\\n(nl+\\n(.v)<=(\\n(.p+\\n(YY) .ch FO \\n(YYu
.el \{\
.	if \\n(nl>(\\n(HM+1.5v) .ch FO \\n(nlu+\\n(.vu
.	if \\n(nl+\\n(FM+1v>\\n(.p .ch FX \\n(.pu-\\n(FMu+2v
.	if \\n(nl<=(\\n(HM+1.5v) .ch FO \\n(HMu+(4u*\\n(.vu)\}
.nr IP \\n(IA
'in \\n(IBu
..
.\"	First page footer.
.de FS
.ev1
.br
.ll \\n(FLu
.da FG
..
.de FE
.br
.di
.nr FP \\n(dn
.if !\\n(1T .nr KG 1 \"not in abstract repeat next page.
.if "\\n(.z"OD" .nr KG 0 \" if in OK, don't repeat.
.ev
..
.de FA
.if n __________________________
.if t \l'1i'
.br
..
.de FV
.FS
.nf
.ls 1
.FY
.ls
.fi
.FE
..
.de FX
.if \\n(XX \{\
.	di FY
.	ns\}
..
.de XF
.if \\n(nlu+1v>(\\n(.pu-\\n(FMu) .ch FX \\n(nlu+1.9v
.ev1
.nf
.ls 1
.FF
.rm FF
.nr XX 0 1
.br
.ls
.di
.fi
.ev
..
.de FL
.ev1
.nr FL \\$1n
.ll \\$1
.ev
..
.de HO
AT&T Bell Laboratories
Holmdel, New Jersey 07733
..
.de WH
AT&T Bell Laboratories
Whippany, New Jersey 07981
..
.de IH
AT&T Bell Laboratories
Naperville, Illinois 60540
..
.de UL \" underline argument, don't italicize
.ie t \\$1\l'|0\(ul'\\$2
.el .I "\\$1" "\\$2"
..
.de UX
.ie \\n(GA \\$2\s-1UNIX\s0\\$1
.el \{\
.ie n \{\\$2UNIX\\$1*
.FS
* UNIX is a
.ie \\$3=1 Footnote
.el registered trademark
of AT&T.
.FE\}
.el \\$2\s-1UNIX\\s0\\$1\\f1\(rg\\fP
.nr GA 1\}
..
.de US
the
.UX
operating system\\$1
..
.de QS
.br
.LP
.in +\\n(QIu
.ll -\\n(QIu
..
.de QE
.br
.ll +\\n(QIu
.in -\\n(QIu
.LP
..
.de B1 \" begin boxed stuff
.br
.di BB
.nr BC 0
.if "\\$1"C" .nr BC 1
.nr BE 1
..
.de B2 \" end boxed stuff
.br
.nr BI 1n
.if \\n(.$>0 .nr BI \\$1n
.di
.nr BE 0
.nr BW \\n(dl
.nr BH \\n(dn
.ne \\n(BHu+\\n(.Vu
.nr BQ \\n(.j
.nf
.ti 0
.if \\n(BC>0 .in +(\\n(.lu-\\n(BWu)/2u
.in +\\n(BIu
.ls 1
.BB
.ls
.in -\\n(BIu
.nr BW +2*\\n(BI
.sp -1
\l'\\n(BWu\(ul'\L'-\\n(BHu'\l'|0\(ul'\h'|0'\L'\\n(BHu'
.nr BW -2*\\n(BI
.if \\n(BC>0 .in -(\\n(.lu-\\n(BWu)/2u
.if \\n(BQ .fi
.br
..
.de AT
.nf
.sp
.ne 2
Attached:
..
.de CT
.nf
.sp
.ne 2
.ie \\n(.$ Copy to \\$1:
.el Copy to:
..
.de BX
.ie t \(br\|\\$1\|\(br\l'|0\(rn'\l'|0\(ul'
.el \(br\\kA\|\\$1\|\\kB\(br\v'-1v'\h'|\\nBu'\l'|\\nAu'\v'1v'\l'|\\nAu'
..
.IZ
.rm IZ
.de [
[
..
.de ]
]
..