|
|
1.1 ! root 1: |attribute(page.offset; init 0; ! 2: $ [ ! 3: .po$ ! 4: .nrO \n(.o ! 5: .nrO0 \n(.o ! 6: ]) ! 7: |attribute(line.length; init 6i; ! 8: $ [ ! 9: .ll$ ! 10: .lt$ ! 11: .nrW \n(.lu ! 12: ]) ! 13: |attribute(page.length; init 11i; ! 14: $ [ ! 15: .pl$ ! 16: ]) ! 17: |attribute(spacing; init off; ! 18: on [ ! 19: .rs ! 20: ] off [ ! 21: .ns ! 22: ]) ! 23: |attribute(new.page; nostack; ! 24: [ ! 25: .bp ! 26: ] odd [ ! 27: .bp ! 28: .af;P \gP ! 29: .afP 1 ! 30: .nr;P \nP ! 31: .afP \g(;P ! 32: .af;P 1 ! 33: .if!\n(;P%2 \{\ ! 34: .rs ! 35: .bp\} ! 36: .rr;P ! 37: ] even [ ! 38: .bp ! 39: .af;P \gP ! 40: .afP 1 ! 41: .nr;P \nP ! 42: .afP \g(;P ! 43: .af;P 1 ! 44: .if\n(;P%2 \{\ ! 45: .rs ! 46: .bp\} ! 47: .rr;P ! 48: ]) ! 49: |attribute(line.spacing; stack, init 1; ! 50: $ [ ! 51: .ls$ ! 52: ]) ! 53: |attribute(blank.lines; nostack; ! 54: $ [ ! 55: .sp$ ! 56: .ti\n(.iu ! 57: ] [ ! 58: .sp1 ! 59: .ti\n(.iu ! 60: ]) ! 61: |attribute(minimum.lines; nostack; ! 62: $ [ ! 63: .br ! 64: .ie!'\n(.z'' \{\ ! 65: .if!'\n(.z'\*(}D' .rr :D :E ! 66: .nr;4 $v ! 67: .if!(\n(.d=\n(:D) .nr :E 0 ! 68: .nr;4 -\n(:Eu ! 69: .if\n(;4 \{\ ! 70: .sp\n(;4u ! 71: .nr:E +\n(;4u \} ! 72: .rm;4 ! 73: .ds}D \n(.z ! 74: .nr:D \n(.d \} ! 75: .el\{\ ! 76: .rr:D :E ! 77: .nr;4 $v ! 78: .if!(\n(nl=\n(:N) .nr :B 0 ! 79: .nr;4 -\n(:Bu ! 80: .if\n(;4 \{\ ! 81: .sp\n(;4u ! 82: .nr:B +\n(;4u \} ! 83: .rm;4 ! 84: .nr:N \n(nl \} ! 85: .ti\n(.iu ! 86: ] [ ! 87: .br ! 88: .ie!'\n(.z'' \{\ ! 89: .if!'\n(.z'\*(}D' .rr :D :E ! 90: .nr;4 1v ! 91: .if!(\n(.d=\n(:D) .nr :E 0 ! 92: .nr;4 -\n(:Eu ! 93: .if\n(;4 \{\ ! 94: .sp\n(;4u ! 95: .nr:E +\n(;4u \} ! 96: .rm;4 ! 97: .ds}D \n(.z ! 98: .nr:D \n(.d \} ! 99: .el\{\ ! 100: .rr:D :E ! 101: .nr;4 1v ! 102: .if!(\n(nl=\n(:N) .nr :B 0 ! 103: .nr;4 -\n(:Bu ! 104: .if\n(;4 \{\ ! 105: .sp\n(;4u ! 106: .nr:B +\n(;4u \} ! 107: .rm;4 ! 108: .nr:N \n(nl \} ! 109: .ti\n(.iu ! 110: ]) ! 111: |attribute(horizontal.motion; nostack; ! 112: $ [\h'$'] ! 113: number $$. [\h'\n$$.'] ! 114: number $number.register [\h'\n($number.register']) ! 115: |attribute(vertical.motion; nostack; ! 116: $ [\v'$'] ! 117: number $$. [\v'\n$$.'] ! 118: number $number.register [\v'\n($number.register']) ! 119: |attribute(concatenate; nostack; ! 120: [\&\c ! 121: ]) ! 122: |attribute(new.line; nostack; ! 123: [ ! 124: .br ! 125: ]) ! 126: |attribute(indent; stack, default 0; ! 127: $ [ ! 128: .in$ ! 129: ]) ! 130: |attribute(indent.line; nostack; ! 131: $ [ ! 132: .ti$ ! 133: ] ! 134: number $$. [ ! 135: .ti\n$$.u ! 136: ] ! 137: number $number.register [ ! 138: .ti\n($number.registeru ! 139: ]) ! 140: |attribute(fill; stack, init on; ! 141: on [ ! 142: 'fi ! 143: ] off [ ! 144: 'nf ! 145: ]) ! 146: |attribute(adjust; stack, init both; ! 147: right [ ! 148: .adr ! 149: ] left [ ! 150: .adl ! 151: ] both [ ! 152: .adb ! 153: ] on [ ! 154: .ad ! 155: ] off [ ! 156: .na ! 157: ]) ! 158: |attribute(title; nostack; ! 159: $left $center $right [ ! 160: .tl\(ts$left\(ts$center\(ts$right\(ts ! 161: ] $$. [ ! 162: .tl\*$$. ! 163: ] $$.. [ ! 164: .tl\*($$.. ! 165: ] $ [ ! 166: .tl$ ! 167: ]) ! 168: |attribute(center; stack, default off; ! 169: on [ ! 170: .ce9999 ! 171: ] off [ ! 172: .ce0 ! 173: ]) ! 174: |attribute(center.block; stack, default off; ! 175: on [ ! 176: .nr:Y 0 ! 177: .br ! 178: .di:1 ! 179: ] off [ ! 180: .br ! 181: .di ! 182: .nr;q \n(.u ! 183: .nf ! 184: .nr;L \n(.L ! 185: .ls1 ! 186: .nr;i \n(.i ! 187: .if\n(dl>\n(:Y .nr :Y \n(dl ! 188: .if\n(:Y<\n(.l .in (\n(.lu-\n(:Yu)/2u ! 189: .:1 ! 190: .if\n(;q .fi ! 191: .ls\n(;L ! 192: .in\n(;iu ! 193: .rr;L ;i ;q ! 194: .rm:1 ! 195: ]) ! 196: |attribute(text; nostack; ! 197: $ [$] ! 198: roman $ [\f1\&$\fP\&] ! 199: italics $ [\f2\&$\fP\&] ! 200: bold $ [\f3\&$\fP\&] ! 201: bolditalics $ [\f4\&$\fP\&] ! 202: cw $ [\f(CW\&$\fP\&]) ! 203: |attribute(error; nostack; ! 204: number $* $$. [ ! 205: .tm"__FILE__":__LINE__: $* \n$$. ! 206: ] number $* $number.register [ ! 207: .tm"__FILE__":__LINE__: $* \n($number.register ! 208: ] string $* $$. [ ! 209: .tm"__FILE__":__LINE__: $* \n$$. ! 210: ] string $* $string.register [ ! 211: .tm"__FILE__":__LINE__: $* \n($string.register ! 212: ] $* [ ! 213: .tm"__FILE__":__LINE__: $* ! 214: ]) ! 215: |attribute(here; stack, default off; ! 216: on [ ! 217: .if\n(:y .tm "__FILE__":__LINE__: Here's and/or Around's can not be nested ! 218: .nr:y 1 ! 219: .br ! 220: .di:0 ! 221: ] off [ ! 222: .br ! 223: .di ! 224: .nr:d 1 ! 225: .if(\n(dn>=\n(.t)&((\n(dn<(\n(.p-\n(:r-\n(:m)):\ ! 226: (\n(nl>(\n(.p-\n(:r-\n(:o/2u+\n(:r)))\ ! 227: .ne\n(.tu+1v ! 228: .nr;q \n(.u ! 229: .nf ! 230: .nr;L \n(.L ! 231: .ls1 ! 232: .nr;i \n(.i ! 233: .in0 ! 234: .rs ! 235: .:0 ! 236: .nr:d 0 ! 237: .if\n(;q .fi ! 238: .ls\n(;L ! 239: .in\n(;iu ! 240: .nr:y 0 ! 241: .rr;L ;i ;q ! 242: .rm:0 ! 243: ]) ! 244: |attribute(around; stack, default off; ! 245: on [ ! 246: .if\n(:y .tm "__FILE__":__LINE__: Here's and/or Around's can not be nested ! 247: .nr:y 1 ! 248: .nr;s \n(.s ! 249: .nr;f \n(.f ! 250: .nr;u \n(.u ! 251: .nr;j \n(.j ! 252: .nr;v \n(.v ! 253: .nr;L \n(.L ! 254: .nr;l \n(.l ! 255: .nr;i \n(.i ! 256: .ev1 ! 257: .ps\n(;s ! 258: .vs\n(;sp+2p ! 259: .ft\n(;f ! 260: .nf ! 261: .if\n(;u .fi ! 262: .ad\n(;j ! 263: .vs\n(;vu ! 264: .ls\n(;L ! 265: .ll\n(;lu ! 266: .in\n(;iu ! 267: .ti\n(;iu ! 268: .hy14 ! 269: .lt\n(;lu ! 270: |ifvalue around_width full [ ! 271: .if\n(:C \{\ ! 272: .ll\n(W0u ! 273: .lt\n(W0u \} ! 274: ] ! 275: .di:0 ! 276: ] off [ ! 277: .br ! 278: .di ! 279: |ifvalue around_width full [ ! 280: .if\n(:C \{\ ! 281: .ll\nWu ! 282: .lt\nWu \} ! 283: ] ! 284: .ev ! 285: .nr:z \n(:z%26+1 ! 286: .if\n(:z-\n(:w=0 .tm "__FILE__":__LINE__: too many floating displays ! 287: .af;w a ! 288: .nr;w \n(:z ! 289: .rn:0 ?\n(;w ! 290: .nr!\n(;w 0 ! 291: |ifvalue around_width full [ ! 292: .nr!\n(;w 1 ! 293: ] ! 294: |ifnotvalue around_width full [ ! 295: .if!\n(:C .nr !\n(;w 1 ! 296: ] ! 297: .nr|\n(;w \n(dn ! 298: .if(((\n(:z-\n(:w=1):(\n(:z+26-\n(:w=1))&((\n(!\n(;w=1)&(\n(:C<2))&\ ! 299: ((\n(dn<\n(.t):((\n(dn>(\n(.p-\n(:r-\n(:m))&\ ! 300: (\n(nl<=(\n(.p-\n(:r-\n(:o/2u+\n(:r))))) .)z ! 301: .nr:y 0 ! 302: .rr;L ;f ;i ;j ;l ;s ;u ;v ;w ! 303: ]) ! 304: |attribute(around_placement; nostack; ! 305: [ ! 306: .)w ! 307: ]) ! 308: |attribute(footnote; stack, default off; ! 309: on [ ! 310: .if\n(:x .tm "__FILE__":__LINE__: Footnotes can not be nested ! 311: .nr:x 1 ! 312: .nr;s \n(.s ! 313: .nr;f \n(.f ! 314: .nr;u \n(.u ! 315: .nr;j \n(.j ! 316: .nr;v \n(.v ! 317: .nr;L \n(.L ! 318: .nr;l \n(.l ! 319: .ev1 ! 320: .ps\n(;s ! 321: .vs\n(;sp+2p ! 322: .ft\n(;f ! 323: .nf ! 324: .if\n(;u .fi ! 325: .ad\n(;j ! 326: .vs\n(;vu ! 327: .ls\n(;L ! 328: .ll\n(;lu ! 329: .in0 ! 330: .ti0 ! 331: .hy14 ! 332: .lt\n(;lu ! 333: |ifvalue footnote_width full [ ! 334: .if\n(:C \{\ ! 335: .ll\n(W0u ! 336: .lt\n(W0u \} ! 337: ] ! 338: .da:F ! 339: .ie!\n(:q \{\ ! 340: .nr;o \n(.o ! 341: .po0 ! 342: .ps10 ! 343: .vs12p ! 344: .ft1 ! 345: .ie\n(.A=0 \l'72p' ! 346: .el __________ ! 347: .ft ! 348: .vs ! 349: .ps ! 350: .po\n(;ou \} ! 351: .el.sp 1 ! 352: ] off [ ! 353: .br ! 354: .da ! 355: |ifvalue footnote_width full [ ! 356: .if\n(:C \{\ ! 357: .ll\nWu ! 358: .lt\nWu \} ! 359: .nr:v 1 ! 360: ] ! 361: |ifnotvalue footnote_width full [ ! 362: .if!\n(:C .nr :v 1 ! 363: ] ! 364: .ev ! 365: .nr:x 0 ! 366: .if!\n(:o-\n(:m \{\ ! 367: .nr:o +\n(:Vu-1u ! 368: .nrdn +\n(:V-\n(.v \} ! 369: .nr:q +\n(dnu ! 370: .nr:o +\n(dnu ! 371: .if!\n(.pu-\n(nlu-.5p-\n(:ou .nr :o \n(.pu-\n(nlu-.5p ! 372: .if!\n(:ou-\n(:mu .nr :o \n(:mu ! 373: .if\n(:C>1&\n(:v .nr :o \n(:mu ! 374: .ch)f -\n(:ou ! 375: .rr;L ;f ;j ;l ;o ;s ;u ;v ! 376: ]) ! 377: |attribute(size; stack, default 10; ! 378: $ [|ifvalue inline on [\s$\&]|ifvalue inline off [ ! 379: .ps$ ! 380: ]]) ! 381: |attribute(space; stack, init 12; ! 382: $ [ ! 383: .vs$ ! 384: ]) ! 385: |attribute(SPACE; nostack; ! 386: [ ! 387: .vs\n(.sp+2p ! 388: ]) ! 389: |attribute(font; stack, default roman; ! 390: roman [|ifvalue inline on [\&\f1\&]|ifvalue inline off [ ! 391: .ft1 ! 392: ]] italics [|ifvalue inline on [\&\f2\&]|ifvalue inline off [ ! 393: .ft2 ! 394: ]] bold [|ifvalue inline on [\&\f3\&]|ifvalue inline off [ ! 395: .ft3 ! 396: ]] bolditalics [|ifvalue inline on [\&\f4\&]|ifvalue inline off [ ! 397: .ft4 ! 398: ]] cw [|ifvalue inline on [\&\f(CW\&]|ifvalue inline off [ ! 399: .ftCW ! 400: ]]) ! 401: |attribute(font.family; stack, default times; ! 402: times [ ! 403: .fp1 R ! 404: .fp2 I ! 405: .fp3 B ! 406: .fp4 BI ! 407: ] palatino [ ! 408: .fp1 PA ! 409: .fp2 PI ! 410: .fp3 PB ! 411: .fp4 PX ! 412: ] bembo [ ! 413: .fp1 B1 ! 414: .fp2 B2 ! 415: .fp3 B3 ! 416: .fp4 B4 ! 417: ] optima [ ! 418: .fp1 O1 ! 419: .fp2 O2 ! 420: .fp3 O3 ! 421: .fp4 O4 ! 422: ] souvenir [ ! 423: .fp1 SV ! 424: .fp2 SI ! 425: .fp3 SB ! 426: .fp4 SX ! 427: ] helvetica [ ! 428: .fp1 H ! 429: .fp2 HI ! 430: .fp3 HB ! 431: .fp4 HX ! 432: ] cw [ ! 433: .fp1 CW ! 434: .fp2 I ! 435: .fp3 B ! 436: .fp4 BI ! 437: ] gothic [ ! 438: .fp1 C ! 439: .fp2 CX ! 440: .fp3 TB ! 441: .fp4 TX ! 442: ] condensed [ ! 443: .fp1 Hcond ! 444: .fp2 HcondI ! 445: .fp3 HcondB ! 446: .fp4 HlightI ! 447: ] narrow [ ! 448: .fp1 Hr ! 449: .fp2 Hi ! 450: .fp3 Hb ! 451: .fp4 Hx ! 452: ]) ! 453: |attribute(if; nostack; ! 454: $test [ ! 455: .if$test \ ! 456: ] begin $test [ ! 457: .if$test \{\ ! 458: ] end [\}\c ! 459: ] else $test [ ! 460: .ie$test \ ! 461: ] else begin $test [ ! 462: .ie$test \{\ ! 463: ] else [ ! 464: .el\ ! 465: ] else begin [ ! 466: .el\{\ ! 467: ]) ! 468: |attribute(tab; nostack; ! 469: [\& ]) ! 470: |attribute(leader; nostack; ! 471: [\&&]) ! 472: |attribute(thick.line; nostack; ! 473: $ [ ! 474: .ps24 ! 475: \l'$' ! 476: .ps ! 477: ] [ ! 478: .ps24 ! 479: \l'\n(.lu' ! 480: .ps ! 481: ]) ! 482: |attribute(line; nostack; ! 483: $ [\l'$'] ! 484: [\l'\n(.lu']) ! 485: |attribute(box; nostack; ! 486: x [\s12\o'\(mu\(sq'\s0] ! 487: empty [\s12\(sq\s0] ! 488: [\(sq]) ! 489: |attribute(underline; stack, default off; ! 490: on [\kx] ! 491: off [\l'|\nxu\(ul']) ! 492: |attribute(hyphenate; stack, init on; ! 493: on [ ! 494: .hy14 ! 495: ] off [ ! 496: .nh ! 497: ]) ! 498: |attribute(case; stack, init any; ! 499: upper [ ! 500: ] lower [ ! 501: ] capitalize [ ! 502: ] any [ ! 503: ]) ! 504: |attribute(tab.stops; nostack; ! 505: $* [ ! 506: .ta$* ! 507: ] [ ! 508: .ta.5i 1.0i 1.5i 2.0i 2.5i 3.0i 3.5i 4.0i 4.5i 5.0i 5.5i 6.0i 6.5i 7.0i 7.5i ! 509: ]) ! 510: |attribute(set; nostack; ! 511: $* $number [ ! 512: |for i in $* { ! 513: .nr$i $number ! 514: }] string $* $string [ ! 515: |for i in $* { ! 516: .ds$i $string ! 517: }]) ! 518: |attribute(store; nostack; ! 519: $* $$. [ ! 520: |for i in $* { ! 521: .nr$i \n$$. ! 522: }] $* $number.register [ ! 523: |for i in $* { ! 524: .nr$i \n($number.register ! 525: }] string $* $$. [ ! 526: |for i in $* { ! 527: .ds$i \*$$. ! 528: }] string $* $string.register [ ! 529: |for i in $* { ! 530: .ds$i \*($string.register ! 531: }] number.from.string $* $$. [ ! 532: |for i in $* { ! 533: .nr$i \*$$. ! 534: }] number.from.string $* $string.register [ ! 535: |for i in $* { ! 536: .nr$i \*($string.register ! 537: }] string.from.number $* $$. [ ! 538: |for i in $* { ! 539: .ds$i \n$$. ! 540: }] string.from.number $* $number.register [ ! 541: |for i in $* { ! 542: .ds$i \n($number.register ! 543: }] width $* $$. [ ! 544: |for i in $* { ! 545: .nr$i \w'\*$$.' ! 546: }] width $* $number.register [ ! 547: |for i in $* { ! 548: .nr$i \w'\*($number.register' ! 549: }] indent $* [ ! 550: |for i in $* { ! 551: .nr$i \n(.i ! 552: }] linelength $* [ ! 553: |for i in $* { ! 554: .nr$i \n(.l ! 555: }] pagewidth $* [ ! 556: |for i in $* { ! 557: .nr$i \nWu ! 558: }] totrap $* [ ! 559: |for i in $* { ! 560: .nr$i \n(.t ! 561: }] pageoffset $* [ ! 562: |for i in $* { ! 563: .nr$i \n(.o ! 564: }] diversionheight $* [ ! 565: |for i in $* { ! 566: .nr$i \n(dn ! 567: }]) ! 568: |attribute(clear; nostack; ! 569: $* [ ! 570: |for i in $* { ! 571: .nr$i 0 ! 572: }] string $* [ ! 573: .rm$* ! 574: ]) ! 575: |attribute(rename; nostack; ! 576: $from $to [ ! 577: .rn$from $to ! 578: ]) ! 579: |attribute(add; nostack; ! 580: $result $$. $* [ ! 581: .nr$result \n$$. ! 582: |for i in $* { ! 583: .nr$result +\n($i ! 584: }] $result $operand $* [ ! 585: .nr$result \n($operand ! 586: |for i in $* { ! 587: .nr$result +\n($i ! 588: }] $result $$. [ ! 589: .nr$result +\n$$. ! 590: ] $result $operand [ ! 591: .nr$result +\n($operand ! 592: ] constant $result $constant $* [ ! 593: .nr$result $constant ! 594: |for i in $* { ! 595: .nr$result +$i ! 596: }] constant $result $constant [ ! 597: .nr$result +$constant ! 598: ] string $string $text [ ! 599: .as$string $text ! 600: ] string.from.number $string $$. [ ! 601: .as$string \n$$. ! 602: ] string.from.number $string $number.register [ ! 603: .as$string \n($number.register ! 604: ] string.from.string $string $$. [ ! 605: .as$string \*$$. ! 606: ] string.from.string $string $string.register [ ! 607: .as$string \*($string.register ! 608: ]) ! 609: |attribute(sub; nostack; ! 610: $result $$. $* [ ! 611: .nr$result \n$$. ! 612: |for i in $* { ! 613: .nr$result -\n($i ! 614: }] $result $operand $* [ ! 615: .nr$result \n($operand ! 616: |for i in $* { ! 617: .nr$result -\n($i ! 618: }] $result $$. [ ! 619: .nr$result -\n$$. ! 620: ] $result $operand [ ! 621: .nr$result -\n($operand ! 622: ] constant $result $constant $* [ ! 623: .nr$result $constant ! 624: |for i in $* { ! 625: .nr$result -$i ! 626: }] constant $result $constant [ ! 627: .nr$result -$constant ! 628: ]) ! 629: |attribute(incr; nostack; ! 630: $* [ ! 631: |for i in $* { ! 632: .nr$i +1 ! 633: }]) ! 634: |attribute(decr; nostack; ! 635: $* [ ! 636: |for i in $* { ! 637: .nr$i -1 ! 638: }]) ! 639: |attribute(protect; nostack; ! 640: $ [ ! 641: .ne$ ! 642: ] [ ! 643: .ne3 ! 644: ]) ! 645: |attribute(warn.orphan; nostack; ! 646: $ [ ! 647: ] [ ! 648: ]) ! 649: |attribute(column; nostack; ! 650: $column $width $offset [ ! 651: .if\n(:c<$column .nr :c $column ! 652: .nrW$column $width ! 653: .nrO$column $offset ! 654: ] width $width [ ! 655: .nrW\n(:c $width ! 656: ] offset $offset [ ! 657: .nrO\n(:c $offset ! 658: ] next [ ! 659: .nr:c +1 ! 660: ] clear [ ! 661: .rr:c ! 662: ] new [ ! 663: .ie!\n(:C .tm "__FILE__":__LINE__: not in multi-column mode ! 664: .el\{\ ! 665: .br ! 666: .ne\n(.tu+1v \} ! 667: ] new $ [ ! 668: .ie!\n(:C .tm "__FILE__":__LINE__: not in multi-column mode ! 669: .el\{\ ! 670: .br ! 671: .ne\n(.tu+1v ! 672: .nr;d \n(.lu-\n(W\n(:Cu ! 673: .nr:C $ ! 674: .nrO \n(O$u ! 675: .po\nOu ! 676: .nrW \n(W$u+\n(;du ! 677: .ll\nWu ! 678: .lt\nWu ! 679: .rr;d \} ! 680: ] old $ [ ! 681: .ie!\n(:C .tm "__FILE__":__LINE__: not in multi-column mode ! 682: .el\{\ ! 683: .br ! 684: .if\n(nl>\n(U\n(:C \ ! 685: .mkU\n(:C ! 686: .nr;d \n(.lu-\n(W\n(:Cu ! 687: .nr:C $ ! 688: .nrO \n(O$u ! 689: .po\nOu ! 690: .nrW \n(W$u+\n(;du ! 691: .ll\nWu ! 692: .lt\nWu ! 693: .rs ! 694: .ie\n(U$ .sp |\n(U$u ! 695: .el.sp |\n(U0u ! 696: .ns ! 697: .rr;d \} ! 698: ] on [ ! 699: .ie\n(:C .tm "__FILE__":__LINE__: already in multi-column mode ! 700: .el\{\ ! 701: .br ! 702: .nr:C 1 ! 703: .nrW \n(W1u ! 704: .ll\nWu ! 705: .lt\nWu ! 706: .nrO \n(O1u ! 707: .po\nOu ! 708: .mkU0 ! 709: .ns ! 710: .rrU1 U2 U3 U4 U5 U6 U7 U8 U9 ! 711: .rr;d \} ! 712: ] off [ ! 713: .ie!\n(:C .tm "__FILE__":__LINE__: already in full page mode ! 714: .el\{\ ! 715: .br ! 716: .if\n(nl>\n(U\n(:C \ ! 717: .mkU\n(:C ! 718: .nr;d \n(.lu-\n(W\n(:Cu ! 719: .nr:C 0 ! 720: .nrO \n(O0u ! 721: .po\nOu ! 722: .nrW \n(W0u+\n(;du ! 723: .ll\nWu ! 724: .lt\nWu ! 725: .rs ! 726: .sp|\n(U0u ! 727: .if\n(nl<\n(U1 \ ! 728: .sp|\n(U1u ! 729: .if\n(nl<\n(U2 \ ! 730: .sp|\n(U2u ! 731: .if\n(nl<\n(U3 \ ! 732: .sp|\n(U3u ! 733: .if\n(nl<\n(U4 \ ! 734: .sp|\n(U4u ! 735: .if\n(nl<\n(U5 \ ! 736: .sp|\n(U5u ! 737: .if\n(nl<\n(U6 \ ! 738: .sp|\n(U6u ! 739: .if\n(nl<\n(U7 \ ! 740: .sp|\n(U7u ! 741: .if\n(nl<\n(U8 \ ! 742: .sp|\n(U8u ! 743: .if\n(nl<\n(U9 \ ! 744: .sp|\n(U9u ! 745: .ti\n(.iu ! 746: .rrU1 U2 U3 U4 U5 U6 U7 U8 U9 ! 747: .ns ! 748: .rr;d \} ! 749: ] 2 [ ! 750: .ie\n(:C .tm "__FILE__":__LINE__: already in multi-column mode ! 751: .el\{\ ! 752: .br ! 753: .nr:C 1 ! 754: .nrW0 \nW ! 755: .nrW \n(.lu*8u/17u ! 756: .nrW1 \nW ! 757: .nrW2 \nW ! 758: .nrO0 \n(.ou ! 759: .nrO1 \n(.ou ! 760: .nrO2 \n(.lu*9u/17u+\n(.ou ! 761: .ll\nWu ! 762: .lt\nWu ! 763: .nr:c 2 ! 764: .mkU0 ! 765: .ns ! 766: .rrU1 U2 \} ! 767: ]) ! 768: |attribute(divert.string; stack, default off; ! 769: $string.name [ ! 770: .ds$string.name ] ! 771: off [ ! 772: ]) ! 773: |attribute(divert.number; stack, default off; ! 774: $number.name [ ! 775: .nr$number.name ] ! 776: off [ ! 777: ]) ! 778: |attribute(divert.output; stack, default off; ! 779: on $string.name [ ! 780: .nr;s \n(.s ! 781: .nr;f \n(.f ! 782: .nr;u \n(.u ! 783: .nr;j \n(.j ! 784: .nr;v \n(.v ! 785: .nr;L \n(.L ! 786: .nr;l \n(.l ! 787: .ev1 ! 788: .ps\n(;s ! 789: .vs\n(;sp+2p ! 790: .ft\n(;f ! 791: .nf ! 792: .if\n(;u .fi ! 793: .ad\n(;j ! 794: .vs\n(;vu ! 795: .ls\n(;L ! 796: .ll\n(;lu ! 797: .in0 ! 798: .ti0 ! 799: .hy14 ! 800: .lt\n(;lu ! 801: .di$string.name ! 802: ] off [ ! 803: .br ! 804: .di ! 805: .ev ! 806: .rr;L ;f ;j ;l ;o ;s ;u ;v ! 807: ]) ! 808: |attribute(divert.input; stack, default off; ! 809: on $string.name [ ! 810: .eo ! 811: .de$string.name\(ts\(ts ! 812: ] off [ ! 813: .\(ts\(ts ! 814: .ec ! 815: ]) ! 816: |attribute(append.output; stack, default off; ! 817: on $string.name [ ! 818: .nr;s \n(.s ! 819: .nr;f \n(.f ! 820: .nr;u \n(.u ! 821: .nr;j \n(.j ! 822: .nr;v \n(.v ! 823: .nr;L \n(.L ! 824: .nr;l \n(.l ! 825: .ev1 ! 826: .ps\n(;s ! 827: .vs\n(;sp+2p ! 828: .ft\n(;f ! 829: .nf ! 830: .if\n(;u .fi ! 831: .ad\n(;j ! 832: .vs\n(;vu ! 833: .ls\n(;L ! 834: .ll\n(;lu ! 835: .in0 ! 836: .ti0 ! 837: .hy14 ! 838: .lt\n(;lu ! 839: .da$string.name ! 840: ] off [ ! 841: .br ! 842: .da ! 843: .ev ! 844: .rr;L ;f ;j ;l ;o ;s ;u ;v ! 845: ]) ! 846: |attribute(append.input; stack, default off; ! 847: on $string.name [ ! 848: .eo ! 849: .am$string.name\(ts\(ts ! 850: ] off [ ! 851: .\(ts\(ts ! 852: .ec ! 853: ]) ! 854: |attribute(invoke; nostack; ! 855: on $offset $what [ ! 856: .wh15i $what ! 857: .ch$what \n(nlu+$offset ! 858: ] on number $$. $what [ ! 859: .wh15i $what ! 860: .ch$what \n(nlu+\n$$.u ! 861: ] on number $number.register $what [ ! 862: .wh15i $what ! 863: .ch$what \(nlu+\n($number.registeru ! 864: ] at constant $constant $what [ ! 865: .wh15i $what ! 866: .ch$what $constant ! 867: ] at number $$. $what [ ! 868: .wh15i $what ! 869: .ch$what \n$$.u ! 870: ] at number $number.register $what [ ! 871: .wh15i $what ! 872: .ch$what \n($number.registeru ! 873: ] end [ ! 874: .br ! 875: .di ! 876: ] off $what [ ! 877: .ch$what ! 878: ]) ! 879: |attribute(remember; nostack; ! 880: $ [ ! 881: .mk$ ! 882: ]) ! 883: |attribute(return; nostack; ! 884: $$. [ ! 885: .sp|\n$$.u ! 886: .ti\n(.iu ! 887: ] $ [ ! 888: .sp|\n($u ! 889: .ti\n(.iu ! 890: ]) ! 891: |attribute(goto; nostack; ! 892: $ [ ! 893: .sp|$ ! 894: .ti\n(.iu ! 895: ]) ! 896: |attribute(string; nostack; ! 897: $$. [\*$$.] ! 898: $string.register [\*($string.register] ! 899: roman $$. [\f1\&\*$$.\fP\&] ! 900: italics $$. [\f2\&\*$$.\fP\&] ! 901: bold $$. [\f3\&\*$$.\fP\&] ! 902: bolditalics $$. [\f4\&\*$$.\fP\&] ! 903: cw $$. [\f(CW\&\*$$.\fP\&] ! 904: roman $string.register [\f1\&\*($string.register\fP\&] ! 905: italics $string.register [\f2\&\*($string.register\fP\&] ! 906: bold $string.register [\f3\&\*($string.register\fP\&] ! 907: bolditalics $string.register [\f4\&\*($string.register\fP\&] ! 908: cw $string.register [\f(CW\&\*($string.register\fP\&]) ! 909: |attribute(macro; nostack; ! 910: $ [ ! 911: .$ ! 912: ]) ! 913: |attribute(number; nostack; ! 914: $$. [\n$$.] ! 915: $number.register [\n($number.register] ! 916: ++ $$. [\n+$$.] ! 917: ++ $number.register [\n+($number.register] ! 918: format $* $format [ ! 919: |for i in $* { ! 920: .af$i $format ! 921: }] ! 922: incr $* $incr [ ! 923: |for i in $* { ! 924: .nr$i +0 $incr ! 925: }] ! 926: format.from.string $* $$. [ ! 927: |for i in $* { ! 928: .af$i \*$$. ! 929: }] ! 930: incr $* $incr [ ! 931: |for i in $* { ! 932: .nr$i +0 $incr ! 933: }] ! 934: format.from.string $* $format [ ! 935: |for i in $* { ! 936: .af$i \*($format ! 937: }] ! 938: incr $* $incr [ ! 939: |for i in $* { ! 940: .nr$i +0 $incr ! 941: }]) ! 942: |attribute(list.pre; stack, default; ! 943: [ ! 944: .rml2 ! 945: ] ! 946: $pre [ ! 947: .dsl2 $pre ! 948: ]) ! 949: |attribute(list.format; stack, default; ! 950: [ ! 951: .rml3 ! 952: ] ! 953: $format [ ! 954: .dsl3 $format ! 955: ]) ! 956: |attribute(list.post; stack, default; ! 957: [ ! 958: .rml4 ! 959: ] ! 960: $post [ ! 961: .dsl4 $post ! 962: ]) ! 963: |attribute(list.indent; stack, default; ! 964: [ ! 965: .rml5 ! 966: ] ! 967: $indent [ ! 968: .dsl5 $indent ! 969: ]) ! 970: |attribute(list; nostack; ! 971: off [ ! 972: .)C ;i l1 \*(l1 ! 973: .in\n(;iu ! 974: .)C l0 l0 \*(l0 ! 975: .rm;i ! 976: ] on [ ! 977: .dsl1 \n(.i \*(l1 ! 978: .in+\w'\*(l5'u ! 979: .afl0 0 ! 980: .dsl0 \n(l0 \*(l0 ! 981: .nrl0 0 1 ! 982: ]) ! 983: |attribute(file.information; nostack; ! 984: [ ! 985: .lf__LINE__ __FILE__ ! 986: ]) ! 987: |attribute(reference.style; nostack; ! 988: acm [|reference_style(acm) ! 989: ] apa [|reference_style(apa) ! 990: ] att [|reference_style(att) ! 991: ] ieee [|reference_style(ieee) ! 992: ] lsa [|reference_style(lsa) ! 993: ] pami [|reference_style(pami) ! 994: ] spectrum [|reference_style(spectrum) ! 995: ]) ! 996: |attribute(reference.option; nostack; ! 997: tm [|reference_style(same tm) ! 998: ] rp [|reference_style(same rp) ! 999: ] nroff [|reference_style(same nroff) ! 1000: ] troff [|reference_style(same troff) ! 1001: ] sort [|reference_style(same sort) ! 1002: ] sequence [|reference_style(same sequence) ! 1003: ] a [|reference_style(same a) ! 1004: ] d [|reference_style(same d) ! 1005: ] t [|reference_style(same t) ! 1006: ] ad [|reference_style(same ad) ! 1007: ] at [|reference_style(same at) ! 1008: ] da [|reference_style(same da) ! 1009: ] dt [|reference_style(same dt) ! 1010: ] ta [|reference_style(same ta) ! 1011: ] td [|reference_style(same td) ! 1012: ] adt [|reference_style(same adt) ! 1013: ] atd [|reference_style(same atd) ! 1014: ] dat [|reference_style(same dat) ! 1015: ] dta [|reference_style(same dta) ! 1016: ] tad [|reference_style(same tad) ! 1017: ] tda [|reference_style(same tda) ! 1018: ]) ! 1019: |attribute(reference; stack, default off; ! 1020: database [|reference_database<] ! 1021: include [|reference_include<] ! 1022: list [|reference_list<] ! 1023: on [|reference<] ! 1024: off [>]) ! 1025: |attribute(reference.placement; nostack; ! 1026: [|reference_placement ! 1027: ]) ! 1028: |attribute(table; stack, default off; ! 1029: on [ ! 1030: .TS ! 1031: ] off [ ! 1032: .TE ! 1033: ]) ! 1034: |attribute(ipa; stack, default off; ! 1035: on [@ipa(] ! 1036: off [)]) ! 1037: |attribute(picture; stack, default off; ! 1038: on [ ! 1039: .PS ! 1040: ] off [ ! 1041: .PE ! 1042: ]) ! 1043: |attribute(ped; stack, default off; ! 1044: on [ ! 1045: .GS ! 1046: ] off[ ! 1047: .GE ! 1048: ]) ! 1049: |attribute(ideal; stack, default off; ! 1050: on [ ! 1051: .IS ! 1052: ] off[ ! 1053: .IE ! 1054: ]) ! 1055: |attribute(equation; stack, default off; ! 1056: on [ ! 1057: .br ! 1058: .di:4 ! 1059: .EQ ! 1060: ] off [ ! 1061: .EN ! 1062: .br ! 1063: .di ! 1064: .rm:4 ! 1065: |ifvalue center.block on [ ! 1066: .if\w@\*(10\*(ES@ \{\ ! 1067: .if\n(:Y<\w@\*(10@ .nr :Y \w@\*(10@ ! 1068: \!\*(10\h'\\n(.lu-\w@\*(10\*(ES@u-\\n(.iu'\*(ES ! 1069: .rr:D :E \}] ! 1070: |ifvalue center on [ ! 1071: .if\w@\*(10\*(ES@ .tl \(ts\(ts\*(10\(ts\*(ES\(ts] ! 1072: |ifnotvalue center.block on [ |ifnotvalue center on [ ! 1073: .if\w@\*(10\*(ES@ \{\ ! 1074: .pc ! 1075: .tl\(ts\h'\n(.iu'\*(10\(ts\(ts\*(ES\(ts ! 1076: .pc% \}]] ! 1077: .rm10 ! 1078: ]) ! 1079: |attribute(inline.equation; stack, default off; ! 1080: on [] ! 1081: off []) ! 1082: |attribute(graph; stack, default off; ! 1083: on [ ! 1084: .G1 ! 1085: ] off [ ! 1086: .G2 ! 1087: ]) ! 1088: |attribute(bargraph; stack, default off; ! 1089: on [ ! 1090: .B1 ! 1091: ] off [ ! 1092: .B0 ! 1093: ]) ! 1094: |attribute(computeroutput; stack, default off; ! 1095: on [ ! 1096: .CW ! 1097: ] off [ ! 1098: .CN ! 1099: ]) ! 1100: |attribute(citation; nostack; ! 1101: save on [ ! 1102: .CD "] ! 1103: save off string $$. [" "\*$$." ! 1104: ] save off string $string.register [" "\*($string.register" ! 1105: ] save off number $$. [" "\n$$." ! 1106: ] save off number $number.register [" "\n($number.register" ! 1107: ] save string $name $$. [\&\c ! 1108: .CD "$name" "\*$$." ! 1109: ] save string $name $string.register [\&\c ! 1110: .CD "$name" "\*($string.register" ! 1111: ] save number $name $$. [\&\c ! 1112: .CD "$name" "\n$$." ! 1113: ] save number $name $number.register [\&\c ! 1114: .CD "$name" "\n($number.register" ! 1115: ] remember on [\&\c ! 1116: .CU "] ! 1117: remember off ["] ! 1118: remember string $name [\&\c ! 1119: .CU "$name"]) ! 1120: |attribute(index; stack, default off; ! 1121: on [\&\c ! 1122: .tmix: ] ! 1123: off [ \nP ! 1124: \&]) ! 1125: |attribute(contents; nostack; ! 1126: $category $level $sequence $text [ ! 1127: .tm.TC $category $level \*($sequence \*($text \nP ! 1128: ]) ! 1129: |attribute(white.text; nostack; ! 1130: $text [|ifvalue verbatim off []|ifvalue verbatim on [$text]]) ! 1131: |attribute(nl.paragraph; nostack; ! 1132: [|ifvalue verbatim on [ ! 1133: ]|ifvalue verbatim off []]) ! 1134: |attribute(format.type; stack, init none; ! 1135: model [ ! 1136: .dsf0 model ! 1137: ] acm [ ! 1138: .dsf0 acm ! 1139: ] none [ ! 1140: .dsf0 none ! 1141: ]) ! 1142: |attribute(list.type; stack, default none; ! 1143: fixed [] ! 1144: calculated [] ! 1145: none []) ! 1146: |attribute(list.spacing; stack, default off; ! 1147: off [] ! 1148: on []) ! 1149: |attribute(verbatim; stack, default off; ! 1150: off [] ! 1151: on []) ! 1152: |attribute(draft; stack, default off; ! 1153: off [] ! 1154: on []) ! 1155: |attribute(sectioning; stack, default bysection; ! 1156: bysection [] ! 1157: bychapter [] ! 1158: byappendix []) ! 1159: |attribute(globalparagraph.style; stack, default flushed; ! 1160: indented [] ! 1161: numbered [] ! 1162: flushed []) ! 1163: |attribute(localparagraph.style; stack, default flushed; ! 1164: indented [] ! 1165: numbered [] ! 1166: flushed []) ! 1167: |attribute(inline; stack, default on; ! 1168: off [] ! 1169: on []) ! 1170: |attribute(footnote_width; stack, default normal; ! 1171: narrow [] ! 1172: full [] ! 1173: normal[]) ! 1174: |attribute(around_width; stack, default normal; ! 1175: narrow [] ! 1176: full [] ! 1177: normal[]) ! 1178: |attribute(sawreference; stack, default off; ! 1179: off [] ! 1180: on []) ! 1181: |attribute(sawabstract; stack, default off; ! 1182: off [] ! 1183: on []) ! 1184: |attribute(sawkeywords; stack, default off; ! 1185: off [] ! 1186: on []) ! 1187: |attribute(sawoverflow; stack, default off; ! 1188: off [] ! 1189: on []) ! 1190: |attribute(sawtitlebox; stack, default off; ! 1191: off [] ! 1192: on []) ! 1193: |attribute(sawendnote; stack, default off; ! 1194: off [] ! 1195: on [])
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.