home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / x / volume16 / xabacus / part01 < prev    next >
Encoding:
Internet Message Format  |  1992-02-04  |  56.3 KB

  1. Path: uunet!zaphod.mps.ohio-state.edu!mips!msi!dcmartin
  2. From: lfernand@ee.ryerson.ca (luis fernandes)
  3. Newsgroups: comp.sources.x
  4. Subject: v16i042: X abacus, Part01/04
  5. Message-ID: <csx-16i042-xabacus@uunet.UU.NET>
  6. Date: 5 Feb 92 14:59:12 GMT
  7. Sender: dcmartin@msi.com (David C. Martin - Moderator)
  8. Organization: Molecular Simulations, Inc.
  9. Lines: 2345
  10. Approved: dcmartin@msi.com
  11. Originator: dcmartin@fascet
  12.  
  13. Submitted-by: lfernand@ee.ryerson.ca (luis fernandes)
  14. Posting-number: Volume 16, Issue 42
  15. Archive-name: xabacus/part01
  16.  
  17. # into a shell via "sh file" or similar.  To overwrite existing files,
  18. # type "sh file -c".
  19. # The tool that generated this appeared in the comp.sources.unix newsgroup;
  20. # send mail to comp-sources-unix@uunet.uu.net if you want that tool.
  21. # If this archive is complete, you will see the following message at the end:
  22. #        "End of archive 1 (of 4)."
  23. # Contents:  README aba.c abacus.ps.aa abacus.ps.ac
  24. # Wrapped by dcmartin@snoopy on Mon Jan 13 16:06:29 1992
  25. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  26. if test -f 'README' -a "${1}" != "-c" ; then 
  27.   echo shar: Will not clobber existing file \"'README'\"
  28. else
  29. echo shar: Extracting \"'README'\" \(2983 characters\)
  30. sed "s/^X//" >'README' <<'END_OF_FILE'
  31. Xxabacus is an implementation of the classic Chinese abacus for X.
  32. X
  33. Xo   It has a built-in demo-mode that teaches the user:
  34. X    - how to count (from 1 to 20) using the abacus
  35. X    - how to perform simple additions 
  36. X    - how to perform simple subtractions.
  37. X
  38. Xo   In addition, there is a rudimentary facility for generating data that 
  39. X    may be used to write customized scripts for teaching other concepts.
  40. X
  41. Xo   The PostScript document, Abacus.ps, included in the distribution,
  42. X    describes every possible techinique for performing additions and 
  43. X    subtractions using an abacus (typing "make ps" will build the file).
  44. X
  45. Xo   Refer to xabacus.man, for details about command-line options and user-
  46. X    definable X-resources available.
  47. X
  48. XThis application has been tested on a SPARCstation 1, 1+ & 2 running SunOS 4.1
  49. X& 4.1.1B (color & monochrome) under X11R4.  It uses Xt, the X Toolkit, for the
  50. Xresource and command-line parsing functions.  All other graphics are
  51. Ximplemented using raw Xlib calls.
  52. X
  53. XThe distribution contains:
  54. X    Imakefile                3 guesses...
  55. X    Makefile                 in case imake is not available
  56. X    README                   this file
  57. X    main.c,aba.c,Xinit.c     the source of all that is good...
  58. X    demo.c,maindefs.h            :
  59. X    main.h,demo.h                :
  60. X    resource.h                   :
  61. X    patchlevel.h                 :
  62. X    icon.bm                  bitmap for the icon
  63. X    Lesson?.cmd              3 script-files for the demo-mode
  64. X    XAbacus.ad               applications-default file (examples only)
  65. X    xabacus.man              man-page
  66. X    abacus.psaa,abacus.psab  (parts 1 & 2 of Abacus.ps)
  67. X
  68. XTo build xabacus, first unpack all the shar files. Then type...
  69. X
  70. Xxmkmf               (if you have it) will make a Makefile, otherwise edit the
  71. X                    supplied Makefile
  72. Xmake                will build the application
  73. Xxabacus -demo ./    will run the application in demo mode (assuming the
  74. X                    Lesson?.cmd files are present in the directory in which 
  75. X                    you issue this command)
  76. Xxabacus             will run the abacus in operational mode 
  77. Xmake ps             will create Abacus.ps from: abacus.psaa & abacus.psab; the
  78. X                    original PS file was split into 2 files of managable size.
  79. X
  80. XFor a site-installation it is recommended  that the Lesson?.cmd files be copied
  81. Xto /usr/lib/X11/xabacus (or some other appropriate place; on the condition that
  82. Xthe reference to /usr/lib/X11/xabacus in the manual-page be modified to reflect
  83. Xthis new path).
  84. X
  85. X--
  86. XCopyright 1991, Luis Fernandes (uunet!mnetor!lsuc!ryelect!lfernand)
  87. X
  88. XPermission to use, copy, hack, and distribute this software and its
  89. Xdocumentation for any purpose and without fee is hereby granted, provided that
  90. Xthe above copyright notice appear in all copies and that both that copyright
  91. Xnotice and this permission notice appear in supporting documentation.
  92. X
  93. XThis application is presented as is without any implied or written warranty.
  94. END_OF_FILE
  95. if test 2983 -ne `wc -c <'README'`; then
  96.     echo shar: \"'README'\" unpacked with wrong size!
  97. fi
  98. # end of 'README'
  99. fi
  100. if test -f 'aba.c' -a "${1}" != "-c" ; then 
  101.   echo shar: Will not clobber existing file \"'aba.c'\"
  102. else
  103. echo shar: Extracting \"'aba.c'\" \(4893 characters\)
  104. sed "s/^X//" >'aba.c' <<'END_OF_FILE'
  105. X#include "main.h"
  106. X#include <stdio.h>
  107. X
  108. X#define DrawArc(x,y,w,h)    XFillArc(display, base, gc[BEADS],x,y,w,h,0,360*64)
  109. X
  110. X/*----------------------------------------------------------------------
  111. X * initAbacus, initializes the bits in the column array to represent
  112. X *    the resting positions of the beads: 2 bead on top deck pos 1 & 2,
  113. X *    pos 2 empty; 5 beads lower deck pos 4-8, pos 3 empty
  114. X *
  115. X *    =============    Row Position (index 'r' )
  116. X *        O            0
  117. X *        O            1            Upper Deck
  118. X *        |            2
  119. X *    =============
  120. X *        |            3
  121. X *        O            4
  122. X *        O            5            Lower Deck
  123. X *        O            6
  124. X *        O            7
  125. X *        O            8
  126. X *    =============
  127. X *        passed, returns: nothing
  128. X */
  129. XinitAbacus()
  130. X{
  131. Xint i;
  132. X#ifdef DEBUG
  133. X    (void)fprintf(stderr," DEBUG initAbacus():\n");
  134. X#endif
  135. X    /* 502d=111110011 (2 bead on top deck pos 1 & 2; 5 beads lower deck
  136. X     * pos 4-8, pos 2 & 3 are empty initially) */
  137. X    for(i=0; i<MAXCOLS; i++) column[i]=499;
  138. X
  139. X}/* init abacus */
  140. X
  141. X/*----------------------------------------------------------------------
  142. X * drawAbacus, calls the necessary routines to draw the abacus;
  143. X *    for handling exposures.
  144. X *
  145. X *      passed, returns: nothing
  146. X */
  147. X
  148. XdrawAbacus()
  149. X{
  150. Xunsigned int i;
  151. X#ifdef DEBUG
  152. X    (void)fprintf(stderr," DEBUG drawAbacus():\n");
  153. X#endif
  154. X    /* since the beads are XOR'd it causes problems if the window isn't
  155. X     * cleared*/
  156. X    XClearWindow( display, base);
  157. X
  158. X    drawRails();
  159. X    drawFrame();
  160. X    drawMidFrame();
  161. X
  162. X    for(i=0; i<ncols; i++) drawColumn(i);
  163. X
  164. X}/* draw*/
  165. X
  166. XanimateBead(r,c)
  167. Xunsigned int r,c;
  168. X{
  169. Xint i;
  170. X
  171. X    if(r<3){    /* selection in upper deck*/
  172. X        /* find empty row in upperdeck; pos 0,1,2*/
  173. X        for(i=0; i<3; i++) if(!RowOccupied(i,column[c])) break;
  174. X
  175. X        if(i<r)        /* if empty row is above cur bead...*/
  176. X            moveBeadUp(r,c);
  177. X        else
  178. X            moveBeadDn(r,c);
  179. X    }
  180. X    else{        /* selection in upper deck*/
  181. X
  182. X        /* find empty row in lowerdeck; pos 3-8 */
  183. X        for(i=3; i<9; i++) if(!RowOccupied(i,column[c])) break;
  184. X
  185. X        if(i<r)     /* if empty row is above cur bead...*/
  186. X            moveBeadUp(r,c);
  187. X        else
  188. X            moveBeadDn(r,c);
  189. X
  190. X    }
  191. X}/* animate bead*/
  192. X
  193. X
  194. XmoveBeadUp(r,c)
  195. Xunsigned int r,c;
  196. X{
  197. X
  198. X    /* keep looking for an empty position directly above*/
  199. X    if(RowOccupied(r-1,column[c])) moveBeadUp(r-1,c);
  200. X
  201. X    undrawBead(r,c);
  202. X    column[c]=column[c]-(1<<r); /* row 'r' is now empty */
  203. X    drawBead(r-1,c);
  204. X    column[c]=column[c]+((unsigned)1<<((r-1))); /* row 'r-1' now is occupied*/
  205. X
  206. X    return;
  207. X}/* move bead up*/
  208. X
  209. XmoveBeadDn(r,c)
  210. Xunsigned int r,c;
  211. X{
  212. X
  213. X    /* keep looking for an empty position directly below*/
  214. X    if(RowOccupied(r+1,column[c])) moveBeadDn(r+1,c);
  215. X
  216. X    undrawBead(r,c);
  217. X    column[c]=column[c]-(1<<r); /* row 'r' is now empty */
  218. X    drawBead(r+1,c);
  219. X    column[c]=column[c]+((unsigned)1<<((r+1))); /* row 'r+1' now is occupied*/
  220. X
  221. X}/* move bead down*/
  222. X
  223. X/*----------------------------------------------------------------------
  224. X * drawColumn, calls the routines necessary to re-draw 1 complete column
  225. X *
  226. X *        passed: an index (0 - ncols) representing colimn to be drawn
  227. X *        returns: nothing
  228. X */
  229. XdrawColumn(col)
  230. Xunsigned int col;
  231. X{
  232. Xunsigned int beadnum;
  233. X
  234. X    for(beadnum=0; beadnum<9; beadnum++) 
  235. X        if(RowOccupied(beadnum,column[col])) drawBead(beadnum, col);
  236. X
  237. X}/* draw column*/
  238. X
  239. X
  240. X/*----------------------------------------------------------------------
  241. X * drawBead, draws 1 bead
  242. X *
  243. X *        passed: an index representing the column number the bead is in
  244. X *                an index representing the row of the bead is in
  245. X *                rows numbered 0 to 9 (7 beads + 2 blanks)
  246. X */
  247. XdrawBead(beadnum,col)
  248. Xunsigned int col,beadnum;
  249. X{
  250. X
  251. X    if(beadnum<3)    /* drawing beads on top deck*/
  252. X    DrawArc( framewidth+colgap+(col*(beadwidth+colgap)), 
  253. X        framewidth+(beadnum*(beadheight+rowgap)), beadwidth, beadheight);
  254. X    else            /* drawing beads on bot deck, account for middle frame*/
  255. X        DrawArc( framewidth+colgap+(col*(beadwidth+colgap)), 
  256. X        (2*framewidth)+(beadnum*(beadheight+rowgap)), 
  257. X        beadwidth, beadheight);
  258. X
  259. X    XFlush(display);
  260. X
  261. X}
  262. X
  263. X/*----------------------------------------------------------------------
  264. X * undrawBead, undraws a bead at given location (The beads are drawn using
  265. X *    the XOR function so this is possible.
  266. X */
  267. XundrawBead(beadnum,col)
  268. Xunsigned int col,beadnum;
  269. X{
  270. X
  271. X    drawBead(beadnum,col);
  272. X}
  273. X
  274. X/*----------------------------------------------------------------------
  275. X * drawFrame, drawMidFrame, drawRails, draw the rest of the abacus
  276. X *    it is advisable to call drawRails before the ~Frame routines
  277. X */
  278. XdrawMidFrame()
  279. X{
  280. X
  281. X    XDrawLine(display, base, gc[FRAME],0,midframey+(ROWGAP<<1),
  282. X            width,midframey+(ROWGAP<<1));
  283. X    XFlush(display);
  284. X
  285. X}/* draw mid frame*/
  286. X
  287. XdrawFrame()
  288. X{
  289. X
  290. X    XDrawRectangle(display, base, gc[FRAME], framewidth/2,framewidth/2, 
  291. X        width-(framewidth),height-(framewidth));
  292. X    XFlush(display);
  293. X
  294. X}/* draw frame*/
  295. X
  296. XdrawRails()
  297. X{
  298. Xint i;
  299. X
  300. X    for(i=0; i<ncols; i++)
  301. X        XDrawLine(display, base, gc[RAILS],
  302. X            framewidth+colgap+(beadwidth/2)+(i*(beadwidth+colgap)),0,
  303. X            framewidth+colgap+(beadwidth/2)+(i*(beadwidth+colgap)),height);
  304. X
  305. X    XFlush(display);
  306. X
  307. X}/* draw Rails*/
  308. X
  309. END_OF_FILE
  310. if test 4893 -ne `wc -c <'aba.c'`; then
  311.     echo shar: \"'aba.c'\" unpacked with wrong size!
  312. fi
  313. # end of 'aba.c'
  314. fi
  315. if test -f 'abacus.ps.aa' -a "${1}" != "-c" ; then 
  316.   echo shar: Will not clobber existing file \"'abacus.ps.aa'\"
  317. else
  318. echo shar: Extracting \"'abacus.ps.aa'\" \(21574 characters\)
  319. sed "s/^X//" >'abacus.ps.aa' <<'END_OF_FILE'
  320. X%!
  321. X%%BoundingBox: (atend)
  322. X%%Pages: (atend)
  323. X%%DocumentFonts: (atend)
  324. X%%EndComments
  325. X%
  326. X% FrameMaker PostScript Prolog 3.0, for use with FrameMaker 3.0
  327. X% Copyright (c) 1986,87,89,90,91 by Frame Technology Corporation.
  328. X% All rights reserved.
  329. X%
  330. X% Known Problems:
  331. X%    Due to bugs in Transcript, the 'PS-Adobe-' is omitted from line 1
  332. X/FMversion (3.0) def 
  333. X% Set up Color vs. Black-and-White
  334. X    /FMPrintInColor systemdict /colorimage known
  335. X        systemdict /currentcolortransfer known or def
  336. X% Uncomment this line to force b&w on color printer
  337. X%   /FMPrintInColor false def
  338. X/FrameDict 195 dict def 
  339. Xsystemdict /errordict known not {/errordict 10 dict def
  340. X        errordict /rangecheck {stop} put} if
  341. X% The readline in 23.0 doesn't recognize cr's as nl's on AppleTalk
  342. XFrameDict /tmprangecheck errordict /rangecheck get put 
  343. Xerrordict /rangecheck {FrameDict /bug true put} put 
  344. XFrameDict /bug false put 
  345. Xmark 
  346. X% Some PS machines read past the CR, so keep the following 3 lines together!
  347. Xcurrentfile 5 string readline
  348. X00
  349. X0000000000
  350. Xcleartomark 
  351. Xerrordict /rangecheck FrameDict /tmprangecheck get put 
  352. XFrameDict /bug get { 
  353. X    /readline {
  354. X        /gstring exch def
  355. X        /gfile exch def
  356. X        /gindex 0 def
  357. X        {
  358. X            gfile read pop 
  359. X            dup 10 eq {exit} if 
  360. X            dup 13 eq {exit} if 
  361. X            gstring exch gindex exch put 
  362. X            /gindex gindex 1 add def 
  363. X        } loop
  364. X        pop 
  365. X        gstring 0 gindex getinterval true 
  366. X        } def
  367. X    } if
  368. X/FMVERSION {
  369. X    FMversion ne {
  370. X        /Times-Roman findfont 18 scalefont setfont
  371. X        100 100 moveto
  372. X        (FrameMaker version does not match postscript_prolog!)
  373. X        dup =
  374. X        show showpage
  375. X        } if
  376. X    } def 
  377. X/FMLOCAL {
  378. X    FrameDict begin
  379. X    0 def 
  380. X    end 
  381. X    } def 
  382. X    /gstring FMLOCAL
  383. X    /gfile FMLOCAL
  384. X    /gindex FMLOCAL
  385. X    /orgxfer FMLOCAL
  386. X    /orgproc FMLOCAL
  387. X    /organgle FMLOCAL
  388. X    /orgfreq FMLOCAL
  389. X    /yscale FMLOCAL
  390. X    /xscale FMLOCAL
  391. X    /manualfeed FMLOCAL
  392. X    /paperheight FMLOCAL
  393. X    /paperwidth FMLOCAL
  394. X/FMDOCUMENT { 
  395. X    array /FMfonts exch def 
  396. X    /#copies exch def
  397. X    FrameDict begin
  398. X    0 ne dup {setmanualfeed} if
  399. X    /manualfeed exch def
  400. X    /paperheight exch def
  401. X    /paperwidth exch def
  402. X    /yscale exch def
  403. X    /xscale exch def
  404. X    currenttransfer cvlit /orgxfer exch def
  405. X    currentscreen cvlit /orgproc exch def
  406. X    /organgle exch def /orgfreq exch def
  407. X    setpapername 
  408. X    manualfeed {true} {papersize} ifelse 
  409. X    {manualpapersize} {false} ifelse 
  410. X    {desperatepapersize} if
  411. X    end 
  412. X    } def 
  413. X    /pagesave FMLOCAL
  414. X    /orgmatrix FMLOCAL
  415. X    /landscape FMLOCAL
  416. X/FMBEGINPAGE { 
  417. X    FrameDict begin 
  418. X    /pagesave save def
  419. X    3.86 setmiterlimit
  420. X    /landscape exch 0 ne def
  421. X    landscape { 
  422. X        90 rotate 0 exch neg translate pop 
  423. X        }
  424. X        {pop pop}
  425. X        ifelse
  426. X    xscale yscale scale
  427. X    /orgmatrix matrix def
  428. X    gsave 
  429. X    } def 
  430. X/FMENDPAGE {
  431. X    grestore 
  432. X    pagesave restore
  433. X    end 
  434. X    showpage
  435. X    } def 
  436. X/FMFONTDEFINE { 
  437. X    FrameDict begin
  438. X    findfont 
  439. X    ReEncode 
  440. X    1 index exch 
  441. X    definefont 
  442. X    FMfonts 3 1 roll 
  443. X    put
  444. X    end 
  445. X    } def 
  446. X/FMFILLS {
  447. X    FrameDict begin
  448. X    array /fillvals exch def
  449. X    end 
  450. X    } def 
  451. X/FMFILL {
  452. X    FrameDict begin
  453. X     fillvals 3 1 roll put
  454. X    end 
  455. X    } def 
  456. X/FMNORMALIZEGRAPHICS { 
  457. X    newpath
  458. X    0.0 0.0 moveto
  459. X    1 setlinewidth
  460. X    0 setlinecap
  461. X    0 0 0 sethsbcolor
  462. X    0 setgray 
  463. X    } bind def
  464. X    /fx FMLOCAL
  465. X    /fy FMLOCAL
  466. X    /fh FMLOCAL
  467. X    /fw FMLOCAL
  468. X    /llx FMLOCAL
  469. X    /lly FMLOCAL
  470. X    /urx FMLOCAL
  471. X    /ury FMLOCAL
  472. X/FMBEGINEPSF { 
  473. X    end 
  474. X    /FMEPSF save def 
  475. X    /showpage {} def 
  476. X    FMNORMALIZEGRAPHICS 
  477. X    [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall 
  478. X    fx fy translate 
  479. X    rotate
  480. X    fw urx llx sub div fh ury lly sub div scale 
  481. X    llx neg lly neg translate 
  482. X    } bind def
  483. X/FMENDEPSF {
  484. X    FMEPSF restore
  485. X    FrameDict begin 
  486. X    } bind def
  487. XFrameDict begin 
  488. X/setmanualfeed {
  489. X%%BeginFeature *ManualFeed True
  490. X     statusdict /manualfeed true put
  491. X%%EndFeature
  492. X    } def
  493. X/max {2 copy lt {exch} if pop} bind def
  494. X/min {2 copy gt {exch} if pop} bind def
  495. X/inch {72 mul} def
  496. X/pagedimen { 
  497. X    paperheight sub abs 16 lt exch 
  498. X    paperwidth sub abs 16 lt and
  499. X    {/papername exch def} {pop} ifelse
  500. X    } def
  501. X    /papersizedict FMLOCAL
  502. X/setpapername { 
  503. X    /papersizedict 14 dict def 
  504. X    papersizedict begin
  505. X    /papername /unknown def 
  506. X        /Letter 8.5 inch 11.0 inch pagedimen
  507. X        /LetterSmall 7.68 inch 10.16 inch pagedimen
  508. X        /Tabloid 11.0 inch 17.0 inch pagedimen
  509. X        /Ledger 17.0 inch 11.0 inch pagedimen
  510. X        /Legal 8.5 inch 14.0 inch pagedimen
  511. X        /Statement 5.5 inch 8.5 inch pagedimen
  512. X        /Executive 7.5 inch 10.0 inch pagedimen
  513. X        /A3 11.69 inch 16.5 inch pagedimen
  514. X        /A4 8.26 inch 11.69 inch pagedimen
  515. X        /A4Small 7.47 inch 10.85 inch pagedimen
  516. X        /B4 10.125 inch 14.33 inch pagedimen
  517. X        /B5 7.16 inch 10.125 inch pagedimen
  518. X    end
  519. X    } def
  520. X/papersize {
  521. X    papersizedict begin
  522. X        /Letter {lettertray letter} def
  523. X        /LetterSmall {lettertray lettersmall} def
  524. X        /Tabloid {11x17tray 11x17} def
  525. X        /Ledger {ledgertray ledger} def
  526. X        /Legal {legaltray legal} def
  527. X        /Statement {statementtray statement} def
  528. X        /Executive {executivetray executive} def
  529. X        /A3 {a3tray a3} def
  530. X        /A4 {a4tray a4} def
  531. X        /A4Small {a4tray a4small} def
  532. X        /B4 {b4tray b4} def
  533. X        /B5 {b5tray b5} def
  534. X        /unknown {unknown} def
  535. X    papersizedict dup papername known {papername} {/unknown} ifelse get
  536. X    end
  537. X    /FMdicttop countdictstack 1 add def 
  538. X    statusdict begin stopped end 
  539. X    countdictstack -1 FMdicttop {pop end} for 
  540. X    } def
  541. X/manualpapersize {
  542. X    papersizedict begin
  543. X        /Letter {letter} def
  544. X        /LetterSmall {lettersmall} def
  545. X        /Tabloid {11x17} def
  546. X        /Ledger {ledger} def
  547. X        /Legal {legal} def
  548. X        /Statement {statement} def
  549. X        /Executive {executive} def
  550. X        /A3 {a3} def
  551. X        /A4 {a4} def
  552. X        /A4Small {a4small} def
  553. X        /B4 {b4} def
  554. X        /B5 {b5} def
  555. X        /unknown {unknown} def
  556. X    papersizedict dup papername known {papername} {/unknown} ifelse get
  557. X    end
  558. X    stopped 
  559. X    } def
  560. X/desperatepapersize {
  561. X    statusdict /setpageparams known
  562. X        {
  563. X        paperwidth paperheight 0 1 
  564. X        statusdict begin
  565. X        {setpageparams} stopped pop 
  566. X        end
  567. X        } if
  568. X    } def
  569. X/savematrix {
  570. X    orgmatrix currentmatrix pop
  571. X    } bind def
  572. X/restorematrix {
  573. X    orgmatrix setmatrix
  574. X    } bind def
  575. X/dmatrix matrix def
  576. X/dpi    72 0 dmatrix defaultmatrix dtransform
  577. X    dup mul exch   dup mul add   sqrt def
  578. X/freq dpi 18.75 div 8 div round dup 0 eq {pop 1} if 8 mul dpi exch div def
  579. X/sangle 1 0 dmatrix defaultmatrix dtransform exch atan def
  580. X/DiacriticEncoding [
  581. X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  582. X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  583. X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  584. X/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  585. X/.notdef /.notdef /.notdef /.notdef /space /exclam /quotedbl
  586. X/numbersign /dollar /percent /ampersand /quotesingle /parenleft
  587. X/parenright /asterisk /plus /comma /hyphen /period /slash /zero /one
  588. X/two /three /four /five /six /seven /eight /nine /colon /semicolon
  589. X/less /equal /greater /question /at /A /B /C /D /E /F /G /H /I /J /K
  590. X/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /bracketleft /backslash
  591. X/bracketright /asciicircum /underscore /grave /a /b /c /d /e /f /g /h
  592. X/i /j /k /l /m /n /o /p /q /r /s /t /u /v /w /x /y /z /braceleft /bar
  593. X/braceright /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute
  594. X/Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis
  595. X/atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis
  596. X/iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve
  597. X/ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex
  598. X/udieresis /dagger /.notdef /cent /sterling /section /bullet
  599. X/paragraph /germandbls /registered /copyright /trademark /acute
  600. X/dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef
  601. X/yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  602. X/ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown
  603. X/exclamdown /logicalnot /.notdef /florin /.notdef /.notdef
  604. X/guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde
  605. X/Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright
  606. X/quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis
  607. X/fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl
  608. X/periodcentered /quotesinglbase /quotedblbase /perthousand
  609. X/Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute
  610. X/Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve
  611. X/Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron
  612. X/breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron
  613. X] def
  614. X/ReEncode { 
  615. X    dup 
  616. X    length 
  617. X    dict begin 
  618. X    {
  619. X    1 index /FID ne 
  620. X        {def} 
  621. X        {pop pop} ifelse 
  622. X    } forall 
  623. X    0 eq {/Encoding DiacriticEncoding def} if 
  624. X    currentdict 
  625. X    end 
  626. X    } bind def
  627. X/graymode true def
  628. X    /bwidth FMLOCAL
  629. X    /bpside FMLOCAL
  630. X    /bstring FMLOCAL
  631. X    /onbits FMLOCAL
  632. X    /offbits FMLOCAL
  633. X    /xindex FMLOCAL
  634. X    /yindex FMLOCAL
  635. X    /x FMLOCAL
  636. X    /y FMLOCAL
  637. X/setpattern {
  638. X     /bwidth  exch def
  639. X     /bpside  exch def
  640. X     /bstring exch def
  641. X     /onbits 0 def  /offbits 0 def
  642. X     freq sangle landscape {90 add} if 
  643. X        {/y exch def
  644. X         /x exch def
  645. X         /xindex x 1 add 2 div bpside mul cvi def
  646. X         /yindex y 1 add 2 div bpside mul cvi def
  647. X         bstring yindex bwidth mul xindex 8 idiv add get
  648. X         1 7 xindex 8 mod sub bitshift and 0 ne
  649. X         {/onbits  onbits  1 add def 1}
  650. X         {/offbits offbits 1 add def 0}
  651. X         ifelse
  652. X        }
  653. X        setscreen
  654. X     {} settransfer
  655. X     offbits offbits onbits add div FMsetgray
  656. X    /graymode false def
  657. X    } bind def
  658. X/grayness {
  659. X    FMsetgray
  660. X    graymode not {
  661. X        /graymode true def
  662. X        orgxfer cvx settransfer
  663. X        orgfreq organgle orgproc cvx setscreen
  664. X        } if
  665. X    } bind def
  666. X    /HUE FMLOCAL
  667. X    /SAT FMLOCAL
  668. X    /BRIGHT FMLOCAL
  669. X    /Colors FMLOCAL
  670. XFMPrintInColor 
  671. X    
  672. X    {
  673. X    /HUE 0 def
  674. X    /SAT 0 def
  675. X    /BRIGHT 0 def
  676. X    % array of arrays Hue and Sat values for the separations [HUE BRIGHT]
  677. X    /Colors   
  678. X    [[0    0  ]    % black
  679. X     [0    0  ]    % white
  680. X     [0.00 1.0]    % red
  681. X     [0.37 1.0]    % green
  682. X     [0.60 1.0]    % blue
  683. X     [0.50 1.0]    % cyan
  684. X     [0.83 1.0]    % magenta
  685. X     [0.16 1.0]    % comment / yellow
  686. X     ] def
  687. X      
  688. X    /BEGINBITMAPCOLOR { 
  689. X        BITMAPCOLOR} def
  690. X    /BEGINBITMAPCOLORc { 
  691. X        BITMAPCOLORc} def
  692. X    /BEGINBITMAPTRUECOLOR { 
  693. X        BITMAPTRUECOLOR } def
  694. X    /BEGINBITMAPCOLORc { 
  695. X        BITMAPTRUECOLORc } def
  696. X    /K { 
  697. X        Colors exch get dup
  698. X        0 get /HUE exch store 
  699. X        1 get /BRIGHT exch store
  700. X          HUE 0 eq BRIGHT 0 eq and
  701. X            {1.0 SAT sub setgray}
  702. X            {HUE SAT BRIGHT sethsbcolor} 
  703. X          ifelse
  704. X        } def
  705. X    /FMsetgray { 
  706. X        /SAT exch 1.0 exch sub store 
  707. X          HUE 0 eq BRIGHT 0 eq and
  708. X            {1.0 SAT sub setgray}
  709. X            {HUE SAT BRIGHT sethsbcolor} 
  710. X          ifelse
  711. X        } bind def
  712. X    }
  713. X    
  714. X    {
  715. X    /BEGINBITMAPCOLOR { 
  716. X        BITMAPGRAY} def
  717. X    /BEGINBITMAPCOLORc { 
  718. X        BITMAPGRAYc} def
  719. X    /BEGINBITMAPTRUECOLOR { 
  720. X        BITMAPTRUEGRAY } def
  721. X    /BEGINBITMAPTRUECOLORc { 
  722. X        BITMAPTRUEGRAYc } def
  723. X    /FMsetgray {setgray} bind def
  724. X    /K { 
  725. X        pop
  726. X        } def
  727. X    }
  728. Xifelse
  729. X/normalize {
  730. X    transform round exch round exch itransform
  731. X    } bind def
  732. X/dnormalize {
  733. X    dtransform round exch round exch idtransform
  734. X    } bind def
  735. X/lnormalize { 
  736. X    0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop
  737. X    } bind def
  738. X/H { 
  739. X    lnormalize setlinewidth
  740. X    } bind def
  741. X/Z {
  742. X    setlinecap
  743. X    } bind def
  744. X    /fillvals FMLOCAL
  745. X/X { 
  746. X    fillvals exch get
  747. X    dup type /stringtype eq
  748. X    {8 1 setpattern} 
  749. X    {grayness}
  750. X    ifelse
  751. X    } bind def
  752. X/V { 
  753. X    gsave eofill grestore
  754. X    } bind def
  755. X/N { 
  756. X    stroke
  757. X    } bind def
  758. X/M {newpath moveto} bind def
  759. X/E {lineto} bind def
  760. X/D {curveto} bind def
  761. X/O {closepath} bind def
  762. X    /n FMLOCAL
  763. X/L { 
  764. X     /n exch def
  765. X    newpath
  766. X    normalize
  767. X    moveto 
  768. X    2 1 n {pop normalize lineto} for
  769. X    } bind def
  770. X/Y { 
  771. X    L 
  772. X    closepath
  773. X    } bind def
  774. X    /x1 FMLOCAL
  775. X    /x2 FMLOCAL
  776. X    /y1 FMLOCAL
  777. X    /y2 FMLOCAL
  778. X    /rad FMLOCAL
  779. X/R { 
  780. X    /y2 exch def
  781. X    /x2 exch def
  782. X    /y1 exch def
  783. X    /x1 exch def
  784. X    x1 y1
  785. X    x2 y1
  786. X    x2 y2
  787. X    x1 y2
  788. X    4 Y 
  789. X    } bind def
  790. X/RR { 
  791. X    /rad exch def
  792. X    normalize
  793. X    /y2 exch def
  794. X    /x2 exch def
  795. X    normalize
  796. X    /y1 exch def
  797. X    /x1 exch def
  798. X    newpath
  799. X    x1 y1 rad add moveto
  800. X    x1 y2 x2 y2 rad arcto
  801. X    x2 y2 x2 y1 rad arcto
  802. X    x2 y1 x1 y1 rad arcto
  803. X    x1 y1 x1 y2 rad arcto
  804. X    closepath
  805. X    16 {pop} repeat
  806. X    } bind def
  807. X/C { 
  808. X    grestore
  809. X    gsave
  810. X    R 
  811. X    clip
  812. X    } bind def
  813. X    /FMpointsize FMLOCAL
  814. X/F { 
  815. X    FMfonts exch get
  816. X    FMpointsize scalefont
  817. X    setfont
  818. X    } bind def
  819. X/Q { 
  820. X    /FMpointsize exch def
  821. X    F 
  822. X    } bind def
  823. X/T { 
  824. X    moveto show
  825. X    } bind def
  826. X/RF { 
  827. X    rotate
  828. X    0 ne {-1 1 scale} if
  829. X    } bind def
  830. X/TF { 
  831. X    gsave
  832. X    moveto 
  833. X    RF
  834. X    show
  835. X    grestore
  836. X    } bind def
  837. X/P { 
  838. X    moveto
  839. X    0 32 3 2 roll widthshow
  840. X    } bind def
  841. X/PF { 
  842. X    gsave
  843. X    moveto 
  844. X    RF
  845. X    0 32 3 2 roll widthshow
  846. X    grestore
  847. X    } bind def
  848. X/S { 
  849. X    moveto
  850. X    0 exch ashow
  851. X    } bind def
  852. X/SF { 
  853. X    gsave
  854. X    moveto
  855. X    RF
  856. X    0 exch ashow
  857. X    grestore
  858. X    } bind def
  859. X/B { 
  860. X    moveto
  861. X    0 32 4 2 roll 0 exch awidthshow
  862. X    } bind def
  863. X/BF { 
  864. X    gsave
  865. X    moveto
  866. X    RF
  867. X    0 32 4 2 roll 0 exch awidthshow
  868. X    grestore
  869. X    } bind def
  870. X/G { 
  871. X    gsave
  872. X    newpath
  873. X    normalize translate 0.0 0.0 moveto 
  874. X    dnormalize scale 
  875. X    0.0 0.0 1.0 5 3 roll arc 
  876. X    closepath fill
  877. X    grestore
  878. X    } bind def
  879. X/A { 
  880. X    gsave
  881. X    savematrix
  882. X    newpath
  883. X    2 index 2 div add exch 3 index 2 div sub exch 
  884. X    normalize 2 index 2 div sub exch 3 index 2 div add exch 
  885. X    translate 
  886. X    scale 
  887. X    0.0 0.0 1.0 5 3 roll arc 
  888. X    restorematrix
  889. X    stroke
  890. X    grestore
  891. X    } bind def
  892. X    /x FMLOCAL
  893. X    /y FMLOCAL
  894. X    /w FMLOCAL
  895. X    /h FMLOCAL
  896. X    /xx FMLOCAL
  897. X    /yy FMLOCAL
  898. X    /ww FMLOCAL
  899. X    /hh FMLOCAL
  900. X    /FMsaveobject FMLOCAL
  901. X    /FMoptop FMLOCAL
  902. X    /FMdicttop FMLOCAL
  903. X/BEGINPRINTCODE { 
  904. X    /FMdicttop countdictstack 1 add def 
  905. X    /FMoptop count 4 sub def 
  906. X    /FMsaveobject save def
  907. X    userdict begin 
  908. X    /showpage {} def 
  909. X    FMNORMALIZEGRAPHICS 
  910. X    3 index neg 3 index neg translate
  911. X    } bind def
  912. X/ENDPRINTCODE {
  913. X    count -1 FMoptop {pop pop} for 
  914. X    countdictstack -1 FMdicttop {pop end} for 
  915. X    FMsaveobject restore 
  916. X    } bind def
  917. X/gn { 
  918. X    0 
  919. X    {    46 mul 
  920. X        cf read pop 
  921. X        32 sub 
  922. X        dup 46 lt {exit} if 
  923. X        46 sub add 
  924. X        } loop
  925. X    add 
  926. X    } bind def
  927. X    /str FMLOCAL
  928. X/cfs { 
  929. X    /str sl string def 
  930. X    0 1 sl 1 sub {str exch val put} for 
  931. X    str def 
  932. X    } bind def
  933. X/ic [ 
  934. X    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223
  935. X    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0223
  936. X    0
  937. X    {0 hx} {1 hx} {2 hx} {3 hx} {4 hx} {5 hx} {6 hx} {7 hx} {8 hx} {9 hx}
  938. X    {10 hx} {11 hx} {12 hx} {13 hx} {14 hx} {15 hx} {16 hx} {17 hx} {18 hx}
  939. X    {19 hx} {gn hx} {0} {1} {2} {3} {4} {5} {6} {7} {8} {9} {10} {11} {12}
  940. X    {13} {14} {15} {16} {17} {18} {19} {gn} {0 wh} {1 wh} {2 wh} {3 wh}
  941. X    {4 wh} {5 wh} {6 wh} {7 wh} {8 wh} {9 wh} {10 wh} {11 wh} {12 wh}
  942. X    {13 wh} {14 wh} {gn wh} {0 bl} {1 bl} {2 bl} {3 bl} {4 bl} {5 bl} {6 bl}
  943. X    {7 bl} {8 bl} {9 bl} {10 bl} {11 bl} {12 bl} {13 bl} {14 bl} {gn bl}
  944. X    {0 fl} {1 fl} {2 fl} {3 fl} {4 fl} {5 fl} {6 fl} {7 fl} {8 fl} {9 fl}
  945. X    {10 fl} {11 fl} {12 fl} {13 fl} {14 fl} {gn fl}
  946. X    ] def
  947. X    /sl FMLOCAL
  948. X    /val FMLOCAL
  949. X    /ws FMLOCAL
  950. X    /im FMLOCAL
  951. X    /bs FMLOCAL
  952. X    /cs FMLOCAL
  953. X    /len FMLOCAL
  954. X    /pos FMLOCAL
  955. X/ms { 
  956. X    /sl exch def 
  957. X    /val 255 def 
  958. X    /ws cfs 
  959. X    /im cfs 
  960. X    /val 0 def 
  961. X    /bs cfs 
  962. X    /cs cfs 
  963. X    } bind def
  964. X400 ms 
  965. X/ip { 
  966. X    is 
  967. X    0 
  968. X    cf cs readline pop 
  969. X    {    ic exch get exec 
  970. X        add 
  971. X        } forall 
  972. X    pop 
  973. X    
  974. X    } bind def
  975. X/wh { 
  976. X    /len exch def 
  977. X    /pos exch def 
  978. X    ws 0 len getinterval im pos len getinterval copy pop
  979. X    pos len 
  980. X    } bind def
  981. X/bl { 
  982. X    /len exch def 
  983. X    /pos exch def 
  984. X    bs 0 len getinterval im pos len getinterval copy pop
  985. X    pos len 
  986. X    } bind def
  987. X/s1 1 string def
  988. X/fl { 
  989. X    /len exch def 
  990. X    /pos exch def 
  991. X    /val cf s1 readhexstring pop 0 get def
  992. X    pos 1 pos len add 1 sub {im exch val put} for
  993. X    pos len 
  994. X    } bind def
  995. X/hx { 
  996. X    3 copy getinterval 
  997. X    cf exch readhexstring pop pop 
  998. X    } bind def
  999. X    /h FMLOCAL
  1000. X    /w FMLOCAL
  1001. X    /d FMLOCAL
  1002. X    /lb FMLOCAL
  1003. X    /bitmapsave FMLOCAL
  1004. X    /is FMLOCAL
  1005. X    /cf FMLOCAL
  1006. X/wbytes { 
  1007. X    dup 
  1008. X    8 eq {pop} {1 eq {7 add 8 idiv} {3 add 4 idiv} ifelse} ifelse
  1009. X    } bind def
  1010. X/BEGINBITMAPBWc { 
  1011. X    1 {} COMMONBITMAPc
  1012. X    } bind def
  1013. X/BEGINBITMAPGRAYc { 
  1014. X    8 {} COMMONBITMAPc
  1015. X    } bind def
  1016. X/BEGINBITMAP2BITc { 
  1017. X    2 {} COMMONBITMAPc
  1018. X    } bind def
  1019. X/COMMONBITMAPc { 
  1020. X    /r exch def
  1021. X    /d exch def
  1022. X    gsave
  1023. X    translate rotate scale /h exch def /w exch def
  1024. X    /lb w d wbytes def 
  1025. X    sl lb lt {lb ms} if 
  1026. X    /bitmapsave save def 
  1027. X    r                    
  1028. X    /is im 0 lb getinterval def 
  1029. X    ws 0 lb getinterval is copy pop 
  1030. X    /cf currentfile def 
  1031. X    w h d [w 0 0 h neg 0 h] 
  1032. X    {ip} image 
  1033. X    bitmapsave restore 
  1034. X    grestore
  1035. X    } bind def
  1036. X/BEGINBITMAPBW { 
  1037. X    1 {} COMMONBITMAP
  1038. X    } bind def
  1039. X/BEGINBITMAPGRAY { 
  1040. X    8 {} COMMONBITMAP
  1041. X    } bind def
  1042. X/BEGINBITMAP2BIT { 
  1043. X    2 {} COMMONBITMAP
  1044. X    } bind def
  1045. X/COMMONBITMAP { 
  1046. X    /r exch def
  1047. X    /d exch def
  1048. X    gsave
  1049. X    translate rotate scale /h exch def /w exch def
  1050. X    /bitmapsave save def 
  1051. X    r                    
  1052. X    /is w d wbytes string def
  1053. X    /cf currentfile def 
  1054. X    w h d [w 0 0 h neg 0 h] 
  1055. X    {cf is readhexstring pop} image
  1056. X    bitmapsave restore 
  1057. X    grestore
  1058. X    } bind def
  1059. X    /proc1 FMLOCAL
  1060. X    /proc2 FMLOCAL
  1061. X    /newproc FMLOCAL
  1062. X/Fmcc {
  1063. X    /proc2 exch cvlit def
  1064. X    /proc1 exch cvlit def
  1065. X    /newproc proc1 length proc2 length add array def
  1066. X    newproc 0 proc1 putinterval
  1067. X    newproc proc1 length proc2 putinterval
  1068. X    newproc cvx
  1069. X} bind def
  1070. X/ngrayt 256 array def
  1071. X/nredt 256 array def
  1072. X/nbluet 256 array def
  1073. X/ngreent 256 array def
  1074. X    /gryt FMLOCAL
  1075. X    /blut FMLOCAL
  1076. X    /grnt FMLOCAL
  1077. X    /redt FMLOCAL
  1078. X    /indx FMLOCAL
  1079. X    /cynu FMLOCAL
  1080. X    /magu FMLOCAL
  1081. X    /yelu FMLOCAL
  1082. X    /k FMLOCAL
  1083. X    /u FMLOCAL
  1084. X/colorsetup {
  1085. X    currentcolortransfer
  1086. X    /gryt exch def
  1087. X    /blut exch def
  1088. X    /grnt exch def
  1089. X    /redt exch def
  1090. X    0 1 255 {
  1091. X        /indx exch def
  1092. X        /cynu 1 red indx get 255 div sub def
  1093. X        /magu 1 green indx get 255 div sub def
  1094. X        /yelu 1 blue indx get 255 div sub def
  1095. X        /k cynu magu min yelu min def
  1096. X        /u k currentundercolorremoval exec def
  1097. X        nredt indx 1 0 cynu u sub max sub redt exec put
  1098. X        ngreent indx 1 0 magu u sub max sub grnt exec put
  1099. X        nbluet indx 1 0 yelu u sub max sub blut exec put
  1100. X        ngrayt indx 1 k currentblackgeneration exec sub gryt exec put
  1101. X    } for
  1102. X    {255 mul cvi nredt exch get}
  1103. X    {255 mul cvi ngreent exch get}
  1104. X    {255 mul cvi nbluet exch get}
  1105. X    {255 mul cvi ngrayt exch get}
  1106. X    setcolortransfer
  1107. X    {pop 0} setundercolorremoval
  1108. X    {} setblackgeneration
  1109. X    } bind def
  1110. X    /tran FMLOCAL
  1111. X/fakecolorsetup {
  1112. X    /tran 256 string def
  1113. X    0 1 255 {/indx exch def 
  1114. X        tran indx
  1115. X        red indx get 77 mul
  1116. X        green indx get 151 mul
  1117. X        blue indx get 28 mul
  1118. X        add add 256 idiv put} for
  1119. X    currenttransfer
  1120. X    {255 mul cvi tran exch get 255.0 div}
  1121. X    exch Fmcc settransfer
  1122. X} bind def
  1123. X/BITMAPCOLOR { 
  1124. X    /d 8 def
  1125. X    gsave
  1126. X    translate rotate scale /h exch def /w exch def
  1127. X    /bitmapsave save def 
  1128. X    colorsetup
  1129. X    /is w d wbytes string def
  1130. X    /cf currentfile def 
  1131. X    w h d [w 0 0 h neg 0 h] 
  1132. X    {cf is readhexstring pop} {is} {is} true 3 colorimage 
  1133. X    bitmapsave restore 
  1134. X    grestore
  1135. X    } bind def
  1136. X/BITMAPCOLORc { 
  1137. X    /d 8 def
  1138. X    gsave
  1139. X    translate rotate scale /h exch def /w exch def
  1140. X    /lb w d wbytes def 
  1141. X    sl lb lt {lb ms} if 
  1142. X    /bitmapsave save def 
  1143. X    colorsetup
  1144. X    /is im 0 lb getinterval def 
  1145. X    ws 0 lb getinterval is copy pop 
  1146. X    /cf currentfile def 
  1147. X    w h d [w 0 0 h neg 0 h] 
  1148. X    {ip} {is} {is} true 3 colorimage
  1149. X    bitmapsave restore 
  1150. X    grestore
  1151. X    } bind def
  1152. X/BITMAPTRUECOLORc { 
  1153. X        gsave
  1154. X        translate rotate scale /h exch def /w exch def
  1155. X        /bitmapsave save def 
  1156. X        
  1157. X        /is w string def
  1158. X        
  1159. X        ws 0 w getinterval is copy pop 
  1160. X        /cf currentfile def 
  1161. X        w h 8 [w 0 0 h neg 0 h] 
  1162. X        {ip} {gip} {bip} true 3 colorimage
  1163. X        bitmapsave restore 
  1164. X        grestore
  1165. X        } bind def
  1166. X/BITMAPTRUECOLOR { 
  1167. X        gsave
  1168. X        translate rotate scale /h exch def /w exch def
  1169. X        /bitmapsave save def 
  1170. X        /is w string def
  1171. X        /gis w string def
  1172. X        /bis w string def
  1173. X        /cf currentfile def 
  1174. X        w h 8 [w 0 0 h neg 0 h] 
  1175. X        { cf is readhexstring pop } 
  1176. X        { cf gis readhexstring pop } 
  1177. X        { cf bis readhexstring pop } 
  1178. X        true 3 colorimage 
  1179. X        bitmapsave restore 
  1180. X        grestore
  1181. X        } bind def
  1182. X/BITMAPTRUEGRAYc { 
  1183. X        gsave
  1184. X        translate rotate scale /h exch def /w exch def
  1185. X        /bitmapsave save def 
  1186. X        
  1187. X        /is w string def
  1188. X        
  1189. X        ws 0 w getinterval is copy pop 
  1190. X        /cf currentfile def 
  1191. X        w h 8 [w 0 0 h neg 0 h] 
  1192. X        {ip gip bip w gray} image
  1193. X        bitmapsave restore 
  1194. X        grestore
  1195. X        } bind def
  1196. X/ww FMLOCAL
  1197. X/r FMLOCAL
  1198. X/g FMLOCAL
  1199. X/b FMLOCAL
  1200. X/i FMLOCAL
  1201. X/gray { 
  1202. X        /ww exch def
  1203. X        /b exch def
  1204. X        /g exch def
  1205. X        /r exch def
  1206. X        0 1 ww 1 sub { /i exch def r i get .299 mul g i get .587 mul
  1207. X            b i get .114 mul add add r i 3 -1 roll floor cvi put } for
  1208. X        r
  1209. X        } bind def
  1210. X/BITMAPTRUEGRAY { 
  1211. X        gsave
  1212. X        translate rotate scale /h exch def /w exch def
  1213. X        /bitmapsave save def 
  1214. X        /is w string def
  1215. X        /gis w string def
  1216. X        /bis w string def
  1217. X        /cf currentfile def 
  1218. X        w h 8 [w 0 0 h neg 0 h] 
  1219. X        { cf is readhexstring pop 
  1220. X          cf gis readhexstring pop 
  1221. X          cf bis readhexstring pop w gray}  image
  1222. X        bitmapsave restore 
  1223. X        grestore
  1224. X        } bind def
  1225. X/BITMAPGRAY { 
  1226. X    8 {fakecolorsetup} COMMONBITMAP
  1227. X    } bind def
  1228. X/BITMAPGRAYc { 
  1229. X    8 {fakecolorsetup} COMMONBITMAPc
  1230. X    } bind def
  1231. X/ENDBITMAP {
  1232. X    } bind def
  1233. Xend 
  1234. X    /ALDsave FMLOCAL
  1235. X    /ALDmatrix matrix def ALDmatrix currentmatrix pop
  1236. X/StartALD {
  1237. X    /ALDsave save def
  1238. X     savematrix
  1239. X     ALDmatrix setmatrix
  1240. X    } bind def
  1241. X/InALD {
  1242. X     restorematrix
  1243. X    } bind def
  1244. X/DoneALD {
  1245. X     ALDsave restore
  1246. X    } bind def
  1247. X%%EndProlog
  1248. X%%BeginSetup
  1249. X(3.0) FMVERSION
  1250. X1 1 612 792 0 1 16 FMDOCUMENT
  1251. X0 0 /Helvetica FMFONTDEFINE
  1252. X1 0 /Helvetica-Bold FMFONTDEFINE
  1253. X2 0 /Times-Roman FMFONTDEFINE
  1254. X3 0 /Times-Italic FMFONTDEFINE
  1255. X4 0 /Times-Bold FMFONTDEFINE
  1256. X32 FMFILLS
  1257. X0 0 FMFILL
  1258. X1 .1 FMFILL
  1259. X2 .3 FMFILL
  1260. X3 .5 FMFILL
  1261. X4 .7 FMFILL
  1262. X5 .9 FMFILL
  1263. X6 .97 FMFILL
  1264. X7 1 FMFILL
  1265. X8 <0f1e3c78f0e1c387> FMFILL
  1266. X9 <0f87c3e1f0783c1e> FMFILL
  1267. X10 <cccccccccccccccc> FMFILL
  1268. X11 <ffff0000ffff0000> FMFILL
  1269. X12 <8142241818244281> FMFILL
  1270. X13 <03060c183060c081> FMFILL
  1271. X14 <8040201008040201> FMFILL
  1272. X16 1 FMFILL
  1273. X17 .9 FMFILL
  1274. X18 .7 FMFILL
  1275. X19 .5 FMFILL
  1276. X20 .3 FMFILL
  1277. X21 .1 FMFILL
  1278. X22 0.03 FMFILL
  1279. X23 0 FMFILL
  1280. X24 <f0e1c3870f1e3c78> FMFILL
  1281. X25 <f0783c1e0f87c3e1> FMFILL
  1282. X26 <3333333333333333> FMFILL
  1283. X27 <0000ffff0000ffff> FMFILL
  1284. X28 <7ebddbe7e7dbbd7e> FMFILL
  1285. X29 <fcf9f3e7cf9f3f7e> FMFILL
  1286. X30 <7fbfdfeff7fbfdfe> FMFILL
  1287. X%%EndSetup
  1288. X%%Page: "1" 1
  1289. X%%BeginPaperSize: Letter
  1290. X%%EndPaperSize
  1291. X612 792 0 FMBEGINPAGE
  1292. X72 746 540 756 R
  1293. X7 X
  1294. X0 K
  1295. XV
  1296. X72 32.67 540 42.67 R
  1297. XV
  1298. X161 394 437 537 R
  1299. X3 X
  1300. XV
  1301. X0.5 H
  1302. X2 Z
  1303. X0 X
  1304. XN
  1305. X0 24 Q
  1306. X(The) 233 641 T
  1307. X258.78 350.14 269.26 350.14 2 L
  1308. X1 H
  1309. XN
  1310. X264.02 349.85 264.02 334.13 2 L
  1311. XN
  1312. X258.78 334.42 269.26 334.42 2 L
  1313. XN
  1314. X258.78 342.86 269.26 342.86 2 L
  1315. XN
  1316. X284.98 358 284.98 323.95 2 L
  1317. XN
  1318. X278.28 348.98 291.67 348.98 2 L
  1319. XN
  1320. END_OF_FILE
  1321. if test 21574 -ne `wc -c <'abacus.ps.aa'`; then
  1322.     echo shar: \"'abacus.ps.aa'\" unpacked with wrong size!
  1323. fi
  1324. # end of 'abacus.ps.aa'
  1325. fi
  1326. if test -f 'abacus.ps.ac' -a "${1}" != "-c" ; then 
  1327.   echo shar: Will not clobber existing file \"'abacus.ps.ac'\"
  1328. else
  1329. echo shar: Extracting \"'abacus.ps.ac'\" \(22902 characters\)
  1330. sed "s/^X//" >'abacus.ps.ac' <<'END_OF_FILE'
  1331. X72 444.02 558 444.02 2 L
  1332. X7 X
  1333. XV
  1334. X2 Z
  1335. X0 X
  1336. XN
  1337. X72 74.02 558 74.02 2 L
  1338. X7 X
  1339. XV
  1340. X0.25 H
  1341. X0 X
  1342. XN
  1343. X72 55.01 558 66.96 R
  1344. X7 X
  1345. XV
  1346. X1 10 Q
  1347. X0 X
  1348. X(6) 527.85 60.96 T
  1349. X1 9 Q
  1350. X( of) 533.41 60.96 T
  1351. X1 10 Q
  1352. X(12) 546.89 60.96 T
  1353. X207 468 558 693 R
  1354. X7 X
  1355. XV
  1356. X207 658.99 558 669 C
  1357. X207 660 459 660 2 L
  1358. X0.25 H
  1359. X0 Z
  1360. X0 X
  1361. X0 K
  1362. XN
  1363. X0 0 612 792 C
  1364. X2 24 Q
  1365. X0 X
  1366. X0 K
  1367. X-0.48 (The Abacus) 207 677 S
  1368. X1 9 Q
  1369. X(The Art of Calculation using) 207 600.99 T
  1370. X(Beads) 207 588.99 T
  1371. X72 87.98 558 432 R
  1372. X7 X
  1373. XV
  1374. X72 410.98 558 420 C
  1375. X207 418.49 558 418.49 2 L
  1376. X0.25 H
  1377. X2 Z
  1378. X0 X
  1379. X0 K
  1380. XN
  1381. X72 418.49 198 418.49 2 L
  1382. X0 Z
  1383. XN
  1384. X0 0 612 792 C
  1385. X1 12 Q
  1386. X0 X
  1387. X0 K
  1388. X(1.0) 181.33 424 T
  1389. X(Introduction) 207 424 T
  1390. X72 200.94 558 213.98 C
  1391. X207 208 558 208 2 L
  1392. X0.25 H
  1393. X2 Z
  1394. X0 X
  1395. X0 K
  1396. XN
  1397. X72 208 198 208 2 L
  1398. X0 Z
  1399. XN
  1400. X0 0 612 792 C
  1401. X1 9 Q
  1402. X0 X
  1403. X0 K
  1404. X(FIGURE  1) 72 194.94 T
  1405. X0 F
  1406. X(The Anatomy of an Abacus) 207 194.94 T
  1407. X2 10 Q
  1408. X(The classic abacus has two decks. Each deck, separated by a beam, has several \050nor-) 207 173.28 T
  1409. X-0.14 (mally 13\051 rods on which are mounted beads. Each rod on the top deck contains 2 beads,) 207 161.28 P
  1410. X(and each rod on the bottom deck contains 5 beads. Each bead on the upper deck has a) 207 149.28 T
  1411. X(value of \336ve, while each bead on the lower deck has value of one.) 207 137.28 T
  1412. X(Beads are considered counted, when moved) 207 113.28 T
  1413. X3 F
  1414. X(towar) 384.91 113.28 T
  1415. X(ds) 407.87 113.28 T
  1416. X2 F
  1417. X( the beam separating the decks.) 416.76 113.28 T
  1418. X72 87.98 558 432 C
  1419. X78.75 227.98 551.25 410.98 C
  1420. X78.75 227.98 551.25 410.98 R
  1421. X7 X
  1422. X0 K
  1423. XV
  1424. X206 250 416 359 R
  1425. X3 X
  1426. XV
  1427. X0.5 H
  1428. X2 Z
  1429. X0 X
  1430. XN
  1431. X209.8 325.46 412.19 354.1 R
  1432. X7 X
  1433. XV
  1434. X0 X
  1435. XN
  1436. X210.57 256.57 411.43 318.6 R
  1437. X7 X
  1438. XV
  1439. X0 X
  1440. XN
  1441. X90 450 6.47 4.19 219.86 347.62 G
  1442. X90 450 6.47 4.19 219.86 347.62 A
  1443. X90 450 6.47 4.19 219.86 337.71 G
  1444. X90 450 6.47 4.19 219.86 337.71 A
  1445. X90 450 6.47 4.19 219.86 292.09 G
  1446. X90 450 6.47 4.19 219.86 292.09 A
  1447. X90 450 6.47 4.19 219.86 302.76 G
  1448. X90 450 6.47 4.19 219.86 302.76 A
  1449. X90 450 6.47 4.19 219.86 281.63 G
  1450. X90 450 6.47 4.19 219.86 281.63 A
  1451. X90 450 6.47 4.19 219.86 271.51 G
  1452. X90 450 6.47 4.19 219.86 271.51 A
  1453. X90 450 6.47 4.19 220.4 261.6 G
  1454. X90 450 6.47 4.19 220.4 261.6 A
  1455. X220.02 354.64 220.02 256.32 2 L
  1456. XV
  1457. XN
  1458. X90 450 6.47 4.19 358.01 347.51 G
  1459. X90 450 6.47 4.19 358.01 347.51 A
  1460. X90 450 6.47 4.19 358.01 337.6 G
  1461. X90 450 6.47 4.19 358.01 337.6 A
  1462. X90 450 6.47 4.19 358.01 291.98 G
  1463. X90 450 6.47 4.19 358.01 291.98 A
  1464. X90 450 6.47 4.19 358.01 302.65 G
  1465. X90 450 6.47 4.19 358.01 302.65 A
  1466. X90 450 6.47 4.19 358.01 281.52 G
  1467. X90 450 6.47 4.19 358.01 281.52 A
  1468. X90 450 6.47 4.19 358.01 271.4 G
  1469. X90 450 6.47 4.19 358.01 271.4 A
  1470. X90 450 6.47 4.19 358.55 261.49 G
  1471. X90 450 6.47 4.19 358.55 261.49 A
  1472. X358.17 354.54 358.17 256.21 2 L
  1473. XV
  1474. XN
  1475. X90 450 6.47 4.19 372.79 347.4 G
  1476. X90 450 6.47 4.19 372.79 347.4 A
  1477. X90 450 6.47 4.19 372.79 337.49 G
  1478. X90 450 6.47 4.19 372.79 337.49 A
  1479. X90 450 6.47 4.19 372.79 291.87 G
  1480. X90 450 6.47 4.19 372.79 291.87 A
  1481. X90 450 6.47 4.19 372.79 302.54 G
  1482. X90 450 6.47 4.19 372.79 302.54 A
  1483. X90 450 6.47 4.19 372.79 281.42 G
  1484. X90 450 6.47 4.19 372.79 281.42 A
  1485. X90 450 6.47 4.19 372.79 271.29 G
  1486. X90 450 6.47 4.19 372.79 271.29 A
  1487. X90 450 6.47 4.19 373.34 261.38 G
  1488. X90 450 6.47 4.19 373.34 261.38 A
  1489. X372.96 354.43 372.96 256.1 2 L
  1490. XV
  1491. XN
  1492. X90 450 6.47 4.19 387.36 347.51 G
  1493. X90 450 6.47 4.19 387.36 347.51 A
  1494. X90 450 6.47 4.19 387.36 337.6 G
  1495. X90 450 6.47 4.19 387.36 337.6 A
  1496. X90 450 6.47 4.19 387.36 291.98 G
  1497. X90 450 6.47 4.19 387.36 291.98 A
  1498. X90 450 6.47 4.19 387.36 302.65 G
  1499. X90 450 6.47 4.19 387.36 302.65 A
  1500. X90 450 6.47 4.19 387.36 281.52 G
  1501. X90 450 6.47 4.19 387.36 281.52 A
  1502. X90 450 6.47 4.19 387.36 271.4 G
  1503. X90 450 6.47 4.19 387.36 271.4 A
  1504. X90 450 6.47 4.19 387.9 261.49 G
  1505. X90 450 6.47 4.19 387.9 261.49 A
  1506. X387.52 354.54 387.52 256.21 2 L
  1507. XV
  1508. XN
  1509. X90 450 6.47 4.19 402.68 347.4 G
  1510. X90 450 6.47 4.19 402.68 347.4 A
  1511. X90 450 6.47 4.19 402.68 337.49 G
  1512. X90 450 6.47 4.19 402.68 337.49 A
  1513. X90 450 6.47 4.19 402.68 291.87 G
  1514. X90 450 6.47 4.19 402.68 291.87 A
  1515. X90 450 6.47 4.19 402.68 302.54 G
  1516. X90 450 6.47 4.19 402.68 302.54 A
  1517. X90 450 6.47 4.19 402.68 281.42 G
  1518. X90 450 6.47 4.19 402.68 281.42 A
  1519. X90 450 6.47 4.19 402.68 271.29 G
  1520. X90 450 6.47 4.19 402.68 271.29 A
  1521. X90 450 6.47 4.19 403.23 261.38 G
  1522. X90 450 6.47 4.19 403.23 261.38 A
  1523. X402.85 354.43 402.85 256.1 2 L
  1524. XV
  1525. XN
  1526. X90 450 6.47 4.19 297.25 347.4 G
  1527. X90 450 6.47 4.19 297.25 347.4 A
  1528. X90 450 6.47 4.19 297.25 337.49 G
  1529. X90 450 6.47 4.19 297.25 337.49 A
  1530. X90 450 6.47 4.19 297.25 291.87 G
  1531. X90 450 6.47 4.19 297.25 291.87 A
  1532. X90 450 6.47 4.19 297.25 302.54 G
  1533. X90 450 6.47 4.19 297.25 302.54 A
  1534. X90 450 6.47 4.19 297.25 281.42 G
  1535. X90 450 6.47 4.19 297.25 281.42 A
  1536. X90 450 6.47 4.19 297.25 271.29 G
  1537. X90 450 6.47 4.19 297.25 271.29 A
  1538. X90 450 6.47 4.19 297.79 261.38 G
  1539. X90 450 6.47 4.19 297.79 261.38 A
  1540. X297.41 354.43 297.41 256.1 2 L
  1541. XV
  1542. XN
  1543. X90 450 6.47 4.19 312.03 347.29 G
  1544. X90 450 6.47 4.19 312.03 347.29 A
  1545. X90 450 6.47 4.19 312.03 337.39 G
  1546. X90 450 6.47 4.19 312.03 337.39 A
  1547. X90 450 6.47 4.19 312.03 291.76 G
  1548. X90 450 6.47 4.19 312.03 291.76 A
  1549. X90 450 6.47 4.19 312.03 302.43 G
  1550. X90 450 6.47 4.19 312.03 302.43 A
  1551. X90 450 6.47 4.19 312.03 281.31 G
  1552. X90 450 6.47 4.19 312.03 281.31 A
  1553. X90 450 6.47 4.19 312.03 271.18 G
  1554. X90 450 6.47 4.19 312.03 271.18 A
  1555. X90 450 6.47 4.19 312.58 261.27 G
  1556. X90 450 6.47 4.19 312.58 261.27 A
  1557. X312.2 354.32 312.2 255.99 2 L
  1558. XV
  1559. XN
  1560. X90 450 6.47 4.19 326.6 347.4 G
  1561. X90 450 6.47 4.19 326.6 347.4 A
  1562. X90 450 6.47 4.19 326.6 337.49 G
  1563. X90 450 6.47 4.19 326.6 337.49 A
  1564. X90 450 6.47 4.19 326.6 291.87 G
  1565. X90 450 6.47 4.19 326.6 291.87 A
  1566. X90 450 6.47 4.19 326.6 302.54 G
  1567. X90 450 6.47 4.19 326.6 302.54 A
  1568. X90 450 6.47 4.19 326.6 281.42 G
  1569. X90 450 6.47 4.19 326.6 281.42 A
  1570. X90 450 6.47 4.19 326.6 271.29 G
  1571. X90 450 6.47 4.19 326.6 271.29 A
  1572. X90 450 6.47 4.19 327.14 261.38 G
  1573. X90 450 6.47 4.19 327.14 261.38 A
  1574. X326.76 354.43 326.76 256.1 2 L
  1575. XV
  1576. XN
  1577. X90 450 6.47 4.19 341.92 347.3 G
  1578. X90 450 6.47 4.19 341.92 347.3 A
  1579. X90 450 6.47 4.19 341.92 337.39 G
  1580. X90 450 6.47 4.19 341.92 337.39 A
  1581. X90 450 6.47 4.19 341.92 291.76 G
  1582. X90 450 6.47 4.19 341.92 291.76 A
  1583. X90 450 6.47 4.19 341.92 302.43 G
  1584. X90 450 6.47 4.19 341.92 302.43 A
  1585. X90 450 6.47 4.19 341.92 281.31 G
  1586. X90 450 6.47 4.19 341.92 281.31 A
  1587. X90 450 6.47 4.19 341.92 271.18 G
  1588. X90 450 6.47 4.19 341.92 271.18 A
  1589. X90 450 6.47 4.19 342.47 261.27 G
  1590. X90 450 6.47 4.19 342.47 261.27 A
  1591. X342.09 354.32 342.09 255.99 2 L
  1592. XV
  1593. XN
  1594. X90 450 6.47 4.19 235.95 347.84 G
  1595. X90 450 6.47 4.19 235.95 347.84 A
  1596. X90 450 6.47 4.19 235.95 337.93 G
  1597. X90 450 6.47 4.19 235.95 337.93 A
  1598. X90 450 6.47 4.19 235.95 292.3 G
  1599. X90 450 6.47 4.19 235.95 292.3 A
  1600. X90 450 6.47 4.19 235.95 302.98 G
  1601. X90 450 6.47 4.19 235.95 302.98 A
  1602. X90 450 6.47 4.19 235.95 281.85 G
  1603. X90 450 6.47 4.19 235.95 281.85 A
  1604. X90 450 6.47 4.19 235.95 271.72 G
  1605. X90 450 6.47 4.19 235.95 271.72 A
  1606. X90 450 6.47 4.19 236.49 261.82 G
  1607. X90 450 6.47 4.19 236.49 261.82 A
  1608. X236.11 354.86 236.11 256.53 2 L
  1609. XV
  1610. XN
  1611. X90 450 6.47 4.19 250.73 347.73 G
  1612. X90 450 6.47 4.19 250.73 347.73 A
  1613. X90 450 6.47 4.19 250.73 337.82 G
  1614. X90 450 6.47 4.19 250.73 337.82 A
  1615. X90 450 6.47 4.19 250.73 292.2 G
  1616. X90 450 6.47 4.19 250.73 292.2 A
  1617. X90 450 6.47 4.19 250.73 302.87 G
  1618. X90 450 6.47 4.19 250.73 302.87 A
  1619. X90 450 6.47 4.19 250.73 281.74 G
  1620. X90 450 6.47 4.19 250.73 281.74 A
  1621. X90 450 6.47 4.19 250.73 271.62 G
  1622. X90 450 6.47 4.19 250.73 271.62 A
  1623. X90 450 6.47 4.19 251.27 261.71 G
  1624. X90 450 6.47 4.19 251.27 261.71 A
  1625. X250.89 354.75 250.89 256.42 2 L
  1626. XV
  1627. XN
  1628. X90 450 6.47 4.19 265.29 347.84 G
  1629. X90 450 6.47 4.19 265.29 347.84 A
  1630. X90 450 6.47 4.19 265.29 337.93 G
  1631. X90 450 6.47 4.19 265.29 337.93 A
  1632. X90 450 6.47 4.19 265.29 292.31 G
  1633. X90 450 6.47 4.19 265.29 292.31 A
  1634. X90 450 6.47 4.19 265.29 302.98 G
  1635. X90 450 6.47 4.19 265.29 302.98 A
  1636. X90 450 6.47 4.19 265.29 281.85 G
  1637. X90 450 6.47 4.19 265.29 281.85 A
  1638. X90 450 6.47 4.19 265.29 271.72 G
  1639. X90 450 6.47 4.19 265.29 271.72 A
  1640. X90 450 6.47 4.19 265.84 261.82 G
  1641. X90 450 6.47 4.19 265.84 261.82 A
  1642. X265.46 354.86 265.46 256.53 2 L
  1643. XV
  1644. XN
  1645. X90 450 6.47 4.19 280.62 347.73 G
  1646. X90 450 6.47 4.19 280.62 347.73 A
  1647. X90 450 6.47 4.19 280.62 337.82 G
  1648. X90 450 6.47 4.19 280.62 337.82 A
  1649. X90 450 6.47 4.19 280.62 292.2 G
  1650. X90 450 6.47 4.19 280.62 292.2 A
  1651. X90 450 6.47 4.19 280.62 302.87 G
  1652. X90 450 6.47 4.19 280.62 302.87 A
  1653. X90 450 6.47 4.19 280.62 281.74 G
  1654. X90 450 6.47 4.19 280.62 281.74 A
  1655. X90 450 6.47 4.19 280.62 271.62 G
  1656. X90 450 6.47 4.19 280.62 271.62 A
  1657. X90 450 6.47 4.19 281.16 261.71 G
  1658. X90 450 6.47 4.19 281.16 261.71 A
  1659. X280.78 354.75 280.78 256.43 2 L
  1660. XV
  1661. XN
  1662. X218.55 318.98 404.97 325.17 R
  1663. X3 X
  1664. XV
  1665. X2 10 Q
  1666. X0 X
  1667. X(upper) 451.62 337.14 T
  1668. X(-deck) 474.18 337.14 T
  1669. X(lower) 451.38 284.39 T
  1670. X(-deck) 473.93 284.39 T
  1671. X(frame) 341.94 388.04 T
  1672. X(rail) 153.75 326.04 T
  1673. X(bead) 148.5 279.02 T
  1674. X434.01 350.29 422.47 353.6 434.01 356.91 434.01 353.6 4 Y
  1675. XV
  1676. X433.41 321.04 421.88 324.35 433.41 327.66 433.41 324.35 4 Y
  1677. XV
  1678. X434.01 353.6 434.35 353.6 445.63 353.6 445.63 324.35 433.41 324.35 5 L
  1679. X0 Z
  1680. XN
  1681. X433.29 312.29 421.75 315.6 433.29 318.91 433.29 315.6 4 Y
  1682. XV
  1683. X432.66 251.66 421.13 254.97 432.66 258.28 432.66 254.97 4 Y
  1684. XV
  1685. X433.29 315.6 434.25 315.6 446.13 315.6 446.13 254.97 432.66 254.97 5 L
  1686. XN
  1687. X217.66 313.51 228.75 318.1 221.78 308.33 219.72 310.92 4 Y
  1688. XV
  1689. X171.25 303.1 209.76 303.1 219.72 310.92 3 L
  1690. X2 Z
  1691. XN
  1692. X(beam) 146.25 302.47 T
  1693. X204.72 284.41 216.25 281.1 204.72 277.79 204.72 281.1 4 Y
  1694. XV
  1695. X171.25 281.1 204.72 281.1 2 L
  1696. XN
  1697. X281.05 361.84 269.12 360.73 278.65 367.99 279.85 364.92 4 Y
  1698. XV
  1699. X339.13 390.1 M
  1700. X 306 383.85 306 383.85 316.63 383.54 D
  1701. X 326.55 383.24 327.21 383.23 279.88 364.89 D
  1702. X0 Z
  1703. XN
  1704. X210.34 332.03 221.88 328.72 210.34 325.42 210.34 328.72 4 Y
  1705. XV
  1706. X170 328.72 210.34 328.72 2 L
  1707. X2 Z
  1708. XN
  1709. X72 87.98 558 432 C
  1710. X0 0 612 792 C
  1711. XFMENDPAGE
  1712. X%%EndPage: "6" 7
  1713. X%%Page: "7" 7
  1714. X612 792 0 FMBEGINPAGE
  1715. X54 750.02 540 750.02 2 L
  1716. X7 X
  1717. X0 K
  1718. XV
  1719. X2 H
  1720. X0 Z
  1721. X0 X
  1722. XN
  1723. X54 730.01 540 745.2 R
  1724. X7 X
  1725. XV
  1726. X1 9 Q
  1727. X0 X
  1728. X(Addition) 189 739.2 T
  1729. X54 726.98 540 726.98 2 L
  1730. X7 X
  1731. XV
  1732. X0.25 H
  1733. X0 X
  1734. XN
  1735. X54 74.02 540 74.02 2 L
  1736. X7 X
  1737. XV
  1738. X2 Z
  1739. X0 X
  1740. XN
  1741. X54 55.01 540 66.96 R
  1742. X7 X
  1743. XV
  1744. X1 10 Q
  1745. X0 X
  1746. X(7) 54 60.96 T
  1747. X1 9 Q
  1748. X( of) 59.56 60.96 T
  1749. X1 10 Q
  1750. X( 12) 70.54 60.96 T
  1751. X1 9 Q
  1752. X(The Abacus) 189 60.96 T
  1753. X498.25 742.67 502.85 742.67 2 L
  1754. X1 H
  1755. XN
  1756. X500.55 742.55 500.55 735.65 2 L
  1757. XN
  1758. X498.25 735.78 502.85 735.78 2 L
  1759. XN
  1760. X498.25 739.48 502.85 739.48 2 L
  1761. XN
  1762. X509.74 746.12 509.74 731.18 2 L
  1763. XN
  1764. X506.8 742.16 512.68 742.16 2 L
  1765. XN
  1766. X505.53 738.21 513.7 738.21 2 L
  1767. XN
  1768. X507.44 735.78 505.14 732.33 2 L
  1769. XN
  1770. X511.65 735.4 513.19 732.33 2 L
  1771. XN
  1772. X505.35 743.7 M
  1773. X 505.67 742.81 505.67 742.81 505.75 742.49 D
  1774. X 505.83 742.17 505.83 742.17 505.87 741.85 D
  1775. X 505.91 741.53 505.91 741.53 505.35 740.49 D
  1776. XN
  1777. X522.12 733.79 528.11 741.74 R
  1778. XN
  1779. X517.84 731.84 533 731.84 2 L
  1780. XN
  1781. X522.12 737.1 528.11 737.1 2 L
  1782. XN
  1783. X522.12 739.3 528.11 739.3 2 L
  1784. XN
  1785. X521.51 746.88 521.99 746.02 522.12 744.8 521.51 742.6 4 L
  1786. XN
  1787. X522.61 746.14 523.95 746.27 2 L
  1788. XN
  1789. X522.48 744.07 523.83 742.72 2 L
  1790. XN
  1791. X526.64 747 527.13 746.14 527.25 744.92 526.64 742.72 4 L
  1792. XN
  1793. X527.74 746.27 529.09 746.39 2 L
  1794. XN
  1795. X527.62 744.19 528.96 742.84 2 L
  1796. XN
  1797. X522.85 732.69 523.83 731.72 524.07 730.74 523.71 729.88 522.85 729.03 5 L
  1798. XN
  1799. X527.74 732.69 527.98 730.86 527.5 729.39 3 L
  1800. XN
  1801. X517.15 710.58 532 710.58 2 L
  1802. XN
  1803. X519.31 710.58 518.59 713.6 529.12 713.6 528.11 710.58 4 L
  1804. XN
  1805. X522.63 713.6 522.49 710.72 2 L
  1806. XN
  1807. X525.37 713.32 525.22 710.58 2 L
  1808. XN
  1809. X516.72 720.23 523.64 720.67 2 L
  1810. XN
  1811. X520.03 722.83 521.62 721.1 2 L
  1812. XN
  1813. X521.04 719.66 522.05 717.93 2 L
  1814. XN
  1815. X518.16 715.77 518.88 716.78 519.17 718.79 518.88 723.69 522.34 724.56 522.2 715.91 6 L
  1816. XN
  1817. X519.03 724.27 520.18 726 2 L
  1818. XN
  1819. X525.22 719.95 526.38 720.81 526.23 723.69 527.53 723.98 528.97 723.84 529.12 721.39 528.97 720.23
  1820. X 530.27 719.8 531.13 720.67 9 L
  1821. XN
  1822. X524.65 714.9 526.81 715.77 528.83 717.35 529.4 718.79 525.22 718.79 527.1 716.34 528.4 715.19
  1823. X 531.13 715.19 8 L
  1824. XN
  1825. X504.26 712.64 509.61 719.74 R
  1826. XN
  1827. X500.44 710.89 513.98 710.89 2 L
  1828. XN
  1829. X504.26 715.59 509.61 715.59 2 L
  1830. XN
  1831. X504.26 717.55 509.61 717.55 2 L
  1832. XN
  1833. X503.71 724.32 504.15 723.56 504.26 722.47 503.71 720.5 4 L
  1834. XN
  1835. X504.7 723.67 505.9 723.78 2 L
  1836. XN
  1837. X504.59 721.81 505.79 720.61 2 L
  1838. XN
  1839. X508.3 724.43 508.74 723.67 508.85 722.58 508.3 720.61 4 L
  1840. XN
  1841. X509.28 723.78 510.48 723.89 2 L
  1842. XN
  1843. X509.17 721.92 510.37 720.72 2 L
  1844. XN
  1845. X504.91 711.66 505.79 710.78 506.01 709.91 505.68 709.15 504.91 708.38 5 L
  1846. XN
  1847. X509.28 711.66 509.5 710.02 509.06 708.71 3 L
  1848. XN
  1849. X54 87.5 540 686.02 R
  1850. X7 X
  1851. XV
  1852. X54 672.98 540 686.02 C
  1853. X189 680.04 540 680.04 2 L
  1854. X0.25 H
  1855. X2 Z
  1856. X0 X
  1857. X0 K
  1858. XN
  1859. X54 680.04 180 680.04 2 L
  1860. X0 Z
  1861. XN
  1862. X0 0 612 792 C
  1863. X1 9 Q
  1864. X0 X
  1865. X0 K
  1866. X(FIGURE  2) 54 666.98 T
  1867. X0 F
  1868. X(Numeric Representation of Number 87,654,321 on the Abacus) 189 666.98 T
  1869. X54 503.97 540 512.99 C
  1870. X189 511.48 540 511.48 2 L
  1871. X0.25 H
  1872. X2 Z
  1873. X0 X
  1874. X0 K
  1875. XN
  1876. X54 511.48 180 511.48 2 L
  1877. X0 Z
  1878. XN
  1879. X0 0 612 792 C
  1880. X1 12 Q
  1881. X0 X
  1882. X0 K
  1883. X(2.0) 163.33 516.99 T
  1884. X(Addition) 189 516.99 T
  1885. X2 10 Q
  1886. X-0.22 (Addition on the abacus involves registering the numbers on the beads in the straight-for-) 189 483.3 P
  1887. X(ward left-to-right sequence they are written down in. As long as the digits are placed) 189 471.3 T
  1888. X(correctly) 189 459.3 T
  1889. X(, and the carry\325) 223.87 459.3 T
  1890. X(s noted properly) 283.82 459.3 T
  1891. X(, the answer to the operation immediately pre-) 348.12 459.3 T
  1892. X(sents itself right on the abacus. There are 4 approaches to performing additions \050or sub-) 189 447.3 T
  1893. X-0.1 (tractions\051, each applied to particular situations. Each of these techniques is explained in) 189 435.3 P
  1894. X(tabular form in the sections that follow) 189 423.3 T
  1895. X2 8 Q
  1896. X(1) 344.45 427.3 T
  1897. X2 10 Q
  1898. X(.) 348.45 423.3 T
  1899. X1 F
  1900. X(2.1) 166.11 393.3 T
  1901. X(Simple Addition) 189 393.3 T
  1902. X2 F
  1903. X(When performing the addition 6+2, one would move 1 bead from the upper deck down) 189 369.3 T
  1904. X(\050value = 5\051 and one bead from the lower deck up \050value = 1\051; this represents 6. Moving) 189 357.3 T
  1905. X(2 beads from the lower deck \050in the same column\051 up \050value = 1 * 2 beads = 2\051 would) 189 345.3 T
  1906. X-0.17 (complete the operation. The answer is then obtained by reading resultant bead positions.) 189 333.3 P
  1907. X54 302.94 540 315.97 C
  1908. X189 309.99 540 309.99 2 L
  1909. X0.25 H
  1910. X2 Z
  1911. X0 X
  1912. X0 K
  1913. XN
  1914. X54 309.99 180 309.99 2 L
  1915. X0 Z
  1916. XN
  1917. X0 0 612 792 C
  1918. X54 279.97 540 293.94 C
  1919. X189 285.94 540 285.94 2 L
  1920. X0.25 H
  1921. X2 Z
  1922. X0 X
  1923. X0 K
  1924. XN
  1925. X0 0 612 792 C
  1926. X1 9 Q
  1927. X0 X
  1928. X0 K
  1929. X(T) 54 296.94 T
  1930. X(ABLE  1) 58.83 296.94 T
  1931. X0 F
  1932. X(Simple Addition) 189 296.94 T
  1933. X0 8 Q
  1934. X(Original Number) 202.8 274.64 T
  1935. X(Formula) 312.68 274.64 T
  1936. X(Bead-Operations Involved) 396 274.64 T
  1937. X(lower-deck) 411.35 264.64 T
  1938. X( upper-deck) 488.78 264.64 T
  1939. X(0,1,2,3,4,5,6,7,8) 198 254.64 T
  1940. X(plus 1) 313.33 254.64 T
  1941. X(+1) 427.44 254.64 T
  1942. X(0,1,2,5,6 or 7) 198 244.64 T
  1943. X(plus 2) 313.33 244.64 T
  1944. X(+2) 427.44 244.64 T
  1945. X(0,1,5 or 6) 198 234.64 T
  1946. X(plus 3) 313.33 234.64 T
  1947. X(+3) 427.44 234.64 T
  1948. X(0 or 3) 198 224.64 T
  1949. X(plus 4) 313.33 224.64 T
  1950. X(+4) 427.44 224.64 T
  1951. X(0,1,2,3 or 4) 198 214.64 T
  1952. X(plus 5) 313.33 214.64 T
  1953. X(+1) 508.44 214.64 T
  1954. X(0,1,2, or 3) 198 204.64 T
  1955. X(plus 6) 313.33 204.64 T
  1956. X(+1) 427.44 204.64 T
  1957. X(+1) 508.44 204.64 T
  1958. X(0,1 or 2) 198 194.64 T
  1959. X(plus 7) 313.33 194.64 T
  1960. X(+2) 427.44 194.64 T
  1961. X(+1) 508.44 194.64 T
  1962. X(0 or 1) 198 184.64 T
  1963. X(plus 8) 313.33 184.64 T
  1964. X(+3) 427.44 184.64 T
  1965. X(+1) 508.44 184.64 T
  1966. X(0) 198 174.64 T
  1967. X(plus 9) 313.33 174.64 T
  1968. X(+4) 427.44 174.64 T
  1969. X(+1) 508.44 174.64 T
  1970. X54 153.5 540 169.56 C
  1971. X189 161.49 333 161.49 2 L
  1972. X0.25 H
  1973. X2 Z
  1974. X0 X
  1975. X0 K
  1976. XN
  1977. X0 0 612 792 C
  1978. X2 8 Q
  1979. X0 X
  1980. X0 K
  1981. X-0.28 (1.  The tables are used as follows: given) 189 148.17 P
  1982. X3 F
  1983. X-0.28 (Original Number) 316.57 148.17 P
  1984. X2 F
  1985. X-0.28 (, to add/subtract) 371.6 148.17 P
  1986. X3 F
  1987. X-0.28 (Formula) 424.04 148.17 P
  1988. X2 F
  1989. X-0.28 (, perform) 452.03 148.17 P
  1990. X3 F
  1991. X-0.28 (Bead-Operations) 483.21 148.17 P
  1992. X(Involved) 189 139.17 T
  1993. X2 F
  1994. X(.) 216.53 139.17 T
  1995. X-0.03 ( For example, to add 2 and 7, move down) 189 130.17 P
  1996. X3 F
  1997. X-0.03 (Original Number) 323.76 130.17 P
  1998. X2 F
  1999. X-0.03 ( column to a row containing 2 and down) 379.03 130.17 P
  2000. X3 F
  2001. X-0.03 (Formula) 510.04 130.17 P
  2002. X2 F
  2003. X-0.13 (to a row containing 7 \050the 7th row\051 then move across to read the) 189 121.17 P
  2004. X3 F
  2005. X-0.13 (Operation Involved) 394.13 121.17 P
  2006. X2 F
  2007. X-0.13 (: move 2 bead counters in) 456.4 121.17 P
  2008. X(the lower-deck and 1 bead counter in the upper-deck to represent the sum; the answer then presents itself on) 189 112.17 T
  2009. X(the abacus. The \322+\323 symbol, in the) 189 103.17 T
  2010. X3 F
  2011. X(Operations Involved) 302.1 103.17 T
  2012. X2 F
  2013. X( column represents moving the bead in question,) 367.61 103.17 T
  2014. X3 F
  2015. X(towards) 189 94.17 T
  2016. X2 F
  2017. X( the rail; the \322-\323 symbol represents moving the bead in question) 214.77 94.17 T
  2018. X3 F
  2019. X(away) 419.52 94.17 T
  2020. X2 F
  2021. X( from the rail.) 436.4 94.17 T
  2022. X54 87.5 540 686.02 C
  2023. X273 547.99 540 663.98 C
  2024. X273 547.99 540 663.98 R
  2025. X7 X
  2026. X0 K
  2027. XV
  2028. X4 14 Q
  2029. X0 X
  2030. X(8 7 6 5 4 3 2 1) 297 552.98 T
  2031. X278.88 565.88 424.88 654.88 R
  2032. X3 X
  2033. XV
  2034. X0.5 H
  2035. X2 Z
  2036. X0 X
  2037. XN
  2038. X281.52 627.49 422.23 650.87 R
  2039. X7 X
  2040. XV
  2041. X0 X
  2042. XN
  2043. X282.05 571.24 421.7 621.89 R
  2044. X7 X
  2045. XV
  2046. X0 X
  2047. XN
  2048. X90 450 4.5 3.42 288.51 645.58 G
  2049. X90 450 4.5 3.42 288.51 645.58 A
  2050. X90 450 4.5 3.42 288.51 637.49 G
  2051. X90 450 4.5 3.42 288.51 637.49 A
  2052. X90 450 4.5 3.42 288.51 600.24 G
  2053. X90 450 4.5 3.42 288.51 600.24 A
  2054. X90 450 4.5 3.42 288.51 608.95 G
  2055. X90 450 4.5 3.42 288.51 608.95 A
  2056. X90 450 4.5 3.42 288.51 591.7 G
  2057. X90 450 4.5 3.42 288.51 591.7 A
  2058. X90 450 4.5 3.42 288.51 583.44 G
  2059. X90 450 4.5 3.42 288.51 583.44 A
  2060. X90 450 4.5 3.42 288.89 575.34 G
  2061. X90 450 4.5 3.42 288.89 575.34 A
  2062. X288.62 651.32 288.62 571.03 2 L
  2063. XV
  2064. XN
  2065. X90 450 4.5 3.42 384.56 645.5 G
  2066. X90 450 4.5 3.42 384.56 645.5 A
  2067. X90 450 4.5 3.42 384.56 637.41 G
  2068. X90 450 4.5 3.42 384.56 637.41 A
  2069. X90 450 4.5 3.42 384.56 600.15 G
  2070. X90 450 4.5 3.42 384.56 600.15 A
  2071. X90 450 4.5 3.42 384.56 608.86 G
  2072. X90 450 4.5 3.42 384.56 608.86 A
  2073. X90 450 4.5 3.42 384.56 591.62 G
  2074. X90 450 4.5 3.42 384.56 591.62 A
  2075. X90 450 4.5 3.42 384.56 583.35 G
  2076. X90 450 4.5 3.42 384.56 583.35 A
  2077. X90 450 4.5 3.42 384.94 575.26 G
  2078. X90 450 4.5 3.42 384.94 575.26 A
  2079. X384.67 651.23 384.67 570.94 2 L
  2080. XV
  2081. XN
  2082. X90 450 4.5 3.42 394.84 645.41 G
  2083. X90 450 4.5 3.42 394.84 645.41 A
  2084. X90 450 4.5 3.42 394.84 637.32 G
  2085. X90 450 4.5 3.42 394.84 637.32 A
  2086. X90 450 4.5 3.42 394.84 600.06 G
  2087. X90 450 4.5 3.42 394.84 600.06 A
  2088. X90 450 4.5 3.42 394.84 608.78 G
  2089. X90 450 4.5 3.42 394.84 608.78 A
  2090. X90 450 4.5 3.42 394.84 591.53 G
  2091. X90 450 4.5 3.42 394.84 591.53 A
  2092. X90 450 4.5 3.42 394.84 583.26 G
  2093. X90 450 4.5 3.42 394.84 583.26 A
  2094. X90 450 4.5 3.42 395.21 575.17 G
  2095. X90 450 4.5 3.42 395.21 575.17 A
  2096. X394.95 651.14 394.95 570.85 2 L
  2097. XV
  2098. XN
  2099. X90 450 4.5 3.42 404.96 645.5 G
  2100. X90 450 4.5 3.42 404.96 645.5 A
  2101. X90 450 4.5 3.42 404.96 637.41 G
  2102. X90 450 4.5 3.42 404.96 637.41 A
  2103. X90 450 4.5 3.42 404.96 600.15 G
  2104. X90 450 4.5 3.42 404.96 600.15 A
  2105. X90 450 4.5 3.42 404.96 608.86 G
  2106. X90 450 4.5 3.42 404.96 608.86 A
  2107. X90 450 4.5 3.42 404.96 591.62 G
  2108. X90 450 4.5 3.42 404.96 591.62 A
  2109. X90 450 4.5 3.42 404.96 583.35 G
  2110. X90 450 4.5 3.42 404.96 583.35 A
  2111. X90 450 4.5 3.42 405.34 575.26 G
  2112. X90 450 4.5 3.42 405.34 575.26 A
  2113. X405.08 651.23 405.08 570.94 2 L
  2114. XV
  2115. XN
  2116. X90 450 4.5 3.42 415.62 645.41 G
  2117. X90 450 4.5 3.42 415.62 645.41 A
  2118. X90 450 4.5 3.42 415.62 637.32 G
  2119. X90 450 4.5 3.42 415.62 637.32 A
  2120. X90 450 4.5 3.42 415.62 600.06 G
  2121. X90 450 4.5 3.42 415.62 600.06 A
  2122. X90 450 4.5 3.42 415.62 608.78 G
  2123. X90 450 4.5 3.42 415.62 608.78 A
  2124. X90 450 4.5 3.42 415.62 591.53 G
  2125. X90 450 4.5 3.42 415.62 591.53 A
  2126. X90 450 4.5 3.42 415.62 583.26 G
  2127. X90 450 4.5 3.42 415.62 583.26 A
  2128. X90 450 4.5 3.42 415.99 575.17 G
  2129. X90 450 4.5 3.42 415.99 575.17 A
  2130. X415.73 651.14 415.73 570.85 2 L
  2131. XV
  2132. XN
  2133. X90 450 4.5 3.42 373.37 645.32 G
  2134. X90 450 4.5 3.42 373.37 645.32 A
  2135. X90 450 4.5 3.42 373.37 637.23 G
  2136. X90 450 4.5 3.42 373.37 637.23 A
  2137. X373.49 651.05 373.49 570.77 2 L
  2138. XV
  2139. XN
  2140. X299.81 651.5 299.81 571.21 2 L
  2141. XV
  2142. XN
  2143. X310.08 649.5 310.08 571.12 2 L
  2144. XV
  2145. XN
  2146. X320.21 651.5 320.21 571.21 2 L
  2147. XV
  2148. XN
  2149. X90 450 4.5 3.42 330.75 645.67 G
  2150. X90 450 4.5 3.42 330.75 645.67 A
  2151. X90 450 4.5 3.42 330.75 631.58 G
  2152. X90 450 4.5 3.42 330.75 631.58 A
  2153. X90 450 4.5 3.42 330.75 600.33 G
  2154. X90 450 4.5 3.42 330.75 600.33 A
  2155. X90 450 4.5 3.42 330.75 609.04 G
  2156. X90 450 4.5 3.42 330.75 609.04 A
  2157. X90 450 4.5 3.42 330.75 591.79 G
  2158. X90 450 4.5 3.42 330.75 591.79 A
  2159. X90 450 4.5 3.42 330.75 583.53 G
  2160. X90 450 4.5 3.42 330.75 583.53 A
  2161. X90 450 4.5 3.42 331.13 575.43 G
  2162. X90 450 4.5 3.42 331.13 575.43 A
  2163. X330.87 651.41 330.87 571.12 2 L
  2164. XV
  2165. XN
  2166. X287.6 622.2 417.21 627.26 R
  2167. X3 X
  2168. XV
  2169. X0 X
  2170. X90 450 4.5 3.42 373.37 600.47 G
  2171. X90 450 4.5 3.42 373.37 600.47 A
  2172. X90 450 4.5 3.42 373.37 617.69 G
  2173. X90 450 4.5 3.42 373.37 617.69 A
  2174. X90 450 4.5 3.42 373.37 591.94 G
  2175. X90 450 4.5 3.42 373.37 591.94 A
  2176. X90 450 4.5 3.42 373.37 583.67 G
  2177. X90 450 4.5 3.42 373.37 583.67 A
  2178. X90 450 4.5 3.42 373.75 575.58 G
  2179. X90 450 4.5 3.42 373.75 575.58 A
  2180. X90 450 4.5 3.42 363.1 575.17 G
  2181. X90 450 4.5 3.42 363.1 575.17 A
  2182. X90 450 4.5 3.42 342.32 645.41 G
  2183. X90 450 4.5 3.42 342.32 645.41 A
  2184. X90 450 4.5 3.42 342.32 637.32 G
  2185. X90 450 4.5 3.42 342.32 637.32 A
  2186. X90 450 4.5 3.42 341.82 609.06 G
  2187. X90 450 4.5 3.42 341.82 609.06 A
  2188. X90 450 4.5 3.42 341.82 617.78 G
  2189. X90 450 4.5 3.42 341.82 617.78 A
  2190. X90 450 4.5 3.42 341.82 600.53 G
  2191. X90 450 4.5 3.42 341.82 600.53 A
  2192. X90 450 4.5 3.42 341.82 592.26 G
  2193. X90 450 4.5 3.42 341.82 592.26 A
  2194. X90 450 4.5 3.42 342.69 575.17 G
  2195. X90 450 4.5 3.42 342.69 575.17 A
  2196. X342.43 651.14 342.43 570.85 2 L
  2197. XV
  2198. XN
  2199. X90 450 4.5 3.42 352.59 645.32 G
  2200. X90 450 4.5 3.42 352.59 645.32 A
  2201. X90 450 4.5 3.42 352.59 637.23 G
  2202. X90 450 4.5 3.42 352.59 637.23 A
  2203. X90 450 4.5 3.42 352.59 608.97 G
  2204. X90 450 4.5 3.42 352.59 608.97 A
  2205. X90 450 4.5 3.42 352.59 617.69 G
  2206. X90 450 4.5 3.42 352.59 617.69 A
  2207. X90 450 4.5 3.42 352.59 600.44 G
  2208. X90 450 4.5 3.42 352.59 600.44 A
  2209. X90 450 4.5 3.42 352.59 583.17 G
  2210. X90 450 4.5 3.42 352.59 583.17 A
  2211. X90 450 4.5 3.42 352.97 575.08 G
  2212. X90 450 4.5 3.42 352.97 575.08 A
  2213. X352.71 651.05 352.71 570.77 2 L
  2214. XV
  2215. XN
  2216. X90 450 4.5 3.42 362.72 645.41 G
  2217. X90 450 4.5 3.42 362.72 645.41 A
  2218. X90 450 4.5 3.42 362.72 637.32 G
  2219. X90 450 4.5 3.42 362.72 637.32 A
  2220. X90 450 4.5 3.42 363.22 609.06 G
  2221. X90 450 4.5 3.42 363.22 609.06 A
  2222. X90 450 4.5 3.42 363.22 617.78 G
  2223. X90 450 4.5 3.42 363.22 617.78 A
  2224. X90 450 4.5 3.42 362.72 591.53 G
  2225. X90 450 4.5 3.42 362.72 591.53 A
  2226. X90 450 4.5 3.42 362.72 583.26 G
  2227. X90 450 4.5 3.42 362.72 583.26 A
  2228. X362.83 651.14 362.83 570.85 2 L
  2229. XV
  2230. XN
  2231. X90 450 4.5 3.42 319.75 645.67 G
  2232. X90 450 4.5 3.42 319.75 645.67 A
  2233. X90 450 4.5 3.42 319.75 631.58 G
  2234. X90 450 4.5 3.42 319.75 631.58 A
  2235. X90 450 4.5 3.42 309.75 645.67 G
  2236. X90 450 4.5 3.42 309.75 645.67 A
  2237. X90 450 4.5 3.42 309.75 631.58 G
  2238. X90 450 4.5 3.42 309.75 631.58 A
  2239. X90 450 4.5 3.42 299.75 645.67 G
  2240. X90 450 4.5 3.42 299.75 645.67 A
  2241. X90 450 4.5 3.42 299.75 631.58 G
  2242. X90 450 4.5 3.42 299.75 631.58 A
  2243. X90 450 4.5 3.42 310.6 575.17 G
  2244. X90 450 4.5 3.42 310.6 575.17 A
  2245. X90 450 4.5 3.42 300.09 608.97 G
  2246. X90 450 4.5 3.42 300.09 608.97 A
  2247. X90 450 4.5 3.42 300.09 617.69 G
  2248. X90 450 4.5 3.42 300.09 617.69 A
  2249. X90 450 4.5 3.42 300.09 600.44 G
  2250. X90 450 4.5 3.42 300.09 600.44 A
  2251. X90 450 4.5 3.42 300.09 583.17 G
  2252. X90 450 4.5 3.42 300.09 583.17 A
  2253. X90 450 4.5 3.42 300.47 575.08 G
  2254. X90 450 4.5 3.42 300.47 575.08 A
  2255. X90 450 4.5 3.42 310.72 609.06 G
  2256. X90 450 4.5 3.42 310.72 609.06 A
  2257. X90 450 4.5 3.42 310.72 617.78 G
  2258. X90 450 4.5 3.42 310.72 617.78 A
  2259. X90 450 4.5 3.42 310.22 591.53 G
  2260. X90 450 4.5 3.42 310.22 591.53 A
  2261. X90 450 4.5 3.42 310.22 583.26 G
  2262. X90 450 4.5 3.42 310.22 583.26 A
  2263. X90 450 4.5 3.42 320.37 599.97 G
  2264. X90 450 4.5 3.42 320.37 599.97 A
  2265. X90 450 4.5 3.42 320.37 617.19 G
  2266. X90 450 4.5 3.42 320.37 617.19 A
  2267. X90 450 4.5 3.42 320.37 591.44 G
  2268. X90 450 4.5 3.42 320.37 591.44 A
  2269. X90 450 4.5 3.42 320.37 583.17 G
  2270. X90 450 4.5 3.42 320.37 583.17 A
  2271. X90 450 4.5 3.42 320.75 575.08 G
  2272. X90 450 4.5 3.42 320.75 575.08 A
  2273. X2 10 Q
  2274. X(1) 442.57 614.47 T
  2275. X380.84 616.85 441.27 616.85 2 L
  2276. X4 X
  2277. XN
  2278. X335.98 586.86 346.84 622 R
  2279. X3 X
  2280. XN
  2281. X370.27 609.57 451.99 609.57 2 L
  2282. X4 X
  2283. XN
  2284. X337.41 629.57 434.13 629.57 2 L
  2285. XN
  2286. X0 X
  2287. X(5) 436.29 627.18 T
  2288. X(2) 454.29 607.76 T
  2289. X357.56 603.14 369.13 621.14 R
  2290. X3 X
  2291. XN
  2292. X347.55 595.14 462.7 595.14 2 L
  2293. X4 X
  2294. XN
  2295. X0 X
  2296. X(4) 467.29 593.33 T
  2297. X54 87.5 540 686.02 C
  2298. X0 0 612 792 C
  2299. XFMENDPAGE
  2300. X%%EndPage: "7" 8
  2301. X%%Page: "8" 8
  2302. X612 792 0 FMBEGINPAGE
  2303. X72 750.02 558 750.02 2 L
  2304. X7 X
  2305. X0 K
  2306. XV
  2307. X2 H
  2308. X0 Z
  2309. X0 X
  2310. XN
  2311. X72 730.01 558 745.2 R
  2312. X7 X
  2313. XV
  2314. X1 9 Q
  2315. X0 X
  2316. X(Addition) 207 739.2 T
  2317. X72 726.98 558 726.98 2 L
  2318. X7 X
  2319. XV
  2320. X0.25 H
  2321. X0 X
  2322. XN
  2323. X72 74.02 558 74.02 2 L
  2324. X7 X
  2325. XV
  2326. X2 Z
  2327. X0 X
  2328. XN
  2329. X72 55.01 558 66.96 R
  2330. X7 X
  2331. END_OF_FILE
  2332. if test 22902 -ne `wc -c <'abacus.ps.ac'`; then
  2333.     echo shar: \"'abacus.ps.ac'\" unpacked with wrong size!
  2334. fi
  2335. # end of 'abacus.ps.ac'
  2336. fi
  2337. echo shar: End of archive 1 \(of 4\).
  2338. cp /dev/null ark1isdone
  2339. MISSING=""
  2340. for I in 1 2 3 4 ; do
  2341.     if test ! -f ark${I}isdone ; then
  2342.     MISSING="${MISSING} ${I}"
  2343.     fi
  2344. done
  2345. if test "${MISSING}" = "" ; then
  2346.     echo You have unpacked all 4 archives.
  2347.     rm -f ark[1-9]isdone
  2348. else
  2349.     echo You still need to unpack the following archives:
  2350.     echo "        " ${MISSING}
  2351. fi
  2352. ##  End of shell archive.
  2353. exit 0
  2354. -- 
  2355. Molecular Simulations, Inc.             mail: dcmartin@msi.com
  2356. 796 N. Pastoria Avenue                  uucp: uunet!dcmartin
  2357. Sunnyvale, California 94086             at&t: 408/522-9236
  2358.