.\" RT - reset everything to normal state
.if !\\n(IK .if !\\n(IF .if !\\n(IX .if !\\n(BE .di
.if \\n(NX<=1 .if \\n(AJ=0 .ll \\n(LLu
. if \\n(VS>=40 .vs \\n(VSu
. if \\n(VS<=39 .vs \\n(VSp\}
.if \\n(IP .in -\\n(I\\n(IRu
.if \\n(IP=0 .nr I0 \\n(PIu
.ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n 80n
.if !\\n(PD .if n .nr PD 1v
.if !\\n(PD .if t .nr PD 0.3v
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
.if
\a\\*(CH
\a\a .ds CH "\(hy \\\\n(PN \(hy
.if \\n(IM=0 .if \\n(MN=0 .pn 0
.so /usr/lib/tmac/tmac.scover
.if \\n(IM=0 .if \\n(MN=0 .rm IM
.if \\n(IM=0 .if \\n(MN=0 .rm MF
.if \\n(IM=0 .if \\n(MN=0 .rm MR
.if \\n(.T=0 .pi /usr/bin/col
.ds QF MEMORANDUM FOR FILE
. \" IM - internal memorandum
. \" MF - memorandum for file.
. \" MR - memo for record
.ds QF MEMORANDUM FOR RECORD
.de TR \" Comp. Sci. Tech Rept series.
. \"TL - title and initialization
.if t .if \\n(TN .ll 3.5i
.if \\n(TN .if t .ll 1.4i
.if \\n(NA-1 .if t .sp 0.5
.if \\n(NA-2 .if t .sp 0.5
.if \\n(NA-3 .if t .sp 0.5
.if \\n(NA-4 .if t .sp 0.5
.if \\n(NA-5 .if t .sp 0.5
.if \\n(NA-6 .if t .sp 0.5
.if \\n(NA-7 .if t .sp 0.5
.if \\n(NA-8 .if t .sp 0.5
. \"AI - authors institution
. \"AB - begin an abstract
.if \\n(.$>0 .if !"\\$1"-" .if !"\\$1"no" \\$1
.if \\n(.$>0 .if !"\\$1"-" .if !"\\$1"no" .sp
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \"AE - end of an abstract
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \"S2 - release paper style
. \"SY - cover sheet of released paper
. \"S2 - first text page, released paper format
. \"S0- mike lesk conserve paper style
. \"check how long title is: can space extra .25 inch if short
.if \\n(dn<1.5v .if \\n(NA=1 .sp .25i
Computing Science Technical Report No. \\*(MN
. \"Tables. TS - table start, TE - table end
.if \\n(IT>0 .if \\n(HT=0 .di
.if \\n(IT>0 .if \\n(HT=0 .nr EF \\n(.u
.if \\n(IT>0 .if \\n(HT=0 .nf
.if \\n(IT>0 .if \\n(HT=0 .TT
.if \\n(IT>0 .if \\n(HT=0 .if \\n(EF>0 .fi
.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-
. \"DS - display. If .DS C, center; L, left-adjust; I, indent.
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
.if \\n(.$ .if !"\\$1"I" .in \\n(OIu
.if \\n(.$ .if !"\\$1"I" .in +\\$1n
.de BD \" block display: save everything, then center it.
.de DF \" finish a block display to be recentered.
.if \\n(dl>\\n(BD .nr BD \\n(dl
.if \\n(BD<\\n(.l .in (\\n(.lu-\\n(BDu)/2u
. \"KS keep - for keep release features. As in IFM
.if \\n(IK=0 .if \\n(IF=0 .KQ
. \"KQ - real keep processor
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \"FQ real floating keep processor
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \"KE release - everything between keep and release is together
.if \\n(IK .if !\\n(IK-1 .if \\n(IF=0 .RQ
.if \\n(dn-\\n(.t .nr NF 1
.if \\n(NF .if !\\n(TB .sp 200
.if !\\n(NF .if \\n(TB .nr TB 0
.de EQ \"equation, breakout and display
.if "\\$1"I" .ds EE \\h'|10n'
.if "\\$1"I" .if !"\\$3"" .ds EE \\h'\\$3'
.de EN \" end of a displayed equation
.if \\n(ZN>0 .if \\n(YE=0 .LP
.if \\n(ZN=0 .if !"\\*(EL"" .nr ZN 1
.if "\\n(.z"" .if \\n(ZN>0 .if !\\n(nl=\\n(PE .if t .sp .5
.if "\\n(.z"" .if \\n(ZN>0 .if !\\n(nl=\\n(PE .if n .sp 1
.if !"\\n(.z"" .if \\n(ZN>0 .if !\\n(.d=\\n(PE .if t .sp .5
.if !"\\n(.z"" .if \\n(ZN>0 .if !\\n(.d=\\n(PE .if n .sp 1
.if \\n(BD>0 .nr LE 0 \" can't mean centering in this case.
.if \\n(MK>0 .if \\n(LE=1 .ds EE \\h'|10n'
.if \\n(MK>0 .nr LE 0 \" don't center if mark/lineup
.if \\n(EP=0 .if \\n(ZN>0 .if \\n(LE>0 .tl \(ts\(ts\\*(10\(ts\\*(EL\(ts
.if \\n(EP=0 .if \\n(ZN>0 .if \\n(LE=0 .if \\n(BD=0 .tl \(ts\\*(EE\\*(10\(ts\(ts\\*(EL\(ts
.if \\n(EP=0 .if \\n(ZN>0 .if \\n(LE=0 .if \\n(BD>0 .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
.if \\n(EP=0 .if \\n(ZN>0 .if \\n(LE=0 .if \\n(BD>0 \!\\*(10\\t\\*(EL
.if \\n(EP>0 .if \\n(ZN>0 .if \\n(LE>0 .tl \(ts\\*(EL\(ts\\*(10\(ts\(ts
.if \\n(EP>0 .if \\n(ZN>0 .if \\n(LE=0 .if \\n(BD=0 .tl \(ts\\*(EL\\*(EE\\*(10\(ts\(ts\(ts
.if \\n(EP>0 .if \\n(ZN>0 .if \\n(LE=0 .if \\n(BD>0 .if \\n(BD<\\w\(ts\\*(10\(ts .nr BD \\w\(ts\\*(10\(ts
.if \\n(EP>0 .if \\n(ZN>0 .if \\n(LE=0 .if \\n(BD>0 \!\\h'-\\\\n(.iu'\\*(EL\\h'|0'\\*(10
.if \\n(YE>0 .if \\n(EF>0 .fi
.rm EL 10 11 12 13 14 15 16 17 18 19 20 21 22 23
.rr 10 11 12 13 14 15 16 17 18 19 20 21 22 23
.if \\n(ZN>0 .if t .sp .5
.if "\\n(.z"" .nr PE \\n(nl
.if !"\\n(.z"" .nr PE \\n(.d
.if \\n(LL>0 .nr LT \\n(LL
.if \\n(PO=0 .nr PO \\n(.o
. \"EM end up macro - process left over keep-release
.if \\n(TB=0 .if t .wh -1p CM
.if \\n(FM+\\n(HM>=\\n(.p .tm Margins bigger than page length.
.if \\n(FM+\\n(HM>=\\n(.p .ab
.if \\n(FM+\\n(HM>=\\n(.p .ex
.if \\n(TD=0 .if \\n(TC<5 .XK
.if t .if \\n(.o+\\n(LL>7.75i .tm Offset + line length exceeds 7.75 inches, too wide
.if "\\n(.z"KJ" .nr KM 1 \" KM is 1 if in a rediversion of keeps
.if \\n(KM=0 .if \\n(.t<\\$1 .di KJ
.if \\n%-1 .tl '\\*(LH'\\*(CH'\\*(RH'
.if \\n(K1>0 .tm This memo has a multi-page cover sheet. You are
.if \\n(K1>0 .tm rebuked in the name of the Committee on Technical Memoranda.
.if \\n(IT>0 .if \\n(FC=0 .T# 1
.if \\n(FC<=1 .if \\n(XX .XF
.if !\\n(WF .nr YY 0-\\n(FMu
.if !\\n(WF .ch FO \\n(YYu
.if \\n(FC<=1 .if \\n(XX=0 .if \\n(NX>1 .RC
.if \\n(FC<=1 .if \\n(XX=0 .if \\n(NX<1 'bp
. \"2C - begin double column
.MC \" default MC is double column
.de MC \" multiple columns- arg is line length
.if \\n(.$>0 .nr L1 \\$1n
.if \\n(.$>1 .nr GW \\$1n
.if \\n(NQ>2 .if (\\n(LL%\\n(L1)=0 .nr NQ -1
.if \\n(NX>1 .nr GW (\\n(LL-(\\n(NX*\\n(CW))/(\\n(NX-1)
. \"1C - return to single column format
Murray Hill, New Jersey 07974
Piscataway, New Jersey 08854
.if \\n%>0 .tl '\\*(LF'\\*(CF'\\*(RF'
. \"SH - (unnumbered) section heading
. \"NH - numbered heading
.if !\\$1 .if \\n(.$ .nr H1 1
.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.
. \"BG - begin, execute at first PP
.if \\n(GA>1 .if \\n(KG=0 .nr GA 0 \" next UNIX must be flagged.
.de RA \"redefine abstract macros
.if \\n(.$>0 .if !"\\$1"-" .if !"\\$1"no" \\$1
.if \\n(.$>0 .if !"\\$1"-" .if !"\\$1"no" .sp
.if \\n(VS>40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \"IP - indented paragraph
.if \\n(.$-1 .nr I\\n(IR \\$2n
.ta \\n(I\\n(IRu \\n(TYuR
. \"LP - left aligned (block) paragraph
.if \\n(.$ .ti -\\n(I\\n(IRu
.if \\n(.$-2 .nr I\\n(IR \\$3n
.ta \\n(I\\n(IRu/2u \\n(I\\n(IRu
. \"RS - prepare for double indenting
.if \\n(IP>0 .in +\\n(I\\n(IRu
. \"RE - retreat to the left
.if \\n(IP<=0 .in -\\n(I\\n(IRu
.if "\\$1"" .if n .ul 1000
.if t .if !"\\$1"" \&\\$1\\f\\n(PQ\\$2
.if n .if \\n(.$=1 \&\\$1
.if n .if \\n(.$>1 \&\\$1\\c
.if n .if \\n(.$>1 \\&\\$2
.if "\\$1"" .if n .ul 1000
.if t .if !"\\$1"" \&\\$1\\f\\n(PQ\\$2
.if n .if \\n(.$=1 \&\\$1
.if n .if \\n(.$>1 \&\\$1\\c
.if n .if \\n(.$>1 \\&\\$2
. \"TA - tabs set in ens or chars
.ta \\$1n \\$2n \\$3n \\$4n \\$5n \\$6n \\$7n \\$8n \\$9n
. \"SM - make smaller size
. \"LG - make larger size
. \"NL - return to normal size
. \"DA - force date; ND - no date or new date.
.if \\n(.$ .ds DY \\$1 \\$2 \\$3 \\$4
.ds DY \\$1 \\$2 \\$3 \\$4
.if \n(mo-0 .ds MO January
.if \n(mo-1 .ds MO February
.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
.ds DY \*(MO \n(dy, 19\n(yr
.if \\n(IF>0 .tm Footnote within footnote-illegal.
.if !\\n(XX-1 .nr dn +\\n(.v
.if \\n(dl>\\n(CW .nr WF 1
.if (\\n(nl+\\n(.v)<=(\\n(.p+\\n(YY) .ch FO \\n(YYu
.if (\\n(nl+\\n(.v)>(\\n(.p+\\n(YY) .if \\n(nl>(\\n(HM+1.5v) .ch FO \\n(nlu+\\n(.vu
.if (\\n(nl+\\n(.v)>(\\n(.p+\\n(YY) .if \\n(nl+\\n(FM+1v>\\n(.p .ch FX \\n(.pu-\\n(FMu+2v
.if (\\n(nl+\\n(.v)>(\\n(.p+\\n(YY) .if \\n(nl<=(\\n(HM+1.5v) .ch FO \\n(HMu+(4u*\\n(.vu)
.if \\n(1T=0 .nr KG 1 \"not in abstract repeat next page.
.if "\\n(.z"OD" .nr KG 0 \" if in OK, don't repeat.
.if n __________________________
.if \\n(nlu+1v>(\\n(.pu-\\n(FMu) .ch FX \\n(nlu+1.9v
Holmdel, New Jersey 07733
Whippany, New Jersey 07981
Naperville, Illinois 60540
.de UL \" underline argument, don't italicize
. \" ACCENTS say \*'e or \*`e to get e acute or e grave
.ds ' \h'\w'e'u*4/10'\z\(aa\h'-\w'e'u*4/10'
.ds ` \h'\w'e'u*4/10'\z\(ga\h'-\w'e'u*4/10'
.ds : \v'-0.6m'\h'(1u-(\\n(.fu%2u))*0.13m+0.06m'\z.\h'0.2m'\z.\h'-((1u-(\\n(.fu%2u))*0.13m+0.26m)'\v'0.6m'
. \" 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'
.ds C \\k:\\h'+\\w'e'u/4u'\\v'-0.6m'\\s6v\\s0\\v'0.6m'\\h'|\\n:u'
.ds v \\k:\\h'+\\w'e'u/4u'\\v'-0.6m'\\s6v\\s0\\v'0.6m'\\h'|\\n:u'
.ds , \\k:\\h'\\w'c'u*0.4u'\\z,\\h'|\\n:u'
.if \\$1>5 .tm Bad arg to []
.if t .ds [. \s-2\v'-.4m'\f1
.if t .ds .] \v'.4m'\s+2\fP
.el Bell Laboratories internal memorandum (\\*([D).
.if !"\\*([T"" \\f2\\*([T\\f1\c
.if !"\\*([T"" .if !"\\*([O"" ,\
.de [1 \" journal article
.if !"\\*([T"" \\*([o\\*([T,\\*([c
.if "\\*([V"" \\f2\\*([J\\f1,
.if !"\\*([V"" \\f2\\*([J\\f1
.if !"\\*([V"" \{.if n Vol.\&
.if !"\\*([N"" (\\*([N)\c
.if !"\\*([I"" .if "\\*([R"" \\*([I,
.if !"\\*([C"" , \\*([C\c
.if !"\\*([G"" Gov't. ordering no. \\*([G
\\*([A, \\*([o\\*([T,\\*([c
.if !"\\*([G"" \& (\\*([G)\c
.if !"\\*([I"" , \\*([I\c
.if !"\\*([C"" , \\*([C\c
.de [3 \" article in book
\\*([A, \\*([o\\*([T,\\*([c
.if !"\\*([P"" pp. \\*([P
.if !"\\*([E"" ed. \\*([E,\c
.if !"\\*([C"" , \\*([C\c
.rm [V [P [A [T [N [C [B [O [R [I [E [D
.ie \\n(GA>0 \\$2\s-2UNIX\s0\\$1
.if t \\$2\s-2UNIX\\s0\\$1\\f1\(dg\\fP
.ie \\$3=1 is a Footnote of Bell Laboratories.
.el is a Trademark of Bell Laboratories.
.de B1 \" begin boxed stuff
.de B2 \" end boxed stuff
.if \\n(.$>0 .nr BI \\$1n
.if \\n(BC>0 .in +(\\n(.lu-\\n(BWu)/2u
\l'\\n(BWu\(ul'\L'-\\n(BHu'\l'|0\(ul'\h'|0'\L'\\n(BHu'
.if \\n(BC>0 .in -(\\n(.lu-\\n(BWu)/2u
.if t \(br\|\\$1\|\(br\l'|0\(rn'\l'|0\(ul'
.if n \(br\\kA\|\\$1\|\\kB\(br\v'-1v'\h'|\\nBu'\l'|\\nAu'\v'1v'\l'|\\nAu'