home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / X / mit / doc / extensions / PEX / SI / pex.macros < prev    next >
Encoding:
Text File  |  1991-02-15  |  33.6 KB  |  1,779 lines

  1. .\"
  2. .\" $XConsortium: pex.macros,v 4.4 91/02/16 09:45:59 rws Exp $
  3. .\"
  4. .\" 
  5. .\" Copyright (c) 1990, 1991 by Sun Microsystems, Inc. and the X Consortium.
  6. .\" 
  7. .\"                         All Rights Reserved
  8. .\" 
  9. .\" Permission to use, copy, modify, and distribute this software and its 
  10. .\" documentation for any purpose and without fee is hereby granted, 
  11. .\" provided that the above copyright notice appear in all copies and that
  12. .\" both that copyright notice and this permission notice appear in 
  13. .\" supporting documentation, and that the names of Sun Microsystems,
  14. .\" the X Consortium, and MIT not be used in advertising or publicity 
  15. .\" pertaining to distribution of the software without specific, written 
  16. .\" prior permission.  
  17. .\" 
  18. .\" SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 
  19. .\" INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
  20. .\" EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  21. .\" CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  22. .\" USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  23. .\" OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  24. .\" PERFORMANCE OF THIS SOFTWARE.
  25.  
  26.  
  27. .\" PEX MACRO SET
  28. .ds // ../
  29. .    \" IZ - initialize (before text begins)
  30. .de IZ
  31. .nr FM 1i
  32. .nr YY -\\n(FMu
  33. .nr XX 0 1
  34. .nr IP 0
  35. .nr PI 4n
  36. .nr QI 5n
  37. .nr FI 2n
  38. .nr I0 \\n(PIu        \" indent for .IP
  39. .nr GI 0i        \" global indent
  40. .nr PL 3        \" page layout 3=FULL
  41. .nr GU 0i        \" global gutter
  42. .nr GL 7.25i        \" global line length
  43. .na
  44. .nr PS 11
  45. .ps \\n(PSp
  46. .nr VS 13
  47. .vs \\n(VSp
  48. .if n .nr PD 1v
  49. .if t .nr PD .5v
  50. .if n .nr DD 1v
  51. .if t .nr DD .5v
  52. .nr dP 1        \" delta point size for .LS
  53. .nr dV 1        \" delta vertical spacing for .LS
  54. .nr cH 1        \" clear header
  55. .nr hS 0        \" header style: 0=no line, 1=line
  56. .nr ML 3v
  57. .nr IR 0        \" indent level counter
  58. .nr TB 0
  59. .nr SJ \\n(.j        \" adjust mode
  60. .po .75i
  61. .if \\nO .po \\nOu    \" page offset from command line
  62. .nr PO \\n(.ou
  63. .nr LL 7.25i
  64. .ll \\n(LLu
  65. .nr LT \\n(LLu
  66. .lt \\n(LTu
  67. .ev 1
  68. .na
  69. .nr FL 7i
  70. .in 0
  71. .ps 8
  72. .vs 10p
  73. .ev
  74. .wh 0 PN            \" new page trap
  75. .wh -\\n(FMu FO            \" footer trap
  76. .ch FO 16i            \" footnote trap
  77. .wh -\\n(FMu FX
  78. .ch FO -\\n(FMu
  79. .wh -(\\n(FMu/2u-9p)-.25i BT    \" bottom title trap
  80. .in \\n(GIu            \" set position of left text margin
  81. .br
  82. .nr YE 1
  83. .di
  84. .ce 0
  85. .nr KI 0
  86. .\" turn off hyphenation -- JH (09-13-89)
  87. .\" .hy 14
  88. .nh
  89. .fi
  90. ..
  91. .    \" RT - reset (at new paragraph)
  92. .de RT
  93. .if !\\n(IK .if !\\n(IF .if !\\n(IX .if !\\n(BE .di
  94. .ce 0
  95. .ul 0
  96. .if \\n(QP \{\
  97. .    ll +\\n(QIu
  98. .    in -\\n(QIu
  99. .    nr QP -1
  100. .\}
  101. .if \\n(NX<=1 .ll \\n(LLu
  102. .if !\\n(IF \{\
  103. .    ps \\n(PS
  104. .    if \\n(VS>=40 .vs \\n(VSu
  105. .    if \\n(VS<=39 .vs \\n(VSp
  106. .\}
  107. .if !\\n(IP .nr I0 \\n(PIu
  108. .if \\n(IP \{\
  109. .    in -\\n(I\\n(IRu
  110. .    if \\n(PL=1 .if \\n(.i<2.25i .in 2.25i
  111. .    nr IP -1
  112. .    if \\n(IK \{\
  113. .        ev 0
  114. .        in -\\n(I\\n(IRu
  115. .        if \\n(PL=1 .if \\n(.i<2.25i .in 2.25i
  116. .        ev
  117. .    \}
  118. .\}
  119. .ft 1
  120. .TA
  121. .fi
  122. .\" turn off hyphenation
  123. .\" .hy 14
  124. .nh
  125. .ad l
  126. .if t .na
  127. ..
  128. .    \" TA - set default tabs
  129. .de TA
  130. .if n .ta 8n 16n 24n 32n 40n 48n 56n 64n 72n 80n
  131. .if t .ta 5n 10n 15n 20n 25n 30n 35n 40n 45n 50n 55n 60n 65n 70n 75n
  132. ..
  133. .    \" PL - page layout: RIGHT=1 LEFT=2 FULL=3
  134. .de PL
  135. .RT
  136. .if \\$1RIGHT \{\
  137. .    nr PL 1
  138. .    nr GI 2.25i
  139. .    nr GU .25i
  140. .    in 2.25i
  141. .    nr LL 7.25i
  142. .    nr FL 5i
  143. .\}
  144. .if \\$1LEFT \{\
  145. .    nr PL 2
  146. .    nr GI 0
  147. .    nr GU .25i
  148. .    in 0
  149. .    nr LL 5i
  150. .    nr FL 5i
  151. .\}
  152. .if \\$1FULL \{\
  153. .    nr PL 3
  154. .    nr GI 0
  155. .    nr GU 0
  156. .    in 0
  157. .    nr LL 7.25i
  158. .    nr FL 7i
  159. .\}
  160. .ll \\n(LLu
  161. .if !\\$1RIGHT .if !\\$1LEFT .if !\\$1FULL \{\
  162. .    tm Error: line \\n(.c: page layout specified as \\$1
  163. .    PL RIGHT
  164. .\}
  165. ..
  166. .    \" DN - document name
  167. .de DN
  168. .if \\nF .if \\*(Dn .tm .IE\tDOCUMENT\t\\$1
  169. .ds Dn \\$1
  170. ..
  171. .    \" RV - revision
  172. .de RV
  173. .ds Rv \\$1
  174. ..
  175. .    \" PA - part no.
  176. .de PA
  177. .ds Pa \\$1
  178. ..
  179. .    \" RL - release
  180. .de RL
  181. .ds Rl \\$1
  182. ..
  183. .    \" PD - paragraph depth
  184. .de PD
  185. .if t .nr PD .5v
  186. .if n .nr PD 1v
  187. .if !\\$1 .nr PD \\$1v
  188. ..
  189. .    \" PP - regular paragraph
  190. .de PP
  191. .RT
  192. .nr # 0 1
  193. .sp \\n(PDu
  194. .ne 1.1
  195. .ti +\\n(PIu
  196. ..
  197. .    \" LP - left paragraph
  198. .de LP
  199. .RT
  200. .nr # 0 1
  201. .sp \\n(PDu
  202. .ne 1.1
  203. .ti \\n(.iu
  204. ..
  205. .    \" IP - indented paragraph
  206. .de IP
  207. .RT
  208. .sp \\n(PDu
  209. .ne 1.1
  210. .if !\\n(IP .nr IP +1
  211. .if \\n(.$-1 .nr I\\n(IR \\$2n
  212. .in +\\n(I\\n(IRu
  213. .ta \\n(I\\n(IRu
  214. .if \\n(.$ \{\
  215. .ds HT \&\\$1\ \ 
  216. .ti -\\n(I\\n(IRu
  217. \\*(HT\t\c
  218. .if \w\\*(HTu>(\\n(I\\n(IRu) .br
  219. .\}
  220. ..
  221. .    \" XP - exdented paragraph
  222. .de XP
  223. .RT
  224. .sp \\n(PDu
  225. .ne 1.1
  226. .if !\\n(IP .nr IP +1
  227. .in +\\n(I\\n(IRu
  228. .ti -\\n(I\\n(IRu
  229. ..
  230. .    \" QP - quote paragraph
  231. .de QP
  232. .ti \\n(.iu
  233. .RT
  234. .sp \\n(PDu
  235. .ne 1.1
  236. .nr QP 1
  237. .in +\\n(QIu
  238. .ll -\\n(QIu
  239. .ti \\n(.iu
  240. ..
  241. .    \" BP - bullet paragraph
  242. .de BP
  243. .\" print bullet, not small square
  244. .\" .IP \\*(SQ
  245. .IP \(bu 3
  246. ..
  247. .    \" NP - numbered paragraph
  248. .de NP
  249. .IP \\n+#.
  250. ..
  251. .    \" UH - unnumbered header: $1=level, $2=text
  252. .    \"     C=chapter, M=chapter no TOC, [23]=levels same as [HS]
  253. .de UH
  254. .RT
  255. .nh
  256. .if '\\$1'C' .nr nS 1
  257. .if '\\$1'M' .nr nS 1
  258. .if '\\$1'H' .nr nS 2
  259. .if '\\$1'S' .nr nS 3
  260. .if \\$1>0 .nr nS \\$1
  261. .        \" Major Chapter style Heading
  262. .if \\n(nS=1 \{\
  263. .    nr OH 0
  264. .    nr EH 0
  265. .    nr cH 1
  266. .    ie \\np \{\
  267. .        bp \\np
  268. .        nr p 0
  269. .    \}
  270. .    el \{\
  271. .        if o .bp +2
  272. .        if e .bp
  273. .    \}
  274. .    nr cH 0
  275. .    nr OH 1
  276. .    nr EH 1
  277. .    if !\\n(OF .if !\\n(EF .af PN i
  278. .    if !\\n(OF .OF ''\- \\\\\\\\n(PN \-''
  279. .    if !\\n(EF .EF ''\- \\\\\\\\n(PN \-''
  280. .    rs
  281. .    sp |9i-\\n(.vu
  282. .    ps 128
  283. .\" turn off PostScript and remove Sun logo
  284. .\" \!x P gsave 0.99 setgray
  285. .\" .    if \\n(PL=1 \h'3.25i'\(su
  286. .\" .    if \\n(PL>1 \h'5.5i'\(su
  287. .    fl
  288. .\" turn off PostScript
  289. .\" \!x P grestore
  290. .    br
  291. .    ps
  292. .    if \\n(PL=1 .GB \\n(.ou+\\n(GIu \\n(.ou+\\n(LLu
  293. .    if \\n(PL=2 .GB \\n(.ou \\n(.ou+\\n(LLu
  294. .    if \\n(PL=3 .GB \\n(.ou \\n(.ou+\\n(LLu
  295. .    sp |2i-\\n(.vu
  296. \s36\l'\\n(LLu-\\n(GIu'\s0
  297. .    br
  298. .    if \\n(PL=1 .ad r
  299. .    if \\n(PL=2 .ad l
  300. .    if \\n(PL=3 .ad l
  301. .    ps 22
  302. .    vs 26
  303. .    sp |2.5i-4p-5.5p
  304. \&\\$2
  305. .    br
  306. .    ps
  307. .    vs
  308. .    sp |3.5i-3p-4p
  309. .    in \\n(GIu
  310. .    ad l
  311. .    EH \\$2 \(em \fIContinued\fP
  312. .    OH \\$2 \(em \fIContinued\fP
  313. .    nr cH 0
  314. .    ns
  315. .\}
  316. .if \\n(nS>1 \{\
  317. .    ne .5i
  318. .    if \\n(nS=2 .ft B
  319. .    if \\n(nS=3 .ft R
  320. .    if \\n(nS=3 .if \\nM=3 .ft BI
  321. .    if \\n(nS=4 .if \\nM=3 .ft I
  322. .    sp .375i-1v
  323. .    mk H#
  324. .    in 0
  325. .    if \\n(PL=1 .ll \\n(GIu-\\n(GUu
  326. .    if \\n(PL=2 .ll \\n(GLu
  327. .    if \\n(PL=2 .in \\n(LLu+\\n(GUu
  328. .    fi
  329. \&\\$2
  330. .    mk B#
  331. .    in \\n(GIu
  332. .    ll \\n(LLu
  333. .\" turn off hyphenation
  334. .\" .    hy 14
  335. .    nh
  336. .    if !\\n(PL=3 .sp |\\n(H#u-\\n(PDu
  337. .    R
  338. .\}
  339. .nr PN \\n%
  340. .if \\nF .if '\\$1'C' .if \\n(IK \!.tm .CE U 1 "\\$2" \\\\n(PN \\n(H1
  341. .if \\nF .if '\\$1'C' .if !\\n(IK  .tm .CE U 1 "\\$2" \\n(PN \\n(H1
  342. .nr fM 0
  343. .if '\\$1'CONTENTS' .nr fM 1
  344. .if '\\$1'TABLES' .nr fM 1
  345. .if '\\$1'FIGURES' .nr fM 1
  346. .if '\\$1'INDEX' .nr fM 1
  347. .if \\n(fM \{\
  348. .    LP
  349. .    PL RIGHT
  350. .    nr PN \\n%
  351. .    if !\\nH .EF ''\- \\\\\\\\n(PN \-''
  352. .    if !\\nH .OF ''\- \\\\\\\\n(PN \-''
  353. .    if \\nH .EF ''''
  354. .    if \\nH .OF ''''
  355. .    if !\\nP .pn 1
  356. .    if !\\nP .nr % 1
  357. .    if \\nP .pn \\nP+1
  358. .    if \\nP .nr % \\nP
  359. .    if \\nP .nr PN \\nP
  360. .    nr P 0
  361. .    if '\\$1'CONTENTS' .ds hD Contents
  362. .    if '\\$1'TABLES' .ds hD Tables
  363. .    if '\\$1'FIGURES' .ds hD Figures
  364. .    if '\\$1'INDEX' .ds hD Index
  365. .    EH \\*(hD \(em \fIContinued\fP
  366. .    OH \\*(hD \(em \fIContinued\fP
  367. .    nr cH 0
  368. .    ps 11
  369. .    nr PS 11
  370. .    vs 15
  371. .    nr VS 15
  372. .    ne 1i+2v
  373. .    if '\\$1'INDEX' \{\
  374. .        PL FULL
  375. .        if \\nF .tm .CE U 1 "\fBIndex\f1" \\n(PN \\n(H1
  376. .        if \\nF .nr PG 1
  377. .        in 0
  378. .        nr GI 0 \}
  379. .    if !\\nH \{\
  380. .        rs
  381. .                    \" Lay down logo
  382. .        sp |9i-\\n(.vu
  383. .        ps 128
  384. .\" turn off PostScript and remove Sun logo
  385. .\" \!x P gsave 0.99 setgray
  386. .\" .        if  '\\$1'INDEX' \h'5.5i'\(su
  387. .\" .        if !'\\$1'INDEX' \h'3.25i'\(su
  388. .        fl
  389. .\" turn off PostScript
  390. .\" \!x P grestore
  391. .        ps
  392. .        sp |2i-\\n(.vu
  393. .        if  '\\$1'INDEX' .GB \\n(.ou \\n(.ou+\\n(LLu
  394. .        if  '\\$1'INDEX' \s36\l"7.25i"\s0
  395. .        if !'\\$1'INDEX' .GB \\n(.ou+\\n(GIu \\n(.ou+\\n(LLu
  396. .        if !'\\$1'INDEX' \s36\l"5.0i"\s0
  397. .        br
  398. .        if  '\\$1'INDEX' .ad l
  399. .        if !'\\$1'INDEX' .ad r
  400. .        ps 22
  401. .        vs 26
  402. .        sp |2.5i-4p-5.5p
  403. \&\\*(hD
  404. .        br
  405. .        ps
  406. .        vs
  407. .        sp |3.375i-3p-4p
  408. .        in \\n(GIu
  409. .        ad l
  410. .        nf
  411. .        ps 11
  412. .        nr PS 11
  413. .        vs 15
  414. .        nr VS 15
  415. .        af PN i
  416. .        if '\\$1'INDEX' \{\
  417. .            ps 9
  418. .            nr PS 9
  419. .            vs 11
  420. .            nr VS 11
  421. .            af PN 1
  422. .            2C \}
  423. .    \}
  424. .\}
  425. ..
  426. .    \" TL - title
  427. .de TL
  428. .ds BU \0\0\s-1\(bu\s+1\0\0\|
  429. .ch FO 16i
  430. .ch FX 17i
  431. .sp |10i-3.1v
  432. .ti 0
  433. \s36\l'7.25i'\s0
  434. .br
  435. .\" Peggy -- fix following line, eh?
  436. .tl '''\s12Sun Microsystems, Inc. \\*(BU 2550 Garcia Avenue \\*(BU Mountain View, CA 94043 \\*(BU 415-960-1300\s0'
  437. .sp -.5
  438. .ti 0
  439. \s6\l'7.2i'\s0
  440. .br
  441. .if \\*(Rl .sp
  442. .ps 11
  443. .if !\\*(Pa .tl Part No: \\*(Pa
  444. .if !\\*(Rv .tl \\*(Rv
  445. .if !\\*(Rl .tl \\*(Rl
  446. .br
  447. .ch FO -\\n(FMu
  448. .ch FX -\\n(FMu
  449. .sp |1.6i
  450. .ti 0
  451. .\" turn off Sun logo, etc., in footer
  452. .\" \s22\^\(su \fBs\^u\^n\h'-\w's\^u\^n'u'\s9\v'.7m'\fH\s6microsystems\fR\v'-3m'\(rg
  453. .sp |2i-\\n(.vu
  454. .ti 0
  455. .\" turn off grey block
  456. .\" .GB \\n(.ou 8i
  457. \s36\l'7.25i'
  458. .sp |2.5i-4p-5.5p
  459. .ad r
  460. .ps 22
  461. .vs 26
  462. ..
  463. .\" Peggy -- we'll need to change this, I think.
  464. .    \" CR - copyright
  465. .de CR
  466. .bp
  467. .LP
  468. .rs
  469. .sp |7.2i
  470. .if \\$3BSD .sp -6.5v
  471. .if \\$3SPE .sp -2.5v
  472. .ie !\\$1 Copyright \(co \\$1
  473. .el Copyright \(co 1989, 1990, 1991
  474. .\" Need new copyright holder?
  475. Sun Microsystems, Inc. \- Printed in U.S.A.
  476. .sp .5
  477. All rights reserved.
  478. No part of this work covered by copyright hereon
  479. may be reproduced in any form or by any means \-
  480. graphic, electronic, or mechanical \-
  481. including photocopying, recording, taping,
  482. or storage in an information retrieval system,
  483. without the prior written permission of the copyright owner.
  484. .sp .5
  485. Restricted rights legend:
  486. use, duplication, or disclosure by the U.S. government
  487. is subject to restrictions set forth in subparagraph (c)(1)(ii)
  488. of the Rights in Technical Data and Computer Software clause at
  489. DFARS 52.227-7013 and in similar clauses in the FAR and NASA FAR Supplement.
  490. .sp .5
  491. .\" Peggy -- we may want to strip the following lines before
  492. .\" distributing file to consortium.
  493. .\" The Sun Graphical User Interface was developed
  494. .\" by Sun Microsystems, Inc. for its users and licensees.
  495. .\" Sun acknowledges the pioneering efforts of Xerox in researching and developing
  496. .\" the concept of visual or graphical user interfaces for the computer industry.
  497. .\" Sun holds a non-exclusive license from Xerox
  498. .\" to the Xerox Graphical User Interface,
  499. .\" which license also covers Sun's licensees.
  500. .\" 
  501. .\" May need to strip following line
  502. .if !\\$3 .so \*(//tms/_\\$3
  503. .sp |1i
  504. .LP
  505. .nf
  506. .\" May need to strip following line
  507. .if !\\$2 .so \*(//tms/\\$2
  508. ..
  509. .    \" H - header: $1=level, $2=text
  510. .    \"    C=chapter, A=appendix, [2-4]=levels
  511. .de H
  512. .RT
  513. .nh
  514. .nr NS \\$1
  515. .if '\\$1'C' .nr NS 1
  516. .if '\\$1'A' .nr NS 1
  517. .if '\\$1'A' .if !\\n(aP \{\
  518. .    nr aP 1
  519. .    nr H1 0
  520. .    af H1 A
  521. .\} 
  522. .if '\\$1'TINY' \{\
  523. .    nr NS 1
  524. .    nr M 2
  525. .    if !\\$3 .nr M 3    \" arg 3 goes above gray line
  526. .\}
  527. .        \" chapter/appendix
  528. .if \\n(NS=1 \{\
  529. .    if \\nC .nr H1 \\nC-1
  530. .    if (\\n(nl<=1.25i) .if !\\nM .if o .pn +2    \" skip for halftitles
  531. .    if (\\n(nl<=1.25i) .if  \\nM .if o .pn +0    \" don't skip page #s
  532. .    if e \{\
  533. .        if  \\nM .pn +1
  534. .        if !\\nM .pn +3
  535. .    \}
  536. .    if (\\n(nl>1.25i) .if !\\nM .if o .pn +4
  537. .    if (\\n(nl>1.25i) .if  \\nM .if o .pn +2
  538. .    if !\\n(hS .if !\\nP .pn 3        \" start of document proper
  539. .    if !\\n(hS .if !\\nP .if \\nM .pn 1
  540. .    if \\nP .pn \\nP
  541. .    nr P 0
  542. .    nr cH 1
  543. .    rs
  544. .    bp
  545. .    af PN 1
  546. .    nr cH 0
  547. .    if \\nF .nr PG 1
  548. .    nr C 0
  549. .    nr T1 0            \" table counter
  550. .    nr F1 0            \" figure counter
  551. .\}
  552. .nr H\\n(NS +1
  553. .if !\\n(hS \{\
  554. .    nr hS 1
  555. .    nr EF 1
  556. .    nr OF 1
  557. .    af PN 1
  558. .\}
  559. .if !\\n(NS-4 .nr H5 0
  560. .if !\\n(NS-3 .nr H4 0
  561. .if !\\n(NS-2 .nr H3 0
  562. .if !\\n(NS-1 .nr H2 0
  563. .        \" chapter/appendix
  564. .if \\n(NS=1 \{\
  565. .    ie \\n(aP .ds hS Appendix \\n(H1 \(em \\$2
  566. .    el .ds hS Chapter \\n(H1 \(em \\$2
  567. .     if \\nM>1 .ds hS \\$2
  568. .    OH \s9\\\\\\\\*(hS\s0\h'.25i'\s11\\\\\\\\n(PN\s0
  569. .    EH \s11\\\\\\\\n(PN\s0\h'.25i'\s9\\\\\\\\*(Dn\s0
  570. \\&
  571. .    sp |1.875i-\\n(.vu
  572. .    ps 48
  573. .    if \\nM<2 .tl '''\\n(H1'
  574. .    if \\nM=3 .tl '''\\$3'
  575. .    ps
  576. .    sp |2i-\\n(.vu
  577. .    in \\n(GIu
  578. .    if \\n(PL=1 .GB \\n(.ou+\\n(GIu \\n(.ou+\\n(LLu
  579. .    if \\n(PL=2 .GB \\n(.ou \\n(.ou+\\n(LLu
  580. .    if \\n(PL=3 .GB \\n(.ou \\n(.ou+\\n(LLu
  581. \s36\l'(\\n(LLu-\\n(GIu)'\s0
  582. .    sp |2.5i-4p-5.5p
  583. .    ad r
  584. .    ps 22
  585. .    vs 26
  586. \&\\$2
  587. .    sp |3.5i-3p-4p
  588. .    ps
  589. .    vs
  590. .    in \\n(GIu
  591. .    ad l
  592. .    ns
  593. .    nr cP 1
  594. .\}
  595. .        \" level [2345]
  596. .if \\n(NS>1 \{\
  597. .    ne 1i
  598. .    if !\\n(IK \{\
  599. .        if \\n(nlu>\\n(L#u .sp .375i-1v
  600. .        if \\n(B#>0 .if \\n(B#u>=\\n(nlu .sp |\\n(B#u+.25i+1v
  601. .        nr B# 0 \}
  602. .    if \\n(IK \{\
  603. .        if \\n(nlu>\\n(L# .sp .375i-1v
  604. .        if \\n(B#<=\\n(.d .if \\n(B#>0 .sp |\\n(B#u+.25i+1v 
  605. .        nr B# 0 \}
  606. .    fi
  607. .    in 0
  608. .    if \\n(PL=1 .ll \\n(GIu-\\n(GUu
  609. .    if \\n(PL=2 .ll \\n(GLu
  610. .    if \\n(PL=2 .in \\n(LLu+\\n(GUu
  611. .    mk H#
  612. .    if \\n(NS=2 \{\
  613. .        ft B
  614. .        ps +1
  615. .        ds SN \\n(H1.\\n(H2.
  616. .        if \\nM>1 .ds SN \\n(H2.
  617. .        in +\w\\*(SN\ \ u
  618. .        ti -\w\\*(SN\ \ u
  619. \&\\*(SN\ \ \\$2
  620. .        ps -1
  621. .        R \}
  622. .    if \\n(NS=3 \{\
  623. .        ft B
  624. .        ds SN \\n(H1.\\n(H2.\\n(H3.
  625. .        if \\nM>1 .ds SN \\n(H3.
  626. .        in +\w\\*(SN\ \ u
  627. .        ti -\w\\*(SN\ \ u
  628. \&\\*(SN\ \ \\$2
  629. .        R \}
  630. .    if \\n(NS>=4 \{\
  631. .        ft B
  632. .        ds SN \\n(H1.\\n(H2.\\n(H3.\\n(H4.
  633. .        if \\nM>1 .ds SN \\n(H4.
  634. .        in +\w\\*(SN\ \ u
  635. .        ti -\w\\*(SN\ \ u
  636. \&\\*(SN\ \ \\$2
  637. .         \} .    if !\\n(IK .mk B#
  638. .    if \\n(IK .mk K#
  639. .    in \\n(GIu
  640. .    ll \\n(LLu
  641. .    if \\n(PL<3 .sp |\\n(H#u-\\n(PDu 
  642. .\}
  643. .nr PN \\n%
  644. .\" turn off hyphenation
  645. .\" .hy 14
  646. .nh
  647. .if \\nF .if '\\$1'C' .if !\\n(IK  .tm .CE C 1 "\\$2" \\n(PN \\n(H1
  648. .if \\nF .if '\\$1'C' .if \\n(IK \!.tm .CE C 1 "\\$2" \\\\n(PN \\n(H1
  649. .if \\nF .if '\\$1'A' .if !\\n(IK  .tm .CE A 1 "\\$2" \\n(PN \\n(H1
  650. .if \\nF .if '\\$1'A' .if \\n(IK \!.tm .CE A 1 "\\$2" \\\\n(PN \\n(H1
  651. .if \\nF .if '\\$1'1' .if !\\n(IK  .tm .CE C 1 "\\$2" \\n(PN \\n(H1
  652. .if \\nF .if '\\$1'1' .if \\n(IK \!.tm .CE C 1 "\\$2" \\\\n(PN \\n(H1
  653. .if \\nF .if \\n(NS>1 .if \\n(NS<4 .if !\\n(IK  .tm .CE N \\n(NS "\\$2" \\n(PN \\n(H1 \\n(H2 \\n(H3
  654. .if \\nF .if \\n(NS>1 .if \\n(NS<4 .if \\n(IK \!.tm .CE N \\n(NS "\\$2" \\\\n(PN \\n(H1 \\n(H2 \\n(H3
  655. ..
  656. .    \" TF - print TN or FN
  657. .de TF
  658. .nr TF \\n(.f
  659. .nr TX \\n(.s
  660. .if \\n(PL=1 \{\
  661. .    ta \\n(GIu-\\n(GUuR \\n(GIu 
  662. .    ti 0
  663.     \&\s11\\*(tS\t\fI\&\\$1\f\\n(TF\\s\\n(TX
  664. .\}
  665. .if \\n(PL=2 \{\
  666. .    ta \\n(LLuR \\n(LLu+\\n(GUu 
  667. .    nf
  668.     \&\s11\fI\&\\$1\f\\n(TF\t\&\\*(tS\\s\\n(TX
  669. .    fi
  670. .\}
  671. .if \\n(PL=3 \{\
  672. .    ta 2iR 2.25i
  673. .    ti 0
  674.     \&\s11\\*(tS\t\fI\&\\$1\f\\n(TF\\s\\n(TX
  675. .\}
  676. ..
  677. .    \" TN - table name
  678. .de TN
  679. .nr T1 +1
  680. .ll \\n(LLu
  681. .ds tH \\$1
  682. .ds tS Table \\n(H1-\\n(T1
  683. .if \\nM>1 .ds tS Table \\n(T1
  684. .if !\\n(IK \{\
  685. .    if \\n(nlu>\\n(L#u .sp 1v
  686. .    if \\n(B#>0 .if \\n(B#u>=\\n(nlu .sp |\\n(B#u+2v
  687. .    nr B# 0
  688. .\}
  689. .if \\n(IK \{\
  690. .    sp 1v
  691. .    ie \\n(K# \{\
  692. .        sp |\\n(K#u+2v
  693. .        nr K# 0 \}
  694. .    el \{\
  695. .        if \\n(B#u>=\\n(nlu .sp (\\n(B#u-\\n(nlu+1v)u
  696. .        nr B# 0 \}
  697. .\}
  698. .ne 2i
  699. .TF "\\*(tH"
  700. .if \\nF .if \\n(IK \!.tm .CE T 1 "\\$1" \\\\n(PN \\n(H1 \\n(T1
  701. .if \\nF .if !\\n(IK .tm .CE T 1 "\\$1" \\n(PN \\n(H1 \\n(T1
  702. ..
  703. .    \" TC - table continued (multi-page)
  704. .de TC
  705. .if !\\n(tC \{\
  706. .    as tH \(em Continued
  707. .    nr tC 1
  708. .\}
  709. .TF "\\*(tH"
  710. .sp \\n(PDu
  711. ..
  712. .    \" FN - figure name
  713. .de FN
  714. .nr F1 +1
  715. .ll \\n(LLu
  716. .ds tS Figure \\n(H1-\\n(F1
  717. .if \\nM>1 .ds tS Figure \\n(F1
  718. .sp 1v
  719. .TF "\\$1"
  720. .if \\nF .if \\n(IK \!.tm .CE F 1 "\\$1" \\\\n(PN \\n(H1 \\n(F1
  721. .if \\nF .if !\\n(IK .tm .CE F 1 "\\$1" \\n(PN \\n(H1 \\n(F1
  722. ..
  723. .    \" NS - note start
  724. .de NS
  725. .if \\n(.$ \{\
  726. .    nr mN 1
  727. .    LP
  728. .    if \\$1NOTE .ds mS \fINOTE
  729. .    if \\$1CAUTION .ds mS \fBCAUTION
  730. .    if \\$1WARNING .ds mS \f(BIWARNING
  731. .    if \\n(B#>0 .if (\\n(B#u+.25i+1v)>=\\n(nlu .sp |\\n(B#u+.25i+1v
  732. .    nr B# 0
  733. .    ta \\n(GIu-\\n(GUuR \\n(GIu-\w'\ 'u
  734. .    ti 0
  735. .    ie !\\*(mS \t\&\\*(mS\t
  736. .    el \t\&\\$1\t
  737. '    in \\n(GIu
  738. .    rm mS
  739. .\}
  740. .if !\\n(.$ \{\
  741. .    nr mN 0
  742. .    sp .375i-1v
  743. .    mk H#
  744. .    ft H
  745. .    ps 9
  746. .    vs 10
  747. .    if \\n(PL=1 .in 0
  748. .    if \\n(PL=1 .ll \\n(GIu-\\n(GUu
  749. .    if \\n(PL=2 .ll \\n(GLu
  750. .    if \\n(PL=2 .in \\n(LLu+\\n(GUu
  751. .\}
  752. ..
  753. .    \" NE - note end
  754. .de NE
  755. .if \\n(mN=1 .RT
  756. .if \\n(mN=0 \{\
  757. .    if \\n(H#>\\n(nl .nr H# \\n(L#
  758. .    mk B#
  759. .    br
  760. .    ft 1
  761. .    ps \\n(PSp
  762. .    vs \\n(VSp
  763. .    sp |\\n(H#u-\\n(PDu-2p        \" 2p because of 10pt in .NS
  764. .    in \\n(GIu
  765. .    ll \\n(LLu
  766. .\}
  767. ..
  768. .    \" CE - table of contents entry
  769. .de CE
  770. .rn CE @T
  771. .so \*(//ex.toc
  772. .CE "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
  773. .rm @T
  774. ..
  775. .    \" BS - box start
  776. .de BS
  777. .nr BI \\n(.i
  778. .sp \\n(PDu
  779. .nr GS 0
  780. .if \\n(.$ \{\
  781. .    if  \\$1GRAY .nr GS 1
  782. .    if !\\$1GRAY .in +\\$1n
  783. .    if \\n(.$-1 .in +\\$2n \}
  784. .mk U#
  785. ..
  786. .    \" BE - box end
  787. .de BE
  788. .if !\\n(GS \{\
  789. .nr DI \\n(.i
  790. .in \\n(GIu
  791. .mk D#
  792. \h'1n'\c
  793. \D'l (\\n(LLu-\\n(GIu-2n) 0'\c
  794. \D'a 0 -1n 1n 0'\c
  795. \D'l 0 -(\\n(D#u-\\n(U#u)'\c
  796. \D'a -1n 0 0 -1n'\c
  797. \D'l -(\\n(LLu-\\n(GIu-2n) 0'\c
  798. \D'a 0 1n -1n 0'\c
  799. \D'l 0 (\\n(D#u-\\n(U#u)'\c
  800. \D'a 1n 0 0 1n' \}
  801. .rr U# D#
  802. .rs
  803. .sp \\n(PDu
  804. .if \\n(GS .sp \\n(PDu
  805. .nr GS 0
  806. .in \\n(BIu
  807. ..
  808. .    \" GS - draw gray scale box
  809. .\" This macro uses PostScript heavily
  810. .\" and should be avoided.  It issues a warning
  811. .\" when used, but processing continues.
  812. .de GS
  813. .tm WARNING: macro GS: File \n(.F: PostScript unavailable. Use B1 and B2 instead.
  814. .\" .mk D#
  815. .\" .nr r 1n
  816. .\" .nr x1 (\\n(GIu+\\n(.ou+1n)
  817. .\" .nr y1 \\n(D#u+\\n(.vu
  818. .\" \!x P \\n(x1 \\n(y1 moveto
  819. .\" .nr x1 \\n(LLu+\\n(.ou
  820. .\" .nr y1 \\n(D#u+\\n(.vu
  821. .\" .nr x2 \\n(LLu+\\n(.ou
  822. .\" .nr y2 \\n(D#u+\\n(.vu-1n
  823. .\" \!x P \\n(x1 \\n(y1 \\n(x2 \\n(y2 \\nr arcto
  824. .\" \!x P 4 {pop} repeat
  825. .\" .nr x1 \\n(LLu+\\n(.ou
  826. .\" .nr y1 \\n(U#u-\\n(VSp+3n
  827. .\" .nr x2 \\n(LLu+\\n(.ou-1n
  828. .\" .nr y2 \\n(U#u-\\n(VSp+3n
  829. .\" \!x P \\n(x1 \\n(y1 \\n(x2 \\n(y2 \\nr arcto
  830. .\" \!x P 4 {pop} repeat
  831. .\" .nr x1 (\\n(GIu+\\n(.ou)
  832. .\" .nr y1 \\n(U#u-\\n(VSp+3n
  833. .\" .nr x2 (\\n(GIu+\\n(.ou)
  834. .\" .nr y2 \\n(U#u-\\n(VSp+4n
  835. .\" \!x P \\n(x1 \\n(y1 \\n(x2 \\n(y2 \\nr arcto
  836. .\" \!x P 4 {pop} repeat
  837. .\" .nr x1 (\\n(GIu+\\n(.ou)
  838. .\" .nr y1 \\n(D#u+\\n(.vu
  839. .\" .nr x2 (\\n(GIu+\\n(.ou+1n)
  840. .\" .nr y2 \\n(D#u+\\n(.vu
  841. .\" \!x P \\n(x1 \\n(y1 \\n(x2 \\n(y2 \\nr arcto
  842. .\" \!x P 4 {pop} repeat
  843. .\" \!x P gsave 0.99 setgray fill grestore stroke
  844. ..
  845. .    \" XS - example start
  846. .de XS
  847. .ie \\$1no .ID \\$2 1
  848. .el .DS I \\$1 1
  849. .nr PQ \\n(.f
  850. .ft L
  851. .ps 9p
  852. .vs 11p
  853. .nr @ \\w'x'u*4
  854. .if \\n(.$=2 .if !\\$1no .nr @ \\w'x'u*\\$2
  855. .if \\n(.$=3 .nr @ \\w'x'u*\\$3
  856. .ta \\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u
  857. ..
  858. .    \" XE - example end
  859. .de XE
  860. .LE
  861. ..
  862. .    \" LS - listing start
  863. .de LS
  864. .ie \\$1no .ID \\$2 1
  865. .el .DS I \\$1 1
  866. .nr PQ \\n(.f
  867. .ft L
  868. .ps -\\n(dP
  869. .vs -\\n(dV
  870. .nr @ \\w'x'u*4
  871. .if \\n(.$=2 .if !\\$1no .nr @ \\w'x'u*\\$2
  872. .if \\n(.$=3 .nr @ \\w'x'u*\\$3
  873. .ta \\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u +\\n@u
  874. ..
  875. .    \" LE - listing end
  876. .de LE
  877. .ft \\n(PQ
  878. .ps \\n(PS
  879. .if \\n(VS>=40 .vs \\n(VSu
  880. .if \\n(VS<=39 .vs \\n(VSp
  881. .DE
  882. ..
  883. .    \" DS - display with keep (L=left I=indent C=center B=block)
  884. .de DS
  885. .KS
  886. .nf
  887. .\\$1D \\$2 \\$1
  888. .ft 1
  889. .ps \\n(PS
  890. .if \\n(VS>=40 .vs \\n(VSu
  891. .if \\n(VS<=39 .vs \\n(VSp
  892. ..
  893. .de D
  894. .ID \\$1
  895. ..
  896. .    \" ID - indented display no keep
  897. .de ID
  898. .XD
  899. .if t .in +.5i
  900. .if n .in +8
  901. .if \\n(.$ .if !\\$1I .if !\\$1 \{\
  902. .    in \\n(OIu
  903. .    in +\\$1n
  904. .\}
  905. ..
  906. .    \" LD - left display no keep
  907. .de LD
  908. .XD
  909. ..
  910. .    \" CD - centered display no keep
  911. .de CD
  912. .XD
  913. .ce 999
  914. ..
  915. .    \" XD - real display macro
  916. .de XD
  917. .nf
  918. .nr OI \\n(.i
  919. .sp \\n(DDu
  920. ..
  921. .    \" DE - end display of any kind
  922. .de DE
  923. .ce 0
  924. .if \\n(BD .DF
  925. .nr BD 0
  926. .in \\n(OIu
  927. .KE
  928. .if !\\n(U# .sp \\n(DDu
  929. .fi
  930. ..
  931. .    \" BD - block display: center entire block
  932. .de BD
  933. .XD
  934. .nr BD 1
  935. .nf
  936. .in \\n(OIu
  937. .di DD
  938. ..
  939. .    \" DF - finish block display
  940. .de DF
  941. .di
  942. .if \\n(dl>\\n(BD .nr BD \\n(dl
  943. .if \\n(BD<\\n(.l .in (\\n(.lu-\\n(BDu)/2u
  944. .nr EI \\n(.l-\\n(.i
  945. .ta \\n(EIuR
  946. .DD
  947. .in \\n(OIu
  948. ..
  949. .    \" KS - begin regular keep
  950. .de KS
  951. .nr KN \\n(.u
  952. .if !\\n(IK .if !\\n(IF .KQ
  953. .nr IK +1
  954. ..
  955. .    \" KQ - real keep processor
  956. .de KQ
  957. .br
  958. .nr KI \\n(.i
  959. .ev 2
  960. .TA
  961. .br
  962. .in \\n(KIu
  963. .ps \\n(PS
  964. .if \\n(VS>=40 .vs \\n(VSu
  965. .if \\n(VS<=39 .vs \\n(VSp
  966. .ll \\n(LLu
  967. .lt \\n(LTu
  968. .if \\n(NX>1 .ll \\n(CWu
  969. .if \\n(NX>1 .lt \\n(CWu
  970. .di KK
  971. .nr TB 0
  972. ..
  973. .    \" KF - begin floating keep
  974. .de KF
  975. .nr KN \\n(.u
  976. .if !\\n(IK .FQ
  977. .nr IK +1
  978. ..
  979. .    \" FQ - real floating keep processor
  980. .de FQ
  981. .nr KI \\n(.i
  982. .ev 2
  983. .TA
  984. .br
  985. .in \\n(KIu
  986. .ps \\n(PS
  987. .if \\n(VS>=40 .vs \\n(VSu
  988. .if \\n(VS<=39 .vs \\n(VSp
  989. .ll \\n(LLu
  990. .lt \\n(LTu
  991. .if \\n(NX>1 .ll \\n(CWu
  992. .if \\n(NX>1 .lt \\n(CWu
  993. .di KK
  994. .nr TB 1
  995. ..
  996. .    \" KE - end keep
  997. .de KE
  998. .if \\n(IK .if !\\n(IK-1 .if !\\n(IF .RQ
  999. .if \\n(IK .nr IK -1
  1000. ..
  1001. .    \" RQ - real keep release
  1002. .de RQ
  1003. .br
  1004. .di
  1005. .nr NF 0
  1006. .nr DN \\n(dn
  1007. .if \\n(dn-\\n(.t .nr NF 1
  1008. .if \\n(TC .nr NF 1
  1009. .if \\n(NF .if !\\n(TB .sp 200
  1010. .if !\\n(NF .if \\n(TB .nr TB 0
  1011. .nf
  1012. .rs
  1013. .nr TC 5
  1014. .in 0
  1015. .ls 1
  1016. .if !\\n(TB \{\
  1017. .    ev
  1018. .    br
  1019. .    if \\n(GS .sp \\n(DNu
  1020. .    if \\n(GS .GS
  1021. .    if \\n(GS .sp |\\n(U#u
  1022. .    ev 2
  1023. .    KK
  1024. .\}
  1025. .ls
  1026. .ce 0
  1027. .if !\\n(TB .rm KK
  1028. .if \\n(TB .da KJ
  1029. .if \\n(TB \!.KD \\n(dn
  1030. .if \\n(TB .KK
  1031. .if \\n(TB .di
  1032. .nr TC \\n(TB
  1033. .if \\n(KN .fi
  1034. .in
  1035. .ev
  1036. ..
  1037. .\" support for PIC drawing language
  1038. .    \" PS - picture start: $1=height, $2=width
  1039. .de PS
  1040. .br
  1041. .nr @ \\n(.iu+((\\n(.lu-\\n(.iu-\\$2)/2u)
  1042. .if \\n(PL>1 .in \\n@u
  1043. .if \\n(PL=1 .if \\n(U# .in \\n@u
  1044. .ne \\$1u
  1045. .nr PF \\n(.f
  1046. .nr PX \\n(.s
  1047. ..
  1048. .    \" PE - picture end
  1049. .de PE
  1050. .ps \\n(PX
  1051. .ft \\n(PF
  1052. .if \\n(PL>1 .in
  1053. .if \\n(PL=1 .if \\n(U# .in
  1054. .sp \\n(DDu
  1055. ..
  1056. .\" Totally PostScript dependent. Abort.
  1057. .    \" CP - copy PostScript
  1058. .    \"    $1 pathname of PostScript file
  1059. .    \"    $2 vertical space    default: 1.0i
  1060. .    \"    $3 relative indent    default: 0
  1061. .    \"    $4 figure name        default: not printed
  1062. .    \"    $5 scale x        default: 1.0
  1063. .    \"    $6 scale y        default: 1.0
  1064. .    \"    $7 rotation angle    default: 0
  1065. .de CP
  1066. .ab ABORT: macro CP: File \n(.F: PostScript unavailable.
  1067. .\" .br
  1068. .\" .ie !\\$2 .nr tY \\$2
  1069. .\" .el             .nr tY 1.0i
  1070. .\" .ie !\\$3 .nr tX \\$3
  1071. .\" .el             .nr tX 0.0i
  1072. .\" .ie !\\$4 .nr z 6v
  1073. .\" .el             .nr z 0v
  1074. .\" .if (\\n(tYu+1v)>(\\n(.tu-\\nz) \{\
  1075. .\" .    bp
  1076. .\" .    br
  1077. .\" .    rs
  1078. .\" .\}
  1079. .\" .rs
  1080. .\" .br
  1081. .\" .ie !\\n(.z \{\
  1082. .\" \!.mk P#
  1083. .\" \!.nr t \\\\n(P#u
  1084. .\" .\}
  1085. .\" .el \{\
  1086. .\" \\kx
  1087. .\" .nr t \\n(nlu
  1088. .\" .\}
  1089. .\" .sp \\n(tYu
  1090. .\" .ie !\\$5 .ds sX \\$5
  1091. .\" .el             .ds sX 1.0
  1092. .\" .ie !\\$6 .ds sY \\$6
  1093. .\" .el             .ds sY 1.0
  1094. .\" .ie !\\$7 .ds sR \\$7
  1095. .\" .el             .ds sR 0
  1096. .\" .ie !\\n(.z \{\
  1097. .\" \!\\kx
  1098. .\" \!.nr x \\\\n(.o+\\\\n(.i+\\\\nx+\\n(tXu
  1099. .\" \!.mk P#
  1100. .\" \!.nr y \\\\n(P#u
  1101. .\" \!\!x P /DOCHEIGHT \\\\nt \\\\ny sub 1.0 \\\\*(sY div mul def
  1102. .\" \!\!x P /DOCSTATE save def
  1103. .\" \!\!x P \\\\nx \\\\ny translate
  1104. .\" \!\!x P \\*(sX 8 mul \\*(sY -8 mul scale
  1105. .\" \!\!x P \\*(sR rotate
  1106. .\" \!\!x P /showpage {} def
  1107. .\" \!\!x I \\$1
  1108. .\" \!\!x P DOCSTATE restore
  1109. .\" .\}
  1110. .\" .el \{\
  1111. .\" \\kx
  1112. .\" .nr x \\n(.o+\\n(.i+\\nx+\\n(tXu
  1113. .\" .mk P#
  1114. .\" .nr y \\n(P#u
  1115. .\" \!x P /DOCHEIGHT \\nt \\ny sub 1.0 \\*(sY div mul def
  1116. .\" \!x P /DOCSTATE save def
  1117. .\" \!x P \\nx \\ny translate
  1118. .\" \!x P \\*(sX 8 mul \\*(sY -8 mul scale
  1119. .\" \!x P \\*(sR rotate
  1120. .\" \!x P /showpage {} def
  1121. .\" \!x I \\$1
  1122. .\" \!x P DOCSTATE restore
  1123. .\" .\}
  1124. .\" .rr P# sR t x y z sX sY tX tY
  1125. .\" .if !\\$4 .FN "\\$4"
  1126. ..
  1127. .\" Totally PostScript dependent.  Abort.
  1128. .    \" SD - screen dump (PostScript)
  1129. .de SD
  1130. .ab ABORT: macro SD: File \n(.F: PostScript unavailable.
  1131. .\" .if  \\n(IK \!.mk P#
  1132. .\" .if !\\n(IK .mk P#
  1133. .\" .if  \\n(IK \!\!x P save initmatrix
  1134. .\" .if !\\n(IK \!x P save initmatrix
  1135. .\" .if  \\$3 .nr x \\n(GIu+\\n(.ou
  1136. .\" .if !\\$3 .nr x \\n(.ou+\\$3
  1137. .\" .if  \\$4 .if  \\n(IK \!.nr y 11i-\\\\n(P#u
  1138. .\" .if  \\$4 .if !\\n(IK .nr y 11i-\\n(P#u
  1139. .\" .if !\\$4 .nr y 11i-\\$4
  1140. .\" .if  \\n(IK \!\!x P \\nx 72 mul 576 div \\\\ny 72 mul 576 div translate
  1141. .\" .if !\\n(IK \!x P \\nx 72 mul 576 div \\ny 72 mul 576 div translate
  1142. .\" .if  \\$5 .if  \\n(IK \!\!x P 0 rotate
  1143. .\" .if  \\$5 .if !\\n(IK \!x P 0 rotate
  1144. .\" .if !\\$5 .if  \\n(IK \!\!x P \\$5 rotate
  1145. .\" .if !\\$5 .if !\\n(IK \!x P \\$5 rotate
  1146. .\" .if  \\$2 .if  \\n(IK \!\!x P 2 2 scale
  1147. .\" .if  \\$2 .if !\\n(IK \!x P 2 2 scale
  1148. .\" .if !\\$2 .if  \\n(IK \!\!x P \\$2 \\$2 scale
  1149. .\" .if !\\$2 .if !\\n(IK \!x P \\$2 \\$2 scale
  1150. .\" .if  \\n(IK \!\!x I \\$1
  1151. .\" .if !\\n(IK \!x I \\$1
  1152. .\" .if  \\n(IK \!\!x P restore
  1153. .\" .if !\\n(IK \!x P restore
  1154. .\" .rr P# x y
  1155. ..
  1156. .    \" KD - keep redivert
  1157. .de KD
  1158. .nr KM 0
  1159. .if \\n(.zKJ .nr KM 1
  1160. .if \\n(KM \!.KD \\$1
  1161. .if !\\n(KM .if \\n(.t<\\$1 .di KJ
  1162. ..
  1163. .    \" EM - end macro (process leftover keep)
  1164. .de EM
  1165. .rr iL
  1166. .rm iC
  1167. .br
  1168. .if !\\n(TB .if t .wh -1p CM
  1169. .if \\n(TB \{\
  1170. \&\c
  1171. '    bp
  1172. .    PN
  1173. .    ch CM 160
  1174. .\}
  1175. .if \\nF \{\
  1176. .    nr P \\n%
  1177. .    if o .nr P +2
  1178. .    if e .nr P +1
  1179. .    nr F 2
  1180. .\}
  1181. ..
  1182. .de XK
  1183. .nr TD 1
  1184. .nf
  1185. .ls 1
  1186. .in 0
  1187. .rn KJ KL
  1188. .KL
  1189. .rm KL
  1190. .if \\n(.zKJ .di
  1191. .nr TB 0
  1192. .if \\n(.zKJ .nr TB 1
  1193. .br
  1194. .in
  1195. .ls
  1196. .fi
  1197. .nr TD 0
  1198. ..
  1199. .    \" PN - new page
  1200. .de PN
  1201. .if !\\n(LT .nr LT \\n(LLu
  1202. .if \\n(FM+\\n(HM>=\\n(.p \{\
  1203. .    tm HM + FM longer than page
  1204. .    ab
  1205. .\}
  1206. .if !\\n(HM .nr HM 1.0625i
  1207. .if o .po \\n(POu
  1208. .if e .po \\n(POu-\\n(GUu
  1209. .    \" if a page with header & line
  1210. .if !\\n(cH \{\
  1211. .    nr PF \\n(.f
  1212. .    nr PX \\n(.s
  1213. .    ft 1
  1214. .    ps \\n(PS
  1215. '    sp |.75i-.125i
  1216. .    PT
  1217. '    sp |.75i-.0625i
  1218. .    lt \\n(GLu
  1219. .    tl \s6\D'l \\n(GLu 0'\s0
  1220. .    lt \\n(LTu
  1221. .    ps \\n(PX
  1222. .    ft \\n(PF
  1223. '    sp .375i
  1224. .\}
  1225. .if \\n(cH 'sp .75i 
  1226. .mk L#
  1227. .nr B# 0
  1228. .nr XX 0 1
  1229. .nr YY 0-\\n(FMu
  1230. .ch FO 16i
  1231. .ch FX 17i
  1232. .ch FO -\\n(FMu
  1233. .ch FX \\n(.pu-\\n(FMu
  1234. .if \\n(MF .FV
  1235. .nr MF 0
  1236. .mk
  1237. . \".os
  1238. .ev 1
  1239. .if !\\n(TD .if \\n(TC<5 .XK
  1240. .nr TC 0
  1241. .ev
  1242. .nr TQ \\n(.i
  1243. .nr TK \\n(.u
  1244. .if \\n(IT \{\
  1245. .    in 0
  1246. .    nf
  1247. .    if \\n(T1 .TC
  1248. .    TT
  1249. .    in \\n(TQu
  1250. .    if \\n(TK .fi
  1251. .\}
  1252. .ns
  1253. .mk #T
  1254. .if \\n(U# \{\
  1255. .    mk U#
  1256. .    in \\n(DIu
  1257. .\}
  1258. ..
  1259. .    \" PT - page titles
  1260. .de PT
  1261. .lt \\n(LTu
  1262. .pc %
  1263. .nr PN \\n%
  1264. .nr PT \\n%
  1265. .if \\n(PT>1 .if \\n(OH .if o .tl \\*(O1
  1266. .if \\n(PT>1 .if \\n(EH .if e .tl \\*(E2
  1267. .lt \\n(.lu
  1268. ..
  1269. .    \" OH - odd page header
  1270. .de OH
  1271. .nr OH 1
  1272. .if !\\n(.$ .nr OH 0
  1273. .ds O1 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  1274. ..
  1275. .    \" EH - even page header
  1276. .de EH
  1277. .nr EH 1
  1278. .if !\\n(.$ .nr EH 0
  1279. .ds E2 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  1280. ..
  1281. .    \" FO - footer
  1282. .de FO
  1283. .rn FO FZ
  1284. .if \\n(U# .if !\\n(IK \{\
  1285. .    BE
  1286. .    mk U#
  1287. .\}
  1288. .if \\n(IT .nr T. 1
  1289. .if \\n(IT .if !\\n(FC .T# 1
  1290. .if \\n(IT .br
  1291. .nr FC +1
  1292. .if \\n(NX<2 .nr WF 0
  1293. .nr dn 0
  1294. .if \\n(FC<=1 .if \\n(XX .XF
  1295. .rn FZ FO
  1296. .nr MF 0
  1297. .if \\n(dn .nr MF 1
  1298. .if !\\n(WF .nr YY 0-\\n(FMu
  1299. .if !\\n(WF .ch FO \\n(YYu
  1300. .if !\\n(dn .nr WF 0
  1301. .if \\n(FC<=1 .if !\\n(XX \{\
  1302. .    if \\n(NX>1 .RC
  1303. .    if \\n(NX<2 'bp
  1304. .\}
  1305. .nr FC -1
  1306. .if \\n(ML .ne \\n(MLu
  1307. ..
  1308. .    \" BT - bottom title
  1309. .de BT
  1310. .if \\n(PG .tm .SE PAGINATE NEW-PAGE \\n%
  1311. .nr PF \\n(.f
  1312. .nr PX \\n(.s
  1313. .lt \\n(LTu
  1314. .\" Removing if-else to force footers defined with EF/OF to print.
  1315. .\" -- JH (2-11-91)
  1316. .    ft 1
  1317. .    ps 9
  1318. .    nr PN \\n%
  1319. .    if \\n(OF .if o .tl \\*(O3
  1320. .    if \\n(EF .if e .tl \\*(E4
  1321. .ft \\n(PF
  1322. .ps \\n(PX
  1323. .if \\nF=2 .tm \\nP
  1324. ..
  1325. .    \" OF - odd page footer
  1326. .de OF
  1327. .nr OF 1
  1328. .if !\\n(.$ .nr OF 0
  1329. .ds O3 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  1330. ..
  1331. .    \" EF - even page footer
  1332. .de EF
  1333. .nr EF 1
  1334. .if !\\n(.$ .nr EF 0
  1335. .ds E4 \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 \\$9
  1336. ..
  1337. .    \" 2C - double column
  1338. .de 2C
  1339. .MC
  1340. ..
  1341. .    \" 1C - single column
  1342. .de 1C
  1343. .MC \\n(LLu
  1344. .\" turn off automatic hyphenation
  1345. .\" .hy 14
  1346. .nh
  1347. ..
  1348. .    \" MC - multiple columns: $1=column width
  1349. .de MC
  1350. .nr L1 \\n(LL*7/15
  1351. .if \\n(.$ .nr L1 \\$1n
  1352. .nr NQ \\n(LL/\\n(L1
  1353. .if \\n(NQ<1 .nr NQ 1
  1354. .if \\n(NQ>2 .if (\\n(LL%\\n(L1)=0 .nr NQ -1
  1355. .if !\\n(NX .nr NX 1
  1356. .if !\\n(NX=\\n(NQ \{\
  1357. .    RT
  1358. .    if \\n(NX>1 .bp
  1359. .    mk
  1360. .    nr NC 1
  1361. .    po \\n(POu
  1362. .\}
  1363. .if \\n(NQ>1 .hy 12
  1364. .nr NX \\n(NQ
  1365. .nr CW \\n(L1
  1366. .ll \\n(CWu
  1367. .nr FL \\n(CWu
  1368. .if \\n(NX>1 .nr GW (\\n(LL-(\\n(NX*\\n(CW))/(\\n(NX-1)
  1369. .nr RO \\n(CW+\\n(GW
  1370. .ns
  1371. ..
  1372. .de RC
  1373. .if \\n(NC>=\\n(NX .C2
  1374. .if \\n(NC<\\n(NX .C1
  1375. .nr NC \\n(ND
  1376. .    \" For the indexer: handle continued primary index terms
  1377. .    \" that span across columns or pages.
  1378. .if \\n(iL>0 .if !\\*(iC \{\
  1379. .    if \\n(.i>0 .ti -\\n(.i
  1380. \\*(iC
  1381. .    ti -4
  1382. .\}
  1383. ..
  1384. .de C1
  1385. .rt
  1386. .po +\\n(ROu
  1387. .nr ND \\n(NC+1
  1388. .nr XX 0 1
  1389. .if \\n(MF .FV
  1390. .ch FX \\n(.pu-\\n(FMu
  1391. .ev 1
  1392. .if \\n(TB .XK
  1393. .nr TC 0
  1394. .ev
  1395. .nr TQ \\n(.i
  1396. .if \\n(IT .in 0
  1397. .if \\n(IT .TT
  1398. .if \\n(IT .in \\n(TQu
  1399. .mk #T
  1400. .ns
  1401. ..
  1402. .de C2
  1403. .po \\n(POu
  1404. 'bp
  1405. .nr ND 1
  1406. ..
  1407. .    \" RS - right shift
  1408. .de RS
  1409. .nr IS \\n(IP
  1410. .RT
  1411. .nr IP \\n(IS
  1412. .if \\n(IP .in +\\n(I\\n(IRu
  1413. .nr IR +1
  1414. .nr I\\n(IR \\n(PIu
  1415. .in +\\n(I\\n(IRu
  1416. ..
  1417. .    \" RE - retreat left
  1418. .de RE
  1419. .nr IS \\n(IP
  1420. .RT
  1421. .nr IP \\n(IS
  1422. .if \\n(IR .nr IR -1
  1423. .if \\n(IP<=0 .in -\\n(I\\n(IRu
  1424. ..
  1425. .    \" I - italic font
  1426. .de I
  1427. .nr PQ \\n(.f
  1428. .if t .ft 2
  1429. .ie \\$1 .if n .ul 999
  1430. .el .if n .ul 1
  1431. .if t .if !\\$1 \{\
  1432. .    ie '\\*(.T'psc' \&\f\\n(PQ\\$3\fI\\$1\f\\n(PQ\\$2
  1433. .    el \&\f\\n(PQ\\$3\fI\\$1\|\f\\n(PQ\\$2
  1434. .\}
  1435. .if n .if \\n(.$=1 \&\\$1
  1436. .if n .if \\n(.$>2 \&\\$3\c
  1437. .if n .if \\n(.$>1 \&\\$1\c
  1438. .if n .if \\n(.$>1 \&\\$2
  1439. ..
  1440. .    \" B - bold font
  1441. .de B
  1442. .nr PQ \\n(.f
  1443. .if t .ft 3
  1444. .ie \\$1 .if n .ul 999
  1445. .el .if n .ul 1
  1446. .if t .if !\\$1 \&\f\\n(PQ\\$3\fB\\$1\f\\n(PQ\\$2
  1447. .if n .if \\n(.$=1 \&\\$1
  1448. .if n .if \\n(.$>2 \&\\$3\c
  1449. .if n .if \\n(.$>1 \&\\$1\c
  1450. .if n .if \\n(.$>1 \&\\$2
  1451. ..
  1452. .    \" R - Roman font
  1453. .de R
  1454. .if n .ul 0
  1455. .ft 1
  1456. ..
  1457. .    \" L - listing font
  1458. .de L
  1459. .nr PQ \\n(.f
  1460. .ie \\$1 .if n .ul 999
  1461. .el .if n .ul 1
  1462. .if t .if !\\$1 \&\f\\n(PQ\\$3\fL\\$1\f\\n(PQ\\$2
  1463. .if n .if \\n(.$=1 \&\\$1
  1464. .if n .if \\n(.$>2 \&\\$3\c
  1465. .if n .if \\n(.$>1 \&\\$1\c
  1466. .if n .if \\n(.$>1 \&\\$2
  1467. ..
  1468. .    \" LB - bold listing font
  1469. .de LB
  1470. .nr PQ \\n(.f
  1471. .ie \\$1 .if n .ul 999
  1472. .el .if n .ul 1
  1473. .if t .if !\\$1 \&\f\\n(PQ\\$3\f(LB\\$1\f\\n(PQ\\$2
  1474. .if n .if \\n(.$=1 \&\\$1
  1475. .if n .if \\n(.$>2 \&\\$3\c
  1476. .if n .if \\n(.$>1 \&\\$1\c
  1477. .if n .if \\n(.$>1 \&\\$2
  1478. ..
  1479. .    \" LX - listing font with index
  1480. .de LX
  1481. .L "\\$1" "\\$2" "\\$3"
  1482. .IX "\\$1" "" "\fL\\$1\f1"
  1483. ..
  1484. .    \" UL - underline in troff
  1485. .de UL
  1486. .if t \\$1\l'|0\(ul'\\$2
  1487. .if n .I \\$1 \\$2
  1488. ..
  1489. .    \" SM - smaller
  1490. .de SM
  1491. .if !\\$1 \&\\$3\&\s-1\\$1\s+1\&\\$2
  1492. .if \\$1 .ps -1
  1493. ..
  1494. .    \" LG - larger
  1495. .de LG
  1496. .if !\\$1 \&\\$3\&\s+1\\$1\s-1\&\\$2
  1497. .if \\$1 .ps +1
  1498. ..
  1499. .    \" NL - normal
  1500. .de NL
  1501. .ps \\n(PS
  1502. ..
  1503. .    \" combos
  1504. .de RI
  1505. \&\fR\\$1\fI\\$2\^\fR\\$3\fI\\$4\^\fR\\$5\fI\\$6\^\fR\\$7\fI\\$8\^\fR\\$9
  1506. ..
  1507. .de RB
  1508. \&\fR\\$1\fB\\$2\fR\\$3\fB\\$4\fR\\$5\fB\\$6\fR\\$7\fB\\$8\fR\\$9
  1509. ..
  1510. .de IR
  1511. \&\fI\\$1\^\fR\\$2\fI\\$3\^\fR\\$4\fI\\$5\^\fR\\$6\fI\\$7\^\fR\\$8\fI\\$9\^\fR
  1512. ..
  1513. .de IB
  1514. \&\fI\\$1\^\fB\\$2\fI\\$3\^\fB\\$4\fI\\$5\^\fB\\$6\fI\\$7\^\fB\\$8\fI\\$9\^\fR
  1515. ..
  1516. .de BR
  1517. \&\fB\\$1\fR\\$2\fB\\$3\fR\\$4\fB\\$5\fR\\$6\fB\\$7\fR\\$8\fB\\$9\fR
  1518. ..
  1519. .de BI
  1520. \&\fB\\$1\fI\\$2\^\fB\\$3\fI\\$4\^\fB\\$5\fI\\$6\^\fB\\$7\fI\\$8\^\fB\\$9\fR
  1521. ..
  1522. .    \" \** - numbered footnote
  1523. .ds * \\*([.\\n+*\\*(.]
  1524. .    \" FS - footnote start
  1525. .de FS
  1526. 'ce 0
  1527. .di
  1528. .ev 1
  1529. .ll \\n(FLu
  1530. .in 0
  1531. .da FF
  1532. .br
  1533. .if \\n(IF .tm Nested footnote
  1534. .nr IF 1
  1535. .if !\\n+(XX-1 \{\
  1536. .    if n _________________________
  1537. .    if t \l'3i'
  1538. .br \}
  1539. .if !\\n(MF .if !\\n(.$ .if \\n* .FP \\n*
  1540. .if !\\n(MF .if \\n(.$ .FP \\$1 no
  1541. ..
  1542. .    \" FE - footnote end
  1543. .de FE
  1544. .br
  1545. .in \\n(GIu
  1546. .nr IF 0
  1547. .di
  1548. .ev
  1549. .if !\\n(XX-1 .nr dn +\\n(.v
  1550. .nr YY -\\n(dn
  1551. .if !\\n(NX .nr WF 1
  1552. .if \\n(dl>\\n(CW .nr WF 1
  1553. .if (\\n(nl+\\n(.v)<=(\\n(.p+\\n(YY) .ch FO \\n(YYu
  1554. .if (\\n(nl+\\n(.v)>(\\n(.p+\\n(YY) \{\
  1555. .    if \\n(nl>(\\n(HM+1.5v) .ch FO \\n(nlu+\\n(.vu
  1556. .    if \\n(nl+\\n(FM+1v>\\n(.p .ch FX \\n(.pu-\\n(FMu+2v
  1557. .    if \\n(nl<=(\\n(HM+1.5v) .ch FO \\n(HMu+(4u*\\n(.vu)
  1558. .\}
  1559. ..
  1560. .    \" FP - footnote paragraph
  1561. .de FP
  1562. .sp \\n(PDu/2u
  1563. .if \\n(FF<2 .ti \\n(FIu
  1564. .if \\n(FF=3 \{\
  1565. .    in \\n(FIu*2u
  1566. .    ta \\n(FIu*2u
  1567. .    ti 0
  1568. .\}
  1569. .if !\\n(FF \{\
  1570. .    ie "\\$2"no" \\$1\0\c
  1571. .    el \\*([.\\$1\\*(.]\0\c
  1572. .\}
  1573. .if \\n(FF .if \\n(FF<3 \{\
  1574. .    ie "\\$2"no" \\$1\0\c
  1575. .    el \\$1.\0\c
  1576. .\}
  1577. .if \\n(FF=3 \{\
  1578. .    ie "\\$2"no" \\$1\t\c
  1579. .    el \\$1.\t\c
  1580. .\}
  1581. ..
  1582. .    \" FV - get leftover footnote from previous page
  1583. .de FV
  1584. .FS
  1585. .nf
  1586. .ls 1
  1587. .FY
  1588. .ls
  1589. .fi
  1590. .FE
  1591. ..
  1592. .    \" FX - divert leftover footnote for next page
  1593. .de FX
  1594. .if \\n(XX \{\
  1595. '    in 0
  1596. .    di FY
  1597. .    ns
  1598. .\}
  1599. ..
  1600. .    \" XF - actually print footnote
  1601. .de XF
  1602. .if \\n(nlu+1v>(\\n(.pu-\\n(FMu) .ch FX \\n(nlu+1.9v
  1603. .ev 1
  1604. .nf
  1605. .ls 1
  1606. .in \\n(GIu
  1607. .FF
  1608. .rm FF
  1609. .nr XX 0 1
  1610. .br
  1611. .ls
  1612. .di
  1613. .fi
  1614. .ev
  1615. ..
  1616. .    \" TX - title xref
  1617. .de TX
  1618. .rn TX @T
  1619. .so \*(//tx.map
  1620. .TX \\$1 \\$2
  1621. .rm @T
  1622. ..
  1623. .    \" TS - source file for tbl
  1624. .de TS
  1625. .rn TS @T
  1626. .so \*(//exp.tbl
  1627. .TS \\$1 \\$2
  1628. .rm @T
  1629. ..
  1630. .    \" EQ - source file for eqn
  1631. .de EQ
  1632. .rn EQ @T
  1633. .so \*(//exp.eqn
  1634. .EQ \\$1 \\$2
  1635. .rm @T
  1636. ..
  1637. .    \" ]- - source file for refer
  1638. .de ]-
  1639. .rn ]- @T
  1640. .so \*(//exp.ref
  1641. .]-
  1642. .rm @T
  1643. ..
  1644. .    \" [< - for refer -s or -e
  1645. .de ]<
  1646. .rn ]< @T
  1647. .so \*(//exp.ref
  1648. .]<
  1649. .rm @T
  1650. ..
  1651. .if \n(.V>19 .ds [. \f1[
  1652. .if \n(.V>19 .ds .] ]\fP
  1653. .if \n(.V<20 .ds [. \f1\s-2\v'-.4m'
  1654. .if \n(.V<20 .ds .] \v'.4m'\s+2\fP
  1655. .ds <. .
  1656. .ds <, ,
  1657. .if n .ds Q \&"
  1658. .if n .ds U \&"
  1659. .if n .ds - \%--
  1660. .if t .ds Q \(lq
  1661. .if t .ds U \(rq
  1662. .if t .ds - \(em
  1663. .ds SQ \s6\v'-1p'\(sq\v'1p'\s0
  1664. .    \" old bad accent marks
  1665. .ds ' \h'\w'e'u/5'\z\'\h'-\w'e'u/5'
  1666. .ds ` \h'\w'e'u/5'\z\`\h'-\w'e'u/5'
  1667. .ds ^ \h'\w'o'u/10'\z^\h'-\w'e'u/10'
  1668. .ds , \h'\w'c'u/5'\z,\h'-\w'e'u/5'
  1669. .ds : \h'\w'u'u/5'\z"\h'-\w'e'u/5'
  1670. .ds ~ \h'\w'n'u/10'\z~\h'-\w'e'u/10'
  1671. .ds C \h'\w'c'u/5'\v'-.6m'\s-4\zv\s+4\v'.6m'\h'-\w'c'u/5'
  1672. .    \" AM - new bad accent marks
  1673. .de AM
  1674. .so \*(//exp.acc
  1675. ..
  1676. .    \" BX - word in box
  1677. .de BX
  1678. .if n \(br\\kA\|\\$1\|\\kB\(br\v'-1v'\h'|\\nBu'\l'|\\nAu'\v'1v'\l'|\\nAu'
  1679. .if t \{\
  1680. .    ie \\*(.Tpsc \(br\\$1\|\(br\h'-.5n'\l'|0\(rn'\l'|0\(ul'
  1681. .    el \(br\|\\$1\|\(br\l'|0\(rn'\l'|0\(ul'
  1682. .\}
  1683. ..
  1684. .    \" B1 - square box start
  1685. .de B1
  1686. .nr BI \\n(.i
  1687. .sp \\n(PDu
  1688. .mk U#
  1689. ..
  1690. .    \" B2 - square box end
  1691. .de B2
  1692. .nr DI \\n(.i
  1693. .in \\n(GIu
  1694. .mk D#
  1695. .ps -3
  1696. \D'l (\\n(LLu-\\n(GIu) 0'\c
  1697. \D'l 0 -(\\n(D#u-\\n(U#u+3n)'\c
  1698. \D'l -(\\n(LLu-\\n(GIu) 0'\c
  1699. \D'l 0 (\\n(D#u-\\n(U#u+3n)'
  1700. .ps +3
  1701. .rr U# D#
  1702. .rs
  1703. .sp \\n(PDu
  1704. .in \\n(BIu
  1705. ..
  1706. .    \" LZ - Draw a goody with a lozenge around it
  1707. .de LZ
  1708. .nr WW \w\|\s-1\\$1\s+1\|u
  1709. .if !\\$3 \&\\$3\^\c
  1710. \%\h'.5n'\|\s-1\\$1\s+1\|\h'|0+.5n'\v'0.1v'\c
  1711. \D'l \\n(WWu 0'\c
  1712. \D'a 0 -15u 15u 0'\c
  1713. \D'l 0 -(\\n(.vu-.6v)'\c
  1714. \D'a -15u 0 0 -15u'\c
  1715. \D'l -\\n(WWu 0'\c
  1716. \D'a 0 15u -15u 0'\c
  1717. \D'l 0 \\n(.vu-.6v)'\c
  1718. \D'a 15u 0 0 15u'\v'-0.1v'\c
  1719. .if \\$2 \h'\\n(WWu+.5n'
  1720. .if !\\$2 \h'\\n(WWu'\ \\$2
  1721. .rr WW
  1722. ..
  1723. .    \" XR - xref macro
  1724. .de XR
  1725. \&$1 $2 $3 $4 $5 $6 $7 $8 $9
  1726. ..
  1727. .    \" IX - Make an Index Entry
  1728. .    \" $1 and $2: primary and secondary collating terms
  1729. .    \" $3 and $4: primary and secondary printing terms
  1730. .    \" $5 and $6: PAGE specifications or PRINT field
  1731. .de IX
  1732. .if \\nF .if !\\n(IK .tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\n(PN
  1733. .if \\nF .if \\n(IK \!.tm .IE\tENTRY\t\\$1\t\\$2\t\\$3\t\\$4\t\\$5\t\\$6\t\\\\n(PN
  1734. ..
  1735. .    \" UX - UNIX macro
  1736. .de UX
  1737. .ie \\n(UX \s-1UNIX\s0\\$1
  1738. .el \{\
  1739. \s-1UNIX\s0\\$1\(dg
  1740. .FS \(dg
  1741. \s-1UNIX\s0 is a registered trademark of AT&T.
  1742. .FE
  1743. .nr UX 1
  1744. .\}
  1745. ..
  1746. .\" Totally PostScript dependent.  Ignore.
  1747. .    \" GB - gray bar under line
  1748. .de GB
  1749. .\" .nr s \\$1
  1750. .\" .nr e \\$2
  1751. .\" \!x P gsave
  1752. .\" \!x P \\ns 2     576 mul moveto
  1753. .\" \!x P \\ne 2     576 mul lineto
  1754. .\" \!x P \\ne 2.125 576 mul lineto
  1755. .\" \!x P \\ns 2.125 576 mul lineto
  1756. .\" \!x P \\ns 2     576 mul lineto
  1757. .\" \!x P 0.7 setgray fill grestore
  1758. .\" .rr e s
  1759. ..
  1760. .co
  1761. .if \n(mo-0 .ds MO January
  1762. .if \n(mo-1 .ds MO February
  1763. .if \n(mo-2 .ds MO March
  1764. .if \n(mo-3 .ds MO April
  1765. .if \n(mo-4 .ds MO May
  1766. .if \n(mo-5 .ds MO June
  1767. .if \n(mo-6 .ds MO July
  1768. .if \n(mo-7 .ds MO August
  1769. .if \n(mo-8 .ds MO September
  1770. .if \n(mo-9 .ds MO October
  1771. .if \n(mo-10 .ds MO November
  1772. .if \n(mo-11 .ds MO December
  1773. .ds DY \n(dy \*(MO 19\n(yr
  1774. .ie \n* .nr * \n*-1 1
  1775. .el .nr * 0 1
  1776. .IZ
  1777. .em EM
  1778. .rm IZ //
  1779.