.\" these are only for typesetting manuals for Usenix distribution
.\" differences: page numbers even on page 1, MH = Bell Labs
.\" default line length (and title length) 6.5i instead of 6i.
. \" IZ - initialize (before text begins)
. \" RT - reset (at new paragraph)
.if !\\n(IK .if !\\n(IF .if !\\n(IX .if !\\n(BE .di
.if \\n(NX<=1 .if !\\n(AJ .ll \\n(LLu
. if \\n(VS>=40 .vs \\n(VSu
. if \\n(VS<=39 .vs \\n(VSp
.if !\\n(IP .nr I0 \\n(PIu
. \" TA - set default tabs
.if n .ta 8n 16n 24n 32n 40n 48n 56n 64n 72n 80n
.if t .ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n
. \" BG - begin (at first paragraph)
.rm S0 S1 S2 SY TX AX WT RP
. \" RA - redefine abstract
.if \\n(.$ .if !
\a\\$1
\ano
\a \\$1
.if \\n(.$ .if !
\a\\$1
\ano
\a .sp
.if \\n(VS>=40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \" RP - released paper format
.if
\a\\$1
\ano
\a .nr ST 1
. \" TL - source file for cover sheet
. \" PP - regular paragraph
. \" IP - indented paragraph
.if \\n(.$-1 .nr I\\n(IR \\$2n
.if \w'\\*(HT'u>(\\n(I\\n(IRu+1n) .br
. \" XP - exdented paragraph
. \" QP - quote paragraph
. \" NH - numbered header
.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.
. \" DS - display with keep (L=left I=indent C=center B=block)
.if \\n(VS>=40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \" ID - indented display with no keep
.if \\n(.$ .if !
\a\\$1
\aI
\a .if !
\a\\$1
\a\a \{\
. \" LD - left display with no keep
. \" CD - centered display with no keep
. \" XD - real display macro
. \" DE - end display of any kind
. \" BD - block display: center entire block
. \" DF - finish block display
.if \\n(dl>\\n(BD .nr BD \\n(dl
.if \\n(BD<\\n(.l .in (\\n(.lu-\\n(BDu)/2u
. \" KS - begin regular keep
.if !\\n(IK .if !\\n(IF .KQ
. \" KQ - real keep processor
.if \\n(VS>=40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
. \" KF - begin floating keep
. \" FQ - real floating keep processor
.if \\n(VS>=40 .vs \\n(VSu
.if \\n(VS<=39 .vs \\n(VSp
.if \\n(IK .if !\\n(IK-1 .if !\\n(IF .RQ
. \" RQ - real keep release
.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
.if
\a\\n(.z
\aKJ
\a .nr KM 1
.if !\\n(KM .if \\n(.t<\\$1 .di KJ
. \" EM - end macro (process leftover keep)
.if !\\n(TB .if t .wh -1p CM
.if
\a\\n(.z
\aKJ
\a .nr TB 1
.if !\\n(LT .nr LT \\n(LLu
.if \\n(FM+\\n(HM>=\\n(.p \{\
. tm HM + FM longer than page
.if !\\n(TD .if \\n(TC<5 .XK
.if t .if \\n(.o+\\n(LL>7.54i .tm PO + LL wider than 7.54i
.if \\n(PT>1 .if !\\n(EH .if !\\n(OH .tl
\a\\*(LH
\a\\*(CH
\a\\*(RH
\a
.if \\n(PT>0 .if \\n(OH .if o .tl \\*(O1
.if \\n(PT>0 .if \\n(EH .if e .tl \\*(E2
. \" OH - odd page header
.ds O1 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
. \" EH - even page header
.ds E2 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
.if \\n(IT .if !\\n(FC .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 \{\
.if \\n(TM .if \\n(CT \{\
.if \\n% .if !\\n(EF .if !\\n(OF .tl
\a\\*(LF
\a\\*(CF
\a\\*(RF
\a
.if \\n% .if \\n(OF .if o .tl \\*(O3
.if \\n% .if \\n(EF .if e .tl \\*(E4
. \" OF - odd page footer
.ds O3 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
. \" EF - even page footer
.ds E4 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
. \" MC - multiple columns, arg is col width
.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)
.if \\n(IP .in +\\n(I\\n(IRu
.if \\n(IP<=0 .in -\\n(I\\n(IRu
.ie
\a\\$1
\a\a .if n .ul 999
.if t .if !
\a\\$1
\a\a \&\\$1\|\f\\n(PQ\\$2
.if n .if \\n(.$=1 \&\\$1
.if n .if \\n(.$>1 \&\\$1\c
.if n .if \\n(.$>1 \&\\$2
.ie
\a\\$1
\a\a .if n .ul 999
.if t .if !
\a\\$1
\a\a \&\\$1\f\\n(PQ\\$2
.if n .if \\n(.$=1 \&\\$1
.if n .if \\n(.$>1 \&\\$1\c
.if n .if \\n(.$>1 \&\\$2
. \" UL - underline in troff
.if \\n(.$ .ds DY \\$1 \\$2 \\$3 \\$4
. \" ND - no date or new date
.if \\n(.$ .ds DY \\$1 \\$2 \\$3 \\$4
. \" \** - numbered footnote
. \" FJ - replaces FS after cover
.if \\n(IF .tm Nested footnote
.if !\\n(MF .if !\\n(.$ .if \\n* .FP \\n*
.if !\\n(MF .if \\n(.$ .FP \\$1 no
. \" FK - replaces FE after cover
.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(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)
. \" FS - begin footnote on cover
.if !\\n(.$ .if \\n* .FP \\n*
. \" FE - end footnote on cover
. \" FA - print line before footnotes
.if n _________________________
. \" FP - footnote paragraph
. el \\*([.\\$1\\*(.]\0\c
.if \\n(FF .if \\n(FF<3 \{\
. \" FV - get leftover footnote from previous page
. \" FX - divert leftover footnote for next page
. \" XF - actually print footnote
.if \\n(nlu+1v>(\\n(.pu-\\n(FMu) .ch FX \\n(nlu+1.9v
. \" TS - source file for tbl
. \" EQ - source file for eqn
. \" ]- - source file for refer
. \" [< - for refer -s or -e
.if \n(.V<20 .ds [. \f1\s-2\v'-.4m'
.if \n(.V<20 .ds .] \v'.4m'\s+2\fP
.ds ' \h'\w'e'u/5'\z\'\h'-\w'e'u/5'
.ds ` \h'\w'e'u/5'\z\`\h'-\w'e'u/5'
.ds ^ \h'\w'o'u/10'\z^\h'-\w'e'u/10'
.ds , \h'\w'c'u/5'\z,\h'-\w'e'u/5'
.ds : \h'\w'u'u/5'\z"\h'-\w'e'u/5'
.ds ~ \h'\w'n'u/10'\z~\h'-\w'e'u/10'
.ds C \h'\w'c'u/5'\v'-.6m'\s-4\zv\s+4\v'.6m'\h'-\w'c'u/5'
. \" AM - better accent marks
.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'
. \" B1 - source file for boxed text
. \" XS - table of contents
. \" IX - index words to stderr
.tm \\$1\t\\$2\t\\$3\t\\$4 ... \\n(PN
.ie \\n(UX \s-1UNIX\s0\\$1
\(dg \s-1UNIX\s0 is a trademark of AT&T Bell Laboratories.
.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
.ds DY \*(MO \n(dy, 19\n(yr
Murray Hill, New Jersey 07974