shithub: riscv

ref: 3d5dca521797b5a91ebc4281fbaf58211bb4f40f
dir: /sys/lib/tmac/tmac.mcs/

View raw version
'''\"	@(#)dcs:csmacros	2.3	5/2/89	
'''\" registers
'''\"	a - abstract continuation flag - 0 (no), >0 (yes - number of overflow pages)
'''\"	b - mercury selections counter
'''\"	c - distribution continuation flag - 0 (no), 1 (yes)
'''\"	d - distribution length calculation flag - 0 (no), 1 (yes)
'''\"	e - complete copy basic distribution length
'''\"	g - complete copy overflow distribution length
'''\"	h - cover sheet basic distribution length
'''\"	i - cover sheet overflow distribution length
'''\"	j - scratch
'''\"	k - keyword flag - 0 (none), 1 (some)
'''\"	l - number of vertical units per line - troff and nroff
'''\"	m - memorandum type flag - 1 TM, 2 IM, 3 TC
'''\"	n - document number counter
'''\"	o - title flag - 0 (no), 1 (yes - vertical size of title diversion)
'''\"	p - proprietary notice flag - 0 (none), 1 (default notice), 2(BR)
'''\"	q - scratch
'''\"	r - security flag - 0 (no), 1 (yes)
'''\"	s - software flag - 0 (no), 1 (yes)
'''\"	t - mark title position
'''\"	u - author count
'''\"	v - scratch
'''\"	w - scratch
'''\"	x - mark scratch position
'''\"	y - mark scratch position
'''\"	z - mark scratch position
'''\"	ra - release to Lucent flag - 0 (no decision), 1 (yes), 2 (no)
'''\"	an - length abstract footnote diversion
'''\"	fn - length footnote diversion
'''\"	as - "in abstract" flag - 0 (no), 1 (yes)
'''\"	ds - "in display" flag - 0 (no), 1 (yes)
'''\"	fs - "in footnote" flag - 0 (no), 1 (yes)
'''\"	bd - block center display flag - 0 (no), 1 (yes)
'''\"	dv - device flag - 0 (default), 1 (APS-5), 2 (i10), 3 (xerox), 4 (i300), 5 (qms1200), 6 (postscript)
'''\"	lp - lines per page (nroff - xerox)
'''\"	tp - total pages (decimal)
'''\"	tc - total pages (in small roman)
'''\"	np - page number this page (decimal)
'''\"	nc - page number this page (in small roman)
'''\"	lt - vertical size of title diversion (in lines)
'''\"	lo - vertical size of copy overflow trap (in lines)
'''\"	la - vertical size of abstract diversion
'''\"	a1 - vertical size of page 1 portion of abstract
'''\"	a2 - vertical size of overflow page portion of abstract
'''\"	ar - vertical size remainder of abstract
'''\"	fi - save current fill/no-fill (.u)
'''\"	in - save current indent (.i)
'''\"	si - standard indent - ens (for paragraphs, displays & equations)
'''\"	ps - initial point size (.s)
'''\"	ts - temp point size (only in S macro)
'''\"	vs - initial vertical spacing (.v)
'''\"	tv - temp vertical spacing (only in S macro)
'''\"	b1, b2 - scratch calculations
'''\"	g1, g2, g3, g4, g5 - complete copy overflow - additional diversion lengths
'''\"	i1, i2, i3, i4, i5 - cover sheet only overflow - additional diversionlengths
'''\"	m1 - mark scratch position
'''\"	:b, :c, :d, :e - scratch (lists only)
'''\"	:h - SA macro only
'''\"	ls - nested list level (lists only)
'''\"	dt - display type (displays & equations)
'''\"	fc - filing case flag
'''\"	wp - work project number flag
'''\"	en - entity flag - 1 (BL), 2 (IS), 3 (TI), 4 (CH)
'''\"	lg - Lucent logo flag - 0 (not defined), 1 (defined)
'''\"	oa - organizational approval name counter
'''\"	aa - ship to itds
'''\" strings
'''\"	a) - mercury info
'''\"	b) - mercury info
'''\"	c) - mercury info
'''\"	e) - equation label
'''\"	k) - keywords
'''\"	m) - Mailing Label/DRAFT
'''\"	n) - first document number
'''\"	o) - proprietary classification heading
'''\"	p) - proprietary string 1
'''\"	q) -     "         "    2
'''\"	r) -     "         "    3
'''\"	s) - timestamp string
'''\"	t) - memo type (TM, IM, TC)
'''\"	u) - trailing s if multiple author
'''\"	v) - trailing s if multiple document number
'''\"	w) - trailing s if multiple filing case
'''\"	x) -  trailing s if multiple work project number
'''\"	y) - used in lists
'''\"	z) - used in lists
'''\"	a( -
'''\"	e( - earlier document number
'''\"	m( - authors 1-3 sig
'''\"	n( - authors 4-6 sig
'''\"	o( - authors 7-9 sig
'''\"	p( - authors 10-12 sig
'''\"	r( - responsible person
'''\"	s( - S software string
'''\"	t( - memo type ("for Technical Memorandum", etc.)
'''\"	u( - organizational approval 1-3 sig
'''\"	v( - organizational approval 4-6 sig
'''\"	w( - organizational approval 7-9 sig
'''\"	x( - organizational approval 10-12 sig
'''\"	Tm - trademark
'''\"	lG - Lucent logo
'''\"	10 - used in equations
'''\"	ve - csmacros version
'''\"	e1,e2,e3,e4 - entity info
'''\" diversions
'''\"	aS - abstract
'''\"	aV - author info section
'''\"	cA - complete copy addressee primary
'''\"	cO - complete copy addressee overflow
'''\"	cU, cV, cW, cX, cY, cZ - complete copy addressee overflow (previously lost)
'''\"	dA - cover sheet addressee primary
'''\"	dO - cover sheet addressee overflow
'''\"	dU, dV, dW, dX, dY, dZ - cover sheet only addressee overflow (previously lost)
'''\"	dM - document number info
'''\"	dS - display
'''\"	eQ - equation
'''\"	fB - filing case info
'''\"	tI - title
'''\"	wO - work project number info
'''\"	aN - abstract footnote
'''\"	fN - footnote
'''\"
'''\" macros to collect information
'''\"	aC - Lucent company
'''\"	tS - timestamp
'''\"	TL - title
'''\"	AU - author
'''\"	FS - footnote start
'''\"	FE - footnote end
'''\"	AS - abstract start
'''\"	AE - abstract end
'''\"	OK - keyword info
'''\"	MT - document type
'''\"	dN - document number info
'''\"	oA - organization approval name
'''\"	eD - earlier document number
'''\"	fC - filing case
'''\"	fD - full date
'''\"	wP - work project info
'''\"	mE - mercury selections (7 argument version)
'''\"	mC - mercury codes (three argument version)
'''\"	Mc - mercury codes (one argument version)
'''\"	PM - proprietary marking
'''\"	gS - government security
'''\"	rA - release to Lucent employees (superceded by fA)
'''\"	fA - future Lucent distribution (supercedes rA)
'''\"	sF - software-related
'''\"	cC - complete copy addressee list start
'''\"	cD - complete copy overflow
'''\"	cS - cover sheet only addressee list start
'''\"	cT - cover sheet only overflow
'''\"	zZ - complete copy overflow (previously lost)
'''\"	fF - complete copy overflow (aux)
'''\"	wW - cover sheet overflow (previously lost)
'''\"	gG - cover sheet only overflow (aux)
'''\"	cE - addressee list end
'''\"	eE - addressee list end (aux)
'''\" macros to help format document
'''\"	B  - change to bold font
'''\"	I  - change to italic font
'''\"	R  - change to roman font
'''\"	S  - set point size and vertical spacing
'''\"	sP - space 1 vertical space
'''\"	P  - paragraph
'''\"	HC - set hyphenation indicator
'''\"	iN - font and size re-initialization
'''\"	DS - display start
'''\"	DE - display end
'''\"	EQ - equation start
'''\"	EN - equation end
'''\"	VL - variable-item list
'''\"	ML - marked list
'''\"	LI - list item
'''\"	LE - list end
'''\"	hD - header 
'''\"	fO - footer
'''\"	yY - abstract overflow
'''\"	aT - abstract overflow trap
'''\"	tK - thick lines
'''\"	bE - empty box
'''\"	bX - box with X
'''\"	tH - title heading
'''\"	cH - continuation header
'''\"	dH - distribution list headers
'''\"	oH - overflow distribution list headers
'''\"	eP - eject distribution continuation page
'''\"	cP - continuation page
'''\"	dP - continuation page (aux)
'''\"	tP - compute pages and diversion lengths
'''\"	t1 -     "               "
'''\"	dL - compute basic distribution length
'''\"	CS - output cover sheet
'''\" initialization
'''\"
'''\"	registers
.nr a 0 1
.nr b 0 1
.nr c 0
.nr d 0
.nr e 0
.nr g 0
.nr g1 0
.nr g2 0
.nr g3 0
.nr g4 0
.nr g5 0
.nr h 6
.nr i 0
.nr i1 0
.nr i2 0
.nr i3 0
.nr i4 0
.nr i5 0
.nr j 0
.nr k 0
.nr m 0
.nr n 0 1
.nr o 0
.nr p 1
.nr q 0
.nr r 0
.nr s 0
.nr t 0
.nr u 0 1
.nr v 0
.nr w 0
.nr x 0
.nr y 0
.nr z 0
.nr an 0
.nr fn 0
.nr as 0
.nr ds 0
.nr fs 0
.nr bd 0
.nr tp 0
.nr tc 0
.af tc i
.nr np 2
.nr nc 2
.af nc i
.nr la 0
.nr a1 0
.nr a2 0
.nr ar 0
.nr fi 0
.nr in 0
.nr :b 0
.nr :c 0
.nr :d 0
.nr :e 0
.nr :h 0
.nr ls 0 1
.nr dt 0
.nr fc 0 1
.nr wp 0 1
.nr en 1
.nr lg 0
.nr ra 0
.nr oa 0 1
'''\"	initialize lines per page
.nr lp 66
.if n .nr lp 65
'''\" initialize device register
.nr dv 0
.if '\*(.T'aps' .nr dv 1
.if '\*(.T'i10' .nr dv 2
.if '\*(.T'X97.tim10p' .nr dv 3
.if '\*(.T'X97.tim12p' .nr dv 3
.if '\*(.T'X97.ti10p' .nr dv 3
.if '\*(.T'X97.ti12p' .nr dv 3
.if '\*(.T'i300' .nr dv 4
.if '\*(.T'qms' .nr dv 5
.if '\*(.T'post' .nr dv 6
'''\"	initialize font positions
.ie \n(dv=3 \{\
.fp 1 R
.fp 2 I
.fp 3 B
.fp 4 I \}
.el .ie \n(dv=5 \{\
.fp 1 R
.fp 2 I
.fp 3 B
.fp 4 S \}
.el \{\
.fp 1 H
.fp 2 HI
.fp 3 HB
.fp 4 HX \}
'''\"	initialize units per vertical space
.if t .nr l 120
.if \n(dv=2 .nr l 40
.if \n(dv=3 .nr l 50
.if \n(dv=5 .nr l 50
.if n .nr l 40
'''\"	initialize standard indent
.nr si 5
'''\"	diversions
.di aV
.di
.di dM
.di
.di cA
.di
.di cO
.di
.di cU
.di
.di cV
.di
.di cW
.di
.di cX
.di
.di cY
.di
.di cZ
.di
.di dA
.di
.di dO
.di
.di dU
.di
.di dV
.di
.di dW
.di
.di dX
.di
.di dY
.di
.di dZ
.di
.di fB
.di
.di wO
.di
'''\" initialize Lucent logo
'''\" eventually substitute LH for Lb (DWB 2)
.ie \n(dv=5 .ds lG \s10\f(ATx\fP\f\\nv\fP\s0
.el .ds lG \s36\(LH\s0
'''\" initialize entity strings
.ds e1 "ALCATEL-LUCENT-BL
.ds e2 "ALCATEL-LUCENT
.ds e3 "ALCATEL-LUCENT BELL LABORATORIES
.ds e4 "Department Head
'''\" initialize trademark symbol string
.if t .ds Tm \v'-0.5m'\s-4TM\s+4\v'0.5m'
.if n .ds Tm \uTM\d
'''\" initialize timestamp string
.ds s) 0
'''\"	initialize responsible person string
.ds r( 0
'''\"	initialize earlier document number string
.ds e( 0
'''\"	initialize csmacro version string
.ds ve MCS (04/30/89)
'''\"	initialize point size, vertical space & indent
.nr ps 10
.ps \\n(ps
.nr vs 12
.if t .vs \\n(vsp
.in 0
'''\"
'''\" macros to collect information
'''\"
.de aC				\" macro for Lucent company (entity)
.					\" set en=1 if BL (default)
.					\" set en=2 if IS
.					\" set en=3 if TI
.					\" set en=4 if CH (Corporate Headquarters)
.if '\\$1'BL' .nr en 1
.if '\\$1'IS' .nr en 2
.if '\\$1'TI' .nr en 3
.if '\\$1'CH' .nr en 4
.if \\n(en=1 \{\
.ds e1 "ALCATEL-LUCENT-BL
.ds e2 "ALCATEL-LUCENT
.ds e3 "ALCATEL-LUCENT BELL LABORATORIES
.ds e4 "Department Head
.br\}
.if \\n(en=2 \{\
.ds e1 "ALCATEL-LUCENT-IS
.ds e2 "ALCATEL-LUCENT
.ds e3 "ALCATEL-LUCENT INFORMATION SYSTEMS
.ds e4 "Department Head
.br\}
.if \\n(en=3 \{\
.ds e1 "Alcatel-Lucent, Inc.
.ds e2 "Alcatel-Lucent
.ds e3 "ALCATEL-LUCENT, INC.
.ds e4 "Manager
.br\}
.if \\n(en=4 \{\
.ds e1 "Alcatel-Lucent
.ds e2 "Alcatel-Lucent
.ds e3 "        Alcatel-Lucent
.ds e4 "Department Head
.br \}
.rm aC
..
.de tS				\" macro for timestamp
'''\"				if timestamp string=0, store arg #1 if non-empty.
.if '\\*(s)'0' \{\
.if !'\\$1'' \{\
.ie '\\$2'1' .ds s) "D R A F T
.el .ds s) "Timestamp: \\$1 \} \}
..
.de TL				\" macro for title
.if \\nu>0 \{\
.tm ERROR: coversheet file set up incorrectly - document title must be supplied before author
.ab	\}
.br
.fi
.nr aa 1		\" set default to send cover to ITDS
.ie !'\\n(.F'stdin' \{\
.	ie !'\\n(.F'-' \{\
.		sy /sys/lib/tmac/timestamp \\n(.F>/tmp/tp\\n($$
.		so /tmp/tp\\n($$
.		sy /bin/rm /tmp/tp\\n($$
.		br \}			\" don't remove br - gets around troff bug
.	el \{\
.		nr aa 0
.		tm Coversheet not sent to library. input is '-' \} \}
.el \{\
.	nr aa 0
.	tm Coversheet not sent to library. input is 'stdin' \}
.ie '\\$1'' \{\
.	ds m) "Mailing Label \}
.el \{
.	nr aa 0
.	tm Coversheet not sent to library. DRAFT document
.	ds m) \\s+2DRAFT\\s-2 \} \}
.ll 6.0i
'''\"					diversion for title
.di tI
.rm TL
..
.de AU				\" macro for author info
'''\"					don't count author unless non-empty
.if !\\$1 .nr u \\n+u
.if \\nu=1 \{\
.br
'''\"					end title diversion on first author
.di
.nr lt (\\n(dn)/(\\nl)
.nr o \\n(dn
.ll
.nf \}
.ta 0.3i 2.6i 3.0i 4.0i 5.4i
.br
'''\"					append to author list
.da aV
	\\$1	\\$3	\\$6	\\$5	\\$7
.br
.da
'''\"					end append; info for signature lines
.if \\nu=1 .ds m(	\\$1
.if \\nu=2 .as m( 	\\$1
.if \\nu=3 .as m(	\\$1
.if \\nu=4 .ds n(	\\$1
.if \\nu=5 .as n(	\\$1
.if \\nu=6 .as n(	\\$1
.if \\nu=7 .ds o(	\\$1
.if \\nu=8 .as o(	\\$1
.if \\nu=9 .as o(	\\$1
.if \\nu=10 .ds p(	\\$1
.if \\nu=11 .as p(	\\$1
.if \\nu=12 .as p(	\\$1
..
.de rP				\" macro for responsible person
.if !'\\$1'' .ds r( \\$1
.rm rP
..
.de FS				\" macro for footnote start
.if \\n(fs>0 \{\
.tm Footnote within footnote - illegal.
.FE \}
.if \\n(ds>0 \{\
.tm Footnote within display - illegal.
.FE \}
.nr fs 1
.ev 1
.br
.ll 6.4i
.ps 8
.if t .vs 10p
.fi
.ie \\n(as>0 .da aN
.el \{\
.da fN
.if \\n(fn=0 \{\
.br
.if n __________
.if t \l'1i'
.br \} \}
.if \\n(.$=1 \\$1
..
.de FE				\" macro for footnote end
.br
.da
.ie \\n(as>0 .nr an \\n(dn+\\n(an
.el .nr fn \\n(dn+\\n(fn
.ev
.nr fs 0
..
.de AS				\" macro for abstract info
.nr as 1
.br
.fi
.ll 7.0i
.ta 0.5i 1.0i 1.5i
.di aS
.rm AS
..
.de AE 				\" macro for end of abstract info
.br
.di
.nr la \\n(dn
.iN
.if \\n(an>0 \{\
.br
.da aS
.br
.if n __________
.if t \l'1i'
.br
.nf
.aN
.rm aN
.br
.da
.nr la \\n(la+\\n(dn \}
.iN
.rm iN
.ll
.nf
.nr as 0
.rm DS DE EQ EN VL ML LI LE
.rm dS eQ
.rm B I R S sP P
.rm FS FE AE
..
.de OK				\" macro for keyword info
.ds k)
.if !\\$1 .as k) \\$1
.if !\\$2 .as k); \\$2
.if !\\$3 .as k); \\$3
.if !\\$4 .as k); \\$4
.if !\\$5 .as k); \\$5
.if !\\$6 .as k); \\$6
.if !\\$7 .as k); \\$7
.if !\\$8 .as k); \\$8
.if !\\$9 .as k); \\$9
'''\"					set k flag if we have some keywords
.ie !\\*(k) .nr k 1
.el .nr k 0
.rm OK
..
.de MT				\" macro for document type
.if '\\$1'1' \{\
.nr m 1
.ds t) TM
.ds t( "for Technical Memorandum\}
.if '\\$1'2' \{\
.nr m 2
.ds t) IM
.ds t( "for Internal Memorandum\}
.if '\\$1'3' \{\
.nr m 3
.ds t) TC
.ds t( "for Technical Correspondence\}
.rm MT
..
.de dN				\" macro for document number info
.ie \\ns=1 .ds s( S
.el .ds s(
.ta 0.8i
.br
.da dM
.if !'\\$1'' \{\
	\\$1\\*(t)\\*(s(
.nr n \\n+n
'''\"					\" save first document number
.if \\nn=1 .ds n) \\$1\\*(t)\\*(s( \}
.br
.da
..
.de oA					\" macro for organizational approval names(s)
.nr oa \\n+(oa
.if \\n(oa=1 .ds u(	\\$1
.if \\n(oa=2 .as u(	\\$1
.if \\n(oa=3 .as u(	\\$1
.if \\n(oa=4 .ds v(	\\$1
.if \\n(oa=5 .as v(	\\$1
.if \\n(oa=6 .as v(	\\$1
.if \\n(oa=7 .ds w(	\\$1
.if \\n(oa=8 .as w(	\\$1
.if \\n(oa=9 .as w(	\\$1
.if \\n(oa=10 .ds x(	\\$1
.if \\n(oa=11 .as x(	\\$1
.if \\n(oa=12 .as x(	\\$1
..
.de fC					\" macro for filing case info
.ta 3.5i
.br
.da fB
.if !'\\$1'' \{\
.nr fc \\n+(fc
	\\$1 \}
.br
.da
..
.de fD					\" macro for full date info
.if !'\\$1'' .fC \\$1				\" use .fC macro underneath
..
.de wP					\" macro for work project info
.ta 5.5i
.br
.da wO
.if !'\\$1'' \{\
.nr wp \\n+(wp
	\\$1 \}
.br
.da
..
.de mC				\" macro for mercury selections - three argument version
.if !'\\$1'' .Mc \\$1
.if !'\\$2'' .Mc \\$2
.if !'\\$3'' .Mc \\$3
..
.de Mc				\" macro for mercury selections - one argument
.ds c)
.if \\nb<3 \{\
.ie '\\$1'CHM' .ds c) "	CHM - Chemistry and Materials
.el .ie '\\$1'chm' .ds c) "	CHM - Chemistry and Materials
.el .ie '\\$1'CMM' .ds c) "	CMM - Communications
.el .ie '\\$1'cmm' .ds c) "	CMM - Communications
.el .ie '\\$1'CMP' .ds c) "	CMP - Computing
.el .ie '\\$1'cmp' .ds c) "	CMP - Computing
.el .ie '\\$1'ELC' .ds c) "	ELC - Electronics
.el .ie '\\$1'elc' .ds c) "	ELC - Electronics
.el .ie '\\$1'LFS' .ds c) "	LFS - Life Sciences
.el .ie '\\$1'lfs' .ds c) "	LFS - Life Sciences
.el .ie '\\$1'MAN' .ds c) "	MAN - Manufacturing
.el .ie '\\$1'man' .ds c) "	MAN - Manufacturing
.el .ie '\\$1'MAS' .ds c) "	MAS - Mathematics and Statistics
.el .ie '\\$1'mas' .ds c) "	MAS - Mathematics and Statistics
.el .ie '\\$1'MKT' .ds c) "	MKT - Marketing
.el .ie '\\$1'mkt' .ds c) "	MKT - Marketing
.el .ie '\\$1'PHY' .ds c) "	PHY - Physics
.el .ie '\\$1'phy' .ds c) "	PHY - Physics
.el .ie '\\$1'STD' .ds c) "	STD - Standards
.el .ie '\\$1'std' .ds c) "	STD - Standards
.el .ie '\\$1'PRP' .ds c) "	PRP - Product Realization Process
.el .ie '\\$1'prp' .ds c) "	PRP - Product Realization Process
.el .ie '\\$1'QLT' .ds c) "	QLT - Quality
.el .if '\\$1'qlt' .ds c) "	QLT - Quality
.ie '\\*(c)'' .tm WARNING: \\$1 - unknown mercury selection
.el \{\
.nr b \\n+b
.if t .as a) \\*(c)
.if n \{\
.ie \\nb=3 \{\
.rn a) b)
.ds a) \\*(c) \}
.el .as a) \\*(c)\}\}\}
..
.de mE				\" macro for mercury selections
.ds a)
.ds b)
.ds c)
'''\"					either 'y' or '1' arguments honored
.nr q 0
.if '\\$1'y' .nr q 1
.if '\\$1'1' .nr q 1
.if \\nq=1 \{\
.as a) "	CHM - Chemistry and Materials
.nr b \\n+b \}
.nr q 0
.if '\\$2'y' .nr q 1
.if '\\$2'1' .nr q 1
.if \\nq=1 \{\
.as a) "	CMM - Communications
.nr b \\n+b
.if n \{\
.if \\nb=2 .rn a) b) \} \}
.nr q 0
.if '\\$3'y' .nr q 1
.if '\\$3'1' .nr q 1
.if \\nq=1 \{\
.as a) "	CMP - Computing
.nr b \\n+b
.if t \{\
.if \\nb=3 .rn a) b) \}
.if n \{\
.if \\nb=2 .rn a) b) \} \}
.nr q 0
.if '\\$4'y' .nr q 1
.if '\\$4'1' .nr q 1
.if \\nq=1 \{\
.as a) "	ELC - Electronics
.nr b \\n+b
.if t \{\
.if \\nb=3 .rn a) b) \}
.if n \{\
.if \\nb=4 \{\
.rn b) c)
.rn a) b) \}
.if \\nb=2 .rn a) b) \} \}
.nr q 0
.if '\\$5'y' .nr q 1
.if '\\$5'1' .nr q 1
.if \\nq=1 \{\
.as a) "	LFS - Life Sciences
.nr b \\n+b
.if t \{\
.if \\nb=3 .rn a) b) \}
.if n \{\
.if \\nb=4 \{\
.rn b) c)
.rn a) b) \}
.if \\nb=2 .rn a) b) \} \}
.nr q 0
.if '\\$6'y' .nr q 1
.if '\\$6'1' .nr q 1
.if \\nq=1 \{\
.as a) "	MAS - Mathematics and Statistics
.nr b \\n+b
.if t \{\
.if \\nb=3 .rn a) b) \}
.if n \{\
.if \\nb=4 \{\
.rn b) c)
.rn a) b) \}
.if \\nb=2 .rn a) b) \} \}
.if \\nb<6 \{\
.nr q 0
.if '\\$7'y' .nr q 1
.if '\\$7'1' .nr q 1
.if \\nq=1 \{\
.as a) "	PHY - Physics
.nr b \\n+b
.if t \{\
.if \\nb=3 .rn a) b) \}
.if n \{\
.if \\nb=4 \{\
.rn b) c)
.rn a) b) \}
.if \\nb=2 .rn a) b) \} \} \}
.if t \{\
.if \\nb=3 .rn b) a) \}
.if n \{\
.if \\nb=4 \{\
.rn b) a)
.rn c) b) \}
.if \\nb=2 .rn b) a) \}
.rm mE
..
.de eD				\" macro for earlier document number
.if !'\\$1'' .ds e( \\$1
.rm eD
..
.de PM				\" macro for proprietary marking
.					\" arg 1 - RS or BR or IR or TR or R - restricted
.if '\\$1'RS' .nr p 2
.if '\\$1'BR' .nr p 2
.if '\\$1'IR' .nr p 2
.if '\\$1'TR' .nr p 2
.if '\\$1'R' .nr p 2
.rm PM
..
.de gS				\" macro for government security classified
.nr r 1
.rm gS
..
.de rA				\" macros for release to Lucent employees
.					\" superceded by .fA macro 072087
.nr ra 1
.rm rA
..
.de fA				\" macro for future Lucent distribution
.					\" arg 1 = 'y' or 'Y' or 'n' or 'N'
.if '\\$1'y' .nr ra 1
.if '\\$1'Y' .nr ra 1
.if '\\$1'n' .nr ra 2
.if '\\$1'N' .nr ra 2
.rm fA
..
.de sF				\" macro for software-related document
.nr s 1
.rm sF
..
.de cI
.rm cI
..
.de dL				\" macro for calculating basic distribution length
'''\"					call once only - from .cC, .cS, or .CS
.if \\nd=0 \{\
.nr d 1
'''\"					calculate space considerations
'''\"					basic distribution length - to be tailored - set e and h
.if \\nr=0 .nr e \\ne+2
.if \\nu<=3 .nr e \\ne+3
.if \\nu<=6 .nr e \\ne+3
.if \\nu<=9 .nr e \\ne+3
.if (((\\n(oa>0)&(\\n(oa<=3)):((\\nn<=3)&(\\n(oa=0))) .nr e \\ne+3
.if (((\\n(oa>0)&(\\n(oa<=6)):((\\nn<=6)&(\\n(oa=0))) .nr e \\ne+3
.if (((\\n(oa>0)&(\\n(oa<=9)):((\\nn<=9)&(\\n(oa=0))) .nr e \\ne+3
'''\"						nroff: if p=2, 1 extra line under Org Approval
.if n .if \\np=2 .nr e \\ne-1
'''\"						Future Lucent Distribution handling
.if ((\\n(ra<2)&(\\np=2)) \{\
.nr ra 2
.tm WARNING: Future Alcatel-Lucent Distribution by ITDS - PROPRIETARY (RESTRICTED) document     MAY NOT BE RELEASED without appropriate approval for each request;                coversheet has been modified accordingly\}
.if \\n(ra=0 \{\
.tm WARNING: Future Alcatel-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 \}
'''\"						at least 3 lines for Future Lucent Distribution section (more for nroff negative and ra=0)
'''\"					\" next 2 lines for yes/no boxes; remove when .fA macro becomes mandatory
.if t .if \\n(ra=0 .nr e \\ne-4
.if n .if \\n(ra=0 .nr e \\ne-5
.if \\n(ra=1 .nr e \\ne-3
.if t .if \\n(ra=2 .nr e \\ne-3
.if n .if \\n(ra=2 .nr e \\ne-4
'''\" increment number on next two lines to drop text lower on page 2
.if t .nr e \\ne+23
.if n .nr e \\ne+21 
.if n \{\
'''\"					if page 2 text changes, change values in next 3 lines
.if \\ne<4 \{\
.tm ERROR: insufficient space to format cover sheet; use "docsend -Taps" \
          	for APS-5, "docsend -Ti10" for imagen, or "docsend -TX97" -    \
          	or use stockroom cover sheet
.ab	\}
.ie \\ne<8 .nr e 0
.el .nr e \\ne-7 \}
.nr h \\ne
.br \}
.rm dL
..
.de cC				\" macro for handling complete copy addressees
.dL
.ta 2.0i
.nf
.br
.ie \\ne>0 \{\
.da cA
.dt \\nev cD \}
.el .da cO
.rm cC
..
.de cD				\" macro for handling complete copy address overflow
.ta 2.0i
.br
.da
.da cO
.nr lo 56-\\n(lt
.dt \\n(lo zZ
..
.de zZ			\" macro for handling previously lost complete copy address overflow
.				\" provide 5 additional continuation pages (6 in all - approx 350 names)
.ie "\\n(.z"cO" .fF "g" "cU"
.el .ie "\\n(.z"cU" .fF "g1" "cV"
.el .ie "\\n(.z"cV" .fF "g2" "cW"
.el .ie "\\n(.z"cW" .fF "g3" "cX"
.el .ie "\\n(.z"cX" .fF "g4" "cY"
.el .if "\\n(.z"cY" .fF "g5" "cZ"
..
.de fF			\" aux macro for handling previously lost complete copy address overflow
.ta 2.0i
.br
.da
.ie \\n(dn>0 \{\
.nr \\$1 (\\n(dn)/\\nl+4
.da \\$2
.nr lo 56-\\n(lt
.dt \\n(lo zZ \}
.el \{\
.nr \\$1 0
.da cZ \}
..
.de cS				\" macro for handling cover sheet only addresses
.dL
.ta 2.0i
.nf
.br
.ie \\nh>0 \{\
.da dA
.dt \\nhv cT \}
.el .da dO
.rm cS
..
.de cT				\" macro for handling cover sheet address overflow
.ta 2.0i
.br
.da
.da dO
.nr lo 56-\\n(lt
.dt \\n(lo wW
..
.de wW			\" macro for handling previously lost cover sheet only address overflow
.				\" provide 5 additional continuation pages (6 in all - approx 350 names)
.ie "\\n(.z"dO" .gG "i" "dU"
.el .ie "\\n(.z"dU" .gG "i1" "dV"
.el .ie "\\n(.z"dV" .gG "i2" "dW"
.el .ie "\\n(.z"dW" .gG "i3" "dX"
.el .ie "\\n(.z"dX" .gG "i4" "dY"
.el .if "\\n(.z"dY" .gG "i5" "dZ"
..
.de gG			\" aux macro for handling previously lost cover sheet only address overflow
.ta 2.0i
.br
.da
.ie \\n(dn>0 \{\
.nr \\$1 (\\n(dn)/\\nl+4
.da \\$2
.nr lo 56-\\n(lt
.dt \\n(lo wW \}
.el \{\
.nr \\$1 0
.da dZ \}
..
.de cE				\" macro for ending all distribution diversions
.br
.ie "\\n(.z"cA" \{\
.da
.rm cD \}
.el .ie "\\n(.z"cO" .eE "g" "cD"
.el .ie "\\n(.z"cU" .eE "g1" "cD"
.el .ie "\\n(.z"cV" .eE "g2" "cD"
.el .ie "\\n(.z"cW" .eE "g3" "cD"
.el .ie "\\n(.z"cX" .eE "g4" "cD"
.el .ie "\\n(.z"cY" .eE "g5" "cD"
.el .ie "\\n(.z"cZ" \{\
.da
.rm cD \}
.el .ie "\\n(.z"dA" \{\
.da
.rm cT \}
.el .ie "\\n(.z"dO" .eE "i" "cT"
.el .ie "\\n(.z"dU" .eE "i1" "cT"
.el .ie "\\n(.z"dV" .eE "i2" "cT"
.el .ie "\\n(.z"dW" .eE "i3" "cT"
.el .ie "\\n(.z"dX" .eE "i4" "cT"
.el .ie "\\n(.z"dY" .eE "i5" "cT"
.el .if "\\n(.z"dZ" \{\
.da
.rm cT \}
..
.de eE			\" aux macro for ending all distribution diversions
.da
.ie \\n(dn>0 .nr \\$1 (\\n(dn)/\\nl+4
.el .nr \\$1 0
.rm \\$2
..
'''\"
'''\" macros to help format document
'''\"
.deB
.ie\\n(.$ .nr ;G \\n(.f
.el.ft 3
.if\\n(.$ .if !\\n(.$-2 \&\f3\\$1\fP\\$2
.if\\n(.$-2 \{.ds }i
.if\\n(.f2 .ds }i \^
.ds}I \&\f3\\$1\fP\\$2\\*(}i
'br\}
.if\\n(.$-2 .if !\\n(.$-4 \\*(}I\f3\\$3\fP\\$4
.if\\n(.$-4 .if !\\n(.$-6 \\*(}I\f3\\$3\fP\\$4\\*(}i\f3\\$5\fP\\$6
.if\\n(.$ .ft \\n(;G
..
.deI
.ie\\n(.$ .nr ;G \\n(.f
.el.ft 2
.if\\n(.$ .if !\\n(.$-1 \&\f2\\$1
.if\\n(.$-1 \{.ds }i \^
.if\\n(.f2 .ds }i
.ds}I \&
.if\w\\$1 .ds }I \&\f2\\$1\fP\\*(}i
'br\}
.if\\n(.$-1 .if !\\n(.$-3 \\*(}I\\$2\f2\\$3
.if\\n(.$-3 .if !\\n(.$-5 \\*(}I\\$2\f2\\$3\fP\\*(}i\\$4\f2\\$5
.if\\n(.$-5 \\*(}I\\$2\f2\\$3\fP\\*(}i\\$4\f2\\$5\fP\\*(}i\\$6
.if\\n(.$ .ft \\n(;G
..
.deRI
.nr;G \\n(.f
.}S 1 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
..
.deRB
.nr;G \\n(.f
.}S 1 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
..
.deIR
.nr;G \\n(.f
.}S 2 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
..
.deIB
.nr;G \\n(.f
.}S 2 3 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
..
.deBR
.nr;G \\n(.f
.}S 3 1 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
..
.deBI
.nr;G \\n(.f
.}S 3 2 \& "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6"
..
.de}S
.ds}i
.if\\$12 .if !\\$5 .ds }i\^
.ie!\\$4 .}S \\$2 \\$1 "\\$3\f\\$1\\$4\\*(}i" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
.el\\$3
.ft\\n(;G
..
.deR
.ft1
.ul0
..
.de S				\" set point size and vertical spacing
.ie \\n(.$=0 \{\
.ps
.if t .vs \}
.el \{\
.ie \w\(ts\\$1\(ts \{\
.ie 0\\$1-99 .nr ts \\n(ps
.el .nr ts \\$1 \}
.el .nr ts \\n(.s 
.ps \\n(ts
.if \\n(.$=1 .if t \{\
.nr tv \\n(.s+2
.vs \\n(tvp \}
.if \\n(.$>1 .if t \{\
.ie \w\(ts\\$2\(ts \{\
.ie 0\\$2-99 .nr tv \\n(.s+2
.el .nr tv \\$2 \}
.el .nr tv \\n(.v 
.vs \\n(tvp \} \}
..
.de sP				\" space 1 blank line (vertical space)
.if n .sp 1
.if t .sp 0.5
..
.de P				\" paragraph - (default - left-adjusted)
.					\" arg #1=0 - left-adjusted
.					\" arg #1=1 - indent standard amount
.ne 1.1
.sP
.if (\\n(.$>0)&(0\\$1=1) .ti +\\n(sin
..
.de HC				\" set hyphenation indicator
.ev0
.hc\\$1
.ev
.ev1
.hc\\$1
.ev
.ev2
.hc\\$1
.ev
..
.de SA				\" macro for right-adjustment
.if \\n(.$ \{\
.if \\$1-1 .tm WARNING: SA: bad arg:\\$1
.nr :h 0\\$1 \}
'na
.if \\n(:h 'ad
..
.de iN				\" macro for font and size re-initialization
.ft 1
.ps \\n(ps
.if t .vs \\n(vsp
..
.de DS				\" macro for display start
.if \\n(ds>0 \{\
.tm Display within display - illegal.
.DE \}
.if \\n(fs>0 \{\
.tm Display within footnote - illegal.
.FE \}
.nr in \\n(.i
.nr fi \\n(.u
.br
.ev 2
.br
.ll 7.0i
.nf
.in \\n(inu
.sP
.if \\n(.$>1 \{\
.if '\\$2'F' .nr dt 4
.if '\\$2'1' .nr dt 4
.if \\n(dt=4 .fi \}
.if \\n(.$>2 .ll-0\\$3
.nr dt 0
.nr bd 0
.if '\\$1'I' .nr dt 1
.if '\\$1'1' .nr dt 1
.if \\n(dt=1 .in \\n(sin
.if '\\$1'C' .nr dt 2
.if '\\$1'2' .nr dt 2
.if \\n(dt=2 .ce 1000
.if '\\$1'CB' .nr dt 3
.if '\\$1'3' .nr dt 3
.if \\n(dt=3 \{\
.nr bd 1
.di dS \}
.nr ds 1
..
.de DE				\" macro for display end
.br
.ie \\n(ds=0 .tm DE: no active DS
.el \{\
.ce 0
.if \\n(bd>0 \{\
.di
.if \\n(dl>\\n(bd .nr bd \\n(dl
.if \\n(bd<\\n(.l .in (\\n(.lu-\\n(bdu)/2u
.nr dt \\n(.l-\\n(.i
.ta \\n(dtuR
.dS
.br \}
.nr bd 0
.nr ds 0
.nr dt 0
.ev
.in \\n(inu
.sP
.ie \\n(fi=0 .nf
.el .fi \}
..
.de EQ				\" macro for equation start
.ds e) \\$1
.di eQ
..
.de EN				\" macro for equation end
\!.br
.br
.di
.lt \\n(.lu
.pc
.if \w\(ts\\*(10\\*(e)\(ts \{\
.ie \\n(bd>0 \{\
.if \\n(bd<\w\(ts\\*(10\(ts .nr bd \w\(ts\\*(10\(ts
\!\\*(10\h'\\\\n(.lu-\w\(ts\\*(10\\*(e)u\(ts-\\\\n(.iu'\\*(e)
.br \}
.el .ie \\n(dt=2 .tl \(ts\(ts\\*(10\(ts\\*(e)\(ts
.el .ie \\n(dt=1 .tl \(ts\h'\\n(sin'\\*(10\(ts\(ts\\*(e)\(ts
.el .if \\n(dt=0 .tl \(ts\\*(10\(ts\(ts\\*(e)\(ts
'br\}
.pc%
.lt
..
.de VL				\" macro for variable-item lists
.if \\n(ls>0 \{\
.tm VL: lists may not be nested
.LE \}
.ie \\n(.$<1 .tm WARNING: VL: text-indent not defined
.el \{\
.nr in \\n(.i
.nr :b \\n(.iu+0\\$1n
.nr :c \\n(.iu+0\\$2n
.ds y) \&
.ie \\n(.$=3 .nr :d 1
.el .nr :d 0
.if \\n(:d=1 .sP
.fi
.nr ls +1
.br \}
..
.de ML				\" macro for marked list
.if \\n(ls>0 \{\
.tm ML: lists may not be nexted
.LE \}
.ie \\n(.$<1 .tm ML: mark not defined
.el \{\
.nr in \\n(.i
.ds y) \\$1
.ie (\\n(.$>1)&(\\$2>0) .nr :b \\n(.iu+0\\$2n
.el .nr :b \\n(.iu+\w\(ts\\*(y)\(tsu+1n
.nr :c \\n(:bu-1n-\w\(ts\\*(y)\(tsu
.ie \\n(.$=3 .nr :d 1
.el .nr :d 0
.if \\n(:d=1 .sP
.fi
.in \\n(:bu
.nr ls +1
.br \}
..
.de BL				\" macro for bullet list - using marked list
.ie \\n(.$=2 .ML \\(bu \\$1 \\$2
.el .ie \\n(.$=1 .ML \\(bu \\$1
.el .ML \\(bu
..
.de LI				\" macro for list item
.ie \\n(ls=0 .tm LI: no active lists
.el \{\
.ds z) \\*(y)
.if \\n(.$=1 .ds z) \\$1
.if \\n(.$=2 .ds z) \\$1\&\\*(z)
.if \\n(:d=0 .sP
.in \\n(:bu
.ti \\n(:cu
.nr :e \w\(ts\\*(z)\(ts
\\*(z)\h'\\n(:bu-\\n(:cu-\\n(:eu'\c \}
..
.de LE				\" macro for list end
.ie \\n(ls=0 .tm LE: no active list
.el \{\
.br
.nr ls -1
'in \\n(inu
'ti \\n(inu
.if \\n(.$>0 .sP \}
..
.de hD				\" header macro
'''\" page offset 0.6i for XEROX & DASI; 0.25i for all other devices
'''\" cut marks for APS only
.po 0.25i
.if \\n(dv=3 .po 0.6i
.if n .po 0.6i
.if \\n(dv=1 .tl '\(rn''\(rn'
.if t 'sp|0.2i
.if n 'sp|1
..
.de fO				\" footer macro
.if t .pl 11.0i
.if n .pl \\n(lp
'bp
..
.de yY				\" macro for abstract overflow - line -1
.aT
.rm yY
..
.de aT				\" macro for abstract overflow trap
.					\" register a counts overflow pages
.if \\na>0 \{\
.ft 2
.ce
(continued)
.ft 1 \}
.if t .pl 11.0i
.if n .pl \\n(lp
.nr a \\n+a
.rn aT xX
'bp
.rn xX aT
.if n .wh -2 aT
.if t .wh -0.55i aT
.cH
.tH
.if t 'sp 0.05i
.ce
.ft 3
Abstract (continued)
.ft 1
.in 0.2i
'sp 1
..
.de tK				\" macro for thick lines
.ps 24
\l'7.5i'
.ps
..
.de bE				\" macro for empty box
.ps 12
.if t \\(sq
.if n [ ]
.ps
..
.de bX				\" macro for box with x
.ps 12
.if t \\o'\(mu\(sq'
.if n [x]
.ps
..
.de tH				\" macro for Title heading and text
.					\" called from aT and eP and CS
.tK
.if t 'sp 0.05i
'''\"					mark t - Title heading
.mk t
.ft 3
Title:
.ft 1
'sp|\\ntu
.in 0.7i
.tI
.in 0
.ta 0.5i
.nr q \\no/\\nl
.ie \\nq>2 'sp|\\ntu+\\nq
.el 'sp|\\ntu+2
.tK
.					\" m1 - mark end of title section - save
.mk m1
..
.de cH				\" macro for abstract or distribution list continuation header
.					\" called from aT and eP
.					\" calculate this page number
.nr np \\n(np+1
.nf
.in 0
.ft 3
.ta 7.5iR
.nr tc \\n(tp
.nr nc \\n(np
	\\*(n)\f2 (page \\n(nc of \\n(tc)
.ft1
.if t 'sp 0.1i
..
.de dH				\" macro for distribution list headers
.					\" called from cP and CS
.ft 3
.ta 1.0i 4.75i
	\\$1	\\$2
.if t .sp 0.05i
.ft 1
.ta 0.5i 1.0i
..
.de oH			\" macro for final overflow distribution list headers
.				\" called from cP
.if \\$1>4 .if \\$2>4 .dH "Complete Copy (continued)" "Cover Sheet Only (continued)"
.if \\$1>4 .if !\\$2>4 .dH "Complete Copy (continued)" ""
.if !\\$1>4 .if \\$2>4 .dH "" "Cover Sheet Only (continued)"
..
.de eP				\" macro for ejecting distribution continuation page
.					\" called from cP
'bp
.wh 0 hD
'''\"					put out continuation page header & title section
.cH
.tH
..
.de cP				\" macro for continuation (distribution list) page
.					\" called from CS
.					\" if any distribution overflow will fit before next trap, set v=2
.ie \\nv<=\\n(.t .nr v 1
.el .nr v 0
.if \\nv=1 .if \\nw<=\\n(.t .nr v 2
.					\" check whether continuation page needs to be ejected
.in 0
.if \\nc=1 \{\
.						\" - if no abstract overflow
.if \\na=0 .eP
.if \\na>0 \{\
.						\" - or if abstract overflow - but not enough room for list overflow
.ie \\nv<2 .eP
.						\" just a thick line if abstract overflow AND enough room for list
.el .tK \}
.ie \\ne=0 \{\
.if \\ng>4 .if \\ni>4 .dH "Complete Copy" "Cover Sheet Only"
.if \\ng>4 .if !\\ni>4 .dH "Complete Copy" ""
.if !\\ng>4 .if \\ni>4 .dH "" "Cover Sheet Only" \}
.el .oH \\ng \\ni
.mk z
.nr q \\n(.t/\\nl
'''\"					put out complete copy list overflow
.in 0.2i
.cO
.in 0
.rm cO
.if !\\n(g1=0 \{\
.ft 2
.ti 1.25i
(continued)
.ft 1 \}
.mk x
.sp|\\nzu
.in 4.0i
'''\"					put out cover sheet list overflow
.dO
.rm dO
.if !\\n(i1=0 \{\
.ft 2
.ti 5.00i
(continued)
.ft 1 \}
.mk y
.if ((\\n(g1>0):(\\n(i1>0)) .dP "\\n(g1" "\\n(i1" "cU" "\\n(g2" "dU" "\\n(i2"
.if ((\\n(g2>0):(\\n(i2>0)) .dP "\\n(g2" "\\n(i2" "cV" "\\n(g3" "dV" "\\n(i3"
.if ((\\n(g3>0):(\\n(i3>0)) .dP "\\n(g3" "\\n(i3" "cW" "\\n(g4" "dW" "\\n(i4"
.if ((\\n(g4>0):(\\n(i4>0)) .dP "\\n(g4" "\\n(i4" "cX" "\\n(g5" "dX" "\\n(i5"
.if ((\\n(g5>0):(\\n(i5>0)) \{\
.eP
.oH \\n(g5 \\n(i5
.mk z
.in 0.2i
.cY
.in 0
.rm cY
.mk x
.sp|\\nzu
.in 4.0i
.dY
.rm dY
.mk y \}
.in 0
.if \\nx-\\ny .sp|\\nxu
.tK \}
..
.de dP					\" macro to handle one continuation page
.eP
.oH \\$1 \\$2
.mk z
.in 0.2i
.\\$3
.in 0
.rm \\$3
.if !\\$4=0 \{\
.ft 2
.ti 1.25i
(continued)
.ft 1 \}
.mk x
.sp|\\nzu
.in 4.0i
.\\$5
.rm \\$5
.if !\\$6=0 \{\
.ft 2
.ti 5.00i
(continued)
.ft 1 \}
.mk y
..
.de tP					\" macro to compute total pages and diversion lengths
'''\"					calculate vert. units needed to handle cc overflow (if any)
'''\"					called from CS macro
.ie \\ng>4 .nr v (\\ng)*\\nl
.el .nr v 0
'''\"					also for cs overflow (if any)
.ie \\ni>4 .nr w (\\ni)*\\nl
.el .nr w 0
.ie \\nv>\\nw .nr j \\nv
.el .nr j \\nw
.					\" set c=1 if either g or i >0
.if \\ng>4 .nr c 1
.if \\ni>4 .nr c 1
.					\" calculate total pages in job (default 2)
.nr tp 2
.					\" a1 - page 1 portion abstract (units)
.nr a1 \\nyu-\\nxu-1v
.ie \\n(la>\\n(a1 \{\
.					\" ar - remainder abstract (units)
.nr ar \\n(la-\\n(a1
.nr tp \\n(tp+1
.					\" a2 - available continuation page space
.						\" m1 is mark after thick line following title/date
.						\" 2v are lines for Abstract (continued) and one blank line
.if t .nr a2 11.0i-\\n(m1-3v
.if n .nr a2 \\n(lpv-\\n(m1-3v
.t1 \}
.el .if \\nc>0 .nr tp \\n(tp+1
.if ((\\n(g1>4):(\\n(i1>4)) .nr tp \\n(tp+1
.if ((\\n(g2>4):(\\n(i2>4)) .nr tp \\n(tp+1
.if ((\\n(g3>4):(\\n(i3>4)) .nr tp \\n(tp+1
.if ((\\n(g4>4):(\\n(i4>4)) .nr tp \\n(tp+1
.if ((\\n(g5>4):(\\n(i5>4)) .nr tp \\n(tp+1
..
.de t1
.ie \\n(ar>\\n(a2 \{\
.nr ar \\n(ar-\\n(a2
.nr tp \\n(tp+1
.t1 \}
.el .if \\n(ar+\\nj>\\n(a2 .nr tp \\n(tp+1
..
'''\"
'''\" main macro to handle output of cover sheet
'''\"
.de CS
.if \\nu=0 \{\
.tm ERROR: author must be supplied
.ab	\}
.if \\no=0 \{\
.tm ERROR: document title must be supplied
.ab	\}
.if \\nm=0 \{\
.tm ERROR: memorandum type undefined or unknown
.ab	\}
.if ((\\nm=1)&(\\np=1)) .if \\nb=0 \{\
.tm ERROR: must have at least one mercury classification with technical memorandum
.ab \}
.if \\nn=0 \{\
.tm ERROR: document number must be supplied
.ab	\}
.if \\n(la=0 .if \\nm<3 \{\
.tm ERROR: abstract must be supplied for technical and internal memoranda
.ab	\}
.if \\nb>3 \{\
.tm ERROR: no more than 3 mercury classifications may be selected
.ab	\}
.if \\n(fc=0 \{\
.if \\n(en<3 \{\
.tm ERROR: filing case must be supplied
.ab	\}
.if \\n(en=3 \{\
.tm ERROR: full date must be supplied
.ab	\}\}
.if \\n(wp=0 \{\
.tm ERROR: work project number must be supplied
.ab	\}
.dL
.ll 7.5i
.iN
.if \\n(nl .bp
.in 0
.hD
'''\"					put out 1 blank line where timestamp used to be
.sp1
.if t .sp 0.05i
.nf
.ps 16
.ft 3
.					\" put out page 1 heading
'''\"					if Lucent logo not defined, put out Lucent string
'''\"					   also put out memorandum type
.ie ((\\n(dv=5)) \{\
.ie '\f(AT'' .nr lg 0
.el .nr lg 1 \}
.el \{\
.ie '\*(lG'' .nr lg 0
.el .nr lg 1 \}
.ie ((\\n(lg=0)) \{\
.ta 7.5iR
\\*(e2	Document Cover Sheet
.wh 0 hD
.if t .sp 0.1i
	\\*(t(\}
.el \{\
.ta 7.5iR
	Document Cover Sheet
.wh 0 hD
.if t .sp 0.1i
.if \\n(dv=5 \{\
.ft P
.nr v \n(.f
.ft P \}
.ta 0.25i 7.5iR
	\\*(lG	\\*(t(\}
.ft 1
.ps 10
.tH
.if t .sp 0.05i
.ft 3
.ie \\nu>1 .ds u) s
.el .ds u)
.if !\\n(en=3 \{\
.ta 0.5i 2.75i 4.0i 4.7i
	Author\\*(u)	Location	Ext.	Company (if other than \\*(e1)
.br \}
.if \\n(en=3 \{\
.ta 0.5i 2.75i 4.0i 5.0i
	Author\\*(u)	Location	Ext.	     Company (if other than
.if t 				\\*(e3)
.if n				     \\*(e3)
.br \}
.ft 1
'''\"					output author info
.aV
.if !'\\*(r('0' \{\
.ta 0.3i 2.6i
	\\*(r(	(Responsible \\*(e1 Person)\}
.rm aV AU
.tK
.if t .sp 0.05i
.ft 3
.ie \\nn>1 .ds v) s
.el .ds v)
.ie \\n(fc>1 .ds w) s
.el .ds w)
.ie \\n(wp>1 .ds x) s
.el .ds x)
.ta 1.0i 3.3i 5.55i
.if \\n(en=1 \{\
	Document No\\*(v).	Filing Case No\\*(w).	Project No\\*(x).
.br \}
.if \\n(en=2 \{\
	Document No\\*(v).	Filing Case No\\*(w).	Project No\\*(x).
.br \}
.if \\n(en=3 \{\
.if t .ta 1.0i 3.4i 4.7i
.if n .ta 1.0i 3.4i 4.5i
	Document No\\*(v).	Full Date	Time Charge (or Project Code) No\\*(x).
.br \}
.if \\n(en=4 \{\
.if t .ta 1.0i 3.4i 5.2i
.if n .ta 1.0i 3.4i 5.0i
	Document No\\*(v).	Filing Case No\\*(w).	Time Charge (or Case) No\\*(x).
.br \}
.ft 1
.if t .sp 0.05i
.mk t
'''\"					output document number
.dM
.rm dN dM
.mk x
.sp|\\ntu
'''\"					output filing case info (or full date)
.fB
.rm fB fC
.mk y
.sp|\\ntu
'''\"					output work project number info
.wO
.rm wO wP
.mk z
.if \\ny>\\nx .nr x \\ny
.if \\nz>\\nx .nr x \\nz
.sp|\\nxu
.tK
'''\"					output keywords if they exist
.if \\nk>0 \{\
.ft 3
Keywords:
.ft 1
.if t .sp 0.05i
.in 0.2i
.fi
\\*(k)
.nf
.in 0
.tK \}
'''\"					output mercury info if it exists
.if \\nb>0 \{\
.ft 3
MERCURY Announcement Bulletin Sections
.ft 1
.if t \{\
.sp 0.05i
.ta 0.6i 3.1i 5.6i
.ps 8
\\*(a)
.ps \}
.if n \{\
.ta 0.5i 4.1i
.if \\nb>2 \\*(b)
\\*(a)
.ps \}
.tK \}
.ps 10
.ft 3
Abstract
.ft 1
.mk x
.if t \{\
.nr b1 \\nx/\\n(.v+1
.nr b2 (\\n(b1*\\n(.v)-\\nx
.sp \\n(b2u
.mk x \}
'''\" calculate position (19v includes 2v to print version at bottom of page)
'''\"	followed by timestamp and 1v line
.nr y \\n(lpv-19v-\\n(fnu
.sp|\\nyu
.sp -1
.tP
'''\"					handle abstract page 1 continuation
.ie \\n(la>\\n(a1 \{\
.ce
.ft2
(continued on page iii)
.ft1
.br \}
.el .sp1
.tK
.ps 8
.if t .vs 10p
.nr z 0
.if '\\$1'' .nr z 1
.if !'\\$2'' .nr z 1
.if !'\\$3'' .nr z 1
.if !'\\$4'' .nr z 1
.if !'\\$5'' .nr z 1
.if !'\\$6'' .nr z 1
.if \\nz=1 \{\
.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. \}
.nr z 0
.if !'\\$1'' .nr z \\nz+\\$1
.nr z \\nz+\\n(tp
.tm Total Pages = \\nz
.ie '\*(.T'X97.tim10p'\{\
Total Pages (including document cover sheet):  \\s+2\\nz\\s-2
.if !\\*(e('0' \{\
Supersedes or amends document number \\*(e(. \}
.el .sp1 \}
.el \{\
\f3Total Pages\f1 (including document cover sheet):  \\s+2\\nz\\s-2
.if !'\\*(e('0' \{\
\f3Supersedes\f1 or amends document number \\*(e(. \}
.el .sp1 \}
.ps
.if t .vs
.if \\n(fn>0 \{\
.br
.nf
.fN
.rm fN
.br \}
.mk z
.if t .sp 0.67i
.if n .sp 4
'''\"					output proprietary notice if it exists
.if \\np=1 \{\
.ds o) ALCATEL-LUCENT \- PROPRIETARY
.ds p) "Use pursuant to Company Instructions
.ds q)
.ds r)
.ft 2
.if n .ti 14
.if t .ti 1.65i
\\*(o)
.ft 1
.if n .ti 5
.if t .ti 1.25i
\\*(p) \}
.if \\np=2 \{\
.ds o) ALCATEL-LUCENT \- PROPRIETARY (RESTRICTED)
.ds p) "Solely for authorized persons having a need to know
.ds q) "pursuant to Company Instructions
.ft 2
.if n .ti 10
.if t .ti 1.25i
\\*(o)
.ft 1
.if n .ti 0
.if t .ti 0.875i
\\*(p)
.if n .ti 10
.if t .ti 1.375i
\\*(q) \}
'''\"					output csmacros version
.sp |\\nzu+11v
.ta 7.5iR
\\s8\\*(ve\\s0
'''\"					put out timestamp (if non-empty) and company identifier
.ie !'\\*(s)'0' \{\
\\s8\\*(s)\\s0	\\*(e3 \}
.el "	\\*(e3
.sp|\\nzu
.sp1
.ft 3
.ti 5.25i
\\*(m)
.ft 1
.sp|\\nxu
.in 0.2i
.nf
'''\"					abstract
.if \\n(la>\\n(a1 \{\
.if n .wh -1 yY
.if t .wh -0.25i yY \}
.pl \\nyu
.ta 0.5i 1.0i 1.5i 2.0i 2.5i
'''\"					output the abstract
.aS
.rm aS
.if !\\n(la>\\n(a1 .sp-1
.rn aT xX
.if t .wh -0.25i fO
.if n .wh -1 fO
'''\"					output continuation pages
.cP
'bp
.ft 1
.in 0
.wh 0 hD
.nf
.ft 3
.ta 7.5iR
.nr tc \\n(tp
Initial Distribution Specifications	\\*(n)\f2 (page ii of \\n(tc)\f3
.ft 1
.tK
.if \\ne>0 \{\
.dH "     Complete Copy" "     Cover Sheet Only"
.mk z
'''\"					put out complete copy list
.in 0.2i
.cA
.in 0
.rm cA
.if !\\ng=0 \{\
.ft 2
.ti 1.25i
(continued)
.ft 1 \}
.sp|\\nzu
.in 4.0i
'''\"					put out cover sheet list
.dA
.rm dA
.if !\\ni=0 \{\
.ft 2
.ti 5.00i
(continued)
.ft 1 \}
.in 0
'''\"					starter space value - then tailor according to basic distribution length
.sp|5
.sp \\ne
.tK \}
'''\"					put out security section if selected
.if \\nr=1 \{\
\f3Government Security Classified\f1
.ft 1
.if t .sp -0.05i
.tK \}
\f3Future Alcatel-Lucent Distribution by ITDS\f1
.if \\n(ra>0 \{\
.ti 0.5i
.if t .sp 0.05i
.ie \\n(ra=2 \{\
.if t \f3DO NOT RELEASE\f1 to any Alcatel-Lucent employee without appropriate approval for each request.
.if n \{\
\f3DO NOT RELEASE\f1 to any Alcatel-Lucent employee without appropriate approval
.br
.ti 1.0i
for each request.\}\}
.el \{\
\f3RELEASE\f1 to any Alcatel-Lucent employee (excluding contract employees).
.br \}\}
'''\"					next 41 lines for yes/no boxes; remove when .fA macro becomes mandatory
.if \\n(ra=0 \{\
.if t \{\
.mk z
.ti 0.1i
.bE
.sp|\\nzu
.ti 0.25i
Yes, \f3RELEASE\f1 to any Alcatel-Lucent employee (excluding
.sp|\\nzu
.ti 4.1i
.bE
.sp|\\nzu
.ti 4.25i
No, \f3DO NOT RELEASE\f1 to any Alcatel-Lucent employee
.mk z
.ti 0.35i
contract employees).
.sp|\\nzu
.ti 4.35i
without obtaining appropriate approval.\}
.if n \{\
.mk z
.ti 0.1i
.bE
.sp|\\nzu
.ti 0.4i
Yes, \f3RELEASE\f1 to any Alcatel-Lucent employee
.sp|\\nzu
.ti 4.1i
.bE
.sp|\\nzu
.ti 4.4i
No, \f3DO NOT RELEASE\f1 to any Alcatel-Lucent
.mk z
.ti 0.5i
(except contract employees).
.ti 4.5i
.sp|\\nzu
employee without obtaining
.ti 4.5i
appropriate approval.\}\}
.if t .sp -0.05i
.tK
.ft 3
Author Signature\\*(u)
.ft 1
.sp1
.ta 2.625i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(m(
.if \\nu>3 \{\
.sp1
.ta 2.635i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(n( \}
.if \\nu>6 \{\
.sp1
.ta 2.635i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(o( \}
.if \\nu>9 \{\
.sp1
.ta 2.635i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(p( \}
.if t .sp -0.1i
.tK
'''\"					output organizational approval section
.ie \\np>1 \{\
.if t \{\
\f3Organizational Approval\f1  (\\*(e4 approval \f3required\f1 for \f2\\*(o)\f1.) \}
.if n \{\
\f3Organizational Approval\f1
.ti 0.5i
\\*(e4 approval \f3required\f1 for \f2\\*(o)\f1. \}
.br \}
.el \{\
\f3Organizational Approval\f1  (Optional) \}
.sp 1
.ta 2.625i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(u(
.if ((\\n(oa>3):((\\nn>3)&(\\n(oa=0))) \{\
.sp1
.ta 2.625i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(v( \}
.if ((\\n(oa>6):((\\nn>6)&(\\n(oa=0))) \{\
.sp 1
.ta 2.625i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(w( \}
.if ((\\n(oa>9):((\\nn>9)&(\\n(oa=0))) \{\
.sp 1
.ta 2.625i 5.25i
\l'2.25i'	\l'2.25i'	\l'2.25i'
.ta 0.25i 2.875i 5.5i
\\*(x( \}
.if t .sp -0.1i
.tK
'''\"					recipient section always output
.ft 3
For Use by Recipient of Cover Sheet:
.ft 1
.if t \{\
.ps-3
.vs-4
.sp1
.mk z
  Computing network users may order copies via the \f2library -1\f1 command;
   for information, type \f2man library\f1 after the UNIX\(rg system prompt.
.sp1
.rn fo xx
  Otherwise:
   Enter PAN if Alcatel-Lucent-BL (or SS# if non-Alcatel-Lucent-BL). \l'1.5i'
   Return this sheet to any ITDS location. 
.sp|\\nzu
.in 4.0i
Internal Technical Document Service
.sp1
.ta 0.9i 1.8i 2.7i
( ) AK 2H-28	( ) IH 7M-103	( ) DR 2F-19	( ) NW-ITDS
( ) ALC 1B-102	( ) MV 3L-19	( ) INH 1C-114	( ) PR 5-2120
( ) CB 1L-220	( ) WH 3E-204	( ) IW 2Z-156
( ) HO 4F-112		( ) MT 2C-131
.br \}
.if n \{\
  Computing network users may order copies via the \f2library -1\f1 command;
  for information, type \f2man library\f1 after the UNIX system prompt. 
  Otherwise:
.sp1
.mk z
.rn fo xx
1 Enter PAN if Alcatel-Lucent-BL (or SS# if
  non-Alcatel-Lucent-BL).
               \l'2.0i'
2 Return this sheet to any
  ITDS location. 
.sp|\\nzu
.in 4.0i
Internal Technical Document Service
.sp1
.ta 1.75i
.if \\n(en=1 \{\
( ) AK 2H-28	( ) IH 7M-103
( ) ALC 1B-102	( ) MV 3L-19
( ) CB 1L-220	( ) WH 3E-204
( ) HO 4F-112 \}
.if \\n(en=2 \{\
( ) DR 2F-19
( ) INH 1C-114
( ) IW 2Z-156
( ) MT 2C-131 \}
.if \\n(en=3 \{\
( ) NW-ITDS \}
.if \\n(en=4 \{\
( ) PR5-2120 \}
.br \}
.if \\n(aa \{\
.	sy pwd >/tmp/sx\\n($$
.	sy sed "s/^/cd /" /tmp/sx\\n($$ >/tmp/sc\\n($$
.	sy echo "/sys/lib/tmac/sendcover" \\n(.F \\n(qq >>/tmp/sc\\n($$
.	sy echo "rm" /tmp/sx\\n($$ /tmp/sc\\n($$>>/tmp/sc\\n($$
.	sy sh /tmp/sc\\n($$&
.	br \}
.rr a b c e g h i j k
.rr l m n o p q r s t
.rr u v w x y z
.rr an fn as ds fs bd dv lp
.rr tp np la a1 a2 ar fi
.rr in si ps ts vs tv b1 b2 m1
.rr :b :c :d :e ls dt fc wp
.rr g1 g2 g3 g4 g5 i1 i2 i3 i4 i5
.rm a) b) c) e) k) n) o) p) q)
.rm r) s) t) u) v) w) x) y) z)
.rm a( b( m( n( o( p( s( t(
.rm tc nc Tm 10 ve
.rm hD fO aT tK bE bX tH cH
.rm dH eP cP tP t1 CS tI tS cE
.rm cZ dZ eE fF gG oH dP
..
'''\"	end of csmacros