diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /fonts/poorman |
Initial commit
Diffstat (limited to 'fonts/poorman')
107 files changed, 5353 insertions, 0 deletions
diff --git a/fonts/poorman/MANIFEST b/fonts/poorman/MANIFEST new file mode 100644 index 0000000000..8bceb54d48 --- /dev/null +++ b/fonts/poorman/MANIFEST @@ -0,0 +1,30 @@ +--- TEXT FILES --- +MANIFEST this list of files +README tells a little about the system +UPDATES changes to collection since first posting +jtexsamp.tex an include file to pmjintro.tex +license what rights do you have to use this software +pmC.tex macro file for Poor Man's Chinese +pmCs.tex same, but for simplified characters +pmJ.tex macro file for Poor Man's Japanese +pmcintro.tex draft guide and sample file for pmC +pmfont.c source code for fontmaker +pmjintro.tex draft guide and sample file for pmJ +pmsintro.tex draft guide and sample file for pmCs +poorman.mf macro file for METAFONT and pmfont +to_sjis.c source code for converter to Shift-JIS +MakeFont sample script (batch) file for running METAFONT +dir a: +--- BINARY FILES all are font files: input for pmfont --- +cclib.24 simplified chinese characters +jis24 japanese characters +cclibf.24 traditional chinese characters + (cclibf.24 is scaled up from 16x16 + the world needs a good public domain 24x24 traditional + chinese font) +----- BINARY FILE For Hewlett Packard users . . . + in particular for MSDOS to overcome fonts/per/page limitations: +dvixx050.zip zip-type archive with source and MSDOS executable + + + diff --git a/fonts/poorman/MakeFont b/fonts/poorman/MakeFont new file mode 100644 index 0000000000..1a96fa02cd --- /dev/null +++ b/fonts/poorman/MakeFont @@ -0,0 +1,28 @@ +#!/bin/sh +# <- lines with that character are comments +# +# Use this as a guide, you will almost certainly need to make changes +# +# you may very well need supervisor privileges to do all this +# if your system has such things +# +# call METAFONT with approriate mode $1 means: 1st parameter on command line +mf '\mode=nexthi;' '\scrollmode;' '\mag=1;' input $1 +# assuming all went well, move or copy tfm file to appropriate directory +mv $1.tfm /NextLibrary/Fonts/TeXFonts/tfm +# make a pk file from the gf file adjust resolution numbers as required +gftopk $1.400gf $1.400pk +# move/copy the resulting pk file to the right directory on your system +mv $1.400pk /NextLibrary/Fonts/TeXFonts/pk +# remove any files which are no longer needed and return +rm $1.400gf +rm $1.log +rm $1.mf + + + + + + + + diff --git a/fonts/poorman/README b/fonts/poorman/README new file mode 100644 index 0000000000..caecf9b7ca --- /dev/null +++ b/fonts/poorman/README @@ -0,0 +1,171 @@ +README + +This is the usual in-the-absence-of-real-documentation +readme file for Poor Man's Chinese and Japanese. + +pmC and pmJ are less than ideal implementations of Chinese +and Japanese for TeX. Less than ideal because they use fonts +based on 24x24 dot-matrix fonts, and don't do vertical format +typesetting and so forth. However, they (seem to) work, are +free, and work with a standard TeX of version 3 with no known +system dependencies. SEE THE END OF THIS FILE FOR A NOTE ABOUT +VERSION 3.0 OF TeX. + +pmJ/pmC has two components: + a) a font maker + b) macros enabling TeX to recognize the character + set encoding used. + + a) the fontmaker is a METAFONT code generator written in C + which reads a JIS or CCLIB 24x24 bitmapped font, and writes + METAFONT instructions to emulate the font. (This is the same + technique adapted by F. Jalbert for JEMTEX; JEMTEX is in part + based on an earlier version of this fontmaker). The fonts are + organized to reflect the character set encodings which pmC/pmJ + support. + + b) pmC and pmJ support the GB and Shift-JIS encodings respectively. + These schemes use two-byte codes for indicating single characters. + [These encodings incorporate the standard one-byte ASCII as a subset, + thus allowing English TeX to proceed with no changes required] + So far as pmC and pmJ are concerned, the first byte selects a font, + the second byte selects a character in the font. pmC and pmJ accomplish + this by making all characters in the range 160 to 254 \active; they + are then defined as single-character macros . . . (and the details + may be read in the respective pmJ.tex and pmC.tex macro files). + Commands \beginJapanese . . . \endJapanese [ \beginChinese . . . + \endChinese] define a local environment within which Japanese + [or Chinese] text is expected. Unless another language using + a character set encoding in conflict with GB/Shift-JIS is also + used, one may just say \beginJapanese [\beginChinese] at the beginning + and leave it at that. + +NOTES ON USE + The Poor Mans's systems use A LOT of fonts; see the remarks on the + subject in pm?intro.tex included in the package. To partially + alleviate the problem, pmfonts are made with a magstep2 magnification + built into the base size font. Whether the magnified or normal + size of a character is printed depends on the state of an \ifbigJ + or \ifbigC flag. I.e., to put a section head in larger type, you + might say + \centerline{{\bigJtrue ^^b8^^a9^^d4^^f2^^c4^^a1}} + where the \bigJtrue would tell pmJ to use the larger size. + +HOW TO GET IT + During the month of December 1990, early test versions of pmC and + pmJ will be available for anonymous ftp on + blackbox.hacc.washington.edu (128.95.200.1) + in directory pub/poorman. We expect rapid evolution in the Poor Man's + group, so those taking copies of pmC or pmJ should send me e-mail + notifying me that you are testing so that I may maintain a list + for future notifications. When ftp'ing first get the file MANIFEST + for a current list of what to get, and how [text/binary]. MANIFEST + itself is a text file. + +LEGALITIES + Portions of pmC and pmJ are copyrighted free software. See the file + license for details. The TeX portions are public domain. + +INSTALLATION + Take everything from the poorman directory; all files are text + except the font files jis24, cclib.24 and cclibf.24 are binary. + Some of the text files include 8-bit text; be advised that they will + likely ftp o.k., but may be damaged by passing through e-mail. + Compile pmfont.c, and --- if you wish --- to_sjis.c [to_sjis + is optional, converting some forms of encoding for Japanese to + the encoding used by pmJ]. Prepare a MakeFont program for your + system; MakeFont is a system-dependent script which runs METAFONT + at the behest of pmfont: preparing MakeFont is the principal point + in the installation where you will need to know what's going on. + A sample MakeFont for a Unix system is included in the test package. + pmfont is invoked with two options: input-font-file and output-tag. + The input-font-file is something like JIS24 or CCLIB.24; the output-tag + will become the first part of the fontname METAFONT will work with. + The expected output tags are `wjis' for Japanese, `wcct' for traditional + Chinese, and `wccs' for simplified Chinese. The font files which will + be produced will be wjisa1, wjisa2, wjisa3 . . ./wccta1, wccta2, wccta3 + . . ./wccsa1, wccsa2, wccsa3 . . . [There is an optional third + parameter, skipcount, for bypassing the early stages of a run; + if you had a previous run, for example, which ran successfully until + font wjisb9, and was then interrupted, you could restart without + wasted effort by saying `pmfont jis24 wjis b9']. + Here's the scheme: pmfont reads in the bitmap font and starts + writing METAFONT code for one font, then pauses and issues a + system call to MakeFont, expecting that MakeFont will tell + METAFONT to make the font (in an appropriate mode, etc.), + copy the output files to wherever they should go, and remove + no-longer-needed files, including the METAFONT source code). + pmfont then resumes reading the input bitmap font and writing + METAFONT code, until it is time for another system call to + MakeFont. Depending on which set of fonts we are working on, + we go thru this 80 some odd, or 90 some odd times. I haven't + tried it on a PC; MakeFont would probably need to just dump the + METAFONT source code (compressed) to a floppy for later processing + since most PC METAFONTs will not want to run in whatever + memory space is left when pmfont runs a system call [but I + could be wrong, surprise me!]. + Ordinarily you will not keep the METAFONT code pmfont generates + since it is purely a mechanical production and can be regenerated + whenever you wish [It will also require somewhere around 20Mbytes + of storage space if you keep it]. BY ADVISED THAT YOU WILL HAVE + A LONG RUN IN PROCESSING THE FONTS: the method for emulating dot- + matrix in a device-independent way uses a LARGE NUMBER of arithmetic + calculations. My most recent run to produce ONE set of the JIS fonts + took over 39 hours on a NeXT; :) fortunately you only have to make + the fonts once. + Once the fonts are made, put the pmJ.tex, pmC.tex and pmCs.tex files + in places where TeX can find them. Attempt to print the pmjintro/ + pmcintro/pmsintro files, and see what happens. + +WARNING WARNING WARNING The Poor Man's Japanese and Chinese systems are + working, but by no means finished, systems. It will not be a trivial + task to install them and get them to work. You really should not + expect to be able to do it if you have minimal TeX experience, and + it would be very helpful if you had run METAFONT before. You may not + want to try this at home. + +TeX 3.0 VERSIONS -- IMPLEMENTATION BUG AFFECTING pmJ and pmC + TeX3.0 based on web2c, including UNIX TeX 3.0, needs to be fixed for + pmJ or pmC to run. Either declare NONASCII, in the Makefile, or + modify file extra.c, commenting out one section which unfortunately + obliterates characters with the high bit set: + + boolean zinputln(f) + FILE *f; + { + register int i; + + last = first; + #ifdef BSD + if (f == stdin) clearerr(stdin); + #endif + while ( last < bufsize && ((i = getc(f)) != EOF) && i != '\n') { +/* series of changes here, we seem to have forgotten about the 8-bit part */ +/* #ifdef NONASCII */ + buffer[last++] = i; +/* #else */ +/* buffer[last++] = (i > 127 || i < 0)?' ':i; */ +/* oops! everything with high-bit set just turned into a space */ +/* #endif */ + } + Thanks, by the way, to the authors of web2c, for a nice pathway + to TeX. Versions of UNIX TeX 3.1 (and presumably onward) do not + need any fixing. + + +TEST REPORTS + Please sends reports/ bug reports/ bug fixes, improvements, + interesting examples, and so forth related to Poor Man's language + versions to + ridgeway@blackbox.hacc.washington.edu + or + Thomas Ridgeway, Director + Humanities and Arts Computing Center, DR-10 + University of Washington, + Seattle WA 98195 USA + telephone (206)-543-4218 + + +12/3/90 +Tom Ridgeway +Seattle diff --git a/fonts/poorman/UPDATES b/fonts/poorman/UPDATES new file mode 100644 index 0000000000..79b6f2f755 --- /dev/null +++ b/fonts/poorman/UPDATES @@ -0,0 +1,27 @@ +12/5/90 pmC.tex and pmCs.tex modified to correct + a) bad reference to jisfontsetfalse + b) ugly mass of glue on each beginchinese call + + +12/7/90 No changes made to files, but note: + in pmfont.c: + on some systems the #include <string.h> + needs to be #include <strings.h> + If I were a comparative C programmer instead + of a linguist, I could probably tell you where + each is current. My dialect says string. (My + dialect is standard, of course). + + for some compilers, the main() declaration + in line 81 which is now + main(int argc,char *argv[]) + needs to be rewritten as: + main(argc,argv) + int argc; + char *argv[]; + Or one can probably set a switch to enable to + the ANSI form of declaration, but who wants to + guess about which switches are honored where + +7/17/91 dvixx050.zip placed in ftp area for use with + MSDOS and HP LaserJet ( & compatible ) printers. diff --git a/fonts/poorman/cclib.24 b/fonts/poorman/cclib.24 Binary files differnew file mode 100644 index 0000000000..b3a08a3f2c --- /dev/null +++ b/fonts/poorman/cclib.24 diff --git a/fonts/poorman/cclibf.24 b/fonts/poorman/cclibf.24 Binary files differnew file mode 100644 index 0000000000..85c5a4fab3 --- /dev/null +++ b/fonts/poorman/cclibf.24 diff --git a/fonts/poorman/jis24 b/fonts/poorman/jis24 Binary files differnew file mode 100644 index 0000000000..83c8f7ea92 --- /dev/null +++ b/fonts/poorman/jis24 diff --git a/fonts/poorman/jtexsamp.tex b/fonts/poorman/jtexsamp.tex new file mode 100644 index 0000000000..de3c0005ff --- /dev/null +++ b/fonts/poorman/jtexsamp.tex @@ -0,0 +1,68 @@ +\beginJapanese +This text is ``JTeX Note'' from the NTT J\TeX\ distribution. + + +\centerline{{\bigJtrue ºù°æµ®Ê¸}} + +TeX ¤Ç¤Ï $<$return$>$ ¤È $<$space$>$ ¤Î°·¤¤¤Ë¤Ä¤¤¤Æ¼¡¤ÎÍͤʵ¬Â§¤¬¤¢¤ê¤Þ¤¹¡£ + +1. ¶õÇò¹Ô¤Ç¤Ê¤¤¹Ô¤Î´Ö¤Î$<$return$>$¤Ï$<$space$>$¤È¤ß¤Ê¤¹¡£ + +2. 2¤Ä°Ê¾å¤Î$<$space$>$¤Ï1¤Ä¤Î$<$space$>$¤ÈƱ¤¸¡£ +¤³¤ì¤À¤±ÃΤäƤ¤¤ì¤Ð¤Û¤Ü½½Ê¬¤Ê¤Î¤Ç¤¹¤¬¡¢¶õÇò¹Ô($<$space$>$¤Î¤ß¤«¤é¤Ê¤ë +¹Ô¤â´Þ¤à)¤â¹Íθ¤·¤Æ¤â¤¦¾¯¤·¸·Ì©¤Ë½Ò¤Ù¤ë¤È¡¢¼¡¤Î½ç¤Ë½èÍý¤µ¤ì¤Þ¤¹¡£ + +1. ¹ÔËö¤Î$<$space$>$¤Ï̵»ë¤¹¤ë¡£ + +2. ¼¡¤Îʸ»ú¤â$<$return$>$¤Ç¤¢¤ë$<$return$>$°Ê³°¤Î$<$return$>$¤Ï$<$space$>$¤È¤ß¤Ê¤¹¡£ + +3. 2¤Ä°Ê¾å¤Î$<$space$>$¤Ï1¤Ä¤Î$<$space$>$¤ÈƱ¤¸¡£ +¤³¤ì¤«¤éÇÉÀ¸µ¬Â§¤È¤·¤Æ + +4. ¹ÔƬ¤Î $<$space$>$ ¤Ï̵»ë¤¹¤ë¡£ + +¤·¤«¤·¡¢ JTeX ¤Î¾ì¹ç´Á»ú¤ÎÁ°¸å¤Î$<$return$>$¤ò̵»ë¤·¤¿¤¤¤Î¤Ç¡¢¾åµ¤Î +µ¬Â§¤Ï°Ê²¼¤ÎÍͤËÊѹ¹¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ + +1. ¹ÔËö¤Î$<$space$>$¤Ï̵»ë¤¹¤ë¡£ + +2. ¼¡¤Îʸ»ú¤â $<$return$>$ ¤Ç¤¢¤ë $<$return$>$ °Ê³°¤Î $<$return$>$ ¤Î¤¦¤Á¡¢ + Á°¸å¤Ë´Á»ú¤¬¤¢¤ë¾ì¹ç¤Ï¤½¤Î $<$return$>$ ¤Ï̵»ë¤·¡¢ + ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¤½¤Î $<$return$>$ ¤Ï $<$space$>$ ¤È¤ß¤Ê¤¹¡£ + +3. 2¤Ä°Ê¾å¤Î $<$space$>$ ¤Ï1¤Ä¤Î $<$space$>$ ¤ÈƱ¤¸¡£ +½¾¤Ã¤Æ¡¢ÇÉÀ¸µ¬Â§4¤Ïɬ¤º¤·¤âÀ®¤êΩ¤¿¤Ê¤¤»ö¤ËÃí°Õ¤·¤Æ²¼¤µ¤¤¡£ + +¤¿¤À¤·¡¢¤³¤ÎÊѹ¹¤ÏüËö¤«¤é¥Æ¥¥¹¥È¤¬ÆþÎϤµ¤ì¤ë¤È¤¤ä¥Õ¥¡¥¤¥ë +¤«¤é $\backslash$read ¤ÇÆɤà¤È¤¤Ë¤ÏŬÍѤµ¤ì¤Þ¤»¤ó¡£½¾¤Ã¤Æ¡¢ÂçÄñ¤Î¾ì¹ç¤Ë¤Ï +ŬÍѤµ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£ + +¤Ê¤ª¡¢¤³¤ÎÍͤËÊѹ¹¤·¤¿·ë²Ì¡¢¹Ô¤ÎºÇ¸å¤Ç¥¨¥é¡¼¤¬µ¯¤¤¿¾ì¹ç +(Î㤨¤Ð¤½¤Î¹Ô¤ò10¹Ô¤È¤¹¤ë¤È)¡¢ TeX ¤Ç¤Ïɬ¤º + + +l.10 ...xxx xxx xxx + +¤Èɽ¼¨¤µ¤ì¤Þ¤¹¤¬¡¢ JTeX ¤Ç¤Ï + + +l.11 + + + yy yyy yyyy + + +¤Èɽ¼¨¤µ¤ì¤ë»ö¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï11¹Ô¤ÎÀèƬ¤ÎÁ°¡¢Â¨¤Á10¹Ô¤ÎºÇ¸å¤Ç +¥¨¥é¡¼¤¬µ¯¤¤¿¡¢¤ÈÆɤá¤ë¤Î¤Çɽ¼¨¤¬´Ö°ã¤Ã¤Æ¤¤¤ë¤È¤¤¤¦¤ï¤±¤Ç¤Ï +¤¢¤ê¤Þ¤»¤ó¡£ + +\endJapanese + + + + + + + + + diff --git a/fonts/poorman/license b/fonts/poorman/license new file mode 100644 index 0000000000..8e39dc752a --- /dev/null +++ b/fonts/poorman/license @@ -0,0 +1,139 @@ + HACC SOFTWARE GENERAL PUBLIC LICENSE + + Portions of this license are Copyright (C) 1985, 1987, 1988 +Richard M. Stallman. Everyone is permitted to copy and distribute +verbatim copies of this license, but changing it is not allowed. +You can also use this wording to make the terms for other programs. + + Our general public license is intended to give everyone the right +to share HACC software. HACC software is software developed in the +Humanities and Arts Computing Center of the University of Washington. +To make sure that you get the rights we want you to have, we need to +make restrictions that forbid anyone to deny you these rights or to ask +you to surrender the rights. Hence this license agreement. + + Specifically, we want to make sure that you have the right to give +away copies of HACC software, that you receive source code or else can get it +if you want it, that you can change HACC software or use pieces of it in new +free programs, and that you know you can do these things. + + To make sure that everyone has such rights, we have to forbid you to +deprive anyone else of these rights. For example, if you distribute +copies of HACC software, you must give the recipients all the rights that you +have. You must make sure that they, too, receive or can get the +source code. And you must tell them their rights. + + Also, for our own protection, we must make certain that everyone +finds out that there is no warranty for HACC software. If HACC software is +modified by someone else and passed on, we want its recipients to know +that what they have is not what we distributed, so that any problems +introduced by others will not reflect on our reputation. + + Therefore we (the Humanities and Arts Computing Center of the University +of Washington) make the following terms which say what you must do to be +allowed to distribute or change HACC software. + + COPYING POLICIES + + 1. You may copy and distribute verbatim copies of HACC software source code +as you receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy a valid copyright notice "Copyright +(C) 1990 Humanities and Arts Computing Center" (or with whatever year is +appropriate); keep intact the notices on all files that refer to this +License Agreement and to the absence of any warranty; and give any +other recipients of the HACC software program a copy of this License +Agreement along with the program. You may charge a distribution fee +for the physical act of transferring a copy. + + 2. You may modify your copy or copies of HACC software source code or +any portion of it, and copy and distribute such modifications under +the terms of Paragraph 1 above, provided that you also do the following: + + a) cause the modified files to carry prominent notices stating + that you changed the files and the date of any change; and + + b) cause the whole of any work that you distribute or publish, + that in whole or in part contains or is a derivative of HACC software + or any part thereof, to be licensed at no charge to all third + parties on terms identical to those contained in this License + Agreement (except that you may choose to grant more extensive + warranty protection to some or all third parties, at your option). + + c) You may charge a distribution fee for the physical act of + transferring a copy, and you may at your option offer warranty + protection in exchange for a fee. + +Mere aggregation of another unrelated program with this program (or its +derivative) on a volume of a storage or distribution medium does not bring +the other program under the scope of these terms. + + 3. You may copy and distribute HACC software (or a portion or derivative of it, +under Paragraph 2) in object code or executable form under the terms of +Paragraphs 1 and 2 above provided that you also do one of the following: + + a) accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of + Paragraphs 1 and 2 above; or, + + b) accompany it with a written offer, valid for at least three + years, to give any third party free (except for a nominal + shipping charge) a complete machine-readable copy of the + corresponding source code, to be distributed under the terms of + Paragraphs 1 and 2 above; or, + + c) accompany it with the information you received as to where the + corresponding source code may be obtained. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form alone.) + +For an executable file, complete source code means all the source code for +all modules it contains; but, as a special exception, it need not include +source code for modules which are standard libraries that accompany the +operating system on which the executable file runs. + + 4. You may not copy, sublicense, distribute or transfer HACC software +except as expressly provided under this License Agreement. Any attempt +otherwise to copy, sublicense, distribute or transfer HACC software is void and +your rights to use HACC software under this License agreement shall be +automatically terminated. However, parties who have received computer +software programs from you with this License Agreement will not have +their licenses terminated so long as such parties remain in full compliance. + + 5. If you wish to incorporate parts of HACC software into other free programs +whose distribution conditions are different, write to the Humanities and Arts +Computing Center. We have not yet worked out a simple rule that can be stated +here, but we will often permit this. We will be guided by the two goals of +preserving the free status of all derivatives of our free software and of +promoting the sharing and reuse of software. + +Your comments and suggestions about our licensing policies and our +software are welcome! Please contact the Humanities and Arts Computing +Center, University of Washington, DR-10, Seattle WA 98195, USA +telephone (206)-543-4218. This general public license is based on the +Gnu Emacs General Public License issued by Free Software Foundation, Inc., +675 Mass Ave, Cambridge, MA 02139, (617) 876-3296. + + NO WARRANTY + + BECAUSE HACC SOFTWARE IS LICENSED FREE OF CHARGE, WE PROVIDE ABSOLUTELY +NO WARRANTY, TO THE EXTENT PERMITTED BY APPLICABLE STATE LAW. EXCEPT +WHEN OTHERWISE STATED IN WRITING, HUMANITIES AND ARTS COMPUTING CENTER AND +UNIVERSITY OF WASHINGTON AND/OR OTHER PARTIES PROVIDE HACC SOFTWARE "AS IS" +WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY +AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE HACC SOFTWARE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY +SERVICING, REPAIR OR CORRECTION. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW WILL THE HUMANITIES AND ARTS +COMPUTING CENTER, THE UNIVERSITY OF WASHINGTON, AND/OR ANY OTHER PARTY WHO MAY +MODIFY AND REDISTRIBUTE HACC SOFTWARE AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER +SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR +INABILITY TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA +BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES OR A +FAILURE OF THE PROGRAM TO OPERATE WITH PROGRAMS NOT DISTRIBUTED BY +THE HUMANITIES AND ARTS COMPUTING CENTER) THE PROGRAM, EVEN IF YOU HAVE BEEN +ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM BY ANY +OTHER PARTY. diff --git a/fonts/poorman/pmC.tex b/fonts/poorman/pmC.tex new file mode 100644 index 0000000000..ffb4dbc885 --- /dev/null +++ b/fonts/poorman/pmC.tex @@ -0,0 +1,424 @@ +% Thomas B. Ridgeway and the Humanities and Arts Computing Center +% declare that this software is public domain . . . 12/3/1990 +% declare pmC fonts stand by . . . this may take a while +\font\cfaB=wccta1 +\font\cfaC=wccta2 +\font\cfaD=wccta3 +\font\cfaE=wccta4 +\font\cfaF=wccta5 +\font\cfaG=wccta6 +\font\cfaH=wccta7 +\font\cfaI=wccta8 +\font\cfaJ=wccta9 +\font\cfaa=wcctaa +\font\cfab=wcctab +\font\cfac=wcctac +\font\cfad=wcctad +\font\cfae=wcctae +\font\cfaf=wcctaf +\font\cfbA=wcctb0 +\font\cfbB=wcctb1 +\font\cfbC=wcctb2 +\font\cfbD=wcctb3 +\font\cfbE=wcctb4 +\font\cfbF=wcctb5 +\font\cfbG=wcctb6 +\font\cfbH=wcctb7 +\font\cfbI=wcctb8 +\font\cfbJ=wcctb9 +\font\cfba=wcctba +\font\cfbb=wcctbb +\font\cfbc=wcctbc +\font\cfbd=wcctbd +\font\cfbe=wcctbe +\font\cfbf=wcctbf +\font\cfcA=wcctc0 +\font\cfcB=wcctc1 +\font\cfcC=wcctc2 +\font\cfcD=wcctc3 +\font\cfcE=wcctc4 +\font\cfcF=wcctc5 +\font\cfcG=wcctc6 +\font\cfcH=wcctc7 +\font\cfcI=wcctc8 +\font\cfcJ=wcctc9 +\font\cfca=wcctca +\font\cfcb=wcctcb +\font\cfcc=wcctcc +\font\cfcd=wcctcd +\font\cfce=wcctce +\font\cfcf=wcctcf +\font\cfdA=wcctd0 +\font\cfdB=wcctd1 +\font\cfdC=wcctd2 +\font\cfdD=wcctd3 +\font\cfdE=wcctd4 +\font\cfdF=wcctd5 +\font\cfdG=wcctd6 +\font\cfdH=wcctd7 +\font\cfdI=wcctd8 +\font\cfdJ=wcctd9 +\font\cfda=wcctda +\font\cfdb=wcctdb +\font\cfdc=wcctdc +\font\cfdd=wcctdd +\font\cfde=wcctde +\font\cfdf=wcctdf +\font\cfeA=wccte0 +\font\cfeB=wccte1 +\font\cfeC=wccte2 +\font\cfeD=wccte3 +\font\cfeE=wccte4 +\font\cfeF=wccte5 +\font\cfeG=wccte6 +\font\cfeH=wccte7 +\font\cfeI=wccte8 +\font\cfeJ=wccte9 +\font\cfea=wcctea +\font\cfeb=wccteb +\font\cfec=wcctec +\font\cfed=wccted +\font\cfee=wcctee +\font\cfef=wcctef +\font\cffA=wcctf0 +\font\cffB=wcctf1 +\font\cffC=wcctf2 +\font\cffD=wcctf3 +\font\cffE=wcctf4 +\font\cffF=wcctf5 +\font\cffG=wcctf6 +\font\cffH=wcctf7 +\font\cffI=wcctf8 +% +% a flag to show whether 1st byte of 2-byte pair has been read +\newif\ifchifontset +\chifontsetfalse % no, it hasn't yet been read +% +% our fonts are portmanteaus containing two different sizes, +% set up machinery for picking one or another size +\newif\ifbigC +\bigCfalse % no, we are not printing big Chinese now +\def\cglue{\hskip0pt plus.5pt} +\newcount\Cchar +% +\def\cchar#1{\Cchar=#1\ifbigC\advance\Cchar by -128\fi\char\the\Cchar} +% define a general macro for handling Chinese characters +\def\chichar#1#2{\ifchifontset\cchar{#1}\restorefont\discretionary{}{}{}\cglue\chifontsetfalse\else\chifontsettrue\edef\restorefont{\the\font}#2\fi} +% define a special macro for those characters which can only be 2nd of 2 bytes +\def\chichr#1{\ifchifontset\cchar{#1}\restorefont\chifontsetfalse\else\message{!pmC! character #1 out of context!}\fi} +% define macros for the individual characters +% each character sets a) a current font, or b) its character in the current font +% depending on ifchifontset +% do chinese within a local group so that other schemes for +% using chars in range 128+ might be used elsewhere, e.g. Sanskrit, you-name-it +% +\def\chiactive{ +\catcode`\^^a0=\active +\catcode`\^^a1=\active +\catcode`\^^a2=\active +\catcode`\^^a3=\active +\catcode`\^^a4=\active +\catcode`\^^a5=\active +\catcode`\^^a6=\active +\catcode`\^^a7=\active +\catcode`\^^a8=\active +\catcode`\^^a9=\active +\catcode`\^^aa=\active +\catcode`\^^ab=\active +\catcode`\^^ac=\active +\catcode`\^^ad=\active +\catcode`\^^ae=\active +\catcode`\^^af=\active +\catcode`\^^b0=\active +\catcode`\^^b1=\active +\catcode`\^^b2=\active +\catcode`\^^b3=\active +\catcode`\^^b4=\active +\catcode`\^^b5=\active +\catcode`\^^b6=\active +\catcode`\^^b7=\active +\catcode`\^^b8=\active +\catcode`\^^b9=\active +\catcode`\^^ba=\active +\catcode`\^^bb=\active +\catcode`\^^bc=\active +\catcode`\^^bd=\active +\catcode`\^^be=\active +\catcode`\^^bf=\active +\catcode`\^^c0=\active +\catcode`\^^c1=\active +\catcode`\^^c2=\active +\catcode`\^^c3=\active +\catcode`\^^c4=\active +\catcode`\^^c5=\active +\catcode`\^^c6=\active +\catcode`\^^c7=\active +\catcode`\^^c8=\active +\catcode`\^^c9=\active +\catcode`\^^ca=\active +\catcode`\^^cb=\active +\catcode`\^^cc=\active +\catcode`\^^cd=\active +\catcode`\^^ce=\active +\catcode`\^^cf=\active +\catcode`\^^d0=\active +\catcode`\^^d1=\active +\catcode`\^^d2=\active +\catcode`\^^d3=\active +\catcode`\^^d4=\active +\catcode`\^^d5=\active +\catcode`\^^d6=\active +\catcode`\^^d7=\active +\catcode`\^^d8=\active +\catcode`\^^d9=\active +\catcode`\^^da=\active +\catcode`\^^db=\active +\catcode`\^^dc=\active +\catcode`\^^dd=\active +\catcode`\^^de=\active +\catcode`\^^df=\active +\catcode`\^^e0=\active +\catcode`\^^e1=\active +\catcode`\^^e2=\active +\catcode`\^^e3=\active +\catcode`\^^e4=\active +\catcode`\^^e5=\active +\catcode`\^^e6=\active +\catcode`\^^e7=\active +\catcode`\^^e8=\active +\catcode`\^^e9=\active +\catcode`\^^ea=\active +\catcode`\^^eb=\active +\catcode`\^^ec=\active +\catcode`\^^ed=\active +\catcode`\^^ee=\active +\catcode`\^^ef=\active +\catcode`\^^f0=\active +\catcode`\^^f1=\active +\catcode`\^^f2=\active +\catcode`\^^f3=\active +\catcode`\^^f4=\active +\catcode`\^^f5=\active +\catcode`\^^f6=\active +\catcode`\^^f7=\active +\catcode`\^^f8=\active +\catcode`\^^f9=\active +\catcode`\^^fa=\active +\catcode`\^^fb=\active +\catcode`\^^fc=\active +\catcode`\^^fd=\active +\catcode`\^^fe=\active +\catcode`\^^ff=\active +} +\def\inactive{ +\catcode`\^^a0=12 +\catcode`\^^a1=12 +\catcode`\^^a2=12 +\catcode`\^^a3=12 +\catcode`\^^a4=12 +\catcode`\^^a5=12 +\catcode`\^^a6=12 +\catcode`\^^a7=12 +\catcode`\^^a8=12 +\catcode`\^^a9=12 +\catcode`\^^aa=12 +\catcode`\^^ab=12 +\catcode`\^^ac=12 +\catcode`\^^ad=12 +\catcode`\^^ae=12 +\catcode`\^^af=12 +\catcode`\^^b0=12 +\catcode`\^^b1=12 +\catcode`\^^b2=12 +\catcode`\^^b3=12 +\catcode`\^^b4=12 +\catcode`\^^b5=12 +\catcode`\^^b6=12 +\catcode`\^^b7=12 +\catcode`\^^b8=12 +\catcode`\^^b9=12 +\catcode`\^^ba=12 +\catcode`\^^bb=12 +\catcode`\^^bc=12 +\catcode`\^^bd=12 +\catcode`\^^be=12 +\catcode`\^^bf=12 +\catcode`\^^c0=12 +\catcode`\^^c1=12 +\catcode`\^^c2=12 +\catcode`\^^c3=12 +\catcode`\^^c4=12 +\catcode`\^^c5=12 +\catcode`\^^c6=12 +\catcode`\^^c7=12 +\catcode`\^^c8=12 +\catcode`\^^c9=12 +\catcode`\^^ca=12 +\catcode`\^^cb=12 +\catcode`\^^cc=12 +\catcode`\^^cd=12 +\catcode`\^^ce=12 +\catcode`\^^cf=12 +\catcode`\^^d0=12 +\catcode`\^^d1=12 +\catcode`\^^d2=12 +\catcode`\^^d3=12 +\catcode`\^^d4=12 +\catcode`\^^d5=12 +\catcode`\^^d6=12 +\catcode`\^^d7=12 +\catcode`\^^d8=12 +\catcode`\^^d9=12 +\catcode`\^^da=12 +\catcode`\^^db=12 +\catcode`\^^dc=12 +\catcode`\^^dd=12 +\catcode`\^^de=12 +\catcode`\^^df=12 +\catcode`\^^e0=12 +\catcode`\^^e1=12 +\catcode`\^^e2=12 +\catcode`\^^e3=12 +\catcode`\^^e4=12 +\catcode`\^^e5=12 +\catcode`\^^e6=12 +\catcode`\^^e7=12 +\catcode`\^^e8=12 +\catcode`\^^e9=12 +\catcode`\^^ea=12 +\catcode`\^^eb=12 +\catcode`\^^ec=12 +\catcode`\^^ed=12 +\catcode`\^^ee=12 +\catcode`\^^ef=12 +\catcode`\^^f0=12 +\catcode`\^^f1=12 +\catcode`\^^f2=12 +\catcode`\^^f3=12 +\catcode`\^^f4=12 +\catcode`\^^f5=12 +\catcode`\^^f6=12 +\catcode`\^^f7=12 +\catcode`\^^f8=12 +\catcode`\^^f9=12 +\catcode`\^^fa=12 +\catcode`\^^fb=12 +\catcode`\^^fc=12 +\catcode`\^^fd=12 +\catcode`\^^fe=12 +\catcode`\^^ff=12 +} +% +\def\endchinese{\endgroup} +% +\chiactive %switch on characters so we can define the macros with them active +\def\beginchinese{\begingroup\chiactive +% make characters used in GB/JIS encoding active so they can become macros +% always end the line after saying \beginchinese +% any characters on the same line will have already been read with +% their non-chinese meanings +\def^^a0{\chichar{160}{\cfaA}}% +\def^^a1{\chichar{161}{\cfaB}}% +\def^^a2{\chichar{162}{\cfaC}}% +\def^^a3{\chichar{163}{\cfaD}}% +\def^^a4{\chichar{164}{\cfaE}}% +\def^^a5{\chichar{165}{\cfaF}}% +\def^^a6{\chichar{166}{\cfaG}}% +\def^^a7{\chichar{167}{\cfaH}}% +\def^^a8{\chichar{168}{\cfaI}}% +\def^^a9{\chichar{169}{\cfaJ}}% +\def^^aa{\chichar{170}{\cfaa}}% +\def^^ab{\chichar{171}{\cfab}}% +\def^^ac{\chichar{172}{\cfac}}% +\def^^ad{\chichar{173}{\cfad}}% +\def^^ae{\chichar{174}{\cfae}}% +\def^^af{\chichar{175}{\cfaf}}% +\def^^b0{\chichar{176}{\cfbA}}% +\def^^b1{\chichar{177}{\cfbB}}% +\def^^b2{\chichar{178}{\cfbC}}% +\def^^b3{\chichar{179}{\cfbD}}% +\def^^b4{\chichar{180}{\cfbE}}% +\def^^b5{\chichar{181}{\cfbF}}% +\def^^b6{\chichar{182}{\cfbG}}% +\def^^b7{\chichar{183}{\cfbH}}% +\def^^b8{\chichar{184}{\cfbI}}% +\def^^b9{\chichar{185}{\cfbJ}}% +\def^^ba{\chichar{186}{\cfba}}% +\def^^bb{\chichar{187}{\cfbb}}% +\def^^bc{\chichar{188}{\cfbc}}% +\def^^bd{\chichar{189}{\cfbd}}% +\def^^be{\chichar{190}{\cfbe}}% +\def^^bf{\chichar{191}{\cfbf}}% +\def^^c0{\chichar{192}{\cfcA}}% +\def^^c1{\chichar{193}{\cfcB}}% +\def^^c2{\chichar{194}{\cfcC}}% +\def^^c3{\chichar{195}{\cfcD}}% +\def^^c4{\chichar{196}{\cfcE}}% +\def^^c5{\chichar{197}{\cfcF}}% +\def^^c6{\chichar{198}{\cfcG}}% +\def^^c7{\chichar{199}{\cfcH}}% +\def^^c8{\chichar{200}{\cfcI}}% +\def^^c9{\chichar{201}{\cfcJ}}% +\def^^ca{\chichar{202}{\cfca}}% +\def^^cb{\chichar{203}{\cfcb}}% +\def^^cc{\chichar{204}{\cfcc}}% +\def^^cd{\chichar{205}{\cfcd}}% +\def^^ce{\chichar{206}{\cfce}}% +\def^^cf{\chichar{207}{\cfcf}}% +\def^^d0{\chichar{208}{\cfdA}}% +\def^^d1{\chichar{209}{\cfdB}}% +\def^^d2{\chichar{210}{\cfdC}}% +\def^^d3{\chichar{211}{\cfdD}}% +\def^^d4{\chichar{212}{\cfdE}}% +\def^^d5{\chichar{213}{\cfdF}}% +\def^^d6{\chichar{214}{\cfdG}}% +\def^^d7{\chichar{215}{\cfdH}}% +\def^^d8{\chichar{216}{\cfdI}}% +\def^^d9{\chichar{217}{\cfdJ}}% +\def^^da{\chichar{218}{\cfda}}% +\def^^db{\chichar{219}{\cfdb}}% +\def^^dc{\chichar{220}{\cfdc}}% +\def^^dd{\chichar{221}{\cfdd}}% +\def^^de{\chichar{222}{\cfde}}% +\def^^df{\chichar{223}{\cfdf}}% +\def^^e0{\chichar{224}{\cfeA}}% +\def^^e1{\chichar{225}{\cfeB}}% +\def^^e2{\chichar{226}{\cfeC}}% +\def^^e3{\chichar{227}{\cfeD}}% +\def^^e4{\chichar{228}{\cfeE}}% +\def^^e5{\chichar{229}{\cfeF}}% +\def^^e6{\chichar{230}{\cfeG}}% +\def^^e7{\chichar{231}{\cfeH}}% +\def^^e8{\chichar{232}{\cfeI}}% +\def^^e9{\chichar{233}{\cfeJ}}% +\def^^ea{\chichar{234}{\cfea}}% +\def^^eb{\chichar{235}{\cfeb}}% +\def^^ec{\chichar{236}{\cfec}}% +\def^^ed{\chichar{237}{\cfed}}% +\def^^ee{\chichar{238}{\cfee}}% +\def^^ef{\chichar{239}{\cfef}}% +\def^^f0{\chichar{240}{\cffA}}% +\def^^f1{\chichar{241}{\cffB}}% +\def^^f2{\chichar{242}{\cffC}}% +\def^^f3{\chichar{243}{\cffD}}% +\def^^f4{\chichar{244}{\cffE}}% +\def^^f5{\chichar{245}{\cffF}}% +\def^^f6{\chichar{246}{\cffG}}% +\def^^f7{\chichar{247}{\cffH}}% +\def^^f8{\chichr{248}}% +\def^^f9{\chichr{249}}% +\def^^fa{\chichr{250}}% +\def^^fb{\chichr{251}}% +\def^^fc{\chichr{252}}% +\def^^fd{\chichr{253}}% +\def^^fe{\chichr{254}}% +\def^^ff{\chichr{255}}}% that was the end of the \def for \beginchinese +% these below might be convenient to use for user-defined characters +%\def^^f9{\chichar{249}{\cffJ}} +%\def^^fa{\chichar{250}{\cffa}} +%\def^^fb{\chichar{251}{\cffb}} +%\def^^fc{\chichar{252}{\cffc}} +%\def^^fd{\chichar{253}{\cffd}} +%\def^^fe{\chichar{254}{\cffe}} +%\def^^ff{\chichar{255}{\cfff}} +\inactive % switch the active characters back off until they are needed diff --git a/fonts/poorman/pmCs.tex b/fonts/poorman/pmCs.tex new file mode 100644 index 0000000000..96553b9d75 --- /dev/null +++ b/fonts/poorman/pmCs.tex @@ -0,0 +1,431 @@ +% this is pmCs Poor Man's Chinese with simplified characters +% this software is placed in the public domain 12/3/1990 +% by Thomas B. Ridgeway and the Humanities and Arts Computing Center +% +% declare pmCs fonts stand by . . . this may take a while +\font\cfaB=wccsa1 +\font\cfaC=wccsa2 +\font\cfaD=wccsa3 +\font\cfaE=wccsa4 +\font\cfaF=wccsa5 +\font\cfaG=wccsa6 +\font\cfaH=wccsa7 +\font\cfaI=wccsa8 +\font\cfaJ=wccsa9 +\font\cfaa=wccsaa +\font\cfab=wccsab +\font\cfac=wccsac +\font\cfad=wccsad +\font\cfae=wccsae +\font\cfaf=wccsaf +\font\cfbA=wccsb0 +\font\cfbB=wccsb1 +\font\cfbC=wccsb2 +\font\cfbD=wccsb3 +\font\cfbE=wccsb4 +\font\cfbF=wccsb5 +\font\cfbG=wccsb6 +\font\cfbH=wccsb7 +\font\cfbI=wccsb8 +\font\cfbJ=wccsb9 +\font\cfba=wccsba +\font\cfbb=wccsbb +\font\cfbc=wccsbc +\font\cfbd=wccsbd +\font\cfbe=wccsbe +\font\cfbf=wccsbf +\font\cfcA=wccsc0 +\font\cfcB=wccsc1 +\font\cfcC=wccsc2 +\font\cfcD=wccsc3 +\font\cfcE=wccsc4 +\font\cfcF=wccsc5 +\font\cfcG=wccsc6 +\font\cfcH=wccsc7 +\font\cfcI=wccsc8 +\font\cfcJ=wccsc9 +\font\cfca=wccsca +\font\cfcb=wccscb +\font\cfcc=wccscc +\font\cfcd=wccscd +\font\cfce=wccsce +\font\cfcf=wccscf +\font\cfdA=wccsd0 +\font\cfdB=wccsd1 +\font\cfdC=wccsd2 +\font\cfdD=wccsd3 +\font\cfdE=wccsd4 +\font\cfdF=wccsd5 +\font\cfdG=wccsd6 +\font\cfdH=wccsd7 +\font\cfdI=wccsd8 +\font\cfdJ=wccsd9 +\font\cfda=wccsda +\font\cfdb=wccsdb +\font\cfdc=wccsdc +\font\cfdd=wccsdd +\font\cfde=wccsde +\font\cfdf=wccsdf +\font\cfeA=wccse0 +\font\cfeB=wccse1 +\font\cfeC=wccse2 +\font\cfeD=wccse3 +\font\cfeE=wccse4 +\font\cfeF=wccse5 +\font\cfeG=wccse6 +\font\cfeH=wccse7 +\font\cfeI=wccse8 +\font\cfeJ=wccse9 +\font\cfea=wccsea +\font\cfeb=wccseb +\font\cfec=wccsec +\font\cfed=wccsed +\font\cfee=wccsee +\font\cfef=wccsef +\font\cffA=wccsf0 +\font\cffB=wccsf1 +\font\cffC=wccsf2 +\font\cffD=wccsf3 +\font\cffE=wccsf4 +\font\cffF=wccsf5 +\font\cffG=wccsf6 +\font\cffH=wccsf7 +\font\cffI=wccsf8 +% +% a flag to show whether 1st byte of 2-byte pair has been read +\newif\ifchifontset +\chifontsetfalse % no, it hasn't yet been read +% +% our fonts are portmanteaus containing two different sizes, +% set up machinery for picking one or another size +\newif\ifbigC +\bigCfalse % no, we are not printing big Chinese now +\def\cglue{\hskip0pt plus.5pt} +\newcount\Cchar +% +\def\cchar#1{\Cchar=#1\ifbigC\advance\Cchar by -128\fi\char\the\Cchar} +% define a general macro for handling Chinese characters +\def\chichar#1#2{\ifchifontset\cchar{#1}\restorefont\discretionary{}{}{}\cglue\chifontsetfalse\else\chifontsettrue\edef\restorefont{\the\font}#2\fi} +% define a special macro for those characters which can only be 2nd of 2 bytes +\def\chichr#1{\ifchifontset\cchar{#1}\restorefont\chifontsetfalse\else\message{!pmC! character #1 out of context!}\fi} +% define macros for the individual characters +% each character sets a) a current font, or b) its character in the current font +% depending on ifchifontset +% do chinese within a local group so that other schemes for +% using chars in range 128+ might be used elsewhere +% +\def\chiactive{ +\catcode`\^^a0=\active +\catcode`\^^a1=\active +\catcode`\^^a2=\active +\catcode`\^^a3=\active +\catcode`\^^a4=\active +\catcode`\^^a5=\active +\catcode`\^^a6=\active +\catcode`\^^a7=\active +\catcode`\^^a8=\active +\catcode`\^^a9=\active +\catcode`\^^aa=\active +\catcode`\^^ab=\active +\catcode`\^^ac=\active +\catcode`\^^ad=\active +\catcode`\^^ae=\active +\catcode`\^^af=\active +\catcode`\^^b0=\active +\catcode`\^^b1=\active +\catcode`\^^b2=\active +\catcode`\^^b3=\active +\catcode`\^^b4=\active +\catcode`\^^b5=\active +\catcode`\^^b6=\active +\catcode`\^^b7=\active +\catcode`\^^b8=\active +\catcode`\^^b9=\active +\catcode`\^^ba=\active +\catcode`\^^bb=\active +\catcode`\^^bc=\active +\catcode`\^^bd=\active +\catcode`\^^be=\active +\catcode`\^^bf=\active +\catcode`\^^c0=\active +\catcode`\^^c1=\active +\catcode`\^^c2=\active +\catcode`\^^c3=\active +\catcode`\^^c4=\active +\catcode`\^^c5=\active +\catcode`\^^c6=\active +\catcode`\^^c7=\active +\catcode`\^^c8=\active +\catcode`\^^c9=\active +\catcode`\^^ca=\active +\catcode`\^^cb=\active +\catcode`\^^cc=\active +\catcode`\^^cd=\active +\catcode`\^^ce=\active +\catcode`\^^cf=\active +\catcode`\^^d0=\active +\catcode`\^^d1=\active +\catcode`\^^d2=\active +\catcode`\^^d3=\active +\catcode`\^^d4=\active +\catcode`\^^d5=\active +\catcode`\^^d6=\active +\catcode`\^^d7=\active +\catcode`\^^d8=\active +\catcode`\^^d9=\active +\catcode`\^^da=\active +\catcode`\^^db=\active +\catcode`\^^dc=\active +\catcode`\^^dd=\active +\catcode`\^^de=\active +\catcode`\^^df=\active +\catcode`\^^e0=\active +\catcode`\^^e1=\active +\catcode`\^^e2=\active +\catcode`\^^e3=\active +\catcode`\^^e4=\active +\catcode`\^^e5=\active +\catcode`\^^e6=\active +\catcode`\^^e7=\active +\catcode`\^^e8=\active +\catcode`\^^e9=\active +\catcode`\^^ea=\active +\catcode`\^^eb=\active +\catcode`\^^ec=\active +\catcode`\^^ed=\active +\catcode`\^^ee=\active +\catcode`\^^ef=\active +\catcode`\^^f0=\active +\catcode`\^^f1=\active +\catcode`\^^f2=\active +\catcode`\^^f3=\active +\catcode`\^^f4=\active +\catcode`\^^f5=\active +\catcode`\^^f6=\active +\catcode`\^^f7=\active +\catcode`\^^f8=\active +\catcode`\^^f9=\active +\catcode`\^^fa=\active +\catcode`\^^fb=\active +\catcode`\^^fc=\active +\catcode`\^^fd=\active +\catcode`\^^fe=\active +\catcode`\^^ff=\active +} +\def\inactive{ +\catcode`\^^a0=12 +\catcode`\^^a1=12 +\catcode`\^^a2=12 +\catcode`\^^a3=12 +\catcode`\^^a4=12 +\catcode`\^^a5=12 +\catcode`\^^a6=12 +\catcode`\^^a7=12 +\catcode`\^^a8=12 +\catcode`\^^a9=12 +\catcode`\^^aa=12 +\catcode`\^^ab=12 +\catcode`\^^ac=12 +\catcode`\^^ad=12 +\catcode`\^^ae=12 +\catcode`\^^af=12 +\catcode`\^^b0=12 +\catcode`\^^b1=12 +\catcode`\^^b2=12 +\catcode`\^^b3=12 +\catcode`\^^b4=12 +\catcode`\^^b5=12 +\catcode`\^^b6=12 +\catcode`\^^b7=12 +\catcode`\^^b8=12 +\catcode`\^^b9=12 +\catcode`\^^ba=12 +\catcode`\^^bb=12 +\catcode`\^^bc=12 +\catcode`\^^bd=12 +\catcode`\^^be=12 +\catcode`\^^bf=12 +\catcode`\^^c0=12 +\catcode`\^^c1=12 +\catcode`\^^c2=12 +\catcode`\^^c3=12 +\catcode`\^^c4=12 +\catcode`\^^c5=12 +\catcode`\^^c6=12 +\catcode`\^^c7=12 +\catcode`\^^c8=12 +\catcode`\^^c9=12 +\catcode`\^^ca=12 +\catcode`\^^cb=12 +\catcode`\^^cc=12 +\catcode`\^^cd=12 +\catcode`\^^ce=12 +\catcode`\^^cf=12 +\catcode`\^^d0=12 +\catcode`\^^d1=12 +\catcode`\^^d2=12 +\catcode`\^^d3=12 +\catcode`\^^d4=12 +\catcode`\^^d5=12 +\catcode`\^^d6=12 +\catcode`\^^d7=12 +\catcode`\^^d8=12 +\catcode`\^^d9=12 +\catcode`\^^da=12 +\catcode`\^^db=12 +\catcode`\^^dc=12 +\catcode`\^^dd=12 +\catcode`\^^de=12 +\catcode`\^^df=12 +\catcode`\^^e0=12 +\catcode`\^^e1=12 +\catcode`\^^e2=12 +\catcode`\^^e3=12 +\catcode`\^^e4=12 +\catcode`\^^e5=12 +\catcode`\^^e6=12 +\catcode`\^^e7=12 +\catcode`\^^e8=12 +\catcode`\^^e9=12 +\catcode`\^^ea=12 +\catcode`\^^eb=12 +\catcode`\^^ec=12 +\catcode`\^^ed=12 +\catcode`\^^ee=12 +\catcode`\^^ef=12 +\catcode`\^^f0=12 +\catcode`\^^f1=12 +\catcode`\^^f2=12 +\catcode`\^^f3=12 +\catcode`\^^f4=12 +\catcode`\^^f5=12 +\catcode`\^^f6=12 +\catcode`\^^f7=12 +\catcode`\^^f8=12 +\catcode`\^^f9=12 +\catcode`\^^fa=12 +\catcode`\^^fb=12 +\catcode`\^^fc=12 +\catcode`\^^fd=12 +\catcode`\^^fe=12 +\catcode`\^^ff=12 +} +% +\def\endchinese{\endgroup} +% +\chiactive %switch on characters so we can define the macros with them active +\def\beginchinese{\begingroup\chiactive +% make characters used in GB/JIS encoding active so they can become macros +% always end the line after saying \beginchinese +% any characters on the same line will have already been read with +% their non-chinese meanings +\def^^a0{\chichar{160}{\cfaA}}% +\def^^a1{\chichar{161}{\cfaB}}% +\def^^a2{\chichar{162}{\cfaC}}% +\def^^a3{\chichar{163}{\cfaD}}% +\def^^a4{\chichar{164}{\cfaE}}% +\def^^a5{\chichar{165}{\cfaF}}% +\def^^a6{\chichar{166}{\cfaG}}% +\def^^a7{\chichar{167}{\cfaH}}% +\def^^a8{\chichar{168}{\cfaI}}% +\def^^a9{\chichar{169}{\cfaJ}}% +\def^^aa{\chichar{170}{\cfaa}}% +\def^^ab{\chichar{171}{\cfab}}% +\def^^ac{\chichar{172}{\cfac}}% +\def^^ad{\chichar{173}{\cfad}}% +\def^^ae{\chichar{174}{\cfae}}% +\def^^af{\chichar{175}{\cfaf}}% +\def^^b0{\chichar{176}{\cfbA}}% +\def^^b1{\chichar{177}{\cfbB}}% +\def^^b2{\chichar{178}{\cfbC}}% +\def^^b3{\chichar{179}{\cfbD}}% +\def^^b4{\chichar{180}{\cfbE}}% +\def^^b5{\chichar{181}{\cfbF}}% +\def^^b6{\chichar{182}{\cfbG}}% +\def^^b7{\chichar{183}{\cfbH}}% +\def^^b8{\chichar{184}{\cfbI}}% +\def^^b9{\chichar{185}{\cfbJ}}% +\def^^ba{\chichar{186}{\cfba}}% +\def^^bb{\chichar{187}{\cfbb}}% +\def^^bc{\chichar{188}{\cfbc}}% +\def^^bd{\chichar{189}{\cfbd}}% +\def^^be{\chichar{190}{\cfbe}}% +\def^^bf{\chichar{191}{\cfbf}}% +\def^^c0{\chichar{192}{\cfcA}}% +\def^^c1{\chichar{193}{\cfcB}}% +\def^^c2{\chichar{194}{\cfcC}}% +\def^^c3{\chichar{195}{\cfcD}}% +\def^^c4{\chichar{196}{\cfcE}}% +\def^^c5{\chichar{197}{\cfcF}}% +\def^^c6{\chichar{198}{\cfcG}}% +\def^^c7{\chichar{199}{\cfcH}}% +\def^^c8{\chichar{200}{\cfcI}}% +\def^^c9{\chichar{201}{\cfcJ}}% +\def^^ca{\chichar{202}{\cfca}}% +\def^^cb{\chichar{203}{\cfcb}}% +\def^^cc{\chichar{204}{\cfcc}}% +\def^^cd{\chichar{205}{\cfcd}}% +\def^^ce{\chichar{206}{\cfce}}% +\def^^cf{\chichar{207}{\cfcf}}% +\def^^d0{\chichar{208}{\cfdA}}% +\def^^d1{\chichar{209}{\cfdB}}% +\def^^d2{\chichar{210}{\cfdC}}% +\def^^d3{\chichar{211}{\cfdD}}% +\def^^d4{\chichar{212}{\cfdE}}% +\def^^d5{\chichar{213}{\cfdF}}% +\def^^d6{\chichar{214}{\cfdG}}% +\def^^d7{\chichar{215}{\cfdH}}% +\def^^d8{\chichar{216}{\cfdI}}% +\def^^d9{\chichar{217}{\cfdJ}}% +\def^^da{\chichar{218}{\cfda}}% +\def^^db{\chichar{219}{\cfdb}}% +\def^^dc{\chichar{220}{\cfdc}}% +\def^^dd{\chichar{221}{\cfdd}}% +\def^^de{\chichar{222}{\cfde}}% +\def^^df{\chichar{223}{\cfdf}}% +\def^^e0{\chichar{224}{\cfeA}}% +\def^^e1{\chichar{225}{\cfeB}}% +\def^^e2{\chichar{226}{\cfeC}}% +\def^^e3{\chichar{227}{\cfeD}}% +\def^^e4{\chichar{228}{\cfeE}}% +\def^^e5{\chichar{229}{\cfeF}}% +\def^^e6{\chichar{230}{\cfeG}}% +\def^^e7{\chichar{231}{\cfeH}}% +\def^^e8{\chichar{232}{\cfeI}}% +\def^^e9{\chichar{233}{\cfeJ}}% +\def^^ea{\chichar{234}{\cfea}}% +\def^^eb{\chichar{235}{\cfeb}}% +\def^^ec{\chichar{236}{\cfec}}% +\def^^ed{\chichar{237}{\cfed}}% +\def^^ee{\chichar{238}{\cfee}}% +\def^^ef{\chichar{239}{\cfef}}% +\def^^f0{\chichar{240}{\cffA}}% +\def^^f1{\chichar{241}{\cffB}}% +\def^^f2{\chichar{242}{\cffC}}% +\def^^f3{\chichar{243}{\cffD}}% +\def^^f4{\chichar{244}{\cffE}}% +\def^^f5{\chichar{245}{\cffF}}% +\def^^f6{\chichar{246}{\cffG}}% +\def^^f7{\chichar{247}{\cffH}}% +\def^^f8{\chichr{248}}% +\def^^f9{\chichr{249}}% +\def^^fa{\chichr{250}}% +\def^^fb{\chichr{251}}% +\def^^fc{\chichr{252}}% +\def^^fd{\chichr{253}}% +\def^^fe{\chichr{254}}% +\def^^ff{\chichr{255}}}% that was the end of the \def for \beginchinese +% these below might be convenient to use for user-defined characters +%\def^^f9{\chichar{249}{\cffJ}} +%\def^^fa{\chichar{250}{\cffa}} +%\def^^fb{\chichar{251}{\cffb}} +%\def^^fc{\chichar{252}{\cffc}} +%\def^^fd{\chichar{253}{\cffd}} +%\def^^fe{\chichar{254}{\cffe}} +%\def^^ff{\chichar{255}{\cfff}} +\inactive % switch the active characters back off until they are needed + + + + + diff --git a/fonts/poorman/pmJ.tex b/fonts/poorman/pmJ.tex new file mode 100644 index 0000000000..328e5c9d0b --- /dev/null +++ b/fonts/poorman/pmJ.tex @@ -0,0 +1,429 @@ +% This is PMJ.TEX ``Poor Man's Japanese'' for TeX +% placed in the public domain 12/3/1990 Thomas B. Ridgeway and the +% Humanities and Arts Computing Center +% +% declare pmJ fonts stand by . . . this may take a while +\font\jfaB=wjisa1 +\font\jfaC=wjisa2 +\font\jfaD=wjisa3 +\font\jfaE=wjisa4 +\font\jfaF=wjisa5 +\font\jfaG=wjisa6 +\font\jfaH=wjisa7 +\font\jfaI=wjisa8 +\font\jfaJ=wjisa9 +\font\jfaa=wjisaa +\font\jfab=wjisab +\font\jfac=wjisac +\font\jfad=wjisad +\font\jfae=wjisae +\font\jfaf=wjisaf +\font\jfbA=wjisb0 +\font\jfbB=wjisb1 +\font\jfbC=wjisb2 +\font\jfbD=wjisb3 +\font\jfbE=wjisb4 +\font\jfbF=wjisb5 +\font\jfbG=wjisb6 +\font\jfbH=wjisb7 +\font\jfbI=wjisb8 +\font\jfbJ=wjisb9 +\font\jfba=wjisba +\font\jfbb=wjisbb +\font\jfbc=wjisbc +\font\jfbd=wjisbd +\font\jfbe=wjisbe +\font\jfbf=wjisbf +\font\jfcA=wjisc0 +\font\jfcB=wjisc1 +\font\jfcC=wjisc2 +\font\jfcD=wjisc3 +\font\jfcE=wjisc4 +\font\jfcF=wjisc5 +\font\jfcG=wjisc6 +\font\jfcH=wjisc7 +\font\jfcI=wjisc8 +\font\jfcJ=wjisc9 +\font\jfca=wjisca +\font\jfcb=wjiscb +\font\jfcc=wjiscc +\font\jfcd=wjiscd +\font\jfce=wjisce +\font\jfcf=wjiscf +\font\jfdA=wjisd0 +\font\jfdB=wjisd1 +\font\jfdC=wjisd2 +\font\jfdD=wjisd3 +\font\jfdE=wjisd4 +\font\jfdF=wjisd5 +\font\jfdG=wjisd6 +\font\jfdH=wjisd7 +\font\jfdI=wjisd8 +\font\jfdJ=wjisd9 +\font\jfda=wjisda +\font\jfdb=wjisdb +\font\jfdc=wjisdc +\font\jfdd=wjisdd +\font\jfde=wjisde +\font\jfdf=wjisdf +\font\jfeA=wjise0 +\font\jfeB=wjise1 +\font\jfeC=wjise2 +\font\jfeD=wjise3 +\font\jfeE=wjise4 +\font\jfeF=wjise5 +\font\jfeG=wjise6 +\font\jfeH=wjise7 +\font\jfeI=wjise8 +\font\jfeJ=wjise9 +\font\jfea=wjisea +\font\jfeb=wjiseb +\font\jfec=wjisec +\font\jfed=wjised +\font\jfee=wjisee +\font\jfef=wjisef +\font\jffA=wjisf0 +\font\jffB=wjisf1 +\font\jffC=wjisf2 +\font\jffD=wjisf3 +\font\jffE=wjisf4 +%\font\jffF=wjisf5 +%\font\jffG=wjisf6 +%\font\jffH=wjisf7 +%\font\jffI=wjisf8 +% +% a flag to show whether 1st byte of 2-byte pair has been read +\newif\ifjisfontset +\jisfontsetfalse % no, it hasn't yet been read +% our fonts are portmanteaus containing two different sizes, +% set up machinery for picking one or another size +\newif\ifbigJ +\bigJfalse % no, we are not printing big Japanese now +\def\jglue{\hskip0pt plus.5pt} +\newcount\Jchar +% +\def\jchar#1{\Jchar=#1\ifbigJ\advance\Jchar by -128\fi\char\the\Jchar} +% define a general macro for handling Japanese characters +\def\jischar#1#2{\ifjisfontset\jchar{#1}\restorefont\discretionary{}{}{}\jglue\jisfontsetfalse\else\jisfontsettrue\edef\restorefont{\the\font}#2\fi} +% define a special macro for those characters which can only be 2nd of 2 bytes +\def\jischr#1{\ifjisfontset\jchar{#1}\restorefont\jisfontsetfalse\else\message{!pmJ! character #1 out of context!}\fi} +% define macros for the individual characters +% each character sets a) a current font, or b) its character in the current font +% depending on ifjisfontset +% do Japanese within a local group so that other schemes for +% using chars in range 128+ might be used elsewhere +% +\def\jisactive{% +\catcode`\^^a0=\active% +\catcode`\^^a1=\active% +\catcode`\^^a2=\active% +\catcode`\^^a3=\active% +\catcode`\^^a4=\active% +\catcode`\^^a5=\active% +\catcode`\^^a6=\active% +\catcode`\^^a7=\active% +\catcode`\^^a8=\active% +\catcode`\^^a9=\active% +\catcode`\^^aa=\active% +\catcode`\^^ab=\active% +\catcode`\^^ac=\active% +\catcode`\^^ad=\active% +\catcode`\^^ae=\active% +\catcode`\^^af=\active% +\catcode`\^^b0=\active% +\catcode`\^^b1=\active% +\catcode`\^^b2=\active% +\catcode`\^^b3=\active% +\catcode`\^^b4=\active% +\catcode`\^^b5=\active% +\catcode`\^^b6=\active% +\catcode`\^^b7=\active% +\catcode`\^^b8=\active% +\catcode`\^^b9=\active% +\catcode`\^^ba=\active% +\catcode`\^^bb=\active% +\catcode`\^^bc=\active% +\catcode`\^^bd=\active% +\catcode`\^^be=\active% +\catcode`\^^bf=\active% +\catcode`\^^c0=\active% +\catcode`\^^c1=\active% +\catcode`\^^c2=\active% +\catcode`\^^c3=\active% +\catcode`\^^c4=\active% +\catcode`\^^c5=\active% +\catcode`\^^c6=\active% +\catcode`\^^c7=\active% +\catcode`\^^c8=\active% +\catcode`\^^c9=\active% +\catcode`\^^ca=\active% +\catcode`\^^cb=\active% +\catcode`\^^cc=\active% +\catcode`\^^cd=\active% +\catcode`\^^ce=\active% +\catcode`\^^cf=\active% +\catcode`\^^d0=\active% +\catcode`\^^d1=\active% +\catcode`\^^d2=\active% +\catcode`\^^d3=\active% +\catcode`\^^d4=\active% +\catcode`\^^d5=\active% +\catcode`\^^d6=\active% +\catcode`\^^d7=\active% +\catcode`\^^d8=\active% +\catcode`\^^d9=\active% +\catcode`\^^da=\active% +\catcode`\^^db=\active% +\catcode`\^^dc=\active% +\catcode`\^^dd=\active% +\catcode`\^^de=\active% +\catcode`\^^df=\active% +\catcode`\^^e0=\active% +\catcode`\^^e1=\active% +\catcode`\^^e2=\active% +\catcode`\^^e3=\active% +\catcode`\^^e4=\active% +\catcode`\^^e5=\active% +\catcode`\^^e6=\active% +\catcode`\^^e7=\active% +\catcode`\^^e8=\active% +\catcode`\^^e9=\active% +\catcode`\^^ea=\active% +\catcode`\^^eb=\active% +\catcode`\^^ec=\active% +\catcode`\^^ed=\active% +\catcode`\^^ee=\active% +\catcode`\^^ef=\active% +\catcode`\^^f0=\active% +\catcode`\^^f1=\active% +\catcode`\^^f2=\active% +\catcode`\^^f3=\active% +\catcode`\^^f4=\active% +\catcode`\^^f5=\active% +\catcode`\^^f6=\active% +\catcode`\^^f7=\active% +\catcode`\^^f8=\active% +\catcode`\^^f9=\active% +\catcode`\^^fa=\active% +\catcode`\^^fb=\active% +\catcode`\^^fc=\active% +\catcode`\^^fd=\active% +\catcode`\^^fe=\active% +\catcode`\^^ff=\active% +} +\def\inactive{% +\catcode`\^^a0=12% +\catcode`\^^a1=12% +\catcode`\^^a2=12% +\catcode`\^^a3=12% +\catcode`\^^a4=12% +\catcode`\^^a5=12% +\catcode`\^^a6=12% +\catcode`\^^a7=12% +\catcode`\^^a8=12% +\catcode`\^^a9=12% +\catcode`\^^aa=12% +\catcode`\^^ab=12% +\catcode`\^^ac=12% +\catcode`\^^ad=12% +\catcode`\^^ae=12% +\catcode`\^^af=12% +\catcode`\^^b0=12% +\catcode`\^^b1=12% +\catcode`\^^b2=12% +\catcode`\^^b3=12% +\catcode`\^^b4=12% +\catcode`\^^b5=12% +\catcode`\^^b6=12% +\catcode`\^^b7=12% +\catcode`\^^b8=12% +\catcode`\^^b9=12% +\catcode`\^^ba=12% +\catcode`\^^bb=12% +\catcode`\^^bc=12% +\catcode`\^^bd=12% +\catcode`\^^be=12% +\catcode`\^^bf=12% +\catcode`\^^c0=12% +\catcode`\^^c1=12% +\catcode`\^^c2=12% +\catcode`\^^c3=12% +\catcode`\^^c4=12% +\catcode`\^^c5=12% +\catcode`\^^c6=12% +\catcode`\^^c7=12% +\catcode`\^^c8=12% +\catcode`\^^c9=12% +\catcode`\^^ca=12% +\catcode`\^^cb=12% +\catcode`\^^cc=12% +\catcode`\^^cd=12% +\catcode`\^^ce=12% +\catcode`\^^cf=12% +\catcode`\^^d0=12% +\catcode`\^^d1=12% +\catcode`\^^d2=12% +\catcode`\^^d3=12% +\catcode`\^^d4=12% +\catcode`\^^d5=12% +\catcode`\^^d6=12% +\catcode`\^^d7=12% +\catcode`\^^d8=12% +\catcode`\^^d9=12% +\catcode`\^^da=12% +\catcode`\^^db=12% +\catcode`\^^dc=12% +\catcode`\^^dd=12% +\catcode`\^^de=12% +\catcode`\^^df=12% +\catcode`\^^e0=12% +\catcode`\^^e1=12% +\catcode`\^^e2=12% +\catcode`\^^e3=12% +\catcode`\^^e4=12% +\catcode`\^^e5=12% +\catcode`\^^e6=12% +\catcode`\^^e7=12% +\catcode`\^^e8=12% +\catcode`\^^e9=12% +\catcode`\^^ea=12% +\catcode`\^^eb=12% +\catcode`\^^ec=12% +\catcode`\^^ed=12% +\catcode`\^^ee=12% +\catcode`\^^ef=12% +\catcode`\^^f0=12% +\catcode`\^^f1=12% +\catcode`\^^f2=12% +\catcode`\^^f3=12% +\catcode`\^^f4=12% +\catcode`\^^f5=12% +\catcode`\^^f6=12% +\catcode`\^^f7=12% +\catcode`\^^f8=12% +\catcode`\^^f9=12% +\catcode`\^^fa=12% +\catcode`\^^fb=12% +\catcode`\^^fc=12% +\catcode`\^^fd=12% +\catcode`\^^fe=12% +\catcode`\^^ff=12% +} +% +\def\endJapanese{\endgroup} +% +\jisactive %switch on characters so we can define the macros with them active +\def\beginJapanese{\begingroup\jisactive% +% make characters used in JIS encoding active so they can become macros +% always end the line after saying \beginJapanese +% any characters on the same line will have already been read with +% their non-Japanese meanings +\def^^a0{\jischar{160}{\jfaA}}% +\def^^a1{\jischar{161}{\jfaB}}% +\def^^a2{\jischar{162}{\jfaC}}% +\def^^a3{\jischar{163}{\jfaD}}% +\def^^a4{\jischar{164}{\jfaE}}% +\def^^a5{\jischar{165}{\jfaF}}% +\def^^a6{\jischar{166}{\jfaG}}% +\def^^a7{\jischar{167}{\jfaH}}% +\def^^a8{\jischar{168}{\jfaI}}% +\def^^a9{\jischar{169}{\jfaJ}}% +\def^^aa{\jischar{170}{\jfaa}}% +\def^^ab{\jischar{171}{\jfab}}% +\def^^ac{\jischar{172}{\jfac}}% +\def^^ad{\jischar{173}{\jfad}}% +\def^^ae{\jischar{174}{\jfae}}% +\def^^af{\jischar{175}{\jfaf}}% +\def^^b0{\jischar{176}{\jfbA}}% +\def^^b1{\jischar{177}{\jfbB}}% +\def^^b2{\jischar{178}{\jfbC}}% +\def^^b3{\jischar{179}{\jfbD}}% +\def^^b4{\jischar{180}{\jfbE}}% +\def^^b5{\jischar{181}{\jfbF}}% +\def^^b6{\jischar{182}{\jfbG}}% +\def^^b7{\jischar{183}{\jfbH}}% +\def^^b8{\jischar{184}{\jfbI}}% +\def^^b9{\jischar{185}{\jfbJ}}% +\def^^ba{\jischar{186}{\jfba}}% +\def^^bb{\jischar{187}{\jfbb}}% +\def^^bc{\jischar{188}{\jfbc}}% +\def^^bd{\jischar{189}{\jfbd}}% +\def^^be{\jischar{190}{\jfbe}}% +\def^^bf{\jischar{191}{\jfbf}}% +\def^^c0{\jischar{192}{\jfcA}}% +\def^^c1{\jischar{193}{\jfcB}}% +\def^^c2{\jischar{194}{\jfcC}}% +\def^^c3{\jischar{195}{\jfcD}}% +\def^^c4{\jischar{196}{\jfcE}}% +\def^^c5{\jischar{197}{\jfcF}}% +\def^^c6{\jischar{198}{\jfcG}}% +\def^^c7{\jischar{199}{\jfcH}}% +\def^^c8{\jischar{200}{\jfcI}}% +\def^^c9{\jischar{201}{\jfcJ}}% +\def^^ca{\jischar{202}{\jfca}}% +\def^^cb{\jischar{203}{\jfcb}}% +\def^^cc{\jischar{204}{\jfcc}}% +\def^^cd{\jischar{205}{\jfcd}}% +\def^^ce{\jischar{206}{\jfce}}% +\def^^cf{\jischar{207}{\jfcf}}% +\def^^d0{\jischar{208}{\jfdA}}% +\def^^d1{\jischar{209}{\jfdB}}% +\def^^d2{\jischar{210}{\jfdC}}% +\def^^d3{\jischar{211}{\jfdD}}% +\def^^d4{\jischar{212}{\jfdE}}% +\def^^d5{\jischar{213}{\jfdF}}% +\def^^d6{\jischar{214}{\jfdG}}% +\def^^d7{\jischar{215}{\jfdH}}% +\def^^d8{\jischar{216}{\jfdI}}% +\def^^d9{\jischar{217}{\jfdJ}}% +\def^^da{\jischar{218}{\jfda}}% +\def^^db{\jischar{219}{\jfdb}}% +\def^^dc{\jischar{220}{\jfdc}}% +\def^^dd{\jischar{221}{\jfdd}}% +\def^^de{\jischar{222}{\jfde}}% +\def^^df{\jischar{223}{\jfdf}}% +\def^^e0{\jischar{224}{\jfeA}}% +\def^^e1{\jischar{225}{\jfeB}}% +\def^^e2{\jischar{226}{\jfeC}}% +\def^^e3{\jischar{227}{\jfeD}}% +\def^^e4{\jischar{228}{\jfeE}}% +\def^^e5{\jischar{229}{\jfeF}}% +\def^^e6{\jischar{230}{\jfeG}}% +\def^^e7{\jischar{231}{\jfeH}}% +\def^^e8{\jischar{232}{\jfeI}}% +\def^^e9{\jischar{233}{\jfeJ}}% +\def^^ea{\jischar{234}{\jfea}}% +\def^^eb{\jischar{235}{\jfeb}}% +\def^^ec{\jischar{236}{\jfec}}% +\def^^ed{\jischar{237}{\jfed}}% +\def^^ee{\jischar{238}{\jfee}}% +\def^^ef{\jischar{239}{\jfef}}% +\def^^f0{\jischar{240}{\jffA}}% +\def^^f1{\jischar{241}{\jffB}}% +\def^^f2{\jischar{242}{\jffC}}% +\def^^f3{\jischar{243}{\jffD}}% +\def^^f4{\jischar{244}{\jffE}}% +\def^^f5{\jischr{245}}% +\def^^f6{\jischr{246}}% +\def^^f7{\jischr{247}}% +\def^^f8{\jischr{248}}% +\def^^f9{\jischr{249}}% +\def^^fa{\jischr{250}}% +\def^^fb{\jischr{251}}% +\def^^fc{\jischr{252}}% +\def^^fd{\jischr{253}}% +\def^^fe{\jischr{254}}% +\def^^ff{\jischr{255}}} % that was the end of the \def for \beginJapanese +% these below might be convenient to use for user-defined characters +%\def^^f5{\jischar{245}{\jffF}}% +%\def^^f6{\jischar{246}{\jffG}}% +%\def^^f7{\jischar{247}{\jffH}}% +%\def^^f9{\jischar{249}{\jffJ}}% +%\def^^fa{\jischar{250}{\jffa}}% +%\def^^fb{\jischar{251}{\jffb}}% +%\def^^fc{\jischar{252}{\jffc}}% +%\def^^fd{\jischar{253}{\jffd}}% +%\def^^fe{\jischar{254}{\jffe}}% +%\def^^ff{\jischar{255}{\jfff}}% +\inactive % switch the active characters back off until they are needed + diff --git a/fonts/poorman/pmcintro.tex b/fonts/poorman/pmcintro.tex new file mode 100644 index 0000000000..dae7a8eb9f --- /dev/null +++ b/fonts/poorman/pmcintro.tex @@ -0,0 +1,201 @@ +\hsize=5in\vsize=7in\hoffset=1in\voffset=1in +\parskip=2pt plus 4pt minus 1pt +\font\logo=logo10 +\input pmC +\def\pmC{{\tt pmC}} +\def\mf{{\logo METAFONT}} +\font\bigfont=cmr17 +\font\russ=wncyr10 + +\centerline{{\bigfont Poor Man's Chinese in \TeX}} +\vskip.15in +\centerline{Thomas Ridgeway} +\centerline{Humanities and Arts Computing Center} +\centerline{University of Washington} +\vskip.1in + +This little document is intended as an illustration of and preliminary +guide to {\it poor man's +Chinese} [\pmC]. \pmC\ is a temporary expedient for +printing texts with Chinese via \TeX\ until such time as we have a +well-thought-out system (and fonts) for handling Chinese. + +\pmC\ has a small number of virtues; among these are: + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ is available free of charge. + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ is device-independent (although it must be admitted that you +will get relatively more pleasing results on less sophisticated printers. The fonts +are based on dot-matrix, right?) + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ is sufficiently simple-minded you will not need to be a rocket +scientist to make modifications for your own use. + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ uses fonts mechanically faked-up from dot matrix quality fonts; if you +want you can incorporate new characters of your own design using a bitmap +font editor which {\it may} be easier to use than \mf. + +For those who might be previously unacquainted with \TeX, let us put forth a few of +the advantages of \TeX\ which are inherited by \pmC: it can run on almost any +modern computer; it can print to any of a large number of printers/typesetters; +it can print (if desired and suitably instructed) elaborate formatting of the text; +it is available at very low cost, or free (which is an instance of very low cost). + +The disadvantages are at least equally compelling: + +\item{$\bullet$}\pmC\ is crude and unlikely to ever be greatly improved as regards the quality of its Chinese. + +\item{$\bullet$}\pmC\ uses emulation-in-\mf\ techniques to produce a dot-matrix +font on your output device. No matter how talented your printer may be, +the Chinese output by \pmC\ will looked like it was stripped in from +a dot-matrix printer. + +\item{$\bullet$}\pmC\ is crude and unlikely to ever be greatly improved as regards the quality of its Chinese. + +\item{$\bullet$}\pmC\ uses a large number of fonts which occupy a finite and +measurable quantity of diskspace for each font. Your screen previewer had +{\it better} be able to use the same resolution your printer uses, or you +may experience a little tightness around the disk. You probably will not want +the fonts in multiple magsteps (they will just get uglier if you enlarge them). + +\item{$\bullet$}\pmC\ is crude and unlikely to ever be greatly improved as regards the quality of its Chinese. + +\item{$\bullet$}\pmC\ does not do slanted, bold, or other fancy Chinese although one could +in principle. However, insofar as even a minimal installation requires +88 fonts {\it for Chinese alone}, we must at this point quote The Master: +\medskip +{\narrower\narrower\noindent the format of a {\it char\_node} allows for up to 256 +different fonts and up to 256 characters per font; $\ldots$ \TeX\ intended for oriental languages +will need even more than 256 $\times$ 256 possible characters when we consider different +sizes and styles of type.\footnote{*}{Donald E. Knuth, {\it \TeX : The Program}. +Addison Wesley, Reading MA: 1986. (Volume B of {\it Computers and Typesetting}). \S 134, p.~57.\par +Ahh-hum. If we wanted to combine different-face or different-size versions of characters in a font, we could make fuller +use of the fonts which are declared for \pmC. Since currently only 94 characters are defined in +each font, we could put a different version of each character into currently empty space in the same font. +A light rewriting of the macro which handles the chinese characters could then +select one or the other version of a character depending on what we have indicated our desires to be. +As of November 21, 1990 I am not convinced that this is worth doing.} + +} +\medskip + +\item{$\bullet$}\pmC\ is based on \TeX\ (hooray!), not on J\TeX\ (hooray!) nor +any not-known-to-me to-be-extant Chi\TeX\ (huh?) which might +know how to set type vertically, handle thousands of fonts, make +doughnuts, and do all the other things that we might want software to do. +\pmC, therefore, does not set type vertically, handle thousands of fonts, +emulate Spads or Spitfires, or any of the other real neat stuff. + +\item{$\bullet$}\pmC\ may take a long time to set up if you need to make your +own fonts. Preparing {\it one} set of fonts on a NeXT computer for use +at 400 dpi required a \mf\ run of over 18 hours. The \mf\ source code +files for the fonts occupied 17 megabytes of disk space when all were +stored.\footnote{\dag}{If one looks at the simple-minded brute-force \mf\ code +which the \pmC\ fonts use, one may roughly estimate that a staggering number +of computations (probably even more than eight) are needed to emulate a dot-matrix font through this method. +There might, indeed, be a better way to do it. On the other hand, Pac-Man worldwide +has consumed several hundred million times the number of CPU cycles consumed +by compiling \pmC\ fonts, so we are not exactly talking about wasting a scarce +resource, are we?} You will not ordinarily wish to make up the fonts more +than once, assuming a relative absence of masochism in your personality makeup, nor will you probably want to keep the \mf\ source code permanently +{\it since you can mechanically regenerate it.} +\bigskip\goodbreak +\centerline{How to use \pmC} +\medskip +Assume a text editor capable of enabling entering text in GB-encoded +Chinese characters. Assume a text editor capable of editing text in ``normal'' +Latin characters. Use the first text editor to prepare a plain text file +containing the Chinese text; {\it plain text file} means that there are no +tricky codes in the text file which are intended to be used only by the +program that produced the file---``ASCII file'' frequently conveys what we +mean by ``plain text file'', but by virtue of having encoded Chinese, your +file will not be ASCII. Use the second text editor to enter the Latin-letter +strings providing instructions to \TeX; (if your first text editor is o.k. for +Latin too, you can continue using it for this step! --- but watch out, the JIS +and GB encoding schemes have some Latin characters (graphemes) included in the two-byte code +space: we need ``normal'' Latin (one-byte coded) text). On a separate line +before the first line of Chinese, put a line saying ``$\backslash$input pmc $\backslash$beginchinese''. +Pmc.tex is intended to be the name of a file containing the basic set of +instructions for \pmC. ``$\backslash$beginchinese'' is a \pmC-defined magic-word +signifying that everything until an ``$\backslash$endchinese'' is to be interpreted +as Chinese, if possible. Using whatever text editor you want, incorporate text in +whatever other language you want. Other languages will conflict with Chinese in \pmC\ only if they +use character codes in the range 160 to 254; such languages must be separated from +Chinese by enclosing the Chinese in ``$\backslash$beginchinese'' ``$\backslash$endchinese'' +structures. Create a new last line saying ``$\backslash$bye''. Put a blank line +between paragraphs in the text, and use any other \TeX\ commands with which you +may be familiar to further adorn your text. Save the file, and say the appropriate +words to run \TeX\ on your file, preview it, print it, or whatever. + +\centerline{What can go wrong} + +Well, for one, you may not have an editor for entering Chinese. [Sorry; \pmC\ +has nothing to offer you if you have no way to compose your text]. Or, +for another, your editor may not use GB-encoding. [Easy: convert your text +to GB-encoding! (How? That's not my problem; or, to be a {\it little} more gracious +about it, there are some converters out there, see if you can find one $\ldots$)]. +You may not know ``any other \TeX\ commands with which you +may further adorn your text''\footnote{\S}{Careful study will reveal this phrase to be a direct +quotation of nothing except itself.} [So take a class]. Something else +goes wrong. [Fix it]. You don't have a copy of \pmC\null. [Get one]. + +\centerline{How to get \pmC} + +From a friend is good. If you have no friend who has \pmC\ and is prepared to make +a copy for you $\ldots$ (that was supposed to be phrased as delicately as possible) +$\ldots$ you may get it through an {\it Established Channel}. There are a number +of ``\TeX\ distributions'' which may elect to incorporate \pmC\ in their offerings +of \TeX\ and \TeX-related software. You will very likely be able to get a copy +from the NWCSC, distributors of \TeX\ for Unix systems; they will have to charge you +a fee, however, as even though they are non-profit they still have to pay their employees, pay phone bills, and all +the rest of the drag with which I am sure you are familiar. You might also be able to get it +electronically and free-of-charge via {\bf ftp} from some place or other, but I +couldn't tell you where. As I write, November 21, 1990, none of these alternatives which I +have suggested will actually work, and there is no way that you can get \pmC\ short +of enrolling in a course of study at the University of Washington, or you have a friend +who has done so. + +%\tracingall +\centerline{Are we really going to show any Chinese or what?} + +Oh yes, this is roughly how it looks: \beginchinese +ÖÁ½ñΪֹ£¬´ó¼ÒËùÓõÄÖÐÎÄ +±à¼Æ÷£¬ÎãÂÛÓõÄÊǺÎÊäÈ뷽ʽ +¶¼²»¹ýÓÚ WYSWYG (What you see is what you get) ÀàÐÍ +£¬ÀýÈçÖÐÎÄ WordStar ¼´ÁªÏ뺺×Ö +£¬ ÌìÂí£¬·ÉÂí£¬ + Îå±Ê×ÖÐÍ¡£ (Please note that we may intermix all +kinds of other stuff in with the Chinese, such as {\russ Rodina, +Moskva, Kiev}. +ÕâЩÈí¼þÓÐËüÃǺõÄÒ»Ã棬 ¼´ +Ö±¹ÛÐÔÇ¿¡£ËüÃÇ´ó¶¼ÓÃÓÚ IBM ¼æÈÝ»úÓë Macintosh ¸öÈË΢»ú£¬ ²¢Ðè +ÌØÊâµÄÖÐÎIJÙ×÷ϵͳÀ´Æô¶¯»úÆ÷¡£È»¶ø£¬ËüÃǵÄÈõµãÈ´ÊDz»¿ÉÃÖ²¹µÄ£¬ +¼´ÊäÈëËÙ¶ÈÌ«Âý¶øÇÒÌ«·ÑÄÔÁ¦ºÍÑÛ +Á¦¡£ ÏëÏë¿´£¬µ±¼üÅÌ +ÊäÈëÓ¢ÎÄʱ + +ÄãÖ»Ðè»úеµØ»Ó¶¯ÊÖÖ¸£¬ÑÛ¾¦ºÍÍ·ÄÔ +È«Á¦¹á×¢ÔÚÆÁÄ»ÉϳöÏÖµÄÎÄÕ +Ê®·ÖÇáËÉ£¬ Óä¿ì£¬Í¬Ê±Ò²Äܱ£Ö¤³öºÃ +ÎÄÕ¡£µ«ÊÇÓÃÖÐÎÄ WordStar ʱ£¬ÄãµÄ +Í·ÄÔºÍÑÛ¾¦È´Òª·±Ã¦µØÄëתÔÚ´ò×Ö +¡¢Ñ¡×Ö¡¢ºÍÎÄÕÂÄÚÈÝÖ®¼ä£¬ÈçÁ¬Ðø +Á½Ð¡Ê±Èç´Ë×÷Òµ£¬Ä㽫¾õµÃÑüËá +ÑÛÍ´ÄÔÁ¦½ß¾¡£¬ºÁÎÞÀÖȤ¿ÉÑÔ¡£Ï»ØÒ»ÌáÆð´ò +ÖÐÎÄÄã±ãÓÐÒ»ÖÖ¿Ö¾å¸Ð¡£±¾ÈËÈýÄê +ÒÔÀ´Ê¹ÓÃÖÐÎÄÈí¼þµÄ½áÂÛ±ãÊÇÈç´Ë¡£ +ÄÇÄ© ChText ÓõÄÓÖÊÇʲô·½·¨ÄØ£¿ +Ê×ÏÈ ChText ²»ÊǸö±à¼Æ÷£¬¶øÊǸö +Æ´Òô + +\endchinese + +\bye diff --git a/fonts/poorman/pmfont.c b/fonts/poorman/pmfont.c new file mode 100644 index 0000000000..0fd5387532 --- /dev/null +++ b/fonts/poorman/pmfont.c @@ -0,0 +1,159 @@ +/* pmfont.c */ +/* Copyright 1990 Humanities and Arts Computing Center */ +/* may be used under terms of HACC software general public license */ +/* see the file license for details */ +/* usage: pmfont inputfile outputtag [skipto] */ +/* watch out! no errorchecking on i/o operations */ +/* improvements to ridgeway@blackbox.hacc.washington.edu */ + +/* history: */ +/* v. 0.8 released 12/03/1990 */ +/* misc. earlier versions also known as CCLIB2MF and JIS2MF */ +/* those were never PUBLICLY released */ + +#include <stdio.h> +#include <string.h> +#define CHARHT 24 +#define CHARWD 24 +#define BYTES_IN_ROW 3 +/* to do a 16x16 we say instead CHARHT 16, CHARWD 16, BYTES_IN_ROW 2 */ + + +/* the charblock structure is used for processing each character */ +typedef struct { + unsigned char column[CHARWD]; + } videorow; +typedef struct { + videorow row[CHARHT]; + } charblock; + +/* the JIS font is a naked 24x24 bitmap some 7000 chars deep */ +typedef struct { + unsigned char bitmap[CHARHT*BYTES_IN_ROW]; + } jischar; + + +/* globally accessible area */ +charblock editchar; +jischar thischar; +/* global vars and strings */ +char outfilename[128],mffilename[128]; +char cmdline[256]; +char outfiletag[80]; + +/* functions */ +jumpout() { exit(1); } + +void copyright() +{ + puts("pmfont 24x24 font --> METAFONT code generator\n"); + puts("HUMANITIES AND ARTS COMPUTING CENTER, DR-10"); + puts("UNIVERSITY OF WASHINGTON, SEATTLE WA 98195 USA\n"); + puts("Copyright 1990 Humanities and Arts Computing Center\n"); + puts("This software may be used, modified, and redistributed free of any"); + puts("fee or royalty, provided that this copyright and 'free software' notice"); + puts("remains intact in any copies redistributed, and that you may charge no fee"); + puts("of any sort whatsoever without the written permission of the Humanities"); + puts("and Arts Computing Center."); + return; +} + + +void makedisplay() +{ + int temp,mask,i,j,k,hold; + for (i=0; i<CHARHT; i++) { + for (j=0; j<BYTES_IN_ROW; j++) { + temp=thischar.bitmap[(i*BYTES_IN_ROW)+j]; + mask=0x80; + for (k=0; k<8; k++) { + hold=temp & mask; + if (hold==0) editchar.row[i].column[k+(8*j)]=0; + else editchar.row[i].column[k+(8*j)]=1; + mask=mask / 2; + } /* endfor k */ + } /* endfor j */ + } /* endfor i */ + return; +} + + +main(int argc, char *argv[]) +{ + FILE *f1,*f2; + int done,ch,i,k,codeout,fontpart,skipcount,stepper; + char quote,percent; + skipcount=0; + quote=34; + percent=37; + /* yes, yes! we are assuming the ASCII character set */ + if (argc < 3) { + printf("\nUsage: pmfont inputfontfile outputfiletag [skipto]\n"); + jumpout(); + } + if (argc > 3) sscanf(argv[3],"%02x",&skipcount); + copyright(); + f1 = fopen(argv[1],"rb"); + strcpy(outfiletag,argv[2]); +/* no error checking ---- this is quickest and dirtiest */ + fontpart=160; + if (skipcount > (fontpart+1)) { + /* skip to desired starting block if indicated */ + skipcount=skipcount-fontpart-1; + fontpart=fontpart+skipcount; + for (stepper=0; stepper < skipcount; stepper++) { + for (ch=161; ch<255; ch++) { + fread(&thischar,sizeof(jischar),1,f1); + } + } + } +while (!feof(f1)) { + fontpart++; + sprintf(outfilename,"%s%02x.mf",outfiletag,fontpart); + sprintf(mffilename,"%s%02x",outfiletag,fontpart); + printf("\nJIS2MF: attempting to open %s for output.\n",outfilename); + f2 = fopen(outfilename,"w"); + fprintf(f2,"%c This is %s generated by pmfont.\n",percent,outfilename); + fprintf(f2,"input poorman;\n"); + printf("Now processing character "); + for (ch=161; ch<255; ch++) { + /* generate code for character ch */ + fread(&thischar,sizeof(jischar),1,f1); +/* no error checking right? our last file may have a lot of garbage in it */ + /* actually this doesn't happen: but it could */ + printf("[%d] ",ch); + fprintf(f2,"\njc(%d);\n",ch); + makedisplay(); + codeout=0; + for(i=0; i < CHARHT; i++) { + for(k=0; k<CHARWD; k++) { + if (editchar.row[i].column[k] != 0) { + fprintf(f2,"jd(%d,%d); ",i,k); + codeout++; + if (codeout > 4) { + fprintf(f2,"\n"); + codeout=0; + } + } /* endif set dot on */ + } /* end k */ + if (codeout > 0) { + fprintf(f2,"\n"); + codeout=0; + } + } /* endfor i */ + fprintf(f2,"enddef; endjc;\n"); + if ( ( ch % 16 ) == 0 ) printf("\n"); + } /* endfor ch */ + fprintf(f2,"\nbye.\n"); + fclose(f2); /* close this output file */ +/* MakeFont should be a script file to call METAFONT to generate the font */ +/* move the tfm and bitmap files to the right locations and delete the */ +/* no longer needed .mf source code, .log files etc. */ +/* the contents of MakeFont will be very system dependent */ + sprintf(cmdline,"%s %s%02x","MakeFont",outfiletag,fontpart); + system(cmdline); +} /* end while not eof() on input file */ + printf("\npmfont is done. Good luck with your new fonts.\n"); + fclose(f2); +} + diff --git a/fonts/poorman/pmjintro.ps b/fonts/poorman/pmjintro.ps new file mode 100644 index 0000000000..c353a9de6c --- /dev/null +++ b/fonts/poorman/pmjintro.ps @@ -0,0 +1,2466 @@ +%!PS-Adobe-2.0 +%%Creator: dvips, version 5.395 (C) 1986-90 Radical Eye Software +%%Title: pmjintro.dvi +%%Pages: 7 1 +%%BoundingBox: 0 0 612 792 +%%EndComments +%%BeginProcSet: tex.pro +/TeXDict 200 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch +load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{ +isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale +Resolution VResolution vsize neg mul TR}B /@letter{/vsize 10 N}B /@landscape{ +/isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@legal{/vsize 13 N} +B /@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[ +1 0 0 -1 0 0]N /FBB[0 0 0 0]N /df{/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf +X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /df-tail{/nn 8 dict N nn begin +/FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array +/BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo setfont}2 +array copy cvx N load 0 nn put /ctr 0 N[}B /E{pop nn dup definefont setfont}B +/ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B +/ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub +get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup +length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ctr 0 N +/CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get +/ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width +add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub +ch-yoff .1 add]{ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{ +]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 +sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{cc 1 add D}B +/bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin 0 0 moveto}B /eop{ +clear SI restore showpage userdict /eop-hook known{eop-hook}if}B /@start{ +userdict /start-hook known{start-hook}if /VResolution X /Resolution X 1000 div +/DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for} +B /p /show load N /RMat[1 0 0 -1 0 0]N /BDot 8 string N /v{/ruley X /rulex X V +}B /V{gsave TR -.1 -.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask +grestore}B /a{moveto}B /delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta +add tail}B /b{S p tail}B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{ +1 M}B /i{2 M}B /j{3 M}B /k{4 M}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w +}B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /w{0 rmoveto}B /x{0 S rmoveto} +B /y{3 2 roll p a}B /bos{/SS save N}B /eos{clear SS restore}B end +%%EndProcSet +TeXDict begin 1000 400 400 @start /Fa 1 236 df<00C00007F00000C00002A00000FC00 +07C00000FC0002800000F00007C00000F00002800000C00007C00000C000028000C30C0007C078 +C308000280283C0FDFFFFFFE3C0A8AAAAAAA0F0F0007C0000A0A000280000F3C0007C0000A2800 +02800000300007C00000220002800000C30007C0000282800280A00300C007C1E0AAAAA2AAAAA8 +FFFFF7FFFFF8AAAAA2AAAAA83FF0F00000002AA0A000000030F0F000000020A0A20000A000F007 +0001E020A002AAAAA830F007FFFFF82AA202AAAAA83FF307C001E02AA2828000A03CF0C7C001E0 +28A0A28000A03CF0F7C001E028A0A28000A030F0F7C001E020A0A28000A030F0F7C001E0C0A002 +AAAAA0C0F007FFFFE000A0028000A000F007C001E000A0028000A000F007C001E02F2F7EA934> +235 D E /Fb 1 242 df<03F00000078003F00000028003C03007FFE003C02002AAA003C03FFF +C00003C02AAA800003C03C07C00003C02802800003C03C07C00003802802800003CF3C07C00002 +8A28028000FFFFFC07C000FAAAA802800003C07C07C00002802802800003C07C07C1E002802AAA +AAA803C07FFFFFF802802AAAAAA803C07C07C000028A2802800003CF7C07C00002AA2802800003 +F07C07C000AAA02802A000FFC07C01F000AA802800A0003FC07C01F0002A802800A00033C07C01 +F00022802800A00003C07C01F00002802828A80803C07C7C7C18028AAAA8280803CFFFC07C1802 +8AAA802A0803C3FC001F180282A8000A8803C300001F980280000A02AA03C0001F07FEFA82AAAA +80AAFFC3FFFFC1FE0E00000000280F00000000782F2F7EA934>241 D E +/Fc 1 173 df<0000001FC0000000000A80003000001F00003000000A00000F00001F00780F00 +000A002803C3FFFFFFFE03C2AAAAAAAA00F00700700000A00200200000F001C07C0000A0008028 +000000C1F1C1E0000080A080A00000FFFFFFF80000AAAAAAA80000F01F01E00000A00A00A00000 +F01F01E000A0A2AAA8A000F0F7FFFDE0AAA8A2AAA8A0FFFCF01F01E0AAA8A00A00A000F0F01F01 +E000A0A0AAA0A000F0F1FFF1E000A0A0AAA0A000F0F1C071E000A0A08020A000F0F1C071E000A0 +A08020A000F0F1C071E000A0A0AAA0A000F0F1FFF1E000A0A0AAAAA000F0F0001FE000A0A0000A +A000F0F00007800288A000028003CC00000000EA02AAAAAAAAFF03FFFFFFFE38002AAAAAA83C00 +7FFFFFF83000000000003000000000002F2F7EA934>172 D E /Fd 3 233 +df<000001FDC000000000A88000000001F07C00000000A02800000001F01E00000000A00A0000 +0001F01E00000000A00A000C0001F001E00C0000A000A00FFFFFFFFFF80EAAAAAAAAA80F0001F0 +00000A0000A000000F0001F000000A0000A000000F0001F000000A00A0A008000F00F1F01C000A +AAA8A00A800FFFFDF01F800AAAA8A00A800F00F0701F000A00A0282A000F00F07C7C000A00A028 +28000F00F07C7C000A00A028A8000F00F01DF0000A00A00AA0000F00F01FC0000A00A00A80000F +00F00700000A00A00A80000F00F01FC0000A02A02AA0080F03C07DF0180A2A80A8A8080F3FC1F1 +FC18080A82A0AA080C0F07C07F1828000A000AAA3C001F001FFE3000A00002AA3000F00007FEC0 +0000000028C000000000782F2F7EA934>174 D<000007F00000000002A00000000007C0000000 +0002800000003007C00000003002800000003F07C00000002A02800000003C07C0000000280280 +0000003C07C0000000280280000000F007C0078000A00280028000FFFFFFFFE000AAAAAAAAA000 +F007C0000000A00280000003C007C0000002800280000003C007C000000A80028000000F0007C0 +00000A00028000000C0007C00000280002800A00300007C01F00A0AAAAAAAA80C0FFFFFFFF8080 +AAAAAAAA80000007C00000000002800000000007C00000000002800000000007C0000000000280 +0000000007C00000000002800000000007C00000000002800000000007C0000000000280002800 +0007C00078FAAAAAAAAAAAFFFFFFFFFFFE2F2D7EA934>184 D<000007F00000000002A0000000 +3007C00000003002800000003F07C00000003A02800000003C07C00000002802800000003C07C0 +1E00002802800A00003FFFFFFF80002AAAAAAA8000F007C0000000A00280000000C007C0000000 +8002800000030007C000000200028000000C0007C00000080002800028000007C00078AAAAAAAA +AAAAFFFFFFFFFFFEAAAAAAAAAAAA0000F01F00000000A00A00000000F01F00000000A00A000000 +00F01F00000000A00A00000000F01F00000002A00A00000003C01F00000002800A00000003C01F +0000000A800A0008000F001F0018000A000A0008000F001F0018002A000A0008003C001F001800 +A0000A000A00F0001F001E0A00000AAAAA0F00001FFFFEF0000002AAA8F0000007FFF82F2F7EA9 +34>232 D E /Fe 1 177 df<00C00007F00000C00002A00000FC0007C00000FC0002800000F000 +07C00000F00002800000F00007C00000E00002800003C01F07C00003800A02800003FFFFC7C000 +02AAAA82800003C01F07C00002800A02800003001F07C00002000A0280000F007C07C0000A0028 +02A0000CC07C07F00028A02802A0003C307C07F0002828A802A800303CF007DC00A028A0028A80 +C03CF007DF80802AA0028AAA0003C007C7FE0002800282AA0003C007C1F8000A800280A8000F00 +07C078000A00028028000F0007C000002A00028000003C0007C00000A80002800000F00007C000 +02A00002800003C00007C0000A00000280000F000007C0002800000280003C000007C000C00000 +028000C0000007C00000000002800000000007C0002F2F7EA934>176 D +E /Ff 2 182 df<000007F00000000002A00000030007C00000030002800000030007C0007803 +00028000280FFFFFFFFFFE0FEAAAAAAAAA0F00000000780F00000000283C003C0700603C002802 +00203C0007C7F18038000282A0800003C7DFC0000002828A800000C3C07F1F00008280AA0AA000 +C3C1F001E0028282A080A80303C7C1C0782A028A80A02A3F03DC01F07E2A02AAAAA02A3C03FFFF +F01E280AAAAAA00A000FFFFFC00002AAAAAA800003F000000000AAA002A00000FC0007F00000A8 +A802A00A8000FC07C01F8000A802800A8000F007C01F0000A002800A0000F007C01F0000A00280 +0A0000F007C01F0000A002800A0000F007C01F0000AAAAAAAA0000FFFFFFFF0000A000000A0000 +F000001F0000A000000A0000F000001E002F2F7EA934>169 D<00300000000000300000000000 +3F00000000003E00000000003C0000000000380000000000F0000001E000E0000000A000FFFFFF +FFF800AAAAAAAAA8033C3C7C7C000228282828000C3C7C7C7C00082828282800303C7C7C7C0020 +2828282800003C7C7C7C00002828282828003C7C7C7C782AAAAAAAAAAAFFFFFFFFFFFEAAAAAAAA +AAAA003C7C7C7C00002828282800003C7C7C7C00002828282800003C7C7C7C0000282828280000 +3C7C7C7C00002828282828003C7C7C7C78AAAAAAAAAAAAFFFFFFFFFFFEAAAAAAAAAAAA00000000 +0000000000000000000000000000002020200800003070701C00008020280A8000C0701C078002 +80A00A00A003C0F01F01E03A00A00A00283F00F01F00783C00A00A00283C00F01F00782F2F7EA9 +34>181 D E /Fg 5 233 df<000007F00000000002A00000000007C00000000002800000000007 +C00000000002800000000007C00000000002800000000007C00000000002800000000007C00000 +000002800000000007C00000000002800000000007C00000000002800000000007C00000000002 +800028000007C000782AAAAAAAAAAAFFFFFFFFFFFEAAAAAAAAAAAA000007C00000000002800000 +000007C00000000002800000000007C00000000002800000000007C00000000002800000000007 +C00000000002800000000007C00000000002800000000007C00000000002800000000007C00000 +000002800000000007C00000000002800000000007C00000000002800000000007C00000000002 +800000000007C00000000002800000000007C000002F2F7EA934>189 D<00300C000600003008 +000200003F070007E0003E020002A000FC07C01F8000F802800A8000F001F01E0000E000A00A00 +03C001F07C00038000A028000C30000070000C2000002000303F0001C1E0302A000080A0C03CFF +FFFFF8C028AAAAAAA800F0001F000000A0000A000000F0001F000002A0000A000003C0001F0000 +0280200A000003C0701F00000A802A0A00A00FC07F1F01E02A802A0AAAA833C07C1FFFF8A28028 +0AAAA8C3C07C1F00008280280A000003C07C1F00000280280A000003C07C1F00000280280A0000 +03C07C1F00000280AA0A000003C0F71F00000280A28A000003C0F1DF00000280A0AA000003C0C0 +7F00000282800AA00003C3C01FF00002820000AAAA03C30001FFFE028800000AA803CC00001FF8 +2F2F7EA934>I<0000001FD8000000000A88003000001F06003000000A02000F00001F07800F00 +000A028003C0001F078003C0000A028000F0001F000000A0000A000000F0001F007800A0000A00 +280003FFFFFFFE0002AAAAAAAA0000001F00000000000A00000000001F00000000080A08000000 +1C1F1C0000A00A8A0A0000F01FDF0700AAA80A8A0280FFFC1F1F0780AAA80A0A02A000F01F1F01 +E000A00A0A00A000F01C1F01E000A0280A00A800F07C1F007800A0280A002800F0701F007800A0 +A00A002800F0C01F007800A2800A002800F3001F000000A2000A000000F0001F000000A0000A00 +0000F0001F00000288000A000003CC00000000EA02AAAAAAAAFF03FFFFFFFE38002AAAAAA83C00 +7FFFFFF83000000000003000000000002F2F7EA934>210 D<0000000000780000000000780F00 +3DFFFFFE0F0028AAAABE0F0C3C007C000F08280028000F0C3C0070000F08280020000F0C3C71C1 +E00F08282080A00F0C3C7FFFF80E08282AAAA80F0C7C7C01E00A08282800A00F0C7C7C01E00A08 +282800A00F0C7C7C01E00A08282AAAA00F0C7C7FFFE00A08282AAAA00F0C7C7C01E00A08282800 +A00F0C7C7C01E00A08282800A00F0C7C7C01E00A08282AAAA00F0C7C7FFFE00A08282AAAA00F0C +7C7C01E00A08282800A00F0C7C7C01E00A08282800A00F0C7C7C01E00A08282800A00C0C7C7C01 +E00808282AAAA00C0C7C7FFFE02808282AAAA03C007C1C00002000280A820030007C1FC7002000 +280A00A830007C1F01F8C0000028002AC000007C007E00000280000A000007C0001E2F2F7EA934 +>231 D<03000000000003000000000003F000701E0003F000200A0003C0007FFF8003C0002AAA +8003C0F07C1E0003C0A0280A0003FFFC7C1E0003AAA8280A0003C0F07C1E000280A0280A0003C0 +F07C1F000280A0280A0003C0F07C1F000280A0280A000300F07C1F000200A0280A000F00F07C1F +000A82A0280A000CC3C07C1F00088280280A000CC3C07C1F0028A280280A083033C07C1F18A022 +80280A08C033007C1F18802A00280A08000F00701F18000A00A00A0A000C01F01F1E002800A00A +AA003C01C01FFE002A0A800AAA00331F0007F800A28A0002A800F0C000000000A0A000000000C0 +7000000002002A00000003001F000000080002A800000C0007FC00003000002AAAAA3000007FFF +FEC0000000AAA8C0000001FFF82F2F7EA934>I E /Fh 4 232 df<000000000078000000000038 +FFFFFFFFFFFEFFFAAAAAAAAE000007C00000000002800000000007C00000000002800000030007 +C0078002000280028003FFFFFFFFE002AAAAAAAAA003C007C0078002800280028003C007C00780 +028AAAAAAA8003FFFFFFFF8002AAAAAAAA8003C007C0078002800280028003C007C00780028002 +80028003C007C0078002AAAAAAAA8003FFFFFFFF8002AAAAAAAA8003C007C00780028802800280 +000C07C00000000A0A800000000F1F000000000A8A0000000003DF0000000002AA00000000007C +0000000000AA8000000000F7C000000002A2AA00000003C1FF0000002A000AAAAA003F001FFFFE +02A000002AA803F000007FF8FC00000000A8FC00000001F82F2D7EA734>185 +D<00000FC0000000000A80000000001F00700000000A00200000001F007E0000000A002A000000 +1F1F7C0000000A0A280003FFFFFFFC0003AAAAAAA80000001F01F00000000A00A00000001F07C0 +0000000A02800000001F1F007800000A0A0028FFFFFFFFFFFEAAAAAAAAAAAA000001F000000000 +02A00000000007C0000000000A80280000001F007C000002AAAAAA000003FFFFFF000002AAAAAA +000003F0000000000AA0000000000FC0000000002A80002800003FC0007C0000AAAAAAAA0000F3 +FFFFFF000AA2AAAAAA000F03C0007C00AA028000A800F003C001FC0020028000A80000000001F0 +0000000002A00000000007F0000000000A80000000001FC00000000AAA000000001FFF00000000 +00A80000000001FC00002F2F7EA934>205 D<003000000000003000000000003F000001E0003E +000000A000FC1FFFFFF800F80AAAAAA800F00000000000E00000000003C0000000000380000000 +000F03000000000E02000000003003F00000003002A0000000C00FC0000000C00A80000000000F +00000078000A2AAAAAA8003F7FFFFFFE002A2AAAAAAA003C00007C0000A80000280000FC00007C +0002A80000280003FC00007C000AA8000028000F3C00007C002A28000028003C3C00007C00A828 +00002800C03C00007C00802800002800003C00007C00002800002800003C00007C000028000028 +00003C00007C00002800002800003C00007C00002800002800003C00007C00002800002800003C +00007C000028000AA800003C001FFC0000280000A000003C0001F0002F2F7EA934>212 +D<000007C00000000002800000000007C0000000000280000000001F70000000000A2000000000 +1F70000000000A20000000003C1C00000000280800000000F01F00000000A00A00000003C007C0 +00000280028000000F0001F000000A0000A000003C00007F000028000A2AA800F0001F1FFE0AA2 +AAAA8AAA0F03FFFFC7F8AA02AAAA82A8F00000000078A000000000280000000000000000000000 +00000000000000002000002800003000007C00002AAAAAAA00003FFFFFFF00002AAAAAAA00003C +00007C00002800002800003C00007C00002800002800003C00007C00002800002800003C00007C +00002800002800003C00007C00002AAAAAA800003FFFFFFC00002800002800003C00007C000028 +00002800003C00007C002F2F7EA934>231 D E /Fi 2 243 df<0C00000007800C000000028003 +C000007FE003C000002AA000F0301FFC0000F0200AA80000F03FFC000000E02AA8000000003C00 +078000002800028000003C001FE0000028000AA0C0007C71FC00C0002820A8003C007C7FC00028 +00282A80000F0C7C7C01800A08282800A80F0C7C7C01F80A28282802A800307C7C07E00020282A +0AA000307C7F1F0000A0282A2A0000F07C7F700000A0282AA00000C07C7DC00002802828800003 +C07C7DC00002802828A00003C07C7DF0000A802828A0000F007C7C7000AA0028282800FF00707C +7C00AA00A0282A003F00F07C1F002A00A0280A800F00F07C1F800A00A0280AAA0F00C07C07FE0A +02802800A80F03C07C01F80A82002800280FC3007C007802880028000003CC007C00002F2F7EA9 +34>201 D<000300000000020000000007F000000002A000000007C00000000280000000070000 +000002000000C00C0001E0C0080000A0FFFFFFFFF8AAAAAAAAA8F0000001E0A0000000A0F00000 +01E0A0000000A0F0000001E0A0000000A0F0000001E0A0000000A0F0000001E0A0000000A0F000 +0001E0A0000000A0F0000001E0AAAAAAAAA0FFFFFFFFE0AAAAAAAAA0F0000001E0A0000000A0F0 +000001E0A0000000A0F0000001E0A0000000A0F0000001E0A0000000A0F0000001E0A0000000A0 +F0000001E0A0000000A0F0000001E0AAAAAAAAA0FFFFFFFFE0A0000000A0F0000001E0A0000000 +A0F0000001E0252F78A934>242 D E /Fj 1 246 df<000007F00000000002A00000030007C000 +00030002800000030007C001E00300028000A00FFFFFFFFFF80FEAAAAAAAA80F00000001E00F00 +000000A03C03001FC1803C02000A80803C03F01F07003802A00A02000003C01F00000002800A00 +00000FC01F0000000A800A0000000F001F0000002A000AAAA8003C001FFFF800A8000AAAA800F0 +0007FFF82AA00002AAA83F00000000002A0000000000000000000000000000000A00000000001F +0002AAAAAAAA8003FFFFFFFF8002AAAAAAAA80000007C00000000002800000000007C000000000 +02800000000007C00000000002800000000007C00000000002800000000007C000000000028000 +28000007C00078FAAAAAAAAAAAFFFFFFFFFFFE2F2D7EA934>245 D E /Fk +3 232 df<0C000F0001F80C000A0000F80FFFFFC001E00FFEAA8000A00F001F07F1E00F000A02 +A0A00F001F07C1E00F000A0280A00F001F07C1E00F000A0280A00F001F07C1E00E000A0280A00F +FFFF07C1E00AAAAA0280A00F001F07C1E00A000A0280A00F001F07C1E00A000A0280A00F001F07 +C1E00A000A0280A00F001F07C1E00AAAAA0280A00FFFFF07C1E00AAAAA0280A00F001F07C1E00A +000A0280A00F001F07C1E00A000A0280A00F001F07C1E00A000A0280A00F001F07C1E00A000A02 +80A00F001F07C1E00AAAAA0280A00FFFFF07C1E00AAAAA0280A00300000001E002A0800000A003 +F0C00001E00280A80000A003C07C0001E00A000A0000A00F001F0001E0380002802AA03C0007C0 +7FE0C00002800280C00007C007802D2F7EA934>167 D<0C003C1C01E00C00280800A00FFFFF1F +FFF80FFAAA0AAAA80F003C1F01E00F00280A00A00F003C1F01E00F00280A00A00F003C1F01E00E +00280A00A00F007C1F01E00A00280A00A00FFFFC1F01E00AAAA80A00A00F007C1F01E00A00280A +00A00F007C1F01E00A00280A00A00F007C1F01E00A00280A00A00F007C1F01E00AAAA80A00A00F +FFFC1F01E00AAAA80A00A00F007C1F01E00A00280A00A00F00001F01E00A00800A00A00F00C01F +01E00A00A00A00A00F00701F01E00A00280A00A00F007C1F01E00A0AAA0A00A00F0FDF1F01E0AA +AA8A0A2AA0FFF01F1F7FE02A000A0A2AA03F001F1F07802000000A00003000001F00000000000A +00000000001F00000000000A00000000001F00002D2D7EA734>I<000007F00000000002A00000 +000007C00000000002800000000007C00000000002800000000007C00000000002800000000007 +C00000000002800000000007C00000000002800000000007C00000000002800000000007C00078 +000002800028FFFFFFFFFFFEAAAAAAAAAAAA000007C00000000002800000000007C0000000000A +A0000000001F70000000000A20000000001F70000000000A28000000001F1C000000002A080000 +00007C1C00000000280A000000007C0700000000A80280000000F007C0000000A002A0000000F0 +01F0000002A000A8000003C001FC00000A8000AA00000F00007F00002A00002AA0003C00001FE0 +00A0000002AA00F0000007FE0A00000000A80F00000001F8F00000000020F000000000602F2F7E +A934>231 D E /Fl 2 200 df<001FF0000700000C00001FF0000700001E000009600006C0000D +20001F800000E0001FF0001F800000E0001FF0000B003000D8000DA0001F807001F8001F80001F +807000F8000F80001F00060018006C00001F800E0038007E00001F800E0038007C00001F8D8FC0 +1B006C00001F9FCFC03F007E00001F8D8FC01F006C00DFFFFDF1C01F006000FFFFFFF1C03F0070 +00DB7FEDB1C01B006000001F8001F83F03F000001F8001F83F03F000000F0001B01B036000001F +8001F800038000001F8001F800038000000920009000090000001FF00000001C0000001FF00000 +001C0000006F2D80060008000000FF8FC0070000000000FF8F800700000000007F81B006D80000 +0000FF83F007F800000000FF81F007D800000000FF81B006C000000000FF83F007E000000000FF +81B006C000000007FF800007C0000F8007FF800007E0001F80037F800006C0000D80071F8FFFFF +FFFFFFF0071F8FFFFFFFFFFFF0030B0DB6B6DB7B6DB0071F80003F001F8000071F80003F001F80 +001B09000016000B00003F1F80003F001F80003F1F80003F001F8000180F0001F0007800003C1F +8001F800FC0000181F8001F800FC0000C01F8001F800FC0000E01F8001F800FC0000C01F8001F8 +00FC0000001F800FC7C7E00000001F800FC7E7E00000001F800FC6C3E00000001F800FC03F0000 +00001F800FC03F000000001F0007C01B000000001F800000F8FC0000001F800001F8FC00000009 +000002D8492000001F800007E01FF000001F800007E01FF000000B0000B2C00B6C00001F8001F8 +0003FE00001F8001F80003FC00001F01B60000006C00001F83FE0000007E00001F81FE0000007C +0044447EBB48>121 D<003000007800003000002800003FFFFFFE00003EAAAAAA00003C00007C +00003800002800003C00007C00002800002800003FFFFFFC00002AAAAAA800003C00007C000028 +00002800003C00007C00002800002800003FFFFFFC00002AAAAAA800000000000078000AAAAAAA +A8FFFFFFFFFFFEAAAAAAAAAAAA03C0F00000000280A000028003C0F000078002AAA2AAAAA003FF +F7FFFFE002AAA2AAAAA003C0F07007800280A020028003C0F07007800280A0280A8003C0F01C1F +0002AAA0080A0003FFF01C1F0002AAA00A2A0003C0F0077C000280A002A80003C0F001F0000280 +A002AA0003C0F007FF00AAAAA00AAAAAFFFFF01F1FFE2A80A02802A83FC0F07C07F83000A28000 +283000F7C000780000A00000000000F00000002F2F7EA934>199 D E /Fm +4 238 df<00000007F00000000002A00003F01FC7C1F803F00A8280B803C01F07C1E003C00A02 +80A003C01F07C1E003C00A0280A003C01F07C1E003800A0280A003C3DF07C1E002828A0280A0FF +FFFFFFFFE0FAAAAAAAAAA0000C1F0001E000080A0000A0000FC0000000000A80000028300F0000 +0078280A2AAAAAAA0C0F7FFFFFFE080A2AAAAAAA0C0C001F00000808000A00000C0C001C00000A +08082800280F0C1C7000780A080AAAAAAA0F0C1FFFFFFE0A280AAAAAAA0F301F1C70780A200A08 +202800301F1C707800228A0820280033DF1C7078AAAA8A082028FFFC1F1C70782AA80A0820283F +001F1C707820000A08202830001F1C707800000A08202800001F1C707800000A0822A800001F1C +77F800000A0820A000001F1C71E02F2F7EA934>188 D<00C00000000000C00000000000FC0000 +000000FC0000000000F00000000000F00000000000F0001C007800E00008002803C01F1FFFFE03 +800A0AAAAA03FFFFDF007802AAAA8A00280F0F001F00780A0A000A00280C0F001F0078080A000A +0028300F001F0078200A000A0028000F001F0078000A028A0028000F07DF0078AAAAAAAA0028FF +FFFFFF0078AAAAAAAA0028000F001F0078000A000A0028000F001F0078000A000A0028000F001F +0078000A000A0028000F001F0078002A800A0028003CC01F00780028A00A0028003C701F007800 +28280A0028003C7C1F007800A82A0A002800F01F1F007800A00A0AAAA800F01F1FFFF802800A0A +002803C01F1F00780A00000A00280F00001F0078F00000000000F000000000002F2F7EA934> +206 D<00007F00000000002A00000000007C00000000002800000000007C000000000028000000 +00007C00000000002800000000007C000000000028000000C0007C001E00C00028000A00FFFFFF +FFFF80AAAAAAAAAA80F0007C001E00A00028000A00F0007C001E00A00028000A00F0007C001E00 +A00028000A00F0007C001E00A00028000A00F0007C001E00A00028000A00F0007C001E00A00028 +000A00F0007C001E00AAAAAAAAAA00FFFFFFFFFE00AAAAAAAAAA00F0007C001E00A00028000A00 +F0007C001E00A00028000A0000007C00000000002800000000007C00000000002800000000007C +00000000002800000000007C00000000002800000000007C00000000002800000000007C000000 +00002800000000007C000000292F7AA934>230 D<0C00070000000C000200000003C001F00000 +03C000A0000000F0007C000000F00028000000F0007F000000E0002A00000000001F0000000000 +0A00000000000001E00000000000A0C000FFFFFFF8C000AAAAAAA83C00001F00002800000A0000 +0F0C001F00000A08000A00000F0C001F00000A28000A00000030001F00000020000A0000003000 +1F000000A0000A00A000F0001F01E000A0AAAAAAA800C0FFFFFFF80280AAAAAAA803C0001F0000 +0280000A000003C0001F00000A80000A00000F00001F0000AA00000A0000FF00001F0000AA0000 +0A00003F00001F00002A00000A00000F00001F00000A00000A00000F00001F00000A00000A0028 +0F00001F00780A8AAAAAAAAA0FCFFFFFFFFE02800000000003C0000000002F2F7EA934>237 +D E /Fn 1 177 df<000C00070000000C000200000003C007F00000028002A0000000F007C000 +0000A00280000000F01C00780000A0080028FFFFFFFFFFFEFFAAAAAAAAAA000000000000000000 +00000000000000000000000000000003007C0007E00200280002A003FFFF1FC78002AAAA0A8280 +03C07C1F07800280280A028003C07C1F07800280280A028003C07C1F078002AAA80A028003FFFC +1F078002AAA80A028003C07C1F07800280280A028003C07C1F07800280280A028003C07C1F0780 +02AAA80A028003FFFC1F078002AAA80A028003C07C1F07800280280A028003C07C1F0780028028 +0A028003C07C00078002802800028003C07C00078002802800028003C07C0007800282A800AA80 +03C3FC01FF800280A0000A0003C0F0001E002F2F7EA934>176 D E /Fo +3 254 df<00FC0C00180000FC0800080000F007C01F8000F002800A8000F001F01E0000F000A0 +0A0000F001F0706000E000A0202000F03FFFFFF800A02AAAAAA8FFFFC01F0000FEAA800A000000 +F0001F018000A0000A008000F07FFFFFE000A02AAAAAA000FC001F000000AA000A000803F3001F +001802A2AAAAAAAA03F3FFFFFFFE02A2AAAAAAAA03F3C01F00000AA2800A00800FF0001F01800A +A0200A00A80CF0701F01F808A02A0A02A80CF01F1F07E028A00A8A8AA03CF007DFDC0028A0028A +A80030F007DF7000A0A002AA2800C0F0007F7C0080A000AA2A0000F001DF1F0000A00A8A0A8000 +F01F1F1F8000A2AA0A0AAA00F3FC1F07FE00A0A00A00A800F0F01F01F800A080AA002800F0C1FF +007800A00028000000F0007C00002F2F7EA934>205 D<0300000001E00300000000E003FFFFFF +FFF803FEAAAAAAB803C007C001E003C0028000A003C007C001E003C0028000A003C007C001E003 +80028000A003C007C001E00280028000A003C007C001E00280028000A003FFFFFFFFE002AAAAAA +AAA003C007C001E00280028000A003C007C001E00280028000A003C007C001E00280028000A003 +C007C001E00280028000A003C007C001E00280028000A003C007C001E002AAAAAAAAA003FFFFFF +FFE002AAAAAAAAA003C007C001E00280028000A003C007C001E00280028000A003C007C001E002 +80028000A003C007C001E00280028000A0030007C001E00A00028000A00F0007C001E008000280 +00A00C0007C001E0300002802AA0300007C07FE0C00000000280C000000007802D2F7EA934> +209 D<000F1C0001E0000E080000A0FFFFDFFFFFF8FFFA8AAAAAA803C01F07C1E003C00A0280A0 +03C01F07C1E003800A0280A003C01F07C1E002800A0280A003C01F07C1E002800A0280A003C01F +FFFFE002800AAAAAA003C31F07C1E0028A8A0280A0FFFFDF07C1E0AAAA8A0280A003C01F07C1E0 +02800A0280A003C01F07C1E002800AAAAAA003C01FFFFFE002800AAAAAA003C01F07C1E002800A +0280A003C00007C00002820002800003C30007C00002AA000280A003FC0007C1E0AAA82AAAAAA8 +FFC07FFFFFF8AA802AAAAAA83C000007C00028000002800030000007C000000000028000000000 +07C00000000002802800000007C0780002AAAAAAAA0003FFFFFFFE2F2B7EA734>253 +D E /Fp 5 228 df<000007F00000000002A00000000007C00000000002800000000007C00000 +000002800000000007C00000000002800000000007C00000000002800000000007C00780000002 +8002800FFFFFFFFFE00AAAAAAAAAA000000001C00000000000800000300001FC0000280000A800 +000C0001F000000A0000A000000F0001F000000A0000A00000030001F00000028002A0000003C0 +07C0000002800280000003C007C0000002800280000003C007C0000002A00280000000F0070000 +0000A00200000000F00700000000A00A00000000F01F00000000A00A00000000F01C00000000A0 +0800000000F01C00000000A0280000000000700000000000200028000000700078FAAAAAAAAAAA +FFFFFFFFFFFE2F2D7EA934>169 D<000007F00000000002A00000000007C07C00000002802800 +000007FFFE00000002AAAA00030007C0007803000280002803FFFFFFFFFE03AAAAAAAAAA03C01F +00007802800A00002803C01FFFDC6002800AAA882003CFFF001F00028AAA000A0003C007FFFF00 +028002AAAA0003C0000000000282AAAAAA0003C3FFFFFF000282AAAAAA0003C300700700028200 +20020003C3007007000282AAAAAA0003C3FFFFFF000282AAAAAA0003C300700700028200200200 +03C3007007000282AAAAAA0003C3FFFFFF000282AAAAAA0003C001C0000002802AA8008003007F +7C01800A082A2A08A80F0C7C1F1C780808280A082A0C0C7C1F1C1E202828000A0A303C7C001F1E +C0A02AAAAA00C0F07FFFFF0000A00AAAA80000F01FFFFC002F2F7EA934>184 +D<00003F00000000002A00000000007C00000000002800000000007C0000000000280000000000 +7C00000000002800000000007C00000000002800000000007C001E00000028000A00FFFFFFFFFF +80EAAAAAAAAA8000007C001E00000028000A0000007C001E00000028000A0000007C001E000000 +28000A0000007C001E00000028000A0000007C001E00000028000A0000007C001E000000A8000A +000001F0001E000000A0000A000001F0001E000000A0000A000001F0001E000002A0000A000003 +C0001E00000280000A000003C0001E00000A80000A00000F00001E00000A00002A00000C00007E +00002800002A00003000007C0000800000A80000C00001FC000A00002AA0000F00007FF000F000 +00028000F0000007C000292F7CA934>207 D<003F00000078003F00000078303C31FFFFFE303C +20AAAABE0F3C3C01F0000F382800A000033CC001C000032880008000003C007701E00028002200 +A0FFFFFF7FFFF8FEAAAA2AAAA800FC007C01E000A8002800A003FF007C01E002AA002800A0033C +F07C01E00228A82AAAA00C3C7C7FFFE02828282AAAA0303C7C7C01E0A028282800A0C03C007C01 +E08028002800A00000007C01E0002A002AAAA0003F007FFFE0002A002AAAA0003C007C01E00028 +0A2800A0003C1F7C01E0AAAAAAA800A0FFFFFFFC01E0AAAAAAA800A0003C007C01E000AA002AAA +A000F3007FFFE000A2A02AAAA000F0F01C00000280A80A828003C07C1FC7800200282A00280300 +7C7F0078080000A0000A0C0001F0001EF0000A00000AF0001F00001E2F2F7EA934>224 +D<00C00000007E00C00000007E00FC001F007800FC000A003800F3FFFFC07800F2AAAA802800F0 +3C007C7800E02800282803C03C007C7803802800282803C03C007C7802802800282803C070007C +780280200028280F00707C7C780A00202828280F00FFFF7C780A00AAAA28283F00F07C7C782A00 +A0282828CF00C07C7C788A02802828280F03C07C7C780A02A0A828280F0371F07C780A0A28A028 +280F0C7DF07C780A2828A028280F301DC07C780A200A8028280F0007C07C780A00028028280F00 +07007C780A000A0028280F001F007C780A000A0028280F001C0000780A00280000280F00700000 +780A00A00000280F00C00000780A02000000280F03000000780A0800000AA80F0C00001FF80E00 +000000A00F00000001E02F2F7EA934>227 D E /Fq 3 240 df<00000700000000000200000030 +0007F00000300002A000000F0007C000000F000280000003C007C0000003C00280000003F007C0 +007803A00280002800F007FFFFFE00A002AAAAAA00001F00007800000A00002800001F0001E000 +000A0000A000001C1FC1800008280A8280000C7C1F07000008280A0200000C701F00000028A00A +00000030C01F00000020800A00000030001F000000A0002A800000C0007DC00002800028800003 +C0007DC0000A80002880000F00007DC000AA0000A8A000FF0001F07000AA0000A020003F0001F0 +70002A0002A028000F0007C01C000A0002800A000F0007C01F000A000A800A800F001F0007800A +80280002AA0FC07C0007FE0280A00000A803C0F00001F8000A00000028000F000000782F2F7EA9 +34>161 D<000000001E00000000000A0003FFFFFFFF8003FAAAAAAA8000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000078000AAAAAAAA8FFFFFFFFFFFEAAAAAAAAAAAA000007C0 +0000000002800000000007C00000002002800000003007C00000002A02808000003F07C1C00000 +2A0280A800003C07C07C0000A802802A0000FC07C01F0000A802800A8000F007C0078002A00280 +02A003C007C001E00A80028000A80F0007C001F82A00028000A83C0007C00078800002800028C0 +0007C00078000002800000000007C000000000AA8000000000FFC0000000000A00000000001F00 +00002F2D7EA734>168 D<0003C000078000038000028000FFF007FFE000FEA002AAA0FFF01FFF +C000FFF00AAA800000F00007C00000E00002800000F00007C07800A00002802800F03FFFFFFE00 +A02AAAAAAA00F3C007C00000A280028000FFFFF007C000EAAAA002800000F01FFFFFE000A00AAA +AAA000F01F07C1E002A80A0280A003FC1F07C1E002AA0AAAAAA003F31FFFFFE002A28AAAAAA003 +F3DF07C1E00AA28A0280A00FF3DF07C1E00AA28A0280A00CF01F07C1E008A00AAAAAA00CF01FFF +FFE028A00AAAAAA03CF00007C00028A0000280A030F00007C1E0A0A02AAAAAA8C0F07FFFFFF800 +A02AAAAAA800F00007C00000A00002800000F00007C00000A00002802800F00007C07800A0AAAA +AAAA00F0FFFFFFFE00A00000000000F0000000002F2F7EA934>239 D E +/Fr 3 223 df<0C0007F07E000C0002A02A0003C007C07C0003C00280280000F007C07C7800F0 +0280282800F3FFFFFFFE00E2AAAAAAAA000007C07C00000002802800000007C07C000000028028 +00C00070000780C000200002803C007FFFFFE028002AAAAAA00F0C7C1F07800A08280A02800F0C +7C1F07800A28280A028000307C1F078000202AAAAA8000307FFFFF8000A02AAAAA8000F07C1F07 +8000A0280A028000C0001F00000280AAAAAAA003C0FFFFFFE00280AAAAAAA003C0001F00000A80 +000A00000F00001F0000AA0AAAAAAAAAFF0FFFFFFFFEAA0AAAAAAAAA3F00007DC0002A0000A8A0 +000F0001F070000A0000A02A000F0001F07F000A0002800AAA0F0007C01FFE0A80280002A80FC0 +7C0007F8028A8000002803CFC00000782F2F7EA934>193 D<C000F1C001E0C000A08001E0FFFF +FDFFFFF8FFFAA8AAAAF8F000F1F001E0F000A0A000A0F000F1F001E0F000A0A000A0FFFFF1FFFF +E0FEAAA0AAAAA0F000F1F001E0F000A0A000A0F001F1F001E0E000A0A000A0FFFFF1FFFFE0AAAA +A0AAAAA0F001F1F001E0A000A0A000A0F000000001E0A000000000A0F000000001E0A008000A00 +A0F00C001F01E0A00AAAAA80A0F00FFFFFC1E0A00AAAAA80A0F00F001F01E0A00A000A00A0F00F +001F01E0A00A000A00A0F00F001F01E0A00AAAAA00A0F00FFFFF01E0A00AAAAA00A0F00F001F01 +E0A00A000A00A0F00F001F01E0A00A000A00A0F00F001F01E0A00AAAAA00A0F00FFFFF01E0A00A +000A00A0F00F001F01E0E00000002AA0F00000007FE0F00000000280F000000007802D2F7CA934 +>214 D<00000F00000000000A00000000001F00000000000A00000000003DC000000000288000 +0000003C7000000000282000000000F07C00000000A02800000003C01F00000002800A0000000F +0007F000000A0002A000003C0001FF0000280000AA0000F3FFFF7FFE00A2AAAA2AAA0F00000007 +F82A00000A02A8F000001F0078A02AAAAA8028003FFFFFC000002AAAAA80000000001F00000000 +002A00000000007C0000000000A80000000001FC0000002000A82800003001F07C00002AAAAAAA +00003FFFFFFF00002AAAAAAA00003C00007C00002800002800003C00007C00002800002800003C +00007C00002800002800003C00007C00002800002800003C00007C00002AAAAAA800003FFFFFFC +00002800002800003C00007C002F2F7EA934>222 D E /Fs 5 237 df<00000001FF0000000000 +000001FF0000000000010000B60048000000038001F800FC000000038001F800FC000000036DB6 +B6DB4B00000003FFFFFFFFFF80000003FFFFFFFFFF800000036001F0007C00000003F001F800FC +00000003F001F800FC00000003E001F800FC00000003F001F800FC00000003F001F800FC000000 +03FDFFFFDFFC00000003FFFFFFFFFC00000003EDBFFEDBFC00000003F001F800FC00000003F001 +F800FC000000036001B00078000000000001F800001F8000000001F800001F80DB492DB496DA49 +6DA0FFFFFFFFFFFFFFFFF0FFFFFFFFFFFFFFFFF042492024921249212000000000000000000000 +00000000000000000003EDB7F6DBFC00000003FFFFFFFFFC00000003FDFFFFDFFC00000003F000 +0000FC00000003F0000000FC00000003E0000000FC00000003F0000000FC00000003F0000000FC +00000003E0000000FC00000003FFFFFFFFFC00000003FFFFFFFFFC000000036DB6B6DB78000000 +03F0000000FC00000003F0000000FC00000001600000004800000003F0000000FC00000003F000 +0000FC000000036DB7F6DB7800000003FFFFFFFFFC00000003FFFFFFFFFC00000003E0000000FC +00000003F0000000FC00000003F0000000FC00000003F0000000FC00000003F0000000FC000000 +03E0000000FC00000003FDFFFFFFFC00000003FFFFFFFFFC000000036DB7F6DB7C0000000003F0 +0000000000000003F0000000000000000DB400DA48000000000FFE00FFFC000000000FFE00FFFC +000000036DA400D24B60000003FFC00000FFF0000003FF800000FFF000037C0000000003600007 +FC0000000003F00007FC0000000003F00044447EBB48>46 D<003F01C001E0003F008000E0003C +01FFFFF8003C00AAAAB8003C01F001E0003800A000A0003C01F001E0002800A000A0003CF1F001 +E00028A0A000A03FFFFDF001E03EAAA8A000A0003C01FFFFE0002800AAAAA0003C01F001E00028 +00A000A0003C01F001E0002800A000A0003C01F001E0002828A000A0003C7DF001E0AAAAAAAAAA +A0FFFFFFFFFFE0AAAAAAAAAAA0003C01F001E0002800A000A0003C01F001E0002800A000A0003C +01F001E0002800A000A0003C01F001E000AA00AAAAA000F301FFFFE000A2A0AAAAA000F0F0707C +0000A0A82A280800F07C7F7C1802A0282A280803C07C7C7C18028028A8280803C001FC7C180A00 +00A0280A0F0001F07C1EF00002802AAAF00007C07FFE0000A8000AA80000FC001FF82F2F7EA934 +>172 D<0003C00000000003800000003FFFF00001E03FFEA00000A0000001FFFFF8000000AAAA +A80000000001E00000000000A00000F00001E00000A00000A0FFFFFC0001E0FEAAA80000A00000 +000001E00000000000A00000000001E00000000000A00003C00001E0000AA08000A03FFFF1C001 +E02AAAA0AAAAA0000001FFFFE0000000AAAAA0000001F001E0000280A000A00003C1F001E02AAA +A0A000A03FFFF1F000002AAAA0A00000000001F00000000000A00000000001F00000200280A000 +003003C1F000002AAAA0A000003FFFF1F000002AAAA0A000003C03C1F00000280280A000083C03 +C1F00018280280A000083C03C1F00018280280A0000A3C03C1F0001E3AAA80AAAAAA3FFFC1FFFF +FE3C02802AAAA83C03C07FFFF82F2F7EA934>I<003F00000000003F00000000003C000001E000 +3C000000A0003C01FFFFF8003800AAAAA8003CF00001E00028A00000A03FFFFC0001E03FAAA800 +00A0003C000001E00028000000A0003C000001E00028000000A0003C007001E00028002000A000 +3C7C7FFFE0002AAA2AAAA0FFFFFF7C01E0AAAAAA2800A0003C007C01E00028002800A0003C007C +00000828002800000C3C007C00000A28282800080F3C7C7C00180A2AAA2800080F3FFF7C00180A +2AAA2800080F3C007C00180A280028002A0F3C007C007E0A28002AAAAA0F3C007FFFFE0AA8002A +AAAA0CFC001FFFF808A8000AAAA80C3C00000000280A800000003C0FC00000002000AAAAAAAA30 +00FFFFFFFE30000AAAAAA830001FFFFFF8C00000000000C000000000002F2F7EA934>175 +D<FC0000000000FC0000000000F00300001E00F00200000A00F003FFFFFF80F002AAAAAA80F003 +C0001E00F00280000A00F003C0001E00F00280000A00F003C0001E00E00280000A00F007C0001E +00A00280000A00F007C0001E00A00280000A00F007C0001E00A00280000A00F007C0001E00A002 +80000A00F007C0001E00A002AAAAAA00F007FFFFFE00A002AAAAAA00F007C0001E00A00280000A +00F007C0001E00A00280000A00F007C0001E00A00280000A00F007C0001E00A00280000A00F007 +C0001E00A00280000A00F007C0001E00A00280000A00F007C0001E00A00280000A00F007C0001E +00A002AAAAAA00F007FFFFFE00A00280000A00F007C0001E00A00280000A00F007C0001E00E000 +00000000F00000000000292F7AA934>236 D E /Ft 1 184 df<000FC00001E0000F800000E000 +0F001C1FF8000E00080AB8000F1F1FFC00000A0A0AA8003FFFFFDF00003FEAAA8A00000300301F +00000300200A000000C03F1F000000802A0A000000F07C1F000000A0280A000000F0701F007800 +A0200A00280000C7DFFFFE000AAAAAAAAAFFFFFFFF0780AAAAAAAA0280000F001F0780000A000A +0280000F001F0780000A028A0280000F07DF0780AAAAAAAA0280FFFFFFFF0780AAAAAAAA028000 +3F001F078000AA800A028000FFC01F078000AAA82A028000FF7C7C078002AA2A28028003CF1F7C +0780028A0A28028003CF1F7007800A8A0AA002800F0F01F00780280A00A002803C0F01C00780C0 +0A02000280C00F07000780000A08000280000F1C000780000A00000280000F000007802F2F7EA9 +34>183 D E /Fu 2 190 df<00000C000000000008000000000007C00000000002800000000001 +F01C00000000A008000000007C1F80000000280A800000007C1E00000000280A000003F0007C00 +0002A00028000003C0007C000002800028000003C001F00000028000A0000003C001F000000280 +02A2000003C007C7000202800A82A00303C01F01E00202800A00A80303C01F00780A02802A002A +0F03C07C007E0A0280A8002A0C03C1F0001E280282A0000A3C03C7C0001EA8028A80000AFC03DF +000000A802AA000000F003FC000000A002A80008000003F0001C00000AA0000800000FC0001C00 +00AA8000080000F3C0001C000A0280000A000F03C0001F00E002AAAAAA00F003FFFFFF000000AA +AAA8000000FFFFFC002F2D7EA934>172 D<000007F00000000002A00000000007C00000000002 +800000000007C007800000028002800FFFFFFFFFE00FEAAAAAAAA0000007C00000000002800000 +000007C00000000002800000000007C01F00000002800A0003FFFFFFFF8002AAAAAAAA80000007 +C00000000002800000000007C00000000002800028000007C00078AAAAAAAAAAAAFFFFFFFFFFFE +AAAAAAAAAAAA0000FC7007000002A82002A00003F07007E0000AA0280AA0000FC01C1F00002A80 +0A2A00003FC01F700000AA800AA00000F3C007C0000AA28002A0000F03C007F000AA028002A800 +F003C001FC00200282A0AA800003C7F07F800002AAA02AAA0003FC001FFE02AA800002A803FFC0 +0007F800A80000002800FC0000007800800000000000C0000000002F2F7EA934>189 +D E /Fv 21 244 df<0000007000000020C01FFFFC8AAAAAA83FFC007C2AA800AA3F0001FF2A08 +0AAA001C1F00000AAA000007F0000002A0000007C000000280000007C000000280000007000000 +0A0000001F0000000A0000001F0000000A0000001C000000280000007C00000028000000700000 +0080000000C000000200000003000000201F769B34>161 D<0000001FE0000000000AA000C03F +FFFFFE00C02AAAAAAA00FFFF00007F80FAAA00002A803F000001FF802A000000AA800001F007F8 +000000A002A80000007F1F000000002A0A000000001FF0000000000AA0000000001F0000000000 +0A00000000001F00000000002A00000000007C00000000002800000000007C0000000000280000 +000000700000000000A00000000001F00000000000A00000000001C00000000002800000000007 +C0000000000280000000000700000000000A00000000000F00000000000A00000000000C000000 +0000280000000000300000000000800000000000C0000000000200000000000300000000002929 +7AA534>I<00000070000000200000007C00000028000001FF000000AA000001FC000000A80000 +07F0000002A0000007C00000028000001FC000000A8000007F0000002A000001FC000002A80000 +07FC00000AAA00000F1F00002A0A00003C1F0000A80A0000F01F000AA00A000F001F00AA000A00 +F0001F00A0000A0000001F0000000A0000001F0000000A0000001F0000000A0000001F0000000A +0000001F0000000A0000001F0000000A0000001F000000080000001C00202D7AA934>164 +D<0003F000000002A000000001FC00000000A8000000007C0000000028000000007C0000000028 +0000F0007C1FE0E000280AA03FFFFFFFF82AAAAAAAA80FFC0001FE0AA80000AA0F000001F80A00 +0000A80F000001F00A000002A00F000007F00A000002A00F000007C00A000002800F000007C00A +00000A800F00001F000A00000A000C00001F000800002A000000007C0000000028000000007C00 +000000A800000001F000000002A000000007C0000000028000000007000000000A000000001C00 +000000200000000070000000008000000001C00000272B7AA734>166 D<03000001FC00030000 +00A80000FFFFFFFE0000AAAAAAAA00003F1F001F00002A0A000A00000007C00000000002800000 +000007C00000000002800000000007C00000000002800000000007C00000000002800000000007 +C00000000002800000000007C00000000002800000000007C0000000000A80000000001FC00000 +00000A80000000001F00000000000A00000000001F0000008000AAAAAA80C000FFFFFF80AAAAAA +AAAAA83FFFFFFFFFF82AAAAAAAAAA80FF0000001F80000000000A82D207EA134>168 +D<000F00000000000A000000000003F00000000002A00000000000F00000000000A00000000000 +F01FC0000000A00A8000000077FFF000000022AAA0000001FFF000000000AAA00000300FF00000 +00200AA00000000FFC7C0000000AA82800000003C07C000000028028002A0000001C007E000000 +0A2AAA8000001F7FFF8000000AAAAA8000001FFC00008002AAA80000C003FF000000AAAAAA8000 +003FFF07C000002AAA028000000FC007C000000A8002800000000001C00000000000A000000000 +01F00000000000A00000000001F00000000000A00000000001F00000000000A800000000007C00 +000000002800000000007C00000000002800000000007C00000000000800000000001C0000292D +7CA734>173 D<000F00000000000A000000000003C00000000002800000000003C00000000002 +80000000000FC0000000000A80000000000F00000000000A00000000003C0007FE0000280002AA +0000FFFFFFFF8000AAAAAAAA8003C7FFC000000282AAA000000F0001F000002A0000A000003000 +01F00000A00000A00000C00001F00000800002A00000000007C00000000002800000000007C000 +0000000A80000000001F00000000000A00000000001F00000000002A00000000007C0000000000 +A80000000001F00000000002A00000000007C0000000000A80000000000F00000000002A000000 +00003C0000000000A00000000000F0000000000A00000000000F0000000000292B7AA734>177 +D<0000007F000000002A00C00FFFFF80800AAAAA803FFFC007E02AAA8002A00FC00007C00A8000 +028000000007C00000000A800000001FC00000000A800000001F000000000A000000001F000000 +000A000000001F000000000A000000001F000000002A000000007F000000002A000000007C0000 +000028000000007C008000002800C000007C00AAAAAAAA003FFFFFFF002AAAAAAA000FFC001F00 +02A8000A00232078A134>179 D<0F000000000E0000000003F000000002A000000000FC000000 +00A8000000003C0000000028000000000000000000000000000000000000000000000000000000 +06000000000AF000000018AA800000283FC00000602AA00000A003F00001C002A0000A8000F000 +1F0000A0002A000000007C00000000A800000001F000000002A000000007C00000002A80000000 +7F00000002AA00000007FC0000802AA80000C03FC00000AAAA800000FFFF0000002AAA0000003F +F00000000A000000000F00000000272778A534>183 D<0000001F00000000000A000000C01FFF +C00000800AAA8000003FFF07F000002AAA02A000000FC01FC000000A800A80000000001F000000 +00000A00000000007F00000000002A00000000007C0000000000A80000000001F00000000000A0 +0000000001F00000000002A00000000007C0000000000A80000000001FC0000000002AA0000000 +007C7000000000A82A00000001F01F00000002A00AA0000003C007F000000A8002A800000F0001 +FC0000AA0000AA0000F000007E000AA000002A800F0000001F80A00000000A80F0000000078029 +237CA334>185 D<00200080007001C0802800A8C01C01FCA00A00A8301F01F0280A00A03C1F01 +F0280A02A03C0707C0280202800C0007C008000A8000001F0000000A0000001C00000028000000 +7C000000A8000001F0000000A0000001C000000280000007000000080000001C00000020000000 +7000001E1C749834>195 D<00C0007FC00000C0002A8000003FFFFFF000002AAAAAA000000FF0 +000000000AA0000000000000000000000000000000000000000000000000000000000000000000 +00000000000000000001FE000002AAAAAAA0C003FFFFFFE0AAAAAAAAAAA03FFFC70007E02AAA82 +8002A00FC007C000000A8002800000000007C00000000002800000000007C0000000000A800000 +00001F00000000000A00000000001F00000000000A00000000001F00000000002A00000000007C +00000000002800000000007C0000000000280000000000700000000000A00000000001F0000000 +0000800000000001C0000000000200000000000300000000000800000000000C000000002B2B7C +A534>198 D<F0000000E00000003F0000002A0000000FC000000A8000000FC000000A8000000F +0000000A0000000F0000000A0000000F0000000A0000000F0000000AA000000FF000000AAA8000 +0F1FC0000A0AA8000F01FC000A00AA800F001FC00A000AA00F0007F00A0002A00F0001F00A0000 +A00F0000000A0000000F0000000A0000000F0000000A0000000F0000000A0000000F0000000A00 +00000F0000000A0000000F000000080000000C0000001C2B72A734>200 +D<F0000000E00000003F0001E02A0000A00FC000780A8000280FC07C780A8028280F001F000A00 +0A000F001F000A000A000F0000000A0000000F0000000AA000000FF000000AAA80000F1FC0000A +0AA8000F01FC000A00AA800F001FC00A000AA00F0007F00A0002A00F0001F00A0000A00F000000 +0A0000000F0000000A0000000F0000000A0000000F0000000A0000000F0000000A0000000F0000 +000A0000000F000000080000000C0000001D2B72A734>I<000000000078000000000078000000 +00001E00000000001E000000001E1E000000000A0E000000000780000000000280000F00000780 +000A000002800003C01C00000002800800000003C00700000002800200000003C001C000000280 +008000000FC001F000000A8000A800000F00007C00000A00002A00000F00001F00002A00000A80 +003C00001F80002800000A80003C0000078000A8000002A000F0000007E000A0000002A000F000 +0001E002A0000000A803C0000001F80280000000A80300000000780A00000000280C0000000078 +A80000000028F000000000782000000000282F267EA934>208 D<000000001E00000000001E00 +F00000000780F000000007803F00000787803E00000283800FC00001E0000A800000A0000F0000 +01E0000A000000A0000F00000000000A00000000000F00000000000A00000000000F001FF00000 +0A000AA000000FFFFFFC00000AAAAAA800000F3F000000000A2A000000000F00000000000A0000 +0000000F00000000000A00000000000F00000000000A00000000000F00000000000A0000000000 +0F00000000000A00000000000F00000000000A00000000000F00000000000A80000000000FC000 +0000000AA8000A800003FC001FC00002AAAAAA800000FFFFFFC00000AAAAAA8000001FFFFC0000 +292978A934>211 D<C00007FF00C00002AA003FFFFFFF802AAAAAAA8003FC0007E002A80002A0 +0000001FC00000000A800000001F000000000A000000001F000000002A000000007C0000000028 +000000007C00000000A800000001F000000000A000000001F000000002A000000007C00000000A +800000001F000000002A000000007C00000000A800000001F000000002A000000007C00000000A +800000001F00000000AA00000000F00000000A000000000F00000000232378A134>213 +D<0000000007E00000000002A0000000001818000000000808C00007FC1818C00002A808083FFF +FFFF18183AAAAAAA080803FC001FC7E002A8000A82A00000001F00000000000A00000000007F00 +000000002A00000000007C00000000002800000000007C0000000000A80000000001F000000000 +00A00000000001F00000000002A00000000007C00000000002800000000007C0000000000A8000 +0000001F00000000002A00000000007C0000000000A80000000001F00000000002A00000000003 +C0000000000A80000000000F0000000000AA0000000000F0000000000A00000000000F00000000 +002D277CA534>215 D<0C0007FC000C0002A80003FFFFFF0002AAAAAA0000FC00000000A80000 +00000000000000000000000000000000000000000000000007C00000000280C001FFFFE082AAAA +AAA03FFFFC07E02AAAA802A00FC00007C00A80000A800000001FC00000000A800000001F000000 +002A000000007F000000002A000000007C00000000A800000001FC00000002A800000007F00000 +0002A000000007C00000000A800000001F000000002A000000007C00000000A800000001F00000 +000A000000001F00000002A000000003F0000000232978A534>233 D<00001F00000000000A00 +0000000007C00000000002800000000007F00000000002A0000000F007C0000000A00280000000 +3F07C00000002A02800000003C07C00000002802800000003C07C00000002802800000003C07C0 +0000002802800002003C07C0000600A80280000A00F007C0001800A00280002800F007C0006000 +A0028000A000F007C0018000A00280028000F007C0070002A002802A0003C007C07C0002800280 +A80003C007C1F0000280028AA000030007DFC0000A0002AA80000F0007FF00000A000AAA00000C +001FFC000020000AA80000300007F00000C00000800000C00001C000002F277EA534>235 +D<300000000030000000000C0000000008000000000FC00000000A8000000003F000000602A000 +000200FC00001800A8000008003C00006000280000A000000001C0000000028000000007000000 +002A000000007C00000000A800000001F000000002A000000007C00000000A800000001F000000 +002A000000007C00000002A800000007F00000000AA00000001FC0000080AA800000C0FF000000 +AAAA0000003FF00000002AA00000003FC000000008000000000C00000000272578A334>243 +D E /Fw 8 212 df<007FF000002AA00003C01F0002800A000F0007C00A0002803C0001F02800 +00A0300001F0200000A0C00001F0800000A0000001F0000002A0000007C000000280000007C000 +000A8000001F0000002A0000007C000000A8000001F0000002A0000007C000000A8000001C0000 +002800000070000000A0002001C0007002800020030000700A0000A00C0001F02AAAAAA03FFFFF +F0AAAAAAA0FFFFFFF01C2774A534>178 D<FFFFFFF0EAAAAAA0FFFFFFF0AAAAAAA0F0000070A0 +000020C00001C080000080C00007008000020000001C000000080000001C000000280000007000 +0000A0000001F0000000A0000001C000000280000007C000000280000007C00000028000000700 +00000A0000001F0000000A0000001F0000000A0000001F0000002A0000007C000000280000007C +000000280000007C000000280000007C00001C2774A534>183 D<0007FC00000002A80000003C +07C700002802820003C0007F000280002A000F00001F000A00000A003C0000070028000002003C +000007002800000200F000000000A000000000F000000000A000000000F000000000A000000000 +F000000000A000000000F000000000A000000000F000000000A000000000F000000000A8000000 +003C0000000028000000803C000001C02A000002800F000007000A80000A0003C0001C0002A800 +A800003C01F000002AAAA0000007FF0000222578A534>195 D<FFFFFFFC00FEAAAAA8000F0000 +7C000A000028000F00001C000A000008000F000007000A000002000F000007000A000002000F00 +0000000A000000000F000700000A000200000F000700000A000A00000F001F00000AAAAA00000F +FFFF00000AAAAA00000F001F00000A000A00000F000700000A000200000F000700000A00020000 +0F000000000A000000800F000001C00A000000800F000001C00A000002800F000007000A00000A +000F00001F00AAAAAAAA00FFFFFFFF00222578A534>197 D<FFFFAAAA07C0028007C0028007C0 +028007C0028007C0028007C0028007C0028007C0028007C0028007C0028007C0028007C0028007 +C0028007C0028007C0028007C0028007C0AAAAFFFF10256EA534>201 D<001FFFF0000AAAA000 +007C000000280000007C000000280000007C000000280000007C000000280000007C0000002800 +00007C000000280000007C000000280000007C000000280000007C000000280000007C00000028 +0000007C000000280000007C00280028003C007C00A8002800FC007C00A800A800F001F000A000 +A000F001F000A802A0003C07C0002AAA800003FC00001C2574A534>I<FFC0007FE0FE80002AA0 +0FC00007000A800002000CF000070008A00002000CFC00070008A80002000C3C00070008280002 +000C1F000700080A0002000C1FC00700080A8002000C07C007000802A002000C01F007000800A8 +02000C01FC07000800A802000C007C070008002A02000C001F070008000A82000C001FC7000800 +0AA2000C0007F700080002A2000C0001F700080000AA000C00007F000800002A000C00007F0008 +00002A000C00001F00AA80000A00FFC0000700232578A534>206 D<00FFC07000AA80200F007F +F00A002AA03C0007F0280002A0F00001F0A00000A0F0000070A0000020F0000070A0000020FC00 +0000AA8000003FC000002AAA000003FF000002AAA800007FFC00002AAA800001FFC00000AAA000 +0007F0000002A8000001FC800000A8C000007C80000028C000007CA0000028F000007CA80000A8 +FC0001F0AA8002A0FFC007C0AAAAAA80C07FFC001E2574A534>211 D E +/Fx 5 251 df<0000000007800000000002800FFFFFFFFFE00FFAAAAAAAA00000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000028000000 +00007C0000AAAAAAAA0000FFFFFFFF0000AAAAAAAA000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +28000000000078EAAAAAAAAAAAFFFFFFFFFFFE2F297EA734>176 D<0030001FC0000030000A80 +00003F001F0000003E000A0000003C001F00000038000A0000003C001F00780028000A002800F3 +FFFFFFFE00A2AAAAAAAA00F0001F000000A0000A000003C0001F00000280000A000003C0C01F01 +E00280800A00A00FC0FFFFFFF80A80AAAAAAA80FC0F01F01E02A80A00A00A033C0F01F01E0A280 +A00A00A0C3C0F01F01E08280A00A00A003C0F01F01E00280AAAAAAA003C0FFFFFFE00280AAAAAA +A003C0F01F01E00280A00A00A003C0001F00000280080A000003C01C1F000002800A8A000003C0 +07DF0000028002AA000003C001FC0000028000AA000003C0007F0000028000AAA80003C001F7FC +0002800280AAAA03C007C1FFFE028028000AA803C07C001FF802828000002803C3C00000782F2F +7EA934>200 D<00FC070001E000FC020000E000F007FFFFF800F002AAAAB800F007C001E000F0 +028000A000F007C001E000E0028000A000F3C7C001E000A2828000A0FFFFF7FFFFE0FEAAA2AAAA +A00003C7C001E00002828000A0000F07C001E0000A028000A0000F07C001E0000A02AAAAA0003C +07FFFFE0002802AAAAA0003C07C001E000A8028000A000F007C001E000A8028000A000FC07C001 +E002AA828000A003F3C7C001E00AA2A2AAAAA00CF0F7FFFFE0A8A0A2AAAAA0F0F0F0707C00A0A0 +A02A280000F0007F7C0000A0002A280000F0007C7C0000A00028280800F0007C7C1800A000A828 +0800F001F07C1800A000A0280800F001F07C1800A00280280A00F007C07C1E00A00A002AAA00F0 +1F007FFE00A0A0000AA800F0F0001FF82F2F7EA934>235 D<000007F00000000002A000000000 +07C00078000002800038FFFFFFFFFFFEFFFAAAAAAAAE000007C00000000002800000000007C000 +0000000280000000FFFFFFFE0000AAAAAAAA0000F007C01F0000A002800A0000F007C01F0000A0 +02800A0000F007C01F0000AAAAAAAA0000FFFFFFFF0000AAAAAAAA00000007C000000000028002 +80000007C0078002AAAAAAAAA003FFFFFFFFE002AAAAAAAAA0000007C007800000028002800000 +07C00780AAAAAAAAAAAAFFFFFFFFFFFEAAAAAAAAAAAA000007C00780000002800280000007C007 +8002AAAAAAAA8003FFFFFFFF8002AAAAAAAA80000007C00780000002800280000007C000000000 +02800000000007C000000000AA8000000000FFC0000000000A00000000001F0000002F2F7EA934 +>246 D<000007F00000000002A00000000007C00000000002800000030007C000000300028000 +00030007C000780300028000280FFFFFFFFFFE0FAAAAAAAAAA0F00000000780E00000000283C00 +000000603800000000203C000001F18028000000A080003FFFFFFC00002AAAAAA80000000001F0 +0000000002A00000000007C0000000020A80000000071C0000000002A80000000007F000000000 +02A00028000007C00078AAAAAAAAAAAAFFFFFFFFFFFEAAAAAAAAAAAA000007C000000000028000 +00000007C00000000002800000000007C00000000002800000000007C000000000028000000000 +07C00000000002800000000007C00000000002800000000007C000000000AA8000000000FFC000 +0000000A00000000001F0000002F2F7EA934>250 D E /Fy 6 237 df<00000FF0003FE0000000 +000FF0003FE0000000000DB0001B40000000000F80003F00000000000F80003F00000000000D80 +001B00000000000FC0003F00000000000F80003F00000000000D80001B00000000001FC0003F00 +000000000D80003F00000000000D80001B00000000001FC0003F00000000000D80001F00000000 +000D80001F006C0000001FC0003F007E0000000D80001B006C001FFFFFFFFFFFFFFF803FFFFFFF +FFFFFFFF801B6F6DB7B6DB7B6D8000000F80003F00000000000F80003F00000000000D80001B00 +000000000F80003F00000000000F80003F00000000000D80001B00000000000FC0003F00000000 +000F80003F00000000000D80001B00000000001FC0003F00000000000D80001F00000000000D80 +001F00000000001FC0003F00000000000D80001F00000000000D80001F00000000001FC0003F00 +000000000D80001B00000000000F80003F000F8000000FC0003F001F8042492DA4925B492DA0FF +FFFFFFFFFFFFFFF0FFFFFFFFFFFFFFFFF0DB492DA492DB496DA000000FC0003F00000000000F80 +003F00000000006C00001B00000000007E00003F00000000007E00003F00000000006C00001B00 +000000007E00003F00000000007C00001F00000000007C00001F00000000007E00003F00000000 +006C00001B0000000003F000003F0000000003F000003F00000000036000001B0000000003F000 +003F0000000003F000003F00000000096000001B000000001F8000003F000000001F8000003F00 +000000690000001B00000000FC0000003F00000000FC0000003F0000001B000000001B0000003F +000000003F0000001F000000003F00000044447EBB48>102 D<03F00000780003F00000280003 +C0FFFFFE0003C0AAAAAA0003C007C07C0003C00280280003C007C07C0003C00280280003C007C0 +7C0003800280280003CF07C07C00028A02802800FFFFC7C07C00FAAA8280280003C007C1F00002 +800280A00003C01F71F00002800A20A0A003C01F71F1E002800A20AAA803C01F71FFF802820A20 +AAA803C31F71F1E002AA0A28A0A003FC1F1C01E0AAA80A0802A0FFC01F1C0780AA800A0A02803F +C01F1F07802A802A0A0A8033C07C071F00228028028A0003C07C07DF0002802802AA0003C07C01 +FC0002802800A80003C07001F0000280A002A80003C0F007FC000280A00AAA8003C0C01F1F8002 +80802802AA03C0C07C07FEFA82028000A8FFC307C001F80E08280000280F0C3C0000782F2F7EA9 +34>183 D<03F0000007E003F0000002E003C00000078003C00000028003C03000078003C02000 +028003C01F00078003C00A00028003C007F00780038002A0028003C001FC0780028000A8028003 +C0007C078002800028028003C0007C078002800028028003C00000078002800000028003C00000 +078002800000028003C00000078002800000028003C00000078002800000028003C00000078002 +800000028003C00000078002800080028003C001C00780028002800A8003C007001F0002802A00 +0A0003C07C001F000280A8000A0003C0F0001F00028AA0002A8003CFC0007D8002AA8000A8A803 +FC0001F078AAA80002A02AFFF00007C07E2A000028000A3F00007C001E30000280000A300007C0 +001E0000A80000000000FC0000002F2F7EA934>202 D<000007F00000000002A00000000007C0 +07800000028002800FFFFFFFFFE00FFAAAAAAAA000030007C0000002000280000000C007000000 +00800200000000F01C00780000A0080028FFFFFFFFFFFEFAAAAAAAAAAA00000000000000000000 +0000000000000000000AAAAAA800003FFFFFFC00002AAAAAA800003C00007C0000280000280000 +3C00007C00002AAAAAA800003FFFFFFC00002AAAAAA800003C00007C00002800002800003C0000 +7C00002AAAAAA800003FFFFFFC00002AAAAAA80000001C000000000A8A800200000FC7C0070002 +0A82A002A0030F01F001E0020A00A020A8030F01F07078080A00A0202A0C0F0000707EE80A0000 +280AFC0F00007C1EF00AAAAAA800F00FFFFFFC000002AAAAA0000003FFFFF0002F2F7EA934> +213 D<0000001FC0000000000A80003000001F1E003000000A0A000F001FFFFF800F000AAAAA80 +03C0007C1E0003C000280A0000F0007C1E7800A000280A2800F3FFFFFFFE00A2AAAAAAAA000000 +00000000000000000000001C00078000000800028000001FFFFFE000000AAAAAA000001F000780 +00A00A00028000F01F000780AAA80AAAAA80FFFC1FFFFF80AAA80AAAAA8000F01F01F00000A00A +00A28000F00001F78000A02AAAAAA000F07FFFFFE000A02AAAAAA000F01F01F00000A00A00A028 +00F01F01F07800A2AAAAAAAA00F3FFFFFFFE00A2AAAAAAAA00F00001F00000A00000A00000F000 +01F00002880000A00003CC00000000EA02AAAAAAAAFF03FFFFFFFE38002AAAAAA83C007FFFFFF8 +3000000000003000000000002F2F7EA934>227 D<0000000000200000000000600000000000A8 +0000000001F8AAAAAAAAAAAAFFFFFFFFFFFEAAAAAAAAAAAA2F077E9834>236 +D E /Fz 6 224 df<000101808034>161 D<8000C00028003C000A800FC002A003F000A000F00C +0A788434>I<2A803FC0AAA0F0F080A0C0308020C030A0A0F0F02A803FC00C0C788634>I<54FE54 +FE54FE5407076B9434>166 D<800000000000C00000000000AAAAAAAAAA80FFFFFFFFFF80AAAA +AAAAAAA03FFFFFFFFFE02AAAAAAAAAA00F00000000000A00000000002B097C9634>188 +D<C0000006800000023000001C200000080C00007008000020030001C00200008000C0070000A0 +0A0000701C0000282800001C7000000AA0000007C000000280000007C000000AA000001C700000 +28280000701C0000A00A0000C0070002800280030001C00A0000A00C000070280000283000001C +A000000AC000000700000002202076A134>223 D E /FA 4 237 df<000007F00000000002A000 +00000007C00000000002800000000007C00000000002800000000007C000000000028000000030 +07C00000002002800000003F07C07C00002A02802800003C07C0078000280280028000FC07C001 +F800A8028000A800F007C0007E00A00280002A03C007C0001E02800280200A030007C0701E0A00 +02802A0A0C0007C07F0028000280AA00300007C1FC00A000AA80A800C000FFC1F0008000AA82A0 +0000001F07F00000000A0AA0000000001FC0000000002A80000000007F0000000000AA00000000 +01FC0000000002A80000000007F0000000000AA0000000001F0000000000AA0000000000FC0000 +00000A80000000000FC000000002A00000000003F000000000FC0000000000FC00000000002F2F +7EA934>175 D<000007F00000000002A00000000007C00000000002800000000007C007800000 +028002800FFFFFFFFFE00FEAAAAAAAA000030007C0000002000280000000C00700000000800200 +000000F01C00780000A0080028FFFFFFFFFFFEEAAAAAAAAAAA000000000000000000000A0000C0 +00001F0000AAAAAAAA8000FFFFFFFF8000AAAAAAAA8000F000001F0000A000000A0000F000001F +0000AAAAAAAA0000FFFFFFFF0000AAAAAAAA0000F000001F0000A000000A0000F000001F0000AA +AAAAAA0000FFFFFFFF0000AAAAAAAA00000007C00000000002800028000007C00078AAAAAAAAAA +AAFFFFFFFFFFFE000AAAAAAAA8000007C00000000002800000000007C000000000028000000000 +07C00000000002800000000007C000002F2F7EA934>207 D<00000FC0000000000A8000000000 +1F00000000000A00000000001F00000000000A00000000001F00000000000A00000000001F0000 +0000000A00000000001F00000000000A00000000001F00000000000A00000000001F0000000000 +0A00000000001F00000000000A000A0000001F001F0000000AAAAA8000001FFFFF8000000AAAAA +8000001F00000000000A00000000001F00000000000A00000000001F00000000000A0000000000 +1F00000000000A00000000001F00000000000A00000000001F00000000000A00000000001F0000 +0000000A00000000001F00000000000A00000000001F00000000000A00000000001F0000000000 +0A00002800001F000078FAAAAAAAAAAAFFFFFFFFFFFE2F2D7EA934>229 +D<000007001E00000002000A0000FC07FFFF8000FC02AAAA8000F007C01E0000F002800A0000F0 +07C01E0000E002800A0000F007FFFE0000A002AAAA0000F007C01E0000A002800A0000F3C7C01F +0000A282800A00FFFFF7C01F00EAAAA2800A0000F007FFFF0000A002AAAA0000F00000000000A0 +0000002800F00000007800A0AAAAAAAA00F0FFFFFFFE00A0AAAAAAAA00F007C0000000A2028000 +2800F30700007800AA0AAAAAAA00FC1FFFFFFE02A82AAAAAAA03F070707078AAA0A0A0A028FFC0 +C1F1F078AA8A80A0A0283C0F01C1C078280A0282802830000707C07820000A0280A800001C0701 +F80000A80A00A80000F01C01E00000002002A00000007007E000000280AA80000007C1FF800000 +00000A00000000001E002F2F7EA934>236 D E /FB 5 254 df<00000001FF0000000000000001 +FF0000000000000000B60000000000000001F80000000000000001F80000000000000000B00000 +000000000001F80000000000000001F80000000000000001F00000000000000001F80000000000 +000001F80000000000000001F800000D8000000001F800001F8000000001F800000D80DFFFFDFF +FFDFFFEFF0FFFFFFFFFFFFFFFFF0DB7FEDBFFEDBFF6DB000000E000007E0000000001E000007E0 +000000000C00000360000000000E000007E0000000000E000007E0000000000C00000340000000 +000E000007E0000000000E000007E0000000000180001B400000000003C0003F00000000000380 +003F00000000000180001B000000000003C0003F00000000000180001F000000000001B0001F00 +0000000003F0003F000000000001B0001F0000000000007000D80000000000007001F800000000 +00003000D80000000000007E00F80000000000007E01F80000000000003682D80000000000000F +C7E00000000000000FC7E00000000000000496C000000000000001FF0000000000000001FF0000 +000000000001F60000000000000001FF0000000000000001FF000000000000000FC6C000000000 +00000FC7E00000000000000FC7C00000000000007E00D80000000000007E01FC0000000000003E +00D8000000000001F0003FE00000000003F0003FE00000000001B0001B60000000000F800007FF +800000000FC00007FF800000012D8000034B2D200003F0000000FFFFF00003F0000000FFFFF000 +69200000004B6DA000FC0000000003FF8000FC0000000003FF80DB0000000000000C00FF000000 +0000001E00FF0000000000000C0044447EBB48>56 D<0003001C00000003000800000003F01C00 +000002A00800000003C01C00000002800800000003C0070000000280020000000F00070000000A +00020000000F0001C000000A00008000000C0001F00000080000A000003C00007C000028000028 +00003000001F80002000000AA800C0000007FE02AAAAAAA2AA033FFFFFF1F80A2AAAAAA0A80C00 +7C01F078A8002800A028F0007C01F000A0002800A00000007C01F00000002800A00000007C01F0 +000000A800A0000000F001F0000000A000A0000000F001F0000000A000A0000000F001F0000002 +A000A0000003C001F00000028000A0000003C001F000000A8002A000000F0007F0000028000280 +00003C0007C00000A000AA800000F001FFC0000E00000A00000F00001F00002F2F7EA934>172 +D<000007F00000000002A00000000007C00000000002800000000007C000000000028000000000 +07C00000000002800000000007C00078000002800028FFFFFFFFFFFEFEAAAAAAAAAA00030001F0 +0000020000A00000030001F00000020000A00000030001F00000028002A0000000C007C0000000 +800280000000C007C0000000A00280000000F007C0000000A00A80000000701F00000000280A00 +0000007C1F000000002A2A000000001F7C000000000AA80000000007F00000000002A000000000 +07F0000000000AA8000000001F7C000000002A2A000000007C1F00000000A80AA0000000F007F0 +000002A002AA000003C001FF00002800002AAA003C00007FFE0280000002A803C0000007F8FC00 +00000020FC00000000602F2F7EA934>184 D<000007F00000000002A00000000007C000000000 +02800000000007C00078000002800028FFFFFFFFFFFEFFEAAAAAAAAA0000F01F00000000A00A00 +000300F01F00000200A00A000003F0F01F1F0002A0A00A0A0003C0F01F01E00280A00A00A00F03 +C01F00780A02800A00280C03C01F007E280A800A002A300F001F001EA02A200A000AC030700000 +0080202A00000000007F00000000002A00A00000007C01F0000000AAAAA8000000FFFFFC000002 +AAAAA8000003C007F000000AA00AA000000F701FC00000AA282A800000F01C7F00000AA00AAA00 +000F0007F000000A000AA8000000001F7C00000000AA2AA0000000FC1FF000000A8000AAAA000F +C001FFFE02A800000AA803FC00001FF8FC0000000028FC00000000782F2F7EA934>209 +D<00000FC0000000000A80000000001F00000000000A00000000001F00000000000A0000000000 +1F00000000000A00000000001F00007800000A000028FFFFFFFFFFFEFEAAAAAAAAAA00007C0000 +0000002800000000007C00000000002800000000007C00000000002800000000007C0000000000 +2800280000007C007C0000002AAAAA0000007FFFFF0000002AAAAA0000007C007C000000280028 +0000007C007C000000A80028000000F0007C000000A00028000000F0007C000000A00028000000 +F0007C000002A00028000003C0007C000002800028000003C0007C00000A8000A800000F0001FC +00002A0000A800003C0001F00000A00002A00000F00007F000028000AA800003C001FFC0003C00 +000A00003C00001F00002F2F7EA934>253 D E /FC 47 244 df<000F000000000A0000000003 +F000000002A000000003C0000000028000000003C1F000000280A0003003FFFC003002AAA8000F +FFFF00000AAAAA0000000F000000000A000000000F070000000A020000000C07C0000008028000 +000C07C0000008AAA800000DFFFC00002AAAAA80003F1F07C000AA0A02A000CC1C01F002882800 +A8030C7C00780A082800280C0C7000782808A0002A300DC0001E200A80000A300F00001EA00A00 +000AC00F00001E800A00000AC00F00001E802A00002AC03700007882A2800028C3C7C00078AA02 +8000A0FF07C001F0A000000280F0000007C0000000A800000001FC00272F7AA934>162 +D<C00000000000C000000000003000000000003000000000003000001F00002000000A00003C00 +0001C0002800000080003C00000070002800000020003C00000078002800000028003C00000018 +00280000000A003C0000001E00280000000A003C0000001E00280200000A003C07000006002802 +000002803C0700000780280A000002803C0F000007802A0A00002A800F0C00007F800A2800002A +800F3C00001F800AA800000A800FF0000007800AA00000028003F00000000002A00000000003F0 +0000000000A00000000000F00000000029237AA334>164 D<00F0000000A00000001FC000000A +80000001FC000000A80000007C0000002800000000000000000000000000000000000000000000 +000000001FF000000AA000C1FC1C00AAA80A003FC007002A8002803C0007C028000280000007C0 +00000280000007C000000280000007C000000280000007C000000280000007C000000280000007 +C000000A8000001F0000000A0000001F0000002A0000007C000000A8000001F000000A0000001F +000002A0000003F000001A2D74A934>166 D<000300000000020000000001F000000000A00000 +00007F000000002A000000001F000000000A000000000000000000000000000000000000000000 +00000007000000000200000301FFC0000200AA800000FFC7C00000AA8A800000F01F000000A02A +000000007C00000000A800000001F000000002A000000007C0000000028000000007000000000A +000000001C0000000028000000003C00000000A800000000F000000002AA00000003DF0000000A +8A8000000F01C000002A008000003F01C00000AA00A00000FC01F00000A0002AAAA0F0007FFFE0 +000002AAA0000007FFE0232D78A934>168 D<003C00000000003800000000000FC0000000000A +80000000000F00000000000A00000000000F0001F000000A0000A000000F00001E00000A00000A +00000F1F000780000A0A0002803C0FFF000780280AAA0002800FFFC0007C000AAA80002800000C +00000000000800000000000C000000000008002A8000000C007FC00000080AAAA800000C1FC1FC +000008AA80AA00000DF0001E00000AA0000A80000F00000780002A00000280003C0000078000A8 +0000028000FC0000078082A800000280C3CC00000780AA8800000A80FF0C00001E00AA0800002A +003F0C00007E0008AA0202AA000CFF0707FC00002A00AA8000003F01FFC000000800000000000C +00000000292B7CA734>170 D<000F00000000000A000000000003C00000000002800000000003 +F00000000002A00000000003C000000000028000000000030000000000020000000000030001F0 +0000020000A000000FFF001E00000AAA000A00C0FF01F0078080AA00A002A0FF0C007001E0AA28 +002000A03C3C007001E02828002000A8003C007001F80028002000A80030007001F800A000202A +A800F000707FF800A000A02AA800F001F001E002A000A000A003C001F00000028000A0000003C0 +01C000000A80028000000F0007C000000A00028000000F0007C000002A080A8000003C0C1F0000 +00A80AAA000000FC03FF000000A000A8000000F001FC0000000000A00000000001F00000002D2B +7CA734>I<0000000001E00000000001E0000F00000078000A000000780003C000787800028000 +28380003F0001E000002A0000A000003C0001E00000280000A0000030000000000020000000000 +030007C000000200028000000FFF007C00000AAA002800C0FF01F01E0080AA00A00A80FF0C0070 +0780AA28002002803C3C007007802828002002A0003C007007E00028002002A00030007007E000 +A000202AA000F000707FE000A000A02AA000F001F0078002A000A0028003C001F00000028000A0 +000003C001C000000A80028000000F0007C000000A00028000000F0007C000002A080A8000003C +0C1F000000A80AAA000000FC03FF000000A000A8000000F001FC0000000000A00000000001F000 +00002D2D7CA934>I<00FC000000E80000003C000000280000000F0000000A0000000F1FC0000A +0A80C007FF00C002AA003FFFC0002AAA80000FC1F0000A80A0000000707F0000202A00007FFC00 +00AAA83001FC002AAAAA000FFF07000AAA028003C007C0028002A0000001F0000000A80000007C +002AA02A003FF07F02AAAAAA03C01FFF0A800AAA0C00001F2800000A3000000020000000300000 +00280000003C0000000A8000000FC0000002AAAA0003FFFF00002AAA00003FFF00202D78A934> +I<3C0001FC00003C0000A800000F00001FC0000F00000A80000F000007C0000E00000280000F00 +0007C0000A00000280003C000007C0002800000280003C000007C7802800000282803C07007FFF +E02802002AAAA03001FFFFC0002000AAAA800030007C07C000A00028028000F0000007C000A000 +00028000F0000007C000A08000028000F0C00007C000A08000028000F0C00007C000A080000280 +00F0C00007C000A28000028000F30000070000A200000A0000F300001F0000AA00000A00003F00 +001F00002A00000A00003C00001F00002800000A00003C00001C00002800002800003C00007C00 +000800002000000C0000700000000000800000000001C000000000020000000000070000002B2D +7AA734>177 D<0300000000020000000000FFC0000000AA800000000FFFFC00000AAAA8000000 +1FFC0000000AA8000001FC00000000A80000001F000000000A0000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000020000000003000000000A000000000C0000000008000000000C00000000080000000 +00C0000000008000000000C000000000A8000000003C000000000AAAAAAA800FFFFFFFC000AAAA +AA8000FFFFFFC0222778A534>179 D<003F000000002A00000000FC00000000A8000000003C01 +F000002800A000000F007F00000A002A000007C1FC00000280A800C001FFC0008000AA80003FFF +FC00002AAAA8000003F01F000002A00A0000000007C000000002A000000001F000000000A80000 +00007C000000002A000000007F000002AA2A000007FF1F0000AAAAAA8000FC07FFC00AA802AA80 +0F00001FC00A00000A800C00000700280000020030000000002000000000300000000028000000 +000C000000000A800000000FC000000002AA80000003FFC00000002AAAA000003FFFF00000002A +A00000007FF000222D78A934>181 D<F000000000F0000000003C0000000038000000003F0000 +00002A000000003F000000002A000000003F000000002A000000003C0000000028000000003C00 +00000028000000003C0000000028000000003C0000000028000000003C0000000028000000003C +0000000028000000003C0000000028000000003C0000000028000000003C000000002800000000 +30000000002000000000300000000020000000803000000180200000028030000006002000000A +003000001C00200000A800300001F00028002AA0000C007FC0000AAAA800000FFFFC000000AA00 +000001FF000000212D74A934>183 D<F000000000F0000000003C0000000038000000003F0000 +00002A000000003F001F00002A000A00003F0007C0002A000280003C07C7C00028028280003C01 +F000002800A000003C01F000002800A000003C0000000028000000003C0000000028000000003C +0000000028000000003C0000000028000000003C0000000028000000003C000000002800000000 +30000000002000000000300000000020000000803000000180200000028030000006002000000A +003000001C00200000A800300001F00028002AA0000C007FC0000AAAA800000FFFFC000000AA00 +000001FF000000212D74A934>I<000007C00000000002800000000001FC0000000000A8000000 +00007F00000000002A00000000007C00000000002800000000007C0000000000280000000007FF +FFF8000002AAAAA8C00FFFF007FEC00AAAA002AA3FFF007000002AAA002000000F00007000000A +002AA0000000007FF000000000AAA000000000C1F00000000280A800000003007C000000020028 +00000003007C00000002002800000003007C00000002002800000003007C000000028028000000 +00C07C00000000AAA800000000FFFC00000000AAA8000000007C700000000028A00000000001F0 +0000000000A00000000001C00000000002800000000007C0000000000200000000000700000000 +000800000000001C0000000000A00000000000F00000002F2F7EA934>I<000007C00078000002 +800078000001FC001E000000A8001E0000007F1E1E0000002A0A0E0000007C0780000000280280 +0000007C07800000002802800000007C0000000000280000C00FFFFFFFF8C00AAAAAAAA83FFF00 +7007FE2AAA002002AA0F00007000000A002AA0000000007FF000000000AAA000000000C1F00000 +000280A800000003007C00000002002800000003007C00000002002800000003007C0000000200 +2800000003007C00000002802800000000C07C00000000AAA800000000FFFC00000000AAA80000 +00007C700000000028A00000000001F00000000000A00000000001C00000000002800000000007 +C0000000000200000000000700000000000800000000001C0000000000A00000000000F0000000 +2F2F7EA934>I<0000001F00000000000A000000000007C00000000002800000000007F0000000 +0002A000003C0007C000002800028000000F0007C000000A00028000000F0007C000000A000280 +00000F0007C000000A00028000000F0007C1F8000A000280A8000F07FFFFFE000AAAAAAAAA00FF +FF07C0002AAAAA028000FFCF0007C000AA8A000280003C0F0007C000280A00028000000F000700 +00000A000A0000000F001F0000000A020A0000000F071F0000000A02AA0000000F01FC0000000A +00A80000000F007C0000000A002800000003000000000002000000000003000000000002800000 +000003C00000000002A80000000000FC00000000002AAAAA0000007FFFFF00000002AAAA000000 +07FFFF002F2D7EA934>I<000007F000000002A0000031FC7C000020A82800003FC1FC00002A80 +A800000C07C000000802800000001F000000000A000000007C000000002800000001F000000000 +A000000007000000000A002AA8000C007FF800282AAAAA00307FFFFE02A2AAAAAA03C7C7C0000A +AA8A80000FFC1C0000AAA8280000FF00700000AA00A00000F001C00000A0008000000001C00000 +00028000000007000000000200000000070000000002000000000700000000028000000001C000 +000000A000000001F0000000002A800000007FC00000000AA80000001FFC00000000A800000001 +FC00272D7AA734>189 D<000F00000000000A000000000003C00000000002800000000003C000 +0000000280000000000307C00000000202800000000F7FC00000000A2A800000C00FFC000000C0 +0AA8000000FFFF001FC000AAAA000A80003C3C0001FE0028280000AA80003C00001F8000280000 +0A80003000001F8000A00000AA8000F00001F00000A00000A00000C00000000002800000000003 +C00000000002800000000003C0000000000A80000000000F00000000000A00080000000F001C00 +00002A00280000003C00700000002800200000003C0070000000A80028000000FC001C000000A0 +000A800000F0001FC00000000002AAAA80000007FFFF800000000AAA800000001FFF80292B7CA7 +34>191 D<0000000001E00000000001E0000F00000078000A000000780003C000787800028000 +28380003C0001E00000280000A00000307C01E00000202800A00000F7FC00000000A2A800000C0 +0FFC000000C00AA8000000FFFF001FC000AAAA000A80003C3C0001FE0028280000AA80003C0000 +1F80002800000A80003000001F8000A00000AA8000F00001F00000A00000A00000C00000000002 +800000000003C00000000002800000000003C0000000000A80000000000F00000000000A000800 +00000F001C0000002A00280000003C00700000002800200000003C0070000000A80028000000FC +001C000000A0000A800000F0001FC00000000002AAAA80000007FFFF800000000AAA800000001F +FF802D2D7CA934>I<003C0000000038000000000F000000000A000000000F000000000A000000 +000C0000000008000000003C07C0000028028000C03DFFF000C028AAA000FFFFC00000AAAA8000 +003C3C000000282800000000300000000020000000003000000000A000000000F000000000A000 +AA0000F001FF0000A02AAAA000C07F01F00082AA00A800C7F00078008AA0002A00CF00001E02AA +00000A03F000001E02A000000A03F000001E02A000002A03C000007802800000A800000001F800 +000002A800000007F00000000AA00000001FC0000000A800000001FC0000002A000000007F0000 +272D7AA934>I<00002A800000007FC000000AAAA800001FF07C0082AAA02A00C3FC001F00AAA8 +000A803FC00007C02A800002800C000007C0080000028000000007C0000000028000000007C000 +00000A800000001F000000000A000000001F000000002A000000007C00000002A800000007C000 +00002A800000007C00002218789834>195 D<000001FFF000000000AAA0000000FF001F000000 +AA000A00000FF0000180000AA0000080C0FF000001E080AA000000A03FF0000000602AA0000000 +280FC0000000780A80000000280000000000780000000000280000000000780000000000A80000 +000001F80000000000A80000000001E00000000002A00000000007E0000000000AA0000000001F +80000000002A80000000007F0000000002AA0000000007F0000000002AA0000000007F00000000 +0AAA000000001FC000002D1F7E9F34>I<00000007F800000002A800001FFFFE00000AAAAAC00F +FC7F00C00AA82A00FFFC01F000FAA800A0003FC007C0002A800280000C001C0000080008000000 +00700000000020000000007000000000A000000001C0000000008000000001C000000002800000 +000300000000020000000003000000000200000000030000000002000000000300000000028000 +000003C0000000028000000001C000000000A000000001F000000000AA000000007F000000002A +A80000001FFC00000000AA80000001FFC00000000A800000001FC027297CA534>198 +D<00000007F00000000002A00000001FFFF80000000AAAA800C00FFC7F0000C00AA82A0000FFFC +01F001E0FAA800A000A03FC007C000782A80028000280C001C007C78080008002828000070001E +00000020000A00000070001E000000A0000A000001C00000000000800000000001C00000000002 +800000000003000000000002000000000003000000000002000000000003000000000002000000 +000003000000000002800000000003C00000000002800000000001C00000000000A00000000001 +F00000000000AA00000000007F00000000002AA8000000001FFC0000000000AA8000000001FFC0 +000000000A80000000001FC0002D297CA534>I<0F0000000E00000003C000000280000003F000 +0002A0000003C000000280000003C000000280000003C000000280000000C000000080000000C0 +07F000802AA000C07FF00082AAA000C7FF0000AAAA00007FC00000AA800000FC000002A8000003 +C000000A8000000F0000002A0000003C0000002800000030000000A0000000C000000080000000 +C000000080000000C0000000200000A8300001FC0AAAAAA80FFFFFFC00AAAA8000FFFFC01E2B76 +A734>I<0000F00000000000A000000000007C0000000000280000000000F00000000000A00000 +000000F00000000000A0000000C003C7C00000C00282800000FFFFFFF00000FAAAAAA000003F03 +000000002A0200000000000C0001FC0000080000A800003C00000780002800002AA0003000007F +E000A00002AAA000F00007C1E002A0000A80A003C0001C00000A80000800000F00001C00002A00 +002800003F0000700000AA0000200000FC0000700000A80000200000F00000700000A000002000 +000000007000000000002000000000007000000002AA2000000003FF700000000AAAAA0000000C +01FF0000002800AAA00000300077F000002000A0A800003001F1FC00000AAA802800000FFFC07C +000000AA0000000000FF0000002B2F7CA934>202 D<0C00000000000C00000000000F00000000 +000F00000000000F00000000000E00000000000F00007FC0000A00002A80000F001FFFF8000A00 +0AAAA8003C01F001FE002800A000AA003C000007C0002800000280003C00001C00002800000800 +003C0000000000280000000000300000000000A00000000000F00000000000A00000000000F000 +00000000A02000000000F03000000000A02000000000F03000000000A0A020000000F0C0700000 +00A080A0000000F0C1C0000000A08080000000F0C1C0000000A280A00000003301F00000002A00 +AAAAAA803F007FFFFF802A002AAAAA803F0007FFFE000A00000000000F00000000000800000000 +000C0000000000292B7AA734>I<00001FFC000000000AA800000003FF07C0000002AA02800000 +3F07C07800002A0280280000F007C01E0000A002800A0003C007C007800280028002800F001F00 +07800A000A0002A00C001F0001E028002A0000A030007C0001E02000280000A03000700001E0A0 +00A00000A0C001F00001E08000A00000A0C001C00001E08002800000A0C003C00001E0A00A8000 +00A0F00F000001E0A02A000002A0F03C00000780A8A8000002803CF0000007802AA000000A803F +C000001E002A8000002A000F0000007C0000000002A80000000007C0000000002800000000007C +00002B257CA334>206 D<3C00001F00003C00000A00000F000001F0000F000000A0000FC00001 +F0000F800000A0000F000001F0000E000000A0000F000001C0000A00000080000F000001C0000A +00000080003C007001C7E02800200082A03C001FFFFF8028000AAAAA803C0007C1C00028000280 +80003C000001C00028000000800030000001C000A00000008000F0000001C000A08000008000F0 +C00001C000A0800000A000F0C00001F000A0800000A000F0C00001F000A2800000A000F3C00001 +F000A28002AAA000F30007FFF000A2002AAAA80033007C01FC002A00A800AA803F01C001FF802A +008002AAA03F01C007F7E00A002AAA80A00F007FFFC1E0080002A800000C0007FC00002B2B7CA7 +34>I<0000000001E00000000001E03C00000000783C00000000780F0001F078780F0000A02838 +0FC0001F1E000F80000A0A000F00001F1E000E00000A0A000F00001F00000A00000A00000F0000 +1C00000A00000800003C03001C7E00280200082A003C01FFFFFC002800AAAAA8003C007C1C0000 +2800280800003C00001C00002800000800003000001C0000A00000080000F000001C0000A08000 +080000F0C0001C0000A080000A0000F0C0001F0000A080000A0000F0C0001F0000A280000A0000 +F3C0001F0000A2800AAA0000F3001FFF0000A200AAAA80003301F01FC0002A02A00AA8003F0300 +1FFC002A02002AAA003F03007F7E000A00AAA80A000F01FFFC1E0008000A8000000C001FC00000 +2D2D7CA934>I<000000007C00000000002800000000001E00000000000A000000001F1E000000 +000A0A00000FC007C000000A80028000003C3007C00000282002800000301C0000000020080000 +0000F01C00000000A00800000000F00700000000A00280000000C007C00000028002A0000003C0 +01F00000028000A8000003C0007C00008A80002A0000CF00001F0000AA00000A8000FF000007C0 +00AA000002A8003C000001FC0028000000AA00000000007F00000000002A80000000001F800000 +00000AA80000000007F80000000002AA0000000001FE0000000000AA00000000001E0000000000 +082F267EA734>217 D<3C00000000003C00000000000F00001FFE000F00000AAA000FC07FFFFF +800F802AAAAA800F000007C0000E00000280000F000001F0000A000000A0000F000001F0000A00 +0000A0003C000001F00028000000A0003C000001FF802800000AAA803C00001FFE0028002AAAAA +003C007FFDF00028002AA8A00030000001F000A0000000A000F0000001F000A0800000A000F0C0 +0001F000A0800000A000F0C00001F000A0800000A000F0C00001F000A2800000A000F3C00001F0 +00A28000AAA000F30001FFF000A2000AAAA80033001F01FC002A002A00AA803F007001FF802A00 +2002AAA03F007007F7E00A000AAA80A00F001FFFC1E0080000A800000C0001FC00002B2B7CA734 +>219 D<3C00000000003C00000000000F00007FC1E00F00002A80A00FC3FFFFF0780F82AAAAA0 +280F00007C00780E00002800280F00001F1E000A00000A0A000F00001F07800A00000A02803C00 +001F07802800000A02803C00001F00002800000AA8003C00001FFC002802AAAAA8003C03FFFFF0 +002802AAAAA0003000001F0000A000000A0000F000001F0000A080000A0000F0C0001F0000A080 +000A0000F0C0001F0000A080000A0000F0C0001F0000A280000A0000F3C0001F0000A2800AAA00 +00F3001FFF0000A200AAAA80003301F01FC0002A02A00AA8003F03001FFC002A02002AAA003F03 +007F7E000A00AAA80A000F01FFFC1E0008000A8000000C001FC000002D2B7CA734>I<0001F000 +000000A0000000007C0000000028000000007F000000002A000000007C0000000028000000007C +00000000280000C00071FF00800020AA003FFFFFFC002AAAAAA8000FC07000000A802000000000 +71C000000020A8000000707C00200022A800300077FC002AAAAAA8000FFFFFC0000AAAAA800003 +F070000002A0200000000070000000002000000000700000000028000000007C00000000280000 +00007C000002AAA8000003FFFC00002AAAAAA0003C007FF000A8002AAA00C0007DFF00A002A8AA +80F007FC1FC02AAAA002803FFFF007C002AA00000003FF000000222D78A934>222 +D<03007FC0000003002A80000000FFC7F0000000AA82A00000003C07F00000002802A000000000 +1FC0000000000A80000000001F00000000000A00000000007C01C0000000280080000000700070 +000000A00028000001F0007C000000A00028000001C0007C000002800028000003C0007C00002A +AAA0A800003FFFF1F00002AAAAAAA00003CF01FFF0002A8A00AAA8003C0C0001FC0028280002AA +80303C0007FF80A0A80002AAA0C0F00007C7E082A0000A82A0C3C0001F01E08A80000A00A0CF00 +001F0000AA00002A0000FC00007C0000200000280000300000700000000000800000000001C000 +002B277CA534>I<00F00000000000F000000000003C00000000002800000000003C0000000000 +2800000000003C7F00000000282A000000003FFF000000002AAA000000FFFFF0007C00EAAAA000 +28003C3C0001C60028280000820000300001C7800020000082A000300001C1E002A0000080A003 +F00001C1E00AA800008AA00C3C0001DFE0282800008AA0303C0001C180202800008080303C0001 +C000202800008000303C0001C00028280000A0000C30000070000AA00000200003F00000700002 +A00000200000F00000700000A00000280000C000007C0000800000A80000C00001FC0000A0000A +A80000F0001FFC00002AAAAAA000003FFFFFF0000002AAA800000003FFFC00002B2B7CA734>I< +000007C00000000002800000000001F00000000000A000000C0001F000000C0000A000000F0001 +F000000F0000A00000030001C00000020000800000030007FFC000020002AA800003C0FFC1FC00 +0280AA80A80000CFC7001F80008A8A000AA000FC1F0007E002A80A0002A003F01C0001E00AA028 +0000A80F307C0001F82A20280000A83C30700000782828A0000028303CF0000078A02AA0000028 +F00FC0000078A00A800000A8C00FC00001F8800A800000A8C00FC00001E0802AA00002A0C03CF0 +0007E0A0A8A00002A030F0700007802AA020000A803F0000001F0008000000AA000C000001F000 +0000000A00000000001F00002D297EA734>I<00F0000000A00000003C000000280000003F0000 +002A0000003C000000280000003C000000280000C0300000802000003F7000002A20000003F000 +0002A0000000F0000002A0000003C000002A8000003CC00000A8800000C0C0000082800080C300 +01C0AAA800A03FFC00702AAA802803FFC07C02AA80280307C01C0A02800A0F00001F0A00000A0F +00001F0A00000A0F00001F0A00002A0300007C028000A803C001FC00AAAAA000FFFFF0000AAA00 +001FFF00202D76A934>I<000007000000000002000000000001C00000000000800000000FC1F0 +0000000A80A0000000303FFC000000202AA8000000C001F00000008000A0000000C00007FE0000 +800002AA0000F001FC01E000A000A800A0003C7F00007800282A000028000FF000001E000AA000 +000A003F0000001E02AA8000002AC3F3C000007EAAA2A02802AAFFC0F07C07F8AA80A82AAAA83F +007C1FFFE02A00280AAAA000007C01FF0000002A00AA0000001F00000000000A800000000007C0 +0000000002800000000007C00000000002A00000000001F00000000000A00000000001F0000000 +0000A80000000001FC0000000000A800000000007C00000000002A00000000007F00000000000A +00000000001F00002F2D7EA934>228 D<000F000000000A0000000007F000000002A000000001 +FC00000000A800000001F000000000A000000001F000000000A000000001F000000000A0000000 +01F07F000000A02A000001FFFFC00000AAAA800001F000000000A000000001F000000000A00000 +0001F000000000A000000001F000000000A000000001F000000000A000000001F000000000A000 +000001F000000000A000000001F000000000A000000001F000000AAAAA00000FFFFF00002AAAAA +A0003C01FFF000A800AAAA00C001F1FF008000A0AA80C001F01FC0A00A800280F01FC007C02AA8 +0000003FFC000000222D78A934>232 D<00300000000020000000001C0000000008000000001F +000000000A0000000007C000000002800000001FF00000000AA0000000F1F0000000A0A0000003 +000000000200000000030000000002000000000C0000000008000000000C000000000800000000 +0C0000000008000000000C0000000008002A80000C007FC0002802AAA8003C07C07C00282A802A +003C7C001F002AA8000A803FC0000780AA80000280FF00000780AA00000280FC00000780A80000 +0A803000001F802000000A800000001F00000000AA00000001FC0000000A800000001FC0000002 +A000000007F00000212D76A934>I<C0000000C0000000F0000000E0000000301FF000200AA000 +30707C002020280031C01F0020800A0031C01F0020800A00F70007C0A2000280F70007C0A20002 +80FC0007C0A8000280FC0007C0A8000280F00007C0A0000280F00007C0A0000280F00007C0A000 +0280F00007C0A0000280300007C020000A8000001F0000000A0000001F0000000A0000001F0000 +002A0000007C000000280000007C000000A8000001F000000280000007C000000A0000001F0000 +00A0000001F000001A2F72A934>I<00007C00000000280000030FFF0000020AAA000003FC1FC0 +0002A80A800000F07F000000A02A000000007C000000002800000001F000000000A000000007C0 +00000002800000001F000000002A000000003C0000000028000000003000000000A0AA800000F1 +FFC00002AAAAA80003FF007C0002AA002A0003F0001F000AA0000A800FC00007C02A800002803F +000007C0AA00000280FC000007C0A80A800280F01FC007C0A0AAA0028000F1F007C000A0A80A80 +00C07C1F0000802A2A0000C01F7C0000A00A800000F01FC000000AA80000001FFC0000222B78A7 +34>I<003C00000000003C00000000000F00000000000E00000000000FC0000000000A80000000 +000F00000000000A00000000000F00000000000A00000000000C007F00000008002A0000000C07 +C1C000000802808000C03F1C01F000C02A0800A0003FFF7001F0002AAAA000A0000F0CC001F000 +0A2A8000A000003F0001F000002A0000A000003F0001F00000AA0000A00000FC0001C00000A800 +02800000F00007C00002A00002800003F00007C00002A00002800003F00007C0000AA000028000 +0F300007C0000A20000280000F300007C0002A28000280003C3C0007C000AA280002A00AFF3C00 +07F01EA0A80002AAA8F0FC0001FFF800A800000A8000FC00001F80002000000000003000000000 +2F2D7EA934>I<000F00000000000E000000000003C00000000002800000000003F00000000002 +A00000000003C00000000002800000000003C00000000002800000000003000000000002000000 +00000300000000000200000000000FF0000000000AA000000030FFF01FF00020AAA0AAAA000FC3 +C1F07E000A828AA02A8000031F000780000A2A0002A0000F700007E0002AA00002A00033C00001 +E00022800000A00033000001E000AA000000A000CF000001E0028A000000A003C3000001E00282 +000002A00303000007E00A02000002A00F03000007802A8280000A803CC3C0001E00A8A280002A +00FC33C0007C00A02A8002A800F00FC007C000000A80280000000FC07C00000002000000000003 +000000002B2D7CA934>239 D<000F000000000A0000000007C0000000028000000007C0000000 +02800000C0071F0000C0020A00003FFFFFC0002AAAAA80000F0F0000000A0A000000003C000000 +00280000000030000000002000000000C0001FC0028A000AA003DF0007E00AAA802AA00FF7C07F +E02AA2A2AAA03F01F7FC00AA00AAA800FC01FF0000A802AA0000F007F00000A00AA00000001FF0 +0000002AA000000031F0000000A0A0000000C1F000000280A0000003007000000A002000000C00 +00000008000000000C000000000AA00000000FF000000002AAAAA80003FFFFFC00002AAAA80000 +3FFFFC00232D78A934>242 D<00001F00000000000A000000000007C000000000028000000000 +1FC0000000000A80000000001F00000000000A00000000007F00000000002A00000000007C0000 +000000280000000001F00000000000A00000000001F00000000002A00000000003C00000000002 +80000000000300000000000A00000000000F00000000002A00000000003C000000000028A80000 +000031FC00000000AAAA00000000FF1F00000002AA0A00000003F01F00000002A00A00002003C0 +1F0000600A800A0000A00F001F0001E00A000A8002A00F0007C007802A0002800A803C0007C01E +00A8000280AA00FC0007C1FC00A00002AAA000F00007FFF000E00000AA0000F00001FF00002B2B +7CA734>I E /FD 3 117 df<000FC0007FF000F8F801F1FC03F1FC07E1FC07E0F807E07007E000 +07E00007E00007E00007E000FFFF00FFFF00FFFF0007E00007E00007E00007E00007E00007E000 +07E00007E00007E00007E00007E00007E00007E00007E00007E00007E00007E00007E00007E000 +7FFF007FFF007FFF0016267EA513>102 D<FFC3F800FFDFFE00FFFC1F800FF007C00FE007E00F +C003F00FC003F80FC003F80FC001F80FC001FC0FC001FC0FC001FC0FC001FC0FC001FC0FC001FC +0FC001FC0FC001F80FC003F80FC003F00FC003F00FE007E00FF00FC00FF81F800FDFFE000FC7F0 +000FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC00000FFFC0000FFFC +0000FFFC00001E247E9823>112 D<00E00000E00000E00000E00001E00001E00001E00003E000 +07E0000FE0001FFFC0FFFFC0FFFFC007E00007E00007E00007E00007E00007E00007E00007E000 +07E00007E00007E00007E00007E0E007E0E007E0E007E0E007E0E007E0E003E0C001F1C000FF80 +003E0013237FA219>116 D E /FE 4 205 df<6000003F03800FC000F000003F07800FC0006924 +B69A43692DB000FFFFFFFFE3FFFFF800FFFFFFFFE3FFFFF8006D24969243692DB000FC00000007 +E00FC0007C00000003E00FC0006C0000C003600D8000FC0001C007E00FC0007C0001C003E00FC0 +006C0000FF03600F8000FC0001FF07F00FC0006C0001FF03600F80007C7001F803600F8000FC70 +01F807E00FC0006C7000F803600D80007C0E07F803E00FC000FC0E0FF807E00FC0006C0C86D803 +600D8000FC01CFC003800FC000FC01CFC007800FC0006C0186C01B0005B680FC01CFC01F800FFF +C0FC01CFC01F800FFFC06C00B680180005B6C0FC003F001C0001FFC07C003E001C0001FFC06C00 +3600C000000000FC007F00E0000000007C003600E0000000006C0036C0000001B000FC007FC000 +0001F8006C0036C0000001B0007C01F1C0FF7FFFFE00FC01F9C0FFFFFFFE006C01B0C0DB6FFDB6 +007C01F9F8030001F000FC01F9F8078001F8006C01B0D8030001B000FC01C1F8038001F800FC01 +C1F8078001F8006C05809203600DB000FC0FC03F00E00FC000FC0FC03F00E00FC0006C0C001F00 +6C0D8000FC0E003F00FC0FC0007C0E003F00FC0FC0006C70003F000FFC0000FC70003F001FFE00 +006C70003F001FFE00006F8000000003F00000FF8000000003F000006F8000000003F000007C00 +0000001FFE0000FC000000001FFE00006C000000000DFC00007C00003F00FC7FC000FC00003F00 +FC7FC0006D24B69A436C2DB480FFFFFFFFE3E00FFFC0FFFFFFFFE3E00FFFC06D2496925B4005B6 +80FC0000001F8001FE007C0000001F8001FE0000000007C00000360000000007E000007E000000 +0007E000003E0042447CBB48>37 D<C0003C701E00C00028200A00FFFFFF7FFF80FFFAAA2AAA80 +F000007C1E00F00000280A00F000C07C1E00F00080280A00F000FC7C1E00F000A8280A00F300F0 +7C1E00F200A0280A00F0C3F07C1E00E082A0280A00F033C0701E00A02280200A00F033C1F01FF8 +A02A80A00AA8F00F01C007F8A00A028002A8F00F07000000A00A82000280F00FC0000780A02A82 +AAAAA0F03DC7FFFFE0A028A2AAAAA0F03DF0700780A028A0200280F031F0700780A0A0A8280A80 +F0F07C1C1E00A0A0280A0A00F0C07C1F1E00A280280AAA00F3007C07FC00AA002802A800FC0000 +01F000A8000002A800F0000007FC00A000280AAA00F0007C1F7E00AAAAAA280AA8FFFFFF7C1FF8 +E00000A002A0F00001F007E000000A0000A000001F0001E02D2F7CA934>165 +D<000000000078000000000038FFFFFFFFFFFEFFFAAAAAAAAE00001F00000000000A0000000000 +1F00000000000A00000000001F00000000000A00000000001F00000000000A00000000001FF000 +0000000AA0000000001F1F000000000A0AA00000001F07F00000000A02A80000001F01FC000000 +0A00AA0000001F007F0000000A002A0000001F001F0000000A000A0000001F00000000000A0000 +0000001F00000000000A00000000001F00000000000A00000000001F00000000000A0000000000 +1F00000000000A00000000001F00000000000A00000000001F00000000000A00000000001F0000 +0000000A00000000001F00000000000A00000000001F00000000000A00000000001F0000002F2D +7EA734>188 D<00C000001E0000C000000A0000FFFFFFFF8000FEAAAAAA8000F007C01E0000F0 +02800A0000F007C01E0000E002800A0000F007C01E0000A002800A0000FFFFFFFE0000AAAAAAAA +0000F007C01F0000A002800A0000F007C01F0000A002800A0000F007C01F0000A002800A0000F0 +07C01F0000AAAAAAAA0000FFFFFFFF0000AAAAAAAA0000F007C01F0000A002800A00000007C000 +00000002800028000007C00078AAAAAAAAAAAAFFFFFFFFFFFEAAAAAAAAAAAA00007FDC00000000 +AA8A00000000F7C700000002A28280000003F7C1C000000AA280A000000FC7C1F000002A8280AA +00003F07C07F0000AA02802AAA00F007C01FFE0A00028002A80F0007C007F8F00002800028F000 +07C00078000002800000000007C000002F2F7EA934>204 D E /FF 3 63 +df<78FCFCFCFC7806067C850F>58 D<000000030000000F0000003F000000FC000003F000000F +C000003F000000FC000003F000000FC000003F000000FC000003F000000FC000003F000000FC00 +0000F0000000FC0000003F0000000FC0000003F0000000FC0000003F0000000FC0000003F00000 +00FC0000003F0000000FC0000003F0000000FC0000003F0000000F0000000720217B9D2B>60 +D<C0000000F0000000FC0000003F0000000FC0000003F0000000FC0000003F0000000FC0000003 +F0000000FC0000003F0000000FC0000003F0000000FC0000003F0000000F0000003F000000FC00 +0003F000000FC000003F000000FC000003F000000FC000003F000000FC000003F000000FC00000 +3F000000FC000000F0000000C000000020217B9D2B>62 D E /FG 7 85 +df<00FFF80003FFFE000FFFFF801F800FC03E0003E03C0001E0780000F0780000F0780000F078 +0000F0F0000078F0000078F0000078F0000078F0000078F0000078F0000078FFFFFFF8FFFFFFF8 +FFFFFFF8F0000078F0000078F0000078F0000078F0000078F0000078F0000078F0000078F00000 +78F0000078F0000078F0000078F00000781D217CA025>65 D<7FFFFFC0FFFFFFC0FFFFFFC0F000 +0000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0 +000000F0000000F0000000F0000000FFFFFE00FFFFFE00FFFFFE00F0000000F0000000F0000000 +F0000000F0000000F0000000F0000000F0000000F0000000F0000000FFFFFFC0FFFFFFC07FFFFF +C01A217CA022>69 D<7FFFFFC0FFFFFFC0FFFFFFC0F0000000F0000000F0000000F0000000F000 +0000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000FF +FFFE00FFFFFE00FFFFFE00F0000000F0000000F0000000F0000000F0000000F0000000F0000000 +F0000000F0000000F0000000F0000000F0000000F00000001A217CA022>I<F0000000F0F00000 +00F0F8000001F0F8000001F0FC000003F0FC000003F0FE000007F0FF00000FF0FF00000FF0F780 +001EF0F780001EF0F3C0003CF0F3E0007CF0F1E00078F0F0F000F0F0F0F000F0F0F07801E0F0F0 +7C03E0F0F03C03C0F0F01E0780F0F01E0780F0F00F0F00F0F00F9F00F0F0079E00F0F003FC00F0 +F003FC00F0F001F800F0F001F800F0F000F000F0F000F000F0F0000000F0F0000000F0F0000000 +F024217CA02C>77 D<F0000078F0000078F8000078FC000078FE000078FF000078FF800078F7C0 +0078F3E00078F1F00078F0F80078F07C0078F03E0078F01F0078F00F0078F0078078F007C078F0 +03E078F001F078F000F878F0007C78F0003E78F0001F78F0000FF8F00007F8F00003F8F00001F8 +F00000F8F0000078F0000078F0000078F0000078F00000781D217CA025>I<003FFE000001FFFF +C00007FFFFF0000FE003F8001F00007C003E00003E003C00001E007800000F007800000F007800 +000F007800000F00F000000780F000000780F000000780F000000780F000000780F000000780F0 +00000780F000000780F000000780F000000780F000000780F000000780F000000780F000000780 +7800000F007800000F003C00001E003E00003E001FC001FC000FFFFFF80003FFFFE000007FFF00 +0021217EA025>I<FFFFFFFFFFFFFFFFFFFFFFFF0003C0000003C0000003C0000003C0000003C0 +000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003 +C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C00000 +03C0000003C0000003C0000003C0000003C0000003C000202180A020>84 +D E /FH 7 123 df<600000C0E00001C0700003C0780007803C000F001E001E000F003C000780 +780003C0F00001E1E00000F3C000007F8000003F0000001E0000003F0000007F800000F3C00001 +E1E00003C0F000078078000F003C001E001E003C000F0078000780700003C0E00001C0600000C0 +1A1B789A2B>2 D<00F80003FE000FFF801FFFC03FFFE03FFFE07FFFF07FFFF0FFFFF8FFFFF8FF +FFF8FFFFF8FFFFF8FFFFF8FFFFF87FFFF07FFFF03FFFE03FFFE01FFFC00FFF8003FE0000F80015 +177D981C>15 D<E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0 +E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E003387AA90F>106 +D<C00000E00000E000007000007000007000003800003800003800001C00001C00001C00000E00 +000E00000E000007000007000007000003800003800003800001C00001C00001C00000E00000E0 +0000E000007000007000003800003800003800001C00001C00001C00000E00000E00000E000007 +000007000007000003800003800003800001C00001C00001C00000E00000E00000E00000700000 +7000007000003800003800001815387DA91C>110 D<07E00C10380830047002E01EE01EE01EE0 +00E000E0007000300018000C00060007800C6038303018700CE00EE007E007E007E007E0077007 +300E180C0C1C063001E0006000300018000C000E000700070007780778077807400E200C101C08 +3007E010317CA519>120 D<00C00001E00001E00001E00001E00001E00001E00000C00000C000 +00C00000C00000C00078C780FFFFC0FFFFC078C78000C00000C00000C00000C00001E00001E000 +01E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E000 +01E00001E00001E00001E00000C00000C00000C00000C00000C00000C00000C00000C00000C000 +00C00000C00012327DA519>I<00C00001E00001E00001E00001E00001E00000C00000C00000C0 +0000C00078C780FFFFC0FFFFC078C78000C00000C00000C00000C00001E00001E00001E00001E0 +0001E00000C00000000000C00001E00001E00001E00001E00001E00000C00000C00000C00000C0 +0078C780FFFFC0FFFFC078C78000C00000C00000C00000C00001E00001E00001E00001E00001E0 +0000C00012317DA519>I E /FI 4 237 df<00C03000180000C020000800003C1F001F80003C0A +000A80000F07C07E00000A02802A000C0F07C1F0780C0A0280A0280FFFFFFFFFFE0FAAAAAAAAAA +0F000001C0000E00000080000F000701FC000A000200A8000F3FFFC1F0000A2AAA80A0000F00F0 +01F0000A00A080A0280F00F1C1C0780AAAAAA2AAAA0FFFFFF7FFFE0AAAAAA2AAAA0F0C07070780 +0A08020A02800F0C071F07800A0AAA0A82800F0FFF1DC7800A0AAA2882800F0C0771C7800A0802 +2082800F0C0701C7800A0AAA00A2800F0FFF0077000A0AAA002A000C0C07007F00280802002A00 +3C0C07001C00280802002A003C0C07007F0022AAAA002A8033FFFF00778020AA0200A0A030FF07 +01F1E0C080020280AAC0C00707C1FE0000022800280000077C00782F2F7EA934>183 +D<0000070001E00000020000E00003C7FFFFF8000282AAAAB8FFFFF7C001E0FFFAA28000A000F0 +07C001E000E0028000A000F007C001E000A0028000A000F007FFFFE000A002AAAAA000F007C001 +E000A0028000A000F007C001E000A0028000A000F0C7C001E000AAA2AAAAA0FFFFF7FFFFE0AAAA +A2AAAAA000F007C001E000A0028000A000F007C001E000A0028000A000F007C001E000A0028000 +A000F007C001E000A002AAAAA000F007FFFFE000A082AAAAA000F0C0707C0000AA802A280000FF +007F7C00AAAA002A2800FFF0007C7C00AAA000A828083F0001FC7C182A0000A82808300001F07C +18000002A02808000007C07C1800000A00280A00001F007C1E000028002AAA00007C007FFE000A +80000AA8000FC0001FF82F2F7EA934>189 D<0030001C0000003000080000003F001FC000003E +000A800000FC001F000000F8000A000000F0001C1C0000E00008080003C01C701F80038008200A +800F0C07C07E000E0802802A00300FC1F07C00300A80A02800C03F01F1F000C02A00A0A000003C +0007C7000028000A82A000F0001C01E002A0002800A803C0007000780A80AAAAAAAA0FC0FFFFFF +FE2A80AAAAAAAA33C07FF0001EA2802AA80A0AC3C0707C1F008280202AAA8003C0007FFF800280 +00AAAA8003C001F01F00028002A02A0003C007C07F0002800AA02A0003C01F707C000280AA28A8 +0003C0F01DF0000280A00AA00003C00007C0000280000AA80003C0001F7C00028000A00AAA03C0 +01F01FFE02800A0002A803C01F0007F80282A000002803C3F00000782F2F7EA934>229 +D<000F000001E0000F000000E03FFFC7FFFFF83FFE82AAAAB800000007C0000000000280000000 +0007C0000000000280000003C007C000000280028000FFFFF007C780FEAAA0028280000007FFFF +E0000002AAAAA00000001F07800000000A0280000F001F0780000A800A02803FFFC01F07802AAA +800A02800000001F07800000000A02880000001F0798000A0AAAAAAA000F1FFFFFFE2AAA8AAAAA +AA3FFFC00000002AAA800000000000000000000000008000A0000001C001E0200280AAAAA83003 +C1FFFFF82AAAA0AAAAA83FFFF1F001E02AAAA0A000A03C03C1F001E0280280A000A03C03C1F001 +E0280280A000A03C03C1F001E0280280A000A03C03C1F001E03AAA80AAAAA03FFFC1FFFFE03C02 +80A000A03C03C1F001E02F2F7EA934>236 D E /FJ 3 247 df<0C00007F00000C00002A000003 +C0007C000003C00028000000F0007C000000F00028000000F0007C000000E0002800000000007C +01E00000002800A00003FFFFFFF80002AAAAAAA8C000007C0000C000002800003C00007C000028 +00002800000F0C007C00000A08002800000F0C007C00000A28002800000030007C000000200028 +00280030007C007800AAAAAAAAAA00FFFFFFFFFE00AAAAAAAAAA00C001F00000028000A0000003 +C001F00000028000A0000003C001C000000A80028000000F0007C00000AA0002802000FF000700 +7000AA0002002A003F0007001F002A000A000A800F001C0007800A000802AAA00F001C07FDE00A +0AAAAA00A80F0FFFFF01F80A82AA0000280FC3FF00007802820000002803C3000000782F2F7EA9 +34>161 D<000007F00000000002A00000000007C00000000002800000000007C0000000000280 +0000000007C00000000002800000000007C00000000002800000000007C00078000002800028FF +FFFFFFFFFEFAAAAAAAAAAA00007FDC000000002A88000000007FDC00000000AA8A00000000F7C7 +00000000A28200000000F7C700000002A28280000003C7C1C00000028280A0000003C7C1F00000 +0A8280A800000F07C07C00002A02802A00003C07C07F0000A802802AA000F007C01FE002A00280 +0AAA03C007C007FE0A8AAAAAA2AA0F0FFFFFF1F8AA0AAAAAA0A8F00007C0007820000280002800 +0007C00000000002800000000007C00000000002800000000007C00000000002800000000007C0 +0000000002800000000007C000002F2F7EA934>220 D<000007F00000000002A00000000007C0 +0000000002800000000007C00000000002800000000007C00000000002800000000007C0007800 +0002800028FFFFFFFFFFFEFEAAAAAAAAAA000007C00000000002800000000007C0000000000280 +0000000007C00000000002800000000007C00000000002800280000007C007800AAAAAAAAAA00F +FFFFFFFFE00AAAAAAAAAA000007FDC00000000AA8A00000000F7C700000000A28200000000F7C7 +00000002A28280000003C7C1C000000A8280A000000F07C1F000002A0280A800003C07C07C0000 +A802802A8000F007C01F8002A002800AAA03C007C007FE0A00028002A80F0007C001F8E0000280 +0028F00007C00078000002800000000007C00000000002800000000007C000002F2F7EA934> +246 D E /FK 6 255 df<0000F00000780000A00000383FFFFDFFFFFE3FFAA8AAAAAE00000001 +F00000000000A00000000001F00000000000A0000C00F071C1E00C00A02080A00FFFFC7FFFF80A +AAA82AAAA80F00F07C01E00A00A02800A00F00F07C01E00A00A02800A00F00F07C01E00A00A02A +AAA00F00F07FFFE00AAAA02AAAA00FFFF07C01E00AAAA02800A00F00007C01E00A02002800A000 +03007C01E00802A02AAAA00C03F07FFFE00A02A02AAAA00303C07C01E00282802800A003C3007C +01E00282002800A003C3007C01E0028A282AAAA0000C7C7FFFE0000AA82AAAA0000FC01C0000AA +AA800A8200FFFC001FC7002A80002A00A03FC0007F01E0300000A00028300001F0007800000A00 +002800001F0000782F2D7EA734>172 D<C00000001E00C00000000E00FFFFFFFFFF80FFEAAAAA +AB80F00000001E00F00000000A00F00000001E00F00000000A00F000007C1E00F00000280A00F0 +FFFFFF1E00E0AAAAAA0A00F00000001E00A00000000A00F00000001E00A00000000A00F0000000 +1E00A02000280A00F030007C1E00A02AAAAA0A00F03FFFFF1E00A02AAAAA0A00F03C007C1E00A0 +2800280A00F03C007C1E00A02800280A00F03C007C1E00A02800280A00F03C007C1E00A0280028 +0A00F03C007C1E00A02AAAA80A00F03FFFFC1E00A02AAAA80A00F03C007C1E00A02800280A00F0 +3C007C1E00A02800280A00F00000001E00A00000000A00F00000001E00A00000000A00F0000000 +1E00A0000002AA00F0000007FE00E00000002800F00000007800292F7AA934>177 +D<003C0007F000003C0002A0003FFF0007C0003FFE0002800000000007C0780000000280280000 +3FFFFFFE00002AAAAAAA000F0007C000000A00028000FFFFC007C000FEAA8002800000000007C1 +E00000000280A000001FFFFFF800000AAAAAA8003C00000000002A080000283FFF1C0000782AAA +0AAAAAAA00001FFFFFFE00002AAAAAAA00007C000078002828000028003C7C0000602AAA28A82A +203FFF01FC7F002AAA00A82A00000001F07C00000000A02800000001F07C00202800A02800303C +01F07C002AAA00A028003FFF01F07C002AAA00A028003C3C01F07C00282800A028083C3C01F07C +18282802A028083C3C07C07C1828280280280A3C3C07C07C1E3AA80A002AAA3FFC1F007FFE3C28 +A0000AA83C3CF0001FF82F2F7EA934>201 D<000000001E00000000000A0003FFFFFFFF8003EA +AAAAAA800000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000 +28000000000078EAAAAAAAAAAAFFFFFFFFFFFE2F277EA534>243 D<C000001E00C000000A00FF +FFFFFF80FAAAAAAA80F000001E00E000000A00F000001E00A000000A00F000001E00A000000A00 +F000001F00A000000A00F000001F00A000000A00F000001F00A000000A00F000001F00A000000A +00F000001F00AAAAAAAA00FFFFFFFF00AAAAAAAA00F000001F00A000000A00F000001F00A00000 +0A00F000001F00A000000A00F000001F00A000000A00F000001F00A000000A00F000001F00A000 +000A00F000001F00A000000A00F000001F00A000000A00F000001F00AAAAAAAA00FFFFFFFF00A0 +00000A00F000001F00A000000A00F000001E00212D76A734>252 D<000001F00000000000A000 +00003FFFFC0000003AAAA80000000001C00000000000800000000001C000000000008000000000 +01C00000000000800000000001C00000000000800000000007C00000000002800000000007C000 +00000002A0000000000770000000000A20000000001F70000000000A20000000001F7000000000 +0A28000000001F1C000000002A08000000007C1C00000000280A000000007C0700000000A80200 +000000F00700000000A00280000000F001C0000002A000A0000003C001F000000A8000A800000F +00007C00002A00002A00003C00007F0000A800002AA000F000001FE00280000002AA03C0000007 +FE0A00000000A80F00000001F8F00000000020F000000000602F2D7EA734>254 +D E /FL 47 125 df<3078FCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFC780000000000003078 +FCFC7830062275A11D>33 D<00C06001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F0 +7FFFFEFFFFFFFFFFFF7FFFFE03C1E003C1E003C1E007C3E00783C00783C00783C00783C07FFFFE +FFFFFFFFFFFF7FFFFE0F07800F07800F07800F07800F07800F07800F07800F078006030018227E +A11D>35 D<00180000380000380000380000FE0007FF800FFFE03E3BF03838F870387860383CE0 +383CE0387CE0387CE038387038007838003E38003FF8001FFE0007FF8001FFE0003FF00039F000 +387800383870381CF8381CF8381CF8381CF0381C7038387838383C38F03F3BE01FFFC007FF8001 +FC00003800003800003800003800001800162B7DA51D>I<001C003C007800F001E003C007800F +000E001E001C003C003800780078007800F000F000F000F000F000F000F000F000F000F0007800 +7800780038003C001C001E000E000F00078003C001E000F0007C003C001C0E2A77A51D>40 +D<6000F00078003C001E000F00078003C001C001E000E000F00070007800780078003C003C003C +003C003C003C003C003C003C003C007800780078007000F000E001E001C003C007800F001E003C +007800F00060000E2A7BA51D>I<7FFFF8FFFFFCFFFFFC7FFFF816047D921D>45 +D<387CFEFEFE7C38070775861D>I<00001800003C00003C00007C0000780000F80000F00001F0 +0001E00003E00003C00007C0000780000F80000F00000F00001F00001E00003E00003C00007C00 +00780000F80000F00001F00001E00003E00003C00003C00007C0000780000F80000F00001F0000 +1E00003E00003C00007C0000780000F80000F00000F00000600000162B7DA51D>I<00E00000E0 +0001E00001E00003E00007E0001FE000FFE000F9E000E1E00001E00001E00001E00001E00001E0 +0001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E0 +0001E00001E00001E000FFFF80FFFFC0FFFF8012227AA11D>49 D<00FF0007FFC00FFFF01F01F0 +3E00783E003C3E003C1C003C08003C00003C0000780000780000F00003F000FFC000FFC000FFF0 +0001F800007C00003E00001E00000F00000F00000F70000FF8000FF8000FF8001E78003E7C007C +3F01F81FFFF007FFC000FF0018227EA11D>51 D<F00000FFFFFFFFFFFFFFFFFEF0003CF0007CF0 +00F80000F00001E00003C00003C0000780000F00000F00001E00001E00003C00003C00003C0000 +780000780000780000F00000F00000F00000F00000F00001E00001E00001E00001E00001E00001 +E00001E00000C00018237EA21D>55 D<00FF0003FFC00FFFF01F81F83E007C3C003C7C003E7800 +1E78001E78001E78001E3C003C1E00780F81F007FFE000FF0003FFC00F81F01E00783C003C7800 +1E78001EF0000FF0000FF0000FF0000FF8001F78001E7C003E3E007C1F81F80FFFF003FFC000FF +0018227EA11D>I<00FC0003FF000FFF801F03C03E01E07C00F07800F0F00078F00078F00078F0 +0078F0007CF0007CF0007C78007C7C00FC3E01FC1F03FC0FFFBC07FF3C01FC3C00003C00007800 +00780000780000F03800F07C01E07C03C07807C03C1F803FFE001FFC0007F00016227DA11D>I< +387CFEFEFE7C3800000000000000000000387CFEFEFE7C38071875971D>I<001F80007FE001FF +F003E07807803C0F001C1E01CE1C07FE380FFE381E3E701C1F70380F70380FE07007E07007E070 +07E07007E07007E07007E07007E0700770380E70380E701C1C381E3C380FF81C07F01E01C00F00 +0F07801F03E03E01FFFC007FF0001FC018227EA11D>64 D<001E0000003F0000003F0000003F00 +00007380000073800000738000007380000073800000F3C00000F3C00000F3C00000E1C00001E1 +E00001E1E00001E1E00001E1E00001E1E00003C0F00003C0F00003C0F00003FFF00003FFF00007 +FFF8000780780007807800078078000F807C000F003C000F003C000F003C007FE1FF80FFE1FFC0 +7FE1FF801A227FA11D>I<7FFFC000FFFFF0007FFFF8000F007C000F003E000F001E000F000F00 +0F000F000F000F000F000F000F000F000F001E000F001E000F003C000F00F8000FFFF0000FFFF0 +000FFFFC000F003E000F001E000F000F000F000F000F0007800F0007800F0007800F0007800F00 +07800F000F800F000F000F001F000F007E007FFFFC00FFFFF8007FFFE00019227FA11D>I<003F +0700FFC703FFFF07C0FF0F807F0F003F1E001F3C000F3C000F78000F78000F780000F00000F000 +00F00000F00000F00000F00000F00000F00000F00000F0000078000078000F78000F3C000F3C00 +0F1E001E0F001E0F803C07C0F803FFF000FFE0003F0018227EA11D>I<FFFF0000FFFFC000FFFF +E0001E01F0001E00F8001E007C001E003C001E001E001E001E001E000F001E000F001E000F001E +0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E000780 +1E000F001E000F001E000F001E001F001E001E001E003E001E007C001E00F8001E01F800FFFFF0 +00FFFFC000FFFF000019227FA11D>I<7FFFFF80FFFFFF807FFFFF800F0007800F0007800F0007 +800F0007800F0007800F0000000F0000000F0000000F0000000F03C0000F03C0000F03C0000FFF +C0000FFFC0000FFFC0000F03C0000F03C0000F03C0000F0000000F0000000F0000000F0000000F +0003C00F0003C00F0003C00F0003C00F0003C00F0003C07FFFFFC0FFFFFFC07FFFFFC01A227FA1 +1D>I<FFFFFFFFFFFFFFFFFF0F000F0F000F0F000F0F000F0F000F0F00000F00000F00000F0000 +0F03C00F03C00F03C00FFFC00FFFC00FFFC00F03C00F03C00F03C00F00000F00000F00000F0000 +0F00000F00000F00000F00000F00000F0000FFF800FFF800FFF80018227EA11D>I<007E1C0001 +FF9C0003FFFC0007C3FC000F00FC001E007C001E007C003C003C003C003C0078003C0078003C00 +78000000F0000000F0000000F0000000F0000000F0000000F0000000F003FF00F007FF80F003FF +00F0003C0078003C0078003C0078003C003C007C003C007C001E007C001E00FC000F01FC0007C3 +FC0003FFFC0001FF3C00007E3C0019227EA11D>I<7FE1FF80FFF3FFC07FE1FF800F003C000F00 +3C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F +003C000FFFFC000FFFFC000FFFFC000F003C000F003C000F003C000F003C000F003C000F003C00 +0F003C000F003C000F003C000F003C000F003C000F003C000F003C007FE1FF80FFF3FFC07FE1FF +801A227FA11D>I<FFFFF0FFFFF0FFFFF000F00000F00000F00000F00000F00000F00000F00000 +F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000 +F00000F00000F00000F00000F00000F00000F00000F000FFFFF0FFFFF0FFFFF014227CA11D>I< +00FFF801FFFC00FFF80003C00003C00003C00003C00003C00003C00003C00003C00003C00003C0 +0003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C0 +7003C0F803C0F803C0F807807C0F807FFF001FFC0007F00016227CA11D>I<FF81FFFF81FFFF81 +FF1C00781C00F01C00E01C01C01C03C01C07801C07001C0E001C1E001C3C001C38001C78001CF8 +001DFC001DDC001F8E001F8E001F07001E07001C03801C03801C01C01C01C01C00E01C00E01C00 +701C00701C0038FF80FFFF80FFFF80FF18227EA11D>I<FFF800FFF800FFF8000F00000F00000F +00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F +00000F00000F00000F00000F00000F00000F00000F000F0F000F0F000F0F000F0F000F0F000FFF +FFFFFFFFFFFFFFFF18227EA11D>I<7E001F80FF003FC07F003F801F807E001D806E001D806E00 +1D806E001DC0EE001CC0CE001CC0CE001CE1CE001CE1CE001CE1CE001C618E001C738E001C738E +001C330E001C330E001C330E001C3F0E001C1E0E001C1E0E001C0C0E001C000E001C000E001C00 +0E001C000E001C000E001C000E001C000E001C000E007F003F80FF807FC07F003F801A227FA11D +>I<7F00FF80FF81FFC07F80FF800FC01C000EC01C000EC01C000EE01C000E601C000E601C000E +701C000E301C000E381C000E381C000E381C000E1C1C000E1C1C000E1C1C000E0E1C000E0E1C00 +0E0E1C000E071C000E071C000E071C000E031C000E039C000E019C000E019C000E01DC000E00DC +000E00DC000E00FC007FC07C00FFE07C007FC03C001A227FA11D>I<07FF801FFFE03FFFF07E01 +F87C00F8780078780078F0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF000 +3CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003CF0003C7800787800787C00 +F87E01F83FFFF01FFFE007FF8016227DA11D>I<7FFFC000FFFFF0007FFFFC000F00FE000F003E +000F001F000F000F000F0007800F0007800F0007800F0007800F0007800F0007800F000F000F00 +1F000F003E000F00FE000FFFFC000FFFF0000FFFC0000F0000000F0000000F0000000F0000000F +0000000F0000000F0000000F0000000F0000000F0000000F0000007FE00000FFF000007FE00000 +19227FA11D>I<7FFE0000FFFF80007FFFE0000F03F0000F00F8000F0078000F007C000F003C00 +0F003C000F003C000F003C000F007C000F0078000F00F8000F03F0000FFFE0000FFF80000FFFC0 +000F03E0000F00F0000F00F0000F0078000F0078000F0078000F0078000F0078000F0078000F00 +79E00F0079E00F0079E00F0039E07FE03FC0FFF01FC07FE007001B227FA11D>82 +D<01FC380FFF381FFFF83E07F87C01F87800F8F00078F00078F00078F00078F000007800007C00 +003F00003FF0001FFF0007FFC001FFE0000FF00001F00000F800007800003C00003C70003CF000 +3CF0003CF00038F80078FC00F0FF01F0FFFFE0E7FF80E1FE0016227DA11D>I<7FFFFFC0FFFFFF +C0FFFFFFC0F01E03C0F01E03C0F01E03C0F01E03C0F01E03C0001E0000001E0000001E0000001E +0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E000000 +1E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000001E0000 +03FFF00003FFF00003FFF0001A227FA11D>I<7FE07FE0FFF0FFF07FE07FE00F000F000F000F00 +0F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F +000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00 +0F000F000F0007801E0007801E0003C03C0003C03C0001F0F80000FFF000007FE000001F80001C +2280A11D>I<FF003FC0FF003FC0FF003FC0380007003800070038000700380007003800070038 +000700380007001C000E001C000E001C000E001C000E001C3F0E001C3F0E001C3F0E001C3F0E00 +1C738E000C738C000E739C000E739C000E739C000E619C000EE1DC000EE1DC000EE1DC0006C0D8 +0006C0D80006C0D80007C0F80007C0F80007807800038070001A227FA11D>87 +D<3FE3FE007FE3FF003FE3FE000780F00007C0F00003C1E00003C1E00001E3E00001E3C00000F7 +C00000F78000007F8000007F0000003F0000003E0000001E0000003E0000003F0000007F000000 +7F8000007F800000F7C00000F3C00001E3E00001E1E00003C1E00003C0F00007C0F00007807800 +0F8078000F003C007FC0FF80FFE1FFC07FC0FF801A227FA11D>I<7FFFFCFFFFFCFFFFFCF00078 +F000F8F000F0F001E0F001E00003C00007C0000780000F00000F00001E00003E00003C00007800 +00780000F00001F00001E00003C00003C0000780000F80000F001E1E001E1E001E3C001E7C001E +78001EFFFFFEFFFFFEFFFFFE17227DA11D>90 D<0FF800003FFF00007FFF80007C07C0007C03E0 +003801E0000000F0000000F0000000F000003FF00003FFF0000FFFF0003FC0F0007E00F0007800 +F000F000F000F000F000F000F000F000F0007801F0007C07F0003FFFFF800FFE7F8003F81F8019 +187D971D>97 D<00FC0003FF0007FFC01F83E01E01E03C00F07800F0780078700078F00078FFFF +F8FFFFF8FFFFF8F00000F000007800007800003C00783C00781E00F80F81F007FFE001FFC0007F +0015187D971D>101 D<FFF800FFF800FFF8000078000078000078000078000078000078000078 +000078000078000078000078000078000078000078000078000078000078000078000078000078 +00007800007800007800007800007800007800007800007800FFFFFCFFFFFCFFFFFC16227DA11D +>108 D<FCF07800FDF8FC00FFFDFE001F9FCE001F0F87001E0F07001E0F07001C0E07001C0E07 +001C0E07001C0E07001C0E07001C0E07001C0E07001C0E07001C0E07001C0E07001C0E07001C0E +07001C0E07001C0E0700FF8FC7E0FF9FCFE0FF8FC7E01B1880971D>I<7F87E000FF9FF8007FBF +FC0007F83C0007F01E0007E01E0007C01E0007801E0007801E0007801E0007801E0007801E0007 +801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E007FF87FE0 +FFFCFFF07FF87FE01C1880971D>I<7F87C000FF9FF0007FFFFC0007F83E0007E01F0007C00F00 +07C007800780078007800380078003C0078003C0078003C0078003C0078003C0078003C0078003 +800780078007C0078007C00F0007E01E0007F07E0007FFFC0007BFF000078FC000078000000780 +0000078000000780000007800000078000000780000007800000078000007FF80000FFFC00007F +F800001A2480971D>112 D<00E00001E00001E00001E00001E00001E00001E0007FFFFCFFFFFC +FFFFFC01E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E000 +01E01E01E01E01E01E01E01E01E01E00F07C00FFF8003FF0000FC0171F7F9E1D>116 +D<7FE3FF007FF3FF807FE3FF000780700003C0F00001C1E00000E1C00000F3800000778000003F +0000001E0000001C0000001E0000003F0000007700000073800000E1C00001C1E00003C0F00003 +807000070038007FE1FF80FFE1FFC07FE1FF801A187F971D>120 D<60F0F0F0F0F0F0F0F0F0F0 +F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F060042B74A51D> +124 D E /FM 31 122 df<000007F01F0000003C1C70C00000700CE0C00000F01EE1E00000E03D +E3C00001E019E1800001E003C0000001E003C0000003C003C0000003C003C0000003C003C00000 +03C00780000003C007800000078007800000FFFFFFFE0000FFFFFFFE000007800F00000007800F +0000000F000F0000000F000F0000000F000F0000000F001E0000000F001E0000001E001E000000 +1E001E0000001E001E0000001E003C0000001E003C0000001E003C0000003C003C0000003C003C +0000003C003C0000003C00780000003C0078000000780078000000780078000000780070000000 +7800F0000000F000F0000000F000F0000000F000E0000000F001E0000000E001E0000071E701C0 +0000F1CF03800000F1CF03800000E18E0600000063060C0000003E01F00000002B3182A522>11 +D<000007FE0000001E0380000078018000007003C00000E007800001E003000001E000000001E0 +00000003C000000003C000000003C000000003C000000003C00000000780000000FFFFFE0000FF +FFFE000007803C000007803C00000F003C00000F003C00000F007800000F007800000F00780000 +1E007800001E00F000001E00F000001E00F000001E00F000003C01E000003C01E180003C01E180 +003C01E180003C03C300007803C300007803C300007801C600007800C400007800780000F00000 +0000F000000000F000000000E000000000E000000071E0000000F1C0000000F1C0000000E18000 +000063000000003C00000000223182A51F>I<07000F801F801F801F800E800080008001000100 +020004000400080010002000C000091175A511>39 D<387CFCFCF87006067A8511>46 +D<038007C00FC00FC00F8007000000000000000000000000000000000000000000000000003800 +7C00FC00FC00F80070000A187A9711>58 D<00001FC0300000FFF0600003F03860000F800CE000 +1E0007E0003C0007C000780003C000F00003C001E00003C003C000038007C00003800780000380 +0F000003801F000003001F000003003E000000003E000000003C000000007C000000007C000000 +007C00000000F800000000F800000000F800000000F800000000F800000000F800001800F80000 +1800F800003000F800003000780000300078000060007C0000C0003C000180001E000300001E00 +0600000F800C000007E078000001FFE00000007F800000242878A628>67 +D<007FFFFFF8007FFFFFF80003C001F80003C00078000780003800078000380007800030000780 +0030000F000030000F000030000F000030000F003030001E006060001E006000001E006000001E +00E000003C01C000003FFFC000003FFFC000003C03C00000780180000078018000007801800000 +7801806000F00300C000F00000C000F000018000F000018001E000018001E000030001E0000700 +01E000060003C0000E0003C0001E0003C0003C0007C001FC00FFFFFFFC00FFFFFFF80025267DA5 +26>69 D<000FFFC0001FFFC000003C0000003C00000078000000780000007800000078000000F0 +000000F0000000F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0000003 +C0000003C00000078000000780000007800000078000000F0000000F0000000F0000000F000000 +1E0000001E0000701E0000781E0000F03C0000E03C0000C07800004070000060E0000031C00000 +1F0000001A277AA51D>74 D<007FFFFC00007FFFFF800003C007C00003C003E000078001E00007 +8001F000078001F000078001F0000F0001F0000F0001F0000F0001F0000F0001F0001E0003E000 +1E0003E0001E0007C0001E000780003C000F00003C001E00003C00F800003FFFE0000078000000 +00780000000078000000007800000000F000000000F000000000F000000000F000000001E00000 +0001E000000001E000000001E000000003C000000003C000000003C000000007C0000000FFFE00 +0000FFFC00000024267DA526>80 D<0FFFFFFFC00FFFFFFFC00F807807C01E007801C01C00F001 +C01800F001C03800F001803000F001803001E001806001E001806001E001806001E00180C003C0 +03000003C000000003C000000003C000000007800000000780000000078000000007800000000F +000000000F000000000F000000000F000000001E000000001E000000001E000000001E00000000 +3C000000003C000000003C000000003C00000000780000000078000000007800000000F8000000 +7FFFF000007FFFF00000222677A528>84 D<003FFE03FFC0003FFE03FFC00001F000FC000001E0 +00F0000001F000E0000000F001C0000000F00180000000F80300000000780600000000780C0000 +00007C18000000003C38000000003C70000000001E60000000001EC0000000001F80000000000F +00000000000F00000000000F80000000000F80000000001F800000000037C00000000063C00000 +0000E3C000000001C3E00000000181E00000000301E00000000601F00000000C00F00000001C00 +F00000003800F8000000300078000000600078000000C0003C000001C0003C00000FC0007E0000 +FFF803FFE000FFF003FFE0002A267EA529>88 D<003C3000E2780181F00301F00701F00E00F01E +01E01C01E03C01E03C01E07803C07803C07803C07803C0700780F00786F00786700786700F0C70 +0F0C701F0C3037181843100F81E017187B971C>97 D<01E0001FE0003FE00003E00003C00003C0 +0003C00003C0000780000780000780000780000F00000F00000F3E000F43001F81801F01C01E01 +C01E01C03C01C03C01E03C01E03C01C07803C07803C07803C07803C0700780F00780F00700700F +00700E00701C0070180030300018E0000F800013267BA519>I<003E0000E1800380800701C00E +03C01C03C01C0380380000780000780000F00000F00000F00000F00000E00000E00000E00000E0 +0080E00180E00300700600300C001838000FC00012187A9719>I<00000F0000FF0001FF00001F +00001E00001E00001E00001E00003C00003C00003C00003C000078000078003C7800E2780181F0 +0301F00701F00E00F01E01E01C01E03C01E03C01E07803C07803C07803C07803C0700780F00786 +F00786700786700F0C700F0C701F0C3037181843100F81E018267BA51C>I<003E0001C1000381 +800700C00E00C01C00C03C0180380180780700781C00FFF000F00000F00000F00000F00000E000 +00E00000E00080E00180700300700600300C0018380007C00012187A9719>I<00001E00000071 +800000E1800000E3C00001E7800001E3000003C0000003C0000003C0000003C0000003C0000007 +8000000780000007800000FFFE0001FFFE00000F0000000F0000000F0000000F0000000F000000 +1E0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C0000003C0000 +003C00000078000000780000007800000078000000F0000000F0000000F0000000F0000000E000 +0001E0000001E0000071C00000F1C00000F1800000E3800000630000003C0000001A3182A511> +I<000F0C00389E00607C00C07C01C07C03803C0780780700780F00780F00781E00F01E00F01E00 +F01E00F01C01E03C01E03C01E01C01E01C03C01C03C01C07C00C0FC006178003E7800007800007 +80000F00000F00000F00001E00601E00F03C00F07800E0E0007F800017237D9719>I<00780000 +07F800000FF8000000F8000000F0000000F0000000F0000000F0000001E0000001E0000001E000 +0001E0000003C0000003C0000003C7C00003D8700007B0780007E0380007C03800078078000F80 +78000F0078000F0078000F0078001E00F0001E00F0001E00F0001E01E0003C01E0003C01E1803C +03C1803C03C1807803C300780783007803860078038400F00188006000F00019267DA51C>I<00 +30007800780030000000000000000000000000000000000000078019C030E021E061E061E0C1E0 +C3C003C00780078007800F000F000F001E181E183C183C303C303C2038601CC00F000D257CA411 +>I<00F00FF01FF001F001E001E001E001E003C003C003C003C007800780078007800F000F000F +000F001E001E001E001E003C003C003C003C00780078C078C078C0F180F180F180710033001E00 +0C267CA50E>108 D<0F01F807C00011870E18700031CC0E30780061F80F60380061F007C03800 +61E00F807800C3E00F807800C3C00F00780003C00F00780003C00F00780007801E00F00007801E +00F00007801E00F00007801E01E0000F003C01E0000F003C01E1800F003C03C1800F003C03C180 +1E007803C3001E00780783001E00780386001E00780384003C00F001880018006000F00029187C +972D>I<0F01F00011861C0031CC1E0061F80E0061F00E0061E01E00C3E01E00C3C01E0003C01E +0003C01E0007803C0007803C0007803C00078078000F0078000F0078600F00F0600F00F0601E00 +F0C01E01E0C01E00E1801E00E1003C00620018003C001B187C971F>I<003F0000E1800380C007 +00E00E00701C00701C0070380070780070780070F000F0F000F0F000F0F000F0E001E0E001E0E0 +01C0E00380E00380E00700700E00301C001870000FC00014187A971C>I<00F03E000118430003 +1D8180061F01C0061E01C0061E01C00C3C01C00C3C01E0003C01E0003C01C0007803C0007803C0 +007803C0007803C000F0078000F0078000F0070000F00F0001E00E0001F01C0001F0180001F030 +0003C8E00003C7800003C0000003C00000078000000780000007800000078000000F0000000F00 +00000F000000FFF00000FFF000001B2380971C>I<0F07E0118C3031D83861F07861E07861E030 +C3C000C3C00003C00003C0000780000780000780000780000F00000F00000F00000F00001E0000 +1E00001E00001E00003C000018000015187C9717>114 D<003F0000618000C0C00180E00381E0 +0381E00781C007800007C00007FC0003FF0003FF8001FFC0003FC00007C00003C03001C07801C0 +F00380E003806007006006003818000FE00013187D9717>I<006000F000F000F001E001E001E0 +01E003C003C0FFFCFFFC07800780078007800F000F000F000F001E001E001E001E003C003C183C +183C18783078307860384018C00F000E227BA112>I<0780060008C00F0010E01E0030E01E0060 +F01E0061E01E00C1E03C00C1E03C0003C03C0003C03C0003C07800078078000780780007807800 +0F00F0000F00F0C00F00F0C00F00F0C00F01E1800F01E1800F01E1800702E300038C620001F83C +001A187C971E>I<01F07C0618C60C1D87180F0F100F0F300F06601E00601E00001E00001E0000 +3C00003C00003C00003C0000780000780600780600780660F00CF0F008F0F018E1B8306318603E +0F8018187D971A>120 D<07800608C00F10E01E30E01E60F01E61E01EC1E03CC1E03C03C03C03 +C03C03C0780780780780780780780F00F00F00F00F00F00F00F00F01E00F01E00F01E00703E003 +8FC001FBC00003C00003C00007800007803C0F003C0E00781C0020180030300010E0000F800018 +237C971B>I E /FN 85 125 df<000FE07C00003819C30000E01F878001C03F0F8003C03F0F80 +07803E070007801E000007801E000007801E000007801E000007801E000007801E000007801E00 +0007801E0000FFFFFFF800FFFFFFF80007801E000007801E000007801E000007801E000007801E +000007801E000007801E000007801E000007801E000007801E000007801E000007801E00000780 +1E000007801E000007801E000007801E000007801E000007801E000007801E000007801E00007F +F0FFF0007FF0FFF00021267FA520>11 D<000FE0000038180000E0040001C01E0003C03E000780 +3E0007803E0007801C00078000000780000007800000078000000780000007800000FFFFFE00FF +FFFE0007803E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E00 +07801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E +0007801E007FF0FFE07FF0FFE01B267FA51F>I<000FF60000381E0000E03E0001C03E0003C03E +0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E00FFFF +FE00FFFFFE0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007 +801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E0007801E00 +07801E0007801E007FF9FFE07FF9FFE01B267FA51F>I<0007F01FC000003C0C70300000F003C0 +080001C00F803C0003C01F807C0007801F007C0007801F007C0007800F00380007800F00000007 +800F00000007800F00000007800F00000007800F00000007800F000000FFFFFFFFFC00FFFFFFFF +FC0007800F007C0007800F003C0007800F003C0007800F003C0007800F003C0007800F003C0007 +800F003C0007800F003C0007800F003C0007800F003C0007800F003C0007800F003C0007800F00 +3C0007800F003C0007800F003C0007800F003C0007800F003C0007800F003C0007800F003C0007 +800F003C007FF8FFF3FFC07FF8FFF3FFC02A267FA52E>I<78FCFCFCFCFCFCFC78787878787878 +78783030303030303030303000000000000078FCFCFCFC7806277CA60F>33 +D<780F00FC1F80FC1F80FE1FC0FE1FC07A0F400200400200400200400200400400800400800801 +0008010010020020040040080012117EA51C>I<00003803800000380380000038038000003803 +8000007007000000700700000070070000007007000000E00E000000E00E000000E00E000000E0 +0E000001C01C000001C01C000001C01C000001C01C000001C01C007FFFFFFFFCFFFFFFFFFEFFFF +FFFFFE00070070000007007000000E00E000000E00E000000E00E000000E00E000000E00E00000 +1C01C000001C01C000FFFFFFFFFEFFFFFFFFFE7FFFFFFFFC007007000000700700000070070000 +0070070000007007000000E00E000000E00E000000E00E000000E00E000001C01C000001C01C00 +0001C01C000001C01C0000038038000003803800000380380000038038000027317DA52E>I<00 +300000300000300000300001FC0007FF800F33C01C3060383030703010603018E03078E030F8E0 +30F8E030F8F03070F030007830007E30003FF0003FFC001FFF000FFF8003FFC0007FE00037F000 +31F00030F0003078703078F83038F83038F83038F030388030304030704030702030E03031C01E +378007FF0001FC00003000003000003000152D7DA91C>I<000F00000000308000000070800000 +00E040000000E040000001E040000001E040000001E040000001E040000001E040000001E08000 +0001E080000001E100000001E200000000E400000000F4007FF800F8007FF800F0000F80007800 +0700007800060000FC000400013C000800023C000800041E0010000C1F0010001C0F002000380F +8060007807C040007803C08000F803E08000F801F10000F800F20000F8007E0008FC007C00087C +003E00087E003F00103E006780301F83C3E0E00FFF01FFC001FC003F0025287EA62B>38 +D<78FCFCFEFE7A020202020404080810204007117CA50F>I<000800100020004000C001800300 +030006000E000C001C001C00180038003800300070007000700070007000F000E000E000E000E0 +00E000E000E000E000E000E000E000F0007000700070007000700030003800380018001C001C00 +0C000E00060003000300018000C000400020001000080D397BA916>I<80004000200010001800 +0C000600060003000380018001C001C000C000E000E00060007000700070007000700078003800 +38003800380038003800380038003800380038007800700070007000700070006000E000E000C0 +01C001C0018003800300060006000C00180010002000400080000D397DA916>I<007000007000 +007000007000007000607030F07078F820F83E23E00F278003AE0000F80000F80003AE000F2780 +3E23E0F820F8F0707860703000700000700000700000700000700015187DA91C>I<78FCFCFEFE +7A020202020404080810204007117C850F>44 D<FFF8FFF8FFF80D037F8D12>I<78FCFCFCFC78 +06067C850F>I<0000180000380000380000700000700000700000E00000E00000E00001C00001 +C00001C0000380000380000380000700000700000700000E00000E00000E00001C00001C00001C +0000380000380000380000700000700000E00000E00000E00001C00001C00001C0000380000380 +000380000700000700000700000E00000E00000E00001C00001C00001C00003800003800003800 +00700000700000700000E00000E00000C0000015387DA91C>I<00FE000383800701C00E00E01C +00701C00703C007838003878003C78003C78003C78003CF8003EF8003EF8003EF8003EF8003EF8 +003EF8003EF8003EF8003EF8003EF8003EF8003EF8003EF8003EF8003E78003C78003C78003C3C +00783C00783C00781C00700E00E00701C003838000FE0017267EA41C>I<00600000E00003E000 +3FE000FDE000C1E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E000 +01E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E00001E000 +01E00001E00001E00001E00001E00003F000FFFFC0FFFFC012257BA41C>I<01F80007FF001C1F +803007C02003E04001F04001F0F801F8FC01F8FC00F8FC00F8FC00F87801F80001F80001F00001 +F00003E00003C00007C0000780000F00001E00001C0000380000600000C0000180000100000200 +080400080C00101800103000103FFFF07FFFF0FFFFE0FFFFE015257DA41C>I<00FE0003FF800F +07C01801E01001F03E01F03E01F83E00F83E00F81C01F80001F80001F00001F00001E00003C000 +0780000E0001FE000007800001E00000F00000F80000FC00007C00007E00007E30007E78007EFC +007EFC007EFC007CF800FC4000F86000F83001F01E07E007FF8000FE0017267EA41C>I<0000C0 +0000C00001C00003C00003C00007C0000FC0000BC00013C00033C00023C00043C000C3C00083C0 +0103C00303C00203C00403C00C03C00803C01003C03003C02003C04003C0C003C0FFFFFEFFFFFE +0003C00003C00003C00003C00003C00003C00003C00003C0007FFE007FFE17257EA41C>I<1000 +201E01C01FFFC01FFF801FFF001FFC0013E0001000001000001000001000001000001000001000 +0010FC001307001403801801C01001E00001E00000F00000F00000F80000F80000F87000F8F800 +F8F800F8F800F8F800F08000F04001F04001E02003C03007801C0F0007FE0003F80015267DA41C +>I<001F80007FE000F03003C0300780780F00F80E00F81E00703C00003C00003C000078000078 +0000787E00F88380F900C0FA00E0FC0070FC0078FC003CF8003CF8003EF8003EF8003EF8003EF8 +003E78003E78003E78003E78003C3C003C3C007C1C00781E00700F00E00783C001FF80007E0017 +267EA41C>I<2000003800003FFFFE3FFFFE7FFFFC7FFFFC400008400010400020800020800040 +000080000080000100000200000200000400000C00000C00001800001800003800003800003800 +00700000700000F00000F00000F00000F00000F00001F00001F00001F00001F00001F00001F000 +01F00000E00017277DA51C>I<007E0003FF800783C00E00E01C00701800703800383800383800 +383800383C00383E00701F00701FC0E00FE0C007FB0003FE0001FF0000FF80033FE0060FF01C07 +F83801FC3000FC70003C60001EE0001EE0000EE0000EE0000EE0000E70000C70001C3800381C00 +700F01E007FF8000FE0017267EA41C>I<00FE0003FF800783C00E00E01C00F03C007078007878 +0078F8003CF8003CF8003CF8003CF8003EF8003EF8003EF8003E78003E78007E3C007E1C007E1C +00BE0E013E03823E00FC3E00003C00003C00003C00007C0000780000781C00F03E00F03E01E03C +01C01803801C0F000FFC0003F00017267EA41C>I<78FCFCFCFC78000000000000000000000000 +78FCFCFCFC7806187C970F>I<78FCFCFCFC7800000000000000000000000070F8FCFCFC7C0404 +04040808081020204006237C970F>I<03F8001C0F002007804003C06003C0F803E0F803E0F803 +E07003E00003C00007C0000780000E00001C000018000030000030000060000060000040000040 +0000400000400000400000400000400000000000000000000000000000000000000001E00003F0 +0003F00003F00003F00001E00013267DA51A>63 D<0003FC0000001C0380000060006000008000 +10000100000800020000040004000002000801F801001007040080201C03004020380080404038 +008020407000782040F000782040F000782081E000781081E000781081E000781081E000781081 +E000781081E000781081E000781081E000781040F000781040F00078104070007810403800F820 +203800F820201C0338201007041C400801F80F8004000000000200000000010000000000800000 +F000600007C0001C00FC000003FF800024267DA52B>I<00002000000000700000000070000000 +007000000000F800000000F800000000F8000000017C000000017C000000017C000000023E0000 +00023E000000023E000000041F000000041F0000000C1F800000080F800000080F800000100FC0 +00001007C000001007C000002003E000002003E000002003E000004001F000007FFFF000007FFF +F000008000F800008000F800018000FC000100007C000100007C000200007E000200003E000200 +003E000600001F001F00003F00FFE003FFF8FFE003FFF825277EA62A>I<FFFFFE0000FFFFFFC0 +0003E003E00003E001F00003E000F80003E000FC0003E0007C0003E0007E0003E0007E0003E000 +7E0003E0007E0003E0007E0003E0007C0003E000FC0003E000F80003E001F00003E003E00003E0 +0FC00003FFFFC00003E001F00003E0007C0003E0007E0003E0003E0003E0003F0003E0001F0003 +E0001F8003E0001F8003E0001F8003E0001F8003E0001F8003E0001F8003E0003F0003E0003F00 +03E0007E0003E000FC0003E003F800FFFFFFE000FFFFFF800021267EA527>I<0001FE0080000F +FF8180003F01C380007C00338001F0001F8003E0000F8007C00007800F800003800F800003801F +000001803F000001803E000001807E000000807E000000807C000000807C00000000FC00000000 +FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC000000007C000000 +007C000000007E000000807E000000803E000000803F000000801F000001000F800001000F8000 +030007C000020003E000040001F0000800007C003000003F00E000000FFF80000001FE00002128 +7DA628>I<FFFFFE0000FFFFFFC00003E003F00003E000F80003E0007C0003E0003E0003E0001F +0003E0000F8003E0000F8003E00007C003E00007C003E00007E003E00003E003E00003E003E000 +03E003E00003F003E00003F003E00003F003E00003F003E00003F003E00003F003E00003F003E0 +0003F003E00003F003E00003E003E00003E003E00003E003E00007C003E00007C003E000078003 +E0000F8003E0001F0003E0003E0003E0007C0003E000F80003E003F000FFFFFFC000FFFFFE0000 +24267EA52A>I<FFFFFFFC00FFFFFFFC0003E0007C0003E0001E0003E0000E0003E000060003E0 +00060003E000020003E000020003E000020003E000010003E004010003E004010003E004000003 +E004000003E00C000003E01C000003FFFC000003FFFC000003E01C000003E00C000003E0040000 +03E004000003E004008003E004008003E000008003E000018003E000010003E000010003E00001 +0003E000030003E000030003E000030003E000070003E0001E0003E0007E00FFFFFFFE00FFFFFF +FE0021267EA526>I<FFFFFFF8FFFFFFF803E000F803E0003C03E0001C03E0000C03E0000C03E0 +000403E0000403E0000403E0000203E0000203E0080203E0080003E0080003E0080003E0180003 +E0380003FFF80003FFF80003E0380003E0180003E0080003E0080003E0080003E0080003E00000 +03E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003F00000FFFFC0 +00FFFFC0001F267EA524>I<0001FE0080000FFF8180003F01C380007C00338001F0001F8003E0 +000F8007C00007800F800003800F800003801F000001803F000001803E000001807E000000807E +000000807C000000807C00000000FC00000000FC00000000FC00000000FC00000000FC00000000 +FC00000000FC00000000FC0007FFF87C0007FFF87C00001F807E00000F807E00000F803E00000F +803F00000F801F00000F800F80000F800F80000F8007C0000F8003E0000F8001F0001780007C00 +2380003F80C180000FFF80800001FE000025287DA62B>I<FFFF8FFFF8FFFF8FFFF803E0003E00 +03E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E +0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003FFFFFE0003FFFF +FE0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0 +003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003E0003 +E0003E0003E0003E00FFFF8FFFF8FFFF8FFFF825267EA52A>I<FFFF80FFFF8007F00003E00003 +E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003 +E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003 +E00003E00003E00003E00003E00007F000FFFF80FFFF8011267FA514>I<03FFFC03FFFC000FC0 +0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C0 +0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C0 +7807C0FC07C0FC07C0FC07C0F80780700F80400F00201E0018380007E00016277EA51C>I<FFFF +803FF8FFFF803FF803E0000FC003E000060003E000040003E000080003E000100003E000200003 +E000400003E000800003E001000003E002000003E004000003E008000003E010000003E0300000 +03E078000003E0FC000003E17C000003E23E000003E43E000003E81F000003F00F800003E00F80 +0003E007C00003E007E00003E003E00003E001F00003E001F00003E000F80003E0007C0003E000 +7C0003E0003E0003E0003F0003E0001F0003E0003FC0FFFF81FFF8FFFF81FFF825267EA52B>I< +FFFFC000FFFFC00003F0000003E0000003E0000003E0000003E0000003E0000003E0000003E000 +0003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0 +000003E0000003E0000003E0000003E0000403E0000403E0000403E0000403E0000803E0000803 +E0000803E0001803E0001803E0003803E0007803E000F003E003F0FFFFFFF0FFFFFFF01E267EA5 +23>I<FFE000003FFCFFE000003FFC03E000003F0002F000005F0002F000005F00027800009F00 +027800009F00027800009F00023C00011F00023C00011F00023C00011F00021E00021F00021E00 +021F00021E00021F00020F00041F00020F00041F00020780081F00020780081F00020780081F00 +0203C0101F000203C0101F000203C0101F000201E0201F000201E0201F000200F0401F000200F0 +401F000200F0401F00020078801F00020078801F00020078801F0002003D001F0002003D001F00 +02003D001F0002001E001F0007001E001F000F800C001F00FFF80C07FFFCFFF80C07FFFC2E267E +A533>I<FFE000FFF8FFF000FFF803F8000F8002F8000700027C000200027C000200023E000200 +021F000200021F000200020F800200020FC002000207C002000203E002000203F002000201F002 +000200F802000200FC020002007C020002003E020002003F020002001F020002000F820002000F +8200020007C200020003E200020003E200020001F200020000FA00020000FA000200007E000200 +007E000200003E000200001E000200001E000700000E000F80000600FFF8000600FFF800020025 +267EA52A>I<0003FC0000001E078000007801E00000F000F00001E000780003C0003C00078000 +1E000F00000F001F00000F801F00000F803E000007C03E000007C07E000007E07C000003E07C00 +0003E0FC000003F0FC000003F0FC000003F0FC000003F0FC000003F0FC000003F0FC000003F0FC +000003F0FC000003F0FC000003F07C000003E07E000007E07E000007E03E000007C03E000007C0 +1F00000F801F00000F800F80001F000780001E0003C0003C0001E000780000F000F000007801E0 +00001E0780000003FC000024287DA62B>I<FFFFFE00FFFFFFC003E007F003E000F803E0007C03 +E0007C03E0003E03E0003E03E0003F03E0003F03E0003F03E0003F03E0003F03E0003E03E0003E +03E0007C03E0007803E001F003E007E003FFFF8003E0000003E0000003E0000003E0000003E000 +0003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0 +000003E00000FFFF8000FFFF800020267EA526>I<FFFFF80000FFFFFF000003E00FC00003E003 +F00003E000F80003E000F80003E0007C0003E0007E0003E0007E0003E0007E0003E0007E0003E0 +007E0003E0007C0003E0007C0003E000F80003E001F00003E003E00003E00F800003FFFC000003 +E01E000003E007000003E003800003E003C00003E001E00003E001F00003E001F00003E001F000 +03E001F00003E001F00003E001F80003E001F80003E001F80003E001F80403E001F80403E000FC +0403E000FC08FFFF807E08FFFF801E1000000007E026277EA529>82 D<01FC0407FF0C0F038C1C +00DC38003C78001C70001CF0000CF0000CF0000CF00004F00004F80004F800007C00007F00003F +F0001FFF000FFFC007FFF003FFF8003FFC0003FC00007E00003E00001F00001F80000F80000F80 +000F80000FC0000FC0000EE0001EE0001CF8003CEC0038C780F0C1FFE0807F8018287DA61F>I< +7FFFFFFFC07FFFFFFFC07C01F007C07001F001C06001F000C04001F000404001F00040C001F000 +608001F000208001F000208001F000208001F000208001F000200001F000000001F000000001F0 +00000001F000000001F000000001F000000001F000000001F000000001F000000001F000000001 +F000000001F000000001F000000001F000000001F000000001F000000001F000000001F0000000 +01F000000001F000000001F000000001F000000003F8000001FFFFF00001FFFFF00023267EA528 +>I<FFFF80FFF8FFFF80FFF803E0000F8003E000070003E000020003E000020003E000020003E0 +00020003E000020003E000020003E000020003E000020003E000020003E000020003E000020003 +E000020003E000020003E000020003E000020003E000020003E000020003E000020003E0000200 +03E000020003E000020003E000020003E000020003E000020003E000020001E000040001F00004 +0000F000040000F00008000078001800003C003000001E006000000F81C0000007FF80000000FC +000025277EA52A>I<FFFE000FFEFFFE000FFE07E00001F007E00000C003E000008003E0000080 +01F000010001F000010001F000010000F800020000F800020000FC000600007C000400007C0004 +00003E000800003E000800003F000800001F001000001F001000001F803000000F802000000F80 +20000007C040000007C040000007E040000003E080000003E080000001F100000001F100000001 +F900000000FA00000000FA00000000FE000000007C000000007C00000000380000000038000000 +00380000000010000027277FA52A>I<FFFE0FFFE01FFCFFFE0FFFE01FFC0FE0007E0003E007C0 +007C0001C007C0003E00008003E0003E00010003E0003E00010003E0003F00010003F0003F0003 +0001F0003F00020001F0004F80020001F8004F80020000F8004F80040000F80087C0040000F800 +87C00400007C0087C00800007C0187E00800007C0103E00800003E0103E01000003E0103F01000 +003E0201F01000001F0201F02000001F0201F82000001F0400F82000000F8400F84000000F8400 +F84000000F88007C40000007C8007C80000007C8007C80000007D0003E80000003F0003F000000 +03F0003F00000003E0001F00000003E0001F00000001E0001E00000001C0000E00000001C0000E +00000000C0000C00000000800004000036277FA539>I<7FFF00FFF07FFF00FFF003FC003F0001 +F8001C0000F800180000FC001000007E002000003E006000003F004000001F808000000F818000 +000FC100000007C200000003E600000003F400000001F800000001F800000000FC000000007C00 +0000007E000000007F000000009F000000019F800000010FC000000207C000000607E000000403 +F000000801F000001801F800001000F8000020007C000060007E000040003E000080003F0001C0 +001F8007E0003FC0FFF801FFFEFFF801FFFE27267FA52A>I<FFFE0007FEFFFE0007FE07E00001 +F003E00000C003F000008001F000010001F800010000FC00020000FC000400007E000400003E00 +0800003F001800001F801000001F802000000FC020000007C040000007E0C0000003E080000003 +F100000001F900000000FA00000000FE000000007C000000007C000000007C000000007C000000 +007C000000007C000000007C000000007C000000007C000000007C000000007C000000007C0000 +00007C000000007C0000001FFFF000001FFFF00027267FA52A>I<FFFFFFE0E0E0E0E0E0E0E0E0 +E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0E0 +E0E0FFFFFF08387BA90F>91 D<0400800801001002002004002004004008004008008010008010 +00801000801000BC1780FE1FC0FE1FC07E0FC07E0FC03C0780121179A51C>I<FFFFFF07070707 +070707070707070707070707070707070707070707070707070707070707070707070707070707 +07070707070707FFFFFF08387FA90F>I<07F80000180E00003C0780003E03C0003E01C0003E01 +E0000801E0000001E0000001E0000001E00000FFE00003E1E0000F01E0001E01E0003C01E0007C +01E000F801E080F801E080F801E080F803E0807803E0807C04F1801E08FF0007F03C0019187E97 +1C>97 D<0F000000FF000000FF0000001F0000000F0000000F0000000F0000000F0000000F0000 +000F0000000F0000000F0000000F0000000F0000000F0FC0000F3070000F4038000F801C000F00 +0E000F000F000F0007800F0007800F0007800F0007C00F0007C00F0007C00F0007C00F0007C00F +0007C00F0007800F0007800F000F800F000F000F000E000F801C000E4038000C20F000081F8000 +1A267EA51F>I<00FF800380600700F00E01F01C01F03C01F07C0040780000780000F80000F800 +00F80000F80000F80000F800007800007800007C00003C00101C00100E002007004003818000FE +0014187E9719>I<00003C000003FC000003FC0000007C0000003C0000003C0000003C0000003C +0000003C0000003C0000003C0000003C0000003C0000003C00007E3C0003C13C000700BC000E00 +7C001C003C003C003C007C003C0078003C0078003C00F8003C00F8003C00F8003C00F8003C00F8 +003C00F8003C0078003C0078003C0078003C003C003C001C003C000E007C000700BE0003833FC0 +00FC3FC01A267EA51F>I<00FC000387000E03801E01C03C01E03C01E07800E07800F0F800F0F8 +00F0FFFFF0F80000F80000F80000F800007800007800007C00003C00101C00100E002007004003 +818000FE0014187E9719>I<003F0000F18001C3C003C7C00387C0078380078000078000078000 +078000078000078000078000078000FFFC00FFFC00078000078000078000078000078000078000 +078000078000078000078000078000078000078000078000078000078000078000078000078000 +0780007FFC007FFC0012267FA511>I<00001E01F861070E871E07871C03823C03C07C03E07C03 +E07C03E07C03E07C03E03C03C01C03801E0780170E0011F8003000003000003000003000003800 +001FFF800FFFE00FFFF01800F830003C70001EE0000EE0000EE0000EE0000EE0000E70001C3800 +381C00700701C001FF0018257E981C>I<0F000000FF000000FF0000001F0000000F0000000F00 +00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0FC0000F +1070000F2078000F4038000F803C000F803C000F003C000F003C000F003C000F003C000F003C00 +0F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C +000F003C00FFF1FFC0FFF1FFC01A267EA51F>I<0E001F003F003F001F000E0000000000000000 +0000000000000000000F00FF00FF001F000F000F000F000F000F000F000F000F000F000F000F00 +0F000F000F000F000F000F000F00FFF0FFF00C267FA50F>I<007800FC00FC00FC00FC00780000 +0000000000000000000000000000003C07FC07FC007C003C003C003C003C003C003C003C003C00 +3C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C003C703CF838F878 +F87060E01F800E3182A511>I<0F000000FF000000FF0000001F0000000F0000000F0000000F00 +00000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F03FF000F03FF000F +00F0000F00C0000F0080000F0100000F0200000F0400000F0800000F1C00000F3C00000F7E0000 +0F9E00000F0F00000F0F80000F0780000F07C0000F03C0000F01E0000F01F0000F01F0000F01F8 +00FFE3FF80FFE3FF8019267EA51D>I<0F00FF00FF001F000F000F000F000F000F000F000F000F +000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F000F00 +0F000F000F000F000F00FFF0FFF00C267FA50F>I<0F07E00FC000FF187830F000FF203C407800 +1F401C8038000F801F003C000F801F003C000F001E003C000F001E003C000F001E003C000F001E +003C000F001E003C000F001E003C000F001E003C000F001E003C000F001E003C000F001E003C00 +0F001E003C000F001E003C000F001E003C000F001E003C000F001E003C000F001E003C00FFF1FF +E3FFC0FFF1FFE3FFC02A187E972F>I<0F0FC000FF107000FF2078001F4038000F803C000F803C +000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F00 +3C000F003C000F003C000F003C000F003C000F003C000F003C00FFF1FFC0FFF1FFC01A187E971F +>I<00FE000383800701C01E00F01C00703C007878003C78003C78003CF8003EF8003EF8003EF8 +003EF8003EF8003EF8003E78003C78003C3C00783C00781E00F00F01E003838000FE0017187E97 +1C>I<0F0FC000FF307000FF4038000F801C000F001E000F000F000F000F800F000F800F000780 +0F0007C00F0007C00F0007C00F0007C00F0007C00F0007C00F0007800F000F800F000F800F000F +000F001E000F801C000F4038000F20F0000F1F80000F0000000F0000000F0000000F0000000F00 +00000F0000000F0000000F0000000F000000FFF00000FFF000001A237E971F>I<007C040003C3 +0C0007008C000E005C001E007C003C003C007C003C007C003C0078003C00F8003C00F8003C00F8 +003C00F8003C00F8003C00F8003C0078003C007C003C007C003C003C003C001E007C000E007C00 +0700BC0003833C0000FC3C0000003C0000003C0000003C0000003C0000003C0000003C0000003C +0000003C0000003C000003FFC00003FFC01A237E971D>I<0F1F00FF2380FF47C01F87C00F87C0 +0F83800F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000 +0F00000F00000F00000F0000FFF800FFF80012187E9716>I<07E100181B00300700600300E003 +00E00100E00100F00100FC00007FE0003FF8001FFC0007FE00007F00000F80800780800380C003 +80C00380C00300E00300F00600CC1C0083F00011187E9716>I<00800000800000800000800001 +80000180000180000380000780000F80001FFF00FFFF0007800007800007800007800007800007 +800007800007800007800007800007800007800007808007808007808007808007808007808003 +810003C10001E200007C0011227FA116>I<0F003C00FF03FC00FF03FC001F007C000F003C000F +003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C000F003C00 +0F003C000F003C000F003C000F007C000F007C0007007C000700BE0003C33FC000FC3FC01A187E +971F>I<FFF07FC0FFF07FC00F801E000F800C00078008000780080003C0100003C0100003C010 +0001E0200001E0200000F0400000F0400000F040000078800000788000003D0000003D0000003D +0000001E0000001E0000001E0000000C0000000C00001A187F971D>I<FFE3FF0FF8FFE3FF0FF8 +1F007803E00F007801800F0038018007803C010007807C010007C05C030003C05E020003C08E02 +0001E08E040001E08F040001E107040000F107880000F107880000F2038800007A03D000007A03 +D000007C01D000003C01E000003C01E000003800E000001800C000001800C00025187F9728>I< +FFE0FFC0FFE0FFC00F807C000780300003C0200003E0400001E0800000F1800000790000007A00 +00003C0000001E0000001F0000001F0000002780000063C0000043C0000081E0000100F0000200 +F800060078001F007C00FF81FFE0FF81FFE01B187F971D>I<FFF07FC0FFF07FC00F801E000F80 +0C00078008000780080003C0100003C0100003C0100001E0200001E0200000F0400000F0400000 +F040000078800000788000003D0000003D0000003D0000001E0000001E0000001E0000000C0000 +000C00000008000000080000001800000010000020100000F8200000F8200000F8400000F0C000 +00618000001E0000001A237F971D>I<7FFFF07801E06003E04003C0400780C00F80800F00801E +00803E00003C0000780000F00000F00001E00003C01007C0100780100F00101F00301E00203C00 +607C00607801E0FFFFE014187E9719>I<FFFFFFFFFFFFFC3601808E37>124 +D E /FO 15 116 df<3C007E00FF00FF00FF00FF807F803D800180018001800180018001800300 +030003000300060006000C000C0018003800300060004000091B79C118>39 +D<FFFFFFFFFFFF00FFFFFFFFFFFF0003FE000007FF0000FC000000FF0000FC0000003F0000FC00 +00001F8000FC0000000F8000FC000000078000FC000000078000FC000000038000FC0000000380 +00FC000000018000FC000000018000FC000000018000FC000000018000FC000000018000FC0000 +0000C000FC00000000C000FC00000000C000FC0000C000C000FC0000C000C000FC0000C0000000 +FC0000C0000000FC0000C0000000FC0000C0000000FC0001C0000000FC0001C0000000FC0003C0 +000000FC0007C0000000FC001FC0000000FFFFFFC0000000FFFFFFC0000000FC001FC0000000FC +0007C0000000FC0003C0000000FC0001C0000000FC0001C0000000FC0000C0000000FC0000C000 +0000FC0000C0000000FC0000C0000000FC0000C0001800FC0000C0001800FC000000001800FC00 +0000001800FC000000003000FC000000003000FC000000003000FC000000003000FC0000000030 +00FC000000007000FC000000007000FC000000007000FC000000006000FC00000000E000FC0000 +0000E000FC00000001E000FC00000001E000FC00000003E000FC00000007E000FC0000001FE000 +FC0000007FC003FE000003FFC0FFFFFFFFFFFFC0FFFFFFFFFFFFC035417CC03C>69 +D<000FFFFFC0000FFFFFC000000FF800000007F000000003F000000003F000000003F000000003 +F000000003F000000003F000000003F000000003F000000003F000000003F000000003F0000000 +03F000000003F000000003F000000003F000000003F000000003F000000003F000000003F00000 +0003F000000003F000000003F000000003F000000003F000000003F000000003F000000003F000 +000003F000000003F000000003F000000003F000000003F000000003F000000003F000000003F0 +00000003F000000003F000000003F000000003F000000003F000000003F000000003F000000003 +F000000003F000000003F000000003F0003C0003F0007E0003F000FF0003F000FF0003F000FF00 +03F000FF0003E000FE0007E0007C0007E00060000FC00070000F800030001F800018001F00000E +007E00000780F8000001FFF00000007F80000022427BC02D>74 D<FFFC0000000000FFFEFFFE00 +00000001FFFE03FE0000000001FF8000FE0000000001FE0000DF00000000037E0000DF00000000 +037E0000DF00000000037E0000CF80000000067E0000CF80000000067E0000CF80000000067E00 +00C7C00000000C7E0000C7C00000000C7E0000C3E0000000187E0000C3E0000000187E0000C3E0 +000000187E0000C1F0000000307E0000C1F0000000307E0000C1F0000000307E0000C0F8000000 +607E0000C0F8000000607E0000C0F8000000607E0000C07C000000C07E0000C07C000000C07E00 +00C07C000000C07E0000C03E000001807E0000C03E000001807E0000C01F000003007E0000C01F +000003007E0000C01F000003007E0000C00F800006007E0000C00F800006007E0000C00F800006 +007E0000C007C0000C007E0000C007C0000C007E0000C007C0000C007E0000C003E00018007E00 +00C003E00018007E0000C001F00030007E0000C001F00030007E0000C001F00030007E0000C000 +F80060007E0000C000F80060007E0000C000F80060007E0000C0007C00C0007E0000C0007C00C0 +007E0000C0007C00C0007E0000C0003E0180007E0000C0003E0180007E0000C0001F0300007E00 +00C0001F0300007E0000C0001F0300007E0000C0000F8600007E0000C0000F8600007E0000C000 +0F8600007E0000C00007CC00007E0000C00007CC00007E0000C00007CC00007E0000C00003F800 +007E0000C00003F800007E0001E00001F000007E0001E00001F000007E0003F00001F000007E00 +0FFC0000E00001FF80FFFFC000E0007FFFFEFFFFC000E0007FFFFE47417CC051>77 +D<FFFFFFFFC00000FFFFFFFFFC000003FE0000FF000000FC00001FC00000FC000007E00000FC00 +0001F80000FC000000FC0000FC0000007C0000FC0000007E0000FC0000003F0000FC0000003F00 +00FC0000003F8000FC0000001F8000FC0000001FC000FC0000001FC000FC0000001FC000FC0000 +001FC000FC0000001FC000FC0000001FC000FC0000001FC000FC0000001FC000FC0000001F8000 +FC0000003F8000FC0000003F0000FC0000003F0000FC0000007E0000FC0000007C0000FC000000 +FC0000FC000001F80000FC000007E00000FC00001FC00000FC0000FF000000FFFFFFFC000000FF +FFFFC0000000FC000000000000FC000000000000FC000000000000FC000000000000FC00000000 +0000FC000000000000FC000000000000FC000000000000FC000000000000FC000000000000FC00 +0000000000FC000000000000FC000000000000FC000000000000FC000000000000FC0000000000 +00FC000000000000FC000000000000FC000000000000FC000000000000FC000000000000FC0000 +00000000FC000000000000FC000000000000FC000000000000FC000000000000FC000000000000 +FC000000000003FF0000000000FFFFFC00000000FFFFFC0000000032417CC03C>80 +D<3FFFFFFFFFFFFF003FFFFFFFFFFFFF003FE0007F8001FF003F80003F00007F003E00003F0000 +1F007C00003F00000F807800003F000007807000003F000003807000003F000003807000003F00 +0003806000003F000001806000003F000001806000003F000001806000003F000001806000003F +000001806000003F00000180C000003F000000C0C000003F000000C0C000003F000000C0C00000 +3F000000C0C000003F000000C00000003F000000000000003F000000000000003F000000000000 +003F000000000000003F000000000000003F000000000000003F000000000000003F0000000000 +00003F000000000000003F000000000000003F000000000000003F000000000000003F00000000 +0000003F000000000000003F000000000000003F000000000000003F000000000000003F000000 +000000003F000000000000003F000000000000003F000000000000003F000000000000003F0000 +00000000003F000000000000003F000000000000003F000000000000003F000000000000003F00 +0000000000003F000000000000003F000000000000003F000000000000003F000000000000003F +000000000000003F000000000000003F000000000000003F000000000000003F00000000000000 +3F000000000000003F000000000000003F000000000000007F80000000000000FFC00000000001 +FFFFFFE000000001FFFFFFE000003A417EC040>84 D<7FFFF800007FFFE07FFFF800007FFFE001 +FFE000001FFE0000FF8000000FF000007F80000007C000003F800000078000001FC00000070000 +001FC00000060000000FE000000E00000007F000001C00000007F000001800000003F800003800 +000001FC00007000000001FC00006000000000FE0000E0000000007F0001C0000000007F000180 +000000003F800300000000001FC00700000000001FC00600000000000FE00C000000000007F01C +000000000007F018000000000003F830000000000001FC70000000000001FC60000000000000FE +C00000000000007FC00000000000007F800000000000003F800000000000001FC0000000000000 +0FC00000000000000FE00000000000001FF00000000000001BF000000000000033F80000000000 +0071FC00000000000060FC000000000000C0FE000000000001C07F000000000001803F00000000 +0003003F800000000007001FC0000000000E000FC0000000000C000FE0000000001C0007F00000 +0000380003F800000000300003F800000000700001FC00000000E00000FE00000000C00000FE00 +0000018000007F000000038000003F800000030000003F800000060000001FC000000E0000000F +E000000C0000000FE000001800000007F000003800000003F800007800000003F80000F8000000 +01FC0003FC00000003FE000FFE00000007FF80FFFF8000003FFFFCFFFF8000003FFFFC3E417FC0 +42>88 D<001FF0000000FFFC000003E01F0000070007C0000E0003E0000F0001F0001F8000F000 +1FC000F8001FC000F8001FC0007C000F80007C000700007C000000007C000000007C000000007C +000000007C000000007C0000007FFC000007F87C00003F007C0000FC007C0003F0007C0007C000 +7C000F80007C001F00007C003F00007C007E00007C007E00007C03FC00007C03FC00007C03FC00 +007C03FC00007C03FC0000FC03FC0000FC037E00017C037E00037C033F00063E061F800C3F0E0F +E0381FFC03FFE00FF8007F8007E028297DA82C>97 D<0003FC0000001FFF8000007E07E00000F8 +01F00001E000780003C0003C000780003E000F80001F001F00001F001F00000F803E00000F803E +00000F807E000007C07E000007C07C000007C07C000007C0FFFFFFFFC0FFFFFFFFC0FC00000000 +FC00000000FC00000000FC00000000FC00000000FC00000000FC000000007C000000007C000000 +007E000000003E000000003E000000003F000000C01F000000C00F800001800F8000018007C000 +030003E000060001F0000C00007C003800003F80F000000FFFC0000001FE000022297EA827> +101 D<0780000FC0000FE0001FE0001FE0000FE0000FC000078000000000000000000000000000 +00000000000000000000000000000000000000000000000000000000000000000007E000FFE000 +FFE0000FE00007E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 +03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 +03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00007F000FFFF80FFFF80 +11407EBF17>105 D<07E00FF00000FFE07FFC0000FFE0E07E00000FE1801F000007E2000F8000 +03E40007C00003EC0007C00003E80003E00003F80003E00003F00003E00003F00003E00003F000 +03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 +03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 +03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 +03E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E000 +03E00007F00007F000FFFF80FFFF80FFFF80FFFF8029297DA831>110 D<0001FE0000000FFFC0 +00003F03F00000F8007C0001F0003E0003C0000F0007800007800F800007C00F000003C01F0000 +03E03E000001F03E000001F03E000001F07C000000F87C000000F87C000000F8FC000000FCFC00 +0000FCFC000000FCFC000000FCFC000000FCFC000000FCFC000000FCFC000000FCFC000000FC7C +000000F87C000000F87E000001F87E000001F83E000001F03E000001F01F000003E00F000003C0 +0F800007C007C0000F8003E0001F0001F0003E0000F8007C00003F03F000000FFFC0000001FE00 +0026297EA82C>I<07E00FF00000FFE07FFC0000FFE1E03F00000FE3800F800007E60007C00003 +EC0003E00003F80001F00003F00000F80003F00000FC0003E000007C0003E000007E0003E00000 +3E0003E000003F0003E000003F0003E000003F0003E000001F0003E000001F8003E000001F8003 +E000001F8003E000001F8003E000001F8003E000001F8003E000001F8003E000001F8003E00000 +1F8003E000001F0003E000003F0003E000003F0003E000003F0003E000007E0003E000007E0003 +E000007C0003F00000F80003F00001F80003F80001F00003EC0003E00003E60007C00003E3001F +800003E1E07E000003E07FFC000003E01FE0000003E00000000003E00000000003E00000000003 +E00000000003E00000000003E00000000003E00000000003E00000000003E00000000003E00000 +000003E00000000003E00000000003E00000000003E00000000003E00000000003E00000000007 +F000000000FFFF80000000FFFF80000000293C7DA831>I<07E03F00FFE0FFC0FFE1C1E00FE303 +F007E603F003E403F003EC01E003E800C003E8000003F0000003F0000003F0000003F0000003E0 +000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003 +E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E00000 +03E0000003E0000003E0000003E0000003E0000007F80000FFFFE000FFFFE0001C297DA822> +114 D<007FC04003FFF0C00F8079C01E000FC03C0007C0780003C0700003C0700001C0F00001C0 +F00000C0F00000C0F80000C0F80000C0FC0000C07E0000007FC000003FFC00001FFFE0000FFFF8 +0003FFFE0000FFFF00000FFF8000007FC000000FC0C00007E0C00003E0C00001F0E00001F0E000 +00F0E00000F0E00000F0F00000F0F00000F0F80000E0F80001E0FC0001C0F6000380E3000700E1 +C03E00C0FFFC00803FE0001C297EA822>I E end +%%EndProlog +%%BeginSetup +%%Feature: *Resolution 400 +TeXDict begin @letter +%%EndSetup +%%Page: 1 1 +bop 845 466 a FO(P)n(o)r(or)29 b(Man's)g(Japanese)f(in)i(T)1839 +487 y(E)1888 466 y(X)1177 593 y FN(Thomas)17 b(Ridgew)n(a)n(y)911 +659 y(Humanities)f(and)i(Arts)f(Computing)f(Cen)n(ter)1092 +726 y(Univ)n(ersit)n(y)j(of)f(W)-5 b(ashington)511 842 y(This)18 +b(little)g(do)r(cumen)n(t)e(is)j(in)n(tended)e(as)h(an)g(illustration)f(of)h +(and)g(preliminary)f(guide)h(to)400 909 y FM(p)m(o)m(or)k(man)-6 +b('s)22 b(Jap)m(anese)f FN([)p FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)p FN(].)27 b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)19 +b FN(is)g(a)g(temp)r(orary)d(exp)r(edien)n(t)i(for)h(prin)n(ting)400 +975 y(texts)e(with)h(Japanese)f(via)i(T)1020 987 y(E)1051 975 +y(X)f(un)n(til)h(suc)n(h)f(time)f(as)h(w)n(e)h(ha)n(v)n(e)f(a)h(w)n +(ell-though)n(t-out)e(system)400 1041 y(\(and)g(fon)n(ts\))g(for)h(handling)g +(Japanese.)23 b(@)511 1118 y FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)17 +b FN(has)h(a)g(small)f(n)n(um)n(b)r(er)g(of)h(virtues;)g(among)e(these)h +(are:)455 1194 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)17 b FN(is)h(a)n(v)m(ailable)h(no)n(w)455 1271 y FH(\017)28 +b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)17 b FN(is)h(a)n(v)m(ailable)h(free)e +(of)h(c)n(harge)455 1347 y FH(\017)28 b FL(pmJ)p FK(\374)p +FJ(\334)p FI(\354)17 b FN(w)n(orks)h(with)g(standard)e(T)1316 +1359 y(E)1347 1347 y(X3.x)455 1424 y FH(\017)28 b FL(pmJ)p +FK(\374)p FJ(\334)p FI(\354)19 b FN(is)i(device-indep)r(enden)n(t)d +(\(although)h(it)i(m)n(ust)e(b)r(e)h(admitted)e(that)i(y)n(ou)h(will)511 +1490 y(get)c(relativ)n(ely)h(more)f(pleasing)g(results)h(on)f(less)h +(sophisticated)e(prin)n(ters\))455 1567 y FH(\017)28 b FL(pmJ)p +FK(\374)p FJ(\334)p FI(\354)12 b FN(is)h(su\016cien)n(tly)g(simple-minded)f +(y)n(ou)h(will)i(not)d(need)g(to)h(b)r(e)f(a)h(ro)r(c)n(k)n(et)f(scien)n +(tist)511 1633 y(to)17 b(mak)n(e)h(mo)r(di\014cations)d(for)j(y)n(our)g(o)n +(wn)g(use)455 1710 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)21 b FN(uses)g(fon)n(ts)h(mec)n(hanically)f(fak)n(ed-up)h(from)f(dot) +g(matrix)h(qualit)n(y)h(fon)n(ts;)h(if)511 1776 y(y)n(ou)13 +b(w)n(an)n(t)h(y)n(ou)f(can)g(incorp)r(orate)d(new)i(c)n(haracters)f(of)i(y)n +(our)g(o)n(wn)g(design)g(using)g(a)g(bitmap)511 1843 y(fon)n(t)k(editor)h +(whic)n(h)g FM(may)h FN(b)r(e)e(easier)g(to)h(use)g(than)f +FG(MET)o(AF)n(ONT)p FN(.)p FH(z)621 1919 y FN(F)-5 b(or)16 +b(those)e(who)h(migh)n(t)g(b)r(e)f(previously)i(unacquain)n(ted)d(with)j(T) +1958 1931 y(E)1988 1919 y(X,)g(let)f(us)g(put)511 1985 y(forth)h(a)h(few)g +(of)g(the)g(adv)m(an)n(tages)e(of)i(T)1323 1997 y(E)1354 1985 +y(X)g(whic)n(h)h(are)e(inherited)g(b)n(y)i FL(pmJ)p FK(\374)p +FJ(\334)p FI(\354)p FN(:)23 b(it)511 2052 y(can)e(run)h(on)g(almost)f(an)n(y) +i(mo)r(dern)c(computer;)j(it)h(can)e(prin)n(t)h(to)g(an)n(y)h(of)f(a)g(large) +511 2118 y(n)n(um)n(b)r(er)g(of)j(prin)n(ters/t)n(yp)r(esette)o(rs;)f(it)g +(can)g(prin)n(t)g(\(if)h(desired)e(and)h(suitably)g(in-)511 +2185 y(structed\))15 b(elab)r(orate)g(formatting)g(of)j(the)f(text;)g(it)h +(is)h(a)n(v)m(ailable)f(at)f(v)n(ery)i(lo)n(w)f(cost,)511 2251 +y(or)f(free)h(\(whic)n(h)g(is)g(an)g(instance)f(of)h(v)n(ery)g(lo)n(w)h +(cost\).)511 2328 y(The)e(disadv)m(an)n(tages)g(of)h FL(pmJ)p +FK(\374)p FJ(\334)p FI(\354)f FN(are)g(at)h(least)f(equally)i(comp)r(elling:) +455 2404 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)c +FN(is)h(crude)e(and)i(unlik)n(ely)h(to)e(ev)n(er)h(b)r(e)f(greatly)g(impro)n +(v)n(ed)g(as)h(regards)e(the)511 2471 y(qualit)n(y)c(of)f(its)g(Japanese.)455 +2547 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)21 +b FN(uses)i(em)n(ulation-in-)p FG(MET)o(AF)n(ONT)f FN(tec)n(hniques)g(to)g +(pro)r(duce)e(a)j(dot-matrix)511 2613 y(fon)n(t)i(on)g(y)n(our)g(output)f +(device.)46 b(No)25 b(matter)e(ho)n(w)i(talen)n(ted)f(y)n(our)i(prin)n(ter)f +(ma)n(y)g(b)r(e,)p 400 2674 800 3 v 440 2735 a(@)j(In)18 b(JT)639 +2747 y(E)670 2735 y(X)h(there)e(exists)h(suc)n(h)g(a)h(system,)e(but)h(for)g +(man)n(y)h(individuals)g(and)f(institutions)400 2801 y(the)h(relativ)n(e)h +(cost)e(of)i(fon)n(ts/una)n(v)m(ailabilit)n(y)g(of)g(free)f(fon)n(ts)g(has)g +(made)g(installing)g(JT)2227 2813 y(E)2258 2801 y(X)h(not)400 +2868 y(seem)d(adv)m(an)n(tageous.)22 b(It)c(is)h(also)f(incon)n(v)n(enien)n +(t)g(to)f(ha)n(v)n(e)i(to)f(install)g(another)e(separate)g(T)2328 +2880 y(E)2358 2868 y(X)400 2934 y(system)h(for)g(the)h(purp)r(ose)e(unless)h +(y)n(ou)i(are)e(doing)h(Japanese)f(in)h(a)g(big)h(w)n(a)n(y)-5 +b(.)458 3001 y FH(z)28 b FN(Need)18 b(w)n(e)h(p)r(oin)n(t)f(out)h(that)f(the) +g(presence)f(of)i(user-de\014ned)d(c)n(haracter)h(co)r(des)g(in)j(a)f(do)r +(c-)400 3067 y(umen)n(t)h(will)j(mak)n(e)e(the)g FL(.tex)h +FN(\014le)g(non-standard?)32 b(Suc)n(h)22 b(a)f(do)r(cumen)n(t)e(will)k(not)e +(generate)400 3134 y(correct)14 b(output)h(on)h(a)g(system)f(whic)n(h)i(do)r +(es)e(not)g(ha)n(v)n(e)i(the)f(user-de\014ned)e(c)n(haracters)g(de\014ned)400 +3200 y(\(!or)k(has)f FM(di\013er)m(ent)k FN(user-de\014ned)16 +b(c)n(haracters)f(de\014ned!\).)1386 3333 y(1)p eop +%%Page: 2 2 +bop 511 455 a FN(the)22 b(Japanese)f(output)g(b)n(y)i FL(pmJ)p +FK(\374)p FJ(\334)p FI(\354)f FN(will)i(lo)r(ok)n(ed)e(lik)n(e)i(it)f(w)n(as) +g(stripp)r(ed)e(in)i(from)e(a)511 522 y(dot-matrix)16 b(prin)n(ter.)455 +600 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)18 +b FN(uses)i(a)f(large)g(n)n(um)n(b)r(er)f(of)i(fon)n(ts)f(whic)n(h)h(o)r +(ccup)n(y)f(a)h(\014nite)f(and)g(measurable)511 666 y(quan)n(tit)n(y)h(of)g +(diskspace)g(for)g(eac)n(h)f(fon)n(t.)31 b(Y)-5 b(our)20 b(screen)e(preview)n +(er)i(had)g FM(b)m(etter)j FN(b)r(e)d(able)511 733 y(to)j(use)g(the)f(same)g +(resolution)g(y)n(our)i(prin)n(ter)f(uses,)h(or)f(y)n(ou)h(ma)n(y)g(exp)r +(erience)d(a)i(little)511 799 y(tigh)n(tness)e(around)g(the)g(disk.)38 +b(Y)-5 b(ou)22 b(probably)f(will)j(not)d(w)n(an)n(t)i(the)e(fon)n(ts)h(in)h +(m)n(ultiple)511 866 y(magsteps)13 b(\(to)i(a)h(not)g(inconsiderable)e(exten) +n(t)h(they)g(will)j(just)d(get)h(uglier)f(if)i(y)n(ou)g(enlarge)511 +932 y(them\).)455 1010 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)23 b FN(do)r(es)h(not)g(do)g(slan)n(ted,)i(b)r(old,)h(or)d(other)f +(fancy)h(Japanese)g(although)f(one)511 1077 y(could)17 b(in)i(principle.)24 +b(Ho)n(w)n(ev)n(er,)19 b(insofar)e(as)h(ev)n(en)h(a)f(minimal)f(installation) +g(requires)h(88)511 1143 y(fon)n(ts)f FM(for)k(Jap)m(anese)g(alone)p +FN(,)f(w)n(e)f(m)n(ust)e(at)h(this)g(p)r(oin)n(t)f(quote)g(The)h(Master:)732 +1222 y(the)d(format)f(of)h(a)h FM(char)p 1214 1222 17 3 v 22 +w(no)m(de)h FN(allo)n(ws)f(for)g(up)f(to)g(256)g(di\013eren)n(t)g(fon)n(ts) +621 1288 y(and)k(up)g(to)g(256)f(c)n(haracters)f(p)r(er)h(fon)n(t;)i +FF(:)9 b(:)g(:)21 b FN(T)1591 1300 y(E)1622 1288 y(X)e(in)n(tended)f(for)g +(orien)n(tal)621 1354 y(languages)13 b(will)i(need)e(ev)n(en)h(more)f(than)g +(256)h FH(\002)g FN(256)f(p)r(ossible)h(c)n(haracters)621 1421 +y(when)k(w)n(e)g(consider)f(di\013eren)n(t)h(sizes)f(and)h(st)n(yles)g(of)g +(t)n(yp)r(e.*)455 1499 y FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)23 b FN(is)i(based)e(on)i(T)1114 1511 y(E)1144 1499 +y(X)f(\(ho)r(ora)n(y!\),)h(not)f(on)g(JT)1722 1511 y(E)1753 +1499 y(X)g(\(ho)r(ora)n(y!\))42 b(nor)24 b(an)n(y)h(not-)511 +1565 y(kno)n(wn-to-me)18 b(to-b)r(e-extan)n(t)f(F)-5 b(o)r(oT)1280 +1577 y(E)1310 1565 y(X)19 b(\(h)n(uh?\))26 b(whic)n(h)19 b(migh)n(t)f(kno)n +(w)i(ho)n(w)f(to)g(set)f(t)n(yp)r(e)511 1632 y(v)n(ertically)-5 +b(,)26 b(handle)e(thousands)e(of)i(fon)n(ts,)h(mak)n(e)f(doughn)n(uts,)g(and) +g(do)g(all)g(the)g(other)511 1698 y(things)19 b(that)g(w)n(e)i(migh)n(t)e(w)n +(an)n(t)h(soft)n(w)n(are)g(to)g(do.)30 b FL(pmJ)p FK(\374)p +FJ(\334)p FI(\354)p FN(,)20 b(therefore,)f(do)r(es)g(not)g(set)511 +1765 y(t)n(yp)r(e)h(v)n(ertically)-5 b(,)24 b(handle)c(thousands)f(of)j(fon)n +(ts,)g(em)n(ulate)d(Spads)i(or)g(Spit\014res,)g(or)g(an)n(y)511 +1831 y(of)d(the)f(other)g(real)h(neat)e(stu\013.)455 1909 y +FH(\017)28 b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)16 b FN(ma)n(y)i(tak)n(e)f +(a)h(long)f(time)g(to)g(set)g(up)h(if)g(y)n(ou)g(need)f(to)g(mak)n(e)g(y)n +(our)h(o)n(wn)f(fon)n(ts.)511 1976 y(Preparing)g FM(one)k FN(set)e(of)g(fon)n +(ts)g(on)g(a)h(NeXT)e(computer)e(for)k(use)e(at)h(400)g(dpi)h(required)e(a) +511 2042 y FG(MET)o(AF)n(ONT)k FN(run)g(of)g(o)n(v)n(er)h(37)f(hours.)p +FH(y)35 b FN(Y)-5 b(ou)22 b(will)i(not)e(ordinarily)g(wish)g(to)g(mak)n(e)g +(up)511 2109 y(the)f(fon)n(ts)g(more)g(than)g(once,)h(assuming)e(a)i(relativ) +n(e)g(absence)e(of)i(maso)r(c)n(hism)d(in)j(y)n(our)p 400 2172 +800 3 v 455 2234 a(*)28 b(Donald)22 b(E.)i(Kn)n(uth,)g FM(T)1011 +2246 y(E)1040 2234 y(X:)h(The)f(Pr)m(o)m(gr)m(am)p FN(.)41 +b(Addison)22 b(W)-5 b(esley)g(,)25 b(Reading)d(MA:)h(1986.)400 +2300 y(\(V)-5 b(olume)16 b(B)j(of)f FM(Computers)j(and)f(T)l(yp)m(esetting)p +FN(\).)26 b FH(x)p FN(134,)18 b(p.)g(57.)511 2378 y(T)-5 b(o)21 +b(ease)f(somewhat)e(the)j(problem)e(of)i(the)f(n)n(um)n(b)r(er)f(of)i(fon)n +(ts)g(used,)g(the)f(wjisxx)i(fon)n(ts)400 2445 y(whic)n(h)17 +b FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)f FN(uses)g(are)g(generated)e(with)j +(a)f FH(n)p FN(magstep2)e(v)m(arian)n(t)i(included)h(in)g(the)f(same)400 +2511 y(fon)n(t.)37 b(The)22 b(enlarged)e(v)n(ersion)i(will)i(b)r(e)e(prin)n +(ted)f(an)n(y)i(time)e(w)n(e)h(ha)n(v)n(e)h(signalled)f FH(n)p +FN(bigJtrue.)400 2590 y(I.e.,)d(ordinary)e FE(\245)h FN(v)n(ersus)g +FE(\045)p FN(.)458 2657 y FH(y)28 b FN(If)h(one)g(lo)r(oks)g(at)f(the)h +(simple-minded)e(brute-force)g FG(MET)o(AF)n(ONT)j FN(co)r(de)e(whic)n(h)h +(the)400 2723 y FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)20 b FN(fon)n(ts)h(use,) +g(one)g(ma)n(y)g(roughly)f(estimate)f(that)h(a)h(staggering)e(n)n(um)n(b)r +(er)g(of)i(com-)400 2790 y(putations)14 b(\(probably)h(ev)n(en)h(more)f(than) +g(eigh)n(t\))g(are)h(needed)e(to)i(em)n(ulate)e(a)i(dot-matrix)f(fon)n(t)400 +2856 y(through)h(this)i(metho)r(d.)23 b(There)17 b(migh)n(t,)h(indeed,)f(b)r +(e)h(a)g(b)r(etter)e(w)n(a)n(y)j(to)f(do)g(it.)25 b(On)18 b(the)g(other)400 +2922 y(hand,)f(P)n(ac-Man)e(w)n(orldwide)i(has)f(consumed)e(sev)n(eral)i(h)n +(undred)g(million)h(times)e(the)h(n)n(um)n(b)r(er)400 2989 +y(of)e(CPU)f(cycles)h(consumed)d(b)n(y)k(compiling)e FL(pmJ)p +FK(\374)p FJ(\334)p FI(\354)g FN(fon)n(ts,)h(so)g(w)n(e)g(are)g(not)f +(exactly)g(talking)400 3055 y(ab)r(out)j(w)n(asting)i(a)g(scarce)f(resource,) +f(are)h(w)n(e?)511 3134 y(Some)k(of)h(y)n(ou)i(though)n(t)d(I)i(w)n(as)g +(going)f(to)g(slam)g(NeXTs)f(here,)j(didn't)e(y)n(ou?)39 b(I'm)22 +b(not)400 3200 y(that)17 b(kind)h(of)g(guy)-5 b(.)1386 3333 +y(2)p eop +%%Page: 3 3 +bop 511 455 a FN(p)r(ersonalit)n(y)13 b(mak)n(eup,)i(nor)f(will)j(y)n(ou)e +(probably)f(w)n(an)n(t)h(to)g(k)n(eep)f(the)h FG(MET)o(AF)n(ONT)g +FN(source)511 522 y(co)r(de)h(p)r(ermanen)n(tly)g FM(sinc)m(e)k(you)g(c)m(an) +h(me)m(chanic)m(al)s(ly)i(r)m(e)m(gener)m(ate)h(it.)1134 678 +y FN(Ho)n(w)19 b(to)e(use)h FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)511 +823 y FN(Assume)23 b(a)j(text)e(editor)h(capable)f(of)i(editing)e(text)h(in)h +(Shift-JIS-enco)r(ded)e(Japanese)400 890 y(c)n(haracters.)e(Assume)16 +b(a)h(text)g(editor)g(capable)g(of)g(editing)g(text)g(in)h(\\normal")e(Latin) +h(c)n(harac-)400 956 y(ters.)31 b(Use)20 b(the)g(\014rst)g(text)g(editor)g +(to)g(prepare)f(a)h(plain)h(text)f(\014le)h(con)n(taining)f(the)g(Japanese) +400 1023 y(text;)30 b FM(plain)d(text)h(\014le)g FN(means)c(that)h(there)f +(are)i(no)f(tric)n(ky)i(co)r(des)d(in)j(the)e(text)g(\014le)h(whic)n(h)400 +1089 y(are)19 b(in)n(tended)f(to)h(b)r(e)f(used)h(only)h(b)n(y)g(the)e +(program)f(that)h(pro)r(duced)f(the)h(\014le|\\ASCI)r(I)h(\014le")400 +1155 y(frequen)n(tly)g(con)n(v)n(eys)h(what)f(w)n(e)h(mean)e(b)n(y)i(\\plain) +g(text)f(\014le",)h(but)f(b)n(y)i(virtue)e(of)g(ha)n(ving)h(en-)400 +1222 y(co)r(ded)14 b(Japanese,)i(y)n(our)g(\014le)g(will)i(not)d(b)r(e)g +(ASCI)r(I.)h(Use)f(the)h(second)e(text)h(editor)g(to)h(en)n(ter)f(the)400 +1288 y(Latin-letter)20 b(strings)g(pro)n(viding)i(instructions)d(to)i(T)1539 +1300 y(E)1570 1288 y(X;)g(\(if)h(y)n(our)g(\014rst)e(text)h(editor)f(is)i +(o.k.)400 1355 y(for)g(Latin)f(to)r(o,)h(y)n(ou)g(can)g(con)n(tin)n(ue)f +(using)h(it)g(for)g(this)g(step!)35 b(|)23 b(but)e(w)n(atc)n(h)h(out,)h(the)e +(JIS)400 1421 y(and)f(Shift-JIS)g(enco)r(ding)f(sc)n(hemes)f(ha)n(v)n(e)j +(some)e(Latin)g(c)n(haracters)f(\(graphemes\))e(included)400 +1488 y(in)22 b(the)f(t)n(w)n(o-b)n(yte)i(co)r(de)d(space:)31 +b(w)n(e)22 b(need)f(\\normal")e(Latin)i(\(one-b)n(yte)g(co)r(ded\))f(text\).) +34 b(On)400 1554 y(a)26 b(separate)d(line)j(b)r(efore)e(the)h(\014rst)f(line) +i(of)g(Japanese,)h(put)e(a)g(line)h(sa)n(ying)g(\\)p FH(n)p +FN(input)f(pmJ)400 1620 y FH(n)p FN(b)r(eginJapanese".**)37 +b(pmJ.tex)23 b(is)h(in)n(tended)e(to)h(b)r(e)g(the)g(name)f(of)h(a)h(\014le)g +(con)n(taining)e(the)400 1687 y(basic)h(set)g(of)h(instructions)d(for)j +FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)p FN(.)40 b(\\)p FH(n)p +FN(b)r(eginJapanese")20 b(is)k(a)g FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)p FN(-de\014ned)400 1753 y(magic-w)n(ord)15 b(signifying)i(that)f(ev) +n(erything)g(un)n(til)h(an)f(\\)p FH(n)p FN(endJapanese")e(is)j(to)f(b)r(e)g +(in)n(terpreted)400 1820 y(as)k(Japanese,)f(if)h(p)r(ossible.)28 +b(Using)20 b(whatev)n(er)e(text)h(editor)g(y)n(ou)h(w)n(an)n(t,)g(incorp)r +(orate)d(text)i(in)400 1886 y(whatev)n(er)f(other)f(language)g(y)n(ou)i(w)n +(an)n(t.)27 b(Other)18 b(languages)f(will)j(con\015ict)e(with)g(Japanese)g +(in)400 1952 y FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)f FN(only)i(if)g(they)e +(use)h(c)n(haracter)e(co)r(des)g(in)j(the)e(range)g(160)g(to)h(254;)g(suc)n +(h)g(languages)400 2019 y(m)n(ust)j(b)r(e)f(separated)f(from)h(Japanese)g(b)n +(y)j(enclosing)d(the)h(Japanese)f(in)i(\\)p FH(n)p FN(b)r(eginJapanese")400 +2085 y(\\)p FH(n)p FN(endJapanese")15 b(structures.)22 b(Create)16 +b(a)j(new)e(last)h(line)h(sa)n(ying)f(\\)p FH(n)p FN(b)n(y)n(e".)25 +b(Put)17 b(a)i(blank)f(line)400 2152 y(b)r(et)n(w)n(een)e(paragraphs)f(in)j +(the)e(text,)h(and)g(use)g(an)n(y)h(other)e(T)1668 2164 y(E)1698 +2152 y(X)i(commands)c(with)j(whic)n(h)h(y)n(ou)400 2218 y(ma)n(y)h(b)r(e)g +(familiar)g(to)f(further)g(adorn)g(y)n(our)i(text.)27 b(Sa)n(v)n(e)20 +b(the)f(\014le,)h(and)e(sa)n(y)i(the)f(appropriate)400 2285 +y(w)n(ords)f(to)f(run)h(T)759 2296 y(E)790 2285 y(X)g(on)f(y)n(our)i(\014le,) +f(preview)g(it,)h(prin)n(t)f(it,)g(or)g(whatev)n(er.)1161 2351 +y(What)f(can)h(go)f(wrong)511 2452 y(W)-5 b(ell,)31 b(for)d(one,)i(y)n(ou)e +(ma)n(y)g(not)f(ha)n(v)n(e)i(an)e(editor)g(for)h(en)n(tering)f(Japanese.)52 +b([Sorry;)400 2518 y FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)13 +b FN(has)g(nothing)g(to)g(o\013er)h(y)n(ou)g(if)g(y)n(ou)h(ha)n(v)n(e)f(no)g +(w)n(a)n(y)h(to)e(comp)r(ose)e(y)n(our)j(text].)23 b(Or,)15 +b(for)400 2585 y(another,)20 b(y)n(our)h(editor)e(ma)n(y)i(not)f(use)h +(Shift-JIS-enco)r(ding.)31 b([Easy:)f(con)n(v)n(ert)20 b(y)n(our)h(text)f(to) +400 2651 y(Shift-JIS-enco)r(ding!)k(\(Ho)n(w?)g(That's)18 b(not)g(m)n(y)g +(problem;)f(or,)i(to)f(b)r(e)f(a)i FM(little)h FN(more)d(gracious)400 +2717 y(ab)r(out)h(it,)i(there)d(are)i(some)f(con)n(v)n(erters)g(out)g(there,) +h(see)f(if)i(y)n(ou)g(can)e(\014nd)h(one)g FF(:)9 b(:)g(:)q +FN(\))20 b(There)e(is)400 2784 y(a)f(con)n(v)n(erter)e(TO)p +771 2784 17 3 v 20 w(SJIS)i(to)g(translate)e(from)g(NEC,)i(NEW-JIS)g(and)f +(OLD-JIS)i(\(as)f(describ)r(ed)400 2850 y(b)r(elo)n(w\))22 +b(to)g(what)g(w)n(e)h(w)n(an)n(t;)j(this)c(con)n(v)n(erter)g(should)g(b)r(e)g +(included)g(with)h(pmJ.)f(There)g(are)400 2917 y(other)16 b(enco)r(ding)g(sc) +n(hemes,)g(ho)n(w)n(ev)n(er,)j(of)e(whic)n(h)h(TO)p 1536 2917 +V 20 w(SJIS)g(kno)n(ws)g(nothing].)24 b(Y)-5 b(ou)18 b(ma)n(y)f(not)p +400 3006 800 3 v 428 3067 a(**)27 b(W)-5 b(e)25 b FM(r)m(e)m(al)s(ly)i +FN(do)e(need)f(to)g(ha)n(v)n(e)i(the)e FH(n)p FN(b)r(eginJapanese)e(on)j(a)g +(line)g(separate)e(from)h(and)400 3134 y(preceding)14 b(the)h(\014rst)g +(Japanese)f(c)n(haracter)f(to)j(b)r(e)f(prin)n(ted)g(under)f(its)i(con)n +(trol.)23 b(Absen)n(t)14 b(strict)400 3200 y(adherence)h(to)j(this)g +(principle)g(all)h(sorts)e(of)h(unJapanese)e(lo)r(oking)i(things)f(will)i +(happ)r(en.)1386 3333 y(3)p eop +%%Page: 4 4 +bop 400 455 a FN(kno)n(w)23 b(\\an)n(y)g(other)e(T)866 467 +y(E)897 455 y(X)h(commands)e(with)j(whic)n(h)g(y)n(ou)g(ma)n(y)f(further)f +(adorn)h(y)n(our)h(text")p FH(x)400 522 y FN([So)f(tak)n(e)f(a)h(class].)35 +b(Something)19 b(else)j(go)r(es)e(wrong.)35 b([Fix)23 b(it].)36 +b(Y)-5 b(ou)21 b(don't)g(ha)n(v)n(e)h(a)g(cop)n(y)f(of)400 +588 y FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)p FN(.)j([Get)18 +b(one].)1136 655 y(Ho)n(w)g(to)g(get)f FL(pmJ)p FK(\374)p FJ(\334)p +FI(\354)511 729 y FN(F)-5 b(rom)14 b(a)h(friend)f(is)h(go)r(o)r(d.)22 +b(If)15 b(y)n(ou)g(ha)n(v)n(e)g(no)g(friend)f(who)h(has)f FL(pmJ)p +FK(\374)p FJ(\334)p FI(\354)g FN(and)g(is)i(prepared)400 796 +y(to)c(mak)n(e)g(a)g(cop)n(y)h(for)f(y)n(ou)h FF(:)c(:)g(:)14 +b FN(\(that)d(w)n(as)i(supp)r(osed)d(to)i(b)r(e)f(phrased)g(as)i(delicately)e +(as)i(p)r(ossible\))400 862 y FF(:)c(:)g(:)23 b FN(y)n(ou)e(ma)n(y)f(get)g +(it)h(through)e(an)i FM(Establishe)m(d)i(Channel)p FN(.)34 +b(There)20 b(are)g(a)g(n)n(um)n(b)r(er)g(of)g(\\T)2328 874 +y(E)2358 862 y(X)400 928 y(distributions")g(whic)n(h)h(ma)n(y)g(elect)g(to)g +(incorp)r(orate)d FL(pmJ)p FK(\374)p FJ(\334)p FI(\354)j FN(in)g(their)g +(o\013erings)g(of)g(T)2328 940 y(E)2358 928 y(X)400 995 y(and)26 +b(T)547 1007 y(E)577 995 y(X-related)f(soft)n(w)n(are.)47 b(Y)-5 +b(ou)26 b(will)h(v)n(ery)g(lik)n(ely)h(b)r(e)d(able)h(to)f(get)g(a)h(cop)n(y) +g(from)f(the)400 1061 y(NW)n(CSC,)19 b(distributors)d(of)i(T)1035 +1073 y(E)1066 1061 y(X)g(for)g(Unix)h(systems;)e(they)h(will)h(ha)n(v)n(e)g +(to)f(c)n(harge)f(y)n(ou)i(a)g(fee,)400 1128 y(ho)n(w)n(ev)n(er,)f(as)g(ev)n +(en)f(though)f(they)h(are)g(non-pro\014t)f(they)h(still)i(ha)n(v)n(e)f(to)f +(pa)n(y)h(their)f(emplo)n(y)n(ees,)400 1194 y(pa)n(y)h(phone)f(bills,)i(and)f +(all)h(the)e(rest)g(of)g(the)g(drag)h(with)f(whic)n(h)i(I)f(am)f(sure)g(y)n +(ou)h(are)f(familiar.)400 1260 y(Y)-5 b(ou)16 b(migh)n(t)h(also)f(b)r(e)g +(able)h(to)f(get)g(it)h(electronically)f(and)g(free-of-c)n(harge)f(via)i +FD(ftp)h FN(from)e(some)400 1327 y(place)i(or)g(other,)g(but)g(I)h(couldn't)e +(tell)i(y)n(ou)g(where.)25 b(As)18 b(I)h(write,)f(No)n(v)n(em)n(b)r(er)f(30,) +i(1990,)f(none)400 1393 y(of)f(these)e(alternativ)n(es)g(whic)n(h)i(I)g(ha)n +(v)n(e)h(suggested)c(will)k(actually)e(w)n(ork,)i(and)e(there)f(is)j(no)e(w)n +(a)n(y)400 1460 y(that)g(y)n(ou)h(can)f(get)g FL(pmJ)p FK(\374)p +FJ(\334)p FI(\354)g FN(short)g(of)h(enrolling)f(in)i(a)f(course)e(of)i(study) +f(at)h(the)f(Univ)n(ersit)n(y)400 1526 y(of)24 b(W)-5 b(ashington,)24 +b(or)g(y)n(ou)g(ha)n(v)n(e)g(a)g(friend)g(who)f(has)h(done)f(so,)i(or)f(y)n +(ou)g(mak)n(e)f(me)g(a)h(really)400 1593 y(attractiv)n(e)16 +b(o\013er.)777 1659 y(Are)h(w)n(e)i(really)f(going)g(to)g(sho)n(w)g(an)n(y)g +(Japanese)f(or)h(what?)511 1734 y(W)-5 b(ell,)23 b(o.k.!)35 +b(Included)21 b(b)r(elo)n(w)g(are)f(extracts)f(from)i FM(Ele)m(ctr)m(onic)k +(T)l(r)m(ansfer)e(of)g(Jap)m(anese)400 1800 y FN(b)n(y)g(Ken)f(R.)h(Lunde)f +([klunde@vms.macc.wisc.edu)d(or)k(klunde@wiscmacc].)35 b(It)23 +b(discusses)400 1866 y(some)18 b(of)h(the)f(v)m(arieties)g(of)h(enco)r(ding)e +(Japanese)h(as)h(alluded)f(to)h(ab)r(o)n(v)n(e.)27 b(If)20 +b(for)e(some)g(reason)400 1933 y(discernable)12 b(to)h(neither)f(of)h(us)g(y) +n(ou)h(are)f(reading)f(this)i(and)e(are)h(as)g(unfamiliar)g(with)g(computer) +400 1999 y(represen)n(tations)k(of)j(Japanese)f(as)i(I)f(am,)h(the)e(text)h +(will)i(b)r(e)d(informativ)n(e)g(in)i(its)g(o)n(wn)f(righ)n(t,)400 +2066 y(en)n(tirely)e(apart)f(from)g(serving)g(as)h(an)g(example)f(of)h +(Japanese.)407 2132 y(P)-5 b(AR)g(T)18 b(3:)25 b(DIFFERENCES)17 +b(BETWEEN)g(THE)g(THREE)g(7-BIT)i(JAP)-5 b(ANESE)16 b(CODES)511 +2207 y(\(KANJI-IN)h(will)j(b)r(e)d(abbreviated)f(KI;)j(KANJI-OUT,)f(K)n(O\)) +894 2273 y FL(KI)261 b(KO)29 b(\(JIS-ROMAN\))88 b(KO)29 b(\(ASCII\))400 +2406 y(NEW-JIS)g(\(1983\))88 b FF(<)p FL(ESC)p FF(>)p FL($B)g +FF(<)p FL(ESC)p FF(>)p FL(\(J)263 b FF(<)p FL(ESC)p FF(>)p +FL(\(B)400 2472 y(OLD-JIS)29 b(\(1978\))88 b FF(<)p FL(ESC)p +FF(>)p FL($@)g FF(<)p FL(ESC)p FF(>)p FL(\(J)263 b FF(<)p FL(ESC)p +FF(>)p FL(\(B)400 2539 y(NEC)29 b(CODE)262 b FF(<)p FL(ESC)p +FF(>)p FL(K)117 b FF(<)p FL(ESC)p FF(>)p FL(H)292 b(n/a)511 +2613 y FN(NOTE)24 b(#1:)40 b(The)24 b(di\013erence)g(b)r(et)n(w)n(een)g(K)n +(O)i(\(JIS-R)n(OMAN\))f(and)f(K)n(O)i(\(ASCI)r(I\))e(is)400 +2680 y(v)n(ery)e(minor.)34 b(Also,)23 b(most)d(terminals)f(can)i(em)n(ulate)f +(only)i(one)f(of)h(the)f(K)n(O)h(c)n(haracter)d(sets)400 2746 +y(no)e(matter)f(whic)n(h)i(one)f(it)h(receiv)n(es.)24 b(F)-5 +b(or)17 b(example,)g(NINJA)g(TERM)h(\(PDS\))e(b)n(y)j(Mic)n(hiharu)400 +2812 y(Ariza)e(from)g(SRA)h(only)g(em)n(ulates)e(K)n(O-ASCI)r(I.)511 +2887 y(NOTE)h(#2:)25 b(The)18 b(di\013erence)f(b)r(et)n(w)n(een)f(NEW-JIS)i +(and)g(OLD-JIS)h(is)g(not)e(signi\014can)n(t.)511 2962 y(The)i(most)g +(commonly)f(used)h(co)r(de)g(in)h(Japan)g(for)f(comm)n(unication)e(is)k(the)e +(NEW-JIS.)400 3028 y(NEC)f(CODE)g(is)h(the)e(least)g(used.)p +400 3072 800 3 v 458 3134 a FH(x)28 b FN(Careful)15 b(study)h(will)h(rev)n +(eal)g(this)f(phrase)e(to)i(b)r(e)g(a)g(direct)f(quotation)g(of)h(nothing)f +(except)400 3200 y(itself.)1386 3333 y(4)p eop +%%Page: 5 5 +bop 511 455 a FN(The)17 b(KI)i(escap)r(e)d(sequence)g(tells)i(Japanese)f +(terminals)f(to)i(treat)e(what)i(follo)n(ws)h(as)e(t)n(w)n(o-)400 +522 y(b)n(ytes)g(p)r(er)f(c)n(haracter.)22 b(K)n(O,)c(on)f(the)f(other)g +(hand,)h(tells)g(Japanese)f(terminals)f(to)i(treat)e(what)400 +588 y(follo)n(ws)k(as)f(one-b)n(yte)f(p)r(er)g(c)n(haracter)f(\(bac)n(k)i(to) +f(JIS-R)n(OMAN)h(or)g(ASCI)r(I\).)511 675 y(A)g(t)n(w)n(o-b)n(yte)g(p)r(er)f +(c)n(haracter)f(co)r(ding)h(system)f(using)i(7-bit)g(b)n(ytes)g(\(ASCI)r(I\)) +e(can)h(enco)r(de)400 741 y(up)12 b(to)f(16,384)g(c)n(haracters)f(\(128)h(b)n +(y)h(128\);)i(ho)n(w)n(ev)n(er,)g(the)d(Japanese)f(only)j(use)e(the)g(94)h +(prin)n(table)400 808 y(ASCI)r(I)17 b(co)r(des)g(in)h(their)g(matrix,)f(so)h +(it)g(can)g(only)g(enco)r(de)e(a)i(maxim)n(um)e(of)i(8,836)g(c)n(haracters) +400 874 y(\(94)f(b)n(y)i(94\).)511 960 y(The)c(NEW-JIS)g(Japanese)f(co)r(de)f +(includes)i(6,877)g(standard)e(c)n(haracters;)h(6,353)g(KANJI)400 +1027 y(in)22 b(2)f(lev)n(els)h(\(lev)n(el)g(1:)31 b(2,965)21 +b(KANJI)g(arranged)e(b)n(y)j(ON)f(reading;)h(lev)n(el)h(2:)31 +b(3,388)20 b(KANJI)400 1093 y(arranged)g(b)n(y)k(radical\),)e(86)h(KA)-5 +b(T)g(AKANA,)21 b(83)h(HIRA)n(GANA,)g(10)g(n)n(umerals,)g(52)h(English)400 +1160 y(c)n(haracters,)e(147)h(sym)n(b)r(ols,)h(66)f(Russian)f(c)n(haracters,) +h(48)g(Greek)g(c)n(haracters,)f(and)h(32)g(line)400 1226 y(elemen)n(ts)16 +b(\(for)i(making)f(c)n(harts\).)23 b(This)18 b(w)n(as)h(established)d(in)j +(1983.)511 1313 y(P)-5 b(AR)g(T)18 b(4:)24 b(7-BIT)19 b(JAP)-5 +b(ANESE)17 b(CODE)h(REPRESENT)-5 b(A)g(TIONS)511 1399 y(\(This)16 +b(section)f(con)n(tains)g(Japanese)g(text)h(whic)n(h)h(can)f(b)r(e)f(read)h +(using)g(appropriate)e(soft-)400 1465 y(w)n(are)k(and)f(hardw)n(are.\))400 +1532 y FL(JAPANESE)30 b(TEXT:)f FC(\263\354\317)p FK(\374)p +FJ(\334)p FI(\354)p FC(\316)p FB(\270)p FA(\317)o FC(\307\271)o +Fz(\243)400 1598 y FL(\(ROMANIZED:)h(KO)f(RE)g(WA)g(NI)g(HON)h(GO)f(NO)g(BUN) +g(SHOU)g(DE)h(SU)f(.)400 1665 y(RAW)g(CODE)h(\(NO)f(ESCAPE)g(CODES\))h +($3$l$OF|K)p FH(n)p FL(8l$NJ8)p FF(>)p FL(O$9!#)400 1731 y(NEW-JIS:)g +FF(<)p FL(ESC)p FF(>)p FL($B$3$l$OF)p FH(j)p FL(K)p FH(n)p +FL(8l$NJ8)p FF(>)p FL(O$G$9!#)p FF(<)p FL(ESC)p FF(>)p FL(\(J)400 +1798 y(OLD-JIS:)g FF(<)p FL(ESC)p FF(>)p FL($@$3$l$OF)p FH(j)p +FL(K)p FH(n)p FL(8l$NJ8)p FF(>)p FL(O$G$9!#)p FF(<)p FL(ESC)p +FF(>)p FL(\(J)400 1864 y(NEC)f(CODE:)h FF(<)p FL(ESC)p FF(>)p +FL(K$3$l$OF)p FH(j)p FL(K)p FH(n)p FL(8l$NJ8)p FF(>)p FL(O$G$9!#)p +FF(<)p FL(ESC)p FF(>)p FL(H)511 1950 y FN(Notice)17 b(the)g(corresp)r +(ondences)d(b)r(et)n(w)n(een)j(the)h(ASCI)r(I)f(c)n(haracters)f(and)i +(Japanese)f(c)n(har-)400 2017 y(acters,)f(namely)g(that)g(t)n(w)n(o)h(ASCI)r +(I)f(c)n(haracters)e(represen)n(t)h(one)h(Japanese)g(c)n(haracter;)f(hence,) +400 2083 y(Japanese)20 b(c)n(haracters)e(consist)j(of)g(t)n(w)n(o)g(b)n +(ytes.)34 b(F)-5 b(or)21 b(example,)g(the)g(HIRA)n(GANA)e(sysm)n(b)r(ol)400 +2150 y(for)f(\\RE")f(is)i(represen)n(ted)c(b)n(y)k(the)e(t)n(w)n(o)i(ASCI)r +(I)e(c)n(haracters)e(\\$")j(and)f(\\l".)511 2236 y(The)22 b(follo)n(wing)h +(paragraphs)d(are)i(Japanese)f(text)g(represen)n(ted)f(in)j(eac)n(h)f(of)g +(the)g(three)400 2303 y(ma)s(jor)15 b(Japanese)g(co)r(des.)23 +b(If)17 b(y)n(ou)g(are)f(using)g(a)h(Japanese)e(terminal,)h(then)g(y)n(ou)h +(can)f(view)h(the)400 2369 y(Japanese)g(text)g(using)h(the)f(pro)r(cedures)e +(found)i(in)i(later)e(sections)g(of)h(this)g(rep)r(ort.)511 +2456 y(NEW-JIS:)g(\(KANJI-IN:)g(\\)p FF(<)p FN(ESC)p FF(>)p +FN($B";)g(KANJI-OUT:)g(\\)p FF(<)p FN(ESC)p FF(>)p FN(\(J"\))511 +2542 y Fz(\241)q FK(\374)p FJ(\334)q FI(\354)q FC(\316)q Fy(\354)q +FB(\270)q Fx(\372)p FC(\362)q Fw(\267)p Fv(\323)q(\303)q(\310)p +Fz(\337)q Fw(\262)p Fv(\320)q(\244)q(\310)p FC(\316)q Fv(\263)p +Fz(\274)q Fv(\311)q FC(\307)p Fu(\275)q FI(\275)p FC(\271)q(\353)q +FB(\375)o FJ(\241)q FC(\313\317)q Ft(\267)q Fw(\312\311)q(\323)p +Fz(\242)400 2608 y Fs(\354)j Fw(\312)q(\311)q(\323)q Fz(\242)q +Fw(\316\305)q(\303)p Fr(\301)p Fx(\372)o FC(\316)p Fx(\260)q +Fq(\357)p Fp(\340)p FC(\254\242\352\336\271)q Fz(\243)p FC(\263\354\351\316)p +Fv(\263)p Fz(\274)q Fv(\311)p FC(\362)p Fo(\321)p FC(\244\277)p +FB(\270)p FA(\317)q FC(\307\317)p FK(\374)o FJ(\334)p FI(\354)400 +2675 y FC(\316)q Fn(\260)q FI(\345)q FC(\313)q Fr(\301)q Fx(\372)o +Fv(\244\363)p Fz(\242)q Fr(\301)p Fx(\372)o Fv(\242\246)q(\310)p +FC(\310\244\246)p FK(\363)p FC(\304\316)q Fv(\250\271\261)p +Fz(\274)p Fv(\327)p Fz(\246)p Fv(\267)q Fz(\274)p Fv(\261\363\271)p +FC(\362)p Fx(\310)p Fo(\321)q FC(\271\353\263)16 b(\310)400 +2741 y(\313\350\352)p Fz(\242)p FC(\275\316)p Fm(\346)p FC(\254)p +FK(\374)p FJ(\334)o FI(\354)p FC(\307)o(\242\353)o(\263\310)o(\362)p +Fq(\250)o FC(\267\336)o(\271)p Fz(\243)511 2828 y FN(OLD-JIS:)j(\(KANJI-IN:)f +(\\)p FF(<)p FN(ESC)p FF(>)p FN($@";)f(KANJI-OUT:)i(\\)p FF(<)p +FN(ESC)p FF(>)p FN(\(J"\))511 2914 y Fz(\241)q FK(\374)p FJ(\334)q +FI(\354)q FC(\316)q Fy(\354)q FB(\270)q Fx(\372)p FC(\362)q +Fw(\267)p Fv(\323)q(\303)q(\310)p Fz(\337)q Fw(\262)p Fv(\320)q(\244)q(\310)p +FC(\316)q Fv(\263)p Fz(\274)q Fv(\311)q FC(\307)p Fu(\275)q +FI(\275)p FC(\271)q(\353)q FB(\375)o FJ(\241)q FC(\313\317)q +Ft(\267)q Fw(\312\311)q(\323)p Fz(\242)400 2981 y Fs(\354)i +Fw(\312)q(\311)q(\323)q Fz(\242)q Fw(\316\305)q(\303)p Fr(\301)p +Fx(\372)o FC(\316)p Fx(\260)q Fq(\357)p Fp(\340)p FC(\254\242\352\336\271)q +Fz(\243)p FC(\263\354\351\316)p Fv(\263)p Fz(\274)q Fv(\311)p +FC(\362)p Fo(\321)p FC(\244\277)p FB(\270)p FA(\317)q FC(\307\317)p +FK(\374)o FJ(\334)p FI(\354)400 3047 y FC(\316)q Fn(\260)q +FI(\345)q FC(\313)q Fr(\301)q Fx(\372)o Fv(\244\363)p Fz(\242)q +Fr(\301)p Fx(\372)o Fv(\242\246)q(\310)p FC(\310\244\246)p +FK(\363)p FC(\304\316)q Fv(\250\271\261)p Fz(\274)p Fv(\327)p +Fz(\246)p Fv(\267)q Fz(\274)p Fv(\261\363\271)p FC(\362)p Fx(\310)p +Fo(\321)q FC(\271\353\263)16 b(\310)400 3114 y(\313\350\352)p +Fz(\242)p FC(\275\316)p Fm(\346)p FC(\254)p FK(\374)p FJ(\334)o +FI(\354)p FC(\307)o(\242\353)o(\263\310)o(\362)p Fq(\250)o +FC(\267\336)o(\271)p Fz(\243)511 3200 y FN(NEC)h(CODE:)i(\(KANJI-IN:)f(\\)p +FF(<)p FN(ESC)p FF(>)p FN(K";)g(KANJI-OUT:)g(\\)p FF(<)p FN(ESC)p +FF(>)p FN(H"\))1386 3333 y(5)p eop +%%Page: 6 6 +bop 511 455 a Fz(\241)q FK(\374)p FJ(\334)q FI(\354)q FC(\316)q +Fy(\354)q FB(\270)q Fx(\372)p FC(\362)q Fw(\267)p Fv(\323)q(\303)q(\310)p +Fz(\337)q Fw(\262)p Fv(\320)q(\244)q(\310)p FC(\316)q Fv(\263)p +Fz(\274)q Fv(\311)q FC(\307)p Fu(\275)q FI(\275)p FC(\271)q(\353)q +FB(\375)o FJ(\241)q FC(\313\317)q Ft(\267)q Fw(\312\311)q(\323)p +Fz(\242)400 522 y Fs(\354)21 b Fw(\312)q(\311)q(\323)q Fz(\242)q +Fw(\316\305)q(\303)p Fr(\301)p Fx(\372)o FC(\316)p Fx(\260)q +Fq(\357)p Fp(\340)p FC(\254\242\352\336\271)q Fz(\243)p FC(\263\354\351\316)p +Fv(\263)p Fz(\274)q Fv(\311)p FC(\362)p Fo(\321)p FC(\244\277)p +FB(\270)p FA(\317)q FC(\307\317)p FK(\374)o FJ(\334)p FI(\354)400 +588 y FC(\316)q Fn(\260)q FI(\345)q FC(\313)q Fr(\301)q Fx(\372)o +Fv(\244\363)p Fz(\242)q Fr(\301)p Fx(\372)o Fv(\242\246)q(\310)p +FC(\310\244\246)p FK(\363)p FC(\304\316)q Fv(\250\271\261)p +Fz(\274)p Fv(\327)p Fz(\246)p Fv(\267)q Fz(\274)p Fv(\261\363\271)p +FC(\362)p Fx(\310)p Fo(\321)q FC(\271\353\263)16 b(\310)400 +655 y(\313\350\352)p Fz(\242)p FC(\275\316)p Fm(\346)p FC(\254)p +FK(\374)p FJ(\334)o FI(\354)p FC(\307)o(\242\353)o(\263\310)o(\362)p +Fq(\250)o FC(\267\336)o(\271)p Fz(\243)511 730 y FN(P)-5 b(AR)g(T)18 +b(5:)24 b(8-BIT)19 b(JAP)-5 b(ANESE)17 b(CODES)511 805 y(These)i(co)r(des)g +(cannot)g(b)r(e)h(used)g(reliably)h(in)g(the)f(US)g(since)g(7-bit)h(paths)e +(will)j(strip)e(o\013)400 872 y(the)d(8th)g(bit)h(lea)n(ving)g(garbage.)23 +b(These)17 b(co)r(des)f(are)h(used)g(primarily)h(for)f(in)n(ternal)h(pro)r +(cessing)400 938 y(of)23 b(Japanese.)39 b(The)23 b(names)e(in)j(the)e(paren)n +(theses)f(b)r(elo)n(w)i(are)f(other)g(names)g(for)g(the)h(same)400 +1005 y(co)r(de)17 b(\(i.e.,)i(SHIFT-JIS)f(is)h(also)f(called)g(MS-KANJI\).) +511 1080 y(EXAMPLES:)e(SHIFT-JIS)i(\(MS)g(KANJI\))f(EUC)h(\(A)-5 +b(T&T)17 b(JIS\))511 1155 y(SHIFT-JIS:)511 1231 y(The)25 b(t)n(w)n(o-b)n(yte) +h(8-bit)g(Japanese)f(co)r(de's)f(implemen)n(tation)f(is)j(quite)g(unlik)n(e)g +(that)f(for)400 1297 y(the)d(t)n(w)n(o-b)n(yte)h(7-bit)f(co)r(de)f(as)h(w)n +(as)h(describ)r(ed)d(ab)r(o)n(v)n(e.)38 b(I)22 b(will)i(explain)f(ho)n(w)f +(the)g(t)n(w)n(o-b)n(yte)400 1364 y(8-bit)f(co)r(de)e(w)n(orks)i(for)g(the)f +(sak)n(e)h(of)g(completeness.)29 b(The)21 b(t)n(w)n(o-b)n(yte-p)r(er-)g(c)n +(haracter)d(mo)r(de)400 1430 y(is)j(initiated)e(when)g(the)h(Japanese)e +(terminal)h(receiv)n(es)g(a)h(c)n(haracter)e(from)h(the)g(ASCI)r(I)g(8-bit) +400 1496 y(extension)g(\(i.e.,)i(an)n(y)g(prin)n(table)e(from)g(128-255\).)29 +b(This)21 b(c)n(haracter)c(will)22 b(b)r(e)d(treated)f(as)i(the)400 +1563 y(\014rst)15 b(b)n(yte)h(of)f(an)h(exp)r(ected)d(t)n(w)n(o-b)n(yte)j +(sequence.)22 b(The)16 b(follo)n(wing)g(c)n(haracter,)e(whic)n(h)j(ma)n(y)e +(b)r(e)400 1629 y(ANY)i(prin)n(table)g(ASCI)r(I)g(c)n(haracter)f(\(including) +i(those)e(in)j(the)e(8-bit)h(extension\),)f(is)i(treated)400 +1696 y(as)f(the)g(second)e(b)n(yte)j(to)e(complete)f(the)i(t)n(w)n(o-b)n(yte) +g(sequences.)23 b(In)c(summary)-5 b(,)17 b(the)g(\014rst)g(b)n(yte)400 +1762 y(in)24 b(the)e(t)n(w)n(o-b)n(yte)i(8-bit)g(Japanese)e(co)r(de)g(m)n +(ust)g(b)r(e)h(a)g(c)n(haracter)e(whic)n(h)j(is)g(part)e(of)h(the)g(8-)400 +1829 y(bit)h(extension)e(\(v)m(alue)i(128-255\),)g(and)f(the)g(second)f(b)n +(yte)i(can)f(b)r(e)h(ANY)e(c)n(haracter.)40 b(The)400 1895 +y(main)21 b(di\013erence)g(is)i(that)d(the)i(t)n(w)n(o-b)n(yte)g(8-bit)g +(Japanese)f(co)r(de)g(do)r(es)g(not)g(use)h(KANJI-IN)400 1961 +y(or)f(KANJI-OUT)g(escap)r(e)e(sequences)g(to)h(shift)h(to)g(and)f(from)g +(the)g(t)n(w)n(o-b)n(yte-p)r(er-c)n(haracter)400 2028 y(mo)r(de;)g(the)g(t)n +(w)n(o-b)n(yte)h(7-bit)g(co)r(de)e(as)i(w)n(as)g(discussed)e(ab)r(o)n(v)n(e)h +(do)r(es)g(implemen)n(t)f(KANJI-IN)400 2094 y(and)f(KANJI-OUT)g(escap)r(e)e +(sequences.)400 2170 y([End)i(of)g(Lunde)f(extract.])511 2245 +y(If)h(a)g(little)g(is)h(go)r(o)r(d,)e(let's)h(try)g(some)e(more!)511 +2320 y(This)i(text)f(is)i(\\JT)-5 b(eX)18 b(Note")f(from)f(the)i(NTT)g(JT) +1571 2332 y(E)1602 2320 y(X)f(distribution.)1256 2398 y Fl(y)p +Fy(f)p Fs(.)p FB(8)511 2473 y FN(T)-5 b(eX)18 b FC(\307\317)f +FF(<)p FN(return)p FF(>)g FC(\310)h FF(<)p FN(space)p FF(>)f +FC(\316)p Fy(\267)p FC(\244\313\304\244\306)p Fq(\241)p FC(\316)o +Fo(\315)p FC(\312)o Fs(\254)p Fk(\247)o FC(\254\242)o(\352\336)o(\271)p +Fz(\243)511 2548 y FN(1.)24 b Fj(\365)p Fi(\362)p Fh(\324)p +FC(\307\312\244)p Fh(\324)p FC(\316)p Fr(\326)p FC(\316)o FF(<)p +FN(ret)o(urn)o FF(>)p FC(\317)p FF(<)p FN(spa)o(ce)o FF(>)p +FC(\310\337\312)o(\271)p Fz(\243)511 2624 y FN(2.)32 b(2)p +FC(\304)q Fy(\312)q FA(\345)q FC(\316)q FF(<)p FN(space)o FF(>)p +FC(\317)q FN(1)o FC(\304)q(\316)p FF(<)p FN(spa)o(ce)p FF(>)p +FC(\310)p FK(\261)p FC(\270)p Fz(\243)18 b FC(\263)q(\354)q(\300)q(\261)q +Fm(\316)q FC(\303\306)q(\244\354\320)q(\333\334)p Fg(\275)p +FB(\254)400 2690 y FC(\312)q(\316)q(\307)q(\271)q(\254)q Fz(\242)p +Fj(\365)p Fi(\362)p Fh(\324)p FN(\()o FF(<)p FN(spac)o(e)p +FF(>)p FC(\316\337\253)q(\351\312\353)f Fh(\324)q FC(\342)q +Fr(\336)q FC(\340)q FN(\))p FC(\342)p Fh(\315)p Fp(\270)q FC +(\267\306\342\246)p FA(\257)q FC(\267)p FI(\267)p Ff(\251)p +FC(\313)p Fg(\322)p FC(\331)400 2757 y(\353\310)p Fz(\242)p +Fq(\241)p FC(\316)p Fg(\347)p FC(\313)p Fg(\350)p Fo(\375)p +FC(\265)o(\354\336)o(\271)p Fz(\243)511 2832 y FN(1.)24 b Fh(\324)p +FJ(\366)p FC(\316)p FF(<)p FN(space)p FF(>)p FC(\317)p Ff(\265)p +Fx(\353)p FC(\271)o(\353)p Fz(\243)511 2907 y FN(2.)g Fq(\241)p +FC(\316)p FB(\270)p Fx(\372)p FC(\342)p FF(<)p FN(return)p +FF(>)p FC(\307)o(\242\353)o FF(<)p FN(ret)o(urn)o FF(>)p Fy(\312)p +Fe(\260)p FC(\316)o FF(<)p FN(re)o(tur)o(n)p FF(>)p FC(\317)p +FF(<)p FN(sp)o(ace)o FF(>)p FC(\310\337)o(\312\271)o Fz(\243)511 +2983 y FN(3.)g(2)p FC(\304)p Fy(\312)p FA(\345)p FC(\316)p +FF(<)p FN(space)p FF(>)p FC(\317)p FN(1)p FC(\304)o(\316)p +FF(<)p FN(sp)o(ace)o FF(>)p FC(\310)p FK(\261)o FC(\270)p Fz(\243)14 +b FC(\263\354\253\351)p Fi(\311)p Fd(\270)p Fs(\254)p Fk(\247)p +FC(\310)o(\267\306)511 3058 y FN(4.)24 b Fh(\324)p FK(\254)p +FC(\316)17 b FF(<)p FN(space)p FF(>)g FC(\317)p Ff(\265)p Fx(\353)p +FC(\271\353)p Fz(\243)511 3134 y FC(\267)q(\253)q(\267)q Fz(\242)h +FN(JT)-5 b(eX)21 b FC(\316)q FA(\354)q Fh(\347)q Fr(\301)q +Fx(\372)p FC(\316)p Fn(\260)q FI(\345)p FC(\316)p FF(<)p FN(re)o(tur)o(n)p +FF(>)p FC(\362)p Ff(\265)p Fx(\353)q FC(\267\277\244\316\307)q +Fz(\242)p FA(\345)p Fs(\255)p FC(\316)c Fs(\254)q Fk(\247)q +FC(\317)400 3200 y Fy(\312)p FE(\274)p FC(\316)p Fo(\315)p +FC(\313)p FB(\321)p Fh(\271)p FC(\265\354\306)o(\244\336)o(\271)p +Fz(\243)1386 3333 y FN(6)p eop +%%Page: 7 7 +bop 511 455 a FN(1.)24 b Fh(\324)p FJ(\366)p FC(\316)p FF(<)p +FN(space)p FF(>)p FC(\317)p Ff(\265)p Fx(\353)p FC(\271)o(\353)p +Fz(\243)511 533 y FN(2.)46 b Fq(\241)r FC(\316)r FB(\270)r +Fx(\372)p FC(\342)26 b FF(<)p FN(return)p FF(>)e FC(\307)r(\242)r(\353)j +FF(<)p FN(return)p FF(>)d Fy(\312)r Fe(\260)r FC(\316)i FF(<)p +FN(return)p FF(>)e FC(\316)r(\246)r(\301)r Fz(\242)j Fn(\260)r +FI(\345)400 599 y FC(\313)q Fr(\301)q Fx(\372)p FC(\254)q(\242)q(\353)q +FA(\354)q Fh(\347)q FC(\317)q(\275\316)19 b FF(<)p FN(return)p +FF(>)h FC(\317)q Ff(\265)q Fx(\353)q FC(\267)q Fz(\242)g FC(\275)q(\246)q +(\307)q(\312)q(\244)q FA(\354)q Fh(\347)q FC(\317)q(\275)q(\316)f +FF(<)p FN(return)p FF(>)g FC(\317)400 666 y FF(<)p FN(space)p +FF(>)e FC(\310\337\312\271)p Fz(\243)511 743 y FN(3.)31 b(2)p +FC(\304)q Fy(\312)q FA(\345)q FC(\316)17 b FF(<)p FN(space)p +FF(>)j FC(\317)q FN(1)p FC(\304)q(\316)e FF(<)p FN(space)p +FF(>)h FC(\310)q FK(\261)q FC(\270)q Fz(\243)f Fg(\276)q FC(\303)q(\306)q +Fz(\242)q Fi(\311)q Fd(\270)p Fs(\254)p Fk(\247)p FN(4)p FC(\317)p +Fu(\254)p FC(\272\267)400 810 y(\342)p Fd(\256)p FC(\352)p +Fp(\251)p FC(\277\312\244)p Fx(\366)p FC(\313)p Fm(\355)o Fy(\325)p +FC(\267)o(\306)p FE(\274)o FC(\265\244)o Fz(\243)511 887 y +FC(\277\300\267)p Fz(\242)p FC(\263\316)p FB(\321)p Fh(\271)p +FC(\317)p Fm(\274)o FJ(\366)p FC(\253)o(\351)p Fv(\306)o(\255\271)o(\310)p +FC(\254)p FK(\376)o Fp(\317)p FC(\265)o(\354\353)o(\310\255)o(\344)p +Fv(\325)o(\241\244\353)c FC(\253\351)k FH(n)p FN(read)e FC(\307)400 +953 y FK(\311)p FC(\340\310\255\313\317)p Fc(\254)p Fo(\321)p +FC(\265\354)o(\336\273)o(\363)p Fz(\243)o Fg(\276)p FC(\303)o(\306)p +Fz(\242)o Fk(\347)p Fb(\361)o FC(\316)p FA(\354)o Fh(\347)p +FC(\313)o(\317)e Fc(\254)p Fo(\321)p FC(\265\354\353\263\310\313\312\352)o +(\336\271)o Fz(\243)511 1031 y FC(\312)q(\252)q Fz(\242)q FC(\263)q(\316)q +Fo(\315)q FC(\313)q FB(\321)q Fh(\271)q FC(\267)q(\277)q Fa(\353)q +FE(\314)q Fz(\242)q Fh(\324)q FC(\316)q Fl(\307)p FI(\345)q +FC(\307)q Fv(\250)q(\351)p Fz(\274)q FC(\254)q Fs(\257)q FC(\255\277)q +FA(\354)q Fh(\347)19 b FN(\()p Fp(\343)q FC(\250)q(\320)q(\275)q(\316)q +Fh(\324)q FC(\362)400 1097 y FN(10)p Fh(\324)p FC(\310\271\353\310)p +FN(\))p Fz(\242)14 b FN(T)-5 b(eX)18 b FC(\307\317)p Fu(\254)p +FC(\272)511 1175 y FN(l.10)g(...xxx)i(xxx)g(xxx)511 1252 y +FC(\310)p Fu(\275)p Fq(\250)p FC(\265\354\336\271\254)p Fz(\242)14 +b FN(JT)-5 b(eX)18 b FC(\307\317)511 1330 y FN(l.11)511 1407 +y(yy)h(yyy)g(yyyy)511 1485 y FC(\310)p Fu(\275)p Fq(\250)p +FC(\265\354\353)p Fx(\366)p FC(\254\242\352\336\271)p Fz(\243)p +FC(\263\354\317)o FN(11)p Fh(\324)o FC(\316)p Fd(\350)p FK(\254)p +FC(\316)o Fn(\260)p Fz(\242)p Fk(\250)p FC(\301)p FN(1)o(0)p +Fh(\324)p FC(\316)o Fl(\307)p FI(\345)p FC(\307)c Fv(\250\351)p +Fz(\274)p FC(\254)400 1551 y Fs(\257)p FC(\255\277)p Fz(\242)p +FC(\310)p FK(\311)p FC(\341\353\316\307)o Fu(\275)p Fq(\250)o +FC(\254)p Fr(\326)o Fy(\343)p FC(\303)o(\306\244)o(\353\310)o(\244\246)o +(\357\261)o(\307\317)f(\242\352\336\273\363)p Fz(\243)1386 +3333 y FN(7)p eop +%%Trailer +end +userdict /end-hook known{end-hook}if +%%EOF diff --git a/fonts/poorman/pmjintro.tex b/fonts/poorman/pmjintro.tex new file mode 100644 index 0000000000..d6cc5260c7 --- /dev/null +++ b/fonts/poorman/pmjintro.tex @@ -0,0 +1,310 @@ +% pmjintro.tex --- a brief introduction to poor man's Japanese +\parskip2pt plus 4pt minus 1.5pt +\hsize=5in\vsize=7in\hoffset=1in\voffset=1in +\font\logo=logo10 +\input pmJ + +\def\pmJ{{\tt pmJ}{\jfcG\char252\jfcb\char220\jfbI\char236}} +% uhhm, we are defining and using \pmJ outside a \beginJapanese +% environment, that is why we are spelling it out that way +% unless you may have a conflicting language in use elsewhere in the +% document, you can make one big \beginJapanese . . . \endJapanese +% surrounding everything. + +\def\mf{{\logo METAFONT}} +\font\bigfont=cmr17 +\font\russ=wncyr10 + +\centerline{{\bigfont Poor Man's Japanese in \TeX}} +\vskip.15in +\centerline{Thomas Ridgeway} +\centerline{Humanities and Arts Computing Center} +\centerline{University of Washington} +\vskip.1in + +This little document is intended as an illustration of and preliminary +guide to {\it poor man's +Japanese} [\pmJ]. \pmJ\ is a temporary expedient for +printing texts with Japanese via \TeX\ until such time as we have a +well-thought-out system (and fonts) for handling Japanese. \footnote{@}{In J\TeX\ there +exists such a system, but for many individuals and institutions the +relative cost of fonts/unavailability of free fonts has made installing +J\TeX\ not seem advantageous. It is also inconvenient to have to install another separate \TeX\ system for the purpose unless you are doing Japanese in a big way.} + +\pmJ\ has a small number of virtues; among these are: + +\item{$\bullet$}\pmJ\ is available now + +\item{$\bullet$}\pmJ\ is available free of charge + +\item{$\bullet$}\pmJ\ works with standard \TeX3.x + +\item{$\bullet$}\pmJ\ is device-independent (although it must be admitted that you +will get relatively more pleasing results on less sophisticated printers) + +\item{$\bullet$}\pmJ\ is sufficiently simple-minded you will not need to be a rocket +scientist to make modifications for your own use + +\item{$\bullet$}\pmJ\ uses fonts mechanically faked-up from dot matrix quality fonts; if you +want you can incorporate new characters of your own design using a bitmap +font editor which {\it may} be easier to use than \mf.\footnote{\ddag}{Need we point out that the presence of user-defined character codes in a document will make the {\tt .tex} file non-standard? Such a document will not generate correct output +on a system which does not have the user-defined characters defined (!or has {\it different} user-defined characters defined!).} + +{\narrower For those who might be previously unacquainted with \TeX, let us put forth a few of +the advantages of \TeX\ which are inherited by \pmJ: it can run on almost any +modern computer; it can print to any of a large number of printers/typesetters; +it can print (if desired and suitably instructed) elaborate formatting of the text; +it is available at very low cost, or free (which is an instance of very low cost). + +}%end narrower + +The disadvantages of \pmJ\ are at least equally compelling: + +\item{$\bullet$}\pmJ\ is crude and unlikely to ever be greatly improved as regards the quality of its Japanese. + +\item{$\bullet$}\pmJ\ uses emulation-in-\mf\ techniques to produce a dot-matrix +font on your output device. No matter how talented your printer may be, +the Japanese output by \pmJ\ will looked like it was stripped in from +a dot-matrix printer. + + +\item{$\bullet$}\pmJ\ uses a large number of fonts which occupy a finite and +measurable quantity of diskspace for each font. Your screen previewer had +{\it better} be able to use the same resolution your printer uses, or you +may experience a little tightness around the disk. You probably will not want +the fonts in multiple magsteps +(to a not inconsiderable extent they will just get uglier if you enlarge them). + + +\item{$\bullet$}\pmJ\ does not do slanted, bold, or other fancy Japanese although one could +in principle. However, insofar as even a minimal installation requires +88 fonts {\it for Japanese alone}, we must at this point quote The Master: + +{\narrower\narrower the format of a {\it char\_node} allows for up to 256 +different fonts and up to 256 characters per font; $\ldots$ \TeX\ intended for oriental languages +will need even more than 256 $\times$ 256 possible characters when we consider different +sizes and styles of type.\footnote{*}{Donald E. Knuth, {\it \TeX : The Program}. +Addison Wesley, Reading MA: 1986. (Volume B of {\it Computers and Typesetting}). \S 134, p.~57.\par +To ease somewhat the problem of the number of fonts used, the wjisxx fonts +which \pmJ\ uses are generated with a $\backslash$magstep2 variant included +in the same font. The enlarged version will be printed any time we have +signalled $\backslash$bigJtrue. I.e., ordinary \beginJapanese +^^b2^^a5 versus +\bigJtrue ^^b2^^a5.\endJapanese} + +}%end narrower + +\item{$\bullet$}\pmJ\ is based on \TeX\ (hooray!), not on J\TeX\ (hooray!) nor +any not-known-to-me to-be-extant Foo\TeX\ (huh?) which might +know how to set type vertically, handle thousands of fonts, make +doughnuts, and do all the other things that we might want software to do. +\pmJ, therefore, does not set type vertically, handle thousands of fonts, +emulate Spads or Spitfires, or any of the other real neat stuff. + +\item{$\bullet$}\pmJ\ may take a long time to set up if you need to make your +own fonts. Preparing {\it one} set of fonts on a NeXT computer for use +at 400 dpi required a \mf\ run of over 37 hours.% +%Normally the fontmaking process attempts to generate one font at a time. The \mf\ source code +%files for the fonts occupied 17 megabytes of disk space when all were +%stored. +\footnote{\dag}{If one looks at the simple-minded brute-force \mf\ code +which the \pmJ\ fonts use, one may roughly estimate that a staggering number +of computations (probably even more than eight) are needed to emulate a dot-matrix font through this method. +There might, indeed, be a better way to do it. On the other hand, Pac-Man worldwide +has consumed several hundred million times the number of CPU cycles consumed +by compiling \pmJ\ fonts, so we are not exactly talking about wasting a scarce +resource, are we? + +Some of you thought I was going to slam NeXTs here, didn't you? I'm not that kind of guy.} You will not ordinarily wish to make up the fonts more +than once, assuming a relative absence of masochism in your personality makeup, nor will you probably want to keep the \mf\ source code permanently +{\it since you can mechanically regenerate it.} +\bigskip +\centerline{How to use \pmJ} +\medskip +Assume a text editor capable of editing text in Shift-JIS-encoded +Japanese characters. Assume a text editor capable of editing text in ``normal'' +Latin characters. Use the first text editor to prepare a plain text file +containing the Japanese text; {\it plain text file} means that there are no +tricky codes in the text file which are intended to be used only by the +program that produced the file---``ASCII file'' frequently conveys what we +mean by ``plain text file'', but by virtue of having encoded Japanese, your +file will not be ASCII. Use the second text editor to enter the Latin-letter +strings providing instructions to \TeX; (if your first text editor is o.k. for +Latin too, you can continue using it for this step! --- but watch out, the JIS +and Shift-JIS encoding schemes have some Latin characters (graphemes) included in the two-byte code +space: we need ``normal'' Latin (one-byte coded) text). On a separate line +before the first line of Japanese, put a line saying ``$\backslash$input pmJ $\backslash$beginJapanese''.\footnote{**}{We {\it really} do need to have the $\backslash$beginJapanese on a line separate from and preceding the first Japanese character +to be printed under its control. Absent strict adherence to this principle all sorts +of unJapanese looking things will happen.} +pmJ.tex is intended to be the name of a file containing the basic set of +instructions for \pmJ. ``$\backslash$beginJapanese'' is a \pmJ-defined magic-word +signifying that everything until an ``$\backslash$endJapanese'' is to be interpreted +as Japanese, if possible. Using whatever text editor you want, incorporate text in +whatever other language you want. Other languages will conflict with Japanese in \pmJ\ only if they +use character codes in the range 160 to 254; such languages must be separated from +Japanese by enclosing the Japanese in ``$\backslash$beginJapanese'' ``$\backslash$endJapanese'' +structures. Create a new last line saying ``$\backslash$bye''. Put a blank line +between paragraphs in the text, and use any other \TeX\ commands with which you +may be familiar to further adorn your text. Save the file, and say the appropriate +words to run \TeX\ on your file, preview it, print it, or whatever. + +\centerline{What can go wrong} + +Well, for one, you may not have an editor for entering Japanese. [Sorry; \pmJ\ +has nothing to offer you if you have no way to compose your text]. Or, +for another, your editor may not use Shift-JIS-encoding. [Easy: convert your text +to Shift-JIS-encoding! (How? That's not my problem; or, to be a {\it little} more gracious +about it, there are some converters out there, see if you can find one $\ldots$) There is a converter TO\_SJIS +to translate from NEC, NEW-JIS and OLD-JIS (as described below) to what we want; this converter should be +included with pmJ. There are other encoding schemes, however, of which TO\_SJIS knows nothing]. +You may not know ``any other \TeX\ commands with which you +may further adorn your text''\footnote{\S}{Careful study will reveal this phrase to be a direct +quotation of nothing except itself.} [So take a class]. Something else +goes wrong. [Fix it]. You don't have a copy of \pmJ\null. [Get one]. + +\centerline{How to get \pmJ} + +From a friend is good. If you have no friend who has \pmJ\ and is prepared to make +a copy for you $\ldots$ (that was supposed to be phrased as delicately as possible) +$\ldots$ you may get it through an {\it Established Channel}. There are a number +of ``\TeX\ distributions'' which may elect to incorporate \pmJ\ in their offerings +of \TeX\ and \TeX-related software. You will very likely be able to get a copy +from the NWCSC, distributors of \TeX\ for Unix systems; they will have to charge you +a fee, however, as even though they are non-profit they still have to pay their employees, pay phone bills, and all +the rest of the drag with which I am sure you are familiar. You might also be able to get it +electronically and free-of-charge via {\bf ftp} from some place or other, but I +couldn't tell you where. As I write, November 30, 1990, none of these alternatives which I +have suggested will actually work, and there is no way that you can get \pmJ\ short +of enrolling in a course of study at the University of Washington, or you have a friend +who has done so, or you make me a really attractive offer. + +\centerline{Are we really going to show any Japanese or what?} +\beginJapanese +Well, o.k.! Included below are extracts from +{\it Electronic Transfer of Japanese} by Ken R. Lunde [klunde@vms.macc.wisc.edu or klunde@wiscmacc]. +It discusses some of the varieties of encoding Japanese as alluded to above. +If for some reason discernable to neither of us you are reading this and are +as unfamiliar with computer representations of Japanese as I am, the text will +be informative in its own right, entirely apart from serving as an example of Japanese. + +\centerline{PART 3: DIFFERENCES BETWEEN THE THREE 7-BIT JAPANESE CODES} + +(KANJI-IN will be abbreviated KI; KANJI-OUT, KO) +{\tt +\newskip\superskip\tabskip=\superskip +\halign to \hsize{#\hfil\tabskip=0pt & \quad #\hfil & \quad #\hfil & \quad #\hfil\tabskip=\superskip\cr + & KI & KO (JIS-ROMAN) & KO (ASCII)\cr +\cr +NEW-JIS (1983) & $<$ESC$>$\$B & $<$ESC$>$(J & $<$ESC$>$(B\cr +OLD-JIS (1978) & $<$ESC$>$\$@ & $<$ESC$>$(J & $<$ESC$>$(B\cr +NEC CODE & $<$ESC$>$K & $<$ESC$>$H & n/a\cr} +}% end \tt + +NOTE \#1: The difference between KO (JIS-ROMAN) and KO (ASCII) is very minor. +Also, most terminals can emulate only one of the KO character sets no matter +which one it receives. For example, NINJA TERM (PDS) by Michiharu Ariza from +SRA only emulates KO-ASCII. + +NOTE \#2: The difference between NEW-JIS and OLD-JIS is not significant. + + The most commonly used code in Japan for communication is the NEW-JIS. +NEC CODE is the least used. + + The KI escape sequence tells Japanese terminals to treat what follows as +two-bytes per character. KO, on the other hand, tells Japanese terminals to +treat what follows as one-byte per character (back to JIS-ROMAN or ASCII). + + A two-byte per character coding system using 7-bit bytes (ASCII) can +encode up to 16,384 characters (128 by 128); however, the Japanese only use +the 94 printable ASCII codes in their matrix, so it can only encode a maximum +of 8,836 characters (94 by 94). + + The NEW-JIS Japanese code includes 6,877 standard characters; 6,353 KANJI +in 2 levels (level 1: 2,965 KANJI arranged by ON reading; level 2: 3,388 KANJI +arranged by radical), 86 KATAKANA, 83 HIRAGANA, 10 numerals, 52 English +characters, 147 symbols, 66 Russian characters, 48 Greek characters, and 32 +line elements (for making charts). This was established in 1983. + + +PART 4: 7-BIT JAPANESE CODE REPRESENTATIONS + +(This section contains Japanese text which can be read using appropriate +software and hardware.) + +{\tt +\halign to \hsize{#\hfil\tabskip=0pt & #\hfil\tabskip=\superskip\cr +JAPANESE TEXT: ¤³¤ì¤ÏÆüËܸì¤Îʸ¾Ï¤Ç¤¹¡£\cr +(ROMANIZED: KO RE WA NI HON GO NO BUN SHOU DE SU .\cr +RAW CODE (NO ESCAPE CODES) \${}3\${}l\${}OF|K$\backslash$8l\${}NJ8$>$O\${}9!\#\cr +NEW-JIS: $<$ESC$>$\${}B\${}3\${}l\${}OF$\vert$K$\backslash$8l\${}NJ8$>$O\${}G\${}9!\#$<$ESC$>$(J\cr +OLD-JIS: $<$ESC$>$\${}@\${}3\${}l\${}OF$\vert$K$\backslash$8l\${}NJ8$>$O\${}G\${}9!\#$<$ESC$>$(J\cr +NEC CODE: $<$ESC$>$K\${}3\${}l\${}OF$\vert$K$\backslash$8l\${}NJ8$>$O\${}G\${}9!\#$<$ESC$>$H\cr} +}% end \tt + + Notice the correspondences between the ASCII characters and Japanese +characters, namely that two ASCII characters represent one Japanese +character; hence, Japanese characters consist of two bytes. For example, the +HIRAGANA sysmbol for ``RE" is represented by the two ASCII characters ``\${}" and +``l". + + The following paragraphs are Japanese text represented in each of the +three major Japanese codes. If you are using a Japanese terminal, then you +can view the Japanese text using the procedures found in later sections of +this report. + +NEW-JIS: (KANJI-IN: ``$<$ESC$>$\${}B"; KANJI-OUT: ``$<$ESC$>$(J") + +¡¡ÆüËܸì¤Î°ìʸ»ú¤ò£·¥Ó¥Ã¥È¡ß£²¥Ð¥¤¥È¤Î¥³¡¼¥É¤Çɽ¸½¤¹¤ëÊýË¡¤Ë¤Ï¿·£Ê£É£Ó¡¢µì +£Ê£É£Ó¡¢£Î£Å£Ã´Á»ú¤Î»°¼ïÎब¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥³¡¼¥É¤òÍѤ¤¤¿Ê¸¾Ï¤Ç¤ÏÆüËܸì +¤ÎÁ°¸å¤Ë´Á»ú¥¤¥ó¡¢´Á»ú¥¢¥¦¥È¤È¤¤¤¦Æó¤Ä¤Î¥¨¥¹¥±¡¼¥×¡¦¥·¡¼¥±¥ó¥¹¤ò»ÈÍѤ¹¤ë¤³ +¤È¤Ë¤è¤ê¡¢¤½¤ÎÃ椬ÆüËܸì¤Ç¤¢¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£ + +OLD-JIS: (KANJI-IN: ``$<$ESC$>$\${}@"; KANJI-OUT: ``$<$ESC$>$(J") + +¡¡ÆüËܸì¤Î°ìʸ»ú¤ò£·¥Ó¥Ã¥È¡ß£²¥Ð¥¤¥È¤Î¥³¡¼¥É¤Çɽ¸½¤¹¤ëÊýË¡¤Ë¤Ï¿·£Ê£É£Ó¡¢µì +£Ê£É£Ó¡¢£Î£Å£Ã´Á»ú¤Î»°¼ïÎब¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥³¡¼¥É¤òÍѤ¤¤¿Ê¸¾Ï¤Ç¤ÏÆüËܸì +¤ÎÁ°¸å¤Ë´Á»ú¥¤¥ó¡¢´Á»ú¥¢¥¦¥È¤È¤¤¤¦Æó¤Ä¤Î¥¨¥¹¥±¡¼¥×¡¦¥·¡¼¥±¥ó¥¹¤ò»ÈÍѤ¹¤ë¤³ +¤È¤Ë¤è¤ê¡¢¤½¤ÎÃ椬ÆüËܸì¤Ç¤¢¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£ + +NEC CODE: (KANJI-IN: ``$<$ESC$>$K"; KANJI-OUT: ``$<$ESC$>$H") + +¡¡ÆüËܸì¤Î°ìʸ»ú¤ò£·¥Ó¥Ã¥È¡ß£²¥Ð¥¤¥È¤Î¥³¡¼¥É¤Çɽ¸½¤¹¤ëÊýË¡¤Ë¤Ï¿·£Ê£É£Ó¡¢µì +£Ê£É£Ó¡¢£Î£Å£Ã´Á»ú¤Î»°¼ïÎब¤¢¤ê¤Þ¤¹¡£¤³¤ì¤é¤Î¥³¡¼¥É¤òÍѤ¤¤¿Ê¸¾Ï¤Ç¤ÏÆüËܸì +¤ÎÁ°¸å¤Ë´Á»ú¥¤¥ó¡¢´Á»ú¥¢¥¦¥È¤È¤¤¤¦Æó¤Ä¤Î¥¨¥¹¥±¡¼¥×¡¦¥·¡¼¥±¥ó¥¹¤ò»ÈÍѤ¹¤ë¤³ +¤È¤Ë¤è¤ê¡¢¤½¤ÎÃ椬ÆüËܸì¤Ç¤¢¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£ + + +PART 5: 8-BIT JAPANESE CODES + + These codes cannot be used reliably in the US since 7-bit paths will strip +off the 8th bit leaving garbage. These codes are used primarily for internal +processing of Japanese. The names in the parentheses below are other names for +the same code (i.e., SHIFT-JIS is also called MS-KANJI). + + EXAMPLES: SHIFT-JIS (MS KANJI) EUC (AT&T JIS) + +SHIFT-JIS: + + The two-byte 8-bit Japanese code's implementation is quite unlike that +for the two-byte 7-bit code as was described above. I will explain how +the two-byte 8-bit code works for the sake of completeness. The two-byte-per- +character mode is initiated when the Japanese terminal receives a character +from the ASCII 8-bit extension (i.e., any printable from 128-255). +This character will be treated as the first byte of an expected two-byte +sequence. The following character, which may be ANY printable ASCII character +(including those in the 8-bit extension), is treated as the second byte +to complete the two-byte sequences. In summary, the first byte in the two-byte +8-bit Japanese code must be a character which is part of the +8-bit extension (value 128-255), and the second byte can be ANY +character. The main difference is that the two-byte 8-bit Japanese code +does not use KANJI-IN or KANJI-OUT escape sequences to shift to and from the +two-byte-per-character mode; the two-byte 7-bit code as was discussed above +does implement KANJI-IN and KANJI-OUT escape sequences. + +\noindent[End of Lunde extract.] + +\endJapanese +If a little is good, let's try some more! + +\input jtexsamp +\bye diff --git a/fonts/poorman/pmsintro.tex b/fonts/poorman/pmsintro.tex new file mode 100644 index 0000000000..d1ab172757 --- /dev/null +++ b/fonts/poorman/pmsintro.tex @@ -0,0 +1,202 @@ +\hsize=5in\vsize=7in\hoffset=1in\voffset=1in +\parskip=2pt plus 4pt minus 1pt +\font\logo=logo10 +\input pmCs + +\def\pmC{{\tt pmC}} +\def\mf{{\logo METAFONT}} +\font\bigfont=cmr17 +\font\russ=wncyr10 + +\centerline{{\bigfont Poor Man's Chinese in \TeX}} +\centerline{featuring simplified characters} +\vskip.15in +\centerline{Thomas Ridgeway} +\centerline{Humanities and Arts Computing Center} +\centerline{University of Washington} +\vskip.1in + +This little document is intended as an illustration of and preliminary +guide to {\it poor man's +Chinese} [\pmC]. \pmC\ is a temporary expedient for +printing texts with Chinese via \TeX\ until such time as we have a +well-thought-out system (and fonts) for handling Chinese. + +\pmC\ has a small number of virtues; among these are: + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ is available free of charge. + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ is device-independent (although it must be admitted that you +will get relatively more pleasing results on less sophisticated printers) + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ is sufficiently simple-minded you will not need to be a rocket +scientist to make modifications for your own use. + +\item{$\bullet$}\pmC\ is available now. + +\item{$\bullet$}\pmC\ uses fonts mechanically faked-up from dot matrix quality fonts; if you +want you can incorporate new characters of your own design using a bitmap +font editor which {\it may} be easier to use than \mf. + +For those who might be previously unacquainted with \TeX, let us put forth a few of +the advantages of \TeX\ which are inherited by \pmC: it can run on almost any +modern computer; it can print to any of a large number of printers/typesetters; +it can print (if desired and suitably instructed) elaborate formatting of the text; +it is available at very low cost, or free (which is an instance of very low cost). + +The disadvantages are at least equally compelling: + +\item{$\bullet$}\pmC\ is crude and unlikely to ever be greatly improved as regards the quality of its Chinese. + +\item{$\bullet$}\pmC\ uses emulation-in-\mf\ techniques to produce a dot-matrix +font on your output device. No matter how talented your printer may be, +the Chinese output by \pmC\ will looked like it was stripped in from +a dot-matrix printer. + +\item{$\bullet$}\pmC\ is crude and unlikely to ever be greatly improved as regards the quality of its Chinese. + +\item{$\bullet$}\pmC\ uses a large number of fonts which occupy a finite and +measurable quantity of diskspace for each font. Your screen previewer had +{\it better} be able to use the same resolution your printer uses, or you +may experience a little tightness around the disk. You probably will not want +the fonts in multiple magsteps (they will just get uglier if you enlarge them). + +\item{$\bullet$}\pmC\ is crude and unlikely to ever be greatly improved as regards the quality of its Chinese. + +\item{$\bullet$}\pmC\ does not do slanted, bold, or other fancy Chinese although one could +in principle. However, insofar as even a minimal installation requires +88 fonts {\it for Chinese alone}, we must at this point quote The Master: +\medskip +{\narrower\narrower\noindent the format of a {\it char\_node} allows for up to 256 +different fonts and up to 256 characters per font; $\ldots$ \TeX\ intended for oriental languages +will need even more than 256 $\times$ 256 possible characters when we consider different +sizes and styles of type.\footnote{*}{Donald E. Knuth, {\it \TeX : The Program}. +Addison Wesley, Reading MA: 1986. (Volume B of {\it Computers and Typesetting}). \S 134, p.~57.\par +Ahh-hum. If we wanted to combine different-face or different-size versions of characters in a font, we could make fuller +use of the fonts which are declared for \pmC. Since currently only 94 characters are defined in +each font, we could put a different version of each character into currently empty space in the same font. +A light rewriting of the macro which handles the chinese characters could then +select one or the other version of a character depending on what we have indicated our desires to be. +As of November 21, 1990 I am not convinced that this is worth doing.} + +} +\medskip + +\item{$\bullet$}\pmC\ is based on \TeX\ (hooray!), not on J\TeX\ (hooray!) nor +any not-known-to-me to-be-extant Chi\TeX\ (huh?) which might +know how to set type vertically, handle thousands of fonts, make +doughnuts, and do all the other things that we might want software to do. +\pmC, therefore, does not set type vertically, handle thousands of fonts, +emulate Spads or Spitfires, or any of the other real neat stuff. + +\item{$\bullet$}\pmC\ may take a long time to set up if you need to make your +own fonts. Preparing {\it one} set of fonts on a NeXT computer for use +at 400 dpi required a \mf\ run of over 18 hours. The \mf\ source code +files for the fonts occupied 17 megabytes of disk space when all were +stored.\footnote{\dag}{If one looks at the simple-minded brute-force \mf\ code +which the \pmC\ fonts use, one may roughly estimate that a staggering number +of computations (probably even more than eight) are needed to emulate a dot-matrix font through this method. +There might, indeed, be a better way to do it. On the other hand, Pac-Man worldwide +has consumed several hundred million times the number of CPU cycles consumed +by compiling \pmC\ fonts, so we are not exactly talking about wasting a scarce +resource, are we?} You will not ordinarily wish to make up the fonts more +than once, assuming a relative absence of masochism in your personality makeup, nor will you probably want to keep the \mf\ source code permanently +{\it since you can mechanically regenerate it.} +\bigskip\goodbreak +\centerline{How to use \pmC} +\medskip +Assume a text editor capable of enabling entering text in GB-encoded +Chinese characters. Assume a text editor capable of editing text in ``normal'' +Latin characters. Use the first text editor to prepare a plain text file +containing the Chinese text; {\it plain text file} means that there are no +tricky codes in the text file which are intended to be used only by the +program that produced the file---``ASCII file'' frequently conveys what we +mean by ``plain text file'', but by virtue of having encoded Chinese, your +file will not be ASCII. Use the second text editor to enter the Latin-letter +strings providing instructions to \TeX; (if your first text editor is o.k. for +Latin too, you can continue using it for this step! --- but watch out, the JIS +and GB encoding schemes have some Latin characters (graphemes) included in the two-byte code +space: we need ``normal'' Latin (one-byte coded) text). On a separate line +before the first line of Chinese, put a line saying ``$\backslash$input pmc $\backslash$beginchinese''. +Pmc.tex is intended to be the name of a file containing the basic set of +instructions for \pmC. ``$\backslash$beginchinese'' is a \pmC-defined magic-word +signifying that everything until an ``$\backslash$endchinese'' is to be interpreted +as Chinese, if possible. Using whatever text editor you want, incorporate text in +whatever other language you want. Other languages will conflict with Chinese in \pmC\ only if they +use character codes in the range 160 to 254; such languages must be separated from +Chinese by enclosing the Chinese in ``$\backslash$beginchinese'' ``$\backslash$endchinese'' +structures. Create a new last line saying ``$\backslash$bye''. Put a blank line +between paragraphs in the text, and use any other \TeX\ commands with which you +may be familiar to further adorn your text. Save the file, and say the appropriate +words to run \TeX\ on your file, preview it, print it, or whatever. + +\centerline{What can go wrong} + +Well, for one, you may not have an editor for entering Chinese. [Sorry; \pmC\ +has nothing to offer you if you have no way to compose your text]. Or, +for another, your editor may not use GB-encoding. [Easy: convert your text +to GB-encoding! (How? That's not my problem; or, to be a {\it little} more gracious +about it, there are some converters out there, see if you can find one $\ldots$)]. +You may not know ``any other \TeX\ commands with which you +may further adorn your text''\footnote{\S}{Careful study will reveal this phrase to be a direct +quotation of nothing except itself.} [So take a class]. Something else +goes wrong. [Fix it]. You don't have a copy of \pmC\null. [Get one]. + +\centerline{How to get \pmC} + +From a friend is good. If you have no friend who has \pmC\ and is prepared to make +a copy for you $\ldots$ (that was supposed to be phrased as delicately as possible) +$\ldots$ you may get it through an {\it Established Channel}. There are a number +of ``\TeX\ distributions'' which may elect to incorporate \pmC\ in their offerings +of \TeX\ and \TeX-related software. You will very likely be able to get a copy +from the NWCSC, distributors of \TeX\ for Unix systems; they will have to charge you +a fee, however, as even though they are non-profit they still have to pay their employees, pay phone bills, and all +the rest of the drag with which I am sure you are familiar. You might also be able to get it +electronically and free-of-charge via {\bf ftp} from some place or other, but I +couldn't tell you where. As I write, November 21, 1990, none of these alternatives which I +have suggested will actually work, and there is no way that you can get \pmC\ short +of enrolling in a course of study at the University of Washington, or you have a friend +who has done so. + +%\tracingall +\centerline{Are we really going to show any Chinese or what?} + +Oh yes, this is roughly how it looks: \beginchinese +ÖÁ½ñΪֹ£¬´ó¼ÒËùÓõÄÖÐÎÄ +±à¼Æ÷£¬ÎãÂÛÓõÄÊǺÎÊäÈ뷽ʽ +¶¼²»¹ýÓÚ WYSWYG (What you see is what you get) ÀàÐÍ +£¬ÀýÈçÖÐÎÄ WordStar ¼´ÁªÏ뺺×Ö +£¬ ÌìÂí£¬·ÉÂí£¬ + Îå±Ê×ÖÐÍ¡£ (Please note that we may intermix all +kinds of other stuff in with the Chinese, such as {\russ Rodina, +Moskva, Kiev}. +ÕâЩÈí¼þÓÐËüÃǺõÄÒ»Ã棬 ¼´ +Ö±¹ÛÐÔÇ¿¡£ËüÃÇ´ó¶¼ÓÃÓÚ IBM ¼æÈÝ»úÓë Macintosh ¸öÈË΢»ú£¬ ²¢Ðè +ÌØÊâµÄÖÐÎIJÙ×÷ϵͳÀ´Æô¶¯»úÆ÷¡£È»¶ø£¬ËüÃǵÄÈõµãÈ´ÊDz»¿ÉÃÖ²¹µÄ£¬ +¼´ÊäÈëËÙ¶ÈÌ«Âý¶øÇÒÌ«·ÑÄÔÁ¦ºÍÑÛ +Á¦¡£ ÏëÏë¿´£¬µ±¼üÅÌ +ÊäÈëÓ¢ÎÄʱ + +ÄãÖ»Ðè»úеµØ»Ó¶¯ÊÖÖ¸£¬ÑÛ¾¦ºÍÍ·ÄÔ +È«Á¦¹á×¢ÔÚÆÁÄ»ÉϳöÏÖµÄÎÄÕ +Ê®·ÖÇáËÉ£¬ Óä¿ì£¬Í¬Ê±Ò²Äܱ£Ö¤³öºÃ +ÎÄÕ¡£µ«ÊÇÓÃÖÐÎÄ WordStar ʱ£¬ÄãµÄ +Í·ÄÔºÍÑÛ¾¦È´Òª·±Ã¦µØÄëתÔÚ´ò×Ö +¡¢Ñ¡×Ö¡¢ºÍÎÄÕÂÄÚÈÝÖ®¼ä£¬ÈçÁ¬Ðø +Á½Ð¡Ê±Èç´Ë×÷Òµ£¬Ä㽫¾õµÃÑüËá +ÑÛÍ´ÄÔÁ¦½ß¾¡£¬ºÁÎÞÀÖȤ¿ÉÑÔ¡£Ï»ØÒ»ÌáÆð´ò +ÖÐÎÄÄã±ãÓÐÒ»ÖÖ¿Ö¾å¸Ð¡£±¾ÈËÈýÄê +ÒÔÀ´Ê¹ÓÃÖÐÎÄÈí¼þµÄ½áÂÛ±ãÊÇÈç´Ë¡£ +ÄÇÄ© ChText ÓõÄÓÖÊÇʲô·½·¨ÄØ£¿ +Ê×ÏÈ ChText ²»ÊǸö±à¼Æ÷£¬¶øÊǸö +Æ´Òô + +\endchinese + +\bye diff --git a/fonts/poorman/poorman.mf b/fonts/poorman/poorman.mf new file mode 100644 index 0000000000..48f48a92c4 --- /dev/null +++ b/fonts/poorman/poorman.mf @@ -0,0 +1,61 @@ +% poorman.mf macro file for producing fonts in the +% Poor Man's language series for TeX +% this code is placed in the public domain by Thomas Ridgeway +% and the Humanities and Arts Computing Center, University of Washington +if unknown cmbase: input cmbase fi + +mode_setup; +def generate suffix t= enddef; +input cmr10; +crisp#:=0pt#; font_setup; +numeric magfactor; magfactor=1; +font_coding_scheme:="JIS encoded TeX text"; + +def setupsizes = +numeric cheight; cheight=magfactor*(body_height+.5desc_depth); +numeric hhalf; numeric vhalf; hhalf=cheight/24; vhalf=cheight/24; +% supposing it was a 16x16 font, we would want to say: +%numeric hhalf; numeric vhalf; hhalf=cheight/16; vhalf=cheight/16; +numeric vcent; vcent=.4vhalf; numeric hcent; hcent=.4hhalf; +enddef; + +% jc(character code) sets up for a particular character (in two sizes) +def jc(expr thischar) = +% set a character value +numeric subjectchar; subjectchar=thischar; +% then open a definition in a group to accumulate a bunch of jd() calls +begingroup; quote def drawchar = enddef; + + +def endjc = +% now process the character and end the local group +processit; endgroup; enddef; + +def processit = +% build the character once at true size and once at magstep2 +% the magstep2 char should be offset by -128 +magfactor:=1; setupsizes; makejc; drawchar; endchar; +magfactor:=magstep2; setupsizes; subjectchar:=subjectchar - 128; +makejc; drawchar; endchar; +enddef; + +def makejc = + beginchar(subjectchar,magfactor*(body_height#+.5desc_depth#),magfactor*body_height#,.5magfactor*desc_depth#); + normal_adjust_fit(0.75u#,0.75u#); pickup crisp.nib; +enddef; + +% draw a single dot in our matrix at coordinates row,col +def jd(expr row,col) = +y.c:=h-(row * vhalf)-vcent; x.c:=hcent+(col * hhalf); +y.a:=y.c+vcent; y.b:=y.c-vcent; +x.a:=x.c-hcent; x.b:=x.c+hcent; +filldraw (x.a,y.b)..(x.a,y.a)..(x.b,y.a)..(x.b,y.b)..cycle; +enddef; + +font_slant slant; font_x_height x_height#; + font_normal_space 9u#; + font_quad 18u#; + font_extra_space 9u#; + + + diff --git a/fonts/poorman/tfms/wccsa1.tfm b/fonts/poorman/tfms/wccsa1.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa1.tfm diff --git a/fonts/poorman/tfms/wccsa2.tfm b/fonts/poorman/tfms/wccsa2.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa2.tfm diff --git a/fonts/poorman/tfms/wccsa3.tfm b/fonts/poorman/tfms/wccsa3.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa3.tfm diff --git a/fonts/poorman/tfms/wccsa4.tfm b/fonts/poorman/tfms/wccsa4.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa4.tfm diff --git a/fonts/poorman/tfms/wccsa5.tfm b/fonts/poorman/tfms/wccsa5.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa5.tfm diff --git a/fonts/poorman/tfms/wccsa6.tfm b/fonts/poorman/tfms/wccsa6.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa6.tfm diff --git a/fonts/poorman/tfms/wccsa7.tfm b/fonts/poorman/tfms/wccsa7.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa7.tfm diff --git a/fonts/poorman/tfms/wccsa8.tfm b/fonts/poorman/tfms/wccsa8.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa8.tfm diff --git a/fonts/poorman/tfms/wccsa9.tfm b/fonts/poorman/tfms/wccsa9.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsa9.tfm diff --git a/fonts/poorman/tfms/wccsaa.tfm b/fonts/poorman/tfms/wccsaa.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsaa.tfm diff --git a/fonts/poorman/tfms/wccsab.tfm b/fonts/poorman/tfms/wccsab.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsab.tfm diff --git a/fonts/poorman/tfms/wccsac.tfm b/fonts/poorman/tfms/wccsac.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsac.tfm diff --git a/fonts/poorman/tfms/wccsad.tfm b/fonts/poorman/tfms/wccsad.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsad.tfm diff --git a/fonts/poorman/tfms/wccsae.tfm b/fonts/poorman/tfms/wccsae.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsae.tfm diff --git a/fonts/poorman/tfms/wccsaf.tfm b/fonts/poorman/tfms/wccsaf.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsaf.tfm diff --git a/fonts/poorman/tfms/wccsb0.tfm b/fonts/poorman/tfms/wccsb0.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb0.tfm diff --git a/fonts/poorman/tfms/wccsb1.tfm b/fonts/poorman/tfms/wccsb1.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb1.tfm diff --git a/fonts/poorman/tfms/wccsb2.tfm b/fonts/poorman/tfms/wccsb2.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb2.tfm diff --git a/fonts/poorman/tfms/wccsb3.tfm b/fonts/poorman/tfms/wccsb3.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb3.tfm diff --git a/fonts/poorman/tfms/wccsb4.tfm b/fonts/poorman/tfms/wccsb4.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb4.tfm diff --git a/fonts/poorman/tfms/wccsb5.tfm b/fonts/poorman/tfms/wccsb5.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb5.tfm diff --git a/fonts/poorman/tfms/wccsb6.tfm b/fonts/poorman/tfms/wccsb6.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb6.tfm diff --git a/fonts/poorman/tfms/wccsb7.tfm b/fonts/poorman/tfms/wccsb7.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb7.tfm diff --git a/fonts/poorman/tfms/wccsb8.tfm b/fonts/poorman/tfms/wccsb8.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb8.tfm diff --git a/fonts/poorman/tfms/wccsb9.tfm b/fonts/poorman/tfms/wccsb9.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsb9.tfm diff --git a/fonts/poorman/tfms/wccsba.tfm b/fonts/poorman/tfms/wccsba.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsba.tfm diff --git a/fonts/poorman/tfms/wccsbb.tfm b/fonts/poorman/tfms/wccsbb.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsbb.tfm diff --git a/fonts/poorman/tfms/wccsbc.tfm b/fonts/poorman/tfms/wccsbc.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsbc.tfm diff --git a/fonts/poorman/tfms/wccsbd.tfm b/fonts/poorman/tfms/wccsbd.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsbd.tfm diff --git a/fonts/poorman/tfms/wccsbe.tfm b/fonts/poorman/tfms/wccsbe.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsbe.tfm diff --git a/fonts/poorman/tfms/wccsbf.tfm b/fonts/poorman/tfms/wccsbf.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsbf.tfm diff --git a/fonts/poorman/tfms/wccsc0.tfm b/fonts/poorman/tfms/wccsc0.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc0.tfm diff --git a/fonts/poorman/tfms/wccsc1.tfm b/fonts/poorman/tfms/wccsc1.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc1.tfm diff --git a/fonts/poorman/tfms/wccsc2.tfm b/fonts/poorman/tfms/wccsc2.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc2.tfm diff --git a/fonts/poorman/tfms/wccsc3.tfm b/fonts/poorman/tfms/wccsc3.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc3.tfm diff --git a/fonts/poorman/tfms/wccsc4.tfm b/fonts/poorman/tfms/wccsc4.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc4.tfm diff --git a/fonts/poorman/tfms/wccsc5.tfm b/fonts/poorman/tfms/wccsc5.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc5.tfm diff --git a/fonts/poorman/tfms/wccsc6.tfm b/fonts/poorman/tfms/wccsc6.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc6.tfm diff --git a/fonts/poorman/tfms/wccsc7.tfm b/fonts/poorman/tfms/wccsc7.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc7.tfm diff --git a/fonts/poorman/tfms/wccsc8.tfm b/fonts/poorman/tfms/wccsc8.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc8.tfm diff --git a/fonts/poorman/tfms/wccsc9.tfm b/fonts/poorman/tfms/wccsc9.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsc9.tfm diff --git a/fonts/poorman/tfms/wccsca.tfm b/fonts/poorman/tfms/wccsca.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsca.tfm diff --git a/fonts/poorman/tfms/wccscb.tfm b/fonts/poorman/tfms/wccscb.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccscb.tfm diff --git a/fonts/poorman/tfms/wccscc.tfm b/fonts/poorman/tfms/wccscc.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccscc.tfm diff --git a/fonts/poorman/tfms/wccscd.tfm b/fonts/poorman/tfms/wccscd.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccscd.tfm diff --git a/fonts/poorman/tfms/wccsce.tfm b/fonts/poorman/tfms/wccsce.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsce.tfm diff --git a/fonts/poorman/tfms/wccscf.tfm b/fonts/poorman/tfms/wccscf.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccscf.tfm diff --git a/fonts/poorman/tfms/wccsd0.tfm b/fonts/poorman/tfms/wccsd0.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd0.tfm diff --git a/fonts/poorman/tfms/wccsd1.tfm b/fonts/poorman/tfms/wccsd1.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd1.tfm diff --git a/fonts/poorman/tfms/wccsd2.tfm b/fonts/poorman/tfms/wccsd2.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd2.tfm diff --git a/fonts/poorman/tfms/wccsd3.tfm b/fonts/poorman/tfms/wccsd3.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd3.tfm diff --git a/fonts/poorman/tfms/wccsd4.tfm b/fonts/poorman/tfms/wccsd4.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd4.tfm diff --git a/fonts/poorman/tfms/wccsd5.tfm b/fonts/poorman/tfms/wccsd5.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd5.tfm diff --git a/fonts/poorman/tfms/wccsd6.tfm b/fonts/poorman/tfms/wccsd6.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd6.tfm diff --git a/fonts/poorman/tfms/wccsd7.tfm b/fonts/poorman/tfms/wccsd7.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd7.tfm diff --git a/fonts/poorman/tfms/wccsd8.tfm b/fonts/poorman/tfms/wccsd8.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd8.tfm diff --git a/fonts/poorman/tfms/wccsd9.tfm b/fonts/poorman/tfms/wccsd9.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsd9.tfm diff --git a/fonts/poorman/tfms/wccsda.tfm b/fonts/poorman/tfms/wccsda.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsda.tfm diff --git a/fonts/poorman/tfms/wccsdb.tfm b/fonts/poorman/tfms/wccsdb.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsdb.tfm diff --git a/fonts/poorman/tfms/wccsdc.tfm b/fonts/poorman/tfms/wccsdc.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsdc.tfm diff --git a/fonts/poorman/tfms/wccsdd.tfm b/fonts/poorman/tfms/wccsdd.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsdd.tfm diff --git a/fonts/poorman/tfms/wccsde.tfm b/fonts/poorman/tfms/wccsde.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsde.tfm diff --git a/fonts/poorman/tfms/wccsdf.tfm b/fonts/poorman/tfms/wccsdf.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsdf.tfm diff --git a/fonts/poorman/tfms/wccse0.tfm b/fonts/poorman/tfms/wccse0.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse0.tfm diff --git a/fonts/poorman/tfms/wccse1.tfm b/fonts/poorman/tfms/wccse1.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse1.tfm diff --git a/fonts/poorman/tfms/wccse2.tfm b/fonts/poorman/tfms/wccse2.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse2.tfm diff --git a/fonts/poorman/tfms/wccse3.tfm b/fonts/poorman/tfms/wccse3.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse3.tfm diff --git a/fonts/poorman/tfms/wccse4.tfm b/fonts/poorman/tfms/wccse4.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse4.tfm diff --git a/fonts/poorman/tfms/wccse5.tfm b/fonts/poorman/tfms/wccse5.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse5.tfm diff --git a/fonts/poorman/tfms/wccse6.tfm b/fonts/poorman/tfms/wccse6.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse6.tfm diff --git a/fonts/poorman/tfms/wccse7.tfm b/fonts/poorman/tfms/wccse7.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse7.tfm diff --git a/fonts/poorman/tfms/wccse8.tfm b/fonts/poorman/tfms/wccse8.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse8.tfm diff --git a/fonts/poorman/tfms/wccse9.tfm b/fonts/poorman/tfms/wccse9.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccse9.tfm diff --git a/fonts/poorman/tfms/wccsea.tfm b/fonts/poorman/tfms/wccsea.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsea.tfm diff --git a/fonts/poorman/tfms/wccseb.tfm b/fonts/poorman/tfms/wccseb.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccseb.tfm diff --git a/fonts/poorman/tfms/wccsec.tfm b/fonts/poorman/tfms/wccsec.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsec.tfm diff --git a/fonts/poorman/tfms/wccsed.tfm b/fonts/poorman/tfms/wccsed.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsed.tfm diff --git a/fonts/poorman/tfms/wccsee.tfm b/fonts/poorman/tfms/wccsee.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsee.tfm diff --git a/fonts/poorman/tfms/wccsef.tfm b/fonts/poorman/tfms/wccsef.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsef.tfm diff --git a/fonts/poorman/tfms/wccsf0.tfm b/fonts/poorman/tfms/wccsf0.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf0.tfm diff --git a/fonts/poorman/tfms/wccsf1.tfm b/fonts/poorman/tfms/wccsf1.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf1.tfm diff --git a/fonts/poorman/tfms/wccsf2.tfm b/fonts/poorman/tfms/wccsf2.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf2.tfm diff --git a/fonts/poorman/tfms/wccsf3.tfm b/fonts/poorman/tfms/wccsf3.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf3.tfm diff --git a/fonts/poorman/tfms/wccsf4.tfm b/fonts/poorman/tfms/wccsf4.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf4.tfm diff --git a/fonts/poorman/tfms/wccsf5.tfm b/fonts/poorman/tfms/wccsf5.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf5.tfm diff --git a/fonts/poorman/tfms/wccsf6.tfm b/fonts/poorman/tfms/wccsf6.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf6.tfm diff --git a/fonts/poorman/tfms/wccsf7.tfm b/fonts/poorman/tfms/wccsf7.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf7.tfm diff --git a/fonts/poorman/tfms/wccsf8.tfm b/fonts/poorman/tfms/wccsf8.tfm Binary files differnew file mode 100644 index 0000000000..18eed13658 --- /dev/null +++ b/fonts/poorman/tfms/wccsf8.tfm diff --git a/fonts/poorman/to_sjis.c b/fonts/poorman/to_sjis.c new file mode 100644 index 0000000000..a5b9287f3d --- /dev/null +++ b/fonts/poorman/to_sjis.c @@ -0,0 +1,207 @@ +/* TO_SJIS.C is Copyright 1990 Humanities and Arts Computing Center */ +/* may be used under the terms of HACC software general public license */ +/* see the file license for details */ +/* usage: to_sjis inputfilename outputfilename */ +/* convert escape sequence tagged JIS codes to 8-bit JIS codes */ +/* Kanji-In sequences accepted are <ESC>$@ <ESC>$B or <ESC>K */ +/* Kanji-out sequences accepted are <ESC>(J <ESC>(B or <ESC>H */ +/* suggestions to ridgeway@u.washington.edu */ +#include <stdio.h> +/* make the meaning of byte known to C */ +typedef unsigned char byte; + +/* globally accessible data */ +char output[128], input[128]; /* buffers for file names */ +char *progname; /* the name of this program */ +FILE *outfile,*infile; /* the input and output files */ + +void charout(char thischar) +{ + putc(thischar,outfile); +} + +void copyright() +{ + puts("TO_SJIS 7-bit to 8-bit JIS converter.\n"); + puts("HUMANITIES AND ARTS COMPUTING CENTER, DR-10"); + puts("UNIVERSITY OF WASHINGTON, SEATTLE WA 98195 USA\n"); + puts("Copyright 1990 Humanities and Arts Computing Center\n"); + puts("This software may be used, modified, and redistributed free of any"); + puts("fee or royalty, provided that this copyright and 'free software' notice"); + puts("remains intact in any copies redistributed, and that you may charge no fee"); + puts("of any sort whatsoever without the written permission of the Humanities"); + puts("and Arts Computing Center."); + return; +} + +jumpout(int errcode) +/* immediate exit */ +{ + exit(errcode); +} + +/* see whether a file of that name already exists */ +void exists (FILE *handle, char *filename) + { + unsigned char response; + handle = fopen ( filename , "rb" ) ; + if (handle != NULL) + { fclose(handle); + printf("File %s already exists: O.K. to replace? (Y/N): ", filename); + response = getchar(); + if ( ! ( (response=='y') || (response=='Y') ) ) + { + printf("\nPlease rename files as necessary and try again.\n"); + jumpout(3); + } + } + return; + } + +/* open a file with some access */ +FILE *getopen(char *filename, char *access) +{ + int temp; + FILE *handle; + gets(filename); + if (access[0]=='w' || access[0]=='W') exists(handle,filename); + handle=fopen(filename,access); + if (handle == NULL) { + puts("\nCan't open file "); + puts(filename); + puts("\n"); + } + return handle; +} + +/* prompt for and open a file */ +FILE *get_file(char *access,char *prompt,char *filename) +{ + printf("\n %s",prompt); + return getopen(filename,access); +} + +/* quick open of the inputfile */ +openinfile () +{ + infile = fopen ( input , "rb" ) ; + if (infile == NULL) + { printf("%s: Unable to open %s; exiting on error.\n",progname,input); + jumpout(4); + } +} + +/* quick open of the output file */ +openoutfile () +{ + exists(outfile,output); + outfile = fopen ( output , "wb" ) ; + if (outfile == NULL) + { printf("%s: Unable to open %s; exiting on error.\n",progname, output); + jumpout(5); + } +} + + +/* get a memory block and test that it was obtained */ +void *getmemblk(unsigned int blocksize) +{ + void *thisblock; + thisblock=(void *) malloc(blocksize); + if (thisblock==NULL) { + printf("\n%s: !Failure while attempting to allocate %ud bytes of memory.",progname,blocksize); + printf("\n . . . aborting . . .\n"); + exit(1); + } + return thisblock; +} + +void stringout(char *thisstring) +{ + fputs(thisstring,outfile); +} + +void intout(int thisone) +{ + fprintf(outfile,"%d",thisone); +} + +void uintout(unsigned int thisone) +{ + fprintf(outfile,"%ud",thisone); +} + +void newlineout() +{ + stringout("\n"); +} + +main(int argc, char *argv[]) +{ + int ch,err,jflag; + jflag=0; + copyright(); + progname = "TO_SJIS"; + if (argc > 1) { + strcpy ( input , argv [ 1 ] ) ; + openinfile(); + } + else { + infile=get_file("r","Enter input filename: ",input); + } + if (argc > 2) { + strcpy ( output , argv [ 2 ] ) ; + openoutfile(); + } + else { + outfile=get_file("w","Enter output filename: ",output); + } + while ((ch = getc(infile)) != EOF) { + if (ch == 27) { + ch = getc(infile); + if (jflag) { + if (ch == '(') { + ch = getc(infile); + if (ch == 'J' || ch == 'B') jflag=0; + else { + putc(27,outfile); + putc('(',outfile); + putc(ch,outfile); + } + } + else { + if (ch == 'H') jflag=0; + else { + putc(27,outfile); + putc(ch,outfile); + } + } + } + else { + if (ch == '$') { + ch = getc(infile); + if (ch == '@' || ch == 'B') jflag=1; + else { + putc(27,outfile); + putc('$',outfile); + putc(ch,outfile); + } + } + else { + if (ch == 'K') jflag=1; + else { + putc(27,outfile); + putc(ch,outfile); + } + } + } + } + else { + if (jflag) putc(ch+128,outfile); + else putc(ch,outfile); + } + } + printf("\n\nTO_SJIS complete.\n"); + fclose(infile); + fclose(outfile); +} |