ttmac.mcs - plan9port - [fork] Plan 9 from user space
 (HTM) git clone git://src.adamsgaard.dk/plan9port
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       ttmac.mcs (43067B)
       ---
            1 '''\"        @(#)dcs:csmacros        2.3        5/2/89        
            2 '''\" registers
            3 '''\"        a - abstract continuation flag - 0 (no), >0 (yes - number of overflow pages)
            4 '''\"        b - mercury selections counter
            5 '''\"        c - distribution continuation flag - 0 (no), 1 (yes)
            6 '''\"        d - distribution length calculation flag - 0 (no), 1 (yes)
            7 '''\"        e - complete copy basic distribution length
            8 '''\"        g - complete copy overflow distribution length
            9 '''\"        h - cover sheet basic distribution length
           10 '''\"        i - cover sheet overflow distribution length
           11 '''\"        j - scratch
           12 '''\"        k - keyword flag - 0 (none), 1 (some)
           13 '''\"        l - number of vertical units per line - troff and nroff
           14 '''\"        m - memorandum type flag - 1 TM, 2 IM, 3 TC
           15 '''\"        n - document number counter
           16 '''\"        o - title flag - 0 (no), 1 (yes - vertical size of title diversion)
           17 '''\"        p - proprietary notice flag - 0 (none), 1 (default notice), 2(BR)
           18 '''\"        q - scratch
           19 '''\"        r - security flag - 0 (no), 1 (yes)
           20 '''\"        s - software flag - 0 (no), 1 (yes)
           21 '''\"        t - mark title position
           22 '''\"        u - author count
           23 '''\"        v - scratch
           24 '''\"        w - scratch
           25 '''\"        x - mark scratch position
           26 '''\"        y - mark scratch position
           27 '''\"        z - mark scratch position
           28 '''\"        ra - release to Lucent flag - 0 (no decision), 1 (yes), 2 (no)
           29 '''\"        an - length abstract footnote diversion
           30 '''\"        fn - length footnote diversion
           31 '''\"        as - "in abstract" flag - 0 (no), 1 (yes)
           32 '''\"        ds - "in display" flag - 0 (no), 1 (yes)
           33 '''\"        fs - "in footnote" flag - 0 (no), 1 (yes)
           34 '''\"        bd - block center display flag - 0 (no), 1 (yes)
           35 '''\"        dv - device flag - 0 (default), 1 (APS-5), 2 (i10), 3 (xerox), 4 (i300), 5 (qms1200), 6 (postscript)
           36 '''\"        lp - lines per page (nroff - xerox)
           37 '''\"        tp - total pages (decimal)
           38 '''\"        tc - total pages (in small roman)
           39 '''\"        np - page number this page (decimal)
           40 '''\"        nc - page number this page (in small roman)
           41 '''\"        lt - vertical size of title diversion (in lines)
           42 '''\"        lo - vertical size of copy overflow trap (in lines)
           43 '''\"        la - vertical size of abstract diversion
           44 '''\"        a1 - vertical size of page 1 portion of abstract
           45 '''\"        a2 - vertical size of overflow page portion of abstract
           46 '''\"        ar - vertical size remainder of abstract
           47 '''\"        fi - save current fill/no-fill (.u)
           48 '''\"        in - save current indent (.i)
           49 '''\"        si - standard indent - ens (for paragraphs, displays & equations)
           50 '''\"        ps - initial point size (.s)
           51 '''\"        ts - temp point size (only in S macro)
           52 '''\"        vs - initial vertical spacing (.v)
           53 '''\"        tv - temp vertical spacing (only in S macro)
           54 '''\"        b1, b2 - scratch calculations
           55 '''\"        g1, g2, g3, g4, g5 - complete copy overflow - additional diversion lengths
           56 '''\"        i1, i2, i3, i4, i5 - cover sheet only overflow - additional diversionlengths
           57 '''\"        m1 - mark scratch position
           58 '''\"        :b, :c, :d, :e - scratch (lists only)
           59 '''\"        :h - SA macro only
           60 '''\"        ls - nested list level (lists only)
           61 '''\"        dt - display type (displays & equations)
           62 '''\"        fc - filing case flag
           63 '''\"        wp - work project number flag
           64 '''\"        en - entity flag - 1 (BL), 2 (IS), 3 (TI), 4 (CH)
           65 '''\"        lg - Lucent logo flag - 0 (not defined), 1 (defined)
           66 '''\"        oa - organizational approval name counter
           67 '''\"        aa - ship to itds
           68 '''\" strings
           69 '''\"        a) - mercury info
           70 '''\"        b) - mercury info
           71 '''\"        c) - mercury info
           72 '''\"        e) - equation label
           73 '''\"        k) - keywords
           74 '''\"        m) - Mailing Label/DRAFT
           75 '''\"        n) - first document number
           76 '''\"        o) - proprietary classification heading
           77 '''\"        p) - proprietary string 1
           78 '''\"        q) -     "         "    2
           79 '''\"        r) -     "         "    3
           80 '''\"        s) - timestamp string
           81 '''\"        t) - memo type (TM, IM, TC)
           82 '''\"        u) - trailing s if multiple author
           83 '''\"        v) - trailing s if multiple document number
           84 '''\"        w) - trailing s if multiple filing case
           85 '''\"        x) -  trailing s if multiple work project number
           86 '''\"        y) - used in lists
           87 '''\"        z) - used in lists
           88 '''\"        a( -
           89 '''\"        e( - earlier document number
           90 '''\"        m( - authors 1-3 sig
           91 '''\"        n( - authors 4-6 sig
           92 '''\"        o( - authors 7-9 sig
           93 '''\"        p( - authors 10-12 sig
           94 '''\"        r( - responsible person
           95 '''\"        s( - S software string
           96 '''\"        t( - memo type ("for Technical Memorandum", etc.)
           97 '''\"        u( - organizational approval 1-3 sig
           98 '''\"        v( - organizational approval 4-6 sig
           99 '''\"        w( - organizational approval 7-9 sig
          100 '''\"        x( - organizational approval 10-12 sig
          101 '''\"        Tm - trademark
          102 '''\"        lG - Lucent logo
          103 '''\"        10 - used in equations
          104 '''\"        ve - csmacros version
          105 '''\"        e1,e2,e3,e4 - entity info
          106 '''\" diversions
          107 '''\"        aS - abstract
          108 '''\"        aV - author info section
          109 '''\"        cA - complete copy addressee primary
          110 '''\"        cO - complete copy addressee overflow
          111 '''\"        cU, cV, cW, cX, cY, cZ - complete copy addressee overflow (previously lost)
          112 '''\"        dA - cover sheet addressee primary
          113 '''\"        dO - cover sheet addressee overflow
          114 '''\"        dU, dV, dW, dX, dY, dZ - cover sheet only addressee overflow (previously lost)
          115 '''\"        dM - document number info
          116 '''\"        dS - display
          117 '''\"        eQ - equation
          118 '''\"        fB - filing case info
          119 '''\"        tI - title
          120 '''\"        wO - work project number info
          121 '''\"        aN - abstract footnote
          122 '''\"        fN - footnote
          123 '''\"
          124 '''\" macros to collect information
          125 '''\"        aC - Lucent company
          126 '''\"        tS - timestamp
          127 '''\"        TL - title
          128 '''\"        AU - author
          129 '''\"        FS - footnote start
          130 '''\"        FE - footnote end
          131 '''\"        AS - abstract start
          132 '''\"        AE - abstract end
          133 '''\"        OK - keyword info
          134 '''\"        MT - document type
          135 '''\"        dN - document number info
          136 '''\"        oA - organization approval name
          137 '''\"        eD - earlier document number
          138 '''\"        fC - filing case
          139 '''\"        fD - full date
          140 '''\"        wP - work project info
          141 '''\"        mE - mercury selections (7 argument version)
          142 '''\"        mC - mercury codes (three argument version)
          143 '''\"        Mc - mercury codes (one argument version)
          144 '''\"        PM - proprietary marking
          145 '''\"        gS - government security
          146 '''\"        rA - release to Lucent employees (superceded by fA)
          147 '''\"        fA - future Lucent distribution (supercedes rA)
          148 '''\"        sF - software-related
          149 '''\"        cC - complete copy addressee list start
          150 '''\"        cD - complete copy overflow
          151 '''\"        cS - cover sheet only addressee list start
          152 '''\"        cT - cover sheet only overflow
          153 '''\"        zZ - complete copy overflow (previously lost)
          154 '''\"        fF - complete copy overflow (aux)
          155 '''\"        wW - cover sheet overflow (previously lost)
          156 '''\"        gG - cover sheet only overflow (aux)
          157 '''\"        cE - addressee list end
          158 '''\"        eE - addressee list end (aux)
          159 '''\" macros to help format document
          160 '''\"        B  - change to bold font
          161 '''\"        I  - change to italic font
          162 '''\"        R  - change to roman font
          163 '''\"        S  - set point size and vertical spacing
          164 '''\"        sP - space 1 vertical space
          165 '''\"        P  - paragraph
          166 '''\"        HC - set hyphenation indicator
          167 '''\"        iN - font and size re-initialization
          168 '''\"        DS - display start
          169 '''\"        DE - display end
          170 '''\"        EQ - equation start
          171 '''\"        EN - equation end
          172 '''\"        VL - variable-item list
          173 '''\"        ML - marked list
          174 '''\"        LI - list item
          175 '''\"        LE - list end
          176 '''\"        hD - header 
          177 '''\"        fO - footer
          178 '''\"        yY - abstract overflow
          179 '''\"        aT - abstract overflow trap
          180 '''\"        tK - thick lines
          181 '''\"        bE - empty box
          182 '''\"        bX - box with X
          183 '''\"        tH - title heading
          184 '''\"        cH - continuation header
          185 '''\"        dH - distribution list headers
          186 '''\"        oH - overflow distribution list headers
          187 '''\"        eP - eject distribution continuation page
          188 '''\"        cP - continuation page
          189 '''\"        dP - continuation page (aux)
          190 '''\"        tP - compute pages and diversion lengths
          191 '''\"        t1 -     "               "
          192 '''\"        dL - compute basic distribution length
          193 '''\"        CS - output cover sheet
          194 '''\" initialization
          195 '''\"
          196 '''\"        registers
          197 .nr a 0 1
          198 .nr b 0 1
          199 .nr c 0
          200 .nr d 0
          201 .nr e 0
          202 .nr g 0
          203 .nr g1 0
          204 .nr g2 0
          205 .nr g3 0
          206 .nr g4 0
          207 .nr g5 0
          208 .nr h 6
          209 .nr i 0
          210 .nr i1 0
          211 .nr i2 0
          212 .nr i3 0
          213 .nr i4 0
          214 .nr i5 0
          215 .nr j 0
          216 .nr k 0
          217 .nr m 0
          218 .nr n 0 1
          219 .nr o 0
          220 .nr p 1
          221 .nr q 0
          222 .nr r 0
          223 .nr s 0
          224 .nr t 0
          225 .nr u 0 1
          226 .nr v 0
          227 .nr w 0
          228 .nr x 0
          229 .nr y 0
          230 .nr z 0
          231 .nr an 0
          232 .nr fn 0
          233 .nr as 0
          234 .nr ds 0
          235 .nr fs 0
          236 .nr bd 0
          237 .nr tp 0
          238 .nr tc 0
          239 .af tc i
          240 .nr np 2
          241 .nr nc 2
          242 .af nc i
          243 .nr la 0
          244 .nr a1 0
          245 .nr a2 0
          246 .nr ar 0
          247 .nr fi 0
          248 .nr in 0
          249 .nr :b 0
          250 .nr :c 0
          251 .nr :d 0
          252 .nr :e 0
          253 .nr :h 0
          254 .nr ls 0 1
          255 .nr dt 0
          256 .nr fc 0 1
          257 .nr wp 0 1
          258 .nr en 1
          259 .nr lg 0
          260 .nr ra 0
          261 .nr oa 0 1
          262 '''\"        initialize lines per page
          263 .nr lp 66
          264 .if n .nr lp 65
          265 '''\" initialize device register
          266 .nr dv 0
          267 .if '\*(.T'aps' .nr dv 1
          268 .if '\*(.T'i10' .nr dv 2
          269 .if '\*(.T'X97.tim10p' .nr dv 3
          270 .if '\*(.T'X97.tim12p' .nr dv 3
          271 .if '\*(.T'X97.ti10p' .nr dv 3
          272 .if '\*(.T'X97.ti12p' .nr dv 3
          273 .if '\*(.T'i300' .nr dv 4
          274 .if '\*(.T'qms' .nr dv 5
          275 .if '\*(.T'post' .nr dv 6
          276 '''\"        initialize font positions
          277 .ie \n(dv=3 \{\
          278 .fp 1 R
          279 .fp 2 I
          280 .fp 3 B
          281 .fp 4 I \}
          282 .el .ie \n(dv=5 \{\
          283 .fp 1 R
          284 .fp 2 I
          285 .fp 3 B
          286 .fp 4 S \}
          287 .el \{\
          288 .fp 1 H
          289 .fp 2 HI
          290 .fp 3 HB
          291 .fp 4 HX \}
          292 '''\"        initialize units per vertical space
          293 .if t .nr l 120
          294 .if \n(dv=2 .nr l 40
          295 .if \n(dv=3 .nr l 50
          296 .if \n(dv=5 .nr l 50
          297 .if n .nr l 40
          298 '''\"        initialize standard indent
          299 .nr si 5
          300 '''\"        diversions
          301 .di aV
          302 .di
          303 .di dM
          304 .di
          305 .di cA
          306 .di
          307 .di cO
          308 .di
          309 .di cU
          310 .di
          311 .di cV
          312 .di
          313 .di cW
          314 .di
          315 .di cX
          316 .di
          317 .di cY
          318 .di
          319 .di cZ
          320 .di
          321 .di dA
          322 .di
          323 .di dO
          324 .di
          325 .di dU
          326 .di
          327 .di dV
          328 .di
          329 .di dW
          330 .di
          331 .di dX
          332 .di
          333 .di dY
          334 .di
          335 .di dZ
          336 .di
          337 .di fB
          338 .di
          339 .di wO
          340 .di
          341 '''\" initialize Lucent logo
          342 '''\" eventually substitute LH for Lb (DWB 2)
          343 .ie \n(dv=5 .ds lG \s10\f(ATx\fP\f\\nv\fP\s0
          344 .el .ds lG \s36\(LH\s0
          345 '''\" initialize entity strings
          346 .ds e1 "LUCENT-BL
          347 .ds e2 "LUCENT
          348 .ds e3 "LUCENT BELL LABORATORIES
          349 .ds e4 "Department Head
          350 '''\" initialize trademark symbol string
          351 .if t .ds Tm \v'-0.5m'\s-4TM\s+4\v'0.5m'
          352 .if n .ds Tm \uTM\d
          353 '''\" initialize timestamp string
          354 .ds s) 0
          355 '''\"        initialize responsible person string
          356 .ds r( 0
          357 '''\"        initialize earlier document number string
          358 .ds e( 0
          359 '''\"        initialize csmacro version string
          360 .ds ve MCS (04/30/89)
          361 '''\"        initialize point size, vertical space & indent
          362 .nr ps 10
          363 .ps \\n(ps
          364 .nr vs 12
          365 .if t .vs \\n(vsp
          366 .in 0
          367 '''\"
          368 '''\" macros to collect information
          369 '''\"
          370 .de aC                                \" macro for Lucent company (entity)
          371 .                                        \" set en=1 if BL (default)
          372 .                                        \" set en=2 if IS
          373 .                                        \" set en=3 if TI
          374 .                                        \" set en=4 if CH (Corporate Headquarters)
          375 .if '\\$1'BL' .nr en 1
          376 .if '\\$1'IS' .nr en 2
          377 .if '\\$1'TI' .nr en 3
          378 .if '\\$1'CH' .nr en 4
          379 .if \\n(en=1 \{\
          380 .ds e1 "LUCENT-BL
          381 .ds e2 "LUCENT
          382 .ds e3 "LUCENT BELL LABORATORIES
          383 .ds e4 "Department Head
          384 .br\}
          385 .if \\n(en=2 \{\
          386 .ds e1 "LUCENT-IS
          387 .ds e2 "LUCENT
          388 .ds e3 "LUCENT INFORMATION SYSTEMS
          389 .ds e4 "Department Head
          390 .br\}
          391 .if \\n(en=3 \{\
          392 .ds e1 "Lucent Technologies, Inc.
          393 .ds e2 "Lucent
          394 .ds e3 "LUCENT TECHNOLOGIES, INC.
          395 .ds e4 "Manager
          396 .br\}
          397 .if \\n(en=4 \{\
          398 .ds e1 "Lucent
          399 .ds e2 "Lucent
          400 .ds e3 "        Lucent
          401 .ds e4 "Department Head
          402 .br \}
          403 .rm aC
          404 ..
          405 .de tS                                \" macro for timestamp
          406 '''\"                                if timestamp string=0, store arg #1 if non-empty.
          407 .if '\\*(s)'0' \{\
          408 .if !'\\$1'' \{\
          409 .ie '\\$2'1' .ds s) "D R A F T
          410 .el .ds s) "Timestamp: \\$1 \} \}
          411 ..
          412 .de TL                                \" macro for title
          413 .if \\nu>0 \{\
          414 .tm ERROR: coversheet file set up incorrectly - document title must be supplied before author
          415 .ab        \}
          416 .br
          417 .fi
          418 .nr aa 1                \" set default to send cover to ITDS
          419 .ie !'\\n(.F'stdin' \{\
          420 .        ie !'\\n(.F'-' \{\
          421 .                sy /usr/lib/tmac/timestamp \\n(.F>/tmp/tp\\n($$
          422 .                so /tmp/tp\\n($$
          423 .                sy /bin/rm /tmp/tp\\n($$
          424 .                br \}                        \" don't remove br - gets around troff bug
          425 .        el \{\
          426 .                nr aa 0
          427 .                tm Coversheet not sent to library. input is '-' \} \}
          428 .el \{\
          429 .        nr aa 0
          430 .        tm Coversheet not sent to library. input is 'stdin' \}
          431 .ie '\\$1'' \{\
          432 .        ds m) "Mailing Label \}
          433 .el \{
          434 .        nr aa 0
          435 .        tm Coversheet not sent to library. DRAFT document
          436 .        ds m) \\s+2DRAFT\\s-2 \} \}
          437 .ll 6.0i
          438 '''\"                                        diversion for title
          439 .di tI
          440 .rm TL
          441 ..
          442 .de AU                                \" macro for author info
          443 '''\"                                        don't count author unless non-empty
          444 .if !\\$1 .nr u \\n+u
          445 .if \\nu=1 \{\
          446 .br
          447 '''\"                                        end title diversion on first author
          448 .di
          449 .nr lt (\\n(dn)/(\\nl)
          450 .nr o \\n(dn
          451 .ll
          452 .nf \}
          453 .ta 0.3i 2.6i 3.0i 4.0i 5.4i
          454 .br
          455 '''\"                                        append to author list
          456 .da aV
          457         \\$1        \\$3        \\$6        \\$5        \\$7
          458 .br
          459 .da
          460 '''\"                                        end append; info for signature lines
          461 .if \\nu=1 .ds m(        \\$1
          462 .if \\nu=2 .as m(         \\$1
          463 .if \\nu=3 .as m(        \\$1
          464 .if \\nu=4 .ds n(        \\$1
          465 .if \\nu=5 .as n(        \\$1
          466 .if \\nu=6 .as n(        \\$1
          467 .if \\nu=7 .ds o(        \\$1
          468 .if \\nu=8 .as o(        \\$1
          469 .if \\nu=9 .as o(        \\$1
          470 .if \\nu=10 .ds p(        \\$1
          471 .if \\nu=11 .as p(        \\$1
          472 .if \\nu=12 .as p(        \\$1
          473 ..
          474 .de rP                                \" macro for responsible person
          475 .if !'\\$1'' .ds r( \\$1
          476 .rm rP
          477 ..
          478 .de FS                                \" macro for footnote start
          479 .if \\n(fs>0 \{\
          480 .tm Footnote within footnote - illegal.
          481 .FE \}
          482 .if \\n(ds>0 \{\
          483 .tm Footnote within display - illegal.
          484 .FE \}
          485 .nr fs 1
          486 .ev 1
          487 .br
          488 .ll 6.4i
          489 .ps 8
          490 .if t .vs 10p
          491 .fi
          492 .ie \\n(as>0 .da aN
          493 .el \{\
          494 .da fN
          495 .if \\n(fn=0 \{\
          496 .br
          497 .if n __________
          498 .if t \l'1i'
          499 .br \} \}
          500 .if \\n(.$=1 \\$1
          501 ..
          502 .de FE                                \" macro for footnote end
          503 .br
          504 .da
          505 .ie \\n(as>0 .nr an \\n(dn+\\n(an
          506 .el .nr fn \\n(dn+\\n(fn
          507 .ev
          508 .nr fs 0
          509 ..
          510 .de AS                                \" macro for abstract info
          511 .nr as 1
          512 .br
          513 .fi
          514 .ll 7.0i
          515 .ta 0.5i 1.0i 1.5i
          516 .di aS
          517 .rm AS
          518 ..
          519 .de AE                                 \" macro for end of abstract info
          520 .br
          521 .di
          522 .nr la \\n(dn
          523 .iN
          524 .if \\n(an>0 \{\
          525 .br
          526 .da aS
          527 .br
          528 .if n __________
          529 .if t \l'1i'
          530 .br
          531 .nf
          532 .aN
          533 .rm aN
          534 .br
          535 .da
          536 .nr la \\n(la+\\n(dn \}
          537 .iN
          538 .rm iN
          539 .ll
          540 .nf
          541 .nr as 0
          542 .rm DS DE EQ EN VL ML LI LE
          543 .rm dS eQ
          544 .rm B I R S sP P
          545 .rm FS FE AE
          546 ..
          547 .de OK                                \" macro for keyword info
          548 .ds k)
          549 .if !\\$1 .as k) \\$1
          550 .if !\\$2 .as k); \\$2
          551 .if !\\$3 .as k); \\$3
          552 .if !\\$4 .as k); \\$4
          553 .if !\\$5 .as k); \\$5
          554 .if !\\$6 .as k); \\$6
          555 .if !\\$7 .as k); \\$7
          556 .if !\\$8 .as k); \\$8
          557 .if !\\$9 .as k); \\$9
          558 '''\"                                        set k flag if we have some keywords
          559 .ie !\\*(k) .nr k 1
          560 .el .nr k 0
          561 .rm OK
          562 ..
          563 .de MT                                \" macro for document type
          564 .if '\\$1'1' \{\
          565 .nr m 1
          566 .ds t) TM
          567 .ds t( "for Technical Memorandum\}
          568 .if '\\$1'2' \{\
          569 .nr m 2
          570 .ds t) IM
          571 .ds t( "for Internal Memorandum\}
          572 .if '\\$1'3' \{\
          573 .nr m 3
          574 .ds t) TC
          575 .ds t( "for Technical Correspondence\}
          576 .rm MT
          577 ..
          578 .de dN                                \" macro for document number info
          579 .ie \\ns=1 .ds s( S
          580 .el .ds s(
          581 .ta 0.8i
          582 .br
          583 .da dM
          584 .if !'\\$1'' \{\
          585         \\$1\\*(t)\\*(s(
          586 .nr n \\n+n
          587 '''\"                                        \" save first document number
          588 .if \\nn=1 .ds n) \\$1\\*(t)\\*(s( \}
          589 .br
          590 .da
          591 ..
          592 .de oA                                        \" macro for organizational approval names(s)
          593 .nr oa \\n+(oa
          594 .if \\n(oa=1 .ds u(        \\$1
          595 .if \\n(oa=2 .as u(        \\$1
          596 .if \\n(oa=3 .as u(        \\$1
          597 .if \\n(oa=4 .ds v(        \\$1
          598 .if \\n(oa=5 .as v(        \\$1
          599 .if \\n(oa=6 .as v(        \\$1
          600 .if \\n(oa=7 .ds w(        \\$1
          601 .if \\n(oa=8 .as w(        \\$1
          602 .if \\n(oa=9 .as w(        \\$1
          603 .if \\n(oa=10 .ds x(        \\$1
          604 .if \\n(oa=11 .as x(        \\$1
          605 .if \\n(oa=12 .as x(        \\$1
          606 ..
          607 .de fC                                        \" macro for filing case info
          608 .ta 3.5i
          609 .br
          610 .da fB
          611 .if !'\\$1'' \{\
          612 .nr fc \\n+(fc
          613         \\$1 \}
          614 .br
          615 .da
          616 ..
          617 .de fD                                        \" macro for full date info
          618 .if !'\\$1'' .fC \\$1                                \" use .fC macro underneath
          619 ..
          620 .de wP                                        \" macro for work project info
          621 .ta 5.5i
          622 .br
          623 .da wO
          624 .if !'\\$1'' \{\
          625 .nr wp \\n+(wp
          626         \\$1 \}
          627 .br
          628 .da
          629 ..
          630 .de mC                                \" macro for mercury selections - three argument version
          631 .if !'\\$1'' .Mc \\$1
          632 .if !'\\$2'' .Mc \\$2
          633 .if !'\\$3'' .Mc \\$3
          634 ..
          635 .de Mc                                \" macro for mercury selections - one argument
          636 .ds c)
          637 .if \\nb<3 \{\
          638 .ie '\\$1'CHM' .ds c) "        CHM - Chemistry and Materials
          639 .el .ie '\\$1'chm' .ds c) "        CHM - Chemistry and Materials
          640 .el .ie '\\$1'CMM' .ds c) "        CMM - Communications
          641 .el .ie '\\$1'cmm' .ds c) "        CMM - Communications
          642 .el .ie '\\$1'CMP' .ds c) "        CMP - Computing
          643 .el .ie '\\$1'cmp' .ds c) "        CMP - Computing
          644 .el .ie '\\$1'ELC' .ds c) "        ELC - Electronics
          645 .el .ie '\\$1'elc' .ds c) "        ELC - Electronics
          646 .el .ie '\\$1'LFS' .ds c) "        LFS - Life Sciences
          647 .el .ie '\\$1'lfs' .ds c) "        LFS - Life Sciences
          648 .el .ie '\\$1'MAN' .ds c) "        MAN - Manufacturing
          649 .el .ie '\\$1'man' .ds c) "        MAN - Manufacturing
          650 .el .ie '\\$1'MAS' .ds c) "        MAS - Mathematics and Statistics
          651 .el .ie '\\$1'mas' .ds c) "        MAS - Mathematics and Statistics
          652 .el .ie '\\$1'MKT' .ds c) "        MKT - Marketing
          653 .el .ie '\\$1'mkt' .ds c) "        MKT - Marketing
          654 .el .ie '\\$1'PHY' .ds c) "        PHY - Physics
          655 .el .ie '\\$1'phy' .ds c) "        PHY - Physics
          656 .el .ie '\\$1'STD' .ds c) "        STD - Standards
          657 .el .ie '\\$1'std' .ds c) "        STD - Standards
          658 .el .ie '\\$1'PRP' .ds c) "        PRP - Product Realization Process
          659 .el .ie '\\$1'prp' .ds c) "        PRP - Product Realization Process
          660 .el .ie '\\$1'QLT' .ds c) "        QLT - Quality
          661 .el .if '\\$1'qlt' .ds c) "        QLT - Quality
          662 .ie '\\*(c)'' .tm WARNING: \\$1 - unknown mercury selection
          663 .el \{\
          664 .nr b \\n+b
          665 .if t .as a) \\*(c)
          666 .if n \{\
          667 .ie \\nb=3 \{\
          668 .rn a) b)
          669 .ds a) \\*(c) \}
          670 .el .as a) \\*(c)\}\}\}
          671 ..
          672 .de mE                                \" macro for mercury selections
          673 .ds a)
          674 .ds b)
          675 .ds c)
          676 '''\"                                        either 'y' or '1' arguments honored
          677 .nr q 0
          678 .if '\\$1'y' .nr q 1
          679 .if '\\$1'1' .nr q 1
          680 .if \\nq=1 \{\
          681 .as a) "        CHM - Chemistry and Materials
          682 .nr b \\n+b \}
          683 .nr q 0
          684 .if '\\$2'y' .nr q 1
          685 .if '\\$2'1' .nr q 1
          686 .if \\nq=1 \{\
          687 .as a) "        CMM - Communications
          688 .nr b \\n+b
          689 .if n \{\
          690 .if \\nb=2 .rn a) b) \} \}
          691 .nr q 0
          692 .if '\\$3'y' .nr q 1
          693 .if '\\$3'1' .nr q 1
          694 .if \\nq=1 \{\
          695 .as a) "        CMP - Computing
          696 .nr b \\n+b
          697 .if t \{\
          698 .if \\nb=3 .rn a) b) \}
          699 .if n \{\
          700 .if \\nb=2 .rn a) b) \} \}
          701 .nr q 0
          702 .if '\\$4'y' .nr q 1
          703 .if '\\$4'1' .nr q 1
          704 .if \\nq=1 \{\
          705 .as a) "        ELC - Electronics
          706 .nr b \\n+b
          707 .if t \{\
          708 .if \\nb=3 .rn a) b) \}
          709 .if n \{\
          710 .if \\nb=4 \{\
          711 .rn b) c)
          712 .rn a) b) \}
          713 .if \\nb=2 .rn a) b) \} \}
          714 .nr q 0
          715 .if '\\$5'y' .nr q 1
          716 .if '\\$5'1' .nr q 1
          717 .if \\nq=1 \{\
          718 .as a) "        LFS - Life Sciences
          719 .nr b \\n+b
          720 .if t \{\
          721 .if \\nb=3 .rn a) b) \}
          722 .if n \{\
          723 .if \\nb=4 \{\
          724 .rn b) c)
          725 .rn a) b) \}
          726 .if \\nb=2 .rn a) b) \} \}
          727 .nr q 0
          728 .if '\\$6'y' .nr q 1
          729 .if '\\$6'1' .nr q 1
          730 .if \\nq=1 \{\
          731 .as a) "        MAS - Mathematics and Statistics
          732 .nr b \\n+b
          733 .if t \{\
          734 .if \\nb=3 .rn a) b) \}
          735 .if n \{\
          736 .if \\nb=4 \{\
          737 .rn b) c)
          738 .rn a) b) \}
          739 .if \\nb=2 .rn a) b) \} \}
          740 .if \\nb<6 \{\
          741 .nr q 0
          742 .if '\\$7'y' .nr q 1
          743 .if '\\$7'1' .nr q 1
          744 .if \\nq=1 \{\
          745 .as a) "        PHY - Physics
          746 .nr b \\n+b
          747 .if t \{\
          748 .if \\nb=3 .rn a) b) \}
          749 .if n \{\
          750 .if \\nb=4 \{\
          751 .rn b) c)
          752 .rn a) b) \}
          753 .if \\nb=2 .rn a) b) \} \} \}
          754 .if t \{\
          755 .if \\nb=3 .rn b) a) \}
          756 .if n \{\
          757 .if \\nb=4 \{\
          758 .rn b) a)
          759 .rn c) b) \}
          760 .if \\nb=2 .rn b) a) \}
          761 .rm mE
          762 ..
          763 .de eD                                \" macro for earlier document number
          764 .if !'\\$1'' .ds e( \\$1
          765 .rm eD
          766 ..
          767 .de PM                                \" macro for proprietary marking
          768 .                                        \" arg 1 - RS or BR or IR or TR or R - restricted
          769 .if '\\$1'RS' .nr p 2
          770 .if '\\$1'BR' .nr p 2
          771 .if '\\$1'IR' .nr p 2
          772 .if '\\$1'TR' .nr p 2
          773 .if '\\$1'R' .nr p 2
          774 .rm PM
          775 ..
          776 .de gS                                \" macro for government security classified
          777 .nr r 1
          778 .rm gS
          779 ..
          780 .de rA                                \" macros for release to Lucent employees
          781 .                                        \" superceded by .fA macro 072087
          782 .nr ra 1
          783 .rm rA
          784 ..
          785 .de fA                                \" macro for future Lucent distribution
          786 .                                        \" arg 1 = 'y' or 'Y' or 'n' or 'N'
          787 .if '\\$1'y' .nr ra 1
          788 .if '\\$1'Y' .nr ra 1
          789 .if '\\$1'n' .nr ra 2
          790 .if '\\$1'N' .nr ra 2
          791 .rm fA
          792 ..
          793 .de sF                                \" macro for software-related document
          794 .nr s 1
          795 .rm sF
          796 ..
          797 .de cI
          798 .rm cI
          799 ..
          800 .de dL                                \" macro for calculating basic distribution length
          801 '''\"                                        call once only - from .cC, .cS, or .CS
          802 .if \\nd=0 \{\
          803 .nr d 1
          804 '''\"                                        calculate space considerations
          805 '''\"                                        basic distribution length - to be tailored - set e and h
          806 .if \\nr=0 .nr e \\ne+2
          807 .if \\nu<=3 .nr e \\ne+3
          808 .if \\nu<=6 .nr e \\ne+3
          809 .if \\nu<=9 .nr e \\ne+3
          810 .if (((\\n(oa>0)&(\\n(oa<=3)):((\\nn<=3)&(\\n(oa=0))) .nr e \\ne+3
          811 .if (((\\n(oa>0)&(\\n(oa<=6)):((\\nn<=6)&(\\n(oa=0))) .nr e \\ne+3
          812 .if (((\\n(oa>0)&(\\n(oa<=9)):((\\nn<=9)&(\\n(oa=0))) .nr e \\ne+3
          813 '''\"                                                nroff: if p=2, 1 extra line under Org Approval
          814 .if n .if \\np=2 .nr e \\ne-1
          815 '''\"                                                Future Lucent Distribution handling
          816 .if ((\\n(ra<2)&(\\np=2)) \{\
          817 .nr ra 2
          818 .tm WARNING: Future Lucent Distribution by ITDS - PROPRIETARY (RESTRICTED) document     MAY NOT BE RELEASED without appropriate approval for each request;                coversheet has been modified accordingly\}
          819 .if \\n(ra=0 \{\
          820 .tm WARNING: Future Lucent Distribution by ITDS: missing or invalid .fA macro;          indicate desired action by checking yes or no box on page 2 of coversheet;        next time include .fA macro with y or n argument \}
          821 '''\"                                                at least 3 lines for Future Lucent Distribution section (more for nroff negative and ra=0)
          822 '''\"                                        \" next 2 lines for yes/no boxes; remove when .fA macro becomes mandatory
          823 .if t .if \\n(ra=0 .nr e \\ne-4
          824 .if n .if \\n(ra=0 .nr e \\ne-5
          825 .if \\n(ra=1 .nr e \\ne-3
          826 .if t .if \\n(ra=2 .nr e \\ne-3
          827 .if n .if \\n(ra=2 .nr e \\ne-4
          828 '''\" increment number on next two lines to drop text lower on page 2
          829 .if t .nr e \\ne+23
          830 .if n .nr e \\ne+21 
          831 .if n \{\
          832 '''\"                                        if page 2 text changes, change values in next 3 lines
          833 .if \\ne<4 \{\
          834 .tm ERROR: insufficient space to format cover sheet; use "docsend -Taps" \
          835                   for APS-5, "docsend -Ti10" for imagen, or "docsend -TX97" -    \
          836                   or use stockroom cover sheet
          837 .ab        \}
          838 .ie \\ne<8 .nr e 0
          839 .el .nr e \\ne-7 \}
          840 .nr h \\ne
          841 .br \}
          842 .rm dL
          843 ..
          844 .de cC                                \" macro for handling complete copy addressees
          845 .dL
          846 .ta 2.0i
          847 .nf
          848 .br
          849 .ie \\ne>0 \{\
          850 .da cA
          851 .dt \\nev cD \}
          852 .el .da cO
          853 .rm cC
          854 ..
          855 .de cD                                \" macro for handling complete copy address overflow
          856 .ta 2.0i
          857 .br
          858 .da
          859 .da cO
          860 .nr lo 56-\\n(lt
          861 .dt \\n(lo zZ
          862 ..
          863 .de zZ                        \" macro for handling previously lost complete copy address overflow
          864 .                                \" provide 5 additional continuation pages (6 in all - approx 350 names)
          865 .ie "\\n(.z"cO" .fF "g" "cU"
          866 .el .ie "\\n(.z"cU" .fF "g1" "cV"
          867 .el .ie "\\n(.z"cV" .fF "g2" "cW"
          868 .el .ie "\\n(.z"cW" .fF "g3" "cX"
          869 .el .ie "\\n(.z"cX" .fF "g4" "cY"
          870 .el .if "\\n(.z"cY" .fF "g5" "cZ"
          871 ..
          872 .de fF                        \" aux macro for handling previously lost complete copy address overflow
          873 .ta 2.0i
          874 .br
          875 .da
          876 .ie \\n(dn>0 \{\
          877 .nr \\$1 (\\n(dn)/\\nl+4
          878 .da \\$2
          879 .nr lo 56-\\n(lt
          880 .dt \\n(lo zZ \}
          881 .el \{\
          882 .nr \\$1 0
          883 .da cZ \}
          884 ..
          885 .de cS                                \" macro for handling cover sheet only addresses
          886 .dL
          887 .ta 2.0i
          888 .nf
          889 .br
          890 .ie \\nh>0 \{\
          891 .da dA
          892 .dt \\nhv cT \}
          893 .el .da dO
          894 .rm cS
          895 ..
          896 .de cT                                \" macro for handling cover sheet address overflow
          897 .ta 2.0i
          898 .br
          899 .da
          900 .da dO
          901 .nr lo 56-\\n(lt
          902 .dt \\n(lo wW
          903 ..
          904 .de wW                        \" macro for handling previously lost cover sheet only address overflow
          905 .                                \" provide 5 additional continuation pages (6 in all - approx 350 names)
          906 .ie "\\n(.z"dO" .gG "i" "dU"
          907 .el .ie "\\n(.z"dU" .gG "i1" "dV"
          908 .el .ie "\\n(.z"dV" .gG "i2" "dW"
          909 .el .ie "\\n(.z"dW" .gG "i3" "dX"
          910 .el .ie "\\n(.z"dX" .gG "i4" "dY"
          911 .el .if "\\n(.z"dY" .gG "i5" "dZ"
          912 ..
          913 .de gG                        \" aux macro for handling previously lost cover sheet only address overflow
          914 .ta 2.0i
          915 .br
          916 .da
          917 .ie \\n(dn>0 \{\
          918 .nr \\$1 (\\n(dn)/\\nl+4
          919 .da \\$2
          920 .nr lo 56-\\n(lt
          921 .dt \\n(lo wW \}
          922 .el \{\
          923 .nr \\$1 0
          924 .da dZ \}
          925 ..
          926 .de cE                                \" macro for ending all distribution diversions
          927 .br
          928 .ie "\\n(.z"cA" \{\
          929 .da
          930 .rm cD \}
          931 .el .ie "\\n(.z"cO" .eE "g" "cD"
          932 .el .ie "\\n(.z"cU" .eE "g1" "cD"
          933 .el .ie "\\n(.z"cV" .eE "g2" "cD"
          934 .el .ie "\\n(.z"cW" .eE "g3" "cD"
          935 .el .ie "\\n(.z"cX" .eE "g4" "cD"
          936 .el .ie "\\n(.z"cY" .eE "g5" "cD"
          937 .el .ie "\\n(.z"cZ" \{\
          938 .da
          939 .rm cD \}
          940 .el .ie "\\n(.z"dA" \{\
          941 .da
          942 .rm cT \}
          943 .el .ie "\\n(.z"dO" .eE "i" "cT"
          944 .el .ie "\\n(.z"dU" .eE "i1" "cT"
          945 .el .ie "\\n(.z"dV" .eE "i2" "cT"
          946 .el .ie "\\n(.z"dW" .eE "i3" "cT"
          947 .el .ie "\\n(.z"dX" .eE "i4" "cT"
          948 .el .ie "\\n(.z"dY" .eE "i5" "cT"
          949 .el .if "\\n(.z"dZ" \{\
          950 .da
          951 .rm cT \}
          952 ..
          953 .de eE                        \" aux macro for ending all distribution diversions
          954 .da
          955 .ie \\n(dn>0 .nr \\$1 (\\n(dn)/\\nl+4
          956 .el .nr \\$1 0
          957 .rm \\$2
          958 ..
          959 '''\"
          960 '''\" macros to help format document
          961 '''\"
          962 .deB
          963 .ie\\n(.$ .nr ;G \\n(.f
          964 .el.ft 3
          965 .if\\n(.$ .if !\\n(.$-2 \&\f3\\$1\fP\\$2
          966 .if\\n(.$-2 \{.ds }i
          967 .if\\n(.f2 .ds }i \^
          968 .ds}I \&\f3\\$1\fP\\$2\\*(}i
          969 'br\}
          970 .if\\n(.$-2 .if !\\n(.$-4 \\*(}I\f3\\$3\fP\\$4
          971 .if\\n(.$-4 .if !\\n(.$-6 \\*(}I\f3\\$3\fP\\$4\\*(}i\f3\\$5\fP\\$6
          972 .if\\n(.$ .ft \\n(;G
          973 ..
          974 .deI
          975 .ie\\n(.$ .nr ;G \\n(.f
          976 .el.ft 2
          977 .if\\n(.$ .if !\\n(.$-1 \&\f2\\$1
          978 .if\\n(.$-1 \{.ds }i \^
          979 .if\\n(.f2 .ds }i
          980 .ds}I \&
          981 .if\w\\$1 .ds }I \&\f2\\$1\fP\\*(}i
          982 'br\}
          983 .if\\n(.$-1 .if !\\n(.$-3 \\*(}I\\$2\f2\\$3
          984 .if\\n(.$-3 .if !\\n(.$-5 \\*(}I\\$2\f2\\$3\fP\\*(}i\\$4\f2\\$5
          985 .if\\n(.$-5 \\*(}I\\$2\f2\\$3\fP\\*(}i\\$4\f2\\$5\fP\\*(}i\\$6
          986 .if\\n(.$ .ft \\n(;G
          987 ..
          988 .deRI
          989 .nr;G \\n(.f
          990 .}S 1 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
          991 ..
          992 .deRB
          993 .nr;G \\n(.f
          994 .}S 1 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
          995 ..
          996 .deIR
          997 .nr;G \\n(.f
          998 .}S 2 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
          999 ..
         1000 .deIB
         1001 .nr;G \\n(.f
         1002 .}S 2 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
         1003 ..
         1004 .deBR
         1005 .nr;G \\n(.f
         1006 .}S 3 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
         1007 ..
         1008 .deBI
         1009 .nr;G \\n(.f
         1010 .}S 3 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
         1011 ..
         1012 .de}S
         1013 .ds}i
         1014 .if\\$12 .if !\\$5 .ds }i\^
         1015 .ie!\\$4 .}S \\$2 \\$1 "\\$3\f\\$1\\$4\\*(}i" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
         1016 .el\\$3
         1017 .ft\\n(;G
         1018 ..
         1019 .deR
         1020 .ft1
         1021 .ul0
         1022 ..
         1023 .de S                                \" set point size and vertical spacing
         1024 .ie \\n(.$=0 \{\
         1025 .ps
         1026 .if t .vs \}
         1027 .el \{\
         1028 .ie \w\(ts\\$1\(ts \{\
         1029 .ie 0\\$1-99 .nr ts \\n(ps
         1030 .el .nr ts \\$1 \}
         1031 .el .nr ts \\n(.s 
         1032 .ps \\n(ts
         1033 .if \\n(.$=1 .if t \{\
         1034 .nr tv \\n(.s+2
         1035 .vs \\n(tvp \}
         1036 .if \\n(.$>1 .if t \{\
         1037 .ie \w\(ts\\$2\(ts \{\
         1038 .ie 0\\$2-99 .nr tv \\n(.s+2
         1039 .el .nr tv \\$2 \}
         1040 .el .nr tv \\n(.v 
         1041 .vs \\n(tvp \} \}
         1042 ..
         1043 .de sP                                \" space 1 blank line (vertical space)
         1044 .if n .sp 1
         1045 .if t .sp 0.5
         1046 ..
         1047 .de P                                \" paragraph - (default - left-adjusted)
         1048 .                                        \" arg #1=0 - left-adjusted
         1049 .                                        \" arg #1=1 - indent standard amount
         1050 .ne 1.1
         1051 .sP
         1052 .if (\\n(.$>0)&(0\\$1=1) .ti +\\n(sin
         1053 ..
         1054 .de HC                                \" set hyphenation indicator
         1055 .ev0
         1056 .hc\\$1
         1057 .ev
         1058 .ev1
         1059 .hc\\$1
         1060 .ev
         1061 .ev2
         1062 .hc\\$1
         1063 .ev
         1064 ..
         1065 .de SA                                \" macro for right-adjustment
         1066 .if \\n(.$ \{\
         1067 .if \\$1-1 .tm WARNING: SA: bad arg:\\$1
         1068 .nr :h 0\\$1 \}
         1069 'na
         1070 .if \\n(:h 'ad
         1071 ..
         1072 .de iN                                \" macro for font and size re-initialization
         1073 .ft 1
         1074 .ps \\n(ps
         1075 .if t .vs \\n(vsp
         1076 ..
         1077 .de DS                                \" macro for display start
         1078 .if \\n(ds>0 \{\
         1079 .tm Display within display - illegal.
         1080 .DE \}
         1081 .if \\n(fs>0 \{\
         1082 .tm Display within footnote - illegal.
         1083 .FE \}
         1084 .nr in \\n(.i
         1085 .nr fi \\n(.u
         1086 .br
         1087 .ev 2
         1088 .br
         1089 .ll 7.0i
         1090 .nf
         1091 .in \\n(inu
         1092 .sP
         1093 .if \\n(.$>1 \{\
         1094 .if '\\$2'F' .nr dt 4
         1095 .if '\\$2'1' .nr dt 4
         1096 .if \\n(dt=4 .fi \}
         1097 .if \\n(.$>2 .ll-0\\$3
         1098 .nr dt 0
         1099 .nr bd 0
         1100 .if '\\$1'I' .nr dt 1
         1101 .if '\\$1'1' .nr dt 1
         1102 .if \\n(dt=1 .in \\n(sin
         1103 .if '\\$1'C' .nr dt 2
         1104 .if '\\$1'2' .nr dt 2
         1105 .if \\n(dt=2 .ce 1000
         1106 .if '\\$1'CB' .nr dt 3
         1107 .if '\\$1'3' .nr dt 3
         1108 .if \\n(dt=3 \{\
         1109 .nr bd 1
         1110 .di dS \}
         1111 .nr ds 1
         1112 ..
         1113 .de DE                                \" macro for display end
         1114 .br
         1115 .ie \\n(ds=0 .tm DE: no active DS
         1116 .el \{\
         1117 .ce 0
         1118 .if \\n(bd>0 \{\
         1119 .di
         1120 .if \\n(dl>\\n(bd .nr bd \\n(dl
         1121 .if \\n(bd<\\n(.l .in (\\n(.lu-\\n(bdu)/2u
         1122 .nr dt \\n(.l-\\n(.i
         1123 .ta \\n(dtuR
         1124 .dS
         1125 .br \}
         1126 .nr bd 0
         1127 .nr ds 0
         1128 .nr dt 0
         1129 .ev
         1130 .in \\n(inu
         1131 .sP
         1132 .ie \\n(fi=0 .nf
         1133 .el .fi \}
         1134 ..
         1135 .de EQ                                \" macro for equation start
         1136 .ds e) \\$1
         1137 .di eQ
         1138 ..
         1139 .de EN                                \" macro for equation end
         1140 \!.br
         1141 .br
         1142 .di
         1143 .lt \\n(.lu
         1144 .pc
         1145 .if \w\(ts\\*(10\\*(e)\(ts \{\
         1146 .ie \\n(bd>0 \{\
         1147 .if \\n(bd<\w\(ts\\*(10\(ts .nr bd \w\(ts\\*(10\(ts
         1148 \!\\*(10\h'\\\\n(.lu-\w\(ts\\*(10\\*(e)u\(ts-\\\\n(.iu'\\*(e)
         1149 .br \}
         1150 .el .ie \\n(dt=2 .tl \(ts\(ts\\*(10\(ts\\*(e)\(ts
         1151 .el .ie \\n(dt=1 .tl \(ts\h'\\n(sin'\\*(10\(ts\(ts\\*(e)\(ts
         1152 .el .if \\n(dt=0 .tl \(ts\\*(10\(ts\(ts\\*(e)\(ts
         1153 'br\}
         1154 .pc%
         1155 .lt
         1156 ..
         1157 .de VL                                \" macro for variable-item lists
         1158 .if \\n(ls>0 \{\
         1159 .tm VL: lists may not be nested
         1160 .LE \}
         1161 .ie \\n(.$<1 .tm WARNING: VL: text-indent not defined
         1162 .el \{\
         1163 .nr in \\n(.i
         1164 .nr :b \\n(.iu+0\\$1n
         1165 .nr :c \\n(.iu+0\\$2n
         1166 .ds y) \&
         1167 .ie \\n(.$=3 .nr :d 1
         1168 .el .nr :d 0
         1169 .if \\n(:d=1 .sP
         1170 .fi
         1171 .nr ls +1
         1172 .br \}
         1173 ..
         1174 .de ML                                \" macro for marked list
         1175 .if \\n(ls>0 \{\
         1176 .tm ML: lists may not be nexted
         1177 .LE \}
         1178 .ie \\n(.$<1 .tm ML: mark not defined
         1179 .el \{\
         1180 .nr in \\n(.i
         1181 .ds y) \\$1
         1182 .ie (\\n(.$>1)&(\\$2>0) .nr :b \\n(.iu+0\\$2n
         1183 .el .nr :b \\n(.iu+\w\(ts\\*(y)\(tsu+1n
         1184 .nr :c \\n(:bu-1n-\w\(ts\\*(y)\(tsu
         1185 .ie \\n(.$=3 .nr :d 1
         1186 .el .nr :d 0
         1187 .if \\n(:d=1 .sP
         1188 .fi
         1189 .in \\n(:bu
         1190 .nr ls +1
         1191 .br \}
         1192 ..
         1193 .de BL                                \" macro for bullet list - using marked list
         1194 .ie \\n(.$=2 .ML \\(bu \\$1 \\$2
         1195 .el .ie \\n(.$=1 .ML \\(bu \\$1
         1196 .el .ML \\(bu
         1197 ..
         1198 .de LI                                \" macro for list item
         1199 .ie \\n(ls=0 .tm LI: no active lists
         1200 .el \{\
         1201 .ds z) \\*(y)
         1202 .if \\n(.$=1 .ds z) \\$1
         1203 .if \\n(.$=2 .ds z) \\$1\&\\*(z)
         1204 .if \\n(:d=0 .sP
         1205 .in \\n(:bu
         1206 .ti \\n(:cu
         1207 .nr :e \w\(ts\\*(z)\(ts
         1208 \\*(z)\h'\\n(:bu-\\n(:cu-\\n(:eu'\c \}
         1209 ..
         1210 .de LE                                \" macro for list end
         1211 .ie \\n(ls=0 .tm LE: no active list
         1212 .el \{\
         1213 .br
         1214 .nr ls -1
         1215 'in \\n(inu
         1216 'ti \\n(inu
         1217 .if \\n(.$>0 .sP \}
         1218 ..
         1219 .de hD                                \" header macro
         1220 '''\" page offset 0.6i for XEROX & DASI; 0.25i for all other devices
         1221 '''\" cut marks for APS only
         1222 .po 0.25i
         1223 .if \\n(dv=3 .po 0.6i
         1224 .if n .po 0.6i
         1225 .if \\n(dv=1 .tl '\(rn''\(rn'
         1226 .if t 'sp|0.2i
         1227 .if n 'sp|1
         1228 ..
         1229 .de fO                                \" footer macro
         1230 .if t .pl 11.0i
         1231 .if n .pl \\n(lp
         1232 'bp
         1233 ..
         1234 .de yY                                \" macro for abstract overflow - line -1
         1235 .aT
         1236 .rm yY
         1237 ..
         1238 .de aT                                \" macro for abstract overflow trap
         1239 .                                        \" register a counts overflow pages
         1240 .if \\na>0 \{\
         1241 .ft 2
         1242 .ce
         1243 (continued)
         1244 .ft 1 \}
         1245 .if t .pl 11.0i
         1246 .if n .pl \\n(lp
         1247 .nr a \\n+a
         1248 .rn aT xX
         1249 'bp
         1250 .rn xX aT
         1251 .if n .wh -2 aT
         1252 .if t .wh -0.55i aT
         1253 .cH
         1254 .tH
         1255 .if t 'sp 0.05i
         1256 .ce
         1257 .ft 3
         1258 Abstract (continued)
         1259 .ft 1
         1260 .in 0.2i
         1261 'sp 1
         1262 ..
         1263 .de tK                                \" macro for thick lines
         1264 .ps 24
         1265 \l'7.5i'
         1266 .ps
         1267 ..
         1268 .de bE                                \" macro for empty box
         1269 .ps 12
         1270 .if t \\(sq
         1271 .if n [ ]
         1272 .ps
         1273 ..
         1274 .de bX                                \" macro for box with x
         1275 .ps 12
         1276 .if t \\o'\(mu\(sq'
         1277 .if n [x]
         1278 .ps
         1279 ..
         1280 .de tH                                \" macro for Title heading and text
         1281 .                                        \" called from aT and eP and CS
         1282 .tK
         1283 .if t 'sp 0.05i
         1284 '''\"                                        mark t - Title heading
         1285 .mk t
         1286 .ft 3
         1287 Title:
         1288 .ft 1
         1289 'sp|\\ntu
         1290 .in 0.7i
         1291 .tI
         1292 .in 0
         1293 .ta 0.5i
         1294 .nr q \\no/\\nl
         1295 .ie \\nq>2 'sp|\\ntu+\\nq
         1296 .el 'sp|\\ntu+2
         1297 .tK
         1298 .                                        \" m1 - mark end of title section - save
         1299 .mk m1
         1300 ..
         1301 .de cH                                \" macro for abstract or distribution list continuation header
         1302 .                                        \" called from aT and eP
         1303 .                                        \" calculate this page number
         1304 .nr np \\n(np+1
         1305 .nf
         1306 .in 0
         1307 .ft 3
         1308 .ta 7.5iR
         1309 .nr tc \\n(tp
         1310 .nr nc \\n(np
         1311         \\*(n)\f2 (page \\n(nc of \\n(tc)
         1312 .ft1
         1313 .if t 'sp 0.1i
         1314 ..
         1315 .de dH                                \" macro for distribution list headers
         1316 .                                        \" called from cP and CS
         1317 .ft 3
         1318 .ta 1.0i 4.75i
         1319         \\$1        \\$2
         1320 .if t .sp 0.05i
         1321 .ft 1
         1322 .ta 0.5i 1.0i
         1323 ..
         1324 .de oH                        \" macro for final overflow distribution list headers
         1325 .                                \" called from cP
         1326 .if \\$1>4 .if \\$2>4 .dH "Complete Copy (continued)" "Cover Sheet Only (continued)"
         1327 .if \\$1>4 .if !\\$2>4 .dH "Complete Copy (continued)" ""
         1328 .if !\\$1>4 .if \\$2>4 .dH "" "Cover Sheet Only (continued)"
         1329 ..
         1330 .de eP                                \" macro for ejecting distribution continuation page
         1331 .                                        \" called from cP
         1332 'bp
         1333 .wh 0 hD
         1334 '''\"                                        put out continuation page header & title section
         1335 .cH
         1336 .tH
         1337 ..
         1338 .de cP                                \" macro for continuation (distribution list) page
         1339 .                                        \" called from CS
         1340 .                                        \" if any distribution overflow will fit before next trap, set v=2
         1341 .ie \\nv<=\\n(.t .nr v 1
         1342 .el .nr v 0
         1343 .if \\nv=1 .if \\nw<=\\n(.t .nr v 2
         1344 .                                        \" check whether continuation page needs to be ejected
         1345 .in 0
         1346 .if \\nc=1 \{\
         1347 .                                                \" - if no abstract overflow
         1348 .if \\na=0 .eP
         1349 .if \\na>0 \{\
         1350 .                                                \" - or if abstract overflow - but not enough room for list overflow
         1351 .ie \\nv<2 .eP
         1352 .                                                \" just a thick line if abstract overflow AND enough room for list
         1353 .el .tK \}
         1354 .ie \\ne=0 \{\
         1355 .if \\ng>4 .if \\ni>4 .dH "Complete Copy" "Cover Sheet Only"
         1356 .if \\ng>4 .if !\\ni>4 .dH "Complete Copy" ""
         1357 .if !\\ng>4 .if \\ni>4 .dH "" "Cover Sheet Only" \}
         1358 .el .oH \\ng \\ni
         1359 .mk z
         1360 .nr q \\n(.t/\\nl
         1361 '''\"                                        put out complete copy list overflow
         1362 .in 0.2i
         1363 .cO
         1364 .in 0
         1365 .rm cO
         1366 .if !\\n(g1=0 \{\
         1367 .ft 2
         1368 .ti 1.25i
         1369 (continued)
         1370 .ft 1 \}
         1371 .mk x
         1372 .sp|\\nzu
         1373 .in 4.0i
         1374 '''\"                                        put out cover sheet list overflow
         1375 .dO
         1376 .rm dO
         1377 .if !\\n(i1=0 \{\
         1378 .ft 2
         1379 .ti 5.00i
         1380 (continued)
         1381 .ft 1 \}
         1382 .mk y
         1383 .if ((\\n(g1>0):(\\n(i1>0)) .dP "\\n(g1" "\\n(i1" "cU" "\\n(g2" "dU" "\\n(i2"
         1384 .if ((\\n(g2>0):(\\n(i2>0)) .dP "\\n(g2" "\\n(i2" "cV" "\\n(g3" "dV" "\\n(i3"
         1385 .if ((\\n(g3>0):(\\n(i3>0)) .dP "\\n(g3" "\\n(i3" "cW" "\\n(g4" "dW" "\\n(i4"
         1386 .if ((\\n(g4>0):(\\n(i4>0)) .dP "\\n(g4" "\\n(i4" "cX" "\\n(g5" "dX" "\\n(i5"
         1387 .if ((\\n(g5>0):(\\n(i5>0)) \{\
         1388 .eP
         1389 .oH \\n(g5 \\n(i5
         1390 .mk z
         1391 .in 0.2i
         1392 .cY
         1393 .in 0
         1394 .rm cY
         1395 .mk x
         1396 .sp|\\nzu
         1397 .in 4.0i
         1398 .dY
         1399 .rm dY
         1400 .mk y \}
         1401 .in 0
         1402 .if \\nx-\\ny .sp|\\nxu
         1403 .tK \}
         1404 ..
         1405 .de dP                                        \" macro to handle one continuation page
         1406 .eP
         1407 .oH \\$1 \\$2
         1408 .mk z
         1409 .in 0.2i
         1410 .\\$3
         1411 .in 0
         1412 .rm \\$3
         1413 .if !\\$4=0 \{\
         1414 .ft 2
         1415 .ti 1.25i
         1416 (continued)
         1417 .ft 1 \}
         1418 .mk x
         1419 .sp|\\nzu
         1420 .in 4.0i
         1421 .\\$5
         1422 .rm \\$5
         1423 .if !\\$6=0 \{\
         1424 .ft 2
         1425 .ti 5.00i
         1426 (continued)
         1427 .ft 1 \}
         1428 .mk y
         1429 ..
         1430 .de tP                                        \" macro to compute total pages and diversion lengths
         1431 '''\"                                        calculate vert. units needed to handle cc overflow (if any)
         1432 '''\"                                        called from CS macro
         1433 .ie \\ng>4 .nr v (\\ng)*\\nl
         1434 .el .nr v 0
         1435 '''\"                                        also for cs overflow (if any)
         1436 .ie \\ni>4 .nr w (\\ni)*\\nl
         1437 .el .nr w 0
         1438 .ie \\nv>\\nw .nr j \\nv
         1439 .el .nr j \\nw
         1440 .                                        \" set c=1 if either g or i >0
         1441 .if \\ng>4 .nr c 1
         1442 .if \\ni>4 .nr c 1
         1443 .                                        \" calculate total pages in job (default 2)
         1444 .nr tp 2
         1445 .                                        \" a1 - page 1 portion abstract (units)
         1446 .nr a1 \\nyu-\\nxu-1v
         1447 .ie \\n(la>\\n(a1 \{\
         1448 .                                        \" ar - remainder abstract (units)
         1449 .nr ar \\n(la-\\n(a1
         1450 .nr tp \\n(tp+1
         1451 .                                        \" a2 - available continuation page space
         1452 .                                                \" m1 is mark after thick line following title/date
         1453 .                                                \" 2v are lines for Abstract (continued) and one blank line
         1454 .if t .nr a2 11.0i-\\n(m1-3v
         1455 .if n .nr a2 \\n(lpv-\\n(m1-3v
         1456 .t1 \}
         1457 .el .if \\nc>0 .nr tp \\n(tp+1
         1458 .if ((\\n(g1>4):(\\n(i1>4)) .nr tp \\n(tp+1
         1459 .if ((\\n(g2>4):(\\n(i2>4)) .nr tp \\n(tp+1
         1460 .if ((\\n(g3>4):(\\n(i3>4)) .nr tp \\n(tp+1
         1461 .if ((\\n(g4>4):(\\n(i4>4)) .nr tp \\n(tp+1
         1462 .if ((\\n(g5>4):(\\n(i5>4)) .nr tp \\n(tp+1
         1463 ..
         1464 .de t1
         1465 .ie \\n(ar>\\n(a2 \{\
         1466 .nr ar \\n(ar-\\n(a2
         1467 .nr tp \\n(tp+1
         1468 .t1 \}
         1469 .el .if \\n(ar+\\nj>\\n(a2 .nr tp \\n(tp+1
         1470 ..
         1471 '''\"
         1472 '''\" main macro to handle output of cover sheet
         1473 '''\"
         1474 .de CS
         1475 .if \\nu=0 \{\
         1476 .tm ERROR: author must be supplied
         1477 .ab        \}
         1478 .if \\no=0 \{\
         1479 .tm ERROR: document title must be supplied
         1480 .ab        \}
         1481 .if \\nm=0 \{\
         1482 .tm ERROR: memorandum type undefined or unknown
         1483 .ab        \}
         1484 .if ((\\nm=1)&(\\np=1)) .if \\nb=0 \{\
         1485 .tm ERROR: must have at least one mercury classification with technical memorandum
         1486 .ab \}
         1487 .if \\nn=0 \{\
         1488 .tm ERROR: document number must be supplied
         1489 .ab        \}
         1490 .if \\n(la=0 .if \\nm<3 \{\
         1491 .tm ERROR: abstract must be supplied for technical and internal memoranda
         1492 .ab        \}
         1493 .if \\nb>3 \{\
         1494 .tm ERROR: no more than 3 mercury classifications may be selected
         1495 .ab        \}
         1496 .if \\n(fc=0 \{\
         1497 .if \\n(en<3 \{\
         1498 .tm ERROR: filing case must be supplied
         1499 .ab        \}
         1500 .if \\n(en=3 \{\
         1501 .tm ERROR: full date must be supplied
         1502 .ab        \}\}
         1503 .if \\n(wp=0 \{\
         1504 .tm ERROR: work project number must be supplied
         1505 .ab        \}
         1506 .dL
         1507 .ll 7.5i
         1508 .iN
         1509 .if \\n(nl .bp
         1510 .in 0
         1511 .hD
         1512 '''\"                                        put out 1 blank line where timestamp used to be
         1513 .sp1
         1514 .if t .sp 0.05i
         1515 .nf
         1516 .ps 16
         1517 .ft 3
         1518 .                                        \" put out page 1 heading
         1519 '''\"                                        if Lucent logo not defined, put out Lucent string
         1520 '''\"                                           also put out memorandum type
         1521 .ie ((\\n(dv=5)) \{\
         1522 .ie '\f(AT'' .nr lg 0
         1523 .el .nr lg 1 \}
         1524 .el \{\
         1525 .ie '\*(lG'' .nr lg 0
         1526 .el .nr lg 1 \}
         1527 .ie ((\\n(lg=0)) \{\
         1528 .ta 7.5iR
         1529 \\*(e2        Document Cover Sheet
         1530 .wh 0 hD
         1531 .if t .sp 0.1i
         1532         \\*(t(\}
         1533 .el \{\
         1534 .ta 7.5iR
         1535         Document Cover Sheet
         1536 .wh 0 hD
         1537 .if t .sp 0.1i
         1538 .if \\n(dv=5 \{\
         1539 .ft P
         1540 .nr v \n(.f
         1541 .ft P \}
         1542 .ta 0.25i 7.5iR
         1543         \\*(lG        \\*(t(\}
         1544 .ft 1
         1545 .ps 10
         1546 .tH
         1547 .if t .sp 0.05i
         1548 .ft 3
         1549 .ie \\nu>1 .ds u) s
         1550 .el .ds u)
         1551 .if !\\n(en=3 \{\
         1552 .ta 0.5i 2.75i 4.0i 4.7i
         1553         Author\\*(u)        Location        Ext.        Company (if other than \\*(e1)
         1554 .br \}
         1555 .if \\n(en=3 \{\
         1556 .ta 0.5i 2.75i 4.0i 5.0i
         1557         Author\\*(u)        Location        Ext.             Company (if other than
         1558 .if t                                 \\*(e3)
         1559 .if n                                     \\*(e3)
         1560 .br \}
         1561 .ft 1
         1562 '''\"                                        output author info
         1563 .aV
         1564 .if !'\\*(r('0' \{\
         1565 .ta 0.3i 2.6i
         1566         \\*(r(        (Responsible \\*(e1 Person)\}
         1567 .rm aV AU
         1568 .tK
         1569 .if t .sp 0.05i
         1570 .ft 3
         1571 .ie \\nn>1 .ds v) s
         1572 .el .ds v)
         1573 .ie \\n(fc>1 .ds w) s
         1574 .el .ds w)
         1575 .ie \\n(wp>1 .ds x) s
         1576 .el .ds x)
         1577 .ta 1.0i 3.3i 5.55i
         1578 .if \\n(en=1 \{\
         1579         Document No\\*(v).        Filing Case No\\*(w).        Project No\\*(x).
         1580 .br \}
         1581 .if \\n(en=2 \{\
         1582         Document No\\*(v).        Filing Case No\\*(w).        Project No\\*(x).
         1583 .br \}
         1584 .if \\n(en=3 \{\
         1585 .if t .ta 1.0i 3.4i 4.7i
         1586 .if n .ta 1.0i 3.4i 4.5i
         1587         Document No\\*(v).        Full Date        Time Charge (or Project Code) No\\*(x).
         1588 .br \}
         1589 .if \\n(en=4 \{\
         1590 .if t .ta 1.0i 3.4i 5.2i
         1591 .if n .ta 1.0i 3.4i 5.0i
         1592         Document No\\*(v).        Filing Case No\\*(w).        Time Charge (or Case) No\\*(x).
         1593 .br \}
         1594 .ft 1
         1595 .if t .sp 0.05i
         1596 .mk t
         1597 '''\"                                        output document number
         1598 .dM
         1599 .rm dN dM
         1600 .mk x
         1601 .sp|\\ntu
         1602 '''\"                                        output filing case info (or full date)
         1603 .fB
         1604 .rm fB fC
         1605 .mk y
         1606 .sp|\\ntu
         1607 '''\"                                        output work project number info
         1608 .wO
         1609 .rm wO wP
         1610 .mk z
         1611 .if \\ny>\\nx .nr x \\ny
         1612 .if \\nz>\\nx .nr x \\nz
         1613 .sp|\\nxu
         1614 .tK
         1615 '''\"                                        output keywords if they exist
         1616 .if \\nk>0 \{\
         1617 .ft 3
         1618 Keywords:
         1619 .ft 1
         1620 .if t .sp 0.05i
         1621 .in 0.2i
         1622 .fi
         1623 \\*(k)
         1624 .nf
         1625 .in 0
         1626 .tK \}
         1627 '''\"                                        output mercury info if it exists
         1628 .if \\nb>0 \{\
         1629 .ft 3
         1630 MERCURY Announcement Bulletin Sections
         1631 .ft 1
         1632 .if t \{\
         1633 .sp 0.05i
         1634 .ta 0.6i 3.1i 5.6i
         1635 .ps 8
         1636 \\*(a)
         1637 .ps \}
         1638 .if n \{\
         1639 .ta 0.5i 4.1i
         1640 .if \\nb>2 \\*(b)
         1641 \\*(a)
         1642 .ps \}
         1643 .tK \}
         1644 .ps 10
         1645 .ft 3
         1646 Abstract
         1647 .ft 1
         1648 .mk x
         1649 .if t \{\
         1650 .nr b1 \\nx/\\n(.v+1
         1651 .nr b2 (\\n(b1*\\n(.v)-\\nx
         1652 .sp \\n(b2u
         1653 .mk x \}
         1654 '''\" calculate position (19v includes 2v to print version at bottom of page)
         1655 '''\"        followed by timestamp and 1v line
         1656 .nr y \\n(lpv-19v-\\n(fnu
         1657 .sp|\\nyu
         1658 .sp -1
         1659 .tP
         1660 '''\"                                        handle abstract page 1 continuation
         1661 .ie \\n(la>\\n(a1 \{\
         1662 .ce
         1663 .ft2
         1664 (continued on page iii)
         1665 .ft1
         1666 .br \}
         1667 .el .sp1
         1668 .tK
         1669 .ps 8
         1670 .if t .vs 10p
         1671 .nr z 0
         1672 .if '\\$1'' .nr z 1
         1673 .if !'\\$2'' .nr z 1
         1674 .if !'\\$3'' .nr z 1
         1675 .if !'\\$4'' .nr z 1
         1676 .if !'\\$5'' .nr z 1
         1677 .if !'\\$6'' .nr z 1
         1678 .if \\nz=1 \{\
         1679 .tm WARNING: provide total document page count in first argument of .CS macro;       all other arguments ignored; do NOT include coversheet pages in this count. \}
         1680 .nr z 0
         1681 .if !'\\$1'' .nr z \\nz+\\$1
         1682 .nr z \\nz+\\n(tp
         1683 .tm Total Pages = \\nz
         1684 .ie '\*(.T'X97.tim10p'\{\
         1685 Total Pages (including document cover sheet):  \\s+2\\nz\\s-2
         1686 .if !\\*(e('0' \{\
         1687 Supersedes or amends document number \\*(e(. \}
         1688 .el .sp1 \}
         1689 .el \{\
         1690 \f3Total Pages\f1 (including document cover sheet):  \\s+2\\nz\\s-2
         1691 .if !'\\*(e('0' \{\
         1692 \f3Supersedes\f1 or amends document number \\*(e(. \}
         1693 .el .sp1 \}
         1694 .ps
         1695 .if t .vs
         1696 .if \\n(fn>0 \{\
         1697 .br
         1698 .nf
         1699 .fN
         1700 .rm fN
         1701 .br \}
         1702 .mk z
         1703 .if t .sp 0.67i
         1704 .if n .sp 4
         1705 '''\"                                        output proprietary notice if it exists
         1706 .if \\np=1 \{\
         1707 .ds o) LUCENT \- PROPRIETARY
         1708 .ds p) "Use pursuant to Company Instructions
         1709 .ds q)
         1710 .ds r)
         1711 .ft 2
         1712 .if n .ti 14
         1713 .if t .ti 1.65i
         1714 \\*(o)
         1715 .ft 1
         1716 .if n .ti 5
         1717 .if t .ti 1.25i
         1718 \\*(p) \}
         1719 .if \\np=2 \{\
         1720 .ds o) LUCENT \- PROPRIETARY (RESTRICTED)
         1721 .ds p) "Solely for authorized persons having a need to know
         1722 .ds q) "pursuant to Company Instructions
         1723 .ft 2
         1724 .if n .ti 10
         1725 .if t .ti 1.25i
         1726 \\*(o)
         1727 .ft 1
         1728 .if n .ti 0
         1729 .if t .ti 0.875i
         1730 \\*(p)
         1731 .if n .ti 10
         1732 .if t .ti 1.375i
         1733 \\*(q) \}
         1734 '''\"                                        output csmacros version
         1735 .sp |\\nzu+11v
         1736 .ta 7.5iR
         1737 \\s8\\*(ve\\s0
         1738 '''\"                                        put out timestamp (if non-empty) and company identifier
         1739 .ie !'\\*(s)'0' \{\
         1740 \\s8\\*(s)\\s0        \\*(e3 \}
         1741 .el "        \\*(e3
         1742 .sp|\\nzu
         1743 .sp1
         1744 .ft 3
         1745 .ti 5.25i
         1746 \\*(m)
         1747 .ft 1
         1748 .sp|\\nxu
         1749 .in 0.2i
         1750 .nf
         1751 '''\"                                        abstract
         1752 .if \\n(la>\\n(a1 \{\
         1753 .if n .wh -1 yY
         1754 .if t .wh -0.25i yY \}
         1755 .pl \\nyu
         1756 .ta 0.5i 1.0i 1.5i 2.0i 2.5i
         1757 '''\"                                        output the abstract
         1758 .aS
         1759 .rm aS
         1760 .if !\\n(la>\\n(a1 .sp-1
         1761 .rn aT xX
         1762 .if t .wh -0.25i fO
         1763 .if n .wh -1 fO
         1764 '''\"                                        output continuation pages
         1765 .cP
         1766 'bp
         1767 .ft 1
         1768 .in 0
         1769 .wh 0 hD
         1770 .nf
         1771 .ft 3
         1772 .ta 7.5iR
         1773 .nr tc \\n(tp
         1774 Initial Distribution Specifications        \\*(n)\f2 (page ii of \\n(tc)\f3
         1775 .ft 1
         1776 .tK
         1777 .if \\ne>0 \{\
         1778 .dH "     Complete Copy" "     Cover Sheet Only"
         1779 .mk z
         1780 '''\"                                        put out complete copy list
         1781 .in 0.2i
         1782 .cA
         1783 .in 0
         1784 .rm cA
         1785 .if !\\ng=0 \{\
         1786 .ft 2
         1787 .ti 1.25i
         1788 (continued)
         1789 .ft 1 \}
         1790 .sp|\\nzu
         1791 .in 4.0i
         1792 '''\"                                        put out cover sheet list
         1793 .dA
         1794 .rm dA
         1795 .if !\\ni=0 \{\
         1796 .ft 2
         1797 .ti 5.00i
         1798 (continued)
         1799 .ft 1 \}
         1800 .in 0
         1801 '''\"                                        starter space value - then tailor according to basic distribution length
         1802 .sp|5
         1803 .sp \\ne
         1804 .tK \}
         1805 '''\"                                        put out security section if selected
         1806 .if \\nr=1 \{\
         1807 \f3Government Security Classified\f1
         1808 .ft 1
         1809 .if t .sp -0.05i
         1810 .tK \}
         1811 \f3Future Lucent Distribution by ITDS\f1
         1812 .if \\n(ra>0 \{\
         1813 .ti 0.5i
         1814 .if t .sp 0.05i
         1815 .ie \\n(ra=2 \{\
         1816 .if t \f3DO NOT RELEASE\f1 to any Lucent employee without appropriate approval for each request.
         1817 .if n \{\
         1818 \f3DO NOT RELEASE\f1 to any Lucent employee without appropriate approval
         1819 .br
         1820 .ti 1.0i
         1821 for each request.\}\}
         1822 .el \{\
         1823 \f3RELEASE\f1 to any Lucent employee (excluding contract employees).
         1824 .br \}\}
         1825 '''\"                                        next 41 lines for yes/no boxes; remove when .fA macro becomes mandatory
         1826 .if \\n(ra=0 \{\
         1827 .if t \{\
         1828 .mk z
         1829 .ti 0.1i
         1830 .bE
         1831 .sp|\\nzu
         1832 .ti 0.25i
         1833 Yes, \f3RELEASE\f1 to any Lucent employee (excluding
         1834 .sp|\\nzu
         1835 .ti 4.1i
         1836 .bE
         1837 .sp|\\nzu
         1838 .ti 4.25i
         1839 No, \f3DO NOT RELEASE\f1 to any Lucent employee
         1840 .mk z
         1841 .ti 0.35i
         1842 contract employees).
         1843 .sp|\\nzu
         1844 .ti 4.35i
         1845 without obtaining appropriate approval.\}
         1846 .if n \{\
         1847 .mk z
         1848 .ti 0.1i
         1849 .bE
         1850 .sp|\\nzu
         1851 .ti 0.4i
         1852 Yes, \f3RELEASE\f1 to any Lucent employee
         1853 .sp|\\nzu
         1854 .ti 4.1i
         1855 .bE
         1856 .sp|\\nzu
         1857 .ti 4.4i
         1858 No, \f3DO NOT RELEASE\f1 to any Lucent
         1859 .mk z
         1860 .ti 0.5i
         1861 (except contract employees).
         1862 .ti 4.5i
         1863 .sp|\\nzu
         1864 employee without obtaining
         1865 .ti 4.5i
         1866 appropriate approval.\}\}
         1867 .if t .sp -0.05i
         1868 .tK
         1869 .ft 3
         1870 Author Signature\\*(u)
         1871 .ft 1
         1872 .sp1
         1873 .ta 2.625i 5.25i
         1874 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1875 .ta 0.25i 2.875i 5.5i
         1876 \\*(m(
         1877 .if \\nu>3 \{\
         1878 .sp1
         1879 .ta 2.635i 5.25i
         1880 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1881 .ta 0.25i 2.875i 5.5i
         1882 \\*(n( \}
         1883 .if \\nu>6 \{\
         1884 .sp1
         1885 .ta 2.635i 5.25i
         1886 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1887 .ta 0.25i 2.875i 5.5i
         1888 \\*(o( \}
         1889 .if \\nu>9 \{\
         1890 .sp1
         1891 .ta 2.635i 5.25i
         1892 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1893 .ta 0.25i 2.875i 5.5i
         1894 \\*(p( \}
         1895 .if t .sp -0.1i
         1896 .tK
         1897 '''\"                                        output organizational approval section
         1898 .ie \\np>1 \{\
         1899 .if t \{\
         1900 \f3Organizational Approval\f1  (\\*(e4 approval \f3required\f1 for \f2\\*(o)\f1.) \}
         1901 .if n \{\
         1902 \f3Organizational Approval\f1
         1903 .ti 0.5i
         1904 \\*(e4 approval \f3required\f1 for \f2\\*(o)\f1. \}
         1905 .br \}
         1906 .el \{\
         1907 \f3Organizational Approval\f1  (Optional) \}
         1908 .sp 1
         1909 .ta 2.625i 5.25i
         1910 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1911 .ta 0.25i 2.875i 5.5i
         1912 \\*(u(
         1913 .if ((\\n(oa>3):((\\nn>3)&(\\n(oa=0))) \{\
         1914 .sp1
         1915 .ta 2.625i 5.25i
         1916 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1917 .ta 0.25i 2.875i 5.5i
         1918 \\*(v( \}
         1919 .if ((\\n(oa>6):((\\nn>6)&(\\n(oa=0))) \{\
         1920 .sp 1
         1921 .ta 2.625i 5.25i
         1922 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1923 .ta 0.25i 2.875i 5.5i
         1924 \\*(w( \}
         1925 .if ((\\n(oa>9):((\\nn>9)&(\\n(oa=0))) \{\
         1926 .sp 1
         1927 .ta 2.625i 5.25i
         1928 \l'2.25i'        \l'2.25i'        \l'2.25i'
         1929 .ta 0.25i 2.875i 5.5i
         1930 \\*(x( \}
         1931 .if t .sp -0.1i
         1932 .tK
         1933 '''\"                                        recipient section always output
         1934 .ft 3
         1935 For Use by Recipient of Cover Sheet:
         1936 .ft 1
         1937 .if t \{\
         1938 .ps-3
         1939 .vs-4
         1940 .sp1
         1941 .mk z
         1942   Computing network users may order copies via the \f2library -1\f1 command;
         1943    for information, type \f2man library\f1 after the UNIX\(rg system prompt.
         1944 .sp1
         1945 .rn fo xx
         1946   Otherwise:
         1947    Enter PAN if Lucent-BL (or SS# if non-Lucent-BL). \l'1.5i'
         1948    Return this sheet to any ITDS location. 
         1949 .sp|\\nzu
         1950 .in 4.0i
         1951 Internal Technical Document Service
         1952 .sp1
         1953 .ta 0.9i 1.8i 2.7i
         1954 ( ) AK 2H-28        ( ) IH 7M-103        ( ) DR 2F-19        ( ) NW-ITDS
         1955 ( ) ALC 1B-102        ( ) MV 3L-19        ( ) INH 1C-114        ( ) PR 5-2120
         1956 ( ) CB 1L-220        ( ) WH 3E-204        ( ) IW 2Z-156
         1957 ( ) HO 4F-112                ( ) MT 2C-131
         1958 .br \}
         1959 .if n \{\
         1960   Computing network users may order copies via the \f2library -1\f1 command;
         1961   for information, type \f2man library\f1 after the UNIX system prompt. 
         1962   Otherwise:
         1963 .sp1
         1964 .mk z
         1965 .rn fo xx
         1966 1 Enter PAN if Lucent-BL (or SS# if
         1967   non-Lucent-BL).
         1968                \l'2.0i'
         1969 2 Return this sheet to any
         1970   ITDS location. 
         1971 .sp|\\nzu
         1972 .in 4.0i
         1973 Internal Technical Document Service
         1974 .sp1
         1975 .ta 1.75i
         1976 .if \\n(en=1 \{\
         1977 ( ) AK 2H-28        ( ) IH 7M-103
         1978 ( ) ALC 1B-102        ( ) MV 3L-19
         1979 ( ) CB 1L-220        ( ) WH 3E-204
         1980 ( ) HO 4F-112 \}
         1981 .if \\n(en=2 \{\
         1982 ( ) DR 2F-19
         1983 ( ) INH 1C-114
         1984 ( ) IW 2Z-156
         1985 ( ) MT 2C-131 \}
         1986 .if \\n(en=3 \{\
         1987 ( ) NW-ITDS \}
         1988 .if \\n(en=4 \{\
         1989 ( ) PR5-2120 \}
         1990 .br \}
         1991 .if \\n(aa \{\
         1992 .        sy pwd >/tmp/sx\\n($$
         1993 .        sy sed "s/^/cd /" /tmp/sx\\n($$ >/tmp/sc\\n($$
         1994 .        sy echo "/usr/lib/tmac/sendcover" \\n(.F \\n(qq >>/tmp/sc\\n($$
         1995 .        sy echo "rm" /tmp/sx\\n($$ /tmp/sc\\n($$>>/tmp/sc\\n($$
         1996 .        sy sh /tmp/sc\\n($$&
         1997 .        br \}
         1998 .rr a b c e g h i j k
         1999 .rr l m n o p q r s t
         2000 .rr u v w x y z
         2001 .rr an fn as ds fs bd dv lp
         2002 .rr tp np la a1 a2 ar fi
         2003 .rr in si ps ts vs tv b1 b2 m1
         2004 .rr :b :c :d :e ls dt fc wp
         2005 .rr g1 g2 g3 g4 g5 i1 i2 i3 i4 i5
         2006 .rm a) b) c) e) k) n) o) p) q)
         2007 .rm r) s) t) u) v) w) x) y) z)
         2008 .rm a( b( m( n( o( p( s( t(
         2009 .rm tc nc Tm 10 ve
         2010 .rm hD fO aT tK bE bX tH cH
         2011 .rm dH eP cP tP t1 CS tI tS cE
         2012 .rm cZ dZ eE fF gG oH dP
         2013 ..
         2014 '''\"        end of csmacros