1
'''\" coversheet to match version 8/06/87
2
'''\" from comp center 1.30 7/20/87
3
'''\" 1/22/97 spacing change in addresses;
4
'''\" email on separate line - mdm
6
'''\" a - abstract continuation flag - 0 (no), >0 (yes)
7
'''\" b - mercury selections counter
8
'''\" c - distribution continuation flag - 0 (no), 1 (yes)
9
'''\" d - flag for length calculation
10
'''\" e - complete copy basic distribution length
11
'''\" g - complete copy overflow distribution length
12
'''\" h - cover sheet basic distribution length
13
'''\" i - cover sheet overflow distribution length
14
'''\" k - keyword flag - 0 (none), 1 (some) - reused as scratch
15
'''\" l - number of vertical units per line - troff
16
'''\" m - memorandum type flag - 1 TM, 2 IM, 3 TC
17
'''\" n - document number counter
18
'''\" o - title flag - 0 (no), 1 (yes - vertical size of title diversion)
19
'''\" p - proprietary notice flag - 0 (none), 1 (default), 2(BR)
20
'''\" r - security flag - 0 (no), 1 (yes)
21
'''\" s - software flag - 0 (no), 1 (yes)
22
'''\" t - mark title position
23
'''\" u - author count
24
'''\" q v w x y z- scratch - but remembered
25
'''\" aa - ship to itds
27
'''\" a) b)- mercury info
30
'''\" N1 - first document number
31
'''\" p) q) r)- proprietary 1
32
'''\" s) - time stamp string
33
'''\" t) - memo type (TM, IM, TC)
34
'''\" v) - document nos
35
'''\" w) - filing case nos
36
'''\" x) - work project nos
37
'''\" e( - earlier document
38
'''\" m( n( o( p(- authors 1-3 sig
39
'''\" r( - responsible person
40
'''\" s( - S software string
41
'''\" t( - memo type ("for Technical Memorandum", etc.)
42
'''\" x( - Mailing Label or DRAFT
43
'''\" N2 N3- 2nd 3rd document number
44
'''\" Fi - up to 3 filing cases
45
'''\" Xi - up to 3 work program numbers
48
'''\" ZI - author info section
49
'''\" ZC - complete copy addressee primary
50
'''\" ZO - complete copy addressee overflow
51
'''\" ZS - cover sheet addressee primary
52
'''\" ZD - cover sheet addressee overflow
53
'''\" ZN - document number info
58
'''\" get ms if not loaded
59
.if !\n(PS .so /usr/lib/tmac/tmac.s
62
. tm You're trying to load the coversheet macros twice - havoc will result
63
. tm I'm quitting to keep you from wasting paper
76
.if !\n(PD .nr PD 0.3v
87
.ie !'\\*(TF'' .FP \\*(TF
121
.if '\*(.T'aps' .nr dv 1
122
'''\" initialize units per vertical space
149
'''\"initialize date string - keep for 1st pg of tm
150
.if \n(mo-0 .ds d) January
151
.if \n(mo-1 .ds d) February
152
.if \n(mo-2 .ds d) March
153
.if \n(mo-3 .ds d) April
154
.if \n(mo-4 .ds d) May
155
.if \n(mo-5 .ds d) June
156
.if \n(mo-6 .ds d) July
157
.if \n(mo-7 .ds d) August
158
.if \n(mo-8 .ds d) September
159
.if \n(mo-9 .ds d) October
160
.if \n(mo-10 .ds d) November
161
.if \n(mo-11 .ds d) December
162
.as d) " \n(dy, 20\n(yr
164
''' \" initialize strings
174
''' \" initialize proprietary notice
175
.ds o) "Lucent Technologies \(em PROPRIETARY
176
.ds p) "Use pursuant to Company Instructions
179
''' \" initialize trademark symbol
180
.ds MT \v'-0.5m'\s-4TM\s+4\v'0.5m'
182
''' \"initialize csmacro version string
183
.ds ve MCSL (07/12/90)
186
''' \" macros to collect information
188
.de DT \" macro for date
189
'''\" store date if non-empty
190
.if !'\\$1'' .ds d) \\$1 \\$2 \\$3 \\$4
191
.ds DY \\$1 \\$2 \\$3 \\$4
193
.de TI \" macro for title -TI = mm(TL)
197
.ds x( "Mailing Label \}
201
'''\" diversion for title ZT = mm(tI)
204
.de AH \" macro for author info AH = mm(AU)
205
'''\" name loc dept ext room mail_addr company
206
'''\" don't count author unless non-empty
209
.if !'\\$1'' .nr u \\n+u
213
'''\" end title diversion on first author
223
.ds \\nuL \\$5, x\\$4
224
'''\" append to author list ZI = mm(aV)
226
\\$1 \\$2 \\$5 \\$4 \\$7
234
'''\" end append; info for signature lines
235
.AA \\nu "\\$1" \\$3 \\$2 "\\$4" \\$5 \\$6
236
.ta 0.5i 1.0i 1.5i 2.0i 2.5i
245
.if !'\\$3'' Org. \\$3
246
.if !'\\$4'' \\$4 \\$6
253
.sy echo \\$2 >/tmp/tt\\n($$
254
.sy sed -f /usr/lib/tmac/name.sed /tmp/tt\\n($$ >/tmp/tx\\n($$
256
.sy rm /tmp/tx\\n($$ /tmp/tt\\n($$
257
.if \\$1<2 .ds T1 \\*(T1-gre
262
.if !'\\*(d!'\\$3' \{\
265
. if !\\n(m2=\\n(m3 .nr ud \\n(ud+1 \}
276
.de TO \"begin list of im to people
280
.de ET \"end list of im to people & output pg
284
.de AP \" at&t responsible person AP = mm(rP)
287
.if !'\\$1'' .ds r( \\$1
290
.de SA \" macro for abstract info SA = mm(AS)
294
.if '\\$1'no' .ds a(\}
302
.di WB \" WB = mm(aS)
304
.de SE \" macro for end of abstract info SE = mm(AE)
314
.de KW \" macro for keyword info KW = mm(OK)
316
.if !'\\$1'' .as k) \\$1
317
.if !'\\$2'' .as k); \\$2
318
.if !'\\$3'' .as k); \\$3
319
.if !'\\$4'' .as k); \\$4
320
.if !'\\$5'' .as k); \\$5
321
.if !'\\$6'' .as k); \\$6
322
.if !'\\$7'' .as k); \\$7
323
.if !'\\$8'' .as k); \\$8
324
.if !'\\$9'' .as k); \\$9
325
'''\" set k flag if we have some keywords
326
.ie !'\\*(k)'' .nr k 1
329
.de TY \" macro for document type TY = mm(MT)
333
. ds QF TECHNICAL MEMORANDUM
334
. ds t( "for Technical Memorandum \}
338
. ds QF INTERNAL MEMORANDUM
339
. ds t( "for Internal Memorandum \}
343
. ds QF TECHNICAL CORRESPONDENCE
344
. ds t( "for Technical Correspondence \}
348
.de NU \" macro for document number info NU = mm(dN fC wP)
352
. ie '\\$5'' .ds CX 000000-0000
359
. if \\n(wp=1 .ds X2 \\*(CX
360
. if \\n(wp=2 .ds X3 \\*(CX
361
. if \\n(wp=3 .ds X4 \\*(CX
362
. if \\n(wp=4 .ds X5 \\*(CX
367
. if \\n(fc=1 .ds F2 \\$4
368
. if \\n(fc=2 .ds F3 \\$4
369
. if \\n(fc=3 .ds F4 \\$4
370
. if \\n(fc=4 .ds F5 \\$4
375
. nr fc \\n(fc+1 \} \}
377
. ds NN \\$1-\\$2-\\$3\\*(t)\\*(s(
378
. if \\nn=0 .ds N1 \\*(NN
382
. if \\nn=2 .ds N3 \\*(NN
383
. if \\nn=3 .ds N4 \\*(NN
384
. if \\nn=4 .ds N5 \\*(NN
385
. ie \\nn<4 .as x! \\l'2.25i'
386
. el ie \\nn<7 .as y! \\l'2.25i'
387
. el .as z! \\l'2.25i'
391
. if \\n(a!=1 .as Z1 " \\$6
392
. if \\n(a!=2 .as Z1 \\$6
396
. nr a! \\n(a!+1 \} \}
400
.da ZN \" ZN = mm(dM fC wO)
406
.de MY \" macro for mercury selections MY = mm(mE)
410
. as a) " CHM - Chemistry and Materials
413
. as a) " CMM - Communications
416
. as a) " CMP - Computing
418
. if \\nb=3 .rn a) b) \}
420
. as a) " ELC - Electronics
422
. if \\nb=3 .rn a) b) \}
424
. as a) " LFS - Life Sciences
426
. if \\nb=3 .rn a) b) \}
428
. as a) " MAS - Mathematics and Statistics
430
. if \\nb=3 .rn a) b) \}
433
. as a) " PHY - Physics
435
. if \\nb=3 .rn a) b) \} \}
438
. as a) " MAN - Manufacturing
442
.de RL \" lucent distribution ok RL = mm(rA or fA)
443
.if '\\$1'n' .nr ra 2
446
.de ED \" earlier document number ED = mm(eD)
447
.if !'\\$1'' .ds e( \\$1
450
.de PR \" macro for proprietary marking PR = mm(PM)
451
.if '\\$1'BP' .nr p 1
454
. ds o) "Lucent Technologies \(em PROPRIETARY (RESTRICTED)
455
. ds p) "Solely for authorized persons having a need to know
456
. ds q) " pursuant to Company Instructions \}
459
.de GS \" GS = mm(gS)
465
'''\" basic distribution leng-to be tailored-set e & h
468
. if \\nr=0 .nr e \\ne+2
469
. if \\nu<=3 .nr e \\ne+3
470
. if \\nu<=6 .nr e \\ne+3
471
. if \\nu<=9 .nr e \\ne+3
472
. if \\nn<=3 .nr e \\ne+2
473
. if \\nn<=6 .nr e \\ne+2
474
. if \\nn<=9 .nr e \\ne+2
475
. if \\n(ra<=2 .nr e \\ne-3
479
.de CO \" macro for complete copy addressees CO = mm(cC)
485
. da ZC \" ZC = mm(cA)
487
. ie '\\$1'y' .so /usr/lib/tmac/complet.1127
488
. el .if !'\\$1'' .so /usr/lib/tmac/complet.\\*(y(
492
.de OC \" macro for complete copy overflow - OC = mm(cD)
496
.da ZO \" ZO = mm(cO)
497
.ie \\n(ar>0 .dt \\n(arv ZW
503
.ie \\n(dn>0 .g (\\n(dn)/\\nl+4
506
.de CV \" macro for cover sheet only addresses CV = mm(cS)
512
. da ZS \" ZS = mm(dA)
514
. ie '\\$1'y' .so /usr/lib/tmac/cover.1127
515
. el .if !'\\$1'' .so /usr/lib/tmac/cover.\\*(y(
519
.de OV \" macro for cover sheet only overflow OV = mm(cT)
523
.da ZD \" ZD = mm(cO)
524
.ie \\n(ar>0 .dt \\n(arv WW
530
.if \\n(dn>0 .nr i (\\n(dn)/\\nl+4 \" was ie with no el
533
.de CE \" ending all distribution diversions CE = mm(cE)
555
. ie \\n(dn>0 .nr g (\\n(dn)/\\nl+4
558
. ie \\n(dn>0 .nr i (\\n(dn)/\\nl+4
562
'''\" macros to help format document
566
.if "\\*(.T"aps" .tl '--''--'
569
.de FC \" footer macro FC = mm(fO)
573
.de ST \" macro for abstract overflow trap ST = mm(yY)
575
.rm ST \" ZB = mm(aT)
578
.ch ST 16i \" macro for abstract overflow trap ZB = mm(aT)
601
.de TK \" macro for thick lines TKK = mm(tK)
606
.de HX \" macro for Title headings and text HX = mm(tH)
609
'''\" mark t - Title heading
620
.ie \\nq>2 'sp|\\ntu+\\nq
623
. \" m1 - mark end of title section - save
626
.de HC \" macro for continuation header HC = mm(cH)
634
\\*(N1\f2 (page \\n(np of \\n(tc)
637
.de DL \" macro for distribution list headers DL = mm(dH)
645
.de EJ \" macro for ejecting continuation page EJ = mm(eP)
648
'''\" put out continuation page header & title section
652
.de CP \" macro for continuation page CP = mm(cP)
653
'''\" calc vert. units for cc overflow (if any)
654
.ie \\nv<=\\n(.t .nr v 1
656
.if \\nv=1 .if \\nw<=\\n(.t .nr v 2
657
. \" check if cont page needs to be ejected
660
. \" - if no abstract overflow
663
. \"or if abstract over but no room for list overfl
665
. \" just tk line if abstract over & room for list
669
. if \\ng>4 .if \\ni>4 .DL "Complete Copy" "Cover Sheet Only"
670
. if \\ng>4 .if !\\ni>4 .DL "Complete Copy" ""
671
. if !\\ng>4 .if \\ni>4 .DL "" "Cover Sheet Only" \}
673
. if \\ng>4 .if \\ni>4 .DL "Complete Copy (continued)" "Cover Sheet Only (continued)"1
674
. if \\ng>4 .if !\\ni>4 .DL "Complete Copy (continued)" ""
675
. if !\\ng>4 .if \\ni>4 .DL "" "Cover Sheet Only (continued)" \}
678
'''\" put out complete copy list overflow
685
'''\" put out cover sheet list overflow
689
. if \\nx-\\ny .sp|\\nxu
692
.de ZP \"compute total pages and diversion lengths
693
'''\" calculate vert. units for cc overflow (if any)
694
.ie \\ng>4 .nr v (\\ng)*\\nl
696
'''\" also for cs overflow (if any)
697
.ie \\ni>4 .nr w (\\ni)*\\nl
699
.ie \\nv>\\nw .nr j \\nv
701
. \" set c=1 if either g or i >0
704
. \" calculate total pages in job (default 2)
705
. \" a1 - page 1 portion abstract (units)
706
.nr a1 \\nyu-\\nxu-1v
707
.ie \\n(la>\\n(a1 \{\
708
. \" ar - remainder abstract (units)
709
. nr ar \\n(la-\\n(a1
711
. \" a2 - available continuation page space
712
. \" m1 is mark after tk line after title
713
. \" 2v for Abstract (continued) + one blank
714
. nr a2 11.0i-\\n(m1-2v
716
.el .if \\nc>0 .nr tp \\n+(tp
718
.de ZZ \" ZZ = mm(t1)
719
.ie \\n(ar>\\n(a2 \{\
720
. nr ar \\n(ar-\\n(a2
723
.el .if \\n(ar+\\nj>\\n(a2 .nr tp \\n+(tp
726
'''\" main macro to handle output of cover sheet
732
. tm WARNING: author must be supplied \}
734
. tm WARNING: document title must be supplied \}
736
. tm WARNING: memorandum type undefined or unknown \}
737
.if \\nm=1 .if \\nb=0 \{\
738
. tm WARNING: technical memoranda must have at least one mercury class \}
740
. tm WARNING: document number must be supplied \}
747
'''\" the rs is to restore spacing - ditches big space at top
755
. \" put out page 1 heading
768
.ta 0.5i 3.0i 3.95i 5.25i
769
Author\\*(u) (Computer Address) Location Phone Number Company (if other than BL)
771
'''\" output author info
775
\\*(r( (Responsible BL Person) \}
780
Document No\\*(v). Filing Case No\\*(w). Project No\\*(x).
783
'''\" output document number
786
'''\" output keywords if they exist
795
'''\" output mercury info if it exists
798
MERCURY Announcement Bulletin Sections
812
.nr b2 (\\n(b1*\\n(.v)-\\nx
815
'''\" calculate position (19v includes 2v to print version at bottom of page)
817
.if \\n(F4>0 .nr y \\ny-\\n(F4
821
'''\" handle abstract page 1 continuation
822
.ie \\n(la>\\n(a1 \{\
825
(continued on page iii)
835
.nr qq \\$1+\\$2+\\n(tp
836
\f3Total Pages\f1 (including document cover sheet): \\s+2\\n(qq\\s-2
838
Supersedes or amends document number \\*(e(. \}
844
'''\" output proprietary notice if it exists
847
.ti (4i-\\w'\\*(o)'u)/2u
850
.ti (4i-\\w'\\*(p)'u)/2u
852
.ti (4i-\\w'\\*(q)'u)/2u
858
\s8Timestamp: \\*(s)\s0 BELL LABORATORIES \}
871
.if !\\n(la=\\n(a1 \{\
874
.ta 0.5i 1.0i 1.5i 2.0i 2.5i
877
'''\" output the abstract
879
.if \\n(la=\\n(a1 .sp-1
882
'''\" output continuation page
893
Initial Distribution Specifications \\*(N1\f2 (page ii of \\n(tc)\f3
897
. DL " Complete Copy" " Cover Sheet Only"
899
'''\" put out complete copy list
910
'''\" put out cover sheet list
918
'''\" starter space value - then tailor
923
\f3Government Security Classified\f1
927
\f3Future Lucent Technologies Distribution by ITDS\f1
931
\f3DO NOT RELEASE\f1 to any Lucent Technologies employee without appropriate approval for each request. \}
933
\f3RELEASE\f1 to any Lucent Technologies employee (excluding contract employees). \}
935
'''\" put out author signature section
937
Author Signature\\*(u)
942
.ta 0.25i 2.875i 5.5i
948
. ta 0.25i 2.875i 5.5i
954
. ta 0.25i 2.875i 5.5i
958
'''\" output organizational approval section
960
\f3Organizational Approval\f1 (Department Head approval \f3required\ff1 for \f2\\*(o)\f1.) \}
962
\f3Organizational Approval\f1 (Optional) \}
966
. ta 0.25i 2.875i 5.5i
977
'''\" recipient section always output
979
For Use by Recipient of Cover Sheet:
985
Computing network users may order copies via the \f2library \-k\f1 command;
986
for information, type \f2man library\f1 after the UNIX prompt.
990
Enter PAN if BL (or SS# if non-BL). \l'1.5i'
991
Return this sheet to any ITDS location.
994
Internal Technical Document Service
997
( ) AK 2H-28 ( ) IH 7M-103 ( ) DR 2F-19 ( ) NW-ITDS
998
( ) ALC 1B-102 ( ) MV 1L-19 ( ) INH 1C-114 ( ) PR 5-2120
999
( ) CB 30-2011 ( ) WH 3E-204 ( ) IW 2Z-156
1000
( ) HO 4F-112 ( ) MT 3B-117
1006
. \"IZ - initialization
1013
.if \\n(FM=0 .nr FM 1i
1015
.if !\\n(PD .if n nr PD 1v
1016
.if t .if !\\n(PD .nr PD 0.3v
1018
.wh \\n(.pu-\\n(FMu FO
1020
.wh \\n(.pu-\\n(FMu FX
1021
.ch FO \\n(.pu-\\n(FMu
1022
.if t .wh -\\n(FMu/2u BT
1023
.if n .wh -\\n(FMu/2u-1v BT
1025
.\" macro to restore ms foiling
1036
.\" changed rn F5 FE added rn FJ FS
1053
.ds MN \\*(N1 \\*(N2 \\*(N3 \\*(N4 \\*(N5
1059
'''.so /usr/lib/tmac/tmac.rscover XXX
1060
.so \*(.P/lib/tmac/tmac.rscover
1061
. \" a line for troff to eat
1065
.rr a b c d e f g h i j k
1066
.rr l m n o p q r s t u
1067
.rr v w x y z np tp nc tc
1069
.rr lp np la a1 a2 ar wp fc m1
1070
.rm DT TI AH SE KW TY NU MY
1071
.rm PR CI CO OC CV OV CE HD
1072
.rm FC ST TK HX HC DL EJ
1073
.rm CP SC a) b) k) N1 p) q) r)
1074
.rm N2 N3 N4 N5 X1 X2 X3 X4 X5
1075
.rm X1 X2 X3 X4 X5 F1 F2 F3 F4
1077
.rm d) o) s) ve m! n! o! e( r(
1078
.rm x! y! z! x( d! ve u)
1079
.rm t) w) x) y) z) a( b( c( m(
1080
.rm n( o( p( s( t( SA ZI ZC ZO
1081
.rm ZS ZD ZN FT FB CX NN GS
1083
.rm TM IM MF MR LT OK RP TR
1084
.rm TX AU AX AI AE SY S2 S0
1096
.de SS \"RP or TR rename the world so old macros called
1110
.\" changed rn F5 FE added rn FJ FS
1131
.ND \\\\$1 \\\\$2 \\\\$3
1134
.rr a b c d e f g h i j k
1135
.rr l m n o p q r s t u
1136
.rr v w x y z np tp nc tc
1138
.rr lp np la a1 a2 ar wp fc m1
1141
.rm FC ST TK HX HC DL EJ
1142
.rm CP SC a) b) k) N1 p) q) r)
1143
.rm d) o) s) ve m! n! o! e( r(
1144
.rm x! y! z! x( d! ve u)
1145
.rm t) w) x) y) z) a( b( c( m(
1146
.rm n( o( p( s( t( ZI ZC ZO
1147
.rm ZS ZD ZN FT FB CX NN GS