diff options
Diffstat (limited to 'Build/source/texk')
101 files changed, 0 insertions, 42876 deletions
diff --git a/Build/source/texk/ttf2pt1/CHANGES.html b/Build/source/texk/ttf2pt1/CHANGES.html deleted file mode 100644 index c2917386b20..00000000000 --- a/Build/source/texk/ttf2pt1/CHANGES.html +++ /dev/null @@ -1,717 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -TTF2PT1 - CHANGES history -</TITLE> -</HEAD> -<BODY> -<H2> -TTF2PT1 - CHANGES history -</H2> - -<! -(Do not edit this file, it is generated from CHANGES.html!!!) -> - -<H4> -3.4.0 -- November 24, 2001 -</H4> -<! -------- -> - -<b>New features:</b> -<ul> -<li> Parser for the BDF bitmap fonts. -<li> Vastly improved the smoothing of the outlines. -<li> The options are saved as a comment in the output file. -<li> New script <tt>other/showdf</tt> for visual comparison of the fonts. -<li> New option <b>-G</b> to select the file types to generate. -<li> Creation of the dvips encoding files (by Rigel). -<li> More glyphs in the Chinese maps (by Rigel). -<li> Made the assignment of ISO8859/1 glyph names to the glyphs in the - fonts without PostScript names in them dependent on the original - encoding: no change for the 8-bit encodings, for the Unicode encoding - the names are assigned to the glyph with the codes 0-255 in Unicode, - and for the other 16-bit encodings the 8859/1 names are not assigned - at all. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> Added a check for spaces in the PostScript font name in the FreeType - parser. -<li> Made "-" a valid character in the glyph names. -<li> Fixed handling of the Unicode names returned by FreeType, though - not perfectly. -<li> Changed the build for FreeType-2.0.4. -<li> Fixed the handling and printing of bad glyph names. -<li> Fixed the bug with duplicated glyph names when more than 256 glyphs are - extracted from a font that has no PostScript glyph names defined. -<li> Added ability to map a glyph to more than one code when unisng the - native parser (-pttf). -</ul> - -<H4> -3.3.5 -- September 12, 2001 -</H4> -<! -------- -> - -Packaged by Sergey Babkin. -<p> - -<b>Bug fixes:</b> -<ul> -<li> Fixed the scaling of Ascender and Descender in the AFM file. -<li> Fixed the brekage of "-l adobestd". -</ul> - -<H4> -3.3.4 -- June 4, 2001 -</H4> -<! -------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Cyrillic (full set of glyphs) language tables (by Zvezdan Petkovic). - Now the languages "russian" and "bulgarian" are provided for compatibility - only, use the common language "cyrillic" instead. -<li> More information in <a href="FONTS.html">FONTS</a> on using Cyrillic fonts with - Netscape (by Zvezdan Petkovic) -<li> In the Netscape print filter added removal of the clipping path command: - otherwise Netscape tends to cut off a large piece of the rightmost column - of the tables. -<li> One more script for printing from Netscape (by Zvezdan Petkovic). -<li> Added selection of the base TTF encoding by pid/eid in the external maps. -<li> Improved the recognition of substituted stems for intersecting contours. -<li> Improved the substituted hints to make the horizontal positioning of - the points at the same height more uniform at small pixel sizes. -<li> Made the algorithm for calculation of standard stem widths more - selective. -<li> Added link to the GnuWin32 project. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> TH: Print out metrics of un-encoded glyphs even without "-a" option. -<li> Added missing "/" in Fontmap generation in convert (by Zvezdan Petkovic). -<li> Removed unneccessary "\n" in messages in x2gs. -<li> Removed the broken overoptimisation of "0 0 rmoveto". -<li> Removed the useless warnings about multiple codes for a glyph. -<li> Changed the FreeType2 include directory in the Makefile to match the - FreeType's default. -</ul> - -<H4> -3.3.3 -- March 4, 2001 -</H4> -<! -------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> TH: Added printing of front-end parser in the header of the font file. -<li> Tested build with FreeType 2.0 Release. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> Changed the installation script which on some versions of bash - copied all files into the share directory. -<li> Fixed the close sequences of html2man comments in the HTML files, - now they should display correctly with <tt>lynx</tt>. -<li> Restored the ability to include un-encoded characters into the - customised maps (those with codes over 255). -<li> Fixed the Unicode mapping of the Cyrillic letters "YO" and "yo" - (by Yuri Shemanin). -<li> Fixed the spurious aborts when the conversion-by-plane function - gets called for auto-guessing of encoding. -</ul> - -<H4> -3.3.2 -- November 20, 2000 -</H4> -<! --------------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Added generation of man pages. -<li> Added "make install" and "make uninstall". -<li> Added language option "-l plane". -<li> In <tt>other/showg</tt> added better support of comparison files: -<ul> - <li> printing of the comparison file legend; - <li> guessing of missing glyph names in a comparison file by code; - <li> bounding boxes of all comparison files are used for page layout. -</ul> -<li> Added ability to use external t1asm instead of compiling it in. -<li> Renamed the fonts installation guide from INSTALL*html to FONTS*html - to avoid confusion with installation of ttf2pt1 itself. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> Removed erroneous extra fclose(pfa_file). -<li> Fixed random memory corruption that manifested with crash on Linux - when converting fonts not containing glyph names. -<li> Removed from the output file the comments that confused dvips. Changed - <tt>other/showg</tt> to work without them. -<li> In <tt>other/showg</tt> added better checks for missing glyphs, now it - gives warnings about them and the output file does not crash PostScript. -</ul> - -<b>Other:</b> -<ul> -<li> <tt>ttf2pfa</tt> is no longer included, people interested in history - should look for it in the older versions. -</ul> - -<H4> -3.3.1 -- October 22, 2000 -</H4> -<! -------------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Added front-end parser based on the FreeType-2 library. See Makefile -for build instructions. -<li> Changed the handling of encodings to accomodate the FreeType model. -<li> Further cleaned up the front-end parser interface. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> Fixed a bug that caused core dump on Alpha machines. -<li> Fixed a bug in the outline smoothing that occasionally caused core dump. -<li> Cleaned up warnings from picky compilers -<li> Fixed more bugs in the Windows port (by Stefan Bauer). -<li> Fixed the RPM spec file (suggested by Brian Armstrong). -</ul> -<p> - -<H4> -3.3.0 -- September 22, 2000 -</H4> -<! ---------------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Converted most of the outlines' processing to floating point -arithmetic. -<li> Added splitting of curves crossing the quadrant boundaries (no gross -damage is done any more to the Marvosym font and others like it). -<li> Added modular interface for front-end font parsers and option to control -their selection at run time. -<li> Grouped the outline processing control options into one to reduce the -options namespace pollution. -<li> Thomas moved the Chinese maps into a separate module, chinese-maps. -<li> Thomas added option -V to print version number. In addition, the version -number is put in the header of the font file. -<li> Added long option names (suggested by Thomas). -<li> Added support for multi-level composite glyphs. -<li> TH: Made <fontname> command-line argument optional; default to <ttf-file> -with suffix replaced. -<li> In <tt>other/showg</tt> added more ways to specify glyphs and the comparison option. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> Fixed the VC++ batch file, added batch file for Cygnus GCC on Windows. -<li> Removed parentheses from the Version string in AFM files because it does -not help StarOffice anyway. StarOffice 5.2 has been reported to have this -bug fixed. Added paragraph on StarOffice in FONTS.html. -<li> Made messages on the '?' option parameter more meaningful (by Johan Vromans). -<li> Changed the latin1 encoding table to include the Euro sign, Z and z with -caron (by Thomas Henlich). -<li> Improved the smoothing code which occasionally had problems with -joining curves. Also fixed a few minor bugs in it. -</ul> - -<H4> -3.22 -- May 23, 2000 -</H4> -<! --------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Included windows support by Frank Siegert (somewhat amended) -<li> Added control over verbosity of warnings. -<li> Added arguments and initialization functions to the language -translation routines. -<li> Added support of planes determined by arguments to the external -maps. -<li> Added compact external maps format (primarily for Eastern fonts). -<li> Added external maps for Chinese GBK and Big5 encodings (converted -from ttf2pfb) as well as maps for other Chinese encodings by Wang Lei. -<li> Added the idea of buckets to speed up the search in external maps. -<li> Changed the grouping algorithm for substituted hints: now it creates -a bit bigger files but requires smaller hint stack when being rendered. -<li> Added maximal limit of hint stack depth, glyphs requiring bigger -stack get generation of substituted hints disabled. This makes substituted -hints safe to use, no more lost glyphs due to hint stack overflow. -<li> Added the font dump program <tt>other/dumpf</tt>. -<li> Changed the testing HTML generator <tt>other/lst.pl</tt> to use tables. -<li> Added debugging script <tt>other/cntstems.pl</tt> to count required hint -stack depth for the glyphs. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> Fixed printing of UID in script/trans. Changed the auto-generated UID to -be in range 4000000-4999999 which is reserved by Adobe for private use. -<li> Fixed handling of "cleartomark" in built-in t1asm. -<li> Added handling of "can't happen" case in straighten() routine -which actually happened on strange fonts and caused failure on assertion. -<li> Made it always include the glyph .notdef in the resulting font. -<li> Placed the version string in AFM file in parentheses, hopefully -that would fix the problem with StarOffice. -<li> Improved the smoothing code which occasionally had problems with -joining curves. -</ul> - -<H4> -3.21 -- March 1, 2000 -</H4> -<! ---------------------- -> - -Sergey Babkin: committed the changes by Petr Titera and -my bugfixes. -<p> - -<b>New features:</b> -<ul> -<li> New Unicode map format with glyph names, by Petr Titera. -<li> Option to force the Unicode encoding by Petr Titera - (I changed it to work on any MS encoding, not only Symbol). -<li> Slightly tweaked the calculation of hints, should be better now. -</ul> - -<b>Bug fixes:</b> -<ul> -<li> The unicode-sample.map with description of the map formats - was lost in the release process, restored and enhanced. -<li> Renamed the table ISOLatin1Encoding to Fmt3Encoding to reflect - the way it is used. Saved the original one for reference - purposes. In the new table renamed "quoteright" to "quotesingle" - as Thomas Henlich suggested (and he were right). -<li> In the ISOLatinEncoding table renamed the glyph "grave" - at octal 0140 to "quoteleft", "quotesingle" at octal 047 to - "quoteright" to conform to the standard as suggested by - Martin Trautner). -<li> Fixed bug in scripts/trans that corrupted the UniqueID record - in the translated fonts. -<li> Fixed bug in interaction of substituted hints with BlueZones. - Now the fonts with hint substitution seem to be always at least - not worse than without it (well, when they fit in the X11 - file size limit). -</ul> - - -<H4> -3.2 -- January 15, 2000 -</H4> -<! ------------------------ -> - -Sergey Babkin: combined my changes with the changes by -Thomas Henlich. The result deserves a not-so-minor version -increase. -<p> - -<b>New features:</b> -<ul> -<li> Support of the external Unicode re-encoding maps - (by Thomas). -<li> Support for inclusion of all the glyphs from the - source file into the resulting file (inspired by - Thomas but I re-implemented it to remove the limitation - of his implementation: not more than 1024 glyphs). -<li> The hints substitution. It's an experimental feature - yet and needs further work. -<li> Support for UniqueID and its auto-generation. -<li> Support for the name-based conversions from Unicode - in general and the adobestd "language" in particular. -<li> Started the split of the source code into multiple - files. This needs more work to do it in a cleaner - way. -<li> Better framework for the debugging printout - in the converter. -<li> Utilities to install the fonts in Netscape - Navigator/Communicator 4.x. -<li> Patches for bigger font files in the X11 rasterizer. -<li> Linux RPM spec-file (by Johan Vromans). -<li> Added the COPYRIGHT file (BSD-style, as we discussed - on the mailing list earlier) and the CHANGES file. -<li> Creation of the <tt>.pfb</tt> files from the <tt>convert</tt> - script. -<li> Changed the <tt>.notdef</tt>-s in the built-in - ISOLatin1Encoding table to some valid names (by Thomas). - Thomas also suggested replacing `<tt>quoteright</tt>' by - `<tt>quotesingle</tt>' but this seems to be against the - Adobe ISOLatin1 table. -<li> New aliases <tt>windows-1251</tt> and <tt>cp-866</tt> for - the Russian encodings: those are expected by Netscape - navigator. -<li> The font comparison program <tt>other/cmpf</tt>. -<li> The "magnifying glass" program for glyph outlines: - <tt>other/showg</tt>. -<li> Other updates of the tools in the `<tt>other</tt>' subdirectory. -<li> Added a link to T1LIB in README. -<li> A few new options in <tt>convert.cfg</tt>. -</ul> - -<b>Bux fixes:</b> -<ul> -<li> A bug in the outline smoothing code that corrupted some - of the fonts (for example, Microsoft Verdana). -<li> Added explicit `<tt>cleartomark</tt>' to the end of file, - this seems to be compatible with both old and new version - of <tt>t1asm</tt> (suggested by Thomas). -<li> Added the <tt>FontEncoding</tt> statement to the AFM files - (techincally this was not a bug because this statement - is optional but some programs want it). -<li> A coredump when the converter tried to print a warning - (rather ironically) about a weird glyph width. -<li> Changed the underscores in the font names to dashes (this - has been proposed long time ago by Johan Vromans). -<li> No more glyph names of font names staring with a digit. -<li> The names of the fonts in font and AFM files are now the - same as in the generated Ghostscript <tt>Fontmap</tt> file.<br> - <b>Warning:</b> the names in <tt>Fontmap</tt> have been - changed. -<li> The <tt>forceiso</tt> script does not corrupt the character - and kerning pairs counts any more, and is optional at all. -<li> Fix for a loop going to 254 instead of 255 (by Thomas). -<li> Added ':' in the font header (by Thomas). -<li> A coredump when wrong language name is given (this was - also fixed by Thomas but I noticed it too late, after - I already fixed it by myself). -<li> Fixed the links to the Adobe documents in README. -</ul> - - -<H4> -3.13 -- October 18, 1999 -</H4> -<! ------------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> New option -v for automatic re-scaling based on the vertical size of the font -<li> Changed the code to use getopt() instead of a home-made version of it. -<li> Latin2 language support by Szalay Tamas. -</ul> - -<b>Bux fixes:</b> -<ul> -<li> Fix for the bug that made possible calls of malloc(0). -<li> Refinement of the option -w to prevent extra wide spacing -</ul> - -<H4> -3.12 -- October 2, 1999 -</H4> -<! ------------------------ -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Added support for the Bulgarian language (actually, for now just an alias -of Russian). -<li> Added option -w that tries to make sure that the character widths are not -too narrow. -<li> Added the concept of aliased encodings. -<li> Now the conversion scripts create and install the .afm files too. -<li> The conversion script removes the intermediate files after installation. -<li> Added tunables to the conversion script. -<li> Installation of the Ghostscript fonts can now be done automatically -together with the X11 fonts. -</ul> - -<b>Bux fixes:</b> -<ul> -<li> (FINALLY!!!) A correct fix for the infamous Red Hat 6.0 stdio "feature". -<li> A number of little bugs discovered by a picky SGI compiler (well, maybe -some day I'll try to run it through the UnixWare lint and see what happens). -<li> A diagnostic message about the empty encodings in the convert script was -made less cryptic and a bug in the awk sub-script was fixed. -<li> The .afm creation code now considers the option -t. -</ul> - -<H4> -3.11 -- May 24, 1999 -</H4> -<! --------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> It includes the Turkish (Latin5, ISO8859/9) -language support by Turgut Uyar and Baltic (ISO8859/4) languages support by -Rihardas Hepas. -<li> Also the installation script got updated: the configuration parameters -are moved to a separate file and the generated fonts.dir files should now be -compatible with Xfsft. -</ul> - -<H4> -3.1 -- March 28, 1999 -</H4> -<! ---------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Improved the interaction of the character-level hints and font-level hints -</ul> - - -<H4> -3.0 -- March 6, 1999 -</H4> -<! --------------------- -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Added HTML documents. -</ul> - -<H4> -3.0beta2 -- February 14, 1999 -</H4> -<! ------------------------------ -> - -Packaged by Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Added ability to print the .afm file instead of the font to STDOUT. -<li> Added the guessing of the /ForceBold parameter that proved to be useful. -</ul> - -<b>Bux fixes:</b> -<ul> -<li> Removed the force-fixed option that proved to be troublesome. -</ul> - -<H4> -3.0beta1 -- December 11, 1998 -</H4> -<! ------------------------------ -> - -By Andrew Weeks. -<p> - -<b>New features:</b> -<ul> -<li> Added option (passed to t1asm) to create a compressed binary -version of the font (A PFB file). -</ul> - -<b>Bux fixes:</b> -<ul> -<li> Versions of handle_post and handle_cmap that deal with some -problems with buggy fonts. -<li> Minor Bug Fixes. -</ul> - -<H4> -3.0beta-afm -- December 5, 1998 -</H4> -<! -------------------------------- -> - -By Thomas Henlich. -<p> - -<b>New features:</b> -<ul> -<li> Integration of AFM file creation. -</ul> - -<H4> -3.0beta -- November 15, 1998 -</H4> -<! ----------------------------- -> - -By Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Added the auto-calculation of the italic angle. -</ul> - -<b>Bux fixes:</b> -<ul> -<li> Fixed a couple of bugs. -</ul> - -<H4> -3.0alpha -- October 19, 1998 -</H4> -<! ----------------------------- -> - -By Sergey Babkin. -<p> - -<b>New features:</b> -<ul> -<li> Improved (although still not perfect) handling of -scaling in composite glyphs -<li> Automatic correction of outlines to make them more -smooth (to correct both rounding errors introduced -during conversion and present in the original font) -<li> Automatic generation of hints (still has lots of -space for improvement) -<li> Automatic generation of BlueValues etc. -</ul> - -<b>Bux fixes:</b> -<ul> -<li> Scaling of fonts to 1000x1000 M-square required by -Type1 standard -<li> Printing out the contours in reverse direction, because -TTF directions are different from Type1 ones (that was -the major reason why the fonts generated by -version 2.2 were rendered so badly in small sizes) -</ul> - -<H4> -June 22, 1998 (AKA 2.2) -</H4> -<! -------------- -> - -By Thomas Henlich. -<p> - -<b>Bux fixes:</b> -<ul> -<li> "width" should be "short int" because otherwise: -characters with negative widths (e.g. -4) become *very* wide (65532) -<li> The number of /CharStrings is numglyphs and not numglyphs+1 -</ul> - -<H4> -February 13, 1998 -</H4> -<! ------------------ -> - -By Mark Heath. -<p> - -<b>Bux fixes:</b> -<ul> -<li> An original Bug Reported by Frank, which was just incorrect syntax in the -Type 1 header, managed to creep back into the Feb 04 Version. This has been -Fixed in the Feb 13 Version. -</ul> - -<H4> -February 4, 1998 -</H4> -<! ----------------- -> - -By Mark Heath. -<p> - -<b>Bux fixes:</b> -<ul> -<li> A workaround was implemented in ttf2pfa by altering the matrix. I suspect -I will have to calculate the correct values, as matrix ops are probably not -allowed in Type 1 format. -</ul> - -<! ---------------------------------------------- -> -<H4> -The older history seems to be lost. -</H4> - -<I> -(S.B.: The story how we got the version numbers is rather funny. Initially -there were no version umbers, the releases were marked by dates. The version -from June 22 1998 untarred itself into a directory "<tt>ttf2pt1-22</tt>". When I -made my changes to it I assumed that this was the version number meaning -version 2.2. Since Mark asked me to send him a complete archive I supposed -that I have to bump the version number. And I bumped it to 3.0 because the -changes were rather extensive. Mark silently agreed and released the new -version as 3.0. And that's the end of the story about how we got this -Microsoft-like high version number.) -</I> - -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/COPYRIGHT b/Build/source/texk/ttf2pt1/COPYRIGHT deleted file mode 100644 index b2fac6c6c6e..00000000000 --- a/Build/source/texk/ttf2pt1/COPYRIGHT +++ /dev/null @@ -1,87 +0,0 @@ -The following copyright notice applies to all the files provided -in this distribution unless explicitly noted otherwise -(the most notable exception being t1asm.c). - - Copyright (c) 1997-2001 by the AUTHORS: - Andrew Weeks <ccsaw@bath.ac.uk> - Frank M. Siegert <fms@this.net> - Mark Heath <mheath@netspace.net.au> - Thomas Henlich <thenlich@rcs.urz.tu-dresden.de> - Sergey Babkin <babkin@users.sourceforge.net>, <sab123@hotmail.com> - Turgut Uyar <uyar@cs.itu.edu.tr> - Rihardas Hepas <rch@WriteMe.Com> - Szalay Tamas <tomek@elender.hu> - Johan Vromans <jvromans@squirrel.nl> - Petr Titera <P.Titera@sh.cvut.cz> - Lei Wang <lwang@amath8.amt.ac.cn> - Chen Xiangyang <chenxy@sun.ihep.ac.cn> - Zvezdan Petkovic <z.petkovic@computer.org> - Rigel <rigel863@yahoo.com> - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - 3. All advertising materials mentioning features or use of this software - must display the following acknowledgement: - This product includes software developed by the TTF2PT1 Project - and its contributors. - - THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE - FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - SUCH DAMAGE. - -For the approximate list of the AUTHORS' responsibilities see the -project history. - -Other contributions to the project are: - -Turgut Uyar <uyar@cs.itu.edu.tr> - The Unicode translation table for the Turkish language. - -Rihardas Hepas <rch@WriteMe.Com> - The Unicode translation table for the Baltic languages. - -Szalay Tamas <tomek@elender.hu> - The Unicode translation table for the Central European languages. - -Johan Vromans <jvromans@squirrel.nl> - The RPM file. - -Petr Titera <P.Titera@sh.cvut.cz> - The Unicode map format with names, the forced Unicode option. - -Frank M. Siegert <frank@this.net> - Port to Windows - -Lei Wang <lwang@amath8.amt.ac.cn> -Chen Xiangyang <chenxy@sun.ihep.ac.cn> - Translation maps for Chinese fonts. - -Zvezdan Petkovic <z.petkovic@computer.org> - The Unicode translation tables for the Cyrillic alphabet. - -Rigel <rigel863@yahoo.com> - Generation of the dvips encoding files, modification to the Chinese maps. - -I. Lee Hetherington <ilh@lcs.mit.edu> - The Type1 assembler (from the package 't1utils'), its full copyright - notice: - Copyright (c) 1992 by I. Lee Hetherington, all rights reserved. - Permission is hereby granted to use, modify, and distribute this program - for any purpose provided this copyright notice and the one below remain - intact. - diff --git a/Build/source/texk/ttf2pt1/FONTS.hpux.html b/Build/source/texk/ttf2pt1/FONTS.hpux.html deleted file mode 100644 index 80889cae2b8..00000000000 --- a/Build/source/texk/ttf2pt1/FONTS.hpux.html +++ /dev/null @@ -1,197 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -How to install new Type1 fonts on an HP-UX 10.20 machine -</TITLE> -</HEAD> -<BODY> -Sergey A. Babkin -<br> -<A HREF="mailto:babkin@bellatlantic.net"> -<babkin@bellatlantic.net></A> or <A HREF="mailto:sab123@hotmail.com"><sab123@hotmail.com></A> -<p> -<! -(Do not edit this file, it is generated from FONTS.hpux.html!!!) -> - -<H3> -How to install new Type1 fonts on an HP-UX 10.20 machine -</H3> -<! --------------------------------------------------------- -> - -1. Add the font files to <tt>/usr/lib/X11/fonts/type1.st/typefaces</tt>. -<p> - -2. Add the font descriptions to -<tt>/usr/lib/X11/fonts/type1.st/typefaces/fonts.scale</tt>. Run `mkfontdir' -in <tt>/usr/lib/X11/fonts/type1.st/typefaces</tt>. In the descriptions -you have to specify the font manufacturer as `misc', like: -<p> - -<tt> - -misc-courier-... -</tt> -<p> - -3. Copy <tt>/usr/lib/X11/fonts/type1.st/typefaces/fonts.dir</tt> to -<tt>/usr/lib/X11/fonts/type1.st/licenses/STSYSTEM/DISPLAYS/fonts.dir</tt>. -Better yet, create a symbolic link. -<p> - -4. For each font encoding you are going to use create a description -file in <tt>/usr/lib/X11/fonts/stadmin/type1/charsets</tt>. Of course, if you -are going to use the same fonts in several encodings, the best way -would be to create fair descriptions of charsets and really store -only one encoding in typefaces, all the others will be produced -automatically. That's not difficult at all. -But the simplest way is to just copy the file <tt>cp.iso8859-1</tt> -to <tt>cp.<i><your-encoding-name></i></tt>, like <tt>cp.koi8-r</tt>. -<p> - -5. Restart you X server and/or font server. -<p> - -<H4> -What if you don't have the `root' privileges ? -</H4> -<! ----------------------------------------------- -> - -You still can run the font server and configure your X server -to get the fonts from it. -<p> - -Further let's suppose that the name on which you are going -to run the font server is named `somehost'. Login to it -and configure the font server. -<p> - -First, choose some unused port. Numbers around 9000 are a good -choice. Verify that this port is not used by somebody else -by entering -<p> - -<blockquote><tt> - netstat -naf inet |grep 9000 -</tt></blockquote> - -and look what happens. If you get nothing, that's good, this -port is unused. If you get some lines of data, try abother port. -<p> - -Go to you home directory <tt>$HOME</tt> and create some directory for -your font server, say, <tt>$HOME/fs</tt>. Copy the directory structure -of <tt>/usr/lib/X11/fonts/type1.st</tt> into <tt>$HOME/fs</tt>, so that in result -you get <tt>$HOME/fs/type1.st/<i><whatever was there></i></tt>. Copy the directory -structure of <tt>/usr/lib/X11/fonts/stadmin/type1/charsets</tt> into <tt>$HOME/fs</tt>, -so that in result you get <tt>$HOME/fs/charsets/<i><whatever was there></i></tt>. -Install the new fonts in these directorues as described above. -<p> - -Then create the fontserver configuration file, say, <tt>$HOME/fs/xfs.cfg</tt>. -The sample contents (supposing that my <tt>$HOME</tt> is equal to <tt>/home/babkin</tt>) -is: -<p> - -<! ---------------8<----------- cut here ----------------------------- -> -<hr> -<tt> -# font server configuration file -<br> -# $XConsortium: config.cpp,v 1.7 91/08/22 11:39:59 rws Exp $ -<br> - -<br> -rasterizers = /usr/lib/X11/fs/ufstrast.sl,/usr/lib/X11/fs/iforast.sl -<br> - -<br> -clone-self = off -<br> -use-syslog = off -<br> -catalogue = /home/babkin/fs/type1.st -<br> -# in decipoints -<br> -default-point-size = 120 -<br> -default-resolutions = 100,100,75,75 -<br> -port=9000 -<br> -error-file=/home/babkin/fs/fs.err -</tt> -<hr> -<! ---------------8<----------- cut here ----------------------------- -> -<p> - -Then create the script to start your font server, say, <tt>$HOME/fs/runme</tt>: -<p> - -<! ---------------8<----------- cut here ----------------------------- -> -<hr> -<tt> -TYPE1_CODEPAGE_DIR=$HOME/fs/charsets -<br> -export TYPE1_CODEPAGE_DIR -<br> -kill `ps -ef | grep $HOME/\[f\]s/xfs.cfg | awk '{print $2}'`; -<br> -nohup xfs -config $HOME/fs/xfs.cfg & -</tt> -<hr> -<! ---------------8<----------- cut here ----------------------------- -> -<p> - -Don't forget to make <tt>$HOME/fs/runme</tt> executable. Then you can -execute it manually or from you .profile. -<p> - -After you get your font server running, just execute the following -command (with proper host name and port number) in your X session -<p> - -<blockquote><tt> - xset fp+ tcp/somehost:9000 -</tt></blockquote> - -to get the access to your private font server. You can add this -information to the configuration data of your X server or just -put it also into your .profile. In the latter case the best way -to do that would be like: -<p> - -<! ---------------8<----------- cut here ----------------------------- -> -<hr> -<tt> -... -<br> -$HOME/fs/runme -<br> -sleep 2 # give it some time to start -<br> -xset fp+ tcp/somehost:9000 -<br> -... -</tt> -<hr> -<! ---------------8<----------- cut here ----------------------------- -> -<p> -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/FONTS.html b/Build/source/texk/ttf2pt1/FONTS.html deleted file mode 100644 index 352bd06935d..00000000000 --- a/Build/source/texk/ttf2pt1/FONTS.html +++ /dev/null @@ -1,708 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -The ttf2pt1 font installation guide -</TITLE> -</HEAD> -<BODY> -Sergey A. Babkin -<br> -<A HREF="mailto:babkin@users.sourceforge.net"> -<babkin@bellatlantic.net></A> or <A HREF="mailto:sab123@hotmail.com"><sab123@hotmail.com></A> -<p> -<! -(Do not edit this file, it is generated from FONTS.html!!!) -> - -<!-- =defdoc cv ttf2pt1_convert 1 --> -<!-- =defdoc gs ttf2pt1_x2gs 1 --> -<H2> -THE FONT INSTALLATION GUIDE -<br> -for the TTF to Type1 converter and fonts generated by it -</H2> -<! -======================================================== -> - -There is historically a number of problems with the support of the 8-bit -character encodings. This installation guide pays a lot of attention -to the 8-bit issues, because these issues are responsible for the -most of troubles during the installation of fonts. But they are -not the only things covered in this guide, so it's worth reading -even if all you need is plain ASCII. For convenience of reading -I have marked the paragraphs dealing solely with 8-bit problems -with characters <FONT COLOR="#3333FF"><FONT SIZE=-1>*8*</FONT></FONT>. -<p> - -To simplify this installation the distribution package of the -converter contains a number of scripts written in shell and -Perl. So, to run them you will need a shell interpreter (Bourne-shell, -POSIX-shell, Korn-shell are OK, ba-shell is probably also OK but not -tested yet). The Perl scripts were tested with Perl5 but probably -should work with Perl4 too. All the scripts are located in the -`scripts' subdirectory. -<p> - -This guide considers the following issues of installation of the -fonts: -<p> - -<b> -<ul> -<li> <A HREF="#X11">X11</A><br> -<li> <A HREF="#gs">Ghostscript</A><br> -<li> <A HREF="#win">MS Windows</A><br> -<li> <A HREF="#netscape">Netscape Navigator/Communicator</A><br> -<li> <A HREF="#rpm">Linux RPM package</A><br> -<li> <A HREF="#framemaker">FrameMaker</A><br> -<li> <A HREF="#soffice">StarOffice</A><br> -</ul> -</b><p> - -<A NAME="X11"></A> -<H3> -X11 -</H3> -<! -=== -> - -<!-- =section cv NAME --> -<!-- =text B<ttf2pt1_convert> - convenience font conversion script --> -<!-- =stop --> -To simplify the conversion a set of scripts is provided with <b>ttf2pt1</b>. -They are collected in the `<TT>scripts</TT>' subdirectory. -<p> - -<!-- =section cv DESCRIPTION --> -`<b>Convert</b>' is the master conversion script provided with ttf2pt1. -When installed into a public directory it's named `<b>ttf2pt1_convert</b>' -to avoid name collisions with the other programs. -<p> -<!-- =stop --> - -It's called as: -<p> - -<!-- =section cv SYNOPSIS --> -<!-- =text ttf2pt1_convert B<[config-file]> --> -<!-- =stop --> -<blockquote> - convert <i>[config-file]</i> -</blockquote> - -<!-- =section cv DESCRIPTION --> -If the configuration file is not specified as an argument then the file -`<TT>convert.cfg</TT>' in the current directory is used. This file contains -a set of configuration variables. The distribution contains a sample file -file `<TT>convert.cfg.sample</TT>'. Please copy it to `<TT>convert.cfg</TT>', -look inside it and change the configuration variables. The more stable -configuration variables, such as the path names of the scripts and -encoding files are located in `<TT>convert</TT>' itself, they are -automatically updated when installing <b>ttf2pt1</b>. -<p> - -Put all the TTF fonts you want to convert into some directory (this -may be just the directory that already contains all the Windows -fonts on a mounted FAT filesystem). If you have fonts in different -source encoding then put the fonts in each of the encodings -into a separate directory. Up to 10 source directories are -supported. If you (in a rather unlikely case) have more source -directories then you can make two separate runs of the converter, -converting up to 10 directories at a time. -<p> - -The variables in the configuration file are: -<p> - -<!-- ==over 2 --> -<!-- ==item * --> -<B><tt>SRCDIRS</tt></B> - the list of directories (with absolute paths) with - TTF fonts. Each line contains at least 3 fields: the name of the directory, - the language of the fonts in it (if you have fonts for different - languages you have to put them into the separate directories) and the - encoding of the fonts. Again, if you have some of the TTF typefaces in - one encoding, and some in another (say, CP-1251 and KOI-8), you have - to put them into the separate source directories. Some lines may contain - 4 fields. Then the fourth field is the name of the external map to - convert the Unicode fonts into the desirable encoding. This map is - used instead of the built-in map for the specified language. -<p> - -<FONT COLOR="#3333FF"><FONT SIZE=-1>*8*</FONT></FONT> -An interesting thing is that some languages have more than one -widely used character encodings. For example, the widely used -encodings for Russian are IBM CP-866 (MS-DOS and Unix), KOI-8 -(Unix and VAX, also the standard Internet encoding), IBM CP-1251 (MS Windows). -That's why I have provided the means to generate the converted fonts -in more than one encoding. See the file <A HREF="encodings/README.html">encodings/README</A> for -details about the encoding tables. Actually, if you plan to use -these fonts with Netscape Navigator better use the aliases -cp-866 instead of ibm-866 and windows-1251 instead of ibm-1251 -because that's what Netscape wants. -<p> - -<!-- ==item * --> -<b><tt>DSTDIR</tt></b> - directory for the resulting Type1 fonts. Be careful! - This directory gets completely wiped out before conversion, - so don't use any already existing directory for this purpose. -<p> - -<!-- ==item * --> -<b><tt>DSTENC<i>{language}</i></tt></b> - the list of encodings in which the destination - fonts will be generated for each language. Each font of that - language will be generated in each of the specified - encodings. If you don't want any translation, just specify both - <tt>SRCENC</tt> and <tt>DSTENC</tt> as iso8859-1 (or if you want any other encoding - specified in the fonts.dir, copy the description of 8859-1 with - new name and use this new name for <tt>SRCENC</tt> and <tt>DSTENC</tt>). -<p> - -<!-- ==item * --> -<b><tt>FOUNDRY</tt></b> - the foundry name to be used in the fonts.dir file. I have - set it to `fromttf' to avoid name conflicts with any existing font for - sure. But this foundry name is not registered in X11 standards and - if you want to get the full standard compliance or have a font server - that enforces such a compliance, use `misc'. -<p> -<!-- ==back --> - -The next few parameters control the general behavior of the converter. -They default values are set to something reasonable. -<p> - -<!-- ==over 2 --> -<!-- ==item * --> -<b><tt>CORRECTWIDTH</tt></b> - if the value is set to <b><tt>YES</tt></b> then use the - converter option <tt><b>-w</b></tt>, otherwise don't use it. See the description of - this option in the <A HREF="README.html">README</A> file. -<p> - -<!-- ==item * --> -<b><tt>REMOVET1A</tt></b> - if the value is set to <b><tt>YES</tt></b> then after - conversion remove the un-encoded <tt>.t1a</tt> font files and the - intermediate <tt>.xpfa</tt> font metric files. -<p> - -<!-- ==item * --> -<b><tt>INSTALLFONTMAP</tt></b> - a Ghostscript parameter, if the value is set to - <b><tt>YES</tt></b> then install the entries for the new fonts - right into the main <tt>Fontmap</tt> file. Otherwise just leave - the file <tt>Fontmap.ttf</tt> in the Ghostscript configuration - directory. -<p> - -<!-- ==item * --> -<b><tt>HINTSUBST</tt></b> - if the value is set to <b><tt>YES</tt></b> use the option - <tt><b>-H</b></tt>, otherwise don't use it. This option enables the - hint substitution technique. If you have not installed the X11 patch - described above, use this option with great caution. See further - description of this option in the <A HREF="README.html">README</A> file. -<p> - -<!-- ==item * --> -<b><tt>ENFORCEISO</tt></b> - if the value is set to <b><tt>YES</tt></b> then - disguise the resulting fonts as the fonts in ISOLatin1 encoding. Historically - this was neccessary due to the way the installer scripts created the - X11 font configuration files. It is not neccessary any more for this - purpose. But if you plan to use these fonts with some other application - that expects ISOLatin1 encoding then better enable this option. -<p> - -<!-- ==item * --> -<b><tt>ALLGLYPHS</tt></b> - if the value is set to <b><tt>YES</tt></b> then - include all the glyphs from the source fonts into the resulting fonts, even - if these glyphs are inaccessible. If it's set to <b><tt>NO</tt></b> then - include only the glyphs which have codes assigned to them. The glyphs - without codes can not be used directly. But some clever programs, - such as the Type 1 library from XFree86 3.9 and higher can change - the encoding on the fly and use another set of glyphs. If you have not - installed the X11 patch described above, use this option with great - caution. See further description of the option option <tt><b>-a</b></tt> in the - <A HREF="README.html">README</A> file. -<p> - -<!-- ==item * --> -<b><tt>GENUID</tt></b> - if the value is set to <b><tt>YES</tt></b> then use - the option <tt><b>-uA</b></tt> of the converter to generate UniqueIDs for - the converted fonts. The standard X11 Type 1 library does not use - this ID, so it may only be neccessary for the other applications. - The script is clever enough to generate different UniqueID for the - same font converted to multiple encodings. Also after conversion it - checks all the fonts generacted during the session for duplicated - UniqueID and shows those. Still, this does not quarantee that these - UniqueIDs won't overlap with some other fonts. The UniqueIDs are - generated as hash values from the font names, so it's guaranteed - that if the `<tt>convert</tt>' script runs multiple times it will - generate the same UniqueIDs during each run. See further description - of this option in the <A HREF="README.html">README</A> file. -<p> - -<!-- ==item * --> -<b><tt>GENUID</tt></b> - if the value is set to <b><tt>YES</tt></b> then create - the <tt>.pfb</tt> files, otherwise the <tt>.pfa</tt> files. The <tt>.pfb</tt> - files are more compact but contain binary data, so you may experience some - troubles when transferring them through the network. -<p> -<!-- ==back --> - -The following parameters are used to locate the other scripts and -configuration files. By default the scripts do a bit of guessing for them: -they search in the <b>ttf2pt1</b> installation directory if <b>ttf2pt1</b> -was installed or otherwise suppose that you are running `<tt>convert</tt>' with -`<tt>scripts</tt>' subdirectory being the current directory. -<p> - -<!-- ==over 2 --> -<!-- ==item * --> -<b><tt>ENCDIR</tt></b> - directory containing the descriptions of encodings -<br> -<!-- ==item * --> -<b><tt>MAPDIR</tt></b> - directory containing the external map files -<p> -<!-- ==back --> - -Besides that a few parameters are built into the `<tt>convert</tt>' script itself. -You probably won't need to change them: -<p> - -<!-- ==over 2 --> -<!-- ==item * --> -<tt><b>T1ASM</b></tt>, <tt><b>TTF2PT1</b></tt>, <tt><b>TRANS</b></tt>, <tt><b>T1FDIR</b></tt>, <tt><b>FORCEISO</b></tt> - paths to the other script -<p> -<!-- ==back --> - -Also there are a few parameters controlling the installation of -fonts for Ghostscript. Please look at their description in the -<A HREF="#gs">Ghostscript</a> section of documentation or in the <b>ttf2pt1_x2gs(1)</b> -manual page before running `<tt>convert</tt>'. If these parameters are -set, `<tt>convert</tt>' will call the `<tt>x2gs</tt>' script automatically -to install the newly converted fonts in Ghostscript. -<p> - -After creating the configuration file run the `<tt>convert</tt>' script. Look at -the result and the log file in <tt>DSTDIR</tt>. -<p> - -Add the directory with newly converted fonts to the configuration -of X server or font server. For most of the systems this step is -very straightforward. For HP-UX it's rather tricky and poorly -documented, so the file <A HREF="FONTS.hpux.html">FONTS.hpux</A> gives a short description. -<p> - -If you don't have the privileges of the root user, you still can -configure your private font server. Just use some non-standard -port number (see <A HREF="FONTS.hpux.html">FONTS.hpux</A> for an example, exept that you won't -need all the HP-related stuff on any other system). -<p> -<!-- =stop --> - -<H4> -Known Problems -</H4> -<! --------------- -> -<!-- =section cv BUGS --> -<!-- ==head2 Known problems --> - -<ul> -<li> One catch is that the X11 Type 1 font library has a rather low limit - on the font size. Because of this the fonts with more complicated - outlines and the enabled hint substitution may not fit into - this limit. The same applies to the fonts with very complicated - outlines or with very many glyphs (especially the fonts with - over 256 glyphs). So you will need to excercise caution with - these options if you plan using these fonts with X11. Some vendors - such as HP provide the Type 1 implementation licensed from Adobe - which should have no such problem. -<p> - - But there is a solution even for the generic X11. A patch located - in the subdirectory `<tt>app/X11</tt>' fixes this problem as well - as some other minor problems. Its description is provided in - <A HREF="app/X11/README.html">app/X11/README</A>. -<p> - - To fix the X11 font library, you have to get the X11 sources. I - can recommend the ftp sites of the XFree86 project <A HREF="ftp://ftp.xfree86.org">ftp://ftp.xfree86.org</A> - or of the Open Group <A HREF="ftp://ftp.x.org">ftp://ftp.x.org</A>. This patch was made on the sources - of XFree86 so you may have better success with applying it to the - XFree86 distribution. After you have got the sources, make sure - that you can compile them. Then apply the patch as described. - Make sure that it was applied properly. Compile the sources again - (actually, you need only the fonts library, the fonts server, and - possibly the X server). It would be prudent now to save your old - font library, font server and, possibly, X server. Then install - the new recently compiled versions of these files. Of course, - if you know someone who already has compiled these files for the - same OS as yours, you can just copy the binary fles from him. -<p> - - Alas, building the X11 system from the source code is not the - easiest thing in the world and if you have no experience it - can be quite difficult. In this case just avoid the aforementioned - features or check each converted font to make sure that it - works properly. -<p> - -<li> The Type1 font library from the standard X11 distribution - does not work on HP-UX (at least, up to 10.01). The font server - supplied with HP-UX up to 10.01 is also broken. Starting from - HP-UX 10.20 (I don't know about 10.10) they supply a proprietary font - library and the converted fonts work fine with it, provided that - they are configured properly (see the file <A HREF="FONTS.hpux.html">FONTS.hpux</A>). -<p> - -<li> The <tt>fonts.scale</tt> files created by the older versions of the - <tt>ttf2pt1</tt> installation program (up to release 3.1) have conflicted - with the language definitions of the <tt>Xfsft</tt> font server and - parts of it included into XFree86. To overcome this incompatibility - the never versions creats the <tt>fonts.scale</tt> file describing all the - fonts as belonging to the <tt>adobe-fontspecific</tt> encoding and - the <tt>fonts.alias</tt> file with the proper names. The drawback of - this solution is that <tt>xlsfonts</tt> gives the list of twice more - fonts. But as a side effect the option <tt><b>ENFORCEISO</b></tt> in - `<tt>convert.cfg</tt>' is not required for X11 any more. -<p> - -<li> The conversion script has no support for Eastern multi-plane fonts. - Contribution of such a support would be welcome. -<p> -</ul> -<!-- =stop --> -<!-- =section cv FILES --> -<!-- ==over 2 --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/scripts/convert.cfg.sample --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/scripts/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/README --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/FONTS --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_BINDIR/ttf2pt1 --> -<!-- ==back --> -<!-- =stop --> -<!-- =section cv SEE ALSO --> -<!-- ==over 4 --> -<!-- ==item * --> -<!-- =text L<ttf2pt1(1)> --> -<!-- ==item * --> -<!-- =text L<ttf2pt1_x2gs(1)> --> -<!-- ==item * --> -<!-- =text L<t1asm(1)> --> -<!-- ==back --> -<!-- =stop --> - -<A NAME="gs"></A> -<H3> -Ghostscript -</H3> -<! -=========== -> -<!-- =section gs NAME --> -<!-- =text B<ttf2pt1_x2gs> - font installer for Ghostscript --> -<!-- =stop --> - -<!-- =section gs DESCRIPTION --> -The fonts generated with <b>ttf2pt1</b> work fine with Ghostscript by -themselves. The script `<b>x2gs</b>' (or `<b>ttf2pt1_x2gs</b>' when installed -into a public directory, to avoid name conflicts with other -programs) links the font files from the X11 direcotry into the Ghostscript -directory and automatically creates the description file (<tt>Fontmap</tt>) -in Ghostscript format. -<!-- =stop --> - -It's called as: -<p> - -<!-- =section gs SYNOPSIS --> -<!-- =text ttf2pt1_x2gs B<[config-file]> --> -<!-- =stop --> -<blockquote> - x2gs <i>[config-file]</i> -</blockquote> - -<!-- =section gs DESCRIPTION --> -If the configuration file is not specified as an argument then the file -`<TT>convert.cfg</TT>' in the current directory is used, just like the -`<tt>convert</tt>' script does. Indeed, this configuration file is used for -both scripts. -<p> - -The Ghostscript-related parameters in the configuration file are: -<p> - -<b><tt>DSTDIR</tt></b> - the X11 font directory used by `<tt>x2gs</tt>' as the - source of the fonts. This parameter is common with the X11 - configuration. -<p> - -<b><tt>GSDIR</tt></b> - the base directory of Ghostsript. If this - parameter is set to an empty string then `<tt>convert</tt>' won't - call `<tt>x2gs</tt>'. So if you want to get only the X11 fonts - installed then set this parameter to an empty string. This - directory may vary on various system, so please check your - system and set this value accordingly before running the script. -<p> - -<b><tt>GSFONTDIR</tt></b> - the font directory of Ghostscript. In the standard - Ghostscript installation it's a subdirectory of <tt>GSDIR</tt> - but some systems may use completely different directories. -<p> - -<b><tt>GSCONFDIR</tt></b> - the configuration subdirectory of Ghostscript - that contains the <tt>Fontmap</tt> file. -<p> - -<b><tt>INSTALLFONTMAP</tt></b> - if the value is set to <b><tt>YES</tt></b> then - install the entries for the new fonts right into the main - <tt>Fontmap</tt> file. Otherwise just leave the file <tt>Fontmap.ttf</tt> - in the Ghostscript configuration directory. -<p> - - -After preparing the configuration file run the script. It symbolicaly links -all the font files and creates the description file <tt>Fontmap.ttf</tt> in -<tt>GSCONDFIR</tt>. After that there are two choices. -<p> - -If the option <tt>INSTALLFONTMAP</tt> was set to <tt>YES</tt> then -the font descriptions are also automatically installed into the -master <tt>Fontmap</tt> file. The script is clever enough to -detect if it was run multiple times with the same directories -and if so it replaces the old <tt>Fontmap</tt> entries with -the new ones instead of just accumulating all of them. You -may also run it multiple times for multiple X11 directories -and all the results will be properly collected in the <tt>Fontmap</tt>. -But it's your responsibility to watch that the names of the -font files don't overlap. If the X11 font directory gets -renamed then you have to remove its font entries from the -<tt>Fontmap</tt> and only after that re-run `<tt>x2gs</tt>' -for the new directory. -<p> - -On the other hand if the option <tt>INSTALLFONTMAP</tt> was set to -<tt>NO</tt> then go to the <tt>GSCONFDIR</tt> directory and insert the -contents of <tt>Fontmap.ttf</tt> into the <tt>Fontmap</tt> file -manually. This step may be left manual to make the installation -a little bit more safe. -<p> - -After that you may also want to redefine some of the aliases in -<tt>Fontmap</tt> to refer to the newly installed fonts. -But the redefinition of the aliases may be dangerous if the width of -characters in the new font will be different from the old font. -Alas, there is no visible solution of this problem yet. -<p> -<!-- =stop --> -<!-- =section gs FILES --> -<!-- ==over 2 --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/scripts/convert.cfg.sample --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/scripts/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/README --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/FONTS --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_BINDIR/ttf2pt1 --> -<!-- ==back --> -<!-- =stop --> -<!-- =section gs SEE ALSO --> -<!-- ==over 4 --> -<!-- ==item * --> -<!-- =text L<ttf2pt1(1)> --> -<!-- ==item * --> -<!-- =text L<ttf2pt1_convert(1)> --> -<!-- ==item * --> -<!-- =text L<t1asm(1)> --> -<!-- ==back --> -<!-- =stop --> - -<A NAME="win"></A> -<H3> -MS Windows -</H3> -<! -=========== -> - -<b>Ttf2pt1</b> can be built on Windows either with native compiler or in -POSIX emulation mode. -<p> - -Native MS Windows compilers require a different way to build the converter -instead of the Makefile (their <tt>make</tt> programs commonly are quite weird -and limited in capabilities). An example of batch file <tt>winbuild.bat</tt> -is provided for MS Visual C/C++. Probably it can be easily adapted for other -32-bit Windows and DOS compilers. The important part is to define the -preprocessor symbol WINDOWS during compilation. -<p> - -Cygnus <tt>make</tt> almost supports full Makefiles but not quite. Seems -like its POSIX support is also of the same quality "almost but not quite". -So another command file <tt>cygbuild.sh</tt> is provided for Cygnus GNU C, also -with the preprocessor symbol WINDOWS defined. It is intended to be run from -the Cygnus BASH shell. To run the programs produced by the Cygnus compiler -the Cygnus library file <tt>CYGWIN1.DLL</tt> should be copied first into -<tt>C:\WINDOWS</tt>. -<p> - -To run the accompanying scripts Perl for Windows will be required as well as -other tools from the Cygnus set. -<p> - -The Windows support was not particularly tested, so in case of problems with -building or running the converter please let us know. -<p> - -The pre-built code (possibly of an older version) of ttf2pt1 for MS Windows is -available from the GnuWin32 project from - -<A HREF="http://gnuwin32.sourceforge.net/packages/ttf2pt1.htm">http://gnuwin32.sourceforge.net/packages/ttf2pt1.htm</A> -<p> - -<A NAME="netscape"></a> -<H3> -Netscape Navigator/Communicator -</H3> -<! -=============================== -> - -Basically, the biggest problem with Netscape Navigator is that -it has built-in fixed PostScript font names and built-in fixed -glyph tables for them. Oh, no, that's two! Let's start over: -basically the two biggest problems of Netscape Navigator are -that (one)it has built-in fixed PostScript font names and (two) -built-in fixed glyph tables for them and (three) it always -assumes that the fonts have ISOLatin1 encoding. OK, let's -start over again: basically the three biggest problems of Netscape -Navigator are that (one) it has built-in fixed PostScript font names, -(two) built-in fixed glyph tables for them and (three) it always -assumes that the fonts have ISOLatin1 encoding and (four) it -does not remember the scaled font size between the sessions. -You did not expect such a Spanish Inquisition, did you ? (<A HREF="#nsfn1">*</a>) -<p> - -Luckily, we have solutions for all of these problems. They are -located in the subdirectory `<tt>app/netscape</tt>' and described -in <A HREF="app/netscape/README.html">app/netscape/README</a>. -<p> - -<A NAME="nsfn1"></a> - -------<br> - <FONT SIZE=-1>*) See Monty Python's Flying Circus, episode 15</FONT></FONT> -<p> - -<FONT COLOR="#3333FF"><FONT SIZE=-1>*8*</FONT></FONT> -<H4> -Netscape and cyrillic fonts<br> -<! ---------------------------- -> -(courtesy of Zvezdan Petkovic) -</H4> - -If you use TrueType fonts in your X, as I do, and you always get -KOI8-R encoded pages, then your Netscape does not recognise windows-1251 -encoding. Microsoft TrueType fonts simply declare all encodings they -can support including KOI8-R. For some reason, KOI8-R always wins over -ISO-8859-5 in Netscape under X. If you are reading other cyrillic -languages besides Russian, you might want to either erase KOI8-R entries -from the fonts.dir and fonts.scale files, or alternatively fix Netscape. -I put this line in my .Xdefaults. -<p> - -<blockquote><tt> - Netscape*documentFonts.charset*koi8-r: iso-8859-5 -</tt></blockquote> -<p> - -Notice that you can still read Russian sites without trouble because -Netscape translates KOI8-R to ISO-8859-5 on the fly. I read both Russian -and Serbian sites with no trouble. -<p> - -<b>Note:</b> <i>If anybody knows the way to tell Netscape under Unix how to -recognise {windows,ibm,cp}-1251 encoded fonts, I'd like to hear about that.</i> -<p> - -<A NAME="rpm"></a> -<H3> -Linux RPM package -</H3> -<! -================= -> - -The spec file for the creation of a Linux RPM package is located in -<tt>app/RPM</tt>. It has been contributed by Johan Vromans. When -<tt>make all</tt> is ran in the main directory it among the other -things creates the version of itself adapted to Linux in <tt>app/RPM</tt>, -you may want to copy that version back to the main directory. -<p> - -<B>Warning:</B> Please note that the install section is incomplete, and -the installed scripts won't work until the paths inside them -are corrected. -<p> - -<A NAME="framemaker"></a> -<H3> -FrameMaker -</H3> -<! -========== -> - -The fonts and AFM files generated by the version 3.2 and higher -should work with Framemaker without problems. The AFM files -generated by the previous versions of the converter require a -line added to them: -<p> - - <tt>EncodingScheme FontSpecific</tt> -<p> - -And the underscores in the font names of the font and AFM files -generated by the older versions may need to be changed to dashes. -<p> - -<B>NOTE by Jason Baietto:</B> Ignore the directions in the Frame on-line docs -that say to put a "serverdict begin 0 exitserver" line in the pfa files. -Doing this caused both my printer and ghostscript to choke on the resulting -output from FrameMaker, so I would not advise doing this (though your -mileage may vary). -<p> - -<A NAME="soffice"></a> -<H3> -StarOffice -</H3> -<! -========== -> - -StarOffice 5.1x has been reported to crash if the <tt>.afm</tt> file contains -spaces in the values of such statements as <b>Version</b>, <b>Weight</b> etc. -These spaces are permitted by the Adobe spec, so this is a problem of -StarOffice. The easiest way to fix these <tt>.afm</tt> files for StarOffice -is to remove spaces in these strings or remove these strings (in case if -they are optional) at all. This can be done automatically with a <tt>sed</tt> -script. It seems that StarOffice 5.2 has this problem fixed, so we decided to -spend no efforts on providing workarounds for 5.1 with <tt>ttf2pt1</tt>. -<p> - -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/Makefile b/Build/source/texk/ttf2pt1/Makefile deleted file mode 100644 index 13895c0d0b8..00000000000 --- a/Build/source/texk/ttf2pt1/Makefile +++ /dev/null @@ -1,248 +0,0 @@ - -# This file should be configured before running `make'. -# Uncomment or change the values that are relevant for your OS. - -# The preferred C compiler (by default use the OS-specific default value). -# For BSD/OS, FreeBSD, Linux (all flavors), NetBSD, OpenBSD the default -# compiler is GNU C. -# (Note please the politically correct ordering by alphabet ! :-) -# -# Use GNU C even if it's not the default compiler -# -#CC=gcc -# -# Use the standard ANSI C compiler on HP-UX even if it's not default -# -#CC=c89 - -# -# The system-dependent flags for the C compiler -# -# Default - -CFLAGS_SYS= -O - -# For GNU C -# -#CFLAGS_SYS= -O2 -# -# For GNU C with long options support library (Linux etc.) -# -#CFLAGS_SYS= -O2 -D_GNU_SOURCE -# -# For GNU C on HP-UX/PA-RISC 1.1 -# -#CFLAGS_SYS= -O2 -Wa,-w -# -# For the standard ANSI C on HP-UX -# -#CFLAGS_SYS= +O2 -D_HPUX_SOURCE - -# -# The system-dependent libraries -# -# Defalut (for the BSD-style OSes) - -LIBS_SYS= -lm - -# For SystemV (such as SCO, UnixWare, Solaris, but _NOT_ Linux or HP-UX) -# -#LIBS_SYS= -lm -lsocket - -# -# The flags for C compiler for the FreeType-2 library (disabled by default). -# This WON'T BUILD with FT2-beta8, use the FreeType release 2.0. -# http://download.sourceforge.net/freetype/freetype-2.0.tar.gz - -CFLAGS_FT= - -# To enable use of the FreeType-2 library -# (if the include and lib directory do not match your installation, -# modify them), also uncomment LIBS_FT -# -#CFLAGS_FT = -DUSE_FREETYPE -I/usr/local/include/freetype2 -I/usr/local/include - -# -# The FreeType-2 library flags (disabled by default) - -LIBS_FT= - -# To enable use of the FreeType-2 library -# (if the include and lib directory do not match your installation, -# modify them), also uncomment LIBS_FT -# -#LIBS_FT= -L/usr/local/lib -lfreetype - -# -# Preference of front-ends if multiple parsers match a file -# (by default the build-in front-end takes preference over FreeType) - -CFLAGS_PREF= - -# To prefer FreeType (if enabled): -# -#CFLAGS_PREF= -DPREFER_FREETYPE - -# Uncomment the second line to not compile t1asm into ttf2pt1 -CFLAGS_EXTT1ASM= -#CFLAGS_EXTT1ASM= -DEXTERNAL_T1ASM - -CFLAGS= $(CFLAGS_SYS) $(CFLAGS_FT) $(CFLAGS_PREF) -LIBS= $(LIBS_SYS) $(LIBS_FT) - -# Installation-related stuff -# -# The base dir for installation and subdirs in it -INSTDIR = /usr/local -# for binaries -BINDIR = $(INSTDIR)/bin -# for binaries of little general interest -LIBXDIR = $(INSTDIR)/libexec/ttf2pt1 -# for scripts, maps/encodings etc. -SHAREDIR = $(INSTDIR)/share/ttf2pt1 -MANDIR = $(INSTDIR)/man - -# owner and group of installed files -OWNER = root -GROUP = bin - -# After you have configured the Makefile, comment out the following -# definition: -warning: docs - @echo >&2 - @echo " You have to configure the Makefile before running make!" >&2 - @echo "(or if you are lazy and hope that it will work as is run \`make all')">&2 - @echo >&2 - -DOCS=CHANGES README FONTS FONTS.hpux encodings/README other/README \ - app/X11/README app/netscape/README - -SUBDIRS = app encodings maps scripts other -TXTFILES = README* FONTS* CHANGES* COPYRIGHT - -MANS1=ttf2pt1.1 ttf2pt1_convert.1 ttf2pt1_x2gs.1 -MANS=$(MANS1) $(MANS5) - -all: t1asm ttf2pt1 docs mans rpm - -docs: $(DOCS) - -mans: $(MANS) - -clean: - rm -f t1asm ttf2pt1 *.o app/RPM/Makefile app/RPM/*.spec *.core core.* core - ( cd other && make clean; ) - -veryclean: clean - rm -f $(DOCS) $(MANS) - -rpm: app/RPM/Makefile app/RPM/ttf2pt1.spec - -ttf2pt1.1: README.html - scripts/html2man . . <README.html - -ttf2pt1_convert.1 ttf2pt1_x2gs.1: FONTS.html - scripts/html2man . . <FONTS.html - -app/RPM/Makefile: Makefile - sed 's/^CFLAGS_SYS.*=.*$$/CFLAGS_SYS= -O2 -D_GNU_SOURCE/;/warning:/,/^$$/s/^/#/' <Makefile >app/RPM/Makefile - -app/RPM/ttf2pt1.spec: app/RPM/ttf2pt1.spec.src version.h - sed 's/^Version:.*/Version: '`grep TTF2PT1_VERSION version.h| cut -d\" -f2`'/' <app/RPM/ttf2pt1.spec.src >$@ - -t1asm: t1asm.c - $(CC) $(CFLAGS) -o t1asm -DSTANDALONE t1asm.c $(LIBS) - -ttf2pt1.o: ttf2pt1.c ttf.h pt1.h global.h version.h - $(CC) $(CFLAGS) -c ttf2pt1.c - -pt1.o: pt1.c ttf.h pt1.h global.h - $(CC) $(CFLAGS) -c pt1.c - -ttf.o: ttf.c ttf.h pt1.h global.h - $(CC) $(CFLAGS) -c ttf.c - -ft.o: ft.c pt1.h global.h - $(CC) $(CFLAGS) -c ft.c - -bdf.o: bdf.c pt1.h global.h - $(CC) $(CFLAGS) -c bdf.c - -bitmap.o: bitmap.c pt1.h global.h - $(CC) $(CFLAGS) -c bitmap.c - -runt1asm.o: runt1asm.c global.h - $(CC) $(CFLAGS) $(CFLAGS_EXTT1ASM) -c runt1asm.c - -ttf2pt1: ttf2pt1.o pt1.o runt1asm.o ttf.o ft.o bdf.o bitmap.o - $(CC) $(CFLAGS) -o ttf2pt1 ttf2pt1.o pt1.o runt1asm.o ttf.o ft.o bdf.o bitmap.o $(LIBS) - -CHANGES: CHANGES.html - scripts/unhtml <CHANGES.html >CHANGES - -README: README.html - scripts/unhtml <README.html >README - -encodings/README: encodings/README.html - scripts/unhtml <encodings/README.html >encodings/README - -other/README: other/README.html - scripts/unhtml <other/README.html >other/README - -app/X11/README: app/X11/README.html - scripts/unhtml <app/X11/README.html >app/X11/README - -app/netscape/README: app/netscape/README.html - scripts/unhtml <app/netscape/README.html >app/netscape/README - -FONTS: FONTS.html - scripts/unhtml <FONTS.html >FONTS - -FONTS.hpux: FONTS.hpux.html - scripts/unhtml <FONTS.hpux.html >FONTS.hpux - -install: all - scripts/inst_dir $(BINDIR) - scripts/inst_dir $(LIBXDIR) - scripts/inst_dir $(SHAREDIR) - scripts/inst_dir $(MANDIR)/man1 - scripts/inst_dir $(MANDIR)/man5 - cp -R $(TXTFILES) $(SUBDIRS) $(SHAREDIR) - chown -R $(OWNER) $(SHAREDIR) - chgrp -R $(GROUP) $(SHAREDIR) - chmod -R go-w $(SHAREDIR) - scripts/inst_file ttf2pt1 $(BINDIR)/ttf2pt1 $(OWNER) $(GROUP) 0755 - [ -f $(BINDIR)/t1asm ] || scripts/inst_file t1asm $(LIBXDIR)/t1asm $(OWNER) $(GROUP) 0755 - sed 's|^TTF2PT1_BINDIR=$$|TTF2PT1_BINDIR=$(BINDIR)|;\ - s|^TTF2PT1_LIBXDIR=$$|TTF2PT1_LIBXDIR=$(LIBXDIR)|;\ - s|^TTF2PT1_SHAREDIR=$$|TTF2PT1_SHAREDIR=$(SHAREDIR)|;' <scripts/convert >cvt.tmp - scripts/inst_file cvt.tmp $(BINDIR)/ttf2pt1_convert $(OWNER) $(GROUP) 0755 - scripts/inst_file cvt.tmp $(SHAREDIR)/scripts/convert $(OWNER) $(GROUP) 0755 - rm cvt.tmp - scripts/inst_file scripts/x2gs $(BINDIR)/ttf2pt1_x2gs $(OWNER) $(GROUP) 0755 - for i in $(MANS1); do { \ - sed 's|TTF2PT1_BINDIR|$(BINDIR)|;\ - s|TTF2PT1_LIBXDIR|$(LIBXDIR)|;\ - s|TTF2PT1_SHAREDIR|$(SHAREDIR)|;' <$$i >$(MANDIR)/man1/$$i \ - && chown $(OWNER) $(MANDIR)/man1/$$i \ - && chgrp $(GROUP) $(MANDIR)/man1/$$i \ - && chmod 0644 $(MANDIR)/man1/$$i \ - || exit 1; \ - } done - -uninstall: - rm -f $(BINDIR)/ttf2pt1 $(BINDIR)/ttf2pt1_convert $(BINDIR)/ttf2pt1_x2gs - rm -rf $(LIBXDIR) - rm -rf $(SHAREDIR) - for i in $(MANS1); do { \ - rm -f $(MANDIR)/man1/$$i $(MANDIR)/man1/$$i.gz; \ - } done - - -# targets for automatic generation of releases and snapshots - -snapshot: - scripts/mkrel snapshot - -release: - scripts/mkrel release diff --git a/Build/source/texk/ttf2pt1/README.FIRST b/Build/source/texk/ttf2pt1/README.FIRST deleted file mode 100644 index f89db20102e..00000000000 --- a/Build/source/texk/ttf2pt1/README.FIRST +++ /dev/null @@ -1,4 +0,0 @@ -To get the plain-text README and installation guides run: - - make docs - diff --git a/Build/source/texk/ttf2pt1/README.html b/Build/source/texk/ttf2pt1/README.html deleted file mode 100644 index 87004cc0b1a..00000000000 --- a/Build/source/texk/ttf2pt1/README.html +++ /dev/null @@ -1,1158 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -TTF2PT1 - A True Type to PostScript Type 1 Converter -</TITLE> -</HEAD> -<BODY> -<!-- =defdoc t1 ttf2pt1 1 --> -<H2> -<!-- =section t1 NAME --> -TTF2PT1 - A True Type to PostScript Type 1 Font Converter -<!-- =stop --> -</H2> - -<! -(Do not edit this file, it is generated from README.html!!!) -> -<TT> -[ -<blockquote> -<!-- =section t1 HISTORY --> - Based on ttf2pfa by Andrew Weeks, and help from Frank Siegert. -<BR> - Modification by Mark Heath. -<BR> - Further modification by Sergey Babkin. -<BR> - The Type1 assembler by I. Lee Hetherington with modifications by - Kai-Uwe Herbing. -<!-- =stop --> -</blockquote> -] -</TT> -<p> - -Ever wanted to install a particular font on your XServer but only could find -the font you are after in True Type Format? -<p> - -Ever asked <TT>comp.fonts</TT> for a True Type to Type 1 converter and got a List -of Commercial software that doesn't run on your Operating System? -<p> - -Well, this program should be the answer. This program is written in C (so it -should be portable) and therefore should run on any OS. The only limitation -is that the program requires some method of converting Big endian integers into -local host integers so the network functions ntohs and ntohl are used. These -can be replaced by macros if your platform doesn't have them. -Of course the target platform requires a C compiler and command line ability. -<p> - -<!-- =section t1 DESCRIPTION --> -Ttf2pt1 is a font converter from the True Type format (and some other formats -supported by the FreeType library as well) to the Adobe Type1 format. -<p> - -The versions 3.0 and later got rather extensive post-processing algorithm that -brings the converted fonts to the requirements of the Type1 standard, tries to -correct the rounding errors introduced during conversions and some simple -kinds of bugs that are typical for the public domain TTF fonts. It -also generates the hints that enable much better rendering of fonts in -small sizes that are typical for the computer displays. But everything -has its price, and some of the optimizations may not work well for certain -fonts. That's why the options were added to the converter, to control -the performed optimizations. -<p> -<!-- =stop --> - -The converter is simple to run, just: -<p> - -<!-- =section t1 SYNOPSIS --> -<blockquote> - <tt>ttf2pt1 <i>[-options] ttffont.ttf [Fontname]</i></tt> -</blockquote> -or -<blockquote> - <tt>ttf2pt1 <i>[-options] ttffont.ttf -</i></tt> -</blockquote> -<!-- =stop --> -<p> - -<!-- =section t1 OPTIONS --> -The first variant creates the file <tt>Fontname.pfa</tt> (or <tt>Fontname.pfb</tt> if the -option '<b>-b</b>' was used) with the converted font and <tt>Fontname.afm</tt> with the -font metrics, the second one prints the font or another file (if the option -'<b>-G</b>' was used) on the standard output from where it can be immediately -piped through some filter. If no <tt>Fontname</tt> is specified for the first -variant, the name is generated from <tt>ttffont</tt> by replacing the <tt>.ttf</tt> -filename suffix. -<p> - -Most of the time no options are neccessary (with a possible exception -of '<b>-e</b>'). But if there are some troubles with the resulting font, they -may be used to control the conversion. -The <B>options</B> are: -<p> - -<!-- ==over 2 --> -<!-- ==item * --> -<TT><B>-a</TT></B> - Include all the glyphs from the source file into the converted - file. If this option is not specified then only the glyphs that have - been assigned some encoding are included, because the rest of glyphs - would be inaccessible anyway and would only consume the disk space. - But some applications are clever enough to change the encoding on - the fly and thus use the other glyphs, in this case they could - benefit from using this option. But there is a catch: the X11 library - has rather low limit for the font size. Including more glyphs increases - the file size and thus increases the chance of hitting this limit. - See <A HREF="app/X11/README.html"><tt>app/X11/README</tt></A> for the description of a - patch to X11 which fixes this problem. -<p> - -<!-- ==item * --> -<TT><B>-b</TT></B> - Encode the resulting font to produce a ready <tt>.pfb</tt> file. -<p> - -<!-- ==item * --> -<TT><B>-d <i>suboptions</i></TT></B> - Debugging options. The suboptions are: -<p> - -<blockquote> - <TT><B>a</TT></B> - Print out the absolute coordinates of dots in outlines. Such - a font can not be used by any program (that's why this option is - incompatible with '<b>-e</b>') but it has proven to be a valuable debuging - information. -<p> - - <TT><B>r</TT></B> - Do not reverse the direction of outlines. The TTF fonts have - the standard direction of outlines opposite to the Type1 fonts. So - they should be reversed during proper conversion. This option - may be used for debugging or to handle a TTF font with wrong - direction of outlines (possibly, converted in a broken way from - a Type1 font). The first signs of the wrong direction are the - letters like "P" or "B" without the unpainted "holes" inside. -<p> -</blockquote> - -<!-- ==item * --> -<TT><B>-e</TT></B> - Assemble the resulting font to produce a ready <tt>.pfa</tt> file. -<I> - [ </I>S.B.<I>: Personally I don't think that this option is particularly useful. - The same result may be achieved by piping the unassembled data - through t1asm, the Type 1 assembler. And, anyways, it's good to - have the t1utils package handy. But Mark and many users think that - this functionality is good and it took not much time to add this option. ] -</I> -<p> - -<!-- ==item * --> -<TT><B>-F</TT></B> - Force the Unicode encoding: any type of MS encoding specified - in the font is ignored and the font is treated like it has Unicode - encoding. <B>WARNING:</B> <I>this option is intended for buggy fonts - which actually are in Unicode but are marked as something else. The - effect on the other fonts is unpredictable.</I> -<p> - -<!-- ==item * --> -<TT><B>-G <i>suboptions</i></TT></B> - File generation options. The suboptions may be lowercase - or uppercase, the lowercase ones disable the generation of particular - files, the corresponding uppercase suboptions enable the generation of the - same kind of files. If the result of ttf2pt1 is requested to be printed on - the standard output, the last enabling suboption of <b>-G</b> determines - which file will be written to the standard output and the rest of files - will be discarded. For example, <b>-G A</b> will request the AFM file. - The suboptions to disable/enable the generation of the files are: -<p> - -<blockquote> - <TT><B>f/F</TT></B> - The font file. Depending on the other options this file - will have one of the suffixes <tt>.t1a</tt>, <tt>.pfa</tt> or <tt>.pfb</tt>. If the conversion result - is requested on the standard output ('<tt>-</tt>' is used as the output file name) - then the font file will also be written there by default, if not overwritten - by another suboption of <b>-G</b>. - <b>Default: enabled</b> -<p> - - <TT><B>a/A</TT></B> - The Adobe font metrics file (<tt>.afm</tt>). - <b>Default: enabled</b> -<p> - - <TT><B>e/E</TT></B> - The dvips encoding file (<tt>.enc</tt>). - <b>Default: disabled</b> -<p> - -</blockquote> - -<!-- ==item * --> -<TT><B>-l <I>language</I>[+<I>argument</I>]</TT></B> - Extract the fonts for the specified language from a - multi-language Unicode font. If this option is not used the converter - tries to guess the language by the values of the shell variable LANG. - If it is not able to guess the language by LANG it tries all the - languages in the order they are listed. -<p> - - After the plus sign an optional argument for the language extractor - may be specified. The format of the argument is absolutely up to - the particular language converter. The primary purpose of the - argument is to support selection of planes for the multi-plane - Eastern encodings but it can also be used in any other way. The - language extractor may decide to add the plane name in some form - to the name of the resulting font. None of the currently supported - languages make any use of the argument yet. -<p> - - As of now the following languages are supported: -<br> - <TT>latin1</TT> - for all the languages using the Latin-1 encoding -<br> - <TT>latin2</TT> - for the Central European languages -<br> - <TT>latin4</TT> - for the Baltic languages -<br> - <TT>latin5</TT> - for the Turkish language -<br> - <TT>cyrillic</TT> - for the languages with Cyrillic alphabet -<br> - <TT>russian</TT> - historic synonym for cyrillic -<br> - <TT>bulgarian</TT> - historic synonym for cyrillic -<br> - <TT>adobestd</TT> - for the AdobeStandard encoding used by TeX -<br> - <TT>plane+<i>argument</i></TT> - to select one plane from a multi-byte encoding -<p> - - The argument of the "<tt>plane</tt>" language may be in one of three forms: -<p> - <tt>plane+<b>pid=</b><i><pid></i><b>,eid=</b><i><eid></i></tt> -<br> - <tt>plane+<b>pid=</b><i><pid></i><b>,eid=</b><i><eid></i><b>,</b><i><plane_number></i></tt> -<br> - <tt>plane+<i><plane_number></i></tt> -<p> - - Pid (TTF platform id) and eid (TTF encoding id) select a particular - TTF encoding table in the original font. They are specified as decimal - numbers. If this particular encoding table is not present in the font - file then the conversion fails. The native ("ttf") front-end parser supports - only pid=3 (Windows platform), the FreeType-based ("ft") front-end supports - any platform. If pid/eid is not specified then the TTF encoding table is - determined as usual: Unicode encoding if it's first or an 8-bit encoding - if not (and for an 8-bit encoding the plane number is silently ignored). - To prevent the converter from falling back to an 8-bit encoding, specify - the Unicode pid/eid value explicitly. -<p> - - Plane_number is a hexadecimal (if starts with "<b>0x</b>") or decimal number. - It gives the values of upper bytes for which 256 characters will be - selected. If not specified, defaults to 0. It is also used as a font - name suffix (the leading "0x" is not included into the suffix). -<p> - -<!-- =stop --> - <B>NOTE:</B> -<!-- =section t1 BUGS --> - It seems that many Eastern fonts use features of the TTF format that are - not supported by the ttf2pt1's built-in front-end parser. Because of - this for now we recommend using the FreeType-based parser (option - '<b>-p ft</b>') with the "<tt>plane</tt>" language. -<p> -<!-- =stop --> - -<!-- =section t1 OPTIONS --> -<I> - <B>NOTE:</B> - You may notice that the language names are not uniform: some are the - names of particular languages and some are names of encodings. This - is because of the different approaches. The original idea was to - implement a conversion from Unicode to the appropriate Windows - encoding for a given language. And then use the translation tables - to generate the fonts in whatever final encodings are needed. This - would allow to pile together the Unicode fonts and the non-Unicode - Windows fonts for that language and let the program to sort them out - automatically. And then generate fonts in all the possible encodings - for that language. An example of this approach is the Russian language - support. But if there is no multiplicity of encodings used for some - languages and if the non-Unicode fonts are not considered important - by the users, another way would be simpler to implement: just provide - only one table for extraction of the target encoding from Unicode - and don't bother with the translation tables. The </I>latin*<I> "languages" - are examples of this approach. If somebody feels that he needs the - Type1 fonts both in Latin-* and Windows encodings he or she is absolutely - welcome to submit the code to implement it. -</I><p> - - <B>WARNING:</B> - Some of the glyphs included into the AdobeStandard encoding are not - included into the Unicode standard. The most typical examples of such - glyphs are ligatures like 'fi', 'fl' etc. Because of this the font - designers may place them at various places. The converter tries to - do its best, if the glyphs have honest Adobe names and/or are - placed at the same codes as in the Microsoft fonts they will be - picked up. Otherwise a possible solution is to use the option '<b>-L</b>' - with an external map. -<p> - -<!-- ==item * --> -<TT><B>-L <I>file</I>[+[pid=<I><pid></I>,eid=<I><eid></I>,][<I>plane</I>]]</TT></B> - Extract the fonts for the specified - language from a multi-language font using the map from this file. This is - rather like the option '<b>-l</b>' but the encoding map is not - compiled into the program, it's taken from that file, so it's - easy to edit. Examples of such files are provided in - <tt>maps/adobe-standard-encoding.map</tt>, <tt>CP1250.map</tt>. (<b>NOTE:</b> - <I>the 'standard encoding' map does not include all the glyphs of the - AdobeStandard encoding, it's provided only as an example</I>.) The - description of the supported map formats is in the file - <tt>maps/unicode-sample.map</tt>. -<p> - - Likewise to '<b>-l</b>', an argument may be specified after the map file - name. But in this case the argument has fixed meaning: it selects the - original TTF encoding table (the syntax is the same as in '<b>-l plane</b>') - and/or a plane of the map file. The plane name also gets added after dash - to the font name. The plane is a concept used in the Eastern fonts with big - number of glyphs: one TTF font gets divided into multiple Type1 fonts, - each containing one plane of up to 256 glyphs. But with a little - creativity this concept may be used for other purposes of combining - multiple translation maps into one file. To extract multiple planes - from a TTF font <tt>ttf2pt1</tt> must be run multiple times, each time with - a different plane name specified. -<p> - - The default original TTF encoding table used for the option '<b>-L</b>' is - Unicode. The map files may include directives to specify different original - TTF encodings. However if the pid/eid pair is specified with - it overrides any original encoding specified in the map file. -<p> - -<!-- ==item * --> -<TT><B>-m <i>type</i>=<i>value</i></TT></B> - Set maximal or minimal limits of resources. - These limits control the the font generation by limiting the resources - that the font is permitted to require from the PostScript interpreter. - The currently supported types of limits are: -<p> - -<blockquote> - <TT><B>h</TT></B> - the maximal hint stack depth for the substituted hints. - The default value is 128, according to the limitation in X11. This seems to - be the lowest (and thus the safest) widespread value. To display the - hint stack depth required by each glyph in a <tt>.t1a</tt> file use the script - <tt>scripts/cntstems.pl</tt>. -<p> -</blockquote> - -<!-- ==item * --> -<TT><B>-O <i>suboptions</i></TT></B> - Outline processing options. The suboptions - may be lowercase or uppercase, the lowercase ones disable the features, - the corresponding uppercase suboptions enable the same features. - The suboptions to disable/enable features are: -<p> - -<blockquote> - <TT><B>b/B</TT></B> - Guessing of the ForceBold parameter. This parameter helps - the Type1 engine to rasterize the bold fonts properly at small sizes. - But the algorithm used to guess the proper value of this flag makes - that guess based solely on the font name. In rare cases that may cause - errors, in these cases you may want to disable this guessing. - <b>Default: enabled</b> -<p> - - <TT><B>h/H</TT></B> - Autogeneration of hints. The really complex outlines - may confuse the algorithm, so theoretically it may be useful - sometimes to disable them. Although up to now it seems that - even bad hints are better than no hints at all. - <b>Default: enabled</b> -<p> - - <TT><B>u/U</TT></B> - Hint substitution. Hint substitution is a technique - permitting generation of more detailed hints for the rasterizer. It allows - to use different sets of hints for different parts of a glyph and change - these sets as neccessary during rasterization (that's why "substituted"). - So it should improve the quality of the fonts rendered at small sizes. - But there are two catches: First, the X11 library has rather low limit for - the font size. More detailed hints increase the file size and thus increase - the chance of hitting this limit (that does not mean that you shall hit it - but you may if your fonts are particularly big). This is especially - probable for Unicode fonts converted with option '<b>-a</b>', so you may want to - use '<b>-a</b>' together with '<b>-Ou</b>'. See <A HREF="app/X11/README.html"><tt>app/X11/README</tt></A> for the description of - a patch to X11 which fixes this problem. Second, some rasterizers (again, - X11 is the typical example) have a limitation for total number of hints - used when drawing a glyph (also known as the hint stack depth). If that - stack overflows the glyph is ignored. Starting from version 3.22 <tt>ttf2pt1</tt> - uses algorithms to minimizing this depth, with the trade-off of slightly - bigger font files. The glyphs which still exceed the limit set by option - '<b>-mh</b>' have all the substituted hints removed and only base hints left. - The algorithms seem to have been refined far enough to make the fonts with - substituted hints look better than the fonts without them or at least the - same. Still if the original fonts are not well-designed the detailed - hinting may emphasize the defects of the design, such as non-even thickness - of lines. So provided that you are not afraid of the X11 bug the best idea - would be to generate a font with this feature and without it, then compare - the results using the program <tt>other/cmpf</tt> (see the description - in <A HREF="other/README.html"><tt>other/README</tt></A>) and decide which one looks better. - <b>Default: enabled</b> -<p> - - <TT><B>o/O</TT></B> - Space optimization of the outlines' code. This kind of optimization - never hurts, and the only reason to disable this feature is for comparison - of the generated fonts with the fonts generated by the previous versions of - converter. Well, it _almost_ never hurts. As it turned out there exist - some brain-damaged printers which don't understand it. Actually this - feature does not change the outlines at all. The Type 1 font manual - provides a set of redundant operators that make font description shorter, - such as '10 hlineto' instead of '0 10 rlineto' to describe a horizontal - line. This feature enables use of these operators. - <b>Default: enabled</b> -<p> - - <TT><B>s/S</TT></B> - Smoothing of outlines. If the font is broken in some - way (even the ones that are not easily noticeable), such smoothing - may break it further. So disabling this feature is the first thing to be - tried if some font looks odd. But with smoothing off the hint generation - algorithms may not work properly too. - <b>Default: enabled</b> -<p> - - <TT><B>t/T</TT></B> - Auto-scaling to the 1000x1000 Type1 standard matrix. The - TTF fonts are described in terms of an arbitrary matrix up to - 4000x4000. The converted fonts must be scaled to conform to - the Type1 standard. But the scaling introduces additional rounding - errors, so it may be curious sometimes to look at the font in its - original scale. - <b>Default: enabled</b> -<p> - - <TT><B>w/W</TT></B> - Glyphs' width corection. This option is designed to be - used on broken fonts which specify too narrow widths for the - letters. You can tell that a font can benefit from this option - if you see that the characters are smashed together without - any whitespace between them. This option causes the converter - to set the character widths to the actual width of this character - plus the width of a typical vertical stem. But on the other hand - the well-designed fonts may have characters that look better if - their widths are set slightly narrower. Such well-designed fonts - will benefit from disabling this feature. You may want to convert - a font with and without this feature, compare the results and - select the better one. This feature may be used only on proportional - fonts, it has no effect on the fixed-width fonts. - <b>Default: disabled</b> -<p> -</blockquote> - -<!-- ==item * --> -<TT><B>-p <I>parser_name</I></TT></B> - Use the specified front-end parser to read the font file. - If this option is not used, ttf2pt1 selects the parser automatically based - on the suffix of the font file name, it uses the first parser in its - list that supports this font type. Now two parsers are supported: -<p> - - <TT>ttf</TT> - built-in parser for the ttf files (suffix <tt>.ttf</tt>) -<br> - <TT>bdf</TT> - built-in parser for the BDF files (suffix <tt>.bdf</tt>) -<br> - <TT>ft</TT> - parser based on the FreeType-2 library (suffixes <tt>.ttf</tt>, - <tt>.otf</tt>, <tt>.pfa</tt>, <tt>.pfb</tt>) -<p> - - The parser <tt>ft</tt> is <b>NOT</b> linked in by default. See <tt>Makefile</tt> - for instructions how to enable it. We do no support this parser on - Windows: probably it will work but nobody tried and nobody knows how - to build it. -<p> - - The conversion of the bitmap fonts (such as BDF) is simplistic yet, - producing jagged outlines. When converting such fonts, it might be - a good idea to turn off the hint substitution (using option <b>-Ou</b>) - because the hints produced will be huge but not adding much to the - quality of the fonts. -<p> - -<!-- ==item * --> -<TT><B>-u <I>number</I></TT></B> - Mark the font with this value as its - UniqueID. The UniqueID is used by the printers with the hard disks - to cache the rasterized characters and thus significantly - speed-up the printing. Some of those printers just can't - store the fonts without UniqueID on their disk.The problem - is that the ID is supposed to be unique, as it name says. And - there is no easy way to create a guaranteed unique ID. Adobe specifies - the range 4000000-4999999 for private IDs but still it's difficult - to guarantee the uniqueness within it. So if you don't really need the - UniqueID don't use it, it's optional. Luckily there are a few millions of - possible IDs, so the chances of collision are rather low. - If instead of the number a special value '<tt><b>A</b></tt>' is given - then the converter generates the value of UniqueID automatically, - as a hash of the font name. (<b>NOTE:</b> <i> in the version 3.22 the - algorithm for autogeneration of UniqueID was changed to fit the values - into the Adobe-spacified range. This means that if UniqueIDs were used - then the printer's cache may need to be flushed before replacing the - fonts converted by an old version with fonts converted by a newer version</i>). - A simple way to find if any of the fonts in a given directory have - duplicated UniqueIDs is to use the command: -<p> - - <tt> cat *.pf[ab] | grep UniqueID | sort | uniq -c | grep -v ' 1 '</tt> -<p> - - Or if you use <tt>scripts/convert</tt> it will do that for you automatically - plus it will also give the exact list of files with duplicate UIDs. -<p> - -<!-- ==item * --> -<TT><B>-v <I>size</I></TT></B> - Re-scale the font to get the size of a typical uppercase - letter somewhere around the specified size. Actually, it re-scales - the whole font to get the size of one language-dependent letter to be - at least of the specified size. Now this letter is "A" in all the - supported languages. The size is specified in the points of the - Type 1 coordinate grids, the maximal value is 1000. This is an - experimental option and should be used with caution. It tries to - increase the visible font size for a given point size and thus make - the font more readable. But if overused it may cause the fonts to - look out of scale. As of now the interesting values of size for - this option seem to be located mostly between 600 and 850. This - re-scaling may be quite useful but needs more experience to - understand the balance of its effects. -<p> - -<!-- ==item * --> -<TT><B>-W <i>level</i></TT></B> - Select the verbosity level of the warnings. - Currently the levels from 0 to 4 are supported. Level 0 means no warnings - at all, level 4 means all the possible warnings. The default level is 3. - Other levels may be added in the future, so using the level number 99 is - recommended to get all the possible warnings. Going below level 2 is - not generally recommended because you may miss valuable information about - the problems with the fonts being converted. -<p> - -<!-- ==item * --> -<B>Obsolete option:</B> -<TT><B>-A</TT></B> - Print the font metrics (.afm file) instead of the font on STDOUT. - Use <b>-GA</b> instead. -<p> - -<!-- ==item * --> -<B>Very obsolete option:</B> -<br> - The algorithm that implemented the forced fixed width had major - flaws, so it was disabled. The code is still in the program and - some day it will be refined and returned back. Meanwhile the - option name '<b>-f</b>' was reused for another option. The old version was: -<br> -<TT><B>-f</TT></B> - Don't try to force the fixed width of font. Normally the converter - considers the fonts in which the glyph width deviates by not more - than 5% as buggy fixed width fonts and forces them to have really - fixed width. If this is undesirable, it can be disabled by this option. -<p> -<!-- ==back --> - -The <tt>.pfa</tt> font format supposes that the description of the characters -is binary encoded and encrypted. This converter does not encode or -encrypt the data by default, you have to specify the option '<b>-e</b>' -or use the <tt>t1asm</tt> program to assemble (that means, encode and -encrypt) the font program. The <tt>t1asm</tt> program that is included with -the converter is actually a part of the <tt>t1utils</tt> package, rather old -version of which may be obtained from -<p> - -<blockquote> -<A HREF="http://ttf2pt1.sourceforge.net/t1utils.tar.gz"> - http://ttf2pt1.sourceforge.net/t1utils.tar.gz -</A> -</blockquote> -<p> - -Note that <tt>t1asm</tt> from the old version of that package won't work properly -with the files generated by <tt>ttf2pt1</tt> version 3.20 and later. Please use -<tt>t1asm</tt> packaged with <tt>ttf2pt1</tt> or from the new version <tt>t1utils</tt> -instead. For a newer version of <tt>t1utils</tt> please look at -<p> - -<blockquote> -<A HREF="http://www.lcdf.org/~eddietwo/type/"> - http://www.lcdf.org/~eddietwo/type/ -</A> -</blockquote> -<p> -<!-- =stop --> - -<!-- =section t1 EXAMPLES --> -So, the following command lines: -<p> - -<blockquote> - <tt>ttf2pt1 -e ttffont.ttf t1font</tt> -<br> - <tt>ttf2pt1 ttffont.ttf - | t1asm >t1font.pfa</tt> -</blockquote> -<p> - -represent two ways to get a working font. The benefit of the second form -is that other filters may be applied to the font between the converter -and assembler. -<p> -<!-- =stop --> - -<H4> -Installation and deinstallation of the converter -</H4> -<! ------------------------------------------------- -> - -The converter may be easily installed systemwide with - -<blockquote> - <tt>make install</tt> -</blockquote> - -and uninstalled with - -<blockquote> - <tt>make uninstall</tt> -</blockquote> - -By default the <tt>Makefile</tt> is configured to install in the hierarchy -of directory <tt>/usr/local</tt>. This destination directory as well as -the structure of the hierarchy may be changed by editing the <tt>Makefile</tt>. - -<H4> -Installation of the fonts -</H4> -<! -------------------------- -> - -Running the converter manually becomes somewhat boring if it has to -be applied to a few hundreds of fonts and then you have to generate the -<tt>fonts.scale</tt> and/or <tt>Fontmap</tt> files. The <A HREF="FONTS.html"><tt>FONTS</tt></A> file describes how to use -the supplied scripts to handle such cases easily. It also discusses -the installation of the fonts for a few widespread programs. -<p> - -<H4> -Other utilities -</H4> -<! ---------------- -> - -A few other small interesting programs that allow a cloase look at -the fonts are located in the subdirectory '<tt>other</tt>'. They -are described shortly in <A HREF="other/README.html">others/README</a>. -<p> - -<H4> -Optional packages -</H4> -<! ------------------ -> - -Some auxiliary files are not needed by everyone and are big enough that -moving them to a separate package speeds up the downloads of the main -package significantly. As of now we have one such optional package: -<p> - - <b>ttf2pt1-chinese</b> - contains the Chinese conversion maps -<p> - -The general versioning policy for the optional packages is the following: -These packages may have no direct dependency on the ttf2pt1 version. -But they may be updated in future, as well as some versions of optional -packages may have dependencies on certain versions of ttf2pt1. -To avoid unneccessary extra releases on one hand and keep the updates in -sync with the ttf2pt1 itself on the other hand, a new version of an optional -package will be released only if there are any changes to it and it will be -given the same version number as ttf2pt1 released at the same time. So not -every release of ttf2pt1 would have a corresponding release of all optional -packages. For example, to get the correct version of optional packages for an -imaginary release 8.3.4 of ttf2pt1 you would need to look for optional -packages of the highest version not higher than (but possibly equal to) 8.3.4. -<p> - -<H4> -TO DO: -</H4> -<! ------- -> - -<ul> -<li> Improve hinting. -<li> Implement the family-level hints. -<li> Handle the composite glyphs with relative base points. -<li> Preserve the relative width of stems during scaling to 1000x1000 matrix. -<li> Write the man pages. -<li> Write a BDF front-end. -<li> Write a TTC-to-Type1 front-end (for TTF-like bitmapped fonts). -<li> Implement better support of Asian encodings. -<li> Implement automatic creation of ligatures. -</ul> - -<H4> -TROUBLESHOOTING AND BUG REPORTS -</H4> -<! -------------------------------- -> -<!-- =section t1 BUGS --> -<!-- ==head2 Troubleshooting and bug reports --> - -Have problems with conversion of some font ? The converter dumps core ? Or your -printer refuses to understand the converted fonts ? Or some characters are -missing ? Or some characters look strange ? -<p> - -Send the bug reports to the ttf2pt1 development mailing list at -<A HREF="mailto:ttf2pt1-devel@lists.sourceforge.net">ttf2pt1-devel@lists.sourceforge.net</A>. -<p> - -Try to collect more information about the problem and include it into -the bug report. (Of course, even better if you would provide a ready -fix, but just a detailed bug report is also good). Provide detailed -information about your problem, this will speed up the response greatly. -Don't just write "this font looks strange after conversion" but describe -what's exactly wrong with it: for example, what characters look wrong -and what exactly is wrong about their look. Providing a link to the -original font file would be also a good idea. Try to do a little -troublehooting and report its result. This not only would help with -the fix but may also give you a temporary work-around for the bug. -<p> - -First, enable full warnings with option '<b>-W99</b>', save them to -a file and read carefully. Sometimes the prolem is with a not implemented -feature which is reported in the warnings. Still, reporting about such -problems may be a good idea: some features were missed to cut corners, -in hope that no real font is using them. So a report about a font using -such a feature may motivate someone to implement it. Of course, you -may be the most motivated person: after all, you are the one wishing -to convert that font. ;-) Seriously, the philosophy "scrath your own itch" -seems to be the strongest moving force behind the Open Source software. -<p> - -The next step is playing with the options. This serves a dual purpose: -on one hand, it helps to localize the bug, on the other hand you may be -able to get a working version of the font for the meantime while the -bug is being fixed. The typical options to try out are: first '<b>-Ou</b>', if -it does not help then '<b>-Os</b>', then '<b>-Oh</b>', then '<b>-Oo</b>'. -They are described in a bit more detail above. Try them one by one -and in combinations. See if with them the resulting fonts look better. -<p> - -On some fonts ttf2pt1 just crashes. Commonly that happens because the -font being converted is highly defective (although sometimes the bug -is in ttf2pt1 itself). In any case it should not crash, so the reports -about such cases will help to handle these defects properly in future. -<p> - -We try to respond to the bug reports in a timely fashion but alas, this -may not always be possible, especially if the problem is complex. -This is a volunteer project and its resources are limited. Because -of this we would appreciate bug reports as detailed as possible, -and we would appreciate the ready fixes and contributions even more. -<p> -<!-- =stop --> -<!-- =section t1 FILES --> -<!-- ==over 2 --> -<!-- ==item * --> -<!-- =text TTF2PT1_LIBXDIR/t1asm --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/scripts/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/other/* --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/README --> -<!-- ==item * --> -<!-- =text TTF2PT1_SHAREDIR/FONTS --> -<!-- ==back --> -<!-- =stop --> - -<H4> -CONTACTS -</H4> -<! --------- -> -<!-- =section t1 SEE ALSO --> -<!-- ==over 4 --> -<!-- ==item * --> -<!-- =text L<ttf2pt1_convert(1)> --> -<!-- ==item * --> -<!-- =text L<ttf2pt1_x2gs(1)> --> -<!-- ==item * --> -<!-- =text L<t1asm(1)> --> - -<!-- ==item * --> -<A HREF="http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-announce"> -ttf2pt1-announce@lists.sourceforge.net -</A><br> - The mailing list with announcements about ttf2pt1. It is a moderated mailing - with extremely low traffic. Everyone is encouraged to subscribe to keep in - touch with the current status of project. To subscribe use the Web interface - at <A HREF="http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-announce">http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-announce</A>. - If you have only e-mail access to the Net then send a subscribe request to - the development mailing list ttf2pt1-devel@lists.sourceforge.net and somebody - will help you with subscription. -<p> - -<!-- ==item * --> -<A HREF="mailto:ttf2pt1-devel@lists.sourceforge.net"> -ttf2pt1-devel@lists.sourceforge.net -</A><br> -<A HREF="mailto:ttf2pt1-users@lists.sourceforge.net"> -ttf2pt1-users@lists.sourceforge.net -</A><br> - The ttf2pt1 mailing lists for development and users issues. They have not - that much traffic either. To subscribe use the Web interface at - <A HREF="http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-devel">http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-devel</A> - and <A HREF="http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-users">http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-users</A>. - If you have only e-mail access to the Net then send a subscribe request to - the development mailing list ttf2pt1-devel@lists.sourceforge.net and somebody - will help you with subscription. -<p> - -<!-- =stop --> -<A HREF="mailto:mheath@netspace.net.au"> -mheath@netspace.net.au -</A><br> - Mark Heath -<p> - -<A HREF="mailto:A.Weeks@mcc.ac.uk"> -A.Weeks@mcc.ac.uk -</A><br> - Andrew Weeks -<p> - -<A HREF="mailto:babkin@users.sourceforge.net"> -babkin@users.sourceforge.net</A> (preferred)<br> -<A HREF="mailto:sab123@hotmail.com"> -sab123@hotmail.com -</A><br> -<A HREF="http://members.bellatlantic.net/~babkin"> -http://members.bellatlantic.net/~babkin -</A><br> - Sergey Babkin -<p> - -<H4> -SEE ALSO -</H4> -<! --------- -> - -<!-- =section t1 SEE ALSO --> -<!-- ==item * --> -<A HREF="http://ttf2pt1.sourceforge.net"> -http://ttf2pt1.sourceforge.net -</A><br> -<A HREF="http://www.netspace.net.au/~mheath/ttf2pt1/"> -http://www.netspace.net.au/~mheath/ttf2pt1/ -</A><br> - The primary copies of the main page of the project. -<p> -<!-- ==back --> -<!-- =stop --> - -<A HREF="http://www.lcdf.org/~eddietwo/type/"> -http://www.lcdf.org/~eddietwo/type/ -</a><br> - The home page of the Type 1 utilities package. -<p> - -<A HREF="http://www.rightbrain.com/pages/books.html"> -http://www.rightbrain.com/pages/books.html -</a><br> - The first book about PostScript on the Web, "Thinking in PostScript". -<p> - -<A HREF="http://fonts.apple.com/TTRefMan/index.html"> -http://fonts.apple.com/TTRefMan/index.html -</a><br> - The True Type reference manual. -<p> - -<A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/PLRM.pdf"> -http://partners.adobe.com/asn/developer/PDFS/TN/PLRM.pdf -</a><br> - Adobe PostScript reference manual. -<p> - -<A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/T1_SPEC.PDF"> -http://partners.adobe.com/asn/developer/PDFS/TN/T1_SPEC.PDF -</a><br> - Specification of the Type 1 font format. -<p> - -<A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/5015.Type1_Supp.pdf"> -http://partners.adobe.com/asn/developer/PDFS/TN/5015.Type1_Supp.pdf -</a><br> - The Type 1 font format supplement. -<p> - -<A HREF="http://partners.adobe.com/asn/developer/PDFS/TN/5004.AFM_Spec.pdf"> -http://partners.adobe.com/asn/developer/PDFS/TN/5004.AFM_Spec.pdf -</A><BR> - Specification of the Adobe font metrics file format. -<p> - -<A HREF="http://www.cs.wpi.edu/~matt/courses/cs563/talks/surface/bez_surf.html"> -http://www.cs.wpi.edu/~matt/courses/cs563/talks/surface/bez_surf.html -</A><BR> -<A HREF="http://www.cs.wpi.edu/~matt/courses/cs563/talks/curves.html"> -http://www.cs.wpi.edu/~matt/courses/cs563/talks/curves.html -</A><BR> - Information about the Bezier curves. -<p> - -<A HREF="http://www.neuroinformatik.ruhr-uni-bochum.de/ini/PEOPLE/rmz/t1lib/t1lib.html"> -http://www.neuroinformatik.ruhr-uni-bochum.de/ini/PEOPLE/rmz/t1lib/t1lib.html -</A><br> - A stand-alone library supporting the Type1 fonts. Is neccessary - to compile the programs <tt>other/cmpf</tt> and <tt>other/dmpf</tt>. -<p> - -<A HREF="http://www.freetype.org"> -http://www.freetype.org -</A><br> - A library supporting the TTF fonts. Also many useful TTF programs - are included with it. -<p> - -<A HREF="http://heliotrope.homestead.com/files/printsoft.html"> -http://heliotrope.homestead.com/files/printsoft.html -</A><br> - Moses Gold's collection of links to printing software. -<p> - -<A HREF="http://linuxartist.org/fonts/"> -http://linuxartist.org/fonts/ -</A><br> - Collection of font-related links. -<p> - -<HR> -<HR> -<! ----------------------------------------------------------------------- ----------------------------------------------------------------------- -> - -Following is the Readme of <tt>ttf2pfa</tt> (true type to type 3 font converter) It -covers other issues regarding the use of this software. Please note that -although <tt>ttf2pfa</tt> is a public domain software, <tt>ttf2pt1</tt> -is instead covered by an Open Source license. See the <tt>COPYRIGHT</tt> -file for details. -<p> - -Please note also that <tt>ttf2pfa</tt> has not been maintained for a long time. -All of its functionality has been integrated into <tt>ttf2pt1</tt> and all the -development moved to <tt>ttf2pt1</tt>, including Andrew Weeks, the author of -<tt>ttf2pfa</tt>. <tt>Ttf2pfa</tt> is provided for historical reasons only. Please use -<tt>ttf2pt1</tt> instead. - -<HR> -<! ----------------------------------------------------------------------- -> - -<H3> -True Type to Postscript Font converter -</H3> -<! --------------------------------------- -> - -My mind is still reeling from the discovery that I was able to write -this program. What it does is it reads a Microsoft TrueType font and -creates a Postscript font. '<I>_A_</I> postscript font', that is, not necessarily -the same font, you understand, but a fair imitation. -<p> - -Run it like this: -<p> - -<blockquote><tt> - ttf2pfa fontfile.ttf fontname -</tt></blockquote> -<p> - -The first parameter is the truetype filename, the second is a stem for -the output file names. The program will create a <tt>fontname.pfa</tt> containing -the Postscript font and a <tt>fontname.afm</tt> containing the metrics. -<p> - -The motivation behind this is that in Linux if you do not have a -Postscript printer, but only some other printer, you can only print -Postscript by using Ghostscript. But the fonts that come with -Ghostscript are very poor (they are converted from bitmaps and look -rather lumpy). This is rather frustrating as the PC running Linux -probably has MS-Windows as well and will therefore have truetype fonts, -but which are quite useless with Linux, X or Ghostscript. -<p> - -The program has been tested on over a hundred different TrueType fonts -from various sources, and seems to work fairly well. The converted -characters look OK, and the program doesn't seem to crash any more. I'm -not sure about the AFM files though, as I have no means to test them. -<p> - -The fonts generated will not work with X, as the font rasterizer that -comes with X only copes with Type 1 fonts. If I have the time I may -modify ttf2pfa to generate Type 1s. -<p> - -<H4> -Copyright issues -</H4> -<! ----------------- -> - -I am putting this program into the public domain, so don't bother -sending me any money, I'd only have to declare it for income tax. -<p> - -Copyright on fonts, however, is a difficult legal question. Any -copyright statements found in a font will be preserved in the output. -Whether you are entitled to translate them at all I don't know. -<p> - -If you have a license to run a software package, like say MS-Windows, on -your PC, then you probably have a right to use any part of it, including -fonts, on that PC, even if not using that package for its intended -purpose. -<p> - -I am not a lawyer, however, so this is not a legal opinion, and may be -garbage. -<p> - -There shouldn't be a any problem with public domain fonts. -<p> - -<H4> -About the Program -</H4> -<! ------------------ -> - -It was written in C on a IBM PC running Linux. -<p> - -The TrueType format was originally developed by Apple for the MAC, which -has opposite endianness to the PC, so to ensure compatibility 16 and 32 -bit fields are the wrong way round from the PC's point of view. This is -the reason for all the 'ntohs' and 'ntohl' calls. Doing it this way -means the program will also work on big-endian machines like Suns. -<p> - -I doubt whether it will work on a DOS-based PC though. -<p> - -The program produces what technically are Type 3 rather than Type 1 -fonts. They are not compressed or encrypted and are plain text. This is -so I (and you) can see what's going on, and (if you're a Postscript guru -and really want to) can alter the outlines. -<p> - -I only translate the outlines, not the 'instructions' that come with -them. This latter task is probably virtually impossible anyway. TrueType -outlines are B-splines rather than the Bezier curves that Postscript -uses. I believe that my conversion algorithm is reasonably correct, if -nothing else because the characters look right. -<p> - -<H4> -Problems that may occur -</H4> -<! ------------------------ -> - -Most seriously, very complex characters (with lots of outline segments) -can make Ghostscript releases 2.x.x fail with a 'limitcheck' error. It -is possible that this may happen with some older Postscript printers as -well. Such characters will be flagged by the program and there are -basically two things you can do. First is to edit the <tt>.pfa</tt> file to -simplify or remove the offending character. This is not really -recommended. The second is to use Ghostscript release 3, if you can get -it. This has much larger limits and does not seem to have any problems -with complex characters. -<p> - -Then there are buggy fonts (yes, a font can have bugs). I try to deal -with these in as sane a manner as possible, but it's not always -possible. -<p> - -<H4> -Encodings -</H4> -<! ---------- -> - -A postscript font must have a 256 element array, called an encoding, -each element of which is a name, which is also the name of a procedure -contained within the font. The 'BuildChar' command takes a byte and uses -it to index the encoding array to find a character name, and then looks -that up in the font's procedure table find the commands to draw the -glyph. However, not all characters need be in the encoding array. Those -that are not cannot be drawn (at least not using 'show'), however it is -possible to 're-encode' the font to enable these characters. There are -several standard encodings: Adobe's original, ISO-Latin1 and Symbol -being the most commonly encountered. -<p> - -TrueType fonts are organised differently. As well as the glyph -descriptions there are a number of tables. One of these is a mapping -from a character set into the glyph array, and another is a mapping from -the glyph array into a set of Postscript character names. The problems -are: -<p> - 1) Microsoft uses Unicode, a 16-bit system, to encode the font. -<br> - 2) that more than one glyph is given the same Postscript name. -<p> - -I deal with (1) by assuming a Latin1 encoding. The MS-Windows and -Unicode character sets are both supersets of ISO-8859-1. This usually -means that most characters will be properly encoded, but you should be -warned that some software may assume that fonts have an Adobe encoding. -Symbol, or Dingbat, fonts are in fact less of a problem, as they have -private encodings starting at 0xF000. It is easy to just lose the top -byte. -<p> - -Postscript fonts can be re-encoded, either manually, or by software. -Groff, for example, generates postscript that re-encodes fonts with the -Adobe encoding. The problem here is that not all characters in the Adobe -set are in the MS-Windows set. In particular there are no fi and fl -ligatures. This means that conversions of the versions of -Times-New-Roman and Arial that come with MS-Windows cannot be used -blindly as replacements for Adobe Times-Roman and Helvetica. You can get -expanded versions of MS fonts from Microsoft's web site which do contain -these ligatures (and a lot else besides). -<p> - -I deal with (2) by creating new character names. This can be error-prone -because I do not know which of them is the correct glyph to give the -name to. Some (buggy) fonts have large numbers of blank glyphs, all with -the same name. -<p> - -(almost every TrueType font has three glyphs called <tt>.notdef</tt>, one of them -is usually an empty square shape, one has no outline and has zero width, -and one has no outline and a positive width. This example is not really -a problem with well formed fonts since the <tt>.notdef</tt> characters are only -used for unprintable characters, which shouldn't occur in your documents -anyway). -<p> -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/app/RPM/ttf2pt1.spec.src b/Build/source/texk/ttf2pt1/app/RPM/ttf2pt1.spec.src deleted file mode 100644 index 31fc984372d..00000000000 --- a/Build/source/texk/ttf2pt1/app/RPM/ttf2pt1.spec.src +++ /dev/null @@ -1,40 +0,0 @@ -Summary: TrueType to Adobe Type 1 font converter -Name: ttf2pt1 -Version: XXX -Release: 1jv -Source: %{name}-%{version}.tgz -Copyright: Distributable -Group: Utilities/Printing -BuildRoot: /var/tmp/ttf2pt1 - -%description - * True Type Font to Adobe Type 1 font converter - * By Mark Heath <mheath@netspace.net.au> - * Based on ttf2pfa by Andrew Weeks <ccsaw@bath.ac.uk> - * With help from Frank M. Siegert <fms@this.net> - -%prep -%setup - -%build -make all - -%install -rm -fr $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT/usr/local/bin -mkdir -p $RPM_BUILD_ROOT/usr/local/share/%{name} -mkdir -p $RPM_BUILD_ROOT/usr/local/doc - -install -s -m 0555 ttf2pt1 $RPM_BUILD_ROOT/usr/local/bin -install -m 0555 scripts/* $RPM_BUILD_ROOT/usr/local/share/%{name} -chmod 0444 $RPM_BUILD_ROOT/usr/local/share/%{name}/convert.cfg.sample - -%clean -rm -rf $RPM_BUILD_ROOT - -%files -%defattr(644, root, root, 755) -%doc README README.html INSTALL INSTALL.html -/usr/local/bin/ttf2pt1 -/usr/local/share/%{name} - diff --git a/Build/source/texk/ttf2pt1/app/X11/README.html b/Build/source/texk/ttf2pt1/app/X11/README.html deleted file mode 100644 index 322a01e9df1..00000000000 --- a/Build/source/texk/ttf2pt1/app/X11/README.html +++ /dev/null @@ -1,41 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -Recommended patches for the X11 font library -</TITLE> -</HEAD> -<BODY> -<H2> -Recommended patches for the X11 font library -</H2> - -by Sergey Babkin -<babkin@bellatlantic.net>, <sab123@hotmail.com> -<p> - -These are patches for XFree86 versions 3.3.4 and 3.9 -to fix a few known problems with big Type1 fonts and -with strange handling of the standard stem width table. -The patch for XFree86 3.3.4 probably may be easily -installed on any other distribution of X11. -They are supposed to be installed in the subdirectory -<br> - - <tt>xc/lib/font/Type1</tt> -<br> - -of the X11 source tree and after that the font library, -font server and X server should be rebuilt. -<p> - -Sorry that the description has so little details but if -you know how to build X11 then this is enough, otherwise -any more details won't help much. -<p> - -The patches have been submitted to the XFree86 project, -hope they will be included in some next release of XFree86 -and X11. -<p> -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/app/X11/t1-xf86.334.patch b/Build/source/texk/ttf2pt1/app/X11/t1-xf86.334.patch deleted file mode 100644 index 31e98e2d01b..00000000000 --- a/Build/source/texk/ttf2pt1/app/X11/t1-xf86.334.patch +++ /dev/null @@ -1,199 +0,0 @@ -*** fontfcn.c 2000/01/02 18:55:56 1.1 ---- fontfcn.c 2000/01/02 19:00:17 -*************** -*** 33,38 **** ---- 33,39 ---- - #include <string.h> - #include "t1imager.h" - #include "util.h" -+ #include "t1stdio.h" - #include "fontfcn.h" - #include "fontmisc.h" - -*************** -*** 117,132 **** - resetFont(env); - /* This will load the font into the FontP */ - rcode = scan_font(FontP); -! if (rcode == SCAN_OUT_OF_MEMORY) { - /* free the memory and start again */ - xfree(vm_base); - if (!(initFont(vm_size * 2))) { - /* we are really out of memory */ - return(SCAN_OUT_OF_MEMORY); - } - resetFont(env); - rcode = scan_font(FontP); -- /* only double the memory once, then report error */ - } - return(rcode); - } ---- 118,151 ---- - resetFont(env); - /* This will load the font into the FontP */ - rcode = scan_font(FontP); -! if (rcode != SCAN_OUT_OF_MEMORY) -! return rcode; -! -! if (T1FileSize > VM_SIZE) { -! /* use the file size as estimation */ -! - /* free the memory and start again */ - xfree(vm_base); -+ if (!(initFont(T1FileSize))) { -+ /* we are really out of memory */ -+ return(SCAN_OUT_OF_MEMORY); -+ } -+ resetFont(env); -+ rcode = scan_font(FontP); -+ if (rcode != SCAN_OUT_OF_MEMORY) -+ return rcode; -+ } -+ -+ /* if still not enough, increase up to maximum */ -+ while (rcode == SCAN_OUT_OF_MEMORY -+ && vm_size <= VM_SIZE_MAX/2 ) { -+ xfree(vm_base); - if (!(initFont(vm_size * 2))) { - /* we are really out of memory */ - return(SCAN_OUT_OF_MEMORY); - } - resetFont(env); - rcode = scan_font(FontP); - } - return(rcode); - } -*** paths.c 2000/01/02 18:55:56 1.1 ---- paths.c 2000/01/02 18:56:27 -*************** -*** 584,590 **** - CONCAT(before, r); - r = before; - } -! else - r->context = after->context; - if (after != NULL) - CONCAT(r, after); ---- 584,590 ---- - CONCAT(before, r); - r = before; - } -! else if (after != NULL) - r->context = after->context; - if (after != NULL) - CONCAT(r, after); -*** scanfont.c 2000/01/02 18:55:56 1.1 ---- scanfont.c 2000/01/02 18:56:26 -*************** -*** 1383,1388 **** ---- 1383,1390 ---- - /* point to name and search for leading blanks */ - nameP= FontP->FontFileName.data.nameP; - namelen = FontP->FontFileName.len; -+ if (namelen > (128-1) ) /* prevent getting out of filename[] */ -+ namelen = (128-1); - while (nameP[0] == ' ') { - nameP++; - namelen--; -*** t1io.c 2000/01/02 18:55:56 1.1 ---- t1io.c 2000/01/02 18:56:32 -*************** -*** 54,59 **** ---- 54,62 ---- - /* Our single FILE structure and buffer for this package */ - STATIC F_FILE TheFile; - STATIC unsigned char TheBuffer[F_BUFSIZ]; -+ -+ /* the size of the file we read */ -+ int T1FileSize; - - /* Our routines */ - F_FILE *T1Open(), *T1Eexec(); -*************** -*** 87,92 **** ---- 90,96 ---- - of->flags = 0; - of->error = 0; - haveextrach = 0; -+ T1FileSize = 0; - return &TheFile; - } /* end Open */ - -*************** -*** 165,171 **** ---- 169,181 ---- - int T1Close(f) /* Close the file */ - F_FILE *f; /* Stream descriptor */ - { -+ int rc; -+ - if (f->b_base == NULL) return 0; /* already closed */ -+ -+ while ( (rc = read(f->fd, f->b_base, F_BUFSIZ)) >0) -+ T1FileSize += rc; /* count the rest of the file */ -+ - f->b_base = NULL; /* no valid stream */ - return close(f->fd); - } /* end Close */ -*************** -*** 289,294 **** ---- 299,305 ---- - } - } - f->b_ptr = f->b_base; -+ T1FileSize += rc; /* remember how many bytes we have */ - if (Decrypt) rc = T1Decrypt(f->b_base, rc); - return rc; - } /* end Fill */ -*** type1.c 2000/01/02 18:55:56 1.1 ---- type1.c 2000/01/02 18:56:27 -*************** -*** 365,378 **** - /* ADJUST STEM WIDTHS */ - /**********************/ - -! widthdiff = 0.0; - - /* Find standard stem with smallest width difference from this stem */ - if (stems[stemno].vertical) { /* vertical stem */ - if (blues->StdVW != 0) /* there is an entry for StdVW */ - widthdiff = blues->StdVW - stemwidth; - for (i = 0; i < blues->numStemSnapV; ++i) { /* now look at StemSnapV */ -! if (blues->StemSnapV[i] - stemwidth < widthdiff) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapV[i] - stemwidth; - } ---- 365,380 ---- - /* ADJUST STEM WIDTHS */ - /**********************/ - -! /* a big value to not compete with StemSnap */ -! /* if there is no StemSnap it will be caught later */ -! widthdiff = onepixel*2; - - /* Find standard stem with smallest width difference from this stem */ - if (stems[stemno].vertical) { /* vertical stem */ - if (blues->StdVW != 0) /* there is an entry for StdVW */ - widthdiff = blues->StdVW - stemwidth; - for (i = 0; i < blues->numStemSnapV; ++i) { /* now look at StemSnapV */ -! if ( FABS(blues->StemSnapV[i] - stemwidth) < FABS(widthdiff) ) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapV[i] - stemwidth; - } -*************** -*** 380,386 **** - if (blues->StdHW != 0) /* there is an entry for StdHW */ - widthdiff = blues->StdHW - stemwidth; - for (i = 0; i < blues->numStemSnapH; ++i) { /* now look at StemSnapH */ -! if (blues->StemSnapH[i] - stemwidth < widthdiff) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapH[i] - stemwidth; - } ---- 382,388 ---- - if (blues->StdHW != 0) /* there is an entry for StdHW */ - widthdiff = blues->StdHW - stemwidth; - for (i = 0; i < blues->numStemSnapH; ++i) { /* now look at StemSnapH */ -! if ( FABS(blues->StemSnapH[i] - stemwidth) < FABS(widthdiff) ) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapH[i] - stemwidth; - } diff --git a/Build/source/texk/ttf2pt1/app/X11/t1-xf86.39.patch b/Build/source/texk/ttf2pt1/app/X11/t1-xf86.39.patch deleted file mode 100644 index 44d32ce57f1..00000000000 --- a/Build/source/texk/ttf2pt1/app/X11/t1-xf86.39.patch +++ /dev/null @@ -1,252 +0,0 @@ -*** scanfont.c 1999/12/27 00:34:02 1.1 ---- scanfont.c 1999/12/27 00:35:34 -*************** -*** 2234,2239 **** ---- 2234,2241 ---- - /* point to name and search for leading blanks */ - nameP= FontP->FontFileName.data.nameP; - namelen = FontP->FontFileName.len; -+ if (namelen > (128-1) ) /* prevent getting out of filename[] */ -+ namelen = (128-1); - while (nameP[0] == ' ') { - nameP++; - namelen--; -*** paths.c 1999/12/27 00:37:01 1.1 ---- paths.c 1999/12/27 00:37:43 -*************** -*** 583,589 **** - CONCAT(before, r); - r = before; - } -! else - r->context = after->context; - if (after != NULL) - CONCAT(r, after); ---- 583,589 ---- - CONCAT(before, r); - r = before; - } -! else if (after != NULL) - r->context = after->context; - if (after != NULL) - CONCAT(r, after); -*** type1.c 1999/12/27 00:38:16 1.1 ---- type1.c 1999/12/27 01:08:02 -*************** -*** 399,412 **** - /* ADJUST STEM WIDTHS */ - /**********************/ - -! widthdiff = 0.0; - - /* Find standard stem with smallest width difference from this stem */ - if (stems[stemno].vertical) { /* vertical stem */ - if (blues->StdVW != 0) /* there is an entry for StdVW */ - widthdiff = blues->StdVW - stemwidth; - for (i = 0; i < blues->numStemSnapV; ++i) { /* now look at StemSnapV */ -! if (blues->StemSnapV[i] - stemwidth < widthdiff) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapV[i] - stemwidth; - } ---- 399,414 ---- - /* ADJUST STEM WIDTHS */ - /**********************/ - -! /* a big value to not compete with StemSnap */ -! /* if there is no StemSnap it will be caught later */ -! widthdiff = onepixel*2; - - /* Find standard stem with smallest width difference from this stem */ - if (stems[stemno].vertical) { /* vertical stem */ - if (blues->StdVW != 0) /* there is an entry for StdVW */ - widthdiff = blues->StdVW - stemwidth; - for (i = 0; i < blues->numStemSnapV; ++i) { /* now look at StemSnapV */ -! if ( FABS(blues->StemSnapV[i] - stemwidth) < FABS(widthdiff) ) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapV[i] - stemwidth; - } -*************** -*** 414,420 **** - if (blues->StdHW != 0) /* there is an entry for StdHW */ - widthdiff = blues->StdHW - stemwidth; - for (i = 0; i < blues->numStemSnapH; ++i) { /* now look at StemSnapH */ -! if (blues->StemSnapH[i] - stemwidth < widthdiff) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapH[i] - stemwidth; - } ---- 416,422 ---- - if (blues->StdHW != 0) /* there is an entry for StdHW */ - widthdiff = blues->StdHW - stemwidth; - for (i = 0; i < blues->numStemSnapH; ++i) { /* now look at StemSnapH */ -! if ( FABS(blues->StemSnapH[i] - stemwidth) < FABS(widthdiff) ) - /* this standard width is the best match so far for this stem */ - widthdiff = blues->StemSnapH[i] - stemwidth; - } -*** t1io.c 2000/01/01 00:41:44 1.1 ---- t1io.c 2000/01/01 01:23:38 -*************** -*** 78,83 **** ---- 78,86 ---- - /* Our single FILE structure and buffer for this package */ - STATIC F_FILE TheFile; - STATIC unsigned char TheBuffer[F_BUFSIZ]; -+ -+ /* the size of the file we read */ -+ int T1FileSize; - - /* Our routines */ - F_FILE *T1Open(), *T1Eexec(); -*************** -*** 118,123 **** ---- 121,127 ---- - of->flags = 0; - of->error = 0; - haveextrach = 0; -+ T1FileSize = 0; - return &TheFile; - } /* end Open */ - -*************** -*** 196,202 **** ---- 200,212 ---- - int T1Close(f) /* Close the file */ - F_FILE *f; /* Stream descriptor */ - { -+ int rc; -+ - if (f->b_base == NULL) return 0; /* already closed */ -+ -+ while ( (rc = read(f->fd, f->b_base, F_BUFSIZ)) >0) -+ T1FileSize += rc; /* count the rest of the file */ -+ - f->b_base = NULL; /* no valid stream */ - return close(f->fd); - } /* end Close */ -*************** -*** 381,386 **** ---- 391,397 ---- - } - } - f->b_ptr = f->b_base; -+ T1FileSize += rc; /* remember how many bytes we have */ - if (Decrypt) rc = T1Decrypt(f->b_base, rc); - return rc; - } /* end Fill */ -*** t1stdio.h 2000/01/01 00:43:38 1.1 ---- t1stdio.h 2000/01/01 01:24:19 -*************** -*** 73,78 **** ---- 73,79 ---- - - extern FILE *T1Open(), *T1eexec(); - extern int T1Close(), T1Ungetc(), T1Read(); -+ extern int T1FileSize; - - #undef fclose - #undef fopen -*** fontfcn.c 2000/01/01 00:07:54 1.1 ---- fontfcn.c 2000/01/01 01:36:02 -*************** -*** 57,62 **** ---- 57,63 ---- - #endif - #include "t1imager.h" - #include "util.h" -+ #include "t1stdio.h" - #ifdef BUILDCID - #include "range.h" - #include "fontmisc.h" -*************** -*** 300,333 **** - resetFont(env); - /* This will load the font into the FontP */ - rcode = scan_font(FontP); -! if (rcode == SCAN_OUT_OF_MEMORY) { - /* free the memory and start again */ - #ifdef BUILDCID - /* xfree(vm_base); */ - #else - xfree(vm_base); - #endif - if (!(initFont(vm_size * 2))) { - /* we are really out of memory */ - return(SCAN_OUT_OF_MEMORY); - } - resetFont(env); - rcode = scan_font(FontP); -- #ifdef BUILDCID -- /* only double the memory twice, then report error */ -- if (rcode == SCAN_OUT_OF_MEMORY) { -- /* free the memory and start again */ -- /* xfree(vm_base) */ -- if (!(initFont(vm_size * 2))) { -- /* we are really out of memory */ -- return(SCAN_OUT_OF_MEMORY); -- } -- resetFont(env); -- rcode = scan_font(FontP); -- } -- #else -- /* only double the memory once, then report error */ -- #endif - } - return(rcode); - } ---- 301,342 ---- - resetFont(env); - /* This will load the font into the FontP */ - rcode = scan_font(FontP); -! if (rcode != SCAN_OUT_OF_MEMORY) -! return rcode; -! -! if (T1FileSize > VM_SIZE) { -! /* use the file size as estimation */ -! - /* free the memory and start again */ - #ifdef BUILDCID - /* xfree(vm_base); */ - #else - xfree(vm_base); - #endif -+ if (!(initFont(T1FileSize))) { -+ /* we are really out of memory */ -+ return(SCAN_OUT_OF_MEMORY); -+ } -+ resetFont(env); -+ rcode = scan_font(FontP); -+ if (rcode != SCAN_OUT_OF_MEMORY) -+ return rcode; -+ } -+ -+ /* if still not enough, increase up to maximum */ -+ while (rcode == SCAN_OUT_OF_MEMORY -+ && vm_size <= VM_SIZE_MAX/2 ) { -+ #ifdef BUILDCID -+ /* xfree(vm_base); */ -+ #else -+ xfree(vm_base); -+ #endif - if (!(initFont(vm_size * 2))) { - /* we are really out of memory */ - return(SCAN_OUT_OF_MEMORY); - } - resetFont(env); - rcode = scan_font(FontP); - } - return(rcode); - } -*** util.h 2000/01/01 00:40:11 1.1 ---- util.h 2000/01/01 01:29:18 -*************** -*** 83,88 **** ---- 83,92 ---- - #else - #define VM_SIZE (50*1024) - #endif -+ -+ /* this is the maximal permitted memory size */ -+ #define VM_SIZE_MAX (1024*1024) -+ - /***================================================================***/ - - #ifndef MIN diff --git a/Build/source/texk/ttf2pt1/app/netscape/Makefile b/Build/source/texk/ttf2pt1/app/netscape/Makefile deleted file mode 100644 index 048117b6391..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/Makefile +++ /dev/null @@ -1,2 +0,0 @@ -nsfix: nsfix.c - $(CC) $(CFLAGS) -o nsfix nsfix.c $(LDFLAGS) diff --git a/Build/source/texk/ttf2pt1/app/netscape/README.html b/Build/source/texk/ttf2pt1/app/netscape/README.html deleted file mode 100644 index 1e8961bb985..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/README.html +++ /dev/null @@ -1,242 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -Installing the fonts in Netscape Navigator -</TITLE> -</HEAD> -<BODY> -<H2> -Installing the fonts in Netscape Navigator -</H2> - -<tt> -by Sergey Babkin -<babkin@bellatlantic.net>, <sab123@hotmail.com> -</tt> -<p> - -This is a collection of supplements to Netscape 4.x on -Unix. Probably they will also work with Netscape 3.x, -possilby with minor modifications. -<p> - -<h4><tt> - Makefile<br> - nsfix.c<br> - psfonts.cf -</tt></h4> -<p> - -This is a program that allows to substitute the font metrics -of any PostScript font in Netscape. -<p> - -When Netscape prints the files to PostScript format it uses a -built-in table of character widths. It prints all the fixed-width -characters in the typeface "Courier" and all the variable-width -characters in the typeface "Times". And if the PostScript printer -has these fonts by Adobe then everything goes fine because -the tables inside Netscape are generated from the Adobe fonts. -But if the fonts are different (say, those supplied with Ghostscripts -or the fonts with non-latin characters) then the result is quite -ugly. This program allows to replace the width tables inside -the Netscape executable with the tables for any given font. -The only problem is that Netscape can hold only one set of tables -at once. So if you want to print with different fonts (say, -for different languages or encodings) you will have to make -multiple copies of the executable, tune each of them for its -font and then run them separately. -<p> - -I tried to make the program as machine-independent as possible. -But because it patches the binary files it still has the dependencies -on hardware. The default version as supplied was designed for -Intel x86 machines but it should work OK on any machine -with 32-bit CPU and 4Kbyte (or less) page size. If it can't -find the tables matching the font names on some other architecture -the first thing to try would be reduce the `<tt>PAGEBITS</tt>' definition -in the source code. On the machines with non-page-aligned structure -of executables it won't work at all. I don't know whether would -it work on the 64-bit machines. This may depend on whether the -Netscape executable was compiled in 32-bit or 64-bit mode. For -the 64-bit executables it may be neccessary to change the definition -of the type `<tt>tptr</tt>' to an 8-byte integer type (probably `<tt>long</tt>' -or `<tt>long long</tt>'). Also must be re-compiled for patching of the -Netscape binary for each particular machine architecture because -it assumes the byte order of the current machine. -<p> - -It might be possible to create a program that would patch -a running Netscape binary on the fly, that would allow -changing the printing fonts as neccessary when Netscape is -running. But this would be even more platform-dependent, -so I don't feel any enthusiasm about doing that. -<p> - -I have tested the program on the Intel machines, Netscape -4.08 and 4.7, OS FreeBSD (both a.out and ELF formats of the -Netscape binary) and UnixWare. -<p> - -After all these scary issues are resolved the compiling -is easy: just run `<tt>make</tt>'. -<p> - -To command to patch the Netscape is: -<p> -<tt> - ./nsfix <i><netscape-binary> <config-file></i> -</tt> -<p> - -Please make a copy of the original Netscape binary before -patching in case anything goes wrong. Patch the copy, test -that it works OK and only then install it. The configuration -file describes the fonts that are to be used. An example -is provided in the file psfonts.cf. -<p> - -Each line in the configuration file consists of 4 -columns: -<p> - -<tt><i> -<PS_font_name> <font_base_file> <suffix_afm> <suffix_font> -</i></tt> -<p> - -For example, the following line from my configuration file: -<p> - -<tt> -Courier /usr/lib/X11/fonts/ttf/cokoi8n.koi8-r .afm .pfa -</tt> -<p> - -says that the font `Courier' will be replaced with the -font taken from the file `<tt>/usr/lib/X11/fonts/ttf/cokoi8n.koi8-r.pfa</tt>' -and the metrics for that font will be taken from the file -`<tt>/usr/lib/X11/fonts/ttf/cokoi8n.koi8-r.afm</tt>' . -<p> - -One more caveat: the new font must have a proper encoding -table. Some fonts contain characters for multiple encodings -hoping that the program wil re-encode them as neccessary. -This won't work in this case, only the primary encoding table -of the font will be used. -<p> - -<h4><tt> - nsfilter<br> - nsprint<br> - psfonts.cf -</tt></h4> -<p> - -These are the filters for printing from Netscape. -<p> - -Changing the metrics is not the end of the story. This will -provide proper placement of the characters but not the -characters themselves. There are a few ways to provide -the characters: -<p> - -First, if you use GhostScript you may configure proper -aliases in the GhostScript configuration file. We will -consider this variant trivial and won't discuss it furter -except for one caveat: Netscape tries to re-encode the -fonts per the ISO Latin-1 encoding. If the primary encoding -of the font is different this cause unexpected effects. -So you still may consider using the filters (at least in a -simplified form) to solve this problem. -<p> - -Second, load the fonts right into your printer. This is -very much like configuring GhostScript. -<p> - -Third, use the provided filters. The script `<tt>nsfilter</tt>' -reads the output of Netscape on its standard input and -puts the result to its standard output. It uses the same -configuration file `<tt>psfonts.cf</tt>' as `<tt>nsfix</tt>'. First it -looks for the configuration file in the user's home -directory (<tt>$HOME/.netscape/psfonts.cf</tt>) and if the -file it not there then the second guess is the system-wide -configuration file <tt>/usr/local/etc/psfonts.cf</tt>. The -script inserts the fonts into the output and also -removes the Netscape's experiments with the encodings. -<p> - -`<tt>nsfilter</tt>' is generally intended to be ran by user, not by the -printing subsystem. The reason is that the user may have -changed fonts in his Netscape and the printing subsystem -would have no way to access user's configuration file. -But if all the users are using the same fonts then it -may be incorporated into the printing subsystem and use -the system-wide configuration file. -<p> - -The script `<tt>nsprint</tt>' is purely for convenience, to type it -as a printing command in the Netscape printing window. -It just pipelines the data through `<tt>nsfilter</tt>' to the -printing program which also gets all the arguments. Please -note that the SystemV-style and BSD-style systems use different -printing programs (although they commonly provide compatibility -with the other style too). The script tries to guess the -type of system and use its native print program, `<tt>lp</tt>' or -`<tt>lpr</tt>'. But in case it guesses wrong you may want -to change this in the script. Also if the printer does not support -PostScript directly this script may be a good place to -insert a call to GhostScript. -<p> - -<h4><tt> - notscape<br> - fontsz.cf -</tt></h4> -<p> - -Netscape on Unix has a very annoying "feature", it does -not remember the desired base size of the scalable screen -fonts and always resets it to 12.0 points. Even if the size -is changed manually in its preferences file, Netscape -forgets it after it exits. -<p> - -So my solution was to write a program which would change -the size to my favorite one every time right before -starting Netscape. `<tt>notscape</tt>' is exactly such a program, -it sets the font sizes an then transparently executes -netscape. It takes the font sizes from the file -`<tt>$HOME/.netscape/fontsz.cf</tt>' . An example of such file -is provided. The format of the file is quite self-explanatory, -for example the lines -<p> - -<tt> -fixed-koi8-r 140<br> -prop-koi8-r 150 -</tt> -<p> - -mean "set the size of the fixed-width screen font in the -encoding koi8-r to 14.0 points; set the size of the proportional -(variable-width) font in the encoding koi8-r to 15.0 points". -<p> - - -<h3><tt> - nspr -</tt><br> -by Zvezdan Petkovic</h3> -<p> - -To print from Netscape, I usually print to the Postscript file first. -Then I use this small script to change the names of Times and Courier fonts -in the file and remove `/Encoding' lines. After that the file can be -sent to printer. -<p> -</BODY> -</HTML> - diff --git a/Build/source/texk/ttf2pt1/app/netscape/fontsz.cf b/Build/source/texk/ttf2pt1/app/netscape/fontsz.cf deleted file mode 100644 index acce79c2266..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/fontsz.cf +++ /dev/null @@ -1,8 +0,0 @@ -fixed-koi8-r 150 -prop-koi8-r 150 -fixed-iso-8859-5 150 -prop-iso-8859-5 150 -fixed-iso-8859-1 150 -prop-iso-8859-1 150 -fixed-x-user-defined 150 -prop-x-user-defined 150 diff --git a/Build/source/texk/ttf2pt1/app/netscape/notscape b/Build/source/texk/ttf2pt1/app/netscape/notscape deleted file mode 100644 index 67d87bcbb51..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/notscape +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -NDIR=$HOME/.netscape -PFILE=$NDIR/preferences.js -CFFILE=$NDIR/fontsz.cf -TMPFILE=$NDIR/fontsz.sed - -die() { - echo "notscape: can't $*" >&2 - exit 1 -} - -[ -r $CFFILE ] && { -awk '{ printf("/intl.font_spec_list/s/-[^-]*-\\([^-]*\\)-%s,/-%s-\\1-%s,/\n", \ - $1, $2, $1); }' <$CFFILE >$TMPFILE - -cp $PFILE $PFILE.old || die "save old pref file" -sed -f $TMPFILE <$PFILE.old >$PFILE.new || die "create new pref file" -[ -s $PFILE.new ] || die "create new pref file" - -mv $PFILE.new $PFILE || die "install new pref file" - -} - -exec netscape -no-about-splash "$@" diff --git a/Build/source/texk/ttf2pt1/app/netscape/nsfilter b/Build/source/texk/ttf2pt1/app/netscape/nsfilter deleted file mode 100644 index 77b5b64bef5..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/nsfilter +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh -CONFLOCAL=$HOME/.netscape/psfonts.cf -CONFGLOBAL=/usr/local/etc/nspsfonts.cf - -if [ -r "$CONFLOCAL" ] -then - CONF="$CONFLOCAL" -else - CONF="$CONFGLOBAL" -fi - -grep -v "^#" <$CONF | grep -v "^$" | while : -do { - read nsname base afm pfa x - [ -z "$nsname" ] && break; - - fname=`awk '/^FontName/ {print $2;}' <$base$afm` - - cat $base$pfa - echo "/$nsname /$fname findfont definefont" - -} done - -grep -v "^ /Encoding isolatin1encoding def$" | egrep -v '^newpath .* closepath clip newpath$' diff --git a/Build/source/texk/ttf2pt1/app/netscape/nsfix.c b/Build/source/texk/ttf2pt1/app/netscape/nsfix.c deleted file mode 100644 index 6aa47c91b53..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/nsfix.c +++ /dev/null @@ -1,469 +0,0 @@ -/* - * Fix the Netscape executable for specified font widths - * - * (c) 1999 Copyright by Sergey Babkin - * see COPYRIGHT - */ - -#include <sys/types.h> -#include <fcntl.h> -#include <stdio.h> -#include <locale.h> -#include <unistd.h> - -/************************** DEFINES *************************/ - -#undef DEBUG - -/* we can handle at most this many fonts */ -#define MAXFONTS 20 - -/* maximal line buffer size */ -#define MAXLINE 512 - -/* there may be multiple strings with the same contents */ -#define MAXDUPS 10 - -/* file read buffer size */ -#define FILEBF 40960 - -/* bits in the hardware page offset */ -#define BITSPERPAGE 12 - -/* size of page in bytes */ -#define PAGESIZE (1<<BITSPERPAGE) - -/* mask of the in-page offset */ -#define PAGEMASK (PAGESIZE-1) - -/* this is machine-dependent! */ -typedef short t2b; /* 2-byte type */ -typedef int t4b; /* 4-byte type */ -typedef int tptr; /* integer type with the same size as pointer */ - -struct bbox { /* bounding box */ - t2b llx; /* lower-left-x */ - t2b lly; - t2b urx; - t2b ury; /* upper-right-y */ -}; - -struct glyphmetrics { /* metrics of one glyph */ - t2b width; - t2b unknown; - struct bbox bbox; -}; - -struct fontmetrics { /* metrics of the wholefont */ - tptr name; - struct bbox bbox; - t2b underlinepos; - t2b underlinethick; - struct glyphmetrics glyphs[256]; -}; - -struct font { - char nsname[MAXLINE]; /* name in the Netscape binary */ - char afmname[MAXLINE]; /* name of the .afm file */ - char pfaname[MAXLINE]; /* name of the .pfa (or .pfb) file */ - struct fontmetrics metrics; - off_t binoff; /* offset in the binary */ -}; - -#define SCONST(x) (x), ((sizeof (x))-1) - -/************************** GLOBALS *************************/ - -struct font font[MAXFONTS]; -int nfonts=0; - -char msg[MAXLINE]; - -/*************************** PROTOTYPES **********************/ - -void usage(void); -void readconfig( char *fn); -void readmetrics(void); -void replacefonts( char *fn); - -/************************** main ****************************/ - -main(ac, av) - int ac; - char **av; -{ - setlocale(LC_ALL, ""); - - if(ac!=3) { - usage(); exit(1); - } - - readconfig(av[2]); - readmetrics(); - replacefonts( av[1]); -} - -/************************** usage ***************************/ - -void -usage(void) -{ - fprintf(stderr,"Use:\n"); - fprintf(stderr," nsfix <netscape.bin> <config-file>\n"); -} - - -/************************** readconfig **********************/ - -void -readconfig(fn) - char *fn; -{ - char s[MAXLINE]; - char afmsuffix[MAXLINE], pfasuffix[MAXLINE]; - int lineno=0; - FILE *f; - - if(( f=fopen(fn, "r") )==NULL) { - sprintf(msg,"nsfix: open %s",fn); - perror(msg); - exit(1); - } - - while( fgets(s, MAXLINE, f) ) { - lineno++; - if(s[0]=='#' || s[0]=='\n') - continue; - - if(nfonts>=MAXFONTS) { - fprintf(stderr, "nsfix: only %d fonts are supported at once\n", - MAXFONTS); - exit(1); - } - - if( sscanf(s, "%s %s %s %s", font[nfonts].nsname, - font[nfonts].afmname, afmsuffix, pfasuffix) != 4 ) { - fprintf(stderr, "nsfix: syntax error at line %d of %s\n", - lineno, fn); - exit(1); - } - strcpy(font[nfonts].pfaname, font[nfonts].afmname); - strcat(font[nfonts].afmname, afmsuffix); - strcat(font[nfonts].pfaname, pfasuffix); - nfonts++; - } - - if(nfonts==0) { - fprintf(stderr, "nsfix: no fonts are defined in %s\n", fn); - exit(1); - } - fclose(f); -} - -/************************** readmetrics *********************/ - -void -readmetrics(void) -{ - int i; - char s[MAXLINE]; - FILE *f; - int n; - int lineno; - int code, width, llx, lly, urx, ury; - char gn[MAXLINE]; - struct glyphmetrics *gm; - - for(i=0; i<nfonts; i++) { - if(( f=fopen(font[i].afmname, "r") )==NULL) { - sprintf(msg,"nsfix: open %s", font[i].afmname); - perror(msg); - exit(1); - } - lineno=0; - while( fgets(s, MAXLINE, f) ) { - lineno++; - if( !strncmp(s, SCONST("UnderlineThickness ")) ) { - if( sscanf(s, "UnderlineThickness %d", &n) <1) { - fprintf(stderr, "nsfix: weird UnderlineThickness at line %d in %s\n", - lineno, font[i].afmname); - exit(1); - } - font[i].metrics.underlinethick=n; - } else if( !strncmp(s, SCONST("UnderlinePosition ")) ) { - if( sscanf(s, "UnderlinePosition %d", &n) <1) { - fprintf(stderr, "nsfix: weird UnderlinePosition at line %d in %s\n", - lineno, font[i].afmname); - exit(1); - } - font[i].metrics.underlinepos=n; - } else if( !strncmp(s, SCONST("FontBBox ")) ) { - if( sscanf(s, "FontBBox %d %d %d %d", &llx, &lly, &urx, &ury) <4) { - fprintf(stderr, "nsfix: weird FontBBox at line %d in %s\n", - lineno, font[i].afmname); - exit(1); - } - font[i].metrics.bbox.llx=llx; - font[i].metrics.bbox.lly=lly; - font[i].metrics.bbox.urx=urx; - font[i].metrics.bbox.ury=ury; - } else if( !strncmp(s, SCONST("C ")) ) { - if( sscanf(s, "C %d ; WX %d ; N %s ; B %d %d %d %d", - &code, &width, &gn, &llx, &lly, &urx, &ury) <7) - { - fprintf(stderr, "nsfix: weird metrics at line %d in %s\n", - lineno, font[i].afmname); - exit(1); - } - if(code>=32 && code<=255) { - font[i].metrics.glyphs[code].width=width; - font[i].metrics.glyphs[code].bbox.llx=llx; - font[i].metrics.glyphs[code].bbox.lly=lly; - font[i].metrics.glyphs[code].bbox.urx=urx; - font[i].metrics.glyphs[code].bbox.ury=ury; - } - } - } - fclose(f); - } - -#ifdef DEBUG - for(i=0; i<nfonts; i++) { - printf("Font %s\n", font[i].nsname); - for(n=0; n<256; n++) { - gm= &font[i].metrics.glyphs[n]; - printf(" %d w=%4d [%4d %4d %4d %4d]", n, gm->width, - gm->bbox.llx, gm->bbox.lly, gm->bbox.urx, gm->bbox.ury); - printf(" w=0x%04x [0x%04x 0x%04x 0x%04x 0x%04x]\n", gm->width & 0xffff, - gm->bbox.llx & 0xffff, gm->bbox.lly & 0xffff, gm->bbox.urx & 0xffff, gm->bbox.ury & 0xffff); - } - } - - exit(0); -#endif - -} - -/************************** replacefonts ********************/ - -void -replacefonts(fn) - char *fn; -{ - int f; /* don't use stdio */ - char bf[FILEBF]; - char *bfend, *p; - int len; - off_t pos; - - off_t zerooff[MAXFONTS*MAXDUPS]; /* offset of zero strings */ - tptr nameaddr[MAXFONTS*MAXDUPS]; /* name pointers before these zero strings */ - int zeroid[MAXFONTS*MAXDUPS]; /* font number for this zero block */ - int nzeroes; - short matched[MAXFONTS]; /* counters how many matches we have for each requested font */ - struct fontmetrics *fp; - - struct { - int noff; - int nz; - off_t off[MAXDUPS]; /* there may be multiple strings with the same contents */ - } o[MAXFONTS]; - int maxnlen; - int i, j, k, n; - - static struct glyphmetrics gm[32]; /* 0-initialized */ - - - if(( f=open(fn, O_RDWR) )<0) { - sprintf(msg,"nsfix: open %s",fn); - perror(msg); - exit(1); - } - - - /* get the maximal font name length */ - maxnlen=0; - for(i=0; i<nfonts; i++) { - o[i].noff=o[i].nz=0; - matched[i]=0; - len=strlen(font[i].nsname)+1; - if(len>maxnlen) - maxnlen=len; - } - - /* fprintf(stderr,"maxnlen= 0x%x\n", maxnlen); /* */ - /* try to find the literal strings of the font names */ - pos=0; bfend=bf; - while(( len=read(f, bfend, FILEBF-(bfend-bf)) )>=0 ) { - /* fprintf(stderr,"looking at 0x%lx\n", (long)pos); /* */ - /* the last position to check */ - if(len>=maxnlen) - /* leave the rest with the next block */ - bfend+= len-maxnlen; - else { - /* we are very near to the end of file, check - * up to the very last byte */ - bfend+= len-2; - memset(bfend+2, 0, maxnlen); - } - - for(p=bf; p<=bfend; p++) - for(i=0; i<nfonts; i++) - if(!strcmp(font[i].nsname, p) && o[i].noff<MAXDUPS) { - o[i].off[ o[i].noff++ ] = pos + (p-bf); - fprintf(stderr,"found %s at 0x%lx\n", font[i].nsname, (long)pos + (p-bf)); - } - - if(len==0) - break; - - memmove(bf, bfend, maxnlen); - pos+= (bfend-bf); - bfend= (bf+maxnlen); - } - if(len<0) { - sprintf(msg,"nsfix: read %s",fn); - perror(msg); - exit(1); - } - fprintf(stderr,"---\n"); - /* if there are any dups try to resolve them */ - for(i=0; i<nfonts; i++) { - if(o[i].noff==0) { - fprintf(stderr, "nsfix: font %s (%d of %d) is missing in %s\n", - font[i].nsname, i, nfonts, fn); - exit(1); - } - if(o[i].noff!=1) - continue; - /* good, only one entry */ - fprintf(stderr,"found unique %s at 0x%lx\n", font[i].nsname, (long)o[i].off[0] ); - /* if any dupped entry is right after this one then it's good */ - /* if it's farther than PAGESIZE/2 then it's bad */ - pos=o[i].off[0]+strlen(font[i].nsname)+1; - for(j=0; j<MAXFONTS; j++) { - if(o[j].noff<=1) - continue; - for(k=0; k<o[j].noff; k++) { - if(o[j].off[k]==pos) { /* good */ - fprintf(stderr,"got unique %s at 0x%lx\n", font[j].nsname, (long)pos ); - o[j].off[0]=pos; - o[j].noff=1; - break; - } - if(o[j].off[k] < pos - PAGESIZE/2 - || o[j].off[k] > pos + PAGESIZE/2) { /* bad */ - fprintf(stderr, "eliminated %s at 0x%lx\n", font[j].nsname, (long)o[j].off[k] ); - for(n=k+1; n<o[j].noff; n++) - o[j].off[n-1]=o[j].off[n]; - o[j].noff--; - k--; - } - } - if(o[j].noff==1 && j<i) { /* have to revisit this font */ - i=j-1; /* compensate for i++ */ - break; - } - } - } - - - /* try to find the metric tables in the executable */ - if(lseek(f, (off_t)0, SEEK_SET)<0) { - sprintf(msg,"nsfix: rewind %s",fn); - perror(msg); - exit(1); - } - - /* - * search for the zeroes in place of the metrics for the codes 0-31: - * 4-byte aligned strings of (32*sizeof(struct glyphmetrics)) zero bytes - */ - maxnlen=sizeof(struct fontmetrics); - - pos=0; bfend=bf; nzeroes=0; - while(( len=read(f, bfend, FILEBF-(bfend-bf)) )>=0 ) { - /* fprintf(stderr,"looking at 0x%lx\n", (long)pos); /* */ - /* the last position to check */ - bfend+= len-maxnlen; /* don't look beyond the EOF */ - - for(p=bf; p<=bfend; p+=4 /* 4-byte aligned */ ) { - fp=(struct fontmetrics *)p; - if(fp->name==0) - continue; - if( memcmp(gm, fp->glyphs, sizeof gm) ) - continue; - - /* OK, looks like it, see if we can match it to any name */ - n= fp->name & PAGEMASK; - for(i=0; i<nfonts; i++) { - for(j=0; j<o[i].noff; j++) - if( n==(o[i].off[j] & PAGEMASK) ) { - zerooff[nzeroes]= pos + (p-bf); - nameaddr[nzeroes]= fp->name; - zeroid[nzeroes]=i; - o[i].nz++; - fprintf(stderr, "matched %s at 0x%lx\n", - font[i].nsname, (long) zerooff[nzeroes]); - nzeroes++; - matched[i]++; - break; - } - } - - } - - if(len==0) - break; - - memmove(bf, bfend, maxnlen); - pos+= (bfend-bf); - bfend= (bf+maxnlen); - } - if(len<0) { - sprintf(msg,"nsfix: read %s",fn); - perror(msg); - exit(1); - } - fprintf(stderr,"---\n"); - - /* make sure that all the fonts got one match */ - k=0; /* flag: have non-matched fonts */ n=0; /* flag: have ambiguities */ - for(i=0; i<nfonts; i++) - if(matched[i]==0) - k=1; - else if(matched[i]>1) - n=1; - - if(k) { - fprintf(stderr,"nsfix: can't find match for some of the fonts\n"); - fprintf(stderr,"nsfix: maybe wrong byte order, aborting\n"); - exit(1); - } - if(n) { - fprintf(stderr,"nsfix: got multiple matches for some of the fonts\n"); - fprintf(stderr,"nsfix: can't resolve, aborting\n"); - exit(1); - } - - /* now finally write the updated tables */ - for(i=0; i<nzeroes; i++) { - j=zeroid[i]; - fprintf(stderr, "nsfix: writing table for %s at 0x%lx\n", font[j].nsname, - (long)zerooff[i]); - - font[j].metrics.name=nameaddr[i]; - if( lseek(f, zerooff[i], SEEK_SET)<0 ) { - sprintf(msg,"nsfix: seek %s to 0x%lx",fn, (long)zerooff[i] ); - perror(msg); - exit(1); - } - if( write(f, &font[j].metrics, sizeof font[j].metrics) != sizeof font[j].metrics ) { - sprintf(msg,"nsfix: write to %s",fn ); - perror(msg); - exit(1); - } - } - - close(f); -} diff --git a/Build/source/texk/ttf2pt1/app/netscape/nspr b/Build/source/texk/ttf2pt1/app/netscape/nspr deleted file mode 100644 index 96d6a69d8b4..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/nspr +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -if [ $# != 2 ] -then - echo "Usage: 'nspr # file.ps' where # is 2, 5, or 1251" - exit -else - enc=$1 - shift -fi -case ${enc} in - 1250|1251) - charset=windows - ;; - *) - charset=iso8859 - ;; -esac -sed "s/Times-Roman/Timesnew-Roman-${charset}-${enc}/g;\ - s/Times-Italic/Timesnew-Italic-${charset}-${enc}/g;\ - s/Times-BoldItalic/Timesnew-BoldItalic-${charset}-${enc}/g;\ - s/Times-Bold/Timesnew-Bold-${charset}-${enc}/g;\ - s/Courier/Couriernew-Roman-${charset}-${enc}/g;\ - s/Couriernew-Roman-${charset}-${enc}-BoldOblique/Couriernew-BoldItalic-${charset}-${enc}/g;\ - s/Couriernew-Roman-${charset}-${enc}-Bold/Couriernew-Bold-${charset}-${enc}/g;\ - s/Couriernew-Roman-${charset}-${enc}-Oblique/Couriernew-Italic-${charset}-${enc}/g;" $* | \ -grep -v "^ /Encoding isolatin1encoding def$" diff --git a/Build/source/texk/ttf2pt1/app/netscape/nsprint b/Build/source/texk/ttf2pt1/app/netscape/nsprint deleted file mode 100644 index 6209f167e42..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/nsprint +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -if uname -s | grep -i bsd >/dev/null -then - LPR=lpr -else - LPR=lp -fi - -nsfilter | $LPR "$@" diff --git a/Build/source/texk/ttf2pt1/app/netscape/psfonts.cf b/Build/source/texk/ttf2pt1/app/netscape/psfonts.cf deleted file mode 100644 index 19b4d712fcb..00000000000 --- a/Build/source/texk/ttf2pt1/app/netscape/psfonts.cf +++ /dev/null @@ -1,11 +0,0 @@ -# PS_font_name font_base_file suffix_afm suffix_font - -Courier /usr/lib/X11/fonts/ttf/cokoi8n.koi8-r .afm .pfa -Courier-Bold /usr/lib/X11/fonts/ttf/cokoi8b.koi8-r .afm .pfa -Courier-Oblique /usr/lib/X11/fonts/ttf/cokoi8i.koi8-r .afm .pfa -Courier-BoldOblique /usr/lib/X11/fonts/ttf/cokoi8bi.koi8-r .afm .pfa - -Times-Roman /usr/lib/X11/fonts/ttf/kudriash.koi8-r .afm .pfa -Times-Bold /usr/lib/X11/fonts/ttf/kudrias1.koi8-r .afm .pfa -Times-Italic /usr/lib/X11/fonts/ttf/kudrias3.koi8-r .afm .pfa -Times-BoldItalic /usr/lib/X11/fonts/ttf/kudrias2.koi8-r .afm .pfa diff --git a/Build/source/texk/ttf2pt1/bdf.c b/Build/source/texk/ttf2pt1/bdf.c deleted file mode 100644 index b3fa0c3ee32..00000000000 --- a/Build/source/texk/ttf2pt1/bdf.c +++ /dev/null @@ -1,661 +0,0 @@ -/* - * The font parser for the BDF files - * - * Copyright (c) 2001 by the TTF2PT1 project - * Copyright (c) 2001 by Sergey Babkin - * - * see COPYRIGHT for the full copyright notice - */ - -#include <stdio.h> -#include <string.h> -#include <stdlib.h> -#include <ctype.h> -#include "winport.h" -#include "pt1.h" -#include "global.h" - -/* prototypes of call entries */ -static void openfont(char *fname, char *arg); -static void closefont( void); -static int getnglyphs ( void); -static int glnames( GLYPH *glyph_list); -static void readglyphs( GLYPH *glyph_list); -static int glenc( GLYPH *glyph_list, int *encoding, int *unimap); -static void fnmetrics( struct font_metrics *fm); -static void glpath( int glyphno, GLYPH *glyph_list); -static void kerning( GLYPH *glyph_list); - -/* globals */ - -/* front-end descriptor */ -struct frontsw bdf_sw = { - /*name*/ "bdf", - /*descr*/ "BDF bitmapped fonts", - /*suffix*/ { "bdf" }, - /*open*/ openfont, - /*close*/ closefont, - /*nglyphs*/ getnglyphs, - /*glnames*/ glnames, - /*glmetrics*/ readglyphs, - /*glenc*/ glenc, - /*fnmetrics*/ fnmetrics, - /*glpath*/ glpath, - /*kerning*/ kerning, -}; - -/* statics */ - -#define MAXLINE 10240 /* maximal line length in the input file */ - -static int lineno; /* line number */ - -#define GETLEN(s) s, (sizeof(s)-1) -#define LENCMP(str, txt) strncmp(str, txt, sizeof(txt)-1) - -static FILE *bdf_file; -static int nglyphs; -static struct font_metrics fmet; - -/* many BDF fonts are of small pixel size, so we better try - * to scale them by an integer to keep the dimensions in - * whole pixels. However if the size is too big and a non- - * integer scaling is needed, we use the standard ttf2pt1's - * scaling abilities. - */ -static int pixel_size; -static int scale; -static int scale_external; - -static char *slant; -static char xlfdname[201]; -static char *spacing; -static char *charset_reg; -static char *charset_enc; -static char *fnwidth; -static int is_unicode = 0; - -/* tempoary storage for returning data to ttf2pt1 later on request */ -static int maxenc = 0; -static int *fontenc; -static GENTRY **glpaths; - -static int got_glyphs = 0; -static GLYPH *glyphs; -static int curgl; - -static int readfile(FILE *f, int (*strfunc)(int len, char *str)); - -/* - * Read the file and parse each string with strfunc(), - * until strfunc() returns !=0 or the end of file happens. - * Returns -1 on EOF or strfunc() returning <0, else 0 - */ - -static int -readfile( - FILE *f, - int (*strfunc)(int len, char *str) -) -{ - static char str[MAXLINE]; /* input line, maybe should be dynamic ? */ - char *s; - int len, c, res; - - len=0; - while(( c=getc(f) )!=EOF) { - if(c=='\n') { - str[len]=0; - - res = strfunc(len, str); - lineno++; - if(res<0) - return -1; - else if(res!=0) - return 0; - - len=0; - } else if(len<MAXLINE-1) { - if(c!='\r') - str[len++]=c; - } else { - fprintf(stderr, "**** bdf: line %d is too long (>%d)\n", lineno, MAXLINE-1); - exit(1); - } - } - return -1; /* EOF */ -} - -/* - * Parse the header of the font file. - * Stop after the line CHARS is encountered. Ignore the unknown lines. - */ - -struct line { - char *name; /* property name with trailing space */ - int namelen; /* length of the name string */ - enum { - ALLOW_REPEAT = 0x01, /* this property may be repeated in multiple lines */ - IS_SEEN = 0x02, /* this property has been seen already */ - MUST_SEE = 0x04, /* this property must be seen */ - IS_LAST = 0x08 /* this is the last property to be read */ - } flags; - char *fmt; /* format string for the arguments, NULL means a string arg */ - int nvals; /* number of values to be read by sscanf */ - void *vp[4]; /* pointers to values to be read */ -}; - -static struct line header[] = { - { GETLEN("FONT "), 0, " %200s", 1, {&xlfdname} }, - { GETLEN("SIZE "), MUST_SEE, " %d", 1, {&pixel_size} }, - { GETLEN("FONTBOUNDINGBOX "), MUST_SEE, " %hd %hd %hd %hd", 4, - {&fmet.bbox[2], &fmet.bbox[3], &fmet.bbox[0], &fmet.bbox[1]} }, - { GETLEN("FAMILY_NAME "), MUST_SEE, NULL, 1, {&fmet.name_family} }, - { GETLEN("WEIGHT_NAME "), MUST_SEE, NULL, 1, {&fmet.name_style} }, - { GETLEN("COPYRIGHT "), 0, NULL, 1, {&fmet.name_copyright} }, - { GETLEN("SLANT "), MUST_SEE, NULL, 1, {&slant} }, - { GETLEN("SPACING "), 0, NULL, 1, {&spacing} }, - { GETLEN("SETWIDTH_NAME "), 0, NULL, 1, {&fnwidth} }, - { GETLEN("CHARSET_REGISTRY "), 0, NULL, 1, {&charset_reg} }, - { GETLEN("CHARSET_ENCODING "), 0, NULL, 1, {&charset_enc} }, - { GETLEN("FONT_ASCENT "), 0, " %hd", 1, {&fmet.ascender} }, - { GETLEN("FONT_DESCENT "), 0, " %hd", 1, {&fmet.descender} }, - - /* these 2 must go in this order for post-processing */ - { GETLEN("UNDERLINE_THICKNESS "), 0, " %hd", 1, {&fmet.underline_thickness} }, - { GETLEN("UNDERLINE_POSITION "), 0, " %hd", 1, {&fmet.underline_position} }, - - { GETLEN("CHARS "), MUST_SEE|IS_LAST, " %d", 1, {&nglyphs} }, - { NULL, 0, 0 } /* end mark: name==NULL */ -}; - -static int -handle_header( - int len, - char *str -) -{ - struct line *cl; - char *s, *p; - int c; - -#if 0 - fprintf(stderr, "line: %s\n", str); -#endif - for(cl = header; cl->name != 0; cl++) { - if(strncmp(str, cl->name, cl->namelen)) - continue; -#if 0 - fprintf(stderr, "match: %s\n", cl->name); -#endif - if(cl->flags & IS_SEEN) { - if(cl->flags & ALLOW_REPEAT) - continue; - - fprintf(stderr, "**** input line %d redefines the property %s\n", lineno, cl->name); - exit(1); - } - cl->flags |= IS_SEEN; - if(cl->fmt == 0) { - s = malloc(len - cl->namelen + 1); - if(s == 0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - *((char **)(cl->vp[0])) = s; - - /* skip until a quote */ - for(p = str+cl->namelen; (c = *p)!=0; p++) { - if(c == '"') { - p++; - break; - } - } - for(; (c = *p)!=0; p++) { - if(c == '"') { - c = *++p; - if(c == '"') - *s++ = c; - else - break; - } else - *s++ = c; - } - *s = 0; /* end of line */ - } else { - c = sscanf(str+cl->namelen, cl->fmt, cl->vp[0], cl->vp[1], cl->vp[2], cl->vp[3]); - if(c != cl->nvals) { - fprintf(stderr, "**** property %s at input line %d must have %d arguments\n", - cl->name, lineno, cl->nvals); - exit(1); - } - } - if(cl->flags & IS_LAST) - return 1; - else - return 0; - } - return 0; -} - -/* - * Parse the description of the glyphs - */ - -static int -handle_glyphs( - int len, - char *str -) -{ - static int inbmap=0; - static char *bmap; - static int xsz, ysz, xoff, yoff; - static int curln; - int i, c; - char *p, *plim, *psz; - - if(!LENCMP(str, "ENDFONT")) { - if(curgl < nglyphs) { - fprintf(stderr, "**** unexpected end of font file after %d glyphs\n", curgl); - exit(1); - } else - return 1; - } - if(curgl >= nglyphs) { - fprintf(stderr, "**** file contains more glyphs than advertised (%d)\n", nglyphs); - exit(1); - } - if(!LENCMP(str, "STARTCHAR")) { - /* sizeof will count \0 instead of ' ' */ - for(i=sizeof("STARTCHAR"); str[i] == ' '; i++) - {} - - glyphs[curgl].name = strdup(str + i); - if(glyphs[curgl].name == 0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - } else if(!LENCMP(str, "ENCODING")) { - if(sscanf(str, "ENCODING %d", &fontenc[curgl])!=1) { - fprintf(stderr,"**** weird ENCODING statement at line %d\n", lineno); - exit(1); - } - if(fontenc[curgl] == -1) /* compatibility format */ - sscanf(str, "ENCODING -1 %d", &fontenc[curgl]); - if(fontenc[curgl] > maxenc) - maxenc = fontenc[curgl]; - } else if(!LENCMP(str, "DWIDTH")) { - if(sscanf(str, "DWIDTH %d %d", &xsz, &ysz)!=2) { - fprintf(stderr,"**** weird DWIDTH statement at line %d\n", lineno); - exit(1); - } - glyphs[curgl].width = xsz*scale; - } else if(!LENCMP(str, "BBX")) { - if(sscanf(str, "BBX %d %d %d %d", &xsz, &ysz, &xoff, &yoff)!=4) { - fprintf(stderr,"**** weird BBX statement at line %d\n", lineno); - exit(1); - } - bmap=malloc(xsz*ysz); - if(bmap==0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - glyphs[curgl].lsb = -xoff*scale; - glyphs[curgl].xMin = -xoff*scale; - glyphs[curgl].xMax = (xsz-xoff)*scale; - glyphs[curgl].yMin = -yoff*scale; - glyphs[curgl].yMax = (ysz-xoff)*scale; - } else if(!LENCMP(str, "BITMAP")) { - inbmap=1; - curln=ysz-1; /* the lowest line has index 0 */ - } else if(!LENCMP(str, "ENDCHAR")) { - inbmap=0; - if(bmap) { - glyphs[curgl].lastentry = 0; - glyphs[curgl].path = 0; - glyphs[curgl].entries = 0; - bmp_outline(&glyphs[curgl], scale, bmap, xsz, ysz, xoff, yoff); - free(bmap); - /* remember in a static table or it will be erased */ - glpaths[curgl] = glyphs[curgl].entries; - glyphs[curgl].entries = 0; - - if(glpaths[curgl]) - glyphs[curgl].ttf_pathlen = 1; - else - glyphs[curgl].ttf_pathlen = 0; - } - curgl++; - } else if(inbmap) { - if(curln<0) { - fprintf(stderr,"**** bitmap is longer than %d lines at line %d\n", ysz, lineno); - exit(1); - } - - i=0; - p=&bmap[curln*xsz]; psz=p+xsz; - while(i<len) { - c=str[i++]; - if(!isxdigit(c)) { - fprintf(stderr,"**** non-hex digit in bitmap at line %d\n", lineno); - exit(1); - } - if(c<='9') - c-='0'; - else - c= tolower(c)-'a'+10; - - for(plim=p+4; p<psz && p<plim; c<<=1) - *p++ = (( c & 0x08 )!=0); - } - if(p<psz) { - fprintf(stderr,"**** bitmap line is too short at line %d\n", lineno); - exit(1); - } - curln--; - } - return 0; -} - -/* - * Read all the possible information about the glyphs - */ - -static void -readglyphs( - GLYPH *glyph_list -) -{ - int i; - GLYPH *g; - - if(got_glyphs) - return; - - /* pass them to handle_glyphs() through statics */ - glyphs = glyph_list; - curgl = 2; /* skip the empty glyph and .notdef */ - - /* initialize the empty glyph and .notdef */ - - for(i=0; i<2; i++) { - g = &glyphs[i]; - g->lsb = 0; - g->width = fmet.bbox[2]; - g->xMin = 0; - g->yMin = 0; - } - g = &glyphs[0]; - g->name = ".notdef"; - g->xMax = fmet.bbox[2]*4/5; - g->yMax = fmet.bbox[3]*4/5; - g->entries = g->path = g->lastentry = 0; - /* make it look as a black square */ - fg_rmoveto(g, 0.0, 0.0); - fg_rlineto(g, 0.0, (double)g->yMax); - fg_rlineto(g, (double)g->xMax, (double)g->yMax); - fg_rlineto(g, (double)g->xMax, 0.0); - fg_rlineto(g, 0.0, 0.0); - g_closepath(g); - glpaths[0] = g->entries; - g->entries = 0; - g->ttf_pathlen = 4; - - g = &glyphs[1]; - g->name = ".null"; - g->xMax = g->yMax = 0; - g->ttf_pathlen = 0; - - if(readfile(bdf_file, handle_glyphs) < 0) { - fprintf(stderr, "**** file does not contain the ENDFONT line\n"); - exit(1); - } - got_glyphs = 1; -} - -/* - * Open font and prepare to return information to the main driver. - * May print error and warning messages. - * Exit on error. - */ - -static void -openfont( - char *fname, - char *arg /* unused now */ -) -{ - struct line *cl; - int i, l; - - if ((bdf_file = fopen(fname, "r")) == NULL) { - fprintf(stderr, "**** Cannot open file '%s'\n", fname); - exit(1); - } else { - WARNING_2 fprintf(stderr, "Processing file %s\n", fname); - } - - lineno = 1; - - for(cl = header; cl->name != 0; cl++) - cl->flags &= ~IS_SEEN; - if(readfile(bdf_file, handle_header) < 0) { - fprintf(stderr, "**** file does not contain the CHARS definition\n"); - exit(1); - } - for(cl = header; cl->name != 0; cl++) { - if( (cl->flags & MUST_SEE) && !(cl->flags & IS_SEEN) ) { - fprintf(stderr, "**** mandatory property %sis not found in the input line\n", - cl->name); /* cl->name has a space at the end */ - exit(1); - } - - /* set a few defaults */ - if( !(cl->flags & IS_SEEN) ) { - if(cl->vp[0] == &fmet.underline_thickness) { - fmet.underline_thickness = 1; - } else if(cl->vp[0] == &fmet.underline_position) { - fmet.underline_position = fmet.bbox[1] + fmet.underline_thickness - - (pixel_size - fmet.bbox[3]); - } else if(cl->vp[0] == &fmet.ascender) { - fmet.ascender = fmet.bbox[2] + fmet.bbox[0]; - } else if(cl->vp[0] == &fmet.descender) { - fmet.descender = fmet.bbox[0]; - } - } - } - - nglyphs += 2; /* add empty glyph and .notdef */ - - /* postprocessing to compensate for the differences in the metric formats */ - fmet.bbox[2] += fmet.bbox[0]; - fmet.bbox[3] += fmet.bbox[1]; - - scale = 1000/pixel_size; /* XXX ? */ - if(scale*pixel_size < 950) { - scale = 1; - scale_external = 1; - fmet.units_per_em = pixel_size; - } else { - scale_external = 0; - fmet.units_per_em = scale*pixel_size; - - fmet.underline_position *= scale; - fmet.underline_thickness *= scale; - fmet.ascender *= scale; - fmet.descender *= scale; - for(i=0; i<4; i++) - fmet.bbox[i] *= scale; - } - - fmet.italic_angle = 0.0; - if(spacing == 0 /* possibly an old font */ - || toupper(spacing[0]) != 'P') /* or anything non-proportional */ - fmet.is_fixed_pitch = 1; - else - fmet.is_fixed_pitch = 0; - - if(fmet.name_copyright==NULL) - fmet.name_copyright = ""; - - /* create the full name */ - l = strlen(fmet.name_family) - + (fmet.name_style? strlen(fmet.name_style) : 0) - + (fnwidth? strlen(fnwidth) : 0) - + strlen("Oblique") + 1; - - if(( fmet.name_full = malloc(l) )==NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - strcpy(fmet.name_full, fmet.name_family); - if(fnwidth && strcmp(fnwidth, "Normal")) { - strcat(fmet.name_full, fnwidth); - } - if(fmet.name_style && strcmp(fmet.name_style, "Medium")) { - strcat(fmet.name_full, fmet.name_style); - } - switch(toupper(slant[0])) { - case 'O': - strcat(fmet.name_full, "Oblique"); - break; - case 'I': - strcat(fmet.name_full, "Italic"); - break; - } - - fmet.name_ps = fmet.name_full; - fmet.name_version = "1.0"; - - if(charset_reg && charset_enc - && !strcmp(charset_reg, "iso10646") && !strcmp(charset_enc, "1")) - is_unicode = 1; - - if(( fontenc = calloc(nglyphs, sizeof *fontenc) )==NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - for(i=0; i<nglyphs; i++) - fontenc[i] = -1; - if(( glpaths = calloc(nglyphs, sizeof *glpaths) )==NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } -} - -/* - * Close font. - * Exit on error. - */ - -static void -closefont( - void -) -{ - if(fclose(bdf_file) < 0) { - WARNING_1 fprintf(stderr, "Errors when closing the font file, ignored\n"); - } -} - -/* - * Get the number of glyphs in font. - */ - -static int -getnglyphs ( - void -) -{ - return nglyphs; -} - -/* - * Get the names of the glyphs. - * Returns 0 if the names were assigned, non-zero if the font - * provides no glyph names. - */ - -static int -glnames( - GLYPH *glyph_list -) -{ - readglyphs(glyph_list); - return 0; -} - -/* - * Get the original encoding of the font. - * Returns 1 for if the original encoding is Unicode, 2 if the - * original encoding is other 16-bit, 0 if 8-bit. - */ - -static int -glenc( - GLYPH *glyph_list, - int *encoding, - int *unimap -) -{ - int i, douni, e; - - if(is_unicode || forcemap) - douni = 1; - else - douni = 0; - - for(i=0; i<nglyphs; i++) { - e = fontenc[i]; - if(douni) - e = unicode_rev_lookup(e); - if(e>=0 && e<ENCTABSZ && encoding[e] == -1) - encoding[e] = i; - } - - if(is_unicode) - return 1; - else if(maxenc > 255) - return 2; - else - return 0; -} - -/* - * Get the font metrics - */ -static void -fnmetrics( - struct font_metrics *fm -) -{ - *fm = fmet; -} - -/* - * Get the path of contrours for a glyph. - */ - -static void -glpath( - int glyphno, - GLYPH *glyf_list -) -{ - readglyphs(glyf_list); - glyf_list[glyphno].entries = glpaths[glyphno]; - glpaths[glyphno] = 0; -} - -/* - * Get the kerning data. - */ - -static void -kerning( - GLYPH *glyph_list -) -{ - return; /* no kerning in BDF */ -} diff --git a/Build/source/texk/ttf2pt1/bitmap.c b/Build/source/texk/ttf2pt1/bitmap.c deleted file mode 100644 index ccff396abb9..00000000000 --- a/Build/source/texk/ttf2pt1/bitmap.c +++ /dev/null @@ -1,375 +0,0 @@ -/* - * Handling of the bitmapped glyphs - * - * Copyright (c) 2001 by the TTF2PT1 project - * Copyright (c) 2001 by Sergey Babkin - * - * see COPYRIGHT for the full copyright notice - */ - -#include <stdio.h> -#include <stdlib.h> -#include "pt1.h" -#include "global.h" - -/* possible values of limits */ -#define L_NONE 0 /* nothing here */ -#define L_ON 1 /* black is on up/right */ -#define L_OFF 2 /* black is on down/left */ - -static int warnedhints = 0; - -/* - * Produce an outline from a bitmap. - * scale - factor to scale the sizes - * bmap - array of dots by lines, xsz * ysz - * xoff, yoff - offset of the bitmap's lower left corner - * from the logical position (0,0) - */ - -bmp_outline( - GLYPH *g, - int scale, - char *bmap, - int xsz, - int ysz, - int xoff, - int yoff -) -{ - char *hlm, *vlm; /* arrays of the limits of outlines */ - char *amp; /* map of ambiguous points */ - int x, y; - char *ip, *op; - double fscale; - - fscale = (double)scale; - - if(!warnedhints) { - warnedhints = 1; - if(subhints) { - WARNING_2 fprintf(stderr, - "Use of hint substitution on bitmap fonts is not recommended\n"); - } - } - -#if 0 - printbmap(bmap, xsz, ysz, xoff, yoff); -#endif - - /* now find the outlines */ - hlm=calloc( xsz, ysz+1 ); /* horizontal limits */ - vlm=calloc( xsz+1, ysz ); /* vertical limits */ - amp=calloc( xsz, ysz ); /* ambiguous points */ - - if(hlm==0 || vlm==0 || amp==0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - - /* - * hlm and vlm represent a grid of horisontal and - * vertical lines. Each pixel is surrounded by the grid - * from all the sides. The values of [hv]lm mark the - * parts of grid where the pixel value switches from white - * to black and back. - */ - - /* find the horizontal limits */ - ip=bmap; op=hlm; - /* 1st row */ - for(x=0; x<xsz; x++) { - if(ip[x]) - op[x]=L_ON; - } - ip+=xsz; op+=xsz; - /* internal rows */ - for(y=1; y<ysz; y++) { - for(x=0; x<xsz; x++) { - if(ip[x]) { - if(!ip[x-xsz]) - op[x]=L_ON; - } else { - if(ip[x-xsz]) - op[x]=L_OFF; - } - } - ip+=xsz; op+=xsz; - } - - /* last row */ - ip-=xsz; - for(x=0; x<xsz; x++) { - if(ip[x]) - op[x]=L_OFF; - } - - /* find the vertical limits */ - ip=bmap; op=vlm; - for(y=0; y<ysz; y++) { - if(ip[0]) - op[0]=L_ON; - for(x=1; x<xsz; x++) { - if(ip[x]) { - if(!ip[x-1]) - op[x]=L_ON; - } else { - if(ip[x-1]) - op[x]=L_OFF; - } - } - if(ip[xsz-1]) - op[xsz]=L_OFF; - ip+=xsz; op+=xsz+1; - } - - /* - * Ambiguous points are the nodes of the grids - * that are between two white and two black pixels - * located in a checkerboard style. Actually - * there are only two patterns that may be - * around an ambiguous point: - * - * X|. .|X - * -*- -*- - * .|X X|. - * - * where "|" and "-" represent the grid (respectively members - * of vlm and hlm), "*" represents an ambiguous point - * and "X" and "." represent black and white pixels. - * - * If these sample pattern occur in the lower left corner - * of the bitmap then this ambiguous point will be - * located at amp[1][1] or in other words amp[1*xsz+1]. - * - * These points are named "ambiguous" because it's - * not easy to guess what did the font creator mean - * at these points. So we are going to treat them - * specially, doing no aggressive smoothing. - */ - - /* find the ambiguous points */ - for(y=ysz-1; y>0; y--) - for(x=xsz-1; x>0; x--) { - if(bmap[y*xsz+x]) { - if( !bmap[y*xsz+x-1] && !bmap[y*xsz-xsz+x] && bmap[y*xsz-xsz+x-1] ) - amp[y*xsz+x]=1; - } else { - if( bmap[y*xsz+x-1] && bmap[y*xsz-xsz+x] && !bmap[y*xsz-xsz+x-1] ) - amp[y*xsz+x]=1; - } - } - -#if 0 - printlimits(hlm, vlm, amp, xsz, ysz); -#endif - - /* generate the vectored outline */ - - while(1) { - int found = 0; - int outer; /* flag: this is an outer contour */ - int hor, newhor; /* flag: the current contour direction is horizontal */ - int dir; /* previous direction of the coordinate, 1 - L_ON, 0 - L_OFF */ - int startx, starty; /* start of a contour */ - int firstx, firsty; /* start of the current line */ - int newx, newy; /* new coordinates to try */ - char *lm, val; - int maxx, maxy, xor; - - for(y=ysz; !found && y>0; y--) - for(x=0; x<xsz; x++) - if(hlm[y*xsz+x] > L_NONE) - goto foundcontour; - break; /* have no contours left */ - - foundcontour: - fg_rmoveto(g, fscale*(x+xoff), fscale*(y+yoff)); - - startx = firstx = x; - starty = firsty = y; - - if(hlm[y*xsz+x] == L_OFF) { - outer = 1; dir = 0; - hlm[y*xsz+x] = -hlm[y*xsz+x]; /* mark as seen */ - hor = 1; x++; - } else { - outer = 0; dir = 0; - hor = 0; y--; - vlm[y*(xsz+1)+x] = -vlm[y*(xsz+1)+x]; /* mark as seen */ - } - - while(x!=startx || y!=starty) { -#if 0 - printf("trace (%d, %d) outer=%d hor=%d dir=%d\n", x, y, outer, hor, dir); -#endif - - /* initialization common for try1 and try2 */ - if(hor) { - lm = vlm; maxx = xsz+1; maxy = ysz; newhor = 0; - } else { - lm = hlm; maxx = xsz; maxy = ysz+1; newhor = 1; - } - xor = (outer ^ hor ^ dir); - - try1: - /* first we try to change axis, to keep the - * contour as long as possible - */ - - newx = x; newy = y; - if(!hor && (!outer ^ dir)) - newx--; - if(hor && (!outer ^ dir)) - newy--; - - if(newx < 0 || newx >= maxx || newy < 0 || newy >= maxy) - goto try2; - - if(!xor) - val = L_ON; - else - val = L_OFF; -#if 0 - printf("try 1, want %d have %d at %c(%d, %d)\n", val, lm[newy*maxx + newx], - (newhor ? 'h':'v'), newx, newy); -#endif - if( lm[newy*maxx + newx] == val ) - goto gotit; - - try2: - /* try to change the axis anyway */ - - newx = x; newy = y; - if(!hor && (outer ^ dir)) - newx--; - if(hor && (outer ^ dir)) - newy--; - - if(newx < 0 || newx >= maxx || newy < 0 || newy >= maxy) - goto try3; - - if(xor) - val = L_ON; - else - val = L_OFF; -#if 0 - printf("try 2, want %d have %d at %c(%d, %d)\n", val, lm[newy*maxx + newx], - (newhor ? 'h':'v'), newx, newy); -#endif - if( lm[newy*maxx + newx] == val ) - goto gotit; - - try3: - /* try to continue in the old direction */ - - if(hor) { - lm = hlm; maxx = xsz; maxy = ysz+1; - } else { - lm = vlm; maxx = xsz+1; maxy = ysz; - } - newhor = hor; - newx = x; newy = y; - if(hor && dir) - newx--; - if(!hor && !dir) - newy--; - - if(newx < 0 || newx >= maxx || newy < 0 || newy >= maxy) - goto badtry; - - if(dir) - val = L_ON; - else - val = L_OFF; -#if 0 - printf("try 3, want %d have %d at %c(%d, %d)\n", val, lm[newy*maxx + newx], - (newhor ? 'h':'v'), newx, newy); -#endif - if( lm[newy*maxx + newx] == val ) - goto gotit; - - badtry: - fprintf(stderr, "**** Internal error in the contour detection code at (%d, %d)\n", x, y); - fprintf(stderr, "glyph='%s' outer=%d hor=%d dir=%d\n", g->name, outer, hor, dir); - fflush(stdout); - exit(1); - - gotit: - if(hor != newhor) { /* changed direction, end the previous line */ - fg_rlineto(g, fscale*(x+xoff), fscale*(y+yoff)); - firstx = x; firsty = y; - } - lm[newy*maxx + newx] = -lm[newy*maxx + newx]; - hor = newhor; - dir = (val == L_ON); - if(newhor) - x -= (dir<<1)-1; - else - y += (dir<<1)-1; - } -#if 0 - printf("trace (%d, %d) outer=%d hor=%d dir=%d\n", x, y, outer, hor, dir); -#endif - fg_rlineto(g, fscale*(x+xoff), fscale*(y+yoff)); - g_closepath(g); - } - - free(hlm); free(vlm); free(amp); -} - -#if 0 -/* print out the bitmap */ -printbmap(bmap, xsz, ysz, xoff, yoff) - char *bmap; - int xsz, ysz, xoff, yoff; -{ - int x, y; - - for(y=ysz-1; y>=0; y--) { - putchar( (y%10==0) ? y/10+'0' : ' ' ); - putchar( y%10+'0' ); - for(x=0; x<xsz; x++) - putchar( bmap[y*xsz+x] ? 'X' : '.' ); - if(-yoff==y) - putchar('_'); /* mark the baseline */ - putchar('\n'); - } - putchar(' '); putchar(' '); - for(x=0; x<xsz; x++) - putchar( x%10+'0' ); - putchar('\n'); putchar(' '); putchar(' '); - for(x=0; x<xsz; x++) - putchar( (x%10==0) ? x/10+'0' : ' ' ); - putchar('\n'); -} - -/* print out the limits of outlines */ -printlimits(hlm, vlm, amp, xsz, ysz) - char *hlm, *vlm, *amp; - int xsz, ysz; -{ - int x, y; - static char h_char[]={ ' ', '~', '^' }; - static char v_char[]={ ' ', '(', ')' }; - - for(y=ysz-1; y>=0; y--) { - for(x=0; x<xsz; x++) { - if(amp[y*xsz+x]) - putchar('!'); /* ambigouos point is always on a limit */ - else - putchar(v_char[ vlm[y*(xsz+1)+x] & (L_ON|L_OFF) ]); - putchar(h_char[ hlm[(y+1)*xsz+x] & (L_ON|L_OFF) ]); - } - putchar(v_char[ vlm[y*(xsz+1)+x] & (L_ON|L_OFF) ]); - putchar('\n'); - } - /* last line */ - for(x=0; x<xsz; x++) { - putchar(' '); - putchar(h_char[ hlm[x] & (L_ON|L_OFF) ]); - } - putchar(' '); - putchar('\n'); -} -#endif /* 0 */ diff --git a/Build/source/texk/ttf2pt1/byteorder.h b/Build/source/texk/ttf2pt1/byteorder.h deleted file mode 100644 index c139817e518..00000000000 --- a/Build/source/texk/ttf2pt1/byteorder.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - * see COPYRIGHT - */ - -/* This defines the macroes ntohs and ntohl, which convert short and long - ints from network order (used on 68000 chips, and in TrueType font - files) to whatever order your computer uses. #define _BIG_ENDIAN or not - to control which set of definitions apply. If you don't know, try both. If - you have a peculiar machine you're on your own. -*/ - -#if defined(_BIG_ENDIAN) -#define ntohl(x) (x) -#define ntohs(x) (x) -#else -#define ntohs(x) \ - ((USHORT)((((USHORT)(x) & 0x00ff) << 8) | \ - (((USHORT)(x) & 0xff00) >> 8))) -#define ntohl(x) \ - ((ULONG)((((ULONG)(x) & 0x000000ffU) << 24) | \ - (((ULONG)(x) & 0x0000ff00U) << 8) | \ - (((ULONG)(x) & 0x00ff0000U) >> 8) | \ - (((ULONG)(x) & 0xff000000U) >> 24))) -#endif diff --git a/Build/source/texk/ttf2pt1/chinese/Makefile b/Build/source/texk/ttf2pt1/chinese/Makefile deleted file mode 100644 index c230ef9f4d9..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -# this makefile is for release and installation purposes only - -# Installation-related stuff -# -# Make sure that you are installing in the same hierarchy as ttf2pt1 itself! -# -# The base dir for installation and subdirs in it -INSTDIR = /usr/local -# for scripts, maps/encodings etc. -SHAREDIR = $(INSTDIR)/share/ttf2pt1 - -# owner and group of installed files -OWNER = root -GROUP = bin - -all: - -release: - ./mkrel release - -snapshot: - ./mkrel snapshot - -install: - cp -p *.map $(SHAREDIR)/maps - chown $(OWNER) $(SHAREDIR)/maps/*.map - chgrp $(GROUP) $(SHAREDIR)/maps/*.map - chmod 0644 $(SHAREDIR)/maps/*.map - -uninstall: - for i in *.map; do rm -f $(SHAREDIR)/maps/$$i || exit 1; done diff --git a/Build/source/texk/ttf2pt1/chinese/README b/Build/source/texk/ttf2pt1/chinese/README deleted file mode 100644 index d89325f9633..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/README +++ /dev/null @@ -1,18 +0,0 @@ -This is a collection of Chinese encoding maps which can be used with -ttf2pt1. They are moved to a separate archive due to their size which -is much bigger than ttf2pt1 itself and because not everyone would -need them. - -Versioning policy: -These map files have no direct dependency on the ttf2pt1 version (starting -with ttf2pt1 3.2.2 which is the first version supporting multi-plane maps). -But some changes may happen in future, as well as the supported map -formats may change. To avoid unneccessary extra releases on one hand -and keep the updates in sync with the ttf2pt1 itself on the other hand, a new -version of these map files will be released only if there are any changes to -them and these releases will be given the same version number as ttf2pt1 -released at the same time. So not every release of ttf2pt1 would have a -corresponding release of the Chinese maps. For example, to get the correct -version of the Chinese maps for an imaginary release 8.3.4 of ttf2pt1 you -would need to look for Chinese maps of the highest version not higher than -(but possibly equal to) 8.3.4. diff --git a/Build/source/texk/ttf2pt1/chinese/cubg5plus.map b/Build/source/texk/ttf2pt1/chinese/cubg5plus.map deleted file mode 100644 index 18f4d28380a..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/cubg5plus.map +++ /dev/null @@ -1,3184 +0,0 @@ -# -# For unicode Big5+ Chinese fonts. -# -plane 01 -at 0x00 - 0x8488, 0x8710, 0x871F, 0x870F, 0x88D3, 0x8C87, 0x8CC6, 0x90CC, - 0x916D, 0x9258, 0x9242, 0x9268, 0x9269, 0x9243, 0x9247, 0x959D, - 0x96CF, 0x97F4, 0x9809, 0x98AB, 0x98FB, 0x9AAC, 0x9AAE, 0x9AAA, - 0x9B5C, 0x50DF, 0x5619, 0x560A, 0x589A, 0x5D85, 0x5E56, 0x5E51, - 0x5FB1, 0x645A, 0x6463, 0x669B, 0x66A3, 0x669E, 0x69B8, 0x69BA, - 0x69C7, 0x69D7, 0x6B70, 0x6B9D, 0x6F16, 0x6F24, 0x6F45, 0x7179, - 0x717A, 0x7254, 0x757C, 0x757B, 0x7612, 0x76B6, 0x76E0, 0x7773, - 0x7772, 0x7770, 0x789D, 0x7A27, 0x7A35, 0x7BA2, 0x7B89, 0x4E28, - 0x4E05, 0x4E04, 0x4E2A, 0x4E87, 0x4E49, 0x51E2, 0x4E46, 0x4E8F, - 0x4EBC, 0x4EBE, 0x5166, 0x51E3, 0x5204, 0x529C, 0x5344, 0x5F51, - 0x961D, 0x4E63, 0x4E62, 0x4EA3, 0x5185, 0x4EC5, 0x4ECF, 0x4ECE, - 0x4ECC, 0x5184, 0x5186, 0x51E4, 0x5205, 0x529E, 0x529D, 0x52FD, - 0x7BA5, 0x7CB6, 0x7DA5, 0x7DC3, 0x7FAB, 0x8025, 0x8059, 0x8185, - 0x818E, 0x84BE, 0x84A6, 0x872F, 0x89A0, 0x8A97, 0x8C8B, 0x8F0F, - 0x9275, 0x929F, 0x95A6, 0x969A, 0x9757, 0x97F7, 0x98B0, 0x99C6, - 0x50FA, 0x5285, 0x5643, 0x563C, 0x5BED, 0x5C35, 0x5F47, 0x616D, - 0x69F5, 0x6A03, 0x6A65, 0x6B75, 0x6F56, 0x6F98, 0x6F68, 0x7234, - 0x7245, 0x735C, 0x7356, 0x78BF, 0x78BD, 0x78E4, 0x7A34, 0x7A36, - 0x7BBA, 0x7BBC, 0x7BC8, 0x7BC3, 0x7BB6, 0x7BC2, 0x7BC5, 0x7BBD, - 0x7BB0, 0x7BBB, 0x7E04, 0x81F1, 0x8522, 0x8538, 0x8532, 0x8510, - 0x854F, 0x877C, 0x890D, 0x8908, 0x8D9E, 0x8F28, 0x8F21, 0x9066, - 0x906C, 0x90F6, 0x92EC, 0x92BA, 0x92E3, 0x92BD, 0x95B4, 0x97D1, - 0x9823, 0x990B, 0x9AB2, 0x9ADB, 0x9B73, 0x9B6E, 0x9B65, 0x9B6A, - 0x9B6D, 0x9D0B, 0x9E76, 0x9F11, 0x5119, 0x5675, 0x596F, 0x61A5, - 0x61A0, 0x65B4, 0x65D8, 0x66C2, 0x6BA8, 0x6F83, 0x6FC5, 0x71CD, - 0x729C, 0x7499, 0x7639, 0x762E, 0x769F, 0x76A0, 0x7794, 0x77AE, - 0x78E6, 0x7ABC, 0x7BD6, 0x7CCF, 0x7E18, 0x806D, 0x8190, 0x8552, - 0x8550, 0x87A0, 0x8786, 0x8795, 0x8860, 0x8928, 0x8920, 0x89A8, - 0x8E3A, 0x9194, 0x9311, 0x9337, 0x9343, 0x96A6, 0x9795, 0x9796, - 0x9825, 0x9926, 0x9934, 0x9B8A, 0x9B7F, 0x9D11, 0x9ED9, 0x9F3C, - 0x5123, 0x512C, 0x5295, 0x5688, 0x568B, 0x61E1, 0x61D7, 0x65A3, - 0x66D3, 0x6A8B, 0x6BAC, 0x7374, 0x7640, 0x5300, 0x533A, 0x5346, -plane 02 -at 0x00 - 0x535D, 0x5386, 0x53B7, 0x53CC, 0x53CE, 0x5721, 0x5E00, 0x5F0C, - 0x6237, 0x6238, 0x6535, 0x738D, 0x4E97, 0x4EE0, 0x4EE7, 0x4EE6, - 0x56D8, 0x518B, 0x518C, 0x5199, 0x51E5, 0x520B, 0x5304, 0x5303, - 0x5307, 0x531E, 0x535F, 0x536D, 0x5389, 0x53BA, 0x7641, 0x76E8, - 0x78F6, 0x7900, 0x7A59, 0x7A55, 0x7AF4, 0x7C04, 0x7C15, 0x7BF5, - 0x81C1, 0x857D, 0x85A5, 0x893A, 0x8E51, 0x9198, 0x9381, 0x936F, - 0x9842, 0x9937, 0x9BA9, 0x9BA7, 0x9BAC, 0x9B9C, 0x9D3C, 0x9D1C, - 0x9D3A, 0x9D32, 0x9D34, 0x9F3F, 0x5EEB, 0x61D5, 0x6502, 0x7012, - 0x7585, 0x7654, 0x7655, 0x76A7, 0x76A8, 0x790F, 0x7CE4, 0x7CE5, - 0x7E65, 0x7E4E, 0x7F82, 0x802D, 0x85CA, 0x85BC, 0x8CFF, 0x91A6, - 0x93B6, 0x93AB, 0x97A7, 0x983E, 0x9BBC, 0x9BB7, 0x9BBE, 0x9D62, - 0x9E8F, 0x9ECB, 0x56A9, 0x5913, 0x5BF4, 0x61EC, 0x61EF, 0x6AD6, - 0x7209, 0x7379, 0x74C6, 0x77C3, 0x791F, 0x7A65, 0x7AC6, 0x7C3A, - 0x7CEB, 0x7F84, 0x85E0, 0x85F3, 0x881E, 0x89B4, 0x89F9, 0x8B44, - 0x8E71, 0x8E6E, 0x8E79, 0x8EC4, 0x908C, 0x93C9, 0x97B0, 0x985A, - 0x9946, 0x9AC3, 0x9B0F, 0x9BF4, 0x9BFA, 0x9BDD, 0x9BED, 0x9BEF, - 0x9E96, 0x9EB3, 0x9EE2, 0x9F8F, 0x56B1, 0x5B41, 0x6AF6, 0x6AF2, - 0x7588, 0x8267, 0x860E, 0x8D0E, 0x91B6, 0x942F, 0x97E0, 0x97DB, - 0x9861, 0x9A33, 0x9C0F, 0x9C11, 0x9C03, 0x9C01, 0x9C16, 0x9D93, - 0x535B, 0x56BF, 0x5DCE, 0x76AC, 0x77D2, 0x7C52, 0x8B76, 0x8EC7, - 0x9434, 0x943E, 0x97BC, 0x9B39, 0x9C2A, 0x9C26, 0x9C27, 0x9DC0, - 0x9DC9, 0x9EEC, 0x9F68, 0x8032, 0x8031, 0x89FD, 0x908E, 0x97C2, - 0x9A4B, 0x9B1C, 0x9B1B, 0x9C42, 0x56D0, 0x56CF, 0x5DDA, 0x66EA, - 0x8B89, 0x9458, 0x9DE7, 0x53D0, 0x53F6, 0x53F7, 0x53F9, 0x53F4, - 0x5724, 0x5904, 0x5918, 0x5932, 0x5930, 0x5934, 0x5975, 0x5B82, - 0x5BF9, 0x5C14, 0x5E81, 0x5E83, 0x5F0D, 0x5F52, 0x5FCA, 0x5FC7, - 0x6239, 0x624F, 0x65E7, 0x672F, 0x6B7A, 0x6C39, 0x6C37, 0x6C44, - 0x6C45, 0x738C, 0x9093, 0x9092, 0x9DEA, 0x9DF1, 0x9F44, 0x9F6D, - 0x5DD9, 0x883A, 0x8975, 0x9A5D, 0x9C64, 0x9E0A, 0x9F73, 0x77E1, - 0x9B2D, 0x9E0C, 0x9F1F, 0x7C70, 0x9479, 0x974A, 0x7E9D, 0x9960, - 0x9F9E, 0x9EF8, 0x9F3A, 0x9F7D, 0x9F96, 0x6729, 0x5E07, 0x5FCB, - 0x52B7, 0x52B8, 0x52B6, 0x52BA, 0x6306, 0x6B85, 0x8C38, 0x7309, -plane 03 -at 0x00 - 0x8A2F, 0x52DC, 0x5921, 0x5E3F, 0x7B3F, 0x83D0, 0x86E7, 0x6117, - 0x8714, 0x88D1, 0x8CCB, 0x8EED, 0x52EC, 0x52E8, 0x7527, 0x798C, - 0x7991, 0x8660, 0x9904, 0x999B, 0x729F, 0x8770, 0x8E37, 0x9703, - 0x52F6, 0x64CC, 0x764A, 0x7AB9, 0x7BD7, 0x999F, 0x9B8D, 0x9E77, - 0x764B, 0x76A2, 0x87F1, 0x9BBA, 0x8804, 0x9BD8, 0x9D7C, 0x7C46, - 0x9D8D, 0x957E, 0x9C20, 0x9C22, 0x9C1E, 0x8970, 0x9C43, 0x9DE0, - 0x9459, 0x9C72, 0x6530, 0x72DD, 0x6804, 0x82FF, 0x8FEC, 0x53DE, - 0x5A30, 0x5BB2, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x4E21, 0x4E20, 0x4E22, 0x4E68, 0x4E89, 0x4E98, 0x4EF9, - 0x4EEF, 0x4EF8, 0x4F06, 0x4F03, 0x4EFC, 0x4EEE, 0x4F16, 0x4F28, - 0x4F1C, 0x4F07, 0x4F1A, 0x4EFA, 0x4F17, 0x514A, 0x5172, 0x51B4, - 0x51B3, 0x51B2, 0x51E8, 0x5214, 0x520F, 0x5215, 0x5218, 0x52A8, - 0x534B, 0x534F, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 04 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0x5350, - 0x538B, 0x53BE, 0x53D2, 0x5416, 0x53FF, 0x5400, 0x5405, 0x5413, - 0x5415, 0x56E3, 0x5735, 0x5736, 0x5731, 0x5732, 0x58EE, 0x5905, - 0x4E54, 0x5936, 0x597A, 0x5986, 0x5B86, 0x5F53, 0x5C18, 0x5C3D, - 0x5C78, 0x5C80, 0x5E08, 0x5EF5, 0x5F0E, 0x5FD3, 0x5FDA, 0x5FDB, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0x620F, 0x625D, 0x625F, - 0x6267, 0x6257, 0x9F50, 0x65EB, 0x65EA, 0x6737, 0x6732, 0x6736, -plane 05 -at 0x00 - 0x6B22, 0x6BCE, 0x6C58, 0x6C51, 0x6C77, 0x6C3C, 0x6C5A, 0x6C53, - 0x706F, 0x7072, 0x706E, 0x7073, 0x72B1, 0x72B2, 0x738F, 0x793C, - 0x808D, 0x808E, 0x827B, 0x8D71, 0x8FB9, 0x9096, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0x909A, 0x4E24, 0x4E71, 0x4E9C, 0x4F45, - 0x4F4A, 0x4F39, 0x4F37, 0x4F32, 0x4F42, 0x4F44, 0x4F4B, 0x4F40, - 0x4F35, 0x4F31, 0x5151, 0x5150, 0x514E, 0x519D, 0x51B5, 0x51B8, - 0x51EC, 0x5223, 0x5227, 0x5226, 0x521F, 0x522B, 0x5220, 0x52B4, - 0x52B3, 0x5325, 0x533B, 0x5374, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 06 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x544D, 0x543A, 0x5444, 0x544C, 0x5423, 0x541A, 0x5432, - 0x544B, 0x5421, 0x5434, 0x5449, 0x5450, 0x5422, 0x543F, 0x5451, - 0x545A, 0x542F, 0x56E9, 0x56F2, 0x56F3, 0x56EF, 0x56ED, 0x56EC, - 0x56E6, 0x5748, 0x5744, 0x573F, 0x573C, 0x5753, 0x5756, 0x575F, - 0x5743, 0x5758, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 07 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0x5757, - 0x5746, 0x573D, 0x5742, 0x5754, 0x5755, 0x58F1, 0x58F2, 0x58F0, - 0x590B, 0x9EA6, 0x56F1, 0x593D, 0x5994, 0x598C, 0x599C, 0x599F, - 0x599B, 0x5989, 0x599A, 0x6588, 0x5B8D, 0x5BFE, 0x5BFF, 0x5BFD, - 0x5C2B, 0x5C84, 0x5C8E, 0x5C9C, 0x5C85, 0x5DF5, 0x5E09, 0x5E0B, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0x5E92, 0x5E90, 0x5F03, - 0x5F1E, 0x5F63, 0x5FE7, 0x5FFE, 0x5FE6, 0x5FDC, 0x5FCE, 0x5FFC, - 0x5FDF, 0x5FEC, 0x5FF6, 0x5FF2, 0x5FF0, 0x5FF9, 0x6213, 0x623B, -plane 08 -at 0x00 - 0x623C, 0x6282, 0x6278, 0x628B, 0x629E, 0x62A5, 0x629B, 0x629C, - 0x6299, 0x628D, 0x6285, 0x629D, 0x6275, 0x65F6, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0x66F5, 0x675B, 0x6754, 0x6752, 0x6758, - 0x6744, 0x674A, 0x6761, 0x6C7F, 0x6C91, 0x6C9E, 0x6C6E, 0x6C7C, - 0x6C9F, 0x6C75, 0x6C56, 0x6CA2, 0x6C79, 0x6CA1, 0x6CAA, 0x6CA0, - 0x7079, 0x7077, 0x707E, 0x7075, 0x707B, 0x7264, 0x72BB, 0x72BC, - 0x72C7, 0x72B9, 0x72BE, 0x72B6, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 09 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x7398, 0x7593, 0x7680, 0x7683, 0x76C0, 0x76C1, 0x77F4, - 0x77F5, 0x7ACC, 0x7ACD, 0x7CFA, 0x809F, 0x8091, 0x8097, 0x8094, - 0x8286, 0x828C, 0x8295, 0x866C, 0x8FBE, 0x8FC7, 0x8FC1, 0x90A9, - 0x90A4, 0x90A8, 0x9627, 0x9626, 0x962B, 0x9633, 0x9634, 0x9629, - 0x4E3D, 0x4E9D, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 10 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0x4F93, - 0x4F8A, 0x4F6D, 0x4F8E, 0x4FA0, 0x4FA2, 0x4FA1, 0x4F9F, 0x4FA3, - 0x4F72, 0x4F8C, 0x5156, 0x5190, 0x51ED, 0x51FE, 0x522F, 0x523C, - 0x5234, 0x5239, 0x52B9, 0x52B5, 0x52BF, 0x5355, 0x5376, 0x537A, - 0x5393, 0x53C1, 0x53C2, 0x53D5, 0x5485, 0x545F, 0x5493, 0x5489, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x8038, 0x8081, - 0x8158, 0x8A24, 0x8DC3, 0x51F2, 0x55B6, 0x5EC3, 0x7861, 0x7A01, - 0x8849, 0x8999, 0x921F, 0x5313, 0x55E0, 0x6139, 0x6ED7, 0x733D, - 0x9775, 0x7FE4, 0x8088, 0x5655, 0x617F, 0x71D7, 0x8666, 0x8F3A, - 0x933D, 0x64F5, 0x7F80, 0x8D01, 0x58E1, 0x7CE9, 0x81CB, 0x95D9, - 0x6707, 0x9A47, 0x7674, 0x5301, 0x53FA, 0x9F99, 0x6C49, 0x8FB7, - 0x4F29, 0x534E, 0x5C81, 0x5F10, 0x6268, 0x6742, 0x6740, 0x51EA, - 0x6C62, 0x7391, 0x8FBB, 0x8FBC, 0x56E8, 0x575B, 0x5C97, 0x6762, - 0x62A4, 0x6766, 0x6CA3, 0x707F, 0x77F6, 0x5479, 0x9EFE, 0x548F, - 0x5469, 0x546D, 0x5494, 0x546A, 0x548A, 0x56FD, 0x56FB, 0x56F8, - 0x56FC, 0x56F6, 0x5765, 0x5781, 0x5763, 0x5767, 0x576E, 0x5778, - 0x577F, 0x58F3, 0x594B, 0x594C, 0x59AD, 0x59C4, 0x59C2, 0x59B0, -plane 11 -at 0x00 - 0x59BF, 0x59C9, 0x59B8, 0x59AC, 0x59B7, 0x59D7, 0x8FC8, 0x4FAB, - 0x5C2D, 0x549C, 0x5788, 0x62C3, 0x6619, 0x67A1, 0x67A6, 0x77FE, - 0x7F57, 0x82C5, 0x8FDF, 0x8FDC, 0x4FE4, 0x551B, 0x57AA, 0x57AB, - 0x5BA9, 0x6811, 0x7551, 0x7553, 0x7818, 0x7AD7, 0x7C7E, 0x867E, - 0x5266, 0x5520, 0x5521, 0x57D7, 0x5BBE, 0x6857, 0x7F3C, 0x8273, - 0x96BE, 0x66FA, 0x5A72, 0x68BD, 0x6E15, 0x7413, 0x74F8, 0x7B3D, - 0x76D8, 0x79FC, 0x7B39, 0x7D4B, 0x83B9, 0x86CF, 0x8EAE, 0x96EB, - 0x55B0, 0x5840, 0x5842, 0x692B, 0x6916, 0x691B, 0x6927, 0x6BF5, - 0x6E82, 0x6E7A, 0x7129, 0x7CAB, 0x7CAC, 0x83F7, 0x9596, 0x55F1, - 0x5F41, 0x698A, 0x698C, 0x6980, 0x697F, 0x789C, 0x7B7B, 0x90D2, - 0x95A0, 0x51A9, 0x7195, 0x7198, 0x7478, 0x78B9, 0x7A33, 0x7CC0, - 0x7CC1, 0x8744, 0x9064, 0x9277, 0x92AF, 0x5E64, 0x6A2B, 0x6F46, - 0x6F9A, 0x92F2, 0x9B79, 0x567A, 0x5F5C, 0x65D9, 0x6A72, 0x6A78, - 0x6B5A, 0x8EBE, 0x933B, 0x9340, 0x933A, 0x9B96, 0x71F5, 0x7A50, - 0x9387, 0x9385, 0x9BB1, 0x9D47, 0x93B9, 0x93BF, 0x9BCF, 0x9D64, - 0x9EBF, 0x89B8, 0x9BF3, 0x7C4F, 0x9425, 0x95E6, 0x9C2F, 0x6B0C, - 0x9C47, 0x7936, 0x6B15, 0x53B5, 0x4F66, 0x4F68, 0x4FE7, 0x503F, - 0x50A6, 0x510F, 0x523E, 0x5324, 0x5365, 0x539B, 0x517F, 0x54CB, - 0x5573, 0x5571, 0x556B, 0x55F4, 0x5622, 0x5620, 0x5692, 0x56BA, - 0x5691, 0x56B0, 0x5759, 0x578A, 0x580F, 0x5812, 0x5813, 0x5847, - 0x589B, 0x5900, 0x594D, 0x5B60, 0x5B96, 0x5B9E, 0x5B94, 0x5B9F, - 0x5B9D, 0x5C00, 0x5C19, 0x5C49, 0x5C4A, 0x5CBB, 0x5CC1, 0x5CB9, - 0x5C9E, 0x5CB4, 0x5CBA, 0x5DF6, 0x5E13, 0x5E12, 0x5E77, 0x5E98, - 0x5E99, 0x5E9D, 0x5EF8, 0x5EF9, 0x5F06, 0x5F21, 0x5F25, 0x5F55, - 0x5F84, 0x5F83, 0x6030, 0x6007, 0x5AD1, 0x5AD3, 0x5B67, 0x5C57, - 0x5C77, 0x5CD5, 0x5D75, 0x5D8E, 0x5DA5, 0x5DB6, 0x5DBF, 0x5E65, - 0x5ECD, 0x5EED, 0x5F94, 0x5F9A, 0x5FBA, 0x6125, 0x6150, 0x62A3, - 0x6360, 0x6364, 0x63B6, 0x6403, 0x64B6, 0x651A, 0x7A25, 0x5C21, - 0x66E2, 0x6702, 0x67A4, 0x67AC, 0x6810, 0x6806, 0x685E, 0x685A, - 0x692C, 0x6929, 0x6A2D, 0x6A77, 0x6A7A, 0x6ACA, 0x6AE6, 0x6AF5, - 0x6B0D, 0x6B0E, 0x6BDC, 0x6BDD, 0x6BF6, 0x6C1E, 0x6C63, 0x6DA5, - 0x6E0F, 0x6E8A, 0x6E84, 0x6E8B, 0x6E7C, 0x6F4C, 0x6F48, 0x6F49, -plane 12 -at 0x00 - 0x6F9D, 0x6F99, 0x6FF8, 0x702E, 0x702D, 0x705C, 0x79CC, 0x70BF, - 0x70EA, 0x70E5, 0x7111, 0x7112, 0x713F, 0x7139, 0x713B, 0x713D, - 0x7177, 0x7175, 0x7176, 0x7171, 0x7196, 0x7193, 0x71B4, 0x71DD, - 0x71DE, 0x720E, 0x5911, 0x7218, 0x7347, 0x7348, 0x73EF, 0x7412, - 0x743B, 0x74A4, 0x748D, 0x74B4, 0x7673, 0x7677, 0x76BC, 0x7819, - 0x781B, 0x783D, 0x7853, 0x7854, 0x7858, 0x78B7, 0x78D8, 0x78EE, - 0x7922, 0x794D, 0x7986, 0x7999, 0x79A3, 0x79BC, 0x7AA7, 0x7B37, - 0x7B59, 0x7BD0, 0x7C2F, 0x7C32, 0x7C42, 0x7C4E, 0x7C68, 0x7CA9, - 0x7CED, 0x7DD0, 0x7E07, 0x7DD3, 0x7E64, 0x7F40, 0x8041, 0x8063, - 0x80BB, 0x6711, 0x6725, 0x8248, 0x8310, 0x8362, 0x8312, 0x8421, - 0x841E, 0x84E2, 0x84DE, 0x84E1, 0x8573, 0x85D4, 0x85F5, 0x8637, - 0x8645, 0x8672, 0x874A, 0x87A9, 0x87A5, 0x87F5, 0x8834, 0x8850, - 0x8887, 0x6036, 0x5FE9, 0x603D, 0x6008, 0x62BA, 0x62B2, 0x62B7, - 0x62E4, 0x62A7, 0x62D5, 0x62E1, 0x62DD, 0x62A6, 0x62C1, 0x62C5, - 0x62C0, 0x62DF, 0x62E0, 0x62DE, 0x6589, 0x65A6, 0x65BA, 0x65FF, - 0x6617, 0x6618, 0x6601, 0x65FE, 0x670C, 0x676B, 0x6796, 0x6782, - 0x678A, 0x67A3, 0x8954, 0x8984, 0x8B03, 0x8C52, 0x8CD8, 0x8D0C, - 0x8D18, 0x8DB0, 0x8EBC, 0x8ED5, 0x8FAA, 0x909C, 0x915C, 0x922B, - 0x9221, 0x9273, 0x92F4, 0x92F5, 0x933F, 0x9342, 0x9386, 0x93BE, - 0x93BC, 0x93BD, 0x93F1, 0x93F2, 0x93EF, 0x9422, 0x9423, 0x9424, - 0x9467, 0x9466, 0x9597, 0x95CE, 0x95E7, 0x973B, 0x974D, 0x98E4, - 0x9942, 0x9B1D, 0x9B98, 0x9D49, 0x6449, 0x5E71, 0x5E85, 0x61D3, - 0x990E, 0x8002, 0x781E, 0x5528, 0x5572, 0x55BA, 0x55F0, 0x55EE, - 0x56B8, 0x56B9, 0x56C4, 0x8053, 0x92B0, 0x4E13, 0x4E1A, 0x4E1B, - 0x4E1C, 0x4E1D, 0x4E25, 0x4E27, 0x4E2C, 0x4E34, 0x4E3A, 0x4E3E, - 0x4E4C, 0x4E50, 0x4E60, 0x4E61, 0x4E66, 0x4E70, 0x4E78, 0x4E9A, - 0x4EA7, 0x4EA9, 0x4EAA, 0x4EB5, 0x4EB8, 0x4EBB, 0x4EBF, 0x4ED1, - 0x4ED3, 0x4EEA, 0x4EEB, 0x4EEC, 0x4F1E, 0x4F1F, 0x4F20, 0x4F21, - 0x4F23, 0x4F24, 0x4F25, 0x4F26, 0x4F27, 0x4F2A, 0x4F2B, 0x4F65, - 0x4FA5, 0x4FA6, 0x4FA7, 0x4FA8, 0x4FA9, 0x4FAA, 0x4FAC, 0x4FE6, - 0x4FE8, 0x4FEA, 0x4FEB, 0x4FED, 0x503A, 0x503D, 0x503E, 0x507E, - 0x507F, 0x50A4, 0x50A5, 0x50A7, 0x50A8, 0x50A9, 0x5170, 0x5174, -plane 13 -at 0x00 - 0x517B, 0x517D, 0x5181, 0x519A, 0x519B, 0x519C, 0x51A7, 0x51AE, - 0x51AF, 0x51BB, 0x51EB, 0x51EF, 0x51FB, 0x51FC, 0x51FF, 0x520D, - 0x5219, 0x521A, 0x521B, 0x522C, 0x522D, 0x523F, 0x5240, 0x5242, - 0x5250, 0x5251, 0x528F, 0x52A1, 0x52A2, 0x52B2, 0x52CB, 0x67A2, - 0x678F, 0x67F9, 0x6780, 0x6B26, 0x6B27, 0x6B68, 0x6B69, 0x6B81, - 0x6BB4, 0x6BD1, 0x6C1C, 0x6C97, 0x6C6C, 0x6CDF, 0x6CEA, 0x6CE4, - 0x6CD8, 0x6CB2, 0x6CCE, 0x6CC8, 0x708B, 0x7088, 0x7090, 0x708F, - 0x7087, 0x7089, 0x708D, 0x7081, 0x708C, 0x7240, 0x7265, 0x7266, - 0x52DA, 0x5326, 0x532E, 0x5356, 0x5362, 0x536B, 0x5385, 0x538C, - 0x538D, 0x5390, 0x5395, 0x53A2, 0x53A3, 0x53BF, 0x53C6, 0x53C7, - 0x53D1, 0x53D8, 0x53FE, 0x5417, 0x5452, 0x5453, 0x5456, 0x5457, - 0x5458, 0x5459, 0x545B, 0x545C, 0x5497, 0x5499, 0x549B, 0x549D, - 0x54D1, 0x54D2, 0x54D3, 0x54D4, 0x54D5, 0x54D7, 0x54D9, 0x54DC, - 0x54DD, 0x54DF, 0x551D, 0x551E, 0x5522, 0x5523, 0x5524, 0x5525, - 0x5567, 0x556C, 0x556D, 0x556E, 0x556F, 0x5570, 0x5574, 0x5578, - 0x5579, 0x55B7, 0x55B9, 0x55BC, 0x55BE, 0x55EB, 0x55EC, 0x55F3, - 0x55F5, 0x5621, 0x5623, 0x5624, 0x5625, 0x565C, 0x565D, 0x567C, - 0x56A1, 0x56A3, 0x56A4, 0x56D6, 0x56E2, 0x56F4, 0x56F5, 0x56FE, - 0x5706, 0x5719, 0x5739, 0x573A, 0x575A, 0x575C, 0x575D, 0x575E, - 0x5760, 0x5784, 0x5785, 0x57AD, 0x57AF, 0x57B1, 0x57B2, 0x57D8, - 0x57D9, 0x57DA, 0x5811, 0x5816, 0x5846, 0x5899, 0x58B6, 0x58CB, - 0x58EA, 0x58F6, 0x58F8, 0x5907, 0x5939, 0x593A, 0x5941, 0x5942, - 0x5956, 0x5987, 0x5988, 0x59A9, 0x59AA, 0x59AB, 0x5A05, 0x5A06, - 0x5A07, 0x5A08, 0x5A32, 0x5A34, 0x5A74, 0x5A76, 0x5AAD, 0x5AD2, - 0x5AD4, 0x5AF1, 0x5AF2, 0x5B59, 0x5B6D, 0x5BA0, 0x5BA1, 0x5BAA, - 0x5BBD, 0x5BFB, 0x5BFC, 0x5C1C, 0x5C1D, 0x5C27, 0x5C34, 0x5C42, - 0x5C43, 0x5C66, 0x5C72, 0x5C7F, 0x5C82, 0x5C83, 0x5C96, 0x5C98, - 0x5C99, 0x5C9A, 0x5C9B, 0x5CBD, 0x5CBF, 0x7268, 0x72CD, 0x72D3, - 0x72DB, 0x72CF, 0x73A7, 0x73A3, 0x739E, 0x73AF, 0x73AA, 0x739C, - 0x7542, 0x7544, 0x753B, 0x7541, 0x759B, 0x759E, 0x79C4, 0x79C3, - 0x79C6, 0x79C7, 0x79CA, 0x7ACF, 0x7C76, 0x7C74, 0x7CFF, 0x7CFC, - 0x7F59, 0x80A8, 0x80B0, 0x80B3, 0x80A4, 0x80B6, 0x5CC2, 0x5CC3, -plane 14 -at 0x00 - 0x5CC4, 0x5CE3, 0x5CE4, 0x5CE7, 0x5D02, 0x5D03, 0x5D04, 0x5D05, - 0x5D2D, 0x5D58, 0x5D5A, 0x5D5D, 0x5DC5, 0x5DEF, 0x5E05, 0x5E0F, - 0x5E10, 0x5E1C, 0x5E26, 0x5E27, 0x5E31, 0x5E3B, 0x5E3C, 0x5E86, - 0x5E91, 0x5E93, 0x5E94, 0x5E9E, 0x5E9F, 0x5EBC, 0x5F20, 0x5F2A, - 0x5F5F, 0x5F68, 0x5F7B, 0x5F95, 0x6001, 0x6002, 0x6003, 0x6004, - 0x6005, 0x6006, 0x603B, 0x603C, 0x603F, 0x6076, 0x6078, 0x6079, - 0x607A, 0x607B, 0x607D, 0x60AB, 0x60AC, 0x60AD, 0x60AF, 0x60EB, - 0x60EC, 0x60ED, 0x60EF, 0x6124, 0x6126, 0x6151, 0x61D1, 0x61D2, - 0x61D4, 0x6206, 0x620B, 0x6217, 0x6269, 0x626A, 0x626B, 0x626C, - 0x629F, 0x62A0, 0x62A1, 0x62A2, 0x62E2, 0x62E3, 0x62E6, 0x62E7, - 0x62E8, 0x62E9, 0x631A, 0x631C, 0x631D, 0x631E, 0x6320, 0x6322, - 0x6324, 0x6325, 0x6326, 0x635E, 0x635F, 0x6361, 0x6362, 0x6363, - 0x63B3, 0x63B7, 0x63B8, 0x63B9, 0x63BC, 0x63FB, 0x63FC, 0x63FD, - 0x63FF, 0x6400, 0x6401, 0x6402, 0x6404, 0x6405, 0x6444, 0x6445, - 0x6448, 0x644A, 0x6484, 0x64B5, 0x64B7, 0x64B8, 0x64BA, 0x64DD, - 0x64DE, 0x6512, 0x6569, 0x6586, 0x658F, 0x6593, 0x65A9, 0x65F7, - 0x65F8, 0x663D, 0x663E, 0x6653, 0x6654, 0x6655, 0x6656, 0x6682, - 0x66A7, 0x6743, 0x6767, 0x6768, 0x6769, 0x67A5, 0x67A7, 0x67A8, - 0x67AA, 0x67AB, 0x67AD, 0x67FD, 0x6807, 0x6808, 0x6809, 0x680A, - 0x680B, 0x680C, 0x680E, 0x80A7, 0x80AC, 0x80A6, 0x5367, 0x820E, - 0x82C4, 0x833E, 0x829C, 0x82AA, 0x82C9, 0x82A6, 0x82B2, 0x8FCC, - 0x8FD9, 0x8FCA, 0x8FD8, 0x8FCF, 0x90B7, 0x90AD, 0x90B9, 0x9637, - 0x9641, 0x963E, 0x9751, 0x9763, 0x4E57, 0x4E79, 0x4EB2, 0x4EB0, - 0x4EAF, 0x4EB1, 0x4FD2, 0x4FD5, 0x680F, 0x6860, 0x6861, 0x6862, - 0x6864, 0x6865, 0x6866, 0x6868, 0x6869, 0x686A, 0x68BE, 0x68BF, - 0x68C0, 0x691D, 0x691F, 0x6920, 0x6924, 0x692D, 0x6984, 0x6987, - 0x6988, 0x6989, 0x69DA, 0x69DB, 0x69DC, 0x69DF, 0x69E0, 0x6A2F, - 0x6A31, 0x6A79, 0x6A7C, 0x6AA9, 0x6B7C, 0x6B87, 0x6B92, 0x6B93, - 0x6B9A, 0x6BC2, 0x6BD5, 0x6BD9, 0x6C07, 0x6C22, 0x6C29, 0x6C47, - 0x6C48, 0x6C64, 0x6CA4, 0x6CA5, 0x6CA6, 0x6CA7, 0x6CA8, 0x6CA9, - 0x6CF6, 0x6CF7, 0x6CF8, 0x6CFA, 0x6CFB, 0x6CFC, 0x6CFD, 0x6CFE, - 0x6D46, 0x6D47, 0x6D48, 0x6D49, 0x6D4A, 0x6D4B, 0x6D4D, 0x6D4E, -plane 15 -at 0x00 - 0x6D4F, 0x6D50, 0x6D51, 0x6D52, 0x6D53, 0x6D54, 0x6D55, 0x6D9D, - 0x6D9F, 0x6DA0, 0x6DA1, 0x6DA2, 0x6DA3, 0x6DA4, 0x6DA6, 0x6DA7, - 0x6DA8, 0x6DA9, 0x6E0D, 0x6E0E, 0x6E10, 0x6E11, 0x6E14, 0x6E16, - 0x6E81, 0x6E83, 0x6E85, 0x6E87, 0x6EDF, 0x6EE0, 0x6EE1, 0x6EE2, - 0x6EE4, 0x6EE5, 0x6EE7, 0x6EEA, 0x6F47, 0x6F4B, 0x6F4D, 0x6F9B, - 0x6F9C, 0x6FD1, 0x6FD2, 0x704F, 0x706D, 0x7080, 0x709C, 0x709D, - 0x709E, 0x70BC, 0x70BD, 0x70C1, 0x70C2, 0x70C3, 0x70E6, 0x70E7, - 0x70E8, 0x70E9, 0x70EB, 0x70EC, 0x70ED, 0x7115, 0x7116, 0x7118, - 0x7140, 0x71F7, 0x7231, 0x7237, 0x724D, 0x7275, 0x728A, 0x72B7, - 0x72B8, 0x72C8, 0x72DE, 0x72EE, 0x72EF, 0x72F0, 0x72F1, 0x72F2, - 0x7303, 0x7321, 0x736D, 0x7399, 0x739A, 0x739B, 0x73AE, 0x73B0, - 0x73B1, 0x4FBE, 0x4FB8, 0x4FB0, 0x4FB1, 0x4FC8, 0x4FC6, 0x4FCC, - 0x4FE5, 0x4FE3, 0x4FB4, 0x516A, 0x519F, 0x51C1, 0x51C2, 0x51C3, - 0x5245, 0x5248, 0x524F, 0x52C5, 0x52CA, 0x52C4, 0x5327, 0x5358, - 0x537D, 0x53DD, 0x53DC, 0x53DA, 0x53D9, 0x54B9, 0x54D0, 0x54B4, - 0x54CA, 0x54A3, 0x73D1, 0x73F0, 0x73F2, 0x740E, 0x740F, 0x7410, - 0x7437, 0x7477, 0x748E, 0x74D2, 0x7519, 0x7534, 0x7535, 0x7545, - 0x758D, 0x7596, 0x759F, 0x75A0, 0x75A1, 0x75AC, 0x75AD, 0x75AE, - 0x75AF, 0x75C8, 0x75C9, 0x75D6, 0x75E8, 0x75EA, 0x75EB, 0x7605, - 0x7617, 0x7618, 0x762A, 0x762B, 0x763E, 0x763F, 0x765D, 0x765E, - 0x7663, 0x7666, 0x766B, 0x7691, 0x76B1, 0x76B2, 0x76CF, 0x76D0, - 0x76D1, 0x770D, 0x772C, 0x7750, 0x7751, 0x7786, 0x7792, 0x7793, - 0x77CB, 0x77EB, 0x77FF, 0x7800, 0x7801, 0x7816, 0x7817, 0x781A, - 0x781C, 0x7839, 0x783B, 0x783E, 0x7840, 0x7841, 0x7855, 0x7856, - 0x7857, 0x7859, 0x785A, 0x785B, 0x7875, 0x7877, 0x789B, 0x78D7, - 0x78D9, 0x7903, 0x7933, 0x7943, 0x794E, 0x796F, 0x7978, 0x79EF, - 0x79FE, 0x7A06, 0x7A23, 0x7A51, 0x7A52, 0x7A5E, 0x7A77, 0x7A8D, - 0x7A8E, 0x7A9C, 0x7A9D, 0x7AA5, 0x7AA6, 0x7AAD, 0x7AD6, 0x7ADE, - 0x7B03, 0x7B15, 0x7B3A, 0x7B3C, 0x7B3E, 0x7B5A, 0x7B5B, 0x7B5C, - 0x7B7C, 0x7B7E, 0x7B7F, 0x7B80, 0x7BA6, 0x7BA7, 0x7BA8, 0x7BA9, - 0x7BAB, 0x7BD1, 0x7BD3, 0x7BEE, 0x7BEF, 0x7C16, 0x7C41, 0x7CAA, - 0x7CF9, 0x7D27, 0x7D77, 0x7DD4, 0x7E06, 0x7E9F, 0x7EA0, 0x7EA1, -plane 16 -at 0x00 - 0x7EA2, 0x7EA3, 0x7EA4, 0x7EA5, 0x7EA6, 0x7EA7, 0x7EA8, 0x7EA9, - 0x7EAA, 0x7EAB, 0x7EAC, 0x7EAD, 0x7EAE, 0x7EAF, 0x7EB0, 0x7EB1, - 0x7EB2, 0x7EB3, 0x7EB4, 0x7EB5, 0x7EB6, 0x7EB7, 0x7EB8, 0x54DA, - 0x54A4, 0x54B2, 0x549E, 0x549F, 0x54B5, 0x54CD, 0x54CC, 0x5700, - 0x57AC, 0x5791, 0x578E, 0x578D, 0x5792, 0x57A1, 0x5790, 0x57A6, - 0x57A8, 0x579C, 0x5796, 0x57A7, 0x58F5, 0x5909, 0x5908, 0x5952, - 0x59DF, 0x59EB, 0x59EF, 0x59F0, 0x59D5, 0x5A0D, 0x5A04, 0x59F9, - 0x7EB9, 0x7EBA, 0x7EBB, 0x7EBC, 0x7EBD, 0x7EBE, 0x7EBF, 0x7EC0, - 0x7EC1, 0x7EC2, 0x7EC3, 0x7EC4, 0x7EC5, 0x7EC6, 0x7EC7, 0x7EC8, - 0x7EC9, 0x7ECA, 0x7ECB, 0x7ECC, 0x7ECD, 0x7ECE, 0x7ECF, 0x7ED0, - 0x7ED1, 0x7ED2, 0x7ED3, 0x7ED4, 0x7ED5, 0x7ED6, 0x7ED7, 0x7ED8, - 0x7ED9, 0x7EDA, 0x7EDB, 0x7EDC, 0x7EDD, 0x7EDE, 0x7EDF, 0x7EE0, - 0x7EE1, 0x7EE2, 0x7EE3, 0x7EE4, 0x7EE5, 0x7EE6, 0x7EE7, 0x7EE8, - 0x7EE9, 0x7EEA, 0x7EEB, 0x7EEC, 0x7EED, 0x7EEE, 0x7EEF, 0x7EF0, - 0x7EF1, 0x7EF2, 0x7EF3, 0x7EF4, 0x7EF5, 0x7EF6, 0x7EF7, 0x7EF8, - 0x7EF9, 0x7EFA, 0x7EFB, 0x7EFC, 0x7EFD, 0x7EFE, 0x7EFF, 0x7F00, - 0x7F01, 0x7F02, 0x7F03, 0x7F04, 0x7F05, 0x7F06, 0x7F07, 0x7F08, - 0x7F09, 0x7F0A, 0x7F0B, 0x7F0C, 0x7F0D, 0x7F0E, 0x7F0F, 0x7F10, - 0x7F11, 0x7F12, 0x7F13, 0x7F14, 0x7F15, 0x7F16, 0x7F17, 0x7F18, - 0x7F19, 0x7F1A, 0x7F1B, 0x7F1C, 0x7F1D, 0x7F1E, 0x7F1F, 0x7F20, - 0x7F21, 0x7F22, 0x7F23, 0x7F24, 0x7F25, 0x7F26, 0x7F27, 0x7F28, - 0x7F29, 0x7F2A, 0x7F2B, 0x7F2C, 0x7F2D, 0x7F2E, 0x7F2F, 0x7F30, - 0x7F31, 0x7F32, 0x7F33, 0x7F34, 0x7F35, 0x7F42, 0x7F49, 0x7F56, - 0x7F5A, 0x7F74, 0x7F81, 0x7F9F, 0x7FD8, 0x7FD9, 0x7FDA, 0x8022, - 0x8027, 0x8042, 0x804B, 0x804C, 0x804D, 0x8054, 0x8069, 0x8080, - 0x8083, 0x80A0, 0x80BC, 0x80BD, 0x80BE, 0x80BF, 0x80C0, 0x80C1, - 0x80E7, 0x80E8, 0x80E9, 0x80EA, 0x80EB, 0x5A02, 0x59F8, 0x59E2, - 0x59D9, 0x59E7, 0x5B6A, 0x5BAB, 0x5C1B, 0x5C2F, 0x663C, 0x5CD1, - 0x5CDC, 0x5CE6, 0x5CE1, 0x5CCD, 0x5CE2, 0x5CDD, 0x5CE5, 0x5DFB, - 0x5DFA, 0x5E1E, 0x5EA1, 0x5EFC, 0x5EFB, 0x5F2F, 0x5F66, 0x605C, - 0x604E, 0x6051, 0x6023, 0x6031, 0x607C, 0x6060, 0x80EC, 0x810C, - 0x810D, 0x810E, 0x810F, 0x8110, 0x8111, 0x8112, 0x8113, 0x8132, -plane 17 -at 0x00 - 0x8136, 0x8137, 0x8138, 0x8156, 0x8159, 0x815A, 0x817B, 0x817C, - 0x817E, 0x8191, 0x81A5, 0x81B6, 0x81DC, 0x8206, 0x8223, 0x8230, - 0x8231, 0x823B, 0x823E, 0x8254, 0x8270, 0x8282, 0x8288, 0x8297, - 0x82C7, 0x82C8, 0x82CB, 0x82CC, 0x82CD, 0x82CE, 0x82CF, 0x830F, - 0x8311, 0x8313, 0x8314, 0x8315, 0x8359, 0x835A, 0x835B, 0x835C, - 0x835D, 0x835E, 0x835F, 0x8360, 0x8361, 0x8364, 0x8365, 0x8366, - 0x8367, 0x8368, 0x8369, 0x836A, 0x836B, 0x836C, 0x836D, 0x836E, - 0x836F, 0x83B2, 0x83B3, 0x83B4, 0x83B6, 0x83B8, 0x83BA, 0x83BC, - 0x841A, 0x841C, 0x841D, 0x8424, 0x8425, 0x8426, 0x8427, 0x8428, - 0x8487, 0x8489, 0x848C, 0x84DD, 0x84DF, 0x84E0, 0x84E3, 0x84E5, - 0x84E6, 0x8537, 0x8539, 0x853A, 0x853C, 0x8572, 0x8574, 0x85D3, - 0x8614, 0x864F, 0x867F, 0x8680, 0x8681, 0x8682, 0x8683, 0x86AC, - 0x86F0, 0x86F1, 0x86F2, 0x86F3, 0x86F4, 0x8717, 0x8748, 0x877E, - 0x8780, 0x87A8, 0x87CF, 0x8854, 0x8865, 0x886C, 0x8885, 0x8886, - 0x88AD, 0x88AF, 0x88C6, 0x88C7, 0x88C8, 0x88E2, 0x88E3, 0x88E4, - 0x88E5, 0x8934, 0x8947, 0x8955, 0x8980, 0x89C1, 0x89C2, 0x89C3, - 0x89C4, 0x89C5, 0x89C6, 0x89C7, 0x89C8, 0x89C9, 0x89CA, 0x89CB, - 0x89CC, 0x89CD, 0x89CE, 0x89CF, 0x89D0, 0x89D1, 0x89DE, 0x89EF, - 0x8A01, 0x8A1A, 0x8A5F, 0x604A, 0x6061, 0x6218, 0x631F, 0x6317, - 0x62EA, 0x6321, 0x6304, 0x6305, 0x6531, 0x6544, 0x6540, 0x6542, - 0x65BE, 0x6629, 0x661B, 0x6623, 0x662C, 0x661A, 0x6630, 0x663B, - 0x661E, 0x6637, 0x6638, 0x670E, 0x67E8, 0x67D6, 0x67C7, 0x67BC, - 0x6852, 0x67BF, 0x67D5, 0x67FE, 0x8A8A, 0x8BA0, 0x8BA1, 0x8BA2, - 0x8BA3, 0x8BA4, 0x8BA5, 0x8BA6, 0x8BA7, 0x8BA8, 0x8BA9, 0x8BAA, - 0x8BAB, 0x8BAC, 0x8BAD, 0x8BAE, 0x8BAF, 0x8BB0, 0x8BB1, 0x8BB2, - 0x8BB3, 0x8BB4, 0x8BB5, 0x8BB6, 0x8BB7, 0x8BB8, 0x8BB9, 0x8BBA, - 0x8BBB, 0x8BBC, 0x8BBD, 0x8BBE, 0x8BBF, 0x8BC0, 0x8BC1, 0x8BC2, - 0x8BC3, 0x8BC4, 0x8BC5, 0x8BC6, 0x8BC7, 0x8BC8, 0x8BC9, 0x8BCA, - 0x8BCB, 0x8BCC, 0x8BCD, 0x8BCE, 0x8BCF, 0x8BD0, 0x8BD1, 0x8BD2, - 0x8BD3, 0x8BD4, 0x8BD5, 0x8BD6, 0x8BD7, 0x8BD8, 0x8BD9, 0x8BDA, - 0x8BDB, 0x8BDC, 0x8BDD, 0x8BDE, 0x8BDF, 0x8BE0, 0x8BE1, 0x8BE2, - 0x8BE3, 0x8BE4, 0x8BE5, 0x8BE6, 0x8BE7, 0x8BE8, 0x8BE9, 0x8BEA, -plane 18 -at 0x00 - 0x8BEB, 0x8BEC, 0x8BED, 0x8BEE, 0x8BEF, 0x8BF0, 0x8BF1, 0x8BF2, - 0x8BF3, 0x8BF4, 0x8BF5, 0x8BF6, 0x8BF7, 0x8BF8, 0x8BF9, 0x8BFA, - 0x8BFB, 0x8BFC, 0x8BFD, 0x8BFE, 0x8BFF, 0x8C00, 0x8C01, 0x8C02, - 0x8C03, 0x8C04, 0x8C05, 0x8C06, 0x8C07, 0x8C08, 0x8C09, 0x8C0A, - 0x8C0B, 0x8C0C, 0x8C0D, 0x8C0E, 0x8C0F, 0x8C10, 0x8C11, 0x8C12, - 0x8C13, 0x8C14, 0x8C15, 0x8C16, 0x8C17, 0x8C18, 0x8C19, 0x8C1A, - 0x8C1B, 0x8C1C, 0x8C1D, 0x8C1E, 0x8C1F, 0x8C20, 0x8C21, 0x8C22, - 0x8C23, 0x8C24, 0x8C25, 0x8C26, 0x8C27, 0x8C28, 0x8C29, 0x8C2A, - 0x8C2B, 0x8C2C, 0x8C2D, 0x8C2E, 0x8C2F, 0x8C30, 0x8C31, 0x8C32, - 0x8C33, 0x8C34, 0x8C35, 0x8C36, 0x8C6E, 0x8D1D, 0x8D1E, 0x8D1F, - 0x8D20, 0x8363, 0x67FB, 0x67B1, 0x6801, 0x6805, 0x6800, 0x67D7, - 0x6B2A, 0x6B6B, 0x6BE1, 0x6D23, 0x6CFF, 0x6D14, 0x6D05, 0x6D13, - 0x6D06, 0x6D21, 0x6D15, 0x6CAF, 0x6CF4, 0x6D02, 0x6D45, 0x6D26, - 0x6D44, 0x6D24, 0x70A5, 0x70A3, 0x70A2, 0x70BB, 0x70A0, 0x70AA, - 0x70A8, 0x70B6, 0x8D21, 0x8D22, 0x8D23, 0x8D24, 0x8D25, 0x8D26, - 0x8D27, 0x8D28, 0x8D29, 0x8D2A, 0x8D2B, 0x8D2C, 0x8D2D, 0x8D2E, - 0x8D2F, 0x8D30, 0x8D31, 0x8D32, 0x8D33, 0x8D34, 0x8D35, 0x8D36, - 0x8D37, 0x8D38, 0x8D39, 0x8D3A, 0x8D3B, 0x8D3C, 0x8D3D, 0x8D3E, - 0x8D3F, 0x8D40, 0x8D41, 0x8D42, 0x8D43, 0x8D44, 0x8D45, 0x8D46, - 0x8D47, 0x8D48, 0x8D49, 0x8D4A, 0x8D4B, 0x8D4C, 0x8D4D, 0x8D4E, - 0x8D4F, 0x8D50, 0x8D51, 0x8D52, 0x8D53, 0x8D54, 0x8D55, 0x8D56, - 0x8D57, 0x8D58, 0x8D59, 0x8D5A, 0x8D5B, 0x8D5C, 0x8D5D, 0x8D5E, - 0x8D5F, 0x8D60, 0x8D61, 0x8D62, 0x8D63, 0x8D6A, 0x8D75, 0x8DB1, - 0x8DB8, 0x8DC4, 0x8DDE, 0x8DF6, 0x8DF7, 0x8DF8, 0x8DF9, 0x8DFB, - 0x8E0C, 0x8E0E, 0x8E2C, 0x8E2D, 0x8E2F, 0x8E52, 0x8E7E, 0x8E7F, - 0x8E80, 0x8E8F, 0x8E9C, 0x8ECE, 0x8F66, 0x8F67, 0x8F68, 0x8F69, - 0x8F6A, 0x8F6B, 0x8F6C, 0x8F6D, 0x8F6E, 0x8F6F, 0x8F70, 0x8F71, - 0x8F72, 0x8F73, 0x8F74, 0x8F75, 0x8F76, 0x8F77, 0x8F78, 0x8F79, - 0x8F7A, 0x8F7B, 0x8F7C, 0x8F7D, 0x8F7E, 0x8F7F, 0x8F80, 0x8F81, - 0x8F82, 0x8F83, 0x8F84, 0x8F85, 0x8F86, 0x8F87, 0x8F88, 0x8F89, - 0x8F8A, 0x8F8B, 0x8F8C, 0x8F8D, 0x8F8E, 0x8F8F, 0x8F90, 0x8F91, - 0x8F92, 0x8F93, 0x8F94, 0x8F95, 0x8F96, 0x8F97, 0x8F98, 0x8F99, -plane 19 -at 0x00 - 0x8F9A, 0x8FA9, 0x8FAB, 0x8FBD, 0x8FDB, 0x8FDD, 0x8FDE, 0x8FF3, - 0x900A, 0x9026, 0x9057, 0x909D, 0x90AC, 0x90BA, 0x90BB, 0x70B2, - 0x70A7, 0x70B9, 0x722E, 0x723C, 0x726D, 0x72E7, 0x72ED, 0x72EC, - 0x72E5, 0x72E2, 0x73C4, 0x73BD, 0x73CF, 0x73C9, 0x73C1, 0x73D0, - 0x73CE, 0x74ED, 0x74EB, 0x74EF, 0x7549, 0x7550, 0x7546, 0x754A, - 0x754D, 0x75A6, 0x75A8, 0x76C7, 0x76FF, 0x76FD, 0x77E6, 0x780A, - 0x90CF, 0x90D0, 0x90D1, 0x90D3, 0x90E6, 0x90E7, 0x90F8, 0x9142, - 0x915D, 0x915E, 0x9166, 0x9171, 0x917D, 0x917E, 0x917F, 0x91CA, - 0x91D2, 0x91FA, 0x922A, 0x9274, 0x933E, 0x9341, 0x93F0, 0x9426, - 0x9485, 0x9486, 0x9487, 0x9488, 0x9489, 0x948A, 0x948B, 0x948C, - 0x948D, 0x948E, 0x948F, 0x9490, 0x9491, 0x9492, 0x9493, 0x9494, - 0x9495, 0x9496, 0x9497, 0x9498, 0x9499, 0x949A, 0x949B, 0x949C, - 0x949D, 0x949E, 0x949F, 0x94A0, 0x94A1, 0x94A2, 0x94A3, 0x94A4, - 0x94A5, 0x94A6, 0x94A7, 0x94A8, 0x94A9, 0x94AA, 0x94AB, 0x94AC, - 0x94AD, 0x94AE, 0x94AF, 0x94B0, 0x94B1, 0x94B2, 0x94B3, 0x94B4, - 0x94B5, 0x94B6, 0x94B7, 0x94B8, 0x94B9, 0x94BA, 0x94BB, 0x94BC, - 0x94BD, 0x94BE, 0x94BF, 0x94C0, 0x94C1, 0x94C2, 0x94C3, 0x94C4, - 0x94C5, 0x94C6, 0x94C7, 0x94C8, 0x94C9, 0x94CA, 0x94CB, 0x94CC, - 0x94CD, 0x94CE, 0x94CF, 0x94D0, 0x94D1, 0x94D2, 0x94D3, 0x94D4, - 0x94D5, 0x94D6, 0x94D7, 0x94D8, 0x94D9, 0x94DA, 0x94DB, 0x94DC, - 0x94DD, 0x94DE, 0x94DF, 0x94E0, 0x94E1, 0x94E2, 0x94E3, 0x94E4, - 0x94E5, 0x94E6, 0x94E7, 0x94E8, 0x94E9, 0x94EA, 0x94EB, 0x94EC, - 0x94ED, 0x94EE, 0x94EF, 0x94F0, 0x94F1, 0x94F2, 0x94F3, 0x94F4, - 0x94F5, 0x94F6, 0x94F7, 0x94F8, 0x94F9, 0x94FA, 0x94FB, 0x94FC, - 0x94FD, 0x94FE, 0x94FF, 0x9500, 0x9501, 0x9502, 0x9503, 0x9504, - 0x9505, 0x9506, 0x9507, 0x9508, 0x9509, 0x7804, 0x780B, 0x7807, - 0x7815, 0x7808, 0x79D3, 0x79D4, 0x79D0, 0x79D7, 0x7A7C, 0x7A7D, - 0x7A83, 0x7A82, 0x7AD4, 0x7AD5, 0x7AD3, 0x7AD0, 0x7AD2, 0x7AFE, - 0x7AFC, 0x7C77, 0x7C7C, 0x7C7B, 0x7F8F, 0x80D3, 0x80CB, 0x80D2, - 0x8109, 0x80E2, 0x80DF, 0x80C6, 0x8224, 0x82F7, 0x950A, 0x950B, - 0x950C, 0x950D, 0x950E, 0x950F, 0x9510, 0x9511, 0x9512, 0x9513, - 0x9514, 0x9515, 0x9516, 0x9517, 0x9518, 0x9519, 0x951A, 0x951B, -plane 20 -at 0x00 - 0x951C, 0x951D, 0x951E, 0x951F, 0x9520, 0x9521, 0x9522, 0x9523, - 0x9524, 0x9525, 0x9526, 0x9527, 0x9528, 0x9529, 0x952A, 0x952B, - 0x952C, 0x952D, 0x952E, 0x952F, 0x9530, 0x9531, 0x9532, 0x9533, - 0x9534, 0x9535, 0x9536, 0x9537, 0x9538, 0x9539, 0x953A, 0x953B, - 0x953C, 0x953D, 0x953E, 0x953F, 0x9540, 0x9541, 0x9542, 0x9543, - 0x9544, 0x9545, 0x9546, 0x9547, 0x9548, 0x9549, 0x954A, 0x954B, - 0x954C, 0x954D, 0x954E, 0x954F, 0x9550, 0x9551, 0x9552, 0x9553, - 0x9554, 0x9555, 0x9556, 0x9557, 0x9558, 0x9559, 0x955A, 0x955B, - 0x955C, 0x955D, 0x955E, 0x955F, 0x9560, 0x9561, 0x9562, 0x9563, - 0x9564, 0x9565, 0x9566, 0x9567, 0x9568, 0x9569, 0x956A, 0x956B, - 0x956C, 0x956D, 0x956E, 0x956F, 0x9570, 0x9571, 0x9572, 0x9573, - 0x9574, 0x9575, 0x9576, 0x957F, 0x95E8, 0x95E9, 0x95EA, 0x95EB, - 0x95EC, 0x95ED, 0x95EE, 0x95EF, 0x95F0, 0x95F1, 0x95F2, 0x95F3, - 0x95F4, 0x95F5, 0x95F6, 0x95F7, 0x95F8, 0x95F9, 0x95FA, 0x95FB, - 0x95FC, 0x95FD, 0x95FE, 0x95FF, 0x9600, 0x9601, 0x9602, 0x9603, - 0x9604, 0x9605, 0x9606, 0x9607, 0x9608, 0x9609, 0x960A, 0x960B, - 0x960C, 0x960D, 0x960E, 0x960F, 0x9610, 0x9611, 0x9612, 0x9613, - 0x9614, 0x9615, 0x9616, 0x82D8, 0x82DD, 0x82F8, 0x82FC, 0x82E9, - 0x82EE, 0x82D0, 0x830E, 0x82E2, 0x830B, 0x82FD, 0x5179, 0x8676, - 0x8678, 0x8675, 0x867D, 0x8842, 0x8866, 0x898C, 0x8A05, 0x8A06, - 0x8C9F, 0x8FF1, 0x8FE7, 0x8FE9, 0x8FEF, 0x90C2, 0x90BC, 0x90C6, - 0x90C0, 0x90CD, 0x90C9, 0x90C4, 0x9617, 0x9618, 0x9619, 0x961A, - 0x961B, 0x961F, 0x9635, 0x9636, 0x9645, 0x9646, 0x9647, 0x9648, - 0x9649, 0x9667, 0x9668, 0x9669, 0x9690, 0x96E0, 0x96F3, 0x96FE, - 0x9701, 0x972D, 0x9753, 0x9754, 0x9765, 0x9791, 0x9792, 0x97AF, - 0x97E6, 0x97E7, 0x97E8, 0x97E9, 0x97EA, 0x97EB, 0x97EC, 0x9875, - 0x9876, 0x9877, 0x9878, 0x9879, 0x987A, 0x987B, 0x987C, 0x987D, - 0x987E, 0x987F, 0x9880, 0x9881, 0x9882, 0x9883, 0x9884, 0x9885, - 0x9886, 0x9887, 0x9888, 0x9889, 0x988A, 0x988B, 0x988C, 0x988D, - 0x988E, 0x988F, 0x9890, 0x9891, 0x9892, 0x9893, 0x9894, 0x9895, - 0x9896, 0x9897, 0x9898, 0x9899, 0x989A, 0x989B, 0x989C, 0x989D, - 0x989E, 0x989F, 0x98A0, 0x98A1, 0x98A2, 0x98A3, 0x98A4, 0x98A5, -plane 21 -at 0x00 - 0x98A6, 0x98A7, 0x98CE, 0x98CF, 0x98D0, 0x98D1, 0x98D2, 0x98D3, - 0x98D4, 0x98D5, 0x98D6, 0x98D7, 0x98D8, 0x98D9, 0x98DA, 0x98DE, - 0x98E0, 0x98E8, 0x990D, 0x990F, 0x9962, 0x9963, 0x9964, 0x9965, - 0x9966, 0x9967, 0x9968, 0x9969, 0x996A, 0x996B, 0x996C, 0x996D, - 0x996E, 0x996F, 0x9970, 0x9971, 0x9972, 0x9973, 0x9974, 0x9975, - 0x9976, 0x9977, 0x9978, 0x9979, 0x997A, 0x997B, 0x997C, 0x997D, - 0x997E, 0x997F, 0x9980, 0x9981, 0x9982, 0x9983, 0x9984, 0x9985, - 0x9986, 0x9987, 0x9988, 0x9989, 0x998A, 0x998B, 0x998C, 0x998D, - 0x998E, 0x998F, 0x9990, 0x9991, 0x9992, 0x9993, 0x9994, 0x9995, - 0x9A6C, 0x9581, 0x9CEC, 0x5032, 0x4FF9, 0x501D, 0x4FFF, 0x5004, - 0x4FF0, 0x5003, 0x5002, 0x4FFC, 0x4FF2, 0x5024, 0x5008, 0x5036, - 0x502E, 0x5010, 0x5038, 0x5039, 0x4FFD, 0x5056, 0x4FFB, 0x51A3, - 0x51A6, 0x51A1, 0x51C7, 0x51C9, 0x5260, 0x5264, 0x5259, 0x5265, - 0x5267, 0x5257, 0x9A6D, 0x9A6E, 0x9A6F, 0x9A70, 0x9A71, 0x9A72, - 0x9A73, 0x9A74, 0x9A75, 0x9A76, 0x9A77, 0x9A78, 0x9A79, 0x9A7A, - 0x9A7B, 0x9A7C, 0x9A7D, 0x9A7E, 0x9A7F, 0x9A80, 0x9A81, 0x9A82, - 0x9A83, 0x9A84, 0x9A85, 0x9A86, 0x9A87, 0x9A88, 0x9A89, 0x9A8A, - 0x9A8B, 0x9A8C, 0x9A8D, 0x9A8E, 0x9A8F, 0x9A90, 0x9A91, 0x9A92, - 0x9A93, 0x9A94, 0x9A95, 0x9A96, 0x9A97, 0x9A98, 0x9A99, 0x9A9A, - 0x9A9B, 0x9A9C, 0x9A9D, 0x9A9E, 0x9A9F, 0x9AA0, 0x9AA1, 0x9AA2, - 0x9AA3, 0x9AA4, 0x9AA5, 0x9AA6, 0x9AA7, 0x9ACB, 0x9ACC, 0x9B13, - 0x9B47, 0x9C7C, 0x9C7D, 0x9C7E, 0x9C7F, 0x9C80, 0x9C81, 0x9C82, - 0x9C83, 0x9C84, 0x9C85, 0x9C86, 0x9C87, 0x9C88, 0x9C89, 0x9C8A, - 0x9C8B, 0x9C8C, 0x9C8D, 0x9C8E, 0x9C8F, 0x9C90, 0x9C91, 0x9C92, - 0x9C93, 0x9C94, 0x9C95, 0x9C96, 0x9C97, 0x9C98, 0x9C99, 0x9C9A, - 0x9C9B, 0x9C9C, 0x9C9D, 0x9C9E, 0x9C9F, 0x9CA0, 0x9CA1, 0x9CA2, - 0x9CA3, 0x9CA4, 0x9CA5, 0x9CA6, 0x9CA7, 0x9CA8, 0x9CA9, 0x9CAA, - 0x9CAB, 0x9CAC, 0x9CAD, 0x9CAE, 0x9CAF, 0x9CB0, 0x9CB1, 0x9CB2, - 0x9CB3, 0x9CB4, 0x9CB5, 0x9CB6, 0x9CB7, 0x9CB8, 0x9CB9, 0x9CBA, - 0x9CBB, 0x9CBC, 0x9CBD, 0x9CBE, 0x9CBF, 0x9CC0, 0x9CC1, 0x9CC2, - 0x9CC3, 0x9CC4, 0x9CC5, 0x9CC6, 0x9CC7, 0x9CC8, 0x9CC9, 0x9CCA, - 0x9CCB, 0x9CCC, 0x9CCD, 0x9CCE, 0x9CCF, 0x9CD0, 0x9CD1, 0x9CD2, -plane 22 -at 0x00 - 0x9CD3, 0x9CD4, 0x9CD5, 0x9CD6, 0x9CD7, 0x9CD8, 0x9CD9, 0x5263, - 0x5253, 0x52CF, 0x52CE, 0x52D0, 0x52D1, 0x52CC, 0x550D, 0x54F4, - 0x5513, 0x54EF, 0x54F5, 0x54F9, 0x5502, 0x5500, 0x5518, 0x54F0, - 0x54F6, 0x5519, 0x5705, 0x57C9, 0x57B7, 0x57CD, 0x57BE, 0x57BB, - 0x57DB, 0x57C8, 0x57C4, 0x57C5, 0x57D1, 0x57CA, 0x57C0, 0x5A21, - 0x9CDA, 0x9CDB, 0x9CDC, 0x9CDD, 0x9CDE, 0x9CDF, 0x9CE0, 0x9CE1, - 0x9CE2, 0x9CE3, 0x9CE4, 0x9E1F, 0x9E20, 0x9E21, 0x9E22, 0x9E23, - 0x9E24, 0x9E25, 0x9E26, 0x9E27, 0x9E28, 0x9E29, 0x9E2A, 0x9E2B, - 0x9E2C, 0x9E2D, 0x9E2E, 0x9E2F, 0x9E30, 0x9E31, 0x9E32, 0x9E33, - 0x9E34, 0x9E35, 0x9E36, 0x9E37, 0x9E38, 0x9E39, 0x9E3A, 0x9E3B, - 0x9E3C, 0x9E3D, 0x9E3E, 0x9E3F, 0x9E40, 0x9E41, 0x9E42, 0x9E43, - 0x9E44, 0x9E45, 0x9E46, 0x9E47, 0x9E48, 0x9E49, 0x9E4A, 0x9E4B, - 0x9E4C, 0x9E4D, 0x9E4E, 0x9E4F, 0x9E50, 0x9E51, 0x9E52, 0x9E53, - 0x9E54, 0x9E55, 0x9E56, 0x9E57, 0x9E58, 0x9E59, 0x9E5A, 0x9E5B, - 0x9E5C, 0x9E5D, 0x9E5E, 0x9E5F, 0x9E60, 0x9E61, 0x9E62, 0x9E63, - 0x9E64, 0x9E65, 0x9E66, 0x9E67, 0x9E68, 0x9E69, 0x9E6A, 0x9E6B, - 0x9E6C, 0x9E6D, 0x9E6E, 0x9E6F, 0x9E70, 0x9E71, 0x9E72, 0x9E73, - 0x9E74, 0x9E7E, 0x9EC9, 0x9EE1, 0x9EE9, 0x9EEA, 0x9F0B, 0x9F0C, - 0x9F0D, 0x9F51, 0x9F7F, 0x9F80, 0x9F81, 0x9F82, 0x9F83, 0x9F84, - 0x9F85, 0x9F86, 0x9F87, 0x9F88, 0x9F89, 0x9F8A, 0x9F8B, 0x9F8C, - 0x9F9A, 0x9F9B, 0x9F9F, 0x4E06, 0x4E37, 0x4E44, 0x4E4A, 0x4E55, - 0x4E5B, 0x4E64, 0x4E65, 0x4E67, 0x4E6B, 0x4E6C, 0x4E6D, 0x4E6E, - 0x4E6F, 0x4E72, 0x4E76, 0x4E77, 0x4E7A, 0x4E7B, 0x4E7C, 0x4E7D, - 0x4E8A, 0x4E90, 0x4EBD, 0x4ED2, 0x4EED, 0x4FA4, 0x4FAD, 0x503B, - 0x50F2, 0x516F, 0x517A, 0x51E6, 0x51E7, 0x5A2A, 0x5A1D, 0x5A0B, - 0x5A22, 0x5A24, 0x5A14, 0x5A31, 0x5A2F, 0x5A1A, 0x5A12, 0x5A26, - 0x5BBC, 0x5BBB, 0x5BB7, 0x5C05, 0x5C06, 0x5C52, 0x5C53, 0x5CFA, - 0x5CEB, 0x5CF3, 0x5CF5, 0x5CE9, 0x5CEF, 0x5E2A, 0x5E30, 0x5E2E, - 0x5E2C, 0x5E2F, 0x5EAF, 0x5EA9, 0x5EFD, 0x5F32, 0x51E9, 0x5271, - 0x5302, 0x5381, 0x5391, 0x53BC, 0x5414, 0x5455, 0x54D8, 0x54DB, - 0x551C, 0x551F, 0x5569, 0x55B8, 0x55BD, 0x55ED, 0x561A, 0x565B, - 0x56A2, 0x56CE, 0x56D5, 0x5726, 0x5737, 0x5738, 0x5786, 0x5789, -plane 23 -at 0x00 - 0x57B0, 0x57B3, 0x57D6, 0x5815, 0x5841, 0x586E, 0x5870, 0x58B8, - 0x58B9, 0x58CC, 0x58D7, 0x58E5, 0x58ED, 0x591E, 0x593B, 0x5B36, - 0x5B5E, 0x5B91, 0x5BC9, 0x5C02, 0x5C26, 0x5C2E, 0x5C32, 0x5C76, - 0x5CBC, 0x5CBE, 0x5CC5, 0x5CE0, 0x5D2B, 0x5D5C, 0x5D76, 0x5DEA, - 0x5DEC, 0x5DED, 0x5DFC, 0x5E49, 0x5EE4, 0x5F09, 0x5F16, 0x5F45, - 0x5FC6, 0x603A, 0x603E, 0x6077, 0x6184, 0x61F4, 0x6244, 0x6255, - 0x6256, 0x62E5, 0x6318, 0x6327, 0x63B4, 0x63B5, 0x63BB, 0x6442, - 0x655B, 0x657D, 0x657E, 0x65C0, 0x65D5, 0x663F, 0x6683, 0x66FB, - 0x66FD, 0x6730, 0x6741, 0x6763, 0x6764, 0x67A0, 0x67A9, 0x6802, - 0x6803, 0x680D, 0x685B, 0x685C, 0x685D, 0x685F, 0x6863, 0x6867, - 0x688D, 0x68BA, 0x68BB, 0x68BC, 0x68C2, 0x6919, 0x691A, 0x6921, - 0x6922, 0x6923, 0x6926, 0x6928, 0x697E, 0x6981, 0x698B, 0x69DD, - 0x69DE, 0x6A2E, 0x6A30, 0x6A73, 0x6A74, 0x6A75, 0x6A7B, 0x6AC9, - 0x6AE4, 0x6AF7, 0x6B05, 0x6B1F, 0x6BA9, 0x6BB1, 0x6BDF, 0x6BEE, - 0x6C0E, 0x6C17, 0x6C35, 0x6C3A, 0x6C3D, 0x6D4C, 0x6D9C, 0x6D9E, - 0x6E13, 0x6E7F, 0x6E8C, 0x6EDE, 0x6FF9, 0x704E, 0x7050, 0x7114, - 0x713C, 0x713E, 0x7155, 0x5F8E, 0x5F93, 0x5F8F, 0x604F, 0x6099, - 0x607E, 0x6074, 0x604B, 0x6073, 0x6075, 0x6056, 0x60A9, 0x608B, - 0x60A6, 0x6093, 0x60AE, 0x609E, 0x60A7, 0x6245, 0x632E, 0x6352, - 0x6330, 0x635B, 0x6319, 0x631B, 0x6331, 0x635D, 0x6337, 0x6335, - 0x6353, 0x635C, 0x633F, 0x654B, 0x7173, 0x71F6, 0x7233, 0x725C, - 0x72A0, 0x731F, 0x7320, 0x7339, 0x7363, 0x7364, 0x73F1, 0x7411, - 0x748F, 0x7491, 0x74E7, 0x74F0, 0x74F1, 0x74F2, 0x74FC, 0x7505, - 0x753C, 0x7552, 0x7560, 0x7569, 0x7573, 0x7574, 0x7582, 0x7597, - 0x75E9, 0x7604, 0x7606, 0x764D, 0x767A, 0x770C, 0x77C8, 0x783A, - 0x783C, 0x783F, 0x7872, 0x7873, 0x7874, 0x78B5, 0x78B6, 0x78F5, - 0x7916, 0x7934, 0x793B, 0x7985, 0x79F4, 0x79FD, 0x7A24, 0x7A43, - 0x7A5D, 0x7A63, 0x7AC3, 0x7B02, 0x7B07, 0x7B5D, 0x7B7A, 0x7B7D, - 0x7B9A, 0x7BAA, 0x7BCF, 0x7BD2, 0x7C13, 0x7C14, 0x7C17, 0x7C31, - 0x7C61, 0x7C82, 0x7C8F, 0x7C90, 0x7CAD, 0x7CD8, 0x7D26, 0x7D9A, - 0x7D9B, 0x7DD5, 0x7E05, 0x7E28, 0x7E4A, 0x7E4B, 0x7E67, 0x7E83, - 0x7E90, 0x7F53, 0x7FAA, 0x8062, 0x810B, 0x8133, 0x8135, 0x8157, -plane 24 -at 0x00 - 0x81A4, 0x81D3, 0x8217, 0x822E, 0x824D, 0x825D, 0x8260, 0x827A, - 0x82C6, 0x83B1, 0x83B5, 0x83BB, 0x8419, 0x8420, 0x8422, 0x8485, - 0x848A, 0x848B, 0x84D9, 0x84DC, 0x8536, 0x85AD, 0x85AE, 0x8612, - 0x8630, 0x8644, 0x86AB, 0x86CD, 0x86CE, 0x86EF, 0x8749, 0x874B, - 0x877F, 0x87A6, 0x87A7, 0x87D0, 0x8864, 0x88AE, 0x88B0, 0x88C3, - 0x88C4, 0x88C5, 0x8904, 0x891C, 0x891D, 0x8945, 0x8968, 0x8977, - 0x8A33, 0x8A89, 0x8AAD, 0x8AAE, 0x8ADA, 0x8B21, 0x8B5B, 0x8B72, - 0x8B8F, 0x8CCE, 0x8DE5, 0x8DF5, 0x8E7D, 0x8E9B, 0x8EB5, 0x8EBB, - 0x8EC5, 0x658B, 0x659A, 0x6650, 0x6646, 0x664E, 0x6640, 0x664B, - 0x6648, 0x6660, 0x6644, 0x664D, 0x6837, 0x6824, 0x681B, 0x6836, - 0x682C, 0x6819, 0x6856, 0x6847, 0x683E, 0x681E, 0x6815, 0x6822, - 0x6827, 0x6859, 0x6858, 0x6855, 0x6830, 0x6823, 0x6B2E, 0x6B2B, - 0x6B30, 0x6B6C, 0x8EC8, 0x8EE2, 0x8EE3, 0x8F0C, 0x8F4C, 0x8FBA, - 0x8FDA, 0x8FF2, 0x9027, 0x9039, 0x9056, 0x9065, 0x915B, 0x9197, - 0x91A4, 0x91B8, 0x91C8, 0x91E1, 0x91FB, 0x91FC, 0x9228, 0x9229, - 0x922C, 0x9271, 0x9344, 0x93BA, 0x9421, 0x9441, 0x9453, 0x958A, - 0x95AA, 0x95CF, 0x9665, 0x9666, 0x967A, 0x974C, 0x974E, 0x974F, - 0x9771, 0x9786, 0x9790, 0x982C, 0x98AA, 0x98B4, 0x98C5, 0x98EE, - 0x99C5, 0x99F2, 0x9A12, 0x9A13, 0x9A28, 0x9AC5, 0x9B36, 0x9B5E, - 0x9B78, 0x9B97, 0x9BB2, 0x9BB4, 0x9BCE, 0x9BD0, 0x9BD1, 0x9BF1, - 0x9BF2, 0x9BF5, 0x9C18, 0x9C19, 0x9C1A, 0x9C30, 0x9C5A, 0x9C5B, - 0x9C5C, 0x9C69, 0x9C6A, 0x9C6B, 0x9C70, 0x9CF0, 0x9D0E, 0x9D2B, - 0x9D2C, 0x9D46, 0x9D48, 0x9D65, 0x9D8E, 0x9D8F, 0x9DAB, 0x9DC6, - 0x9E78, 0x9EB8, 0x9EB9, 0x9EBA, 0x9F21, 0x9F62, 0, 0, - 0x3000, 0xFF0C, 0x3001, 0x3002, 0xFF0E, 0x2027, 0xFF1B, 0xFF1A, - 0xFF1F, 0xFF01, 0xFE30, 0x2026, 0x2025, 0xFE50, 0xFE51, 0xFE52, - 0x00B7, 0xFE54, 0xFE55, 0xFE56, 0xFE57, 0xFF5C, 0x2015, 0xFE31, - 0x2014, 0xFE33, 0x2574, 0xFE34, 0xFE4F, 0xFF08, 0xFF09, 0xFE35, - 0xFE36, 0xFF5B, 0xFF5D, 0xFE37, 0xFE38, 0x3014, 0x3015, 0xFE39, - 0xFE3A, 0x3010, 0x3011, 0xFE3B, 0xFE3C, 0x300A, 0x300B, 0xFE3D, - 0xFE3E, 0x3008, 0x3009, 0xFE3F, 0xFE40, 0x300C, 0x300D, 0xFE41, - 0xFE42, 0x300E, 0x300F, 0xFE43, 0xFE44, 0xFE59, 0xFE5A, 0x6B8B, -plane 25 -at 0x00 - 0x6BE9, 0x6BEA, 0x6BE5, 0x6D6B, 0x6D73, 0x6D57, 0x6D5D, 0x6D56, - 0x6D8F, 0x6D5B, 0x6D1C, 0x6D9A, 0x6D9B, 0x6D99, 0x6D81, 0x6D71, - 0x6D72, 0x6D5C, 0x6D96, 0x70C4, 0x70DB, 0x70CC, 0x70D0, 0x70E3, - 0x70DF, 0x70D6, 0x70EE, 0x70D5, 0x727A, 0x72F5, 0x7302, 0x73E2, - 0xFE5B, 0xFE5C, 0xFE5D, 0xFE5E, 0x2018, 0x2019, 0x201C, 0x201D, - 0x301D, 0x301E, 0x2035, 0x2032, 0xFF03, 0xFF06, 0xFF0A, 0x203B, - 0x00A7, 0x3003, 0x25CB, 0x25CF, 0x25B3, 0x25B2, 0x25CE, 0x2606, - 0x2605, 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25BD, 0x25BC, 0x32A3, - 0x2105, 0x203E, 0xFFE3, 0xFF3F, 0x02CD, 0xFE49, 0xFE4A, 0xFE4D, - 0xFE4E, 0xFE4B, 0xFE4C, 0xFE5F, 0xFE60, 0xFE61, 0xFF0B, 0xFF0D, - 0x00D7, 0x00F7, 0x00B1, 0x221A, 0xFF1C, 0xFF1E, 0xFF1D, 0x2266, - 0x2267, 0x2260, 0x221E, 0x2252, 0x2261, 0xFE62, 0xFE63, 0xFE64, - 0xFE65, 0xFE66, 0xFF5E, 0x2229, 0x222A, 0x22A5, 0x2220, 0x221F, - 0x22BF, 0x33D2, 0x33D1, 0x222B, 0x222E, 0x2235, 0x2234, 0x2640, - 0x2642, 0x2295, 0x2299, 0x2191, 0x2193, 0x2190, 0x2192, 0x2196, - 0x2197, 0x2199, 0x2198, 0x2225, 0x2223, 0xFF0F, 0xFF3C, 0x2215, - 0xFE68, 0xFF04, 0xFFE5, 0x3012, 0xFFE0, 0xFFE1, 0xFF05, 0xFF20, - 0x2103, 0x2109, 0xFE69, 0xFE6A, 0xFE6B, 0x33D5, 0x339C, 0x339D, - 0x339E, 0x33CE, 0x33A1, 0x338E, 0x338F, 0x33C4, 0x00B0, 0x5159, - 0x515B, 0x515E, 0x515D, 0x5161, 0x5163, 0x55E7, 0x74E9, 0x7CCE, - 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, 0x2587, 0x2588, - 0x258F, 0x258E, 0x258D, 0x258C, 0x258B, 0x258A, 0x2589, 0x253C, - 0x2534, 0x252C, 0x2524, 0x251C, 0x2594, 0x2500, 0x2502, 0x2595, - 0x250C, 0x2510, 0x2514, 0x2518, 0x256D, 0x73EC, 0x73D5, 0x73F9, - 0x73DF, 0x73E6, 0x73E4, 0x73E1, 0x74F3, 0x7556, 0x7555, 0x7558, - 0x7557, 0x755E, 0x75C3, 0x75B4, 0x75B1, 0x76CB, 0x76CC, 0x772A, - 0x7716, 0x770F, 0x773F, 0x772B, 0x770E, 0x7724, 0x7721, 0x7718, - 0x77DD, 0x7824, 0x7836, 0x7958, 0x7959, 0x7962, 0x256E, 0x2570, - 0x256F, 0x2501, 0x251D, 0x253F, 0x2525, 0x25E2, 0x25E3, 0x25E5, - 0x25E4, 0x2571, 0x2572, 0x2573, 0xFF10, 0xFF11, 0xFF12, 0xFF13, - 0xFF14, 0xFF15, 0xFF16, 0xFF17, 0xFF18, 0xFF19, 0x2160, 0x2161, - 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, -plane 26 -at 0x00 - 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027, 0x3028, - 0x3029, 0x5341, 0x5344, 0x5345, 0xFF21, 0xFF22, 0xFF23, 0xFF24, - 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, - 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, - 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0xFF41, 0xFF42, - 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, - 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, - 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, - 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, - 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, 0x03A0, - 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, 0x03A9, - 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, 0x03B8, - 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, 0x03C0, - 0x03C1, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, 0x03C9, - 0x3105, 0x3106, 0x3107, 0x3108, 0x3109, 0x310A, 0x310B, 0x310C, - 0x310D, 0x310E, 0x310F, 0x79DA, 0x79D9, 0x79E1, 0x79E5, 0x79E8, - 0x79DB, 0x79E2, 0x79F0, 0x7ADA, 0x7ADD, 0x7ADB, 0x7ADC, 0x7B0D, - 0x7B0B, 0x7B14, 0x7C8E, 0x7C86, 0x7C87, 0x7C83, 0x7C8B, 0x7D24, - 0x7D25, 0x7F62, 0x7F93, 0x7F99, 0x7F97, 0x7FC4, 0x7FC6, 0x800A, - 0x8040, 0x803C, 0x803B, 0x80F6, 0x3110, 0x3111, 0x3112, 0x3113, - 0x3114, 0x3115, 0x3116, 0x3117, 0x3118, 0x3119, 0x311A, 0x311B, - 0x311C, 0x311D, 0x311E, 0x311F, 0x3120, 0x3121, 0x3122, 0x3123, - 0x3124, 0x3125, 0x3126, 0x3127, 0x3128, 0x3129, 0x02D9, 0x02C9, - 0x02CA, 0x02C7, 0x02CB, 0x2400, 0x2401, 0x2402, 0x2403, 0x2404, - 0x2405, 0x2406, 0x2407, 0x2408, 0x2409, 0x240A, 0x240B, 0x240C, - 0x240D, 0x240E, 0x240F, 0x2410, 0x2411, 0x2412, 0x2413, 0x2414, - 0x2415, 0x2416, 0x2417, 0x2418, 0x2419, 0x241A, 0x241B, 0x241C, - 0x241D, 0x241E, 0x241F, 0x2421, 0x532C, 0x5359, 0x5368, 0x537E, - 0x53A1, 0x555B, 0x5542, 0x5547, 0x553D, 0x5560, 0x57EB, 0x595F, - 0x5B6F, 0x5C5A, 0x5FA2, 0x5F9D, 0x5FA3, 0x60C2, 0x60A5, 0x621C, - 0x621D, 0x6395, 0x639A, 0x63A6, 0x6550, 0x6552, 0x65C8, 0x6658, - 0x6888, 0x6BB8, 0x4E00, 0x4E59, 0x4E01, 0x4E03, 0x4E43, 0x4E5D, -plane 27 -at 0x00 - 0x4E86, 0x4E8C, 0x4EBA, 0x513F, 0x5165, 0x516B, 0x51E0, 0x5200, - 0x5201, 0x529B, 0x5315, 0x5341, 0x535C, 0x53C8, 0x4E09, 0x4E0B, - 0x4E08, 0x4E0A, 0x4E2B, 0x4E38, 0x51E1, 0x4E45, 0x4E48, 0x4E5F, - 0x4E5E, 0x4E8E, 0x4EA1, 0x5140, 0x5203, 0x52FA, 0x5343, 0x53C9, - 0x53E3, 0x571F, 0x58EB, 0x5915, 0x5927, 0x5973, 0x5B50, 0x5B51, - 0x5B53, 0x5BF8, 0x5C0F, 0x5C22, 0x5C38, 0x5C71, 0x5DDD, 0x5DE5, - 0x5DF1, 0x5DF2, 0x5DF3, 0x5DFE, 0x5E72, 0x5EFE, 0x5F0B, 0x5F13, - 0x624D, 0x80FF, 0x80EE, 0x8104, 0x8103, 0x8107, 0x80F7, 0x822D, - 0x8227, 0x8229, 0x831F, 0x8357, 0x8321, 0x8318, 0x8358, 0x8684, - 0x869F, 0x869B, 0x8689, 0x86A6, 0x8692, 0x868F, 0x86A0, 0x884F, - 0x8878, 0x887A, 0x886E, 0x887B, 0x8884, 0x8873, 0x8A0D, 0x8A0B, - 0x8A19, 0x8ED0, 0x4E11, 0x4E10, 0x4E0D, 0x4E2D, 0x4E30, 0x4E39, - 0x4E4B, 0x5C39, 0x4E88, 0x4E91, 0x4E95, 0x4E92, 0x4E94, 0x4EA2, - 0x4EC1, 0x4EC0, 0x4EC3, 0x4EC6, 0x4EC7, 0x4ECD, 0x4ECA, 0x4ECB, - 0x4EC4, 0x5143, 0x5141, 0x5167, 0x516D, 0x516E, 0x516C, 0x5197, - 0x51F6, 0x5206, 0x5207, 0x5208, 0x52FB, 0x52FE, 0x52FF, 0x5316, - 0x5339, 0x5348, 0x5347, 0x5345, 0x535E, 0x5384, 0x53CB, 0x53CA, - 0x53CD, 0x58EC, 0x5929, 0x592B, 0x592A, 0x592D, 0x5B54, 0x5C11, - 0x5C24, 0x5C3A, 0x5C6F, 0x5DF4, 0x5E7B, 0x5EFF, 0x5F14, 0x5F15, - 0x5FC3, 0x6208, 0x6236, 0x624B, 0x624E, 0x652F, 0x6587, 0x6597, - 0x65A4, 0x65B9, 0x65E5, 0x66F0, 0x6708, 0x6728, 0x6B20, 0x6B62, - 0x6B79, 0x6BCB, 0x6BD4, 0x6BDB, 0x6C0F, 0x6C34, 0x706B, 0x722A, - 0x7236, 0x723B, 0x7247, 0x7259, 0x725B, 0x72AC, 0x738B, 0x4E19, - 0x4E16, 0x4E15, 0x4E14, 0x4E18, 0x4E3B, 0x4E4D, 0x4E4F, 0x4E4E, - 0x4EE5, 0x4ED8, 0x4ED4, 0x4ED5, 0x4ED6, 0x4ED7, 0x4EE3, 0x4EE4, - 0x4ED9, 0x4EDE, 0x5145, 0x5144, 0x5189, 0x518A, 0x51AC, 0x51F9, - 0x51FA, 0x51F8, 0x520A, 0x52A0, 0x529F, 0x5305, 0x5306, 0x5317, - 0x531D, 0x4EDF, 0x534A, 0x5349, 0x5361, 0x5360, 0x536F, 0x536E, - 0x53BB, 0x53EF, 0x53E4, 0x53F3, 0x53EC, 0x53EE, 0x53E9, 0x53E8, - 0x53FC, 0x53F8, 0x53F5, 0x53EB, 0x53E6, 0x53EA, 0x53F2, 0x53F1, - 0x53F0, 0x53E5, 0x53ED, 0x53FB, 0x56DB, 0x56DA, 0x5916, 0x8FF9, - 0x9009, 0x9008, 0x90DE, 0x9151, 0x91DB, 0x91DF, 0x91DE, 0x91D6, -plane 28 -at 0x00 - 0x91E0, 0x9585, 0x9660, 0x9659, 0x9656, 0x96BD, 0x5042, 0x5059, - 0x5044, 0x5066, 0x5052, 0x5054, 0x5071, 0x5050, 0x507B, 0x507C, - 0x5058, 0x5079, 0x506C, 0x5078, 0x51A8, 0x51D1, 0x51CF, 0x5268, - 0x592E, 0x5931, 0x5974, 0x5976, 0x5B55, 0x5B83, 0x5C3C, 0x5DE8, - 0x5DE7, 0x5DE6, 0x5E02, 0x5E03, 0x5E73, 0x5E7C, 0x5F01, 0x5F18, - 0x5F17, 0x5FC5, 0x620A, 0x6253, 0x6254, 0x6252, 0x6251, 0x65A5, - 0x65E6, 0x672E, 0x672C, 0x672A, 0x672B, 0x672D, 0x6B63, 0x6BCD, - 0x6C11, 0x6C10, 0x6C38, 0x6C41, 0x6C40, 0x6C3E, 0x72AF, 0x7384, - 0x7389, 0x74DC, 0x74E6, 0x7518, 0x751F, 0x7528, 0x7529, 0x7530, - 0x7531, 0x7532, 0x7533, 0x758B, 0x767D, 0x76AE, 0x76BF, 0x76EE, - 0x77DB, 0x77E2, 0x77F3, 0x793A, 0x79BE, 0x7A74, 0x7ACB, 0x4E1E, - 0x4E1F, 0x4E52, 0x4E53, 0x4E69, 0x4E99, 0x4EA4, 0x4EA6, 0x4EA5, - 0x4EFF, 0x4F09, 0x4F19, 0x4F0A, 0x4F15, 0x4F0D, 0x4F10, 0x4F11, - 0x4F0F, 0x4EF2, 0x4EF6, 0x4EFB, 0x4EF0, 0x4EF3, 0x4EFD, 0x4F01, - 0x4F0B, 0x5149, 0x5147, 0x5146, 0x5148, 0x5168, 0x5171, 0x518D, - 0x51B0, 0x5217, 0x5211, 0x5212, 0x520E, 0x5216, 0x52A3, 0x5308, - 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, 0x540F, 0x540C, 0x540A, - 0x5410, 0x5401, 0x540B, 0x5404, 0x5411, 0x540D, 0x5408, 0x5403, - 0x540E, 0x5406, 0x5412, 0x56E0, 0x56DE, 0x56DD, 0x5733, 0x5730, - 0x5728, 0x572D, 0x572C, 0x572F, 0x5729, 0x5919, 0x591A, 0x5937, - 0x5938, 0x5984, 0x5978, 0x5983, 0x597D, 0x5979, 0x5982, 0x5981, - 0x5B57, 0x5B58, 0x5B87, 0x5B88, 0x5B85, 0x5B89, 0x5BFA, 0x5C16, - 0x5C79, 0x5DDE, 0x5E06, 0x5E76, 0x5E74, 0x5276, 0x52D4, 0x53A0, - 0x53C4, 0x5558, 0x554C, 0x5568, 0x5549, 0x555D, 0x5529, 0x5554, - 0x5553, 0x555A, 0x553A, 0x553F, 0x552B, 0x57EA, 0x57EF, 0x57DD, - 0x57FE, 0x57DE, 0x57E6, 0x57E8, 0x57FF, 0x5803, 0x58F7, 0x68A6, - 0x591F, 0x595B, 0x595D, 0x595E, 0x5A2B, 0x5A3B, 0x5F0F, 0x5F1B, - 0x5FD9, 0x5FD6, 0x620E, 0x620C, 0x620D, 0x6210, 0x6263, 0x625B, - 0x6258, 0x6536, 0x65E9, 0x65E8, 0x65EC, 0x65ED, 0x66F2, 0x66F3, - 0x6709, 0x673D, 0x6734, 0x6731, 0x6735, 0x6B21, 0x6B64, 0x6B7B, - 0x6C16, 0x6C5D, 0x6C57, 0x6C59, 0x6C5F, 0x6C60, 0x6C50, 0x6C55, - 0x6C61, 0x6C5B, 0x6C4D, 0x6C4E, 0x7070, 0x725F, 0x725D, 0x767E, -plane 29 -at 0x00 - 0x7AF9, 0x7C73, 0x7CF8, 0x7F36, 0x7F8A, 0x7FBD, 0x8001, 0x8003, - 0x800C, 0x8012, 0x8033, 0x807F, 0x8089, 0x808B, 0x808C, 0x81E3, - 0x81EA, 0x81F3, 0x81FC, 0x820C, 0x821B, 0x821F, 0x826E, 0x8272, - 0x827E, 0x866B, 0x8840, 0x884C, 0x8863, 0x897F, 0x9621, 0x4E32, - 0x4EA8, 0x4F4D, 0x4F4F, 0x4F47, 0x4F57, 0x4F5E, 0x4F34, 0x4F5B, - 0x4F55, 0x4F30, 0x4F50, 0x4F51, 0x4F3D, 0x4F3A, 0x4F38, 0x4F43, - 0x4F54, 0x4F3C, 0x4F46, 0x4F63, 0x4F5C, 0x4F60, 0x4F2F, 0x4F4E, - 0x4F36, 0x4F59, 0x4F5D, 0x4F48, 0x4F5A, 0x514C, 0x514B, 0x514D, - 0x5175, 0x51B6, 0x51B7, 0x5225, 0x5224, 0x5229, 0x522A, 0x5228, - 0x52AB, 0x52A9, 0x52AA, 0x52AC, 0x5323, 0x5373, 0x5375, 0x541D, - 0x542D, 0x541E, 0x543E, 0x5426, 0x544E, 0x5427, 0x5446, 0x5443, - 0x5433, 0x5448, 0x5442, 0x541B, 0x5429, 0x544A, 0x5439, 0x543B, - 0x5438, 0x542E, 0x5435, 0x5436, 0x5420, 0x543C, 0x5440, 0x5431, - 0x542B, 0x541F, 0x542C, 0x56EA, 0x56F0, 0x56E4, 0x56EB, 0x574A, - 0x5751, 0x5740, 0x574D, 0x5A61, 0x5A3A, 0x5A6E, 0x5A4B, 0x5A6B, - 0x5A45, 0x5A4E, 0x5A68, 0x5A3D, 0x5A71, 0x5A3F, 0x5A6F, 0x5A75, - 0x5A73, 0x5A2C, 0x5A59, 0x5A54, 0x5A4F, 0x5A63, 0x5BC8, 0x5BC3, - 0x5C5B, 0x5C61, 0x5D21, 0x5D0A, 0x5D09, 0x5D2C, 0x5D08, 0x5D2A, - 0x5D15, 0x5D10, 0x5D13, 0x5D2F, 0x5747, 0x574E, 0x573E, 0x5750, - 0x574F, 0x573B, 0x58EF, 0x593E, 0x599D, 0x5992, 0x59A8, 0x599E, - 0x59A3, 0x5999, 0x5996, 0x598D, 0x59A4, 0x5993, 0x598A, 0x59A5, - 0x5B5D, 0x5B5C, 0x5B5A, 0x5B5B, 0x5B8C, 0x5B8B, 0x5B8F, 0x5C2C, - 0x5C40, 0x5C41, 0x5C3F, 0x5C3E, 0x5C90, 0x5C91, 0x5C94, 0x5C8C, - 0x5DEB, 0x5E0C, 0x5E8F, 0x5E87, 0x5E8A, 0x5EF7, 0x5F04, 0x5F1F, - 0x5F64, 0x5F62, 0x5F77, 0x5F79, 0x5FD8, 0x5FCC, 0x5FD7, 0x5FCD, - 0x5FF1, 0x5FEB, 0x5FF8, 0x5FEA, 0x6212, 0x6211, 0x6284, 0x6297, - 0x6296, 0x6280, 0x6276, 0x6289, 0x626D, 0x628A, 0x627C, 0x627E, - 0x6279, 0x6273, 0x6292, 0x626F, 0x6298, 0x626E, 0x6295, 0x6293, - 0x6291, 0x6286, 0x6539, 0x653B, 0x6538, 0x65F1, 0x66F4, 0x675F, - 0x674E, 0x674F, 0x6750, 0x6751, 0x675C, 0x6756, 0x675E, 0x6749, - 0x6746, 0x6760, 0x6753, 0x6757, 0x6B65, 0x6BCF, 0x6C42, 0x6C5E, - 0x6C99, 0x6C81, 0x6C88, 0x6C89, 0x6C85, 0x6C9B, 0x6C6A, 0x6C7A, -plane 30 -at 0x00 - 0x6C90, 0x6C70, 0x6C8C, 0x6C68, 0x6C96, 0x6C92, 0x6C7D, 0x6C83, - 0x6C72, 0x6C7E, 0x6C74, 0x6C86, 0x6C76, 0x6C8D, 0x6C94, 0x6C98, - 0x6C82, 0x7076, 0x707C, 0x707D, 0x7078, 0x7262, 0x7261, 0x7260, - 0x72C4, 0x72C2, 0x7396, 0x752C, 0x752B, 0x7537, 0x7538, 0x7682, - 0x76EF, 0x77E3, 0x79C1, 0x79C0, 0x79BF, 0x7A76, 0x7CFB, 0x7F55, - 0x8096, 0x8093, 0x809D, 0x8098, 0x809B, 0x809A, 0x80B2, 0x826F, - 0x8292, 0x5D18, 0x5DE3, 0x5E39, 0x5E35, 0x5E3A, 0x5E32, 0x5EBB, - 0x5EBA, 0x5F34, 0x5F39, 0x6098, 0x60D0, 0x60D7, 0x60AA, 0x60A1, - 0x60A4, 0x60EE, 0x60E7, 0x60E8, 0x60DE, 0x637E, 0x638B, 0x6379, - 0x6386, 0x6393, 0x6373, 0x636A, 0x636C, 0x637F, 0x63B2, 0x63BA, - 0x6366, 0x6374, 0x828B, 0x828D, 0x898B, 0x89D2, 0x8A00, 0x8C37, - 0x8C46, 0x8C55, 0x8C9D, 0x8D64, 0x8D70, 0x8DB3, 0x8EAB, 0x8ECA, - 0x8F9B, 0x8FB0, 0x8FC2, 0x8FC6, 0x8FC5, 0x8FC4, 0x5DE1, 0x9091, - 0x90A2, 0x90AA, 0x90A6, 0x90A3, 0x9149, 0x91C6, 0x91CC, 0x9632, - 0x962E, 0x9631, 0x962A, 0x962C, 0x4E26, 0x4E56, 0x4E73, 0x4E8B, - 0x4E9B, 0x4E9E, 0x4EAB, 0x4EAC, 0x4F6F, 0x4F9D, 0x4F8D, 0x4F73, - 0x4F7F, 0x4F6C, 0x4F9B, 0x4F8B, 0x4F86, 0x4F83, 0x4F70, 0x4F75, - 0x4F88, 0x4F69, 0x4F7B, 0x4F96, 0x4F7E, 0x4F8F, 0x4F91, 0x4F7A, - 0x5154, 0x5152, 0x5155, 0x5169, 0x5177, 0x5176, 0x5178, 0x51BD, - 0x51FD, 0x523B, 0x5238, 0x5237, 0x523A, 0x5230, 0x522E, 0x5236, - 0x5241, 0x52BE, 0x52BB, 0x5352, 0x5354, 0x5353, 0x5351, 0x5366, - 0x5377, 0x5378, 0x5379, 0x53D6, 0x53D4, 0x53D7, 0x5473, 0x5475, - 0x5496, 0x5478, 0x5495, 0x5480, 0x547B, 0x5477, 0x5484, 0x5492, - 0x5486, 0x547C, 0x5490, 0x5471, 0x5476, 0x548C, 0x549A, 0x5462, - 0x5468, 0x548B, 0x547D, 0x548E, 0x56FA, 0x5783, 0x5777, 0x576A, - 0x5769, 0x5761, 0x5766, 0x5764, 0x577C, 0x591C, 0x5949, 0x5947, - 0x5948, 0x5944, 0x5954, 0x59BE, 0x59BB, 0x59D4, 0x59B9, 0x59AE, - 0x59D1, 0x59C6, 0x59D0, 0x59CD, 0x59CB, 0x59D3, 0x59CA, 0x59AF, - 0x59B3, 0x59D2, 0x59C5, 0x5B5F, 0x5B64, 0x5B63, 0x5B97, 0x5B9A, - 0x5B98, 0x5B9C, 0x5B99, 0x5B9B, 0x5C1A, 0x5C48, 0x5C45, 0x655A, - 0x654E, 0x654D, 0x658D, 0x658E, 0x65AD, 0x65C7, 0x65CA, 0x65C9, - 0x65E3, 0x6657, 0x6663, 0x6667, 0x671A, 0x6719, 0x6716, 0x689E, -plane 31 -at 0x00 - 0x68B6, 0x6898, 0x6873, 0x689A, 0x688E, 0x68B7, 0x68DB, 0x68A5, - 0x686C, 0x68C1, 0x6884, 0x6895, 0x687A, 0x6899, 0x68B8, 0x68B9, - 0x5C46, 0x5CB7, 0x5CA1, 0x5CB8, 0x5CA9, 0x5CAB, 0x5CB1, 0x5CB3, - 0x5E18, 0x5E1A, 0x5E16, 0x5E15, 0x5E1B, 0x5E11, 0x5E78, 0x5E9A, - 0x5E97, 0x5E9C, 0x5E95, 0x5E96, 0x5EF6, 0x5F26, 0x5F27, 0x5F29, - 0x5F80, 0x5F81, 0x5F7F, 0x5F7C, 0x5FDD, 0x5FE0, 0x5FFD, 0x5FF5, - 0x5FFF, 0x600F, 0x6014, 0x602F, 0x6035, 0x6016, 0x602A, 0x6015, - 0x6021, 0x6027, 0x6029, 0x602B, 0x601B, 0x6216, 0x6215, 0x623F, - 0x623E, 0x6240, 0x627F, 0x62C9, 0x62CC, 0x62C4, 0x62BF, 0x62C2, - 0x62B9, 0x62D2, 0x62DB, 0x62AB, 0x62D3, 0x62D4, 0x62CB, 0x62C8, - 0x62A8, 0x62BD, 0x62BC, 0x62D0, 0x62D9, 0x62C7, 0x62CD, 0x62B5, - 0x62DA, 0x62B1, 0x62D8, 0x62D6, 0x62D7, 0x62C6, 0x62AC, 0x62CE, - 0x653E, 0x65A7, 0x65BC, 0x65FA, 0x6614, 0x6613, 0x660C, 0x6606, - 0x6602, 0x660E, 0x6600, 0x660F, 0x6615, 0x660A, 0x6607, 0x670D, - 0x670B, 0x676D, 0x678B, 0x6795, 0x6771, 0x679C, 0x6773, 0x6777, - 0x6787, 0x679D, 0x6797, 0x676F, 0x6770, 0x677F, 0x6789, 0x677E, - 0x6790, 0x6775, 0x679A, 0x6793, 0x677C, 0x676A, 0x6772, 0x6B23, - 0x6B66, 0x6B67, 0x6B7F, 0x6C13, 0x6C1B, 0x6CE3, 0x6CE8, 0x6CF3, - 0x6CB1, 0x6CCC, 0x6CE5, 0x6CB3, 0x6CBD, 0x6CBE, 0x6CBC, 0x6CE2, - 0x6CAB, 0x6CD5, 0x6CD3, 0x6CB8, 0x6CC4, 0x6CB9, 0x6CC1, 0x6CAE, - 0x6CD7, 0x6CC5, 0x6CF1, 0x6CBF, 0x6CBB, 0x6CE1, 0x6CDB, 0x6CCA, - 0x6CAC, 0x6CEF, 0x6CDC, 0x6CD6, 0x6CE0, 0x6870, 0x6B35, 0x6B90, - 0x6BBB, 0x6BED, 0x6DC1, 0x6DC3, 0x6DCE, 0x6DAD, 0x6E04, 0x6DB9, - 0x6DE7, 0x6E08, 0x6E06, 0x6E0A, 0x6DB0, 0x6DF8, 0x6E0C, 0x6DB1, - 0x6E02, 0x6E07, 0x6E09, 0x6E01, 0x6E17, 0x6DFF, 0x6E12, 0x7103, - 0x7107, 0x7101, 0x70F5, 0x70F1, 0x7108, 0x70F2, 0x7095, 0x708E, - 0x7092, 0x708A, 0x7099, 0x722C, 0x722D, 0x7238, 0x7248, 0x7267, - 0x7269, 0x72C0, 0x72CE, 0x72D9, 0x72D7, 0x72D0, 0x73A9, 0x73A8, - 0x739F, 0x73AB, 0x73A5, 0x753D, 0x759D, 0x7599, 0x759A, 0x7684, - 0x76C2, 0x76F2, 0x76F4, 0x77E5, 0x77FD, 0x793E, 0x7940, 0x7941, - 0x79C9, 0x79C8, 0x7A7A, 0x7A79, 0x7AFA, 0x7CFE, 0x7F54, 0x7F8C, - 0x7F8B, 0x8005, 0x80BA, 0x80A5, 0x80A2, 0x80B1, 0x80A1, 0x80AB, -plane 32 -at 0x00 - 0x80A9, 0x80B4, 0x80AA, 0x80AF, 0x81E5, 0x81FE, 0x820D, 0x82B3, - 0x829D, 0x8299, 0x82AD, 0x82BD, 0x829F, 0x82B9, 0x82B1, 0x82AC, - 0x82A5, 0x82AF, 0x82B8, 0x82A3, 0x82B0, 0x82BE, 0x82B7, 0x864E, - 0x8671, 0x521D, 0x8868, 0x8ECB, 0x8FCE, 0x8FD4, 0x8FD1, 0x90B5, - 0x90B8, 0x90B1, 0x90B6, 0x91C7, 0x91D1, 0x9577, 0x9580, 0x961C, - 0x9640, 0x963F, 0x963B, 0x9644, 0x9642, 0x96B9, 0x96E8, 0x9752, - 0x975E, 0x4E9F, 0x4EAD, 0x4EAE, 0x4FE1, 0x4FB5, 0x4FAF, 0x4FBF, - 0x4FE0, 0x4FD1, 0x4FCF, 0x4FDD, 0x4FC3, 0x4FB6, 0x4FD8, 0x4FDF, - 0x4FCA, 0x4FD7, 0x4FAE, 0x4FD0, 0x4FC4, 0x4FC2, 0x4FDA, 0x4FCE, - 0x4FDE, 0x4FB7, 0x5157, 0x5192, 0x5191, 0x51A0, 0x524E, 0x5243, - 0x524A, 0x524D, 0x524C, 0x524B, 0x5247, 0x52C7, 0x52C9, 0x52C3, - 0x52C1, 0x530D, 0x5357, 0x537B, 0x539A, 0x53DB, 0x54AC, 0x54C0, - 0x54A8, 0x54CE, 0x54C9, 0x54B8, 0x54A6, 0x54B3, 0x54C7, 0x54C2, - 0x54BD, 0x54AA, 0x54C1, 0x710F, 0x70FE, 0x731A, 0x7310, 0x730E, - 0x7402, 0x73F3, 0x73FB, 0x751B, 0x7523, 0x7561, 0x7568, 0x7567, - 0x75D3, 0x7690, 0x76D5, 0x76D7, 0x76D6, 0x7730, 0x7726, 0x7740, - 0x771E, 0x7847, 0x784B, 0x7851, 0x784F, 0x7842, 0x7846, 0x796E, - 0x796C, 0x79F2, 0x79F1, 0x79F5, 0x54C4, 0x54C8, 0x54AF, 0x54AB, - 0x54B1, 0x54BB, 0x54A9, 0x54A7, 0x54BF, 0x56FF, 0x5782, 0x578B, - 0x57A0, 0x57A3, 0x57A2, 0x57CE, 0x57AE, 0x5793, 0x5955, 0x5951, - 0x594F, 0x594E, 0x5950, 0x59DC, 0x59D8, 0x59FF, 0x59E3, 0x59E8, - 0x5A03, 0x59E5, 0x59EA, 0x59DA, 0x59E6, 0x5A01, 0x59FB, 0x5B69, - 0x5BA3, 0x5BA6, 0x5BA4, 0x5BA2, 0x5BA5, 0x5C01, 0x5C4E, 0x5C4F, - 0x5C4D, 0x5C4B, 0x5CD9, 0x5CD2, 0x5DF7, 0x5E1D, 0x5E25, 0x5E1F, - 0x5E7D, 0x5EA0, 0x5EA6, 0x5EFA, 0x5F08, 0x5F2D, 0x5F65, 0x5F88, - 0x5F85, 0x5F8A, 0x5F8B, 0x5F87, 0x5F8C, 0x5F89, 0x6012, 0x601D, - 0x6020, 0x6025, 0x600E, 0x6028, 0x604D, 0x6070, 0x6068, 0x6062, - 0x6046, 0x6043, 0x606C, 0x606B, 0x606A, 0x6064, 0x6241, 0x62DC, - 0x6316, 0x6309, 0x62FC, 0x62ED, 0x6301, 0x62EE, 0x62FD, 0x6307, - 0x62F1, 0x62F7, 0x62EF, 0x62EC, 0x62FE, 0x62F4, 0x6311, 0x6302, - 0x653F, 0x6545, 0x65AB, 0x65BD, 0x65E2, 0x6625, 0x662D, 0x6620, - 0x6627, 0x662F, 0x661F, 0x6628, 0x6631, 0x6624, 0x66F7, 0x67FF, -plane 33 -at 0x00 - 0x67D3, 0x67F1, 0x67D4, 0x67D0, 0x67EC, 0x67B6, 0x67AF, 0x67F5, - 0x67E9, 0x67EF, 0x67C4, 0x67D1, 0x67B4, 0x67DA, 0x67E5, 0x67B8, - 0x67CF, 0x67DE, 0x67F3, 0x67B0, 0x67D9, 0x67E2, 0x67DD, 0x67D2, - 0x6B6A, 0x6B83, 0x6B86, 0x6BB5, 0x6BD2, 0x6BD7, 0x6C1F, 0x6CC9, - 0x6D0B, 0x6D32, 0x6D2A, 0x6D41, 0x6D25, 0x6D0C, 0x6D31, 0x6D1E, - 0x6D17, 0x79F3, 0x79F9, 0x7A9A, 0x7A93, 0x7A91, 0x7AE1, 0x7B21, - 0x7B1C, 0x7B16, 0x7B17, 0x7B36, 0x7B1F, 0x7C93, 0x7C99, 0x7C9A, - 0x7C9C, 0x7D49, 0x7D34, 0x7D37, 0x7D2D, 0x7D4C, 0x7D48, 0x7F3B, - 0x8008, 0x801A, 0x801D, 0x8049, 0x8045, 0x8044, 0x7C9B, 0x812A, - 0x812E, 0x8131, 0x6D3B, 0x6D3D, 0x6D3E, 0x6D36, 0x6D1B, 0x6CF5, - 0x6D39, 0x6D27, 0x6D38, 0x6D29, 0x6D2E, 0x6D35, 0x6D0E, 0x6D2B, - 0x70AB, 0x70BA, 0x70B3, 0x70AC, 0x70AF, 0x70AD, 0x70B8, 0x70AE, - 0x70A4, 0x7230, 0x7272, 0x726F, 0x7274, 0x72E9, 0x72E0, 0x72E1, - 0x73B7, 0x73CA, 0x73BB, 0x73B2, 0x73CD, 0x73C0, 0x73B3, 0x751A, - 0x752D, 0x754F, 0x754C, 0x754E, 0x754B, 0x75AB, 0x75A4, 0x75A5, - 0x75A2, 0x75A3, 0x7678, 0x7686, 0x7687, 0x7688, 0x76C8, 0x76C6, - 0x76C3, 0x76C5, 0x7701, 0x76F9, 0x76F8, 0x7709, 0x770B, 0x76FE, - 0x76FC, 0x7707, 0x77DC, 0x7802, 0x7814, 0x780C, 0x780D, 0x7946, - 0x7949, 0x7948, 0x7947, 0x79B9, 0x79BA, 0x79D1, 0x79D2, 0x79CB, - 0x7A7F, 0x7A81, 0x7AFF, 0x7AFD, 0x7C7D, 0x7D02, 0x7D05, 0x7D00, - 0x7D09, 0x7D07, 0x7D04, 0x7D06, 0x7F38, 0x7F8E, 0x7FBF, 0x8004, - 0x8010, 0x800D, 0x8011, 0x8036, 0x80D6, 0x80E5, 0x80DA, 0x80C3, - 0x80C4, 0x80CC, 0x80E1, 0x80DB, 0x80CE, 0x80DE, 0x80E4, 0x80DD, - 0x81F4, 0x8222, 0x82E7, 0x8303, 0x8305, 0x82E3, 0x82DB, 0x82E6, - 0x8304, 0x82E5, 0x8302, 0x8309, 0x82D2, 0x82D7, 0x82F1, 0x8301, - 0x82DC, 0x82D4, 0x82D1, 0x82DE, 0x82D3, 0x82DF, 0x82EF, 0x8306, - 0x8650, 0x8679, 0x867B, 0x867A, 0x884D, 0x886B, 0x8981, 0x89D4, - 0x8A08, 0x8A02, 0x8A03, 0x8C9E, 0x8CA0, 0x8D74, 0x8D73, 0x8DB4, - 0x8ECD, 0x8ECC, 0x8FF0, 0x8FE6, 0x8FE2, 0x8FEA, 0x8FE5, 0x811A, - 0x8134, 0x8117, 0x831D, 0x8371, 0x8384, 0x8380, 0x8372, 0x83A1, - 0x8379, 0x8391, 0x839F, 0x83AD, 0x8323, 0x8385, 0x839C, 0x83B7, - 0x8658, 0x865A, 0x8657, 0x86B2, 0x86AE, 0x8845, 0x889C, 0x8894, -plane 34 -at 0x00 - 0x88A3, 0x888F, 0x88A5, 0x88A9, 0x88A6, 0x888A, 0x88A0, 0x8890, - 0x8FED, 0x8FEB, 0x8FE4, 0x8FE8, 0x90CA, 0x90CE, 0x90C1, 0x90C3, - 0x914B, 0x914A, 0x91CD, 0x9582, 0x9650, 0x964B, 0x964C, 0x964D, - 0x9762, 0x9769, 0x97CB, 0x97ED, 0x97F3, 0x9801, 0x98A8, 0x98DB, - 0x98DF, 0x9996, 0x9999, 0x4E58, 0x4EB3, 0x500C, 0x500D, 0x5023, - 0x4FEF, 0x5026, 0x5025, 0x4FF8, 0x5029, 0x5016, 0x5006, 0x503C, - 0x501F, 0x501A, 0x5012, 0x5011, 0x4FFA, 0x5000, 0x5014, 0x5028, - 0x4FF1, 0x5021, 0x500B, 0x5019, 0x5018, 0x4FF3, 0x4FEE, 0x502D, - 0x502A, 0x4FFE, 0x502B, 0x5009, 0x517C, 0x51A4, 0x51A5, 0x51A2, - 0x51CD, 0x51CC, 0x51C6, 0x51CB, 0x5256, 0x525C, 0x5254, 0x525B, - 0x525D, 0x532A, 0x537F, 0x539F, 0x539D, 0x53DF, 0x54E8, 0x5510, - 0x5501, 0x5537, 0x54FC, 0x54E5, 0x54F2, 0x5506, 0x54FA, 0x5514, - 0x54E9, 0x54ED, 0x54E1, 0x5509, 0x54EE, 0x54EA, 0x54E6, 0x5527, - 0x5507, 0x54FD, 0x550F, 0x5703, 0x5704, 0x57C2, 0x57D4, 0x57CB, - 0x57C3, 0x5809, 0x590F, 0x5957, 0x5958, 0x595A, 0x5A11, 0x5A18, - 0x5A1C, 0x5A1F, 0x5A1B, 0x5A13, 0x59EC, 0x5A20, 0x5A23, 0x5A29, - 0x5A25, 0x5A0C, 0x5A09, 0x5B6B, 0x5C58, 0x5BB0, 0x5BB3, 0x5BB6, - 0x5BB4, 0x5BAE, 0x5BB5, 0x5BB9, 0x5BB8, 0x5C04, 0x5C51, 0x5C55, - 0x5C50, 0x5CED, 0x5CFD, 0x5CFB, 0x5CEA, 0x5CE8, 0x5CF0, 0x5CF6, - 0x5D01, 0x5CF4, 0x5DEE, 0x5E2D, 0x5E2B, 0x5EAB, 0x5EAD, 0x5EA7, - 0x5F31, 0x5F92, 0x5F91, 0x5F90, 0x6059, 0x8992, 0x8991, 0x8994, - 0x8A26, 0x8A32, 0x8A28, 0x8A1C, 0x8A2B, 0x8A20, 0x8A29, 0x8A21, - 0x8C3A, 0x8C5B, 0x8C58, 0x8C7C, 0x8CA6, 0x8CAE, 0x8CAD, 0x8D65, - 0x8D7E, 0x8D7C, 0x8D7F, 0x8D7A, 0x8DBD, 0x8DC0, 0x8DBB, 0x8EAD, - 0x8EAF, 0x8ED6, 0x8ED9, 0x9012, 0x900E, 0x9025, 0x6063, 0x6065, - 0x6050, 0x6055, 0x606D, 0x6069, 0x606F, 0x6084, 0x609F, 0x609A, - 0x608D, 0x6094, 0x608C, 0x6085, 0x6096, 0x6247, 0x62F3, 0x6308, - 0x62FF, 0x634E, 0x633E, 0x632F, 0x6355, 0x6342, 0x6346, 0x634F, - 0x6349, 0x633A, 0x6350, 0x633D, 0x632A, 0x632B, 0x6328, 0x634D, - 0x634C, 0x6548, 0x6549, 0x6599, 0x65C1, 0x65C5, 0x6642, 0x6649, - 0x664F, 0x6643, 0x6652, 0x664C, 0x6645, 0x6641, 0x66F8, 0x6714, - 0x6715, 0x6717, 0x6821, 0x6838, 0x6848, 0x6846, 0x6853, 0x6839, -plane 35 -at 0x00 - 0x6842, 0x6854, 0x6829, 0x68B3, 0x6817, 0x684C, 0x6851, 0x683D, - 0x67F4, 0x6850, 0x6840, 0x683C, 0x6843, 0x682A, 0x6845, 0x6813, - 0x6818, 0x6841, 0x6B8A, 0x6B89, 0x6BB7, 0x6C23, 0x6C27, 0x6C28, - 0x6C26, 0x6C24, 0x6CF0, 0x6D6A, 0x6D95, 0x6D88, 0x6D87, 0x6D66, - 0x6D78, 0x6D77, 0x6D59, 0x6D93, 0x6D6C, 0x6D89, 0x6D6E, 0x6D5A, - 0x6D74, 0x6D69, 0x6D8C, 0x6D8A, 0x6D79, 0x6D85, 0x6D65, 0x6D94, - 0x70CA, 0x70D8, 0x70E4, 0x70D9, 0x70C8, 0x70CF, 0x7239, 0x7279, - 0x72FC, 0x72F9, 0x72FD, 0x72F8, 0x72F7, 0x7386, 0x73ED, 0x7409, - 0x73EE, 0x73E0, 0x73EA, 0x73DE, 0x7554, 0x755D, 0x755C, 0x755A, - 0x7559, 0x75BE, 0x75C5, 0x75C7, 0x75B2, 0x75B3, 0x75BD, 0x75BC, - 0x75B9, 0x75C2, 0x75B8, 0x768B, 0x76B0, 0x76CA, 0x76CD, 0x76CE, - 0x7729, 0x771F, 0x7720, 0x7728, 0x77E9, 0x7830, 0x7827, 0x7838, - 0x781D, 0x7834, 0x7837, 0x9013, 0x90EE, 0x90AB, 0x90F7, 0x9159, - 0x9154, 0x91F2, 0x91F0, 0x91E5, 0x91F6, 0x9587, 0x965A, 0x966E, - 0x9679, 0x98E1, 0x98E6, 0x9EC4, 0x9ED2, 0x4E80, 0x4E81, 0x508F, - 0x5097, 0x5088, 0x5089, 0x5081, 0x5160, 0x5E42, 0x51D3, 0x51D2, - 0x51D6, 0x5273, 0x5270, 0x53A8, 0x7825, 0x782D, 0x7820, 0x781F, - 0x7832, 0x7955, 0x7950, 0x7960, 0x795F, 0x7956, 0x795E, 0x795D, - 0x7957, 0x795A, 0x79E4, 0x79E3, 0x79E7, 0x79DF, 0x79E6, 0x79E9, - 0x79D8, 0x7A84, 0x7A88, 0x7AD9, 0x7B06, 0x7B11, 0x7C89, 0x7D21, - 0x7D17, 0x7D0B, 0x7D0A, 0x7D20, 0x7D22, 0x7D14, 0x7D10, 0x7D15, - 0x7D1A, 0x7D1C, 0x7D0D, 0x7D19, 0x7D1B, 0x7F3A, 0x7F5F, 0x7F94, - 0x7FC5, 0x7FC1, 0x8006, 0x8018, 0x8015, 0x8019, 0x8017, 0x803D, - 0x803F, 0x80F1, 0x8102, 0x80F0, 0x8105, 0x80ED, 0x80F4, 0x8106, - 0x80F8, 0x80F3, 0x8108, 0x80FD, 0x810A, 0x80FC, 0x80EF, 0x81ED, - 0x81EC, 0x8200, 0x8210, 0x822A, 0x822B, 0x8228, 0x822C, 0x82BB, - 0x832B, 0x8352, 0x8354, 0x834A, 0x8338, 0x8350, 0x8349, 0x8335, - 0x8334, 0x834F, 0x8332, 0x8339, 0x8336, 0x8317, 0x8340, 0x8331, - 0x8328, 0x8343, 0x8654, 0x868A, 0x86AA, 0x8693, 0x86A4, 0x86A9, - 0x868C, 0x86A3, 0x869C, 0x8870, 0x8877, 0x8881, 0x8882, 0x887D, - 0x8879, 0x8A18, 0x8A10, 0x8A0E, 0x8A0C, 0x8A15, 0x8A0A, 0x8A17, - 0x8A13, 0x8A16, 0x8A0F, 0x8A11, 0x8C48, 0x8C7A, 0x8C79, 0x8CA1, -plane 36 -at 0x00 - 0x8CA2, 0x8D77, 0x8EAC, 0x8ED2, 0x8ED4, 0x8ECF, 0x8FB1, 0x9001, - 0x9006, 0x8FF7, 0x9000, 0x8FFA, 0x8FF4, 0x9003, 0x8FFD, 0x9005, - 0x8FF8, 0x9095, 0x90E1, 0x90DD, 0x90E2, 0x9152, 0x914D, 0x914C, - 0x91D8, 0x91DD, 0x91D7, 0x91DC, 0x91D9, 0x9583, 0x9662, 0x9663, - 0x9661, 0x53A6, 0x53C5, 0x5597, 0x55DE, 0x5596, 0x55B4, 0x5585, - 0x559B, 0x55A0, 0x5559, 0x5586, 0x55AF, 0x557A, 0x559E, 0x55A9, - 0x570F, 0x570E, 0x581A, 0x581F, 0x583C, 0x5818, 0x583E, 0x5826, - 0x583A, 0x5822, 0x58FB, 0x5963, 0x5964, 0x5AA8, 0x5AA3, 0x5A82, - 0x5A88, 0x5AA1, 0x965B, 0x965D, 0x9664, 0x9658, 0x965E, 0x96BB, - 0x98E2, 0x99AC, 0x9AA8, 0x9AD8, 0x9B25, 0x9B32, 0x9B3C, 0x4E7E, - 0x507A, 0x507D, 0x505C, 0x5047, 0x5043, 0x504C, 0x505A, 0x5049, - 0x5065, 0x5076, 0x504E, 0x5055, 0x5075, 0x5074, 0x5077, 0x504F, - 0x500F, 0x506F, 0x506D, 0x515C, 0x5195, 0x51F0, 0x526A, 0x526F, - 0x52D2, 0x52D9, 0x52D8, 0x52D5, 0x5310, 0x530F, 0x5319, 0x533F, - 0x5340, 0x533E, 0x53C3, 0x66FC, 0x5546, 0x556A, 0x5566, 0x5544, - 0x555E, 0x5561, 0x5543, 0x554A, 0x5531, 0x5556, 0x554F, 0x5555, - 0x552F, 0x5564, 0x5538, 0x552E, 0x555C, 0x552C, 0x5563, 0x5533, - 0x5541, 0x5557, 0x5708, 0x570B, 0x5709, 0x57DF, 0x5805, 0x580A, - 0x5806, 0x57E0, 0x57E4, 0x57FA, 0x5802, 0x5835, 0x57F7, 0x57F9, - 0x5920, 0x5962, 0x5A36, 0x5A41, 0x5A49, 0x5A66, 0x5A6A, 0x5A40, - 0x5A3C, 0x5A62, 0x5A5A, 0x5A46, 0x5A4A, 0x5B70, 0x5BC7, 0x5BC5, - 0x5BC4, 0x5BC2, 0x5BBF, 0x5BC6, 0x5C09, 0x5C08, 0x5C07, 0x5C60, - 0x5C5C, 0x5C5D, 0x5D07, 0x5D06, 0x5D0E, 0x5D1B, 0x5D16, 0x5D22, - 0x5D11, 0x5D29, 0x5D14, 0x5D19, 0x5D24, 0x5D27, 0x5D17, 0x5DE2, - 0x5E38, 0x5E36, 0x5E33, 0x5E37, 0x5EB7, 0x5EB8, 0x5EB6, 0x5EB5, - 0x5EBE, 0x5F35, 0x5F37, 0x5F57, 0x5F6C, 0x5F69, 0x5F6B, 0x5F97, - 0x5F99, 0x5F9E, 0x5F98, 0x5FA1, 0x5FA0, 0x5F9C, 0x607F, 0x60A3, - 0x6089, 0x60A0, 0x60A8, 0x60CB, 0x60B4, 0x60E6, 0x60BD, 0x5A85, - 0x5A98, 0x5A99, 0x5A89, 0x5A81, 0x5A96, 0x5A80, 0x5A91, 0x5ACF, - 0x5A87, 0x5AA0, 0x5A79, 0x5A86, 0x5AAB, 0x5AAA, 0x5AA4, 0x5A8D, - 0x5A7E, 0x5BD5, 0x5C1E, 0x5C5F, 0x5C5E, 0x5D44, 0x5D3E, 0x5D48, - 0x5D1C, 0x5D5B, 0x5D4D, 0x5D57, 0x5D53, 0x5D4F, 0x5D3B, 0x5D46, -plane 37 -at 0x00 - 0x60C5, 0x60BB, 0x60B5, 0x60DC, 0x60BC, 0x60D8, 0x60D5, 0x60C6, - 0x60DF, 0x60B8, 0x60DA, 0x60C7, 0x621A, 0x621B, 0x6248, 0x63A0, - 0x63A7, 0x6372, 0x6396, 0x63A2, 0x63A5, 0x6377, 0x6367, 0x6398, - 0x63AA, 0x6371, 0x63A9, 0x6389, 0x6383, 0x639B, 0x636B, 0x63A8, - 0x6384, 0x6388, 0x6399, 0x63A1, 0x63AC, 0x6392, 0x638F, 0x6380, - 0x637B, 0x6369, 0x6368, 0x637A, 0x655D, 0x6556, 0x6551, 0x6559, - 0x6557, 0x555F, 0x654F, 0x6558, 0x6555, 0x6554, 0x659C, 0x659B, - 0x65AC, 0x65CF, 0x65CB, 0x65CC, 0x65CE, 0x665D, 0x665A, 0x6664, - 0x6668, 0x6666, 0x665E, 0x66F9, 0x52D7, 0x671B, 0x6881, 0x68AF, - 0x68A2, 0x6893, 0x68B5, 0x687F, 0x6876, 0x68B1, 0x68A7, 0x6897, - 0x68B0, 0x6883, 0x68C4, 0x68AD, 0x6886, 0x6885, 0x6894, 0x689D, - 0x68A8, 0x689F, 0x68A1, 0x6882, 0x6B32, 0x6BBA, 0x6BEB, 0x6BEC, - 0x6C2B, 0x6D8E, 0x6DBC, 0x6DF3, 0x6DD9, 0x6DB2, 0x6DE1, 0x6DCC, - 0x6DE4, 0x6DFB, 0x6DFA, 0x6E05, 0x6DC7, 0x6DCB, 0x6DAF, 0x6DD1, - 0x6DAE, 0x6DDE, 0x6DF9, 0x6DB8, 0x6DF7, 0x6DF5, 0x6DC5, 0x6DD2, - 0x6E1A, 0x6DB5, 0x6DDA, 0x6DEB, 0x6DD8, 0x6DEA, 0x6DF1, 0x6DEE, - 0x6DE8, 0x6DC6, 0x6DC4, 0x6DAA, 0x6DEC, 0x6DBF, 0x6DE6, 0x70F9, - 0x7109, 0x710A, 0x70FD, 0x70EF, 0x723D, 0x727D, 0x7281, 0x731C, - 0x731B, 0x7316, 0x7313, 0x7319, 0x7387, 0x7405, 0x740A, 0x7403, - 0x7406, 0x73FE, 0x740D, 0x74E0, 0x74F6, 0x5E46, 0x5E47, 0x5E48, - 0x5EC0, 0x5EBD, 0x5EBF, 0x5F11, 0x5F3E, 0x5F3B, 0x5F3A, 0x5FA7, - 0x60EA, 0x6107, 0x6122, 0x610C, 0x60B3, 0x60D6, 0x60D2, 0x60E3, - 0x60E5, 0x60E9, 0x6111, 0x60FD, 0x611E, 0x6120, 0x6121, 0x621E, - 0x63E2, 0x63DE, 0x63E6, 0x63F8, 0x63FE, 0x63C1, 0x74F7, 0x751C, - 0x7522, 0x7565, 0x7566, 0x7562, 0x7570, 0x758F, 0x75D4, 0x75D5, - 0x75B5, 0x75CA, 0x75CD, 0x768E, 0x76D4, 0x76D2, 0x76DB, 0x7737, - 0x773E, 0x773C, 0x7736, 0x7738, 0x773A, 0x786B, 0x7843, 0x784E, - 0x7965, 0x7968, 0x796D, 0x79FB, 0x7A92, 0x7A95, 0x7B20, 0x7B28, - 0x7B1B, 0x7B2C, 0x7B26, 0x7B19, 0x7B1E, 0x7B2E, 0x7C92, 0x7C97, - 0x7C95, 0x7D46, 0x7D43, 0x7D71, 0x7D2E, 0x7D39, 0x7D3C, 0x7D40, - 0x7D30, 0x7D33, 0x7D44, 0x7D2F, 0x7D42, 0x7D32, 0x7D31, 0x7F3D, - 0x7F9E, 0x7F9A, 0x7FCC, 0x7FCE, 0x7FD2, 0x801C, 0x804A, 0x8046, -plane 38 -at 0x00 - 0x812F, 0x8116, 0x8123, 0x812B, 0x8129, 0x8130, 0x8124, 0x8202, - 0x8235, 0x8237, 0x8236, 0x8239, 0x838E, 0x839E, 0x8398, 0x8378, - 0x83A2, 0x8396, 0x83BD, 0x83AB, 0x8392, 0x838A, 0x8393, 0x8389, - 0x83A0, 0x8377, 0x837B, 0x837C, 0x8386, 0x83A7, 0x8655, 0x5F6A, - 0x86C7, 0x86C0, 0x86B6, 0x86C4, 0x86B5, 0x86C6, 0x86CB, 0x86B1, - 0x86AF, 0x86C9, 0x8853, 0x889E, 0x8888, 0x88AB, 0x8892, 0x8896, - 0x888D, 0x888B, 0x8993, 0x898F, 0x8A2A, 0x8A1D, 0x8A23, 0x8A25, - 0x8A31, 0x8A2D, 0x8A1F, 0x8A1B, 0x8A22, 0x8C49, 0x8C5A, 0x8CA9, - 0x8CAC, 0x8CAB, 0x8CA8, 0x8CAA, 0x8CA7, 0x8D67, 0x8D66, 0x8DBE, - 0x8DBA, 0x8EDB, 0x8EDF, 0x9019, 0x900D, 0x901A, 0x9017, 0x9023, - 0x901F, 0x901D, 0x9010, 0x9015, 0x901E, 0x9020, 0x900F, 0x9022, - 0x9016, 0x901B, 0x9014, 0x63BF, 0x63F7, 0x63D1, 0x655F, 0x6560, - 0x6561, 0x65D1, 0x667D, 0x666B, 0x667F, 0x6673, 0x6681, 0x666D, - 0x6669, 0x671E, 0x68ED, 0x6903, 0x68FE, 0x68E5, 0x691E, 0x6902, - 0x6909, 0x68CA, 0x6900, 0x6901, 0x6918, 0x68E2, 0x68CF, 0x692E, - 0x68C5, 0x68FF, 0x691C, 0x68C3, 0x90E8, 0x90ED, 0x90FD, 0x9157, - 0x91CE, 0x91F5, 0x91E6, 0x91E3, 0x91E7, 0x91ED, 0x91E9, 0x9589, - 0x966A, 0x9675, 0x9673, 0x9678, 0x9670, 0x9674, 0x9676, 0x9677, - 0x966C, 0x96C0, 0x96EA, 0x96E9, 0x7AE0, 0x7ADF, 0x9802, 0x9803, - 0x9B5A, 0x9CE5, 0x9E75, 0x9E7F, 0x9EA5, 0x9EBB, 0x50A2, 0x508D, - 0x5085, 0x5099, 0x5091, 0x5080, 0x5096, 0x5098, 0x509A, 0x6700, - 0x51F1, 0x5272, 0x5274, 0x5275, 0x5269, 0x52DE, 0x52DD, 0x52DB, - 0x535A, 0x53A5, 0x557B, 0x5580, 0x55A7, 0x557C, 0x558A, 0x559D, - 0x5598, 0x5582, 0x559C, 0x55AA, 0x5594, 0x5587, 0x558B, 0x5583, - 0x55B3, 0x55AE, 0x559F, 0x553E, 0x55B2, 0x559A, 0x55BB, 0x55AC, - 0x55B1, 0x557E, 0x5589, 0x55AB, 0x5599, 0x570D, 0x582F, 0x582A, - 0x5834, 0x5824, 0x5830, 0x5831, 0x5821, 0x581D, 0x5820, 0x58F9, - 0x58FA, 0x5960, 0x5A77, 0x5A9A, 0x5A7F, 0x5A92, 0x5A9B, 0x5AA7, - 0x5B73, 0x5B71, 0x5BD2, 0x5BCC, 0x5BD3, 0x5BD0, 0x5C0A, 0x5C0B, - 0x5C31, 0x5D4C, 0x5D50, 0x5D34, 0x5D47, 0x5DFD, 0x5E45, 0x5E3D, - 0x5E40, 0x5E43, 0x5E7E, 0x5ECA, 0x5EC1, 0x5EC2, 0x5EC4, 0x5F3C, - 0x5F6D, 0x5FA9, 0x5FAA, 0x5FA8, 0x60D1, 0x60E1, 0x60B2, 0x60B6, -plane 39 -at 0x00 - 0x60E0, 0x611C, 0x6123, 0x60FA, 0x6115, 0x60F0, 0x60FB, 0x60F4, - 0x6168, 0x60F1, 0x610E, 0x60F6, 0x6109, 0x6100, 0x6112, 0x621F, - 0x6249, 0x63A3, 0x638C, 0x63CF, 0x63C0, 0x63E9, 0x63C9, 0x63C6, - 0x63CD, 0x6B6F, 0x6B6E, 0x6BBE, 0x6BF4, 0x6C2D, 0x6DB6, 0x6E75, - 0x6E1E, 0x6E18, 0x6E48, 0x6E4F, 0x6E42, 0x6E6A, 0x6E70, 0x6DFE, - 0x6E6D, 0x6E7B, 0x6E7E, 0x6E59, 0x6E57, 0x6E80, 0x6E50, 0x6E29, - 0x6E76, 0x6E2A, 0x6E4C, 0x712A, 0x7135, 0x712C, 0x7137, 0x711D, - 0x7138, 0x7134, 0x63D2, 0x63E3, 0x63D0, 0x63E1, 0x63D6, 0x63ED, - 0x63EE, 0x6376, 0x63F4, 0x63EA, 0x63DB, 0x6452, 0x63DA, 0x63F9, - 0x655E, 0x6566, 0x6562, 0x6563, 0x6591, 0x6590, 0x65AF, 0x666E, - 0x6670, 0x6674, 0x6676, 0x666F, 0x6691, 0x667A, 0x667E, 0x6677, - 0x66FE, 0x66FF, 0x671F, 0x671D, 0x68FA, 0x68D5, 0x68E0, 0x68D8, - 0x68D7, 0x6905, 0x68DF, 0x68F5, 0x68EE, 0x68E7, 0x68F9, 0x68D2, - 0x68F2, 0x68E3, 0x68CB, 0x68CD, 0x690D, 0x6912, 0x690E, 0x68C9, - 0x68DA, 0x696E, 0x68FB, 0x6B3E, 0x6B3A, 0x6B3D, 0x6B98, 0x6B96, - 0x6BBC, 0x6BEF, 0x6C2E, 0x6C2F, 0x6C2C, 0x6E2F, 0x6E38, 0x6E54, - 0x6E21, 0x6E32, 0x6E67, 0x6E4A, 0x6E20, 0x6E25, 0x6E23, 0x6E1B, - 0x6E5B, 0x6E58, 0x6E24, 0x6E56, 0x6E6E, 0x6E2D, 0x6E26, 0x6E6F, - 0x6E34, 0x6E4D, 0x6E3A, 0x6E2C, 0x6E43, 0x6E1D, 0x6E3E, 0x6ECB, - 0x6E89, 0x6E19, 0x6E4E, 0x6E63, 0x6E44, 0x6E72, 0x6E69, 0x6E5F, - 0x7119, 0x711A, 0x7126, 0x7130, 0x7121, 0x7136, 0x716E, 0x711C, - 0x724C, 0x7284, 0x7280, 0x7336, 0x7325, 0x7334, 0x7329, 0x743A, - 0x742A, 0x7433, 0x7422, 0x7425, 0x7435, 0x7436, 0x7434, 0x742F, - 0x741B, 0x7426, 0x7428, 0x7525, 0x7526, 0x756B, 0x756A, 0x75E2, - 0x75DB, 0x75E3, 0x75D9, 0x75D8, 0x75DE, 0x75E0, 0x767B, 0x767C, - 0x7696, 0x7693, 0x76B4, 0x76DC, 0x774F, 0x77ED, 0x785D, 0x786C, - 0x786F, 0x7A0D, 0x7A08, 0x7A0B, 0x7A05, 0x7A00, 0x7A98, 0x712B, - 0x7133, 0x7127, 0x7124, 0x712D, 0x7232, 0x7283, 0x7282, 0x7287, - 0x7306, 0x7324, 0x7338, 0x732A, 0x732C, 0x732B, 0x732F, 0x7328, - 0x7417, 0x7419, 0x7438, 0x741F, 0x7414, 0x743C, 0x73F7, 0x741C, - 0x7415, 0x7418, 0x7439, 0x74F9, 0x7524, 0x756E, 0x756D, 0x7571, - 0x7A97, 0x7A96, 0x7AE5, 0x7AE3, 0x7B49, 0x7B56, 0x7B46, 0x7B50, -plane 40 -at 0x00 - 0x7B52, 0x7B54, 0x7B4D, 0x7B4B, 0x7B4F, 0x7B51, 0x7C9F, 0x7CA5, - 0x7D5E, 0x7D50, 0x7D68, 0x7D55, 0x7D2B, 0x7D6E, 0x7D72, 0x7D61, - 0x7D66, 0x7D62, 0x7D70, 0x7D73, 0x5584, 0x7FD4, 0x7FD5, 0x800B, - 0x8052, 0x8085, 0x8155, 0x8154, 0x814B, 0x8151, 0x814E, 0x8139, - 0x8146, 0x813E, 0x814C, 0x8153, 0x8174, 0x8212, 0x821C, 0x83E9, - 0x8403, 0x83F8, 0x840D, 0x83E0, 0x83C5, 0x840B, 0x83C1, 0x83EF, - 0x83F1, 0x83F4, 0x8457, 0x840A, 0x83F0, 0x840C, 0x83CC, 0x83FD, - 0x83F2, 0x83CA, 0x8438, 0x840E, 0x8404, 0x83DC, 0x8407, 0x83D4, - 0x83DF, 0x865B, 0x86DF, 0x86D9, 0x86ED, 0x86D4, 0x86DB, 0x86E4, - 0x86D0, 0x86DE, 0x8857, 0x88C1, 0x88C2, 0x88B1, 0x8983, 0x8996, - 0x8A3B, 0x8A60, 0x8A55, 0x8A5E, 0x8A3C, 0x8A41, 0x8A54, 0x8A5B, - 0x8A50, 0x8A46, 0x8A34, 0x8A3A, 0x8A36, 0x8A56, 0x8C61, 0x8C82, - 0x8CAF, 0x8CBC, 0x8CB3, 0x8CBD, 0x8CC1, 0x8CBB, 0x8CC0, 0x8CB4, - 0x8CB7, 0x8CB6, 0x8CBF, 0x8CB8, 0x8D8A, 0x8D85, 0x8D81, 0x8DCE, - 0x8DDD, 0x8DCB, 0x8DDA, 0x8DD1, 0x8DCC, 0x8DDB, 0x8DC6, 0x8EFB, - 0x8EF8, 0x8EFC, 0x8F9C, 0x902E, 0x9035, 0x9031, 0x9038, 0x9032, - 0x9036, 0x9102, 0x90F5, 0x9109, 0x90FE, 0x9163, 0x9165, 0x91CF, - 0x9214, 0x9215, 0x9223, 0x9209, 0x921E, 0x920D, 0x9210, 0x9207, - 0x9211, 0x9594, 0x958F, 0x958B, 0x9591, 0x758E, 0x75E5, 0x7694, - 0x76B3, 0x76D9, 0x7748, 0x7749, 0x7743, 0x7742, 0x77DF, 0x7863, - 0x7876, 0x785F, 0x7866, 0x7966, 0x7971, 0x7976, 0x7984, 0x7975, - 0x79FF, 0x7A07, 0x7A0E, 0x7A09, 0x7AE7, 0x7AE2, 0x7B55, 0x7B43, - 0x7B57, 0x7B6C, 0x7B42, 0x7B53, 0x7B41, 0x7CA0, 0x9593, 0x9592, - 0x958E, 0x968A, 0x968E, 0x968B, 0x967D, 0x9685, 0x9686, 0x968D, - 0x9672, 0x9684, 0x96C1, 0x96C5, 0x96C4, 0x96C6, 0x96C7, 0x96EF, - 0x96F2, 0x97CC, 0x9805, 0x9806, 0x9808, 0x98E7, 0x98EA, 0x98EF, - 0x98E9, 0x98F2, 0x98ED, 0x99AE, 0x99AD, 0x9EC3, 0x9ECD, 0x9ED1, - 0x4E82, 0x50AD, 0x50B5, 0x50B2, 0x50B3, 0x50C5, 0x50BE, 0x50AC, - 0x50B7, 0x50BB, 0x50AF, 0x50C7, 0x527F, 0x5277, 0x527D, 0x52DF, - 0x52E6, 0x52E4, 0x52E2, 0x52E3, 0x532F, 0x55DF, 0x55E8, 0x55D3, - 0x55E6, 0x55CE, 0x55DC, 0x55C7, 0x55D1, 0x55E3, 0x55E4, 0x55EF, - 0x55DA, 0x55E1, 0x55C5, 0x55C6, 0x55E5, 0x55C9, 0x5712, 0x5713, -plane 41 -at 0x00 - 0x585E, 0x5851, 0x5858, 0x5857, 0x585A, 0x5854, 0x586B, 0x584C, - 0x586D, 0x584A, 0x5862, 0x5852, 0x584B, 0x5967, 0x5AC1, 0x5AC9, - 0x5ACC, 0x5ABE, 0x5ABD, 0x5ABC, 0x5AB3, 0x5AC2, 0x5AB2, 0x5D69, - 0x5D6F, 0x5E4C, 0x5E79, 0x5EC9, 0x5EC8, 0x5F12, 0x5F59, 0x5FAC, - 0x5FAE, 0x611A, 0x610F, 0x6148, 0x611F, 0x60F3, 0x611B, 0x60F9, - 0x6101, 0x6108, 0x614E, 0x614C, 0x6144, 0x614D, 0x613E, 0x6134, - 0x6127, 0x610D, 0x6106, 0x6137, 0x6221, 0x6222, 0x6413, 0x643E, - 0x641E, 0x642A, 0x642D, 0x643D, 0x642C, 0x640F, 0x641C, 0x6414, - 0x640D, 0x6436, 0x6416, 0x6417, 0x6406, 0x656C, 0x659F, 0x65B0, - 0x6697, 0x6689, 0x6687, 0x6688, 0x6696, 0x6684, 0x6698, 0x668D, - 0x6703, 0x6994, 0x696D, 0x7CA6, 0x7CA4, 0x7D74, 0x7D59, 0x7D60, - 0x7D57, 0x7D6C, 0x7D7E, 0x7D64, 0x7D5A, 0x7D5D, 0x7D76, 0x7D4D, - 0x7D75, 0x7FD3, 0x7FD6, 0x8060, 0x804E, 0x8145, 0x813B, 0x8148, - 0x8142, 0x8149, 0x8140, 0x8114, 0x8141, 0x81EF, 0x81F6, 0x8203, - 0x83ED, 0x83DA, 0x8418, 0x83D2, 0x695A, 0x6977, 0x6960, 0x6954, - 0x6975, 0x6930, 0x6982, 0x694A, 0x6968, 0x696B, 0x695E, 0x6953, - 0x6979, 0x6986, 0x695D, 0x6963, 0x695B, 0x6B47, 0x6B72, 0x6BC0, - 0x6BBF, 0x6BD3, 0x6BFD, 0x6EA2, 0x6EAF, 0x6ED3, 0x6EB6, 0x6EC2, - 0x6E90, 0x6E9D, 0x6EC7, 0x6EC5, 0x6EA5, 0x6E98, 0x6EBC, 0x6EBA, - 0x6EAB, 0x6ED1, 0x6E96, 0x6E9C, 0x6EC4, 0x6ED4, 0x6EAA, 0x6EA7, - 0x6EB4, 0x714E, 0x7159, 0x7169, 0x7164, 0x7149, 0x7167, 0x715C, - 0x716C, 0x7166, 0x714C, 0x7165, 0x715E, 0x7146, 0x7168, 0x7156, - 0x723A, 0x7252, 0x7337, 0x7345, 0x733F, 0x733E, 0x746F, 0x745A, - 0x7455, 0x745F, 0x745E, 0x7441, 0x743F, 0x7459, 0x745B, 0x745C, - 0x7576, 0x7578, 0x7600, 0x75F0, 0x7601, 0x75F2, 0x75F1, 0x75FA, - 0x75FF, 0x75F4, 0x75F3, 0x76DE, 0x76DF, 0x775B, 0x776B, 0x7766, - 0x775E, 0x7763, 0x7779, 0x776A, 0x776C, 0x775C, 0x7765, 0x7768, - 0x7762, 0x77EE, 0x788E, 0x78B0, 0x7897, 0x7898, 0x788C, 0x7889, - 0x787C, 0x7891, 0x7893, 0x787F, 0x797A, 0x797F, 0x7981, 0x842C, - 0x79BD, 0x7A1C, 0x7A1A, 0x7A20, 0x7A14, 0x7A1F, 0x7A1E, 0x7A9F, - 0x7AA0, 0x7B77, 0x7BC0, 0x7B60, 0x7B6E, 0x7B67, 0x7CB1, 0x7CB3, - 0x7CB5, 0x7D93, 0x7D79, 0x7D91, 0x7D81, 0x7D8F, 0x7D5B, 0x7F6E, -plane 42 -at 0x00 - 0x7F69, 0x7F6A, 0x7F72, 0x7FA9, 0x7FA8, 0x7FA4, 0x8056, 0x8058, - 0x8086, 0x8084, 0x8171, 0x8170, 0x8178, 0x8165, 0x816E, 0x8173, - 0x816B, 0x8408, 0x8400, 0x8417, 0x8346, 0x8414, 0x83D3, 0x8405, - 0x841F, 0x8402, 0x8416, 0x83CD, 0x83E6, 0x865D, 0x86D5, 0x86E1, - 0x86EE, 0x8847, 0x8846, 0x88BB, 0x88BF, 0x88B4, 0x88B5, 0x899A, - 0x8A43, 0x8A5A, 0x8A35, 0x8A38, 0x8A42, 0x8A49, 0x8A5D, 0x8A4B, - 0x8A3D, 0x8C60, 0x8179, 0x817A, 0x8166, 0x8205, 0x8247, 0x8482, - 0x8477, 0x843D, 0x8431, 0x8475, 0x8466, 0x846B, 0x8449, 0x846C, - 0x845B, 0x843C, 0x8435, 0x8461, 0x8463, 0x8469, 0x846D, 0x8446, - 0x865E, 0x865C, 0x865F, 0x86F9, 0x8713, 0x8708, 0x8707, 0x8700, - 0x86FE, 0x86FB, 0x8702, 0x8703, 0x8706, 0x870A, 0x8859, 0x88DF, - 0x88D4, 0x88D9, 0x88DC, 0x88D8, 0x88DD, 0x88E1, 0x88CA, 0x88D5, - 0x88D2, 0x899C, 0x89E3, 0x8A6B, 0x8A72, 0x8A73, 0x8A66, 0x8A69, - 0x8A70, 0x8A87, 0x8A7C, 0x8A63, 0x8AA0, 0x8A71, 0x8A85, 0x8A6D, - 0x8A62, 0x8A6E, 0x8A6C, 0x8A79, 0x8A7B, 0x8A3E, 0x8A68, 0x8C62, - 0x8C8A, 0x8C89, 0x8CCA, 0x8CC7, 0x8CC8, 0x8CC4, 0x8CB2, 0x8CC3, - 0x8CC2, 0x8CC5, 0x8DE1, 0x8DDF, 0x8DE8, 0x8DEF, 0x8DF3, 0x8DFA, - 0x8DEA, 0x8DE4, 0x8DE6, 0x8EB2, 0x8F03, 0x8F09, 0x8EFE, 0x8F0A, - 0x8F9F, 0x8FB2, 0x904B, 0x904A, 0x9053, 0x9042, 0x9054, 0x903C, - 0x9055, 0x9050, 0x9047, 0x904F, 0x904E, 0x904D, 0x9051, 0x903E, - 0x9041, 0x9112, 0x9117, 0x916C, 0x916A, 0x9169, 0x91C9, 0x9237, - 0x9257, 0x9238, 0x923D, 0x9240, 0x923E, 0x925B, 0x924B, 0x9264, - 0x9251, 0x9234, 0x9249, 0x924D, 0x9245, 0x9239, 0x923F, 0x925A, - 0x9598, 0x9698, 0x9694, 0x9695, 0x96CD, 0x96CB, 0x96C9, 0x96CA, - 0x96F7, 0x96FB, 0x96F9, 0x96F6, 0x9756, 0x9774, 0x9776, 0x9810, - 0x9811, 0x9813, 0x980A, 0x9812, 0x980C, 0x98FC, 0x98F4, 0x8C5E, - 0x8C7F, 0x8C7E, 0x8C83, 0x8CB1, 0x8D87, 0x8D88, 0x8D83, 0x8D86, - 0x8D8B, 0x8D82, 0x8DCA, 0x8DD2, 0x8DD4, 0x8DC9, 0x8EB0, 0x8EF2, - 0x8EE4, 0x8EF3, 0x8EEA, 0x8EFD, 0x8F9D, 0x902B, 0x902A, 0x9028, - 0x9029, 0x902C, 0x903A, 0x9030, 0x9037, 0x903B, 0x910A, 0x91FE, - 0x98FD, 0x98FE, 0x99B3, 0x99B1, 0x99B4, 0x9AE1, 0x9CE9, 0x9E82, - 0x9F0E, 0x9F13, 0x9F20, 0x50E7, 0x50EE, 0x50E5, 0x50D6, 0x50ED, -plane 43 -at 0x00 - 0x50DA, 0x50D5, 0x50CF, 0x50D1, 0x50F1, 0x50CE, 0x50E9, 0x5162, - 0x51F3, 0x5283, 0x5282, 0x5331, 0x53AD, 0x55FE, 0x5600, 0x561B, - 0x5617, 0x55FD, 0x5614, 0x5606, 0x5609, 0x560D, 0x560E, 0x55F7, - 0x5616, 0x561F, 0x5608, 0x5610, 0x55F6, 0x5718, 0x5716, 0x5875, - 0x587E, 0x5883, 0x5893, 0x588A, 0x5879, 0x5885, 0x587D, 0x58FD, - 0x5925, 0x5922, 0x5924, 0x596A, 0x5969, 0x5AE1, 0x5AE6, 0x5AE9, - 0x5AD7, 0x5AD6, 0x5AD8, 0x5AE3, 0x5B75, 0x5BDE, 0x5BE7, 0x5BE1, - 0x5BE5, 0x5BE6, 0x5BE8, 0x5BE2, 0x5BE4, 0x5BDF, 0x5C0D, 0x5C62, - 0x5D84, 0x5D87, 0x5E5B, 0x5E63, 0x5E55, 0x5E57, 0x5E54, 0x5ED3, - 0x5ED6, 0x5F0A, 0x5F46, 0x5F70, 0x5FB9, 0x6147, 0x613F, 0x614B, - 0x6177, 0x6162, 0x6163, 0x615F, 0x615A, 0x6158, 0x6175, 0x622A, - 0x6487, 0x6458, 0x6454, 0x64A4, 0x6478, 0x645F, 0x647A, 0x6451, - 0x6467, 0x6434, 0x646D, 0x647B, 0x6572, 0x65A1, 0x65D7, 0x65D6, - 0x66A2, 0x66A8, 0x669D, 0x699C, 0x69A8, 0x6995, 0x69C1, 0x69AE, - 0x69D3, 0x69CB, 0x699B, 0x69B7, 0x69BB, 0x69AB, 0x69B4, 0x69D0, - 0x69CD, 0x69AD, 0x69CC, 0x69A6, 0x69C3, 0x69A3, 0x6B49, 0x6B4C, - 0x6C33, 0x6F33, 0x6F14, 0x6EFE, 0x6F13, 0x6EF4, 0x6F29, 0x6F3E, - 0x6F20, 0x6F2C, 0x6F0F, 0x6F02, 0x6F22, 0x9220, 0x920B, 0x9218, - 0x9222, 0x921B, 0x9208, 0x920E, 0x9213, 0x9595, 0x968C, 0x967B, - 0x967F, 0x9681, 0x9682, 0x96EE, 0x96ED, 0x96EC, 0x975F, 0x976F, - 0x976D, 0x98F0, 0x9AA9, 0x9AE0, 0x4EB7, 0x50CC, 0x50BC, 0x50AA, - 0x50B9, 0x50AB, 0x50C3, 0x50CD, 0x517E, 0x527E, 0x6EFF, 0x6EEF, - 0x6F06, 0x6F31, 0x6F38, 0x6F32, 0x6F23, 0x6F15, 0x6F2B, 0x6F2F, - 0x6F88, 0x6F2A, 0x6EEC, 0x6F01, 0x6EF2, 0x6ECC, 0x6EF7, 0x7194, - 0x7199, 0x717D, 0x718A, 0x7184, 0x7192, 0x723E, 0x7292, 0x7296, - 0x7344, 0x7350, 0x7464, 0x7463, 0x746A, 0x7470, 0x746D, 0x7504, - 0x7591, 0x7627, 0x760D, 0x760B, 0x7609, 0x7613, 0x76E1, 0x76E3, - 0x7784, 0x777D, 0x777F, 0x7761, 0x78C1, 0x789F, 0x78A7, 0x78B3, - 0x78A9, 0x78A3, 0x798E, 0x798F, 0x798D, 0x7A2E, 0x7A31, 0x7AAA, - 0x7AA9, 0x7AED, 0x7AEF, 0x7BA1, 0x7B95, 0x7B8B, 0x7B75, 0x7B97, - 0x7B9D, 0x7B94, 0x7B8F, 0x7BB8, 0x7B87, 0x7B84, 0x7CB9, 0x7CBD, - 0x7CBE, 0x7DBB, 0x7DB0, 0x7D9C, 0x7DBD, 0x7DBE, 0x7DA0, 0x7DCA, -plane 44 -at 0x00 - 0x7DB4, 0x7DB2, 0x7DB1, 0x7DBA, 0x7DA2, 0x7DBF, 0x7DB5, 0x7DB8, - 0x7DAD, 0x7DD2, 0x7DC7, 0x7DAC, 0x7F70, 0x7FE0, 0x7FE1, 0x7FDF, - 0x805E, 0x805A, 0x8087, 0x8150, 0x8180, 0x818F, 0x8188, 0x818A, - 0x817F, 0x8182, 0x81E7, 0x81FA, 0x8207, 0x8214, 0x821E, 0x824B, - 0x84C9, 0x84BF, 0x84C6, 0x84C4, 0x8499, 0x849E, 0x84B2, 0x849C, - 0x84CB, 0x84B8, 0x84C0, 0x84D3, 0x8490, 0x84BC, 0x84D1, 0x84CA, - 0x873F, 0x871C, 0x873B, 0x8722, 0x8725, 0x8734, 0x8718, 0x8755, - 0x8737, 0x8729, 0x88F3, 0x8902, 0x88F4, 0x88F9, 0x88F8, 0x88FD, - 0x88E8, 0x891A, 0x88EF, 0x8AA6, 0x8A8C, 0x8A9E, 0x8AA3, 0x8A8D, - 0x8AA1, 0x8A93, 0x8AA4, 0x5279, 0x52E1, 0x52E0, 0x52E7, 0x5380, - 0x53AB, 0x53AA, 0x53A9, 0x53E0, 0x55EA, 0x55D7, 0x55C1, 0x5715, - 0x586C, 0x585C, 0x5850, 0x5861, 0x586A, 0x5869, 0x5856, 0x5860, - 0x5866, 0x585F, 0x5923, 0x5966, 0x5968, 0x5ACE, 0x5AC5, 0x5AC3, - 0x5AD0, 0x5B74, 0x5B76, 0x5BDC, 0x8AAA, 0x8AA5, 0x8AA8, 0x8A98, - 0x8A91, 0x8A9A, 0x8AA7, 0x8C6A, 0x8C8D, 0x8C8C, 0x8CD3, 0x8CD1, - 0x8CD2, 0x8D6B, 0x8D99, 0x8D95, 0x8DFC, 0x8F14, 0x8F12, 0x8F15, - 0x8F13, 0x8FA3, 0x9060, 0x9058, 0x905C, 0x9063, 0x9059, 0x905E, - 0x9062, 0x905D, 0x905B, 0x9119, 0x9118, 0x911E, 0x9175, 0x9178, - 0x9177, 0x9174, 0x9278, 0x9280, 0x9285, 0x9298, 0x9296, 0x927B, - 0x9293, 0x929C, 0x92A8, 0x927C, 0x9291, 0x95A1, 0x95A8, 0x95A9, - 0x95A3, 0x95A5, 0x95A4, 0x9699, 0x969C, 0x969B, 0x96CC, 0x96D2, - 0x9700, 0x977C, 0x9785, 0x97F6, 0x9817, 0x9818, 0x98AF, 0x98B1, - 0x9903, 0x9905, 0x990C, 0x9909, 0x99C1, 0x9AAF, 0x9AB0, 0x9AE6, - 0x9B41, 0x9B42, 0x9CF4, 0x9CF6, 0x9CF3, 0x9EBC, 0x9F3B, 0x9F4A, - 0x5104, 0x5100, 0x50FB, 0x50F5, 0x50F9, 0x5102, 0x5108, 0x5109, - 0x5105, 0x51DC, 0x5287, 0x5288, 0x5289, 0x528D, 0x528A, 0x52F0, - 0x53B2, 0x562E, 0x563B, 0x5639, 0x5632, 0x563F, 0x5634, 0x5629, - 0x5653, 0x564E, 0x5657, 0x5674, 0x5636, 0x562F, 0x5630, 0x5880, - 0x589F, 0x589E, 0x58B3, 0x589C, 0x58AE, 0x58A9, 0x58A6, 0x596D, - 0x5B09, 0x5AFB, 0x5B0B, 0x5AF5, 0x5B0C, 0x5B08, 0x5BEE, 0x5BEC, - 0x5BE9, 0x5BEB, 0x5C64, 0x5C65, 0x5D9D, 0x5D94, 0x5E62, 0x5E5F, - 0x5E61, 0x5EE2, 0x5EDA, 0x5EDF, 0x5EDD, 0x5EE3, 0x5EE0, 0x5F48, -plane 45 -at 0x00 - 0x5F71, 0x5FB7, 0x5FB5, 0x6176, 0x6167, 0x616E, 0x615D, 0x6155, - 0x6182, 0x5BD7, 0x5BDA, 0x5BDB, 0x5C20, 0x5D6D, 0x5D66, 0x5D64, - 0x5D6E, 0x5D60, 0x5F42, 0x5F5A, 0x5F6E, 0x6130, 0x613A, 0x612A, - 0x6143, 0x6119, 0x6131, 0x613D, 0x6408, 0x6432, 0x6438, 0x6431, - 0x6419, 0x6411, 0x6429, 0x641D, 0x643C, 0x6446, 0x6447, 0x643A, - 0x6407, 0x656B, 0x617C, 0x6170, 0x616B, 0x617E, 0x61A7, 0x6190, - 0x61AB, 0x618E, 0x61AC, 0x619A, 0x61A4, 0x6194, 0x61AE, 0x622E, - 0x6469, 0x646F, 0x6479, 0x649E, 0x64B2, 0x6488, 0x6490, 0x64B0, - 0x64A5, 0x6493, 0x6495, 0x64A9, 0x6492, 0x64AE, 0x64AD, 0x64AB, - 0x649A, 0x64AC, 0x6499, 0x64A2, 0x64B3, 0x6575, 0x6577, 0x6578, - 0x66AE, 0x66AB, 0x66B4, 0x66B1, 0x6A23, 0x6A1F, 0x69E8, 0x6A01, - 0x6A1E, 0x6A19, 0x69FD, 0x6A21, 0x6A13, 0x6A0A, 0x69F3, 0x6A02, - 0x6A05, 0x69ED, 0x6A11, 0x6B50, 0x6B4E, 0x6BA4, 0x6BC5, 0x6BC6, - 0x6F3F, 0x6F7C, 0x6F84, 0x6F51, 0x6F66, 0x6F54, 0x6F86, 0x6F6D, - 0x6F5B, 0x6F78, 0x6F6E, 0x6F8E, 0x6F7A, 0x6F70, 0x6F64, 0x6F97, - 0x6F58, 0x6ED5, 0x6F6F, 0x6F60, 0x6F5F, 0x719F, 0x71AC, 0x71B1, - 0x71A8, 0x7256, 0x729B, 0x734E, 0x7357, 0x7469, 0x748B, 0x7483, - 0x747E, 0x7480, 0x757F, 0x7620, 0x7629, 0x761F, 0x7624, 0x7626, - 0x7621, 0x7622, 0x769A, 0x76BA, 0x76E4, 0x778E, 0x7787, 0x778C, - 0x7791, 0x778B, 0x78CB, 0x78C5, 0x78BA, 0x78CA, 0x78BE, 0x78D5, - 0x78BC, 0x78D0, 0x7A3F, 0x7A3C, 0x7A40, 0x7A3D, 0x7A37, 0x7A3B, - 0x7AAF, 0x7AAE, 0x7BAD, 0x7BB1, 0x7BC4, 0x7BB4, 0x7BC6, 0x7BC7, - 0x7BC1, 0x7BA0, 0x7BCC, 0x7CCA, 0x7DE0, 0x7DF4, 0x7DEF, 0x7DFB, - 0x7DD8, 0x7DEC, 0x7DDD, 0x7DE8, 0x7DE3, 0x7DDA, 0x7DDE, 0x7DE9, - 0x7D9E, 0x7DD9, 0x7DF2, 0x7DF9, 0x7F75, 0x7F77, 0x7FAF, 0x6570, - 0x656D, 0x65E4, 0x6693, 0x668F, 0x6692, 0x668E, 0x6946, 0x6931, - 0x693E, 0x697C, 0x6943, 0x6973, 0x6955, 0x6985, 0x694D, 0x6950, - 0x6947, 0x6967, 0x6936, 0x6964, 0x6961, 0x697D, 0x6B44, 0x6B40, - 0x6B71, 0x6B73, 0x6B9C, 0x6BC1, 0x6BFA, 0x6C31, 0x6C32, 0x6EB8, - 0x7FE9, 0x8026, 0x819B, 0x819C, 0x819D, 0x81A0, 0x819A, 0x8198, - 0x8517, 0x853D, 0x851A, 0x84EE, 0x852C, 0x852D, 0x8513, 0x8511, - 0x8523, 0x8521, 0x8514, 0x84EC, 0x8525, 0x84FF, 0x8506, 0x8782, -plane 46 -at 0x00 - 0x8774, 0x8776, 0x8760, 0x8766, 0x8778, 0x8768, 0x8759, 0x8757, - 0x874C, 0x8753, 0x885B, 0x885D, 0x8910, 0x8907, 0x8912, 0x8913, - 0x8915, 0x890A, 0x8ABC, 0x8AD2, 0x8AC7, 0x8AC4, 0x8A95, 0x8ACB, - 0x8AF8, 0x8AB2, 0x8AC9, 0x8AC2, 0x8ABF, 0x8AB0, 0x8AD6, 0x8ACD, - 0x8AB6, 0x8AB9, 0x8ADB, 0x8C4C, 0x8C4E, 0x8C6C, 0x8CE0, 0x8CDE, - 0x8CE6, 0x8CE4, 0x8CEC, 0x8CED, 0x8CE2, 0x8CE3, 0x8CDC, 0x8CEA, - 0x8CE1, 0x8D6D, 0x8D9F, 0x8DA3, 0x8E2B, 0x8E10, 0x8E1D, 0x8E22, - 0x8E0F, 0x8E29, 0x8E1F, 0x8E21, 0x8E1E, 0x8EBA, 0x8F1D, 0x8F1B, - 0x8F1F, 0x8F29, 0x8F26, 0x8F2A, 0x8F1C, 0x8F1E, 0x8F25, 0x9069, - 0x906E, 0x9068, 0x906D, 0x9077, 0x9130, 0x912D, 0x9127, 0x9131, - 0x9187, 0x9189, 0x918B, 0x9183, 0x92C5, 0x92BB, 0x92B7, 0x92EA, - 0x92AC, 0x92E4, 0x92C1, 0x92B3, 0x92BC, 0x92D2, 0x92C7, 0x92F0, - 0x92B2, 0x95AD, 0x95B1, 0x9704, 0x9706, 0x9707, 0x9709, 0x9760, - 0x978D, 0x978B, 0x978F, 0x9821, 0x982B, 0x981C, 0x98B3, 0x990A, - 0x9913, 0x9912, 0x9918, 0x99DD, 0x99D0, 0x99DF, 0x99DB, 0x99D1, - 0x99D5, 0x99D2, 0x99D9, 0x9AB7, 0x9AEE, 0x9AEF, 0x9B27, 0x9B45, - 0x9B44, 0x9B77, 0x9B6F, 0x9D06, 0x9D09, 0x6EA8, 0x6E91, 0x6EBB, - 0x6E9A, 0x6EA9, 0x6EB5, 0x6E6C, 0x6EE8, 0x6EDD, 0x6EDA, 0x6EE6, - 0x6EAC, 0x6ED9, 0x6EE3, 0x6EE9, 0x6EDB, 0x716F, 0x7148, 0x714A, - 0x716B, 0x714F, 0x7157, 0x7174, 0x7145, 0x7151, 0x716D, 0x7251, - 0x7250, 0x724E, 0x7341, 0x732E, 0x7346, 0x7427, 0x9D03, 0x9EA9, - 0x9EBE, 0x9ECE, 0x58A8, 0x9F52, 0x5112, 0x5118, 0x5114, 0x5110, - 0x5115, 0x5180, 0x51AA, 0x51DD, 0x5291, 0x5293, 0x52F3, 0x5659, - 0x566B, 0x5679, 0x5669, 0x5664, 0x5678, 0x566A, 0x5668, 0x5665, - 0x5671, 0x566F, 0x566C, 0x5662, 0x5676, 0x58C1, 0x58BE, 0x58C7, - 0x58C5, 0x596E, 0x5B1D, 0x5B34, 0x5B78, 0x5BF0, 0x5C0E, 0x5F4A, - 0x61B2, 0x6191, 0x61A9, 0x618A, 0x61CD, 0x61B6, 0x61BE, 0x61CA, - 0x61C8, 0x6230, 0x64C5, 0x64C1, 0x64CB, 0x64BB, 0x64BC, 0x64DA, - 0x64C4, 0x64C7, 0x64C2, 0x64CD, 0x64BF, 0x64D2, 0x64D4, 0x64BE, - 0x6574, 0x66C6, 0x66C9, 0x66B9, 0x66C4, 0x66C7, 0x66B8, 0x6A3D, - 0x6A38, 0x6A3A, 0x6A59, 0x6A6B, 0x6A58, 0x6A39, 0x6A44, 0x6A62, - 0x6A61, 0x6A4B, 0x6A47, 0x6A35, 0x6A5F, 0x6A48, 0x6B59, 0x6B77, -plane 47 -at 0x00 - 0x6C05, 0x6FC2, 0x6FB1, 0x6FA1, 0x6FC3, 0x6FA4, 0x6FC1, 0x6FA7, - 0x6FB3, 0x6FC0, 0x6FB9, 0x6FB6, 0x6FA6, 0x6FA0, 0x6FB4, 0x71BE, - 0x71C9, 0x71D0, 0x71D2, 0x71C8, 0x71D5, 0x71B9, 0x71CE, 0x71D9, - 0x71DC, 0x71C3, 0x71C4, 0x7368, 0x749C, 0x74A3, 0x7498, 0x749F, - 0x749E, 0x74E2, 0x750C, 0x750D, 0x7634, 0x7638, 0x763A, 0x76E7, - 0x76E5, 0x77A0, 0x779E, 0x779F, 0x77A5, 0x78E8, 0x78DA, 0x78EC, - 0x78E7, 0x79A6, 0x7A4D, 0x7A4E, 0x7A46, 0x7A4C, 0x7A4B, 0x7ABA, - 0x7BD9, 0x7C11, 0x7BC9, 0x7BE4, 0x7BDB, 0x7BE1, 0x7BE9, 0x7BE6, - 0x7CD5, 0x7CD6, 0x7E0A, 0x7448, 0x7453, 0x743D, 0x745D, 0x7456, - 0x741E, 0x7447, 0x7443, 0x7458, 0x7449, 0x744C, 0x7445, 0x743E, - 0x7501, 0x751E, 0x757A, 0x75EE, 0x7602, 0x7697, 0x7698, 0x775D, - 0x7764, 0x7753, 0x7758, 0x7882, 0x7890, 0x788A, 0x787A, 0x787D, - 0x788B, 0x7878, 0x788D, 0x7888, 0x7E11, 0x7E08, 0x7E1B, 0x7E23, - 0x7E1E, 0x7E1D, 0x7E09, 0x7E10, 0x7F79, 0x7FB2, 0x7FF0, 0x7FF1, - 0x7FEE, 0x8028, 0x81B3, 0x81A9, 0x81A8, 0x81FB, 0x8208, 0x8258, - 0x8259, 0x854A, 0x8559, 0x8548, 0x8568, 0x8569, 0x8543, 0x8549, - 0x856D, 0x856A, 0x855E, 0x8783, 0x879F, 0x879E, 0x87A2, 0x878D, - 0x8861, 0x892A, 0x8932, 0x8925, 0x892B, 0x8921, 0x89AA, 0x89A6, - 0x8AE6, 0x8AFA, 0x8AEB, 0x8AF1, 0x8B00, 0x8ADC, 0x8AE7, 0x8AEE, - 0x8AFE, 0x8B01, 0x8B02, 0x8AF7, 0x8AED, 0x8AF3, 0x8AF6, 0x8AFC, - 0x8C6B, 0x8C6D, 0x8C93, 0x8CF4, 0x8E44, 0x8E31, 0x8E34, 0x8E42, - 0x8E39, 0x8E35, 0x8F3B, 0x8F2F, 0x8F38, 0x8F33, 0x8FA8, 0x8FA6, - 0x9075, 0x9074, 0x9078, 0x9072, 0x907C, 0x907A, 0x9134, 0x9192, - 0x9320, 0x9336, 0x92F8, 0x9333, 0x932F, 0x9322, 0x92FC, 0x932B, - 0x9304, 0x931A, 0x9310, 0x9326, 0x9321, 0x9315, 0x932E, 0x9319, - 0x95BB, 0x96A7, 0x96A8, 0x96AA, 0x96D5, 0x970E, 0x9711, 0x9716, - 0x970D, 0x9713, 0x970F, 0x975B, 0x975C, 0x9766, 0x9798, 0x9830, - 0x9838, 0x983B, 0x9837, 0x982D, 0x9839, 0x9824, 0x9910, 0x9928, - 0x991E, 0x991B, 0x9921, 0x991A, 0x99ED, 0x99E2, 0x99F1, 0x9AB8, - 0x9ABC, 0x9AFB, 0x9AED, 0x9B28, 0x9B91, 0x9D15, 0x9D23, 0x9D26, - 0x9D28, 0x9D12, 0x9D1B, 0x9ED8, 0x9ED4, 0x9F8D, 0x9F9C, 0x512A, - 0x511F, 0x5121, 0x5132, 0x52F5, 0x568E, 0x5680, 0x5690, 0x5685, -plane 48 -at 0x00 - 0x5687, 0x7892, 0x797E, 0x7983, 0x7980, 0x7A0F, 0x7A1D, 0x7AA1, - 0x7AA4, 0x7AE9, 0x7AEA, 0x7B62, 0x7B6B, 0x7B5E, 0x7B79, 0x7B6F, - 0x7B68, 0x7CAE, 0x7CB0, 0x7D90, 0x7D8A, 0x7D8B, 0x7D99, 0x7D95, - 0x7D87, 0x7D78, 0x7D97, 0x7D89, 0x7D98, 0x7FA3, 0x7FDD, 0x8057, - 0x8163, 0x816A, 0x568F, 0x58D5, 0x58D3, 0x58D1, 0x58CE, 0x5B30, - 0x5B2A, 0x5B24, 0x5B7A, 0x5C37, 0x5C68, 0x5DBC, 0x5DBA, 0x5DBD, - 0x5DB8, 0x5E6B, 0x5F4C, 0x5FBD, 0x61C9, 0x61C2, 0x61C7, 0x61E6, - 0x61CB, 0x6232, 0x6234, 0x64CE, 0x64CA, 0x64D8, 0x64E0, 0x64F0, - 0x64E6, 0x64EC, 0x64F1, 0x64E2, 0x64ED, 0x6582, 0x6583, 0x66D9, - 0x66D6, 0x6A80, 0x6A94, 0x6A84, 0x6AA2, 0x6A9C, 0x6ADB, 0x6AA3, - 0x6A7E, 0x6A97, 0x6A90, 0x6AA0, 0x6B5C, 0x6BAE, 0x6BDA, 0x6C08, - 0x6FD8, 0x6FF1, 0x6FDF, 0x6FE0, 0x6FDB, 0x6FE4, 0x6FEB, 0x6FEF, - 0x6F80, 0x6FEC, 0x6FE1, 0x6FE9, 0x6FD5, 0x6FEE, 0x6FF0, 0x71E7, - 0x71DF, 0x71EE, 0x71E6, 0x71E5, 0x71ED, 0x71EC, 0x71F4, 0x71E0, - 0x7235, 0x7246, 0x7370, 0x7372, 0x74A9, 0x74B0, 0x74A6, 0x74A8, - 0x7646, 0x7642, 0x764C, 0x76EA, 0x77B3, 0x77AA, 0x77B0, 0x77AC, - 0x77A7, 0x77AD, 0x77EF, 0x78F7, 0x78FA, 0x78F4, 0x78EF, 0x7901, - 0x79A7, 0x79AA, 0x7A57, 0x7ABF, 0x7C07, 0x7C0D, 0x7BFE, 0x7BF7, - 0x7C0C, 0x7BE0, 0x7CE0, 0x7CDC, 0x7CDE, 0x7CE2, 0x7CDF, 0x7CD9, - 0x7CDD, 0x7E2E, 0x7E3E, 0x7E46, 0x7E37, 0x7E32, 0x7E43, 0x7E2B, - 0x7E3D, 0x7E31, 0x7E45, 0x7E41, 0x7E34, 0x7E39, 0x7E48, 0x7E35, - 0x7E3F, 0x7E2F, 0x7F44, 0x7FF3, 0x7FFC, 0x8071, 0x8072, 0x8070, - 0x806F, 0x8073, 0x81C6, 0x81C3, 0x81BA, 0x81C2, 0x81C0, 0x81BF, - 0x81BD, 0x81C9, 0x81BE, 0x81E8, 0x8209, 0x8271, 0x85AA, 0x816C, - 0x815D, 0x8175, 0x815F, 0x817D, 0x816D, 0x8241, 0x844F, 0x8484, - 0x847F, 0x8448, 0x842A, 0x847B, 0x8472, 0x8464, 0x842E, 0x845C, - 0x8453, 0x8441, 0x84C8, 0x8462, 0x8480, 0x843E, 0x8483, 0x8471, - 0x844A, 0x8455, 0x8458, 0x86FC, 0x86FD, 0x8715, 0x8716, 0x86FF, - 0x8584, 0x857E, 0x859C, 0x8591, 0x8594, 0x85AF, 0x859B, 0x8587, - 0x85A8, 0x858A, 0x8667, 0x87C0, 0x87D1, 0x87B3, 0x87D2, 0x87C6, - 0x87AB, 0x87BB, 0x87BA, 0x87C8, 0x87CB, 0x893B, 0x8936, 0x8944, - 0x8938, 0x893D, 0x89AC, 0x8B0E, 0x8B17, 0x8B19, 0x8B1B, 0x8B0A, -plane 49 -at 0x00 - 0x8B20, 0x8B1D, 0x8B04, 0x8B10, 0x8C41, 0x8C3F, 0x8C73, 0x8CFA, - 0x8CFD, 0x8CFC, 0x8CF8, 0x8CFB, 0x8DA8, 0x8E49, 0x8E4B, 0x8E48, - 0x8E4A, 0x8F44, 0x8F3E, 0x8F42, 0x8F45, 0x8F3F, 0x907F, 0x907D, - 0x9084, 0x9081, 0x9082, 0x9080, 0x9139, 0x91A3, 0x919E, 0x919C, - 0x934D, 0x9382, 0x9328, 0x9375, 0x934A, 0x9365, 0x934B, 0x9318, - 0x937E, 0x936C, 0x935B, 0x9370, 0x935A, 0x9354, 0x95CA, 0x95CB, - 0x95CC, 0x95C8, 0x95C6, 0x96B1, 0x96B8, 0x96D6, 0x971C, 0x971E, - 0x97A0, 0x97D3, 0x9846, 0x98B6, 0x9935, 0x9A01, 0x99FF, 0x9BAE, - 0x9BAB, 0x9BAA, 0x9BAD, 0x9D3B, 0x9D3F, 0x9E8B, 0x9ECF, 0x9EDE, - 0x9EDC, 0x9EDD, 0x9EDB, 0x9F3E, 0x9F4B, 0x53E2, 0x5695, 0x56AE, - 0x58D9, 0x58D8, 0x5B38, 0x5F5E, 0x61E3, 0x6233, 0x64F4, 0x64F2, - 0x64FE, 0x6506, 0x64FA, 0x64FB, 0x64F7, 0x65B7, 0x66DC, 0x6726, - 0x6AB3, 0x6AAC, 0x6AC3, 0x6ABB, 0x6AB8, 0x6AC2, 0x6AAE, 0x6AAF, - 0x6B5F, 0x6B78, 0x6BAF, 0x7009, 0x700B, 0x6FFE, 0x7006, 0x6FFA, - 0x7011, 0x700F, 0x71FB, 0x71FC, 0x71FE, 0x71F8, 0x7377, 0x7375, - 0x74A7, 0x74BF, 0x7515, 0x7656, 0x7658, 0x8858, 0x88E0, 0x89E7, - 0x8A6A, 0x8A80, 0x8A6F, 0x8A65, 0x8A78, 0x8A7D, 0x8A88, 0x8A64, - 0x8A7E, 0x8A67, 0x8C63, 0x8C88, 0x8CCD, 0x8CC9, 0x8DED, 0x8EB1, - 0x8F04, 0x8F9E, 0x8FA0, 0x9043, 0x9046, 0x9048, 0x9045, 0x9040, - 0x904C, 0x910C, 0x9113, 0x9115, 0x916B, 0x9167, 0x7652, 0x77BD, - 0x77BF, 0x77BB, 0x77BC, 0x790E, 0x79AE, 0x7A61, 0x7A62, 0x7A60, - 0x7AC4, 0x7AC5, 0x7C2B, 0x7C27, 0x7C2A, 0x7C1E, 0x7C23, 0x7C21, - 0x7CE7, 0x7E54, 0x7E55, 0x7E5E, 0x7E5A, 0x7E61, 0x7E52, 0x7E59, - 0x7F48, 0x7FF9, 0x7FFB, 0x8077, 0x8076, 0x81CD, 0x81CF, 0x820A, - 0x85CF, 0x85A9, 0x85CD, 0x85D0, 0x85C9, 0x85B0, 0x85BA, 0x85B9, - 0x85A6, 0x87EF, 0x87EC, 0x87F2, 0x87E0, 0x8986, 0x89B2, 0x89F4, - 0x8B28, 0x8B39, 0x8B2C, 0x8B2B, 0x8C50, 0x8D05, 0x8E59, 0x8E63, - 0x8E66, 0x8E64, 0x8E5F, 0x8E55, 0x8EC0, 0x8F49, 0x8F4D, 0x9087, - 0x9083, 0x9088, 0x91AB, 0x91AC, 0x91D0, 0x9394, 0x938A, 0x9396, - 0x93A2, 0x93B3, 0x93AE, 0x93AC, 0x93B0, 0x9398, 0x939A, 0x9397, - 0x95D4, 0x95D6, 0x95D0, 0x95D5, 0x96E2, 0x96DC, 0x96D9, 0x96DB, - 0x96DE, 0x9724, 0x97A3, 0x97A6, 0x97AD, 0x97F9, 0x984D, 0x984F, -plane 50 -at 0x00 - 0x984C, 0x984E, 0x9853, 0x98BA, 0x993E, 0x993F, 0x993D, 0x992E, - 0x99A5, 0x9A0E, 0x9AC1, 0x9B03, 0x9B06, 0x9B4F, 0x9B4E, 0x9B4D, - 0x9BCA, 0x9BC9, 0x9BFD, 0x9BC8, 0x9BC0, 0x9D51, 0x9D5D, 0x9D60, - 0x9EE0, 0x9F15, 0x9F2C, 0x5133, 0x56A5, 0x58DE, 0x58DF, 0x58E2, - 0x5BF5, 0x9F90, 0x5EEC, 0x61F2, 0x61F7, 0x61F6, 0x61F5, 0x6500, - 0x650F, 0x66E0, 0x66DD, 0x6AE5, 0x6ADD, 0x6ADA, 0x6AD3, 0x701B, - 0x701F, 0x7028, 0x701A, 0x701D, 0x7015, 0x7018, 0x7206, 0x720D, - 0x7258, 0x72A2, 0x7378, 0x925D, 0x9255, 0x9235, 0x9259, 0x922F, - 0x923C, 0x928F, 0x925C, 0x926A, 0x9262, 0x925F, 0x926B, 0x926E, - 0x923B, 0x9244, 0x9241, 0x959A, 0x9599, 0x968F, 0x9696, 0x96F4, - 0x96FC, 0x9755, 0x9779, 0x97EE, 0x97F5, 0x980B, 0x98F3, 0x98F7, - 0x98FF, 0x98F5, 0x98EC, 0x98F1, 0x737A, 0x74BD, 0x74CA, 0x74E3, - 0x7587, 0x7586, 0x765F, 0x7661, 0x77C7, 0x7919, 0x79B1, 0x7A6B, - 0x7A69, 0x7C3E, 0x7C3F, 0x7C38, 0x7C3D, 0x7C37, 0x7C40, 0x7E6B, - 0x7E6D, 0x7E79, 0x7E69, 0x7E6A, 0x7F85, 0x7E73, 0x7FB6, 0x7FB9, - 0x7FB8, 0x81D8, 0x85E9, 0x85DD, 0x85EA, 0x85D5, 0x85E4, 0x85E5, - 0x85F7, 0x87FB, 0x8805, 0x880D, 0x87F9, 0x87FE, 0x8960, 0x895F, - 0x8956, 0x895E, 0x8B41, 0x8B5C, 0x8B58, 0x8B49, 0x8B5A, 0x8B4E, - 0x8B4F, 0x8B46, 0x8B59, 0x8D08, 0x8D0A, 0x8E7C, 0x8E72, 0x8E87, - 0x8E76, 0x8E6C, 0x8E7A, 0x8E74, 0x8F54, 0x8F4E, 0x8FAD, 0x908A, - 0x908B, 0x91B1, 0x91AE, 0x93E1, 0x93D1, 0x93DF, 0x93C3, 0x93C8, - 0x93DC, 0x93DD, 0x93D6, 0x93E2, 0x93CD, 0x93D8, 0x93E4, 0x93D7, - 0x93E8, 0x95DC, 0x96B4, 0x96E3, 0x972A, 0x9727, 0x9761, 0x97DC, - 0x97FB, 0x985E, 0x9858, 0x985B, 0x98BC, 0x9945, 0x9949, 0x9A16, - 0x9A19, 0x9B0D, 0x9BE8, 0x9BE7, 0x9BD6, 0x9BDB, 0x9D89, 0x9D61, - 0x9D72, 0x9D6A, 0x9D6C, 0x9E92, 0x9E97, 0x9E93, 0x9EB4, 0x52F8, - 0x56A8, 0x56B7, 0x56B6, 0x56B4, 0x56BC, 0x58E4, 0x5B40, 0x5B43, - 0x5B7D, 0x5BF6, 0x5DC9, 0x61F8, 0x61FA, 0x6518, 0x6514, 0x6519, - 0x66E6, 0x6727, 0x6AEC, 0x703E, 0x7030, 0x7032, 0x7210, 0x737B, - 0x74CF, 0x7662, 0x7665, 0x7926, 0x792A, 0x792C, 0x792B, 0x7AC7, - 0x7AF6, 0x7C4C, 0x7C43, 0x7C4D, 0x7CEF, 0x7CF0, 0x8FAE, 0x7E7D, - 0x7E7C, 0x999A, 0x9AE2, 0x9B3D, 0x9B5D, 0x9CE8, 0x9CEB, 0x9CEF, -plane 51 -at 0x00 - 0x9CEE, 0x9E81, 0x9F14, 0x50D0, 0x50D9, 0x50DC, 0x50D8, 0x50E1, - 0x50EB, 0x50F4, 0x50E2, 0x50DE, 0x51F4, 0x52ED, 0x52EA, 0x5332, - 0x53AE, 0x53B0, 0x55FB, 0x5603, 0x560B, 0x5607, 0x55F8, 0x5628, - 0x561E, 0x5618, 0x7E82, 0x7F4C, 0x8000, 0x81DA, 0x8266, 0x85FB, - 0x85F9, 0x8611, 0x85FA, 0x8606, 0x860B, 0x8607, 0x860A, 0x8814, - 0x8815, 0x8964, 0x89BA, 0x89F8, 0x8B70, 0x8B6C, 0x8B66, 0x8B6F, - 0x8B5F, 0x8B6B, 0x8D0F, 0x8D0D, 0x8E89, 0x8E81, 0x8E85, 0x8E82, - 0x91B4, 0x91CB, 0x9418, 0x9403, 0x93FD, 0x95E1, 0x9730, 0x98C4, - 0x9952, 0x9951, 0x99A8, 0x9A2B, 0x9A30, 0x9A37, 0x9A35, 0x9C13, - 0x9C0D, 0x9E79, 0x9EB5, 0x9EE8, 0x9F2F, 0x9F5F, 0x9F63, 0x9F61, - 0x5137, 0x5138, 0x56C1, 0x56C0, 0x56C2, 0x5914, 0x5C6C, 0x5DCD, - 0x61FC, 0x61FE, 0x651D, 0x651C, 0x6595, 0x66E9, 0x6AFB, 0x6B04, - 0x6AFA, 0x6BB2, 0x704C, 0x721B, 0x72A7, 0x74D6, 0x74D4, 0x7669, - 0x77D3, 0x7C50, 0x7E8F, 0x7E8C, 0x7FBC, 0x8617, 0x862D, 0x861A, - 0x8823, 0x8822, 0x8821, 0x881F, 0x896A, 0x896C, 0x89BD, 0x8B74, - 0x8B77, 0x8B7D, 0x8D13, 0x8E8A, 0x8E8D, 0x8E8B, 0x8F5F, 0x8FAF, - 0x91BA, 0x942E, 0x9433, 0x9435, 0x943A, 0x9438, 0x9432, 0x942B, - 0x95E2, 0x9738, 0x9739, 0x9732, 0x97FF, 0x9867, 0x9865, 0x9957, - 0x9A45, 0x9A43, 0x9A40, 0x9A3E, 0x9ACF, 0x9B54, 0x9B51, 0x9C2D, - 0x9C25, 0x9DAF, 0x9DB4, 0x9DC2, 0x9DB8, 0x9E9D, 0x9EEF, 0x9F19, - 0x9F5C, 0x9F66, 0x9F67, 0x513C, 0x513B, 0x56C8, 0x56CA, 0x56C9, - 0x5B7F, 0x5DD4, 0x5DD2, 0x5F4E, 0x61FF, 0x6524, 0x6B0A, 0x6B61, - 0x7051, 0x7058, 0x7380, 0x74E4, 0x758A, 0x766E, 0x766C, 0x5611, - 0x5651, 0x5605, 0x5717, 0x5892, 0x588C, 0x5878, 0x5884, 0x5873, - 0x58AD, 0x5897, 0x5895, 0x5877, 0x5872, 0x5896, 0x588D, 0x5910, - 0x596C, 0x5AE7, 0x5AE4, 0x5AEF, 0x5626, 0x5AF0, 0x5D7B, 0x5D83, - 0x5D8B, 0x5D8C, 0x5D78, 0x5E52, 0x5ED0, 0x5ECF, 0x5FB3, 0x5FB4, - 0x79B3, 0x7C60, 0x7C5F, 0x807E, 0x807D, 0x81DF, 0x8972, 0x896F, - 0x89FC, 0x8B80, 0x8D16, 0x8D17, 0x8E91, 0x8E93, 0x8F61, 0x9148, - 0x9444, 0x9451, 0x9452, 0x973D, 0x973E, 0x97C3, 0x97C1, 0x986B, - 0x9955, 0x9A55, 0x9A4D, 0x9AD2, 0x9B1A, 0x9C49, 0x9C31, 0x9C3E, - 0x9C3B, 0x9DD3, 0x9DD7, 0x9F34, 0x9F6C, 0x9F6A, 0x9F94, 0x56CC, -plane 52 -at 0x00 - 0x5DD6, 0x6200, 0x6523, 0x652B, 0x652A, 0x66EC, 0x6B10, 0x74DA, - 0x7ACA, 0x7C64, 0x7C63, 0x7C65, 0x7E93, 0x7E96, 0x7E94, 0x81E2, - 0x8638, 0x863F, 0x8831, 0x8B8A, 0x9090, 0x908F, 0x9463, 0x9460, - 0x9464, 0x9768, 0x986F, 0x995C, 0x9A5A, 0x9A5B, 0x9A57, 0x9AD3, - 0x9AD4, 0x9AD1, 0x9C54, 0x9C57, 0x9C56, 0x9DE5, 0x9E9F, 0x9EF4, - 0x56D1, 0x58E9, 0x652C, 0x705E, 0x7671, 0x7672, 0x77D7, 0x7F50, - 0x7F88, 0x8836, 0x8839, 0x8862, 0x8B93, 0x8B92, 0x8B96, 0x8277, - 0x8D1B, 0x91C0, 0x946A, 0x9742, 0x9748, 0x9744, 0x97C6, 0x9870, - 0x9A5F, 0x9B22, 0x9B58, 0x9C5F, 0x9DF9, 0x9DFA, 0x9E7C, 0x9E7D, - 0x9F07, 0x9F77, 0x9F72, 0x5EF3, 0x6B16, 0x7063, 0x7C6C, 0x7C6E, - 0x883B, 0x89C0, 0x8EA1, 0x91C1, 0x9472, 0x9470, 0x9871, 0x995E, - 0x9AD6, 0x9B23, 0x9ECC, 0x7064, 0x77DA, 0x8B9A, 0x9477, 0x97C9, - 0x9A62, 0x9A65, 0x7E9C, 0x8B9C, 0x8EAA, 0x91C5, 0x947D, 0x947E, - 0x947C, 0x9C77, 0x9C78, 0x9EF7, 0x8C54, 0x947F, 0x9E1A, 0x7228, - 0x9A6A, 0x9B31, 0x9E1B, 0x9E1E, 0x7C72, 0x617B, 0x616F, 0x6181, - 0x613C, 0x6142, 0x6138, 0x6133, 0x6160, 0x6169, 0x617D, 0x6186, - 0x622C, 0x6228, 0x644C, 0x6457, 0x647C, 0x6455, 0x6462, 0x6471, - 0x646A, 0x6456, 0x643B, 0x6481, 0x644F, 0x647E, 0x6464, 0x6571, - 0x66A5, 0x669A, 0x669C, 0x66A6, 0x66A4, 0x698F, 0x2460, 0x2461, - 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, - 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, 0x247A, 0x247B, - 0x247C, 0x247D, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, - 0x2176, 0x2177, 0x2178, 0x2179, 0x4E36, 0x4E3F, 0x4E85, 0x4EA0, - 0x5182, 0x5196, 0x51AB, 0x52F9, 0x5338, 0x5369, 0x53B6, 0x590A, - 0x5B80, 0x5DDB, 0x5E7A, 0x5E7F, 0x5EF4, 0x5F50, 0x5F61, 0x6534, - 0x65E0, 0x7592, 0x7676, 0x8FB5, 0x96B6, 0x5902, 0xFF3E, 0x30FD, - 0x30FE, 0x309D, 0x309E, 0xFF02, 0x309B, 0x309C, 0x30FB, 0x3007, - 0x30FC, 0xFF3B, 0xFF3D, 0x273D, 0x3041, 0x3042, 0x3043, 0x3044, - 0x3045, 0x3046, 0x3047, 0x3048, 0x3049, 0x304A, 0x304B, 0x304C, - 0x304D, 0x304E, 0x304F, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, - 0x3055, 0x3056, 0x3057, 0x3058, 0x3059, 0x305A, 0x305B, 0x305C, - 0x305D, 0x305E, 0x305F, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, -plane 53 -at 0x00 - 0x3065, 0x3066, 0x3067, 0x3068, 0x3069, 0x306A, 0x306B, 0x306C, - 0x306D, 0x306E, 0x306F, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, - 0x3075, 0x3076, 0x3077, 0x3078, 0x3079, 0x307A, 0x307B, 0x307C, - 0x307D, 0x307E, 0x307F, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, - 0x3085, 0x3086, 0x3087, 0x3088, 0x3089, 0x308A, 0x308B, 0x308C, - 0x308D, 0x308E, 0x308F, 0x3090, 0x3091, 0x3092, 0x3093, 0x30A1, - 0x30A2, 0x30A3, 0x30A4, 0x69C5, 0x69C8, 0x6992, 0x69B2, 0x69E3, - 0x69C0, 0x69D6, 0x69D1, 0x699F, 0x69A2, 0x69D2, 0x69E1, 0x69D5, - 0x699D, 0x6998, 0x6B74, 0x6BA1, 0x6EF0, 0x6EF3, 0x6F1B, 0x6F0C, - 0x6F1D, 0x6F34, 0x6F28, 0x6F17, 0x6F44, 0x6F42, 0x6F04, 0x6F11, - 0x6EFA, 0x6F4A, 0x7191, 0x718E, 0x30A5, 0x30A6, 0x30A7, 0x30A8, - 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, 0x30B0, - 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, 0x30B8, - 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, 0x30C0, - 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, 0x30C8, - 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, 0x30D0, - 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, 0x30D8, - 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, 0x30E0, - 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0x30E7, 0x30E8, - 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EE, 0x30EF, 0x30F0, - 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, 0x30F6, 0x6BB9, 0x6E0B, - 0x7105, 0x7314, 0x7304, 0x7305, 0x7315, 0x730D, 0x772E, 0x7741, - 0x77EA, 0x7844, 0x7B29, 0x7B27, 0x7C9D, 0x7FC8, 0x8126, 0x811C, - 0x8128, 0x8370, 0x8382, 0x83AC, 0x86AD, 0x86CA, 0x8851, 0x889D, - 0x8990, 0x89D8, 0x89D7, 0x8A2E, 0x8C59, 0x8EDA, 0x9033, 0x9018, - 0x91EF, 0x9AD9, 0x4EB4, 0x50A0, 0x5090, 0x5086, 0x5084, 0x508A, - 0x509F, 0x50A1, 0x5093, 0x51D5, 0x5590, 0x5710, 0x5817, 0x5844, - 0x582B, 0x5845, 0x5965, 0x5BCF, 0x5D56, 0x5D54, 0x5F3D, 0x5FA4, - 0x63EC, 0x63FA, 0x63D4, 0x6675, 0x671C, 0x68D9, 0x6BF1, 0x6E37, - 0x6E7D, 0x6E86, 0x74FA, 0x7572, 0x75DC, 0x7867, 0x7977, 0x7A9B, - 0x7D2A, 0x718B, 0x718D, 0x717F, 0x718C, 0x717E, 0x717C, 0x7183, - 0x7188, 0x7294, 0x7355, 0x7353, 0x734F, 0x7354, 0x746C, 0x7465, -plane 54 -at 0x00 - 0x7466, 0x7461, 0x746B, 0x7468, 0x7476, 0x7460, 0x7474, 0x7506, - 0x760E, 0x7607, 0x76B9, 0x76B7, 0x76E2, 0x7774, 0x7777, 0x7776, - 0x7775, 0x7778, 0x7D65, 0x7F64, 0x8020, 0x8120, 0x813C, 0x813F, - 0x81F0, 0x81F5, 0x8415, 0x83BE, 0x86E5, 0x86D2, 0x86E0, 0x88B3, - 0x8A53, 0x8A37, 0x8A47, 0x8A5C, 0x8EF0, 0x921D, 0x976B, 0x50C0, - 0x52E5, 0x53AF, 0x55D8, 0x5711, 0x5867, 0x5843, 0x5BDD, 0x5D70, - 0x5D6A, 0x5D74, 0x5D5F, 0x5D61, 0x5D73, 0x5E50, 0x5F3F, 0x5FB0, - 0x6135, 0x612D, 0x6102, 0x6226, 0x656E, 0x65B1, 0x65D4, 0x6685, - 0x6972, 0x693A, 0x6EAD, 0x6E95, 0x7243, 0x728F, 0x7575, 0x75EC, - 0x7757, 0x797B, 0x7A21, 0x7A16, 0x7AE8, 0x7B6A, 0x7B5F, 0x7D82, - 0x8055, 0x8168, 0x8246, 0x8243, 0x8481, 0x847C, 0x846A, 0x9170, - 0x50D2, 0x9B62, 0x6F8A, 0x8772, 0x9AF0, 0x9EA8, 0x5292, 0x878C, - 0x9ABA, 0x9B81, 0x9384, 0x9AFF, 0x9BB3, 0x9BB0, 0x9EC7, 0x9721, - 0x7C36, 0x8B5E, 0x9401, 0x941D, 0x994A, 0x8B73, 0x9DD4, 0x77D6, - 0x4E42, 0x4E5C, 0x51F5, 0x531A, 0x5382, 0x4E07, 0x4E0C, 0x4E47, - 0x4E8D, 0x56D7, 0x5140, 0x5C6E, 0x5F73, 0x4E0F, 0x5187, 0x4E0E, - 0x4E2E, 0x4E93, 0x4EC2, 0x4EC9, 0x4EC8, 0x5198, 0x52FC, 0x536C, - 0x53B9, 0x5720, 0x5903, 0x592C, 0x5C10, 0x5DFF, 0x65E1, 0x6BB3, - 0x6BCC, 0x6C14, 0x723F, 0x4E31, 0x4E3C, 0x4EE8, 0x4EDC, 0x4EE9, - 0x4EE1, 0x4EDD, 0x4EDA, 0x520C, 0x531C, 0x534C, 0x5722, 0x5723, - 0x5917, 0x592F, 0x5B81, 0x5B84, 0x5C12, 0x5C3B, 0x5C74, 0x5C73, - 0x5E04, 0x5E80, 0x5E82, 0x5FC9, 0x6209, 0x6250, 0x6C15, 0x7771, - 0x777A, 0x715B, 0x777B, 0x78A6, 0x78AE, 0x78B8, 0x78B1, 0x78AF, - 0x7989, 0x7987, 0x7A29, 0x7A2A, 0x7A2D, 0x7A2C, 0x7A32, 0x7AEC, - 0x7AF0, 0x7B81, 0x7B9E, 0x7B83, 0x7B92, 0x7BA3, 0x7B9F, 0x7B93, - 0x7B86, 0x7CB8, 0x7CB7, 0x7DC8, 0x7DB6, 0x7DD1, 0x7DA8, 0x7DAB, - 0x6C36, 0x6C43, 0x6C3F, 0x6C3B, 0x72AE, 0x72B0, 0x738A, 0x79B8, - 0x808A, 0x961E, 0x4F0E, 0x4F18, 0x4F2C, 0x4EF5, 0x4F14, 0x4EF1, - 0x4F00, 0x4EF7, 0x4F08, 0x4F1D, 0x4F02, 0x4F05, 0x4F22, 0x4F13, - 0x4F04, 0x4EF4, 0x4F12, 0x51B1, 0x5213, 0x5209, 0x5210, 0x52A6, - 0x5322, 0x531F, 0x534D, 0x538A, 0x5407, 0x56E1, 0x56DF, 0x572E, - 0x572A, 0x5734, 0x593C, 0x5980, 0x597C, 0x5985, 0x597B, 0x597E, -plane 55 -at 0x00 - 0x5977, 0x597F, 0x5B56, 0x5C15, 0x5C25, 0x5C7C, 0x5C7A, 0x5C7B, - 0x5C7E, 0x5DDF, 0x5E75, 0x5E84, 0x5F02, 0x5F1A, 0x5F74, 0x5FD5, - 0x5FD4, 0x5FCF, 0x625C, 0x625E, 0x6264, 0x6261, 0x6266, 0x6262, - 0x6259, 0x6260, 0x625A, 0x6265, 0x65EF, 0x65EE, 0x673E, 0x6739, - 0x6738, 0x673B, 0x673A, 0x673F, 0x673C, 0x6733, 0x6C18, 0x6C46, - 0x6C52, 0x6C5C, 0x6C4F, 0x6C4A, 0x6C54, 0x6C4B, 0x6C4C, 0x7071, - 0x725E, 0x72B4, 0x72B5, 0x738E, 0x752A, 0x767F, 0x7A75, 0x7F51, - 0x8278, 0x827C, 0x8280, 0x827D, 0x827F, 0x864D, 0x897E, 0x9099, - 0x9097, 0x9098, 0x909B, 0x9094, 0x9622, 0x9624, 0x9620, 0x9623, - 0x4F56, 0x4F3B, 0x4F62, 0x4F49, 0x4F53, 0x4F64, 0x4F3E, 0x4F67, - 0x4F52, 0x4F5F, 0x4F41, 0x4F58, 0x4F2D, 0x4F33, 0x4F3F, 0x4F61, - 0x518F, 0x51B9, 0x521C, 0x521E, 0x5221, 0x52AD, 0x52AE, 0x5309, - 0x5363, 0x5372, 0x538E, 0x538F, 0x5430, 0x5437, 0x542A, 0x5454, - 0x5445, 0x5419, 0x541C, 0x5425, 0x5418, 0x7DB3, 0x7DCD, 0x7DCF, - 0x7DA4, 0x7F41, 0x7F6F, 0x7F71, 0x8023, 0x805B, 0x8061, 0x805F, - 0x8181, 0x8184, 0x8213, 0x824A, 0x824C, 0x84BD, 0x8495, 0x8492, - 0x84C3, 0x8496, 0x84A5, 0x84B5, 0x84B3, 0x84A3, 0x84E4, 0x84D8, - 0x84D5, 0x84B7, 0x84AD, 0x84DA, 0x8493, 0x8736, 0x543D, 0x544F, - 0x5441, 0x5428, 0x5424, 0x5447, 0x56EE, 0x56E7, 0x56E5, 0x5741, - 0x5745, 0x574C, 0x5749, 0x574B, 0x5752, 0x5906, 0x5940, 0x59A6, - 0x5998, 0x59A0, 0x5997, 0x598E, 0x59A2, 0x5990, 0x598F, 0x59A7, - 0x59A1, 0x5B8E, 0x5B92, 0x5C28, 0x5C2A, 0x5C8D, 0x5C8F, 0x5C88, - 0x5C8B, 0x5C89, 0x5C92, 0x5C8A, 0x5C86, 0x5C93, 0x5C95, 0x5DE0, - 0x5E0A, 0x5E0E, 0x5E8B, 0x5E89, 0x5E8C, 0x5E88, 0x5E8D, 0x5F05, - 0x5F1D, 0x5F78, 0x5F76, 0x5FD2, 0x5FD1, 0x5FD0, 0x5FED, 0x5FE8, - 0x5FEE, 0x5FF3, 0x5FE1, 0x5FE4, 0x5FE3, 0x5FFA, 0x5FEF, 0x5FF7, - 0x5FFB, 0x6000, 0x5FF4, 0x623A, 0x6283, 0x628C, 0x628E, 0x628F, - 0x6294, 0x6287, 0x6271, 0x627B, 0x627A, 0x6270, 0x6281, 0x6288, - 0x6277, 0x627D, 0x6272, 0x6274, 0x6537, 0x65F0, 0x65F4, 0x65F3, - 0x65F2, 0x65F5, 0x6745, 0x6747, 0x6759, 0x6755, 0x674C, 0x6748, - 0x675D, 0x674D, 0x675A, 0x674B, 0x6BD0, 0x6C19, 0x6C1A, 0x6C78, - 0x6C67, 0x6C6B, 0x6C84, 0x6C8B, 0x6C8F, 0x6C71, 0x6C6F, 0x6C69, -plane 56 -at 0x00 - 0x6C9A, 0x6C6D, 0x6C87, 0x6C95, 0x6C9C, 0x6C66, 0x6C73, 0x6C65, - 0x6C7B, 0x6C8E, 0x7074, 0x707A, 0x7263, 0x72BF, 0x72BD, 0x72C3, - 0x72C6, 0x72C1, 0x72BA, 0x72C5, 0x7395, 0x7397, 0x7393, 0x7394, - 0x7392, 0x753A, 0x7539, 0x7594, 0x7595, 0x7681, 0x793D, 0x8034, - 0x8095, 0x8099, 0x8090, 0x8092, 0x809C, 0x8290, 0x828F, 0x8285, - 0x828E, 0x8291, 0x8293, 0x873D, 0x872B, 0x8747, 0x8739, 0x8745, - 0x871D, 0x88FF, 0x88EA, 0x88F5, 0x8900, 0x88ED, 0x8903, 0x88E9, - 0x89EA, 0x8A9B, 0x8A8E, 0x8AA2, 0x8A9C, 0x8A94, 0x8A90, 0x8AA9, - 0x8AAC, 0x8A9F, 0x8A9D, 0x8C67, 0x8CD0, 0x8CD6, 0x8CD4, 0x8D98, - 0x8D9A, 0x8D97, 0x8E0B, 0x8E08, 0x828A, 0x8283, 0x8284, 0x8C78, - 0x8FC9, 0x8FBF, 0x909F, 0x90A1, 0x90A5, 0x909E, 0x90A7, 0x90A0, - 0x9630, 0x9628, 0x962F, 0x962D, 0x4E33, 0x4F98, 0x4F7C, 0x4F85, - 0x4F7D, 0x4F80, 0x4F87, 0x4F76, 0x4F74, 0x4F89, 0x4F84, 0x4F77, - 0x4F4C, 0x4F97, 0x4F6A, 0x4F9A, 0x4F79, 0x4F81, 0x4F78, 0x4F90, - 0x4F9C, 0x4F94, 0x4F9E, 0x4F92, 0x4F82, 0x4F95, 0x4F6B, 0x4F6E, - 0x519E, 0x51BC, 0x51BE, 0x5235, 0x5232, 0x5233, 0x5246, 0x5231, - 0x52BC, 0x530A, 0x530B, 0x533C, 0x5392, 0x5394, 0x5487, 0x547F, - 0x5481, 0x5491, 0x5482, 0x5488, 0x546B, 0x547A, 0x547E, 0x5465, - 0x546C, 0x5474, 0x5466, 0x548D, 0x546F, 0x5461, 0x5460, 0x5498, - 0x5463, 0x5467, 0x5464, 0x56F7, 0x56F9, 0x576F, 0x5772, 0x576D, - 0x576B, 0x5771, 0x5770, 0x5776, 0x5780, 0x5775, 0x577B, 0x5773, - 0x5774, 0x5762, 0x5768, 0x577D, 0x590C, 0x5945, 0x59B5, 0x59BA, - 0x59CF, 0x59CE, 0x59B2, 0x59CC, 0x59C1, 0x59B6, 0x59BC, 0x59C3, - 0x59D6, 0x59B1, 0x59BD, 0x59C0, 0x59C8, 0x59B4, 0x59C7, 0x5B62, - 0x5B65, 0x5B93, 0x5B95, 0x5C44, 0x5C47, 0x5CAE, 0x5CA4, 0x5CA0, - 0x5CB5, 0x5CAF, 0x5CA8, 0x5CAC, 0x5C9F, 0x5CA3, 0x5CAD, 0x5CA2, - 0x5CAA, 0x5CA7, 0x5C9D, 0x5CA5, 0x5CB6, 0x5CB0, 0x5CA6, 0x5E17, - 0x5E14, 0x5E19, 0x5F28, 0x5F22, 0x5F23, 0x5F24, 0x5F54, 0x5F82, - 0x5F7E, 0x5F7D, 0x5FDE, 0x5FE5, 0x602D, 0x6026, 0x6019, 0x6032, - 0x600B, 0x8E01, 0x8EB4, 0x8EB3, 0x8FA1, 0x8FA2, 0x905A, 0x9061, - 0x905F, 0x9125, 0x917B, 0x9176, 0x917C, 0x9289, 0x92F6, 0x92B1, - 0x92AD, 0x9292, 0x9281, 0x9284, 0x92AE, 0x9290, 0x929E, 0x95A2, -plane 57 -at 0x00 - 0x95A7, 0x96A0, 0x969D, 0x969F, 0x96D0, 0x96D1, 0x9759, 0x9764, - 0x9819, 0x9814, 0x6034, 0x600A, 0x6017, 0x6033, 0x601A, 0x601E, - 0x602C, 0x6022, 0x600D, 0x6010, 0x602E, 0x6013, 0x6011, 0x600C, - 0x6009, 0x601C, 0x6214, 0x623D, 0x62AD, 0x62B4, 0x62D1, 0x62BE, - 0x62AA, 0x62B6, 0x62CA, 0x62AE, 0x62B3, 0x62AF, 0x62BB, 0x62A9, - 0x62B0, 0x62B8, 0x653D, 0x65A8, 0x65BB, 0x6609, 0x65FC, 0x6604, - 0x6612, 0x6608, 0x65FB, 0x6603, 0x660B, 0x660D, 0x6605, 0x65FD, - 0x6611, 0x6610, 0x66F6, 0x670A, 0x6785, 0x676C, 0x678E, 0x6792, - 0x6776, 0x677B, 0x6798, 0x6786, 0x6784, 0x6774, 0x678D, 0x678C, - 0x677A, 0x679F, 0x6791, 0x6799, 0x6783, 0x677D, 0x6781, 0x6778, - 0x6779, 0x6794, 0x6B25, 0x6B80, 0x6B7E, 0x6BDE, 0x6C1D, 0x6C93, - 0x6CEC, 0x6CEB, 0x6CEE, 0x6CD9, 0x6CB6, 0x6CD4, 0x6CAD, 0x6CE7, - 0x6CB7, 0x6CD0, 0x6CC2, 0x6CBA, 0x6CC3, 0x6CC6, 0x6CED, 0x6CF2, - 0x6CD2, 0x6CDD, 0x6CB4, 0x6C8A, 0x6C9D, 0x6C80, 0x6CDE, 0x6CC0, - 0x6D30, 0x6CCD, 0x6CC7, 0x6CB0, 0x6CF9, 0x6CCF, 0x6CE9, 0x6CD1, - 0x7094, 0x7098, 0x7085, 0x7093, 0x7086, 0x7084, 0x7091, 0x7096, - 0x7082, 0x709A, 0x7083, 0x726A, 0x72D6, 0x72CB, 0x72D8, 0x72C9, - 0x72DC, 0x72D2, 0x72D4, 0x72DA, 0x72CC, 0x72D1, 0x73A4, 0x73A1, - 0x73AD, 0x73A6, 0x73A2, 0x73A0, 0x73AC, 0x739D, 0x74DD, 0x74E8, - 0x753F, 0x7540, 0x753E, 0x758C, 0x7598, 0x76AF, 0x76F3, 0x76F1, - 0x76F0, 0x76F5, 0x77F8, 0x77FC, 0x77F9, 0x77FB, 0x77FA, 0x9815, - 0x981A, 0x9906, 0x98F8, 0x9901, 0x99BE, 0x99BC, 0x99B7, 0x99B6, - 0x99C0, 0x99B8, 0x99C4, 0x99BF, 0x9ADA, 0x9AE4, 0x9AE9, 0x9AE8, - 0x9AEA, 0x9AE5, 0x9B26, 0x9B40, 0x9EBD, 0x510E, 0x50F7, 0x50FC, - 0x510D, 0x5101, 0x51DA, 0x51D9, 0x51DB, 0x5286, 0x528E, 0x52EE, - 0x77F7, 0x7942, 0x793F, 0x79C5, 0x7A78, 0x7A7B, 0x7AFB, 0x7C75, - 0x7CFD, 0x8035, 0x808F, 0x80AE, 0x80A3, 0x80B8, 0x80B5, 0x80AD, - 0x8220, 0x82A0, 0x82C0, 0x82AB, 0x829A, 0x8298, 0x829B, 0x82B5, - 0x82A7, 0x82AE, 0x82BC, 0x829E, 0x82BA, 0x82B4, 0x82A8, 0x82A1, - 0x82A9, 0x82C2, 0x82A4, 0x82C3, 0x82B6, 0x82A2, 0x8670, 0x866F, - 0x866D, 0x866E, 0x8C56, 0x8FD2, 0x8FCB, 0x8FD3, 0x8FCD, 0x8FD6, - 0x8FD5, 0x8FD7, 0x90B2, 0x90B4, 0x90AF, 0x90B3, 0x90B0, 0x9639, -plane 58 -at 0x00 - 0x963D, 0x963C, 0x963A, 0x9643, 0x4FCD, 0x4FC5, 0x4FD3, 0x4FB2, - 0x4FC9, 0x4FCB, 0x4FC1, 0x4FD4, 0x4FDC, 0x4FD9, 0x4FBB, 0x4FB3, - 0x4FDB, 0x4FC7, 0x4FD6, 0x4FBA, 0x4FC0, 0x4FB9, 0x4FEC, 0x5244, - 0x5249, 0x52C0, 0x52C2, 0x533D, 0x537C, 0x5397, 0x5396, 0x5399, - 0x5398, 0x54BA, 0x54A1, 0x54AD, 0x54A5, 0x54CF, 0x54C3, 0x830D, - 0x54B7, 0x54AE, 0x54D6, 0x54B6, 0x54C5, 0x54C6, 0x54A0, 0x5470, - 0x54BC, 0x54A2, 0x54BE, 0x5472, 0x54DE, 0x54B0, 0x57B5, 0x579E, - 0x579F, 0x57A4, 0x578C, 0x5797, 0x579D, 0x579B, 0x5794, 0x5798, - 0x578F, 0x5799, 0x57A5, 0x579A, 0x5795, 0x58F4, 0x590D, 0x5953, - 0x59E1, 0x59DE, 0x59EE, 0x5A00, 0x59F1, 0x59DD, 0x59FA, 0x59FD, - 0x59FC, 0x59F6, 0x59E4, 0x59F2, 0x59F7, 0x59DB, 0x59E9, 0x59F3, - 0x59F5, 0x59E0, 0x59FE, 0x59F4, 0x59ED, 0x5BA8, 0x5C4C, 0x5CD0, - 0x5CD8, 0x5CCC, 0x5CD7, 0x5CCB, 0x5CDB, 0x5333, 0x53B1, 0x5647, - 0x562D, 0x5654, 0x564B, 0x5652, 0x5631, 0x5644, 0x5656, 0x5650, - 0x562B, 0x564D, 0x5637, 0x564F, 0x58A2, 0x58B7, 0x58B2, 0x58AA, - 0x58B5, 0x58B0, 0x58B4, 0x58A4, 0x58A7, 0x5926, 0x5AFE, 0x5B04, - 0x5AFC, 0x5B06, 0x5B0A, 0x5B0D, 0x5B00, 0x5B0E, 0x5CDE, 0x5CDA, - 0x5CC9, 0x5CC7, 0x5CCA, 0x5CD6, 0x5CD3, 0x5CD4, 0x5CCF, 0x5CC8, - 0x5CC6, 0x5CCE, 0x5CDF, 0x5CF8, 0x5DF9, 0x5E21, 0x5E22, 0x5E23, - 0x5E20, 0x5E24, 0x5EB0, 0x5EA4, 0x5EA2, 0x5E9B, 0x5EA3, 0x5EA5, - 0x5F07, 0x5F2E, 0x5F56, 0x5F86, 0x6037, 0x6039, 0x6054, 0x6072, - 0x605E, 0x6045, 0x6053, 0x6047, 0x6049, 0x605B, 0x604C, 0x6040, - 0x6042, 0x605F, 0x6024, 0x6044, 0x6058, 0x6066, 0x606E, 0x6242, - 0x6243, 0x62CF, 0x630D, 0x630B, 0x62F5, 0x630E, 0x6303, 0x62EB, - 0x62F9, 0x630F, 0x630C, 0x62F8, 0x62F6, 0x6300, 0x6313, 0x6314, - 0x62FA, 0x6315, 0x62FB, 0x62F0, 0x6541, 0x6543, 0x65AA, 0x65BF, - 0x6636, 0x6621, 0x6632, 0x6635, 0x661C, 0x6626, 0x6622, 0x6633, - 0x662B, 0x663A, 0x661D, 0x6634, 0x6639, 0x662E, 0x670F, 0x6710, - 0x67C1, 0x67F2, 0x67C8, 0x67BA, 0x67DC, 0x67BB, 0x67F8, 0x67D8, - 0x67C0, 0x67B7, 0x67C5, 0x67EB, 0x67E4, 0x67DF, 0x67B5, 0x67CD, - 0x67B3, 0x67F7, 0x67F6, 0x67EE, 0x67E3, 0x67C2, 0x67B9, 0x67CE, - 0x67E7, 0x67F0, 0x67B2, 0x67FC, 0x67C6, 0x67ED, 0x67CC, 0x67AE, -plane 59 -at 0x00 - 0x67E6, 0x67DB, 0x67FA, 0x67C9, 0x67CA, 0x67C3, 0x67EA, 0x67CB, - 0x6B28, 0x6B82, 0x6B84, 0x6BB6, 0x6BD6, 0x6BD8, 0x6BE0, 0x6C20, - 0x6C21, 0x6D28, 0x6D34, 0x6D2D, 0x6D1F, 0x6D3C, 0x6D3F, 0x6D12, - 0x6D0A, 0x6CDA, 0x6D33, 0x6D04, 0x6D19, 0x6D3A, 0x6D1A, 0x6D11, - 0x6D00, 0x6D1D, 0x6D42, 0x5D91, 0x5D8F, 0x5D90, 0x5D98, 0x5DA4, - 0x5D9B, 0x5DA3, 0x5D96, 0x5DE4, 0x5E5A, 0x5E5E, 0x5FB8, 0x6157, - 0x615C, 0x61A6, 0x6195, 0x6188, 0x61A3, 0x618F, 0x6164, 0x6159, - 0x6178, 0x6185, 0x6187, 0x619E, 0x6198, 0x619C, 0x622F, 0x6480, - 0x649B, 0x648E, 0x648D, 0x6494, 0x6D01, 0x6D18, 0x6D37, 0x6D03, - 0x6D0F, 0x6D40, 0x6D07, 0x6D20, 0x6D2C, 0x6D08, 0x6D22, 0x6D09, - 0x6D10, 0x70B7, 0x709F, 0x70BE, 0x70B1, 0x70B0, 0x70A1, 0x70B4, - 0x70B5, 0x70A9, 0x7241, 0x7249, 0x724A, 0x726C, 0x7270, 0x7273, - 0x726E, 0x72CA, 0x72E4, 0x72E8, 0x72EB, 0x72DF, 0x72EA, 0x72E6, - 0x72E3, 0x7385, 0x73CC, 0x73C2, 0x73C8, 0x73C5, 0x73B9, 0x73B6, - 0x73B5, 0x73B4, 0x73EB, 0x73BF, 0x73C7, 0x73BE, 0x73C3, 0x73C6, - 0x73B8, 0x73CB, 0x74EC, 0x74EE, 0x752E, 0x7547, 0x7548, 0x75A7, - 0x75AA, 0x7679, 0x76C4, 0x7708, 0x7703, 0x7704, 0x7705, 0x770A, - 0x76F7, 0x76FB, 0x76FA, 0x77E7, 0x77E8, 0x7806, 0x7811, 0x7812, - 0x7805, 0x7810, 0x780F, 0x780E, 0x7809, 0x7803, 0x7813, 0x794A, - 0x794C, 0x794B, 0x7945, 0x7944, 0x79D5, 0x79CD, 0x79CF, 0x79D6, - 0x79CE, 0x7A80, 0x7A7E, 0x7AD1, 0x7B00, 0x7B01, 0x7C7A, 0x7C78, - 0x7C79, 0x7C7F, 0x7C80, 0x7C81, 0x7D03, 0x7D08, 0x7D01, 0x7F58, - 0x7F91, 0x7F8D, 0x7FBE, 0x8007, 0x800E, 0x800F, 0x8014, 0x8037, - 0x80D8, 0x80C7, 0x80E0, 0x80D1, 0x80C8, 0x80C2, 0x80D0, 0x80C5, - 0x80E3, 0x80D9, 0x80DC, 0x80CA, 0x80D5, 0x80C9, 0x80CF, 0x80D7, - 0x80E6, 0x80CD, 0x81FF, 0x8221, 0x8294, 0x82D9, 0x82FE, 0x82F9, - 0x8307, 0x82E8, 0x8300, 0x82D5, 0x833A, 0x82EB, 0x82D6, 0x82F4, - 0x82EC, 0x82E1, 0x82F2, 0x82F5, 0x830C, 0x82FB, 0x82F6, 0x82F0, - 0x82EA, 0x64C6, 0x64A8, 0x6483, 0x64B9, 0x6486, 0x64B4, 0x64AF, - 0x6491, 0x64AA, 0x64A1, 0x64A7, 0x66B6, 0x66B3, 0x66BC, 0x66AC, - 0x66AD, 0x6A0E, 0x6A1C, 0x6A1A, 0x6A0B, 0x69EF, 0x6A0C, 0x69F0, - 0x6A22, 0x69D8, 0x6A12, 0x69FA, 0x6A2A, 0x6A10, 0x6A29, 0x69F9, -plane 60 -at 0x00 - 0x69EA, 0x6A2C, 0x82E4, 0x82E0, 0x82FA, 0x82F3, 0x82ED, 0x8677, - 0x8674, 0x867C, 0x8673, 0x8841, 0x884E, 0x8867, 0x886A, 0x8869, - 0x89D3, 0x8A04, 0x8A07, 0x8D72, 0x8FE3, 0x8FE1, 0x8FEE, 0x8FE0, - 0x90F1, 0x90BD, 0x90BF, 0x90D5, 0x90C5, 0x90BE, 0x90C7, 0x90CB, - 0x90C8, 0x91D4, 0x91D3, 0x9654, 0x964F, 0x9651, 0x9653, 0x964A, - 0x964E, 0x501E, 0x5005, 0x5007, 0x5013, 0x5022, 0x5030, 0x501B, - 0x4FF5, 0x4FF4, 0x5033, 0x5037, 0x502C, 0x4FF6, 0x4FF7, 0x5017, - 0x501C, 0x5020, 0x5027, 0x5035, 0x502F, 0x5031, 0x500E, 0x515A, - 0x5194, 0x5193, 0x51CA, 0x51C4, 0x51C5, 0x51C8, 0x51CE, 0x5261, - 0x525A, 0x5252, 0x525E, 0x525F, 0x5255, 0x5262, 0x52CD, 0x530E, - 0x539E, 0x5526, 0x54E2, 0x5517, 0x5512, 0x54E7, 0x54F3, 0x54E4, - 0x551A, 0x54FF, 0x5504, 0x5508, 0x54EB, 0x5511, 0x5505, 0x54F1, - 0x550A, 0x54FB, 0x54F7, 0x54F8, 0x54E0, 0x550E, 0x5503, 0x550B, - 0x5701, 0x5702, 0x57CC, 0x5832, 0x57D5, 0x57D2, 0x57BA, 0x57C6, - 0x57BD, 0x57BC, 0x57B8, 0x57B6, 0x57BF, 0x57C7, 0x57D0, 0x57B9, - 0x57C1, 0x590E, 0x594A, 0x5A19, 0x5A16, 0x5A2D, 0x5A2E, 0x5A15, - 0x5A0F, 0x5A17, 0x5A0A, 0x5A1E, 0x5A33, 0x5B6C, 0x5BA7, 0x5BAD, - 0x5BAC, 0x5C03, 0x5C56, 0x5C54, 0x5CEC, 0x5CFF, 0x5CEE, 0x5CF1, - 0x5CF7, 0x5D00, 0x5CF9, 0x5E29, 0x5E28, 0x5EA8, 0x5EAE, 0x5EAA, - 0x5EAC, 0x5F33, 0x5F30, 0x5F67, 0x605D, 0x605A, 0x6067, 0x6A24, - 0x69E9, 0x6B52, 0x6B4F, 0x6B53, 0x6F10, 0x6F65, 0x6F75, 0x6FD0, - 0x6F5C, 0x6F3D, 0x6F71, 0x6F91, 0x6F0B, 0x6F79, 0x6F81, 0x6F8F, - 0x6F59, 0x6F74, 0x71AE, 0x71A3, 0x71AD, 0x71AB, 0x71A6, 0x71A2, - 0x52F2, 0x7257, 0x7255, 0x7299, 0x734B, 0x747A, 0x748C, 0x7484, - 0x6041, 0x60A2, 0x6088, 0x6080, 0x6092, 0x6081, 0x609D, 0x6083, - 0x6095, 0x609B, 0x6097, 0x6087, 0x609C, 0x608E, 0x6219, 0x6246, - 0x62F2, 0x6310, 0x6356, 0x632C, 0x6344, 0x6345, 0x6336, 0x6343, - 0x63E4, 0x6339, 0x634B, 0x634A, 0x633C, 0x6329, 0x6341, 0x6334, - 0x6358, 0x6354, 0x6359, 0x632D, 0x6347, 0x6333, 0x635A, 0x6351, - 0x6338, 0x6357, 0x6340, 0x6348, 0x654A, 0x6546, 0x65C6, 0x65C3, - 0x65C4, 0x65C2, 0x664A, 0x665F, 0x6647, 0x6651, 0x6712, 0x6713, - 0x681F, 0x681A, 0x6849, 0x6832, 0x6833, 0x683B, 0x684B, 0x684F, -plane 61 -at 0x00 - 0x6816, 0x6831, 0x681C, 0x6835, 0x682B, 0x682D, 0x682F, 0x684E, - 0x6844, 0x6834, 0x681D, 0x6812, 0x6814, 0x6826, 0x6828, 0x682E, - 0x684D, 0x683A, 0x6825, 0x6820, 0x6B2C, 0x6B2F, 0x6B2D, 0x6B31, - 0x6B34, 0x6B6D, 0x8082, 0x6B88, 0x6BE6, 0x6BE4, 0x6BE8, 0x6BE3, - 0x6BE2, 0x6BE7, 0x6C25, 0x6D7A, 0x6D63, 0x6D64, 0x6D76, 0x6D0D, - 0x6D61, 0x6D92, 0x6D58, 0x6D62, 0x6D6D, 0x6D6F, 0x6D91, 0x6D8D, - 0x6DEF, 0x6D7F, 0x6D86, 0x6D5E, 0x6D67, 0x6D60, 0x6D97, 0x6D70, - 0x6D7C, 0x6D5F, 0x6D82, 0x6D98, 0x6D2F, 0x6D68, 0x6D8B, 0x6D7E, - 0x6D80, 0x6D84, 0x6D16, 0x6D83, 0x6D7B, 0x6D7D, 0x6D75, 0x6D90, - 0x70DC, 0x70D3, 0x70D1, 0x70DD, 0x70CB, 0x7F39, 0x70E2, 0x70D7, - 0x70D2, 0x70DE, 0x70E0, 0x70D4, 0x70CD, 0x70C5, 0x70C6, 0x70C7, - 0x70DA, 0x70CE, 0x70E1, 0x7242, 0x7278, 0x7482, 0x7493, 0x747B, - 0x7509, 0x778A, 0x7790, 0x78C6, 0x78D3, 0x78C0, 0x78D2, 0x78C7, - 0x78C2, 0x799F, 0x799D, 0x799E, 0x7A41, 0x7A38, 0x7A3A, 0x7A42, - 0x7A3E, 0x7AB0, 0x7BAE, 0x7BB3, 0x7BBF, 0x7BCD, 0x7BB2, 0x7CC4, - 0x7CCD, 0x7CC2, 0x7CC6, 0x7CC3, 0x7CC9, 0x7CC7, 0x7277, 0x7276, - 0x7300, 0x72FA, 0x72F4, 0x72FE, 0x72F6, 0x72F3, 0x72FB, 0x7301, - 0x73D3, 0x73D9, 0x73E5, 0x73D6, 0x73BC, 0x73E7, 0x73E3, 0x73E9, - 0x73DC, 0x73D2, 0x73DB, 0x73D4, 0x73DD, 0x73DA, 0x73D7, 0x73D8, - 0x73E8, 0x74DE, 0x74DF, 0x74F4, 0x74F5, 0x7521, 0x755B, 0x755F, - 0x75B0, 0x75C1, 0x75BB, 0x75C4, 0x75C0, 0x75BF, 0x75B6, 0x75BA, - 0x768A, 0x76C9, 0x771D, 0x771B, 0x7710, 0x7713, 0x7712, 0x7723, - 0x7711, 0x7715, 0x7719, 0x771A, 0x7722, 0x7727, 0x7823, 0x782C, - 0x7822, 0x7835, 0x782F, 0x7828, 0x782E, 0x782B, 0x7821, 0x7829, - 0x7833, 0x782A, 0x7831, 0x7954, 0x795B, 0x794F, 0x795C, 0x7953, - 0x7952, 0x7951, 0x79EB, 0x79EC, 0x79E0, 0x79EE, 0x79ED, 0x79EA, - 0x79DC, 0x79DE, 0x79DD, 0x7A86, 0x7A89, 0x7A85, 0x7A8B, 0x7A8C, - 0x7A8A, 0x7A87, 0x7AD8, 0x7B10, 0x7B04, 0x7B13, 0x7B05, 0x7B0F, - 0x7B08, 0x7B0A, 0x7B0E, 0x7B09, 0x7B12, 0x7C84, 0x7C91, 0x7C8A, - 0x7C8C, 0x7C88, 0x7C8D, 0x7C85, 0x7D1E, 0x7D1D, 0x7D11, 0x7D0E, - 0x7D18, 0x7D16, 0x7D13, 0x7D1F, 0x7D12, 0x7D0F, 0x7D0C, 0x7F5C, - 0x7F61, 0x7F5E, 0x7F60, 0x7F5D, 0x7F5B, 0x7F96, 0x7F92, 0x7FC3, -plane 62 -at 0x00 - 0x7FC2, 0x7FC0, 0x8016, 0x803E, 0x8039, 0x80FA, 0x80F2, 0x80F9, - 0x80F5, 0x8101, 0x80FB, 0x8100, 0x8201, 0x822F, 0x8225, 0x8333, - 0x832D, 0x8344, 0x8319, 0x8351, 0x8325, 0x8356, 0x833F, 0x8341, - 0x8326, 0x831C, 0x8322, 0x7DF8, 0x7DED, 0x7DE2, 0x7DDC, 0x7E02, - 0x7E01, 0x7DD6, 0x7DE4, 0x7DFE, 0x7E00, 0x7DFC, 0x7DFD, 0x7DF5, - 0x7DFF, 0x7DEB, 0x7DE5, 0x7F78, 0x7FAE, 0x7FE7, 0x8065, 0x806A, - 0x8066, 0x8068, 0x806B, 0x8194, 0x81A1, 0x8192, 0x8196, 0x8193, - 0x8501, 0x84F8, 0x84F5, 0x8504, 0x8342, 0x834E, 0x831B, 0x832A, - 0x8308, 0x833C, 0x834D, 0x8316, 0x8324, 0x8320, 0x8337, 0x832F, - 0x8329, 0x8347, 0x8345, 0x834C, 0x8353, 0x831E, 0x832C, 0x834B, - 0x8327, 0x8348, 0x8653, 0x8652, 0x86A2, 0x86A8, 0x8696, 0x868D, - 0x8691, 0x869E, 0x8687, 0x8697, 0x8686, 0x868B, 0x869A, 0x8685, - 0x86A5, 0x8699, 0x86A1, 0x86A7, 0x8695, 0x8698, 0x868E, 0x869D, - 0x8690, 0x8694, 0x8843, 0x8844, 0x886D, 0x8875, 0x8876, 0x8872, - 0x8880, 0x8871, 0x887F, 0x886F, 0x8883, 0x887E, 0x8874, 0x887C, - 0x8A12, 0x8C47, 0x8C57, 0x8C7B, 0x8CA4, 0x8CA3, 0x8D76, 0x8D78, - 0x8DB5, 0x8DB7, 0x8DB6, 0x8ED1, 0x8ED3, 0x8FFE, 0x8FF5, 0x9002, - 0x8FFF, 0x8FFB, 0x9004, 0x8FFC, 0x8FF6, 0x90D6, 0x90E0, 0x90D9, - 0x90DA, 0x90E3, 0x90DF, 0x90E5, 0x90D8, 0x90DB, 0x90D7, 0x90DC, - 0x90E4, 0x9150, 0x914E, 0x914F, 0x91D5, 0x91E2, 0x91DA, 0x965C, - 0x965F, 0x96BC, 0x98E3, 0x9ADF, 0x9B2F, 0x4E7F, 0x5070, 0x506A, - 0x5061, 0x505E, 0x5060, 0x5053, 0x504B, 0x505D, 0x5072, 0x5048, - 0x504D, 0x5041, 0x505B, 0x504A, 0x5062, 0x5015, 0x5045, 0x505F, - 0x5069, 0x506B, 0x5063, 0x5064, 0x5046, 0x5040, 0x506E, 0x5073, - 0x5057, 0x5051, 0x51D0, 0x526B, 0x526D, 0x526C, 0x526E, 0x52D6, - 0x52D3, 0x532D, 0x539C, 0x5575, 0x5576, 0x553C, 0x554D, 0x5550, - 0x5534, 0x552A, 0x5551, 0x5562, 0x5536, 0x5535, 0x5530, 0x5552, - 0x5545, 0x851B, 0x8503, 0x8533, 0x8534, 0x84ED, 0x8535, 0x8505, - 0x877D, 0x8771, 0x885C, 0x88E6, 0x890F, 0x891B, 0x89A9, 0x89A5, - 0x89EE, 0x8AB1, 0x8ACC, 0x8ACE, 0x8AB7, 0x8AB5, 0x8AE9, 0x8AB4, - 0x8AB3, 0x8AC1, 0x8AAF, 0x8ACA, 0x8AD0, 0x8C8E, 0x8CE9, 0x8CDB, - 0x8CEB, 0x8DA4, 0x550C, 0x5532, 0x5565, 0x554E, 0x5539, 0x5548, -plane 63 -at 0x00 - 0x552D, 0x553B, 0x5540, 0x554B, 0x570A, 0x5707, 0x57FB, 0x5814, - 0x57E2, 0x57F6, 0x57DC, 0x57F4, 0x5800, 0x57ED, 0x57FD, 0x5808, - 0x57F8, 0x580B, 0x57F3, 0x57CF, 0x5807, 0x57EE, 0x57E3, 0x57F2, - 0x57E5, 0x57EC, 0x57E1, 0x580E, 0x57FC, 0x5810, 0x57E7, 0x5801, - 0x580C, 0x57F1, 0x57E9, 0x57F0, 0x580D, 0x5804, 0x595C, 0x5A60, - 0x5A58, 0x5A55, 0x5A67, 0x5A5E, 0x5A38, 0x5A35, 0x5A6D, 0x5A50, - 0x5A5F, 0x5A65, 0x5A6C, 0x5A53, 0x5A64, 0x5A57, 0x5A43, 0x5A5D, - 0x5A52, 0x5A44, 0x5A5B, 0x5A48, 0x5A8E, 0x5A3E, 0x5A4D, 0x5A39, - 0x5A4C, 0x5A70, 0x5A69, 0x5A47, 0x5A51, 0x5A56, 0x5A42, 0x5A5C, - 0x5B72, 0x5B6E, 0x5BC1, 0x5BC0, 0x5C59, 0x5D1E, 0x5D0B, 0x5D1D, - 0x5D1A, 0x5D20, 0x5D0C, 0x5D28, 0x5D0D, 0x5D26, 0x5D25, 0x5D0F, - 0x5D30, 0x5D12, 0x5D23, 0x5D1F, 0x5D2E, 0x5E3E, 0x5E34, 0x5EB1, - 0x5EB4, 0x5EB9, 0x5EB2, 0x5EB3, 0x5F36, 0x5F38, 0x5F9B, 0x5F96, - 0x5F9F, 0x608A, 0x6090, 0x6086, 0x60BE, 0x60B0, 0x60BA, 0x60D3, - 0x60D4, 0x60CF, 0x60E4, 0x60D9, 0x60DD, 0x60C8, 0x60B1, 0x60DB, - 0x60B7, 0x60CA, 0x60BF, 0x60C3, 0x60CD, 0x60C0, 0x6332, 0x6365, - 0x638A, 0x6382, 0x637D, 0x63BD, 0x639E, 0x63AD, 0x639D, 0x6397, - 0x63AB, 0x638E, 0x636F, 0x6387, 0x6390, 0x636E, 0x63AF, 0x6375, - 0x639C, 0x636D, 0x63AE, 0x637C, 0x63A4, 0x633B, 0x639F, 0x8DA2, - 0x8D9D, 0x8E2A, 0x8E28, 0x8EB8, 0x8EB6, 0x8EB9, 0x8EB7, 0x8F22, - 0x8F2B, 0x8F27, 0x8F19, 0x8FA4, 0x8FB3, 0x9071, 0x906A, 0x9188, - 0x918C, 0x92BF, 0x92B8, 0x92BE, 0x92DC, 0x92E5, 0x92D4, 0x92D6, - 0x92DA, 0x92ED, 0x92F3, 0x92DB, 0x92E2, 0x92EB, 0x95AF, 0x95B2, - 0x6378, 0x6385, 0x6381, 0x6391, 0x638D, 0x6370, 0x6553, 0x65CD, - 0x6665, 0x6661, 0x665B, 0x6659, 0x665C, 0x6662, 0x6718, 0x6879, - 0x6887, 0x6890, 0x689C, 0x686D, 0x686E, 0x68AE, 0x68AB, 0x6956, - 0x686F, 0x68A3, 0x68AC, 0x68A9, 0x6875, 0x6874, 0x68B2, 0x688F, - 0x6877, 0x6892, 0x687C, 0x686B, 0x6872, 0x68AA, 0x6880, 0x6871, - 0x687E, 0x689B, 0x6896, 0x688B, 0x68A0, 0x6889, 0x68A4, 0x6878, - 0x687B, 0x6891, 0x688C, 0x688A, 0x687D, 0x6B36, 0x6B33, 0x6B37, - 0x6B38, 0x6B91, 0x6B8F, 0x6B8D, 0x6B8E, 0x6B8C, 0x6C2A, 0x6DC0, - 0x6DAB, 0x6DB4, 0x6DB3, 0x6E74, 0x6DAC, 0x6DE9, 0x6DE2, 0x6DB7, -plane 64 -at 0x00 - 0x6DF6, 0x6DD4, 0x6E00, 0x6DC8, 0x6DE0, 0x6DDF, 0x6DD6, 0x6DBE, - 0x6DE5, 0x6DDC, 0x6DDD, 0x6DDB, 0x6DF4, 0x6DCA, 0x6DBD, 0x6DED, - 0x6DF0, 0x6DBA, 0x6DD5, 0x6DC2, 0x6DCF, 0x6DC9, 0x6DD0, 0x6DF2, - 0x6DD3, 0x6DFD, 0x6DD7, 0x6DCD, 0x6DE3, 0x6DBB, 0x70FA, 0x710D, - 0x70F7, 0x7117, 0x70F4, 0x710C, 0x70F0, 0x7104, 0x70F3, 0x7110, - 0x70FC, 0x70FF, 0x7106, 0x7113, 0x7100, 0x70F8, 0x70F6, 0x710B, - 0x7102, 0x710E, 0x727E, 0x727B, 0x727C, 0x727F, 0x731D, 0x7317, - 0x7307, 0x7311, 0x7318, 0x730A, 0x7308, 0x72FF, 0x730F, 0x731E, - 0x7388, 0x73F6, 0x73F8, 0x73F5, 0x7404, 0x7401, 0x73FD, 0x7407, - 0x7400, 0x73FA, 0x73FC, 0x73FF, 0x740C, 0x740B, 0x73F4, 0x7408, - 0x7564, 0x7563, 0x75CE, 0x75D2, 0x75CF, 0x95B3, 0x96A3, 0x96A5, - 0x970A, 0x9787, 0x9789, 0x978C, 0x97EF, 0x982A, 0x9822, 0x981F, - 0x9919, 0x99CA, 0x99DA, 0x99DE, 0x99C8, 0x99E0, 0x9AB6, 0x9AB5, - 0x9AF4, 0x9B6B, 0x9B69, 0x9B72, 0x9B63, 0x9D0D, 0x9D01, 0x9D0C, - 0x9CF8, 0x9CFE, 0x9D02, 0x9E84, 0x9EAB, 0x9EAA, 0x75CB, 0x75CC, - 0x75D1, 0x75D0, 0x768F, 0x7689, 0x76D3, 0x7739, 0x772F, 0x772D, - 0x7731, 0x7732, 0x7734, 0x7733, 0x773D, 0x7725, 0x773B, 0x7735, - 0x7848, 0x7852, 0x7849, 0x784D, 0x784A, 0x784C, 0x7826, 0x7845, - 0x7850, 0x7964, 0x7967, 0x7969, 0x796A, 0x7963, 0x796B, 0x7961, - 0x79BB, 0x79FA, 0x79F8, 0x79F6, 0x79F7, 0x7A8F, 0x7A94, 0x7A90, - 0x7B35, 0x7B47, 0x7B34, 0x7B25, 0x7B30, 0x7B22, 0x7B24, 0x7B33, - 0x7B18, 0x7B2A, 0x7B1D, 0x7B31, 0x7B2B, 0x7B2D, 0x7B2F, 0x7B32, - 0x7B38, 0x7B1A, 0x7B23, 0x7C94, 0x7C98, 0x7C96, 0x7CA3, 0x7D35, - 0x7D3D, 0x7D38, 0x7D36, 0x7D3A, 0x7D45, 0x7D2C, 0x7D29, 0x7D41, - 0x7D47, 0x7D3E, 0x7D3F, 0x7D4A, 0x7D3B, 0x7D28, 0x7F63, 0x7F95, - 0x7F9C, 0x7F9D, 0x7F9B, 0x7FCA, 0x7FCB, 0x7FCD, 0x7FD0, 0x7FD1, - 0x7FC7, 0x7FCF, 0x7FC9, 0x801F, 0x801E, 0x801B, 0x8047, 0x8043, - 0x8048, 0x8118, 0x8125, 0x8119, 0x811B, 0x812D, 0x811F, 0x812C, - 0x811E, 0x8121, 0x8115, 0x8127, 0x811D, 0x8122, 0x8211, 0x8238, - 0x8233, 0x823A, 0x8234, 0x8232, 0x8274, 0x8390, 0x83A3, 0x83A8, - 0x838D, 0x837A, 0x8373, 0x83A4, 0x8374, 0x838F, 0x8381, 0x8395, - 0x8399, 0x8375, 0x8394, 0x83A9, 0x837D, 0x8383, 0x838C, 0x839D, -plane 65 -at 0x00 - 0x839B, 0x83AA, 0x838B, 0x837E, 0x83A5, 0x83AF, 0x8388, 0x8397, - 0x83B0, 0x837F, 0x83A6, 0x8387, 0x83AE, 0x8376, 0x839A, 0x8659, - 0x8656, 0x86BF, 0x86B7, 0x511D, 0x5116, 0x512B, 0x511E, 0x511B, - 0x5290, 0x5294, 0x5314, 0x5667, 0x567B, 0x565F, 0x5661, 0x58C3, - 0x58CA, 0x58C0, 0x58C4, 0x5901, 0x5B1F, 0x5B18, 0x5B11, 0x5B15, - 0x5B12, 0x5B1C, 0x5B22, 0x5B79, 0x5DA6, 0x5DB3, 0x5DAB, 0x5EEA, - 0x5F5B, 0x61B7, 0x61CE, 0x61B9, 0x86C2, 0x86C1, 0x86C5, 0x86BA, - 0x86B0, 0x86C8, 0x86B9, 0x86B3, 0x86B8, 0x86CC, 0x86B4, 0x86BB, - 0x86BC, 0x86C3, 0x86BD, 0x86BE, 0x8852, 0x8889, 0x8895, 0x88A8, - 0x88A2, 0x88AA, 0x889A, 0x8891, 0x88A1, 0x889F, 0x8898, 0x88A7, - 0x8899, 0x889B, 0x8897, 0x88A4, 0x88AC, 0x888C, 0x8893, 0x888E, - 0x8982, 0x89D6, 0x89D9, 0x89D5, 0x8A30, 0x8A27, 0x8A2C, 0x8A1E, - 0x8C39, 0x8C3B, 0x8C5C, 0x8C5D, 0x8C7D, 0x8CA5, 0x8D7D, 0x8D7B, - 0x8D79, 0x8DBC, 0x8DC2, 0x8DB9, 0x8DBF, 0x8DC1, 0x8ED8, 0x8EDE, - 0x8EDD, 0x8EDC, 0x8ED7, 0x8EE0, 0x8EE1, 0x9024, 0x900B, 0x9011, - 0x901C, 0x900C, 0x9021, 0x90EF, 0x90EA, 0x90F0, 0x90F4, 0x90F2, - 0x90F3, 0x90D4, 0x90EB, 0x90EC, 0x90E9, 0x9156, 0x9158, 0x915A, - 0x9153, 0x9155, 0x91EC, 0x91F4, 0x91F1, 0x91F3, 0x91F8, 0x91E4, - 0x91F9, 0x91EA, 0x91EB, 0x91F7, 0x91E8, 0x91EE, 0x957A, 0x9586, - 0x9588, 0x967C, 0x966D, 0x966B, 0x9671, 0x966F, 0x96BF, 0x976A, - 0x9804, 0x98E5, 0x9997, 0x509B, 0x5095, 0x5094, 0x509E, 0x508B, - 0x50A3, 0x5083, 0x508C, 0x508E, 0x509D, 0x5068, 0x509C, 0x5092, - 0x5082, 0x5087, 0x515F, 0x51D4, 0x5312, 0x5311, 0x53A4, 0x53A7, - 0x5591, 0x55A8, 0x55A5, 0x55AD, 0x5577, 0x5645, 0x55A2, 0x5593, - 0x5588, 0x558F, 0x55B5, 0x5581, 0x55A3, 0x5592, 0x55A4, 0x557D, - 0x558C, 0x55A6, 0x557F, 0x5595, 0x55A1, 0x558E, 0x570C, 0x5829, - 0x5837, 0x61BD, 0x61CF, 0x61C0, 0x6199, 0x6197, 0x61BB, 0x61D0, - 0x61C4, 0x6231, 0x64D3, 0x64C0, 0x64DC, 0x64D1, 0x64C8, 0x64D5, - 0x66C3, 0x66BF, 0x66C5, 0x66CD, 0x66C1, 0x6706, 0x6724, 0x6A63, - 0x6A42, 0x6A52, 0x6A43, 0x6A33, 0x6A6C, 0x6A57, 0x6A4C, 0x6A6E, - 0x6A37, 0x6A71, 0x5819, 0x581E, 0x5827, 0x5823, 0x5828, 0x57F5, - 0x5848, 0x5825, 0x581C, 0x581B, 0x5833, 0x583F, 0x5836, 0x582E, -plane 66 -at 0x00 - 0x5839, 0x5838, 0x582D, 0x582C, 0x583B, 0x5961, 0x5AAF, 0x5A94, - 0x5A9F, 0x5A7A, 0x5AA2, 0x5A9E, 0x5A78, 0x5AA6, 0x5A7C, 0x5AA5, - 0x5AAC, 0x5A95, 0x5AAE, 0x5A37, 0x5A84, 0x5A8A, 0x5A97, 0x5A83, - 0x5A8B, 0x5AA9, 0x5A7B, 0x5A7D, 0x5A8C, 0x5A9C, 0x5A8F, 0x5A93, - 0x5A9D, 0x5BEA, 0x5BCD, 0x5BCB, 0x5BD4, 0x5BD1, 0x5BCA, 0x5BCE, - 0x5C0C, 0x5C30, 0x5D37, 0x5D43, 0x5D6B, 0x5D41, 0x5D4B, 0x5D3F, - 0x5D35, 0x5D51, 0x5D4E, 0x5D55, 0x5D33, 0x5D3A, 0x5D52, 0x5D3D, - 0x5D31, 0x5D59, 0x5D42, 0x5D39, 0x5D49, 0x5D38, 0x5D3C, 0x5D32, - 0x5D36, 0x5D40, 0x5D45, 0x5E44, 0x5E41, 0x5F58, 0x5FA6, 0x5FA5, - 0x5FAB, 0x60C9, 0x60B9, 0x60CC, 0x60E2, 0x60CE, 0x60C4, 0x6114, - 0x60F2, 0x610A, 0x6116, 0x6105, 0x60F5, 0x6113, 0x60F8, 0x60FC, - 0x60FE, 0x60C1, 0x6103, 0x6118, 0x611D, 0x6110, 0x60FF, 0x6104, - 0x610B, 0x624A, 0x6394, 0x63B1, 0x63B0, 0x63CE, 0x63E5, 0x63E8, - 0x63EF, 0x63C3, 0x649D, 0x63F3, 0x63CA, 0x63E0, 0x63F6, 0x63D5, - 0x63F2, 0x63F5, 0x6461, 0x63DF, 0x63BE, 0x63DD, 0x63DC, 0x63C4, - 0x63D8, 0x63D3, 0x63C2, 0x63C7, 0x63CC, 0x63CB, 0x63C8, 0x63F0, - 0x63D7, 0x63D9, 0x6532, 0x6567, 0x656A, 0x6564, 0x655C, 0x6568, - 0x6565, 0x658C, 0x659D, 0x659E, 0x65AE, 0x65D0, 0x65D2, 0x6A4A, - 0x6A36, 0x6A53, 0x6A45, 0x6A70, 0x6A5C, 0x6B58, 0x6B57, 0x6FBB, - 0x6FBE, 0x6FB5, 0x6FD3, 0x6F9F, 0x6FB7, 0x6FF5, 0x71B7, 0x71BB, - 0x71D1, 0x71BA, 0x71B6, 0x71CC, 0x71D3, 0x749B, 0x7496, 0x74A2, - 0x749D, 0x750A, 0x750E, 0x7581, 0x762C, 0x7637, 0x7636, 0x763B, - 0x667C, 0x666C, 0x667B, 0x6680, 0x6671, 0x6679, 0x666A, 0x6672, - 0x6701, 0x690C, 0x68D3, 0x6904, 0x68DC, 0x692A, 0x68EC, 0x68EA, - 0x68F1, 0x690F, 0x68D6, 0x68F7, 0x68EB, 0x68E4, 0x68F6, 0x6913, - 0x6910, 0x68F3, 0x68E1, 0x6907, 0x68CC, 0x6908, 0x6970, 0x68B4, - 0x6911, 0x68EF, 0x68C6, 0x6914, 0x68F8, 0x68D0, 0x68FD, 0x68FC, - 0x68E8, 0x690B, 0x690A, 0x6917, 0x68CE, 0x68C8, 0x68DD, 0x68DE, - 0x68E6, 0x68F4, 0x68D1, 0x6906, 0x68D4, 0x68E9, 0x6915, 0x6925, - 0x68C7, 0x6B39, 0x6B3B, 0x6B3F, 0x6B3C, 0x6B94, 0x6B97, 0x6B99, - 0x6B95, 0x6BBD, 0x6BF0, 0x6BF2, 0x6BF3, 0x6C30, 0x6DFC, 0x6E46, - 0x6E47, 0x6E1F, 0x6E49, 0x6E88, 0x6E3C, 0x6E3D, 0x6E45, 0x6E62, -plane 67 -at 0x00 - 0x6E2B, 0x6E3F, 0x6E41, 0x6E5D, 0x6E73, 0x6E1C, 0x6E33, 0x6E4B, - 0x6E40, 0x6E51, 0x6E3B, 0x6E03, 0x6E2E, 0x6E5E, 0x6E68, 0x6E5C, - 0x6E61, 0x6E31, 0x6E28, 0x6E60, 0x6E71, 0x6E6B, 0x6E39, 0x6E22, - 0x6E30, 0x6E53, 0x6E65, 0x6E27, 0x6E78, 0x6E64, 0x6E77, 0x6E55, - 0x6E79, 0x6E52, 0x6E66, 0x6E35, 0x6E36, 0x6E5A, 0x7120, 0x711E, - 0x712F, 0x70FB, 0x712E, 0x7131, 0x7123, 0x7125, 0x7122, 0x7132, - 0x711F, 0x7128, 0x713A, 0x711B, 0x724B, 0x725A, 0x7288, 0x7289, - 0x7286, 0x7285, 0x728B, 0x7312, 0x730B, 0x7330, 0x7322, 0x7331, - 0x7333, 0x7327, 0x7332, 0x732D, 0x7326, 0x7323, 0x7335, 0x730C, - 0x742E, 0x742C, 0x7430, 0x742B, 0x7416, 0x76A1, 0x7798, 0x7796, - 0x78D6, 0x78EB, 0x78DC, 0x79A5, 0x79A9, 0x9834, 0x7A53, 0x7A45, - 0x7A4F, 0x7ABD, 0x7ABB, 0x7AF1, 0x7BEC, 0x7BED, 0x7CD3, 0x7CE1, - 0x7E19, 0x7E27, 0x7E26, 0x806E, 0x81AF, 0x81AD, 0x81AA, 0x8218, - 0x856F, 0x854C, 0x8542, 0x855C, 0x8570, 0x855F, 0x741A, 0x7421, - 0x742D, 0x7431, 0x7424, 0x7423, 0x741D, 0x7429, 0x7420, 0x7432, - 0x74FB, 0x752F, 0x756F, 0x756C, 0x75E7, 0x75DA, 0x75E1, 0x75E6, - 0x75DD, 0x75DF, 0x75E4, 0x75D7, 0x7695, 0x7692, 0x76DA, 0x7746, - 0x7747, 0x7744, 0x774D, 0x7745, 0x774A, 0x774E, 0x774B, 0x774C, - 0x77DE, 0x77EC, 0x7860, 0x7864, 0x7865, 0x785C, 0x786D, 0x7871, - 0x786A, 0x786E, 0x7870, 0x7869, 0x7868, 0x785E, 0x7862, 0x7974, - 0x7973, 0x7972, 0x7970, 0x7A02, 0x7A0A, 0x7A03, 0x7A0C, 0x7A04, - 0x7A99, 0x7AE6, 0x7AE4, 0x7B4A, 0x7B3B, 0x7B44, 0x7B48, 0x7B4C, - 0x7B4E, 0x7B40, 0x7B58, 0x7B45, 0x7CA2, 0x7C9E, 0x7CA8, 0x7CA1, - 0x7D58, 0x7D6F, 0x7D63, 0x7D53, 0x7D56, 0x7D67, 0x7D6A, 0x7D4F, - 0x7D6D, 0x7D5C, 0x7D6B, 0x7D52, 0x7D54, 0x7D69, 0x7D51, 0x7D5F, - 0x7D4E, 0x7F3E, 0x7F3F, 0x7F65, 0x7F66, 0x7FA2, 0x7FA0, 0x7FA1, - 0x7FD7, 0x8051, 0x804F, 0x8050, 0x80FE, 0x80D4, 0x8143, 0x814A, - 0x8152, 0x814F, 0x8147, 0x813D, 0x814D, 0x813A, 0x81E6, 0x81EE, - 0x81F7, 0x81F8, 0x81F9, 0x8204, 0x823C, 0x823D, 0x823F, 0x8275, - 0x833B, 0x83CF, 0x83F9, 0x8423, 0x83C0, 0x83E8, 0x8412, 0x83E7, - 0x83E4, 0x83FC, 0x83F6, 0x8410, 0x83C6, 0x83C8, 0x83EB, 0x83E3, - 0x83BF, 0x8401, 0x83DD, 0x83E5, 0x83D8, 0x83FF, 0x83E1, 0x83CB, -plane 68 -at 0x00 - 0x83CE, 0x83D6, 0x83F5, 0x83C9, 0x8409, 0x840F, 0x83DE, 0x8411, - 0x8406, 0x83C2, 0x83F3, 0x855A, 0x854B, 0x853F, 0x878A, 0x878B, - 0x87A1, 0x878E, 0x8799, 0x885E, 0x885F, 0x8924, 0x89A7, 0x8AEA, - 0x8AFD, 0x8AF9, 0x8AE3, 0x8AE5, 0x8AEC, 0x8CF2, 0x8CEF, 0x8DA6, - 0x8E3B, 0x8E43, 0x8E32, 0x8F31, 0x8F30, 0x8F2D, 0x8F3C, 0x8FA7, - 0x8FA5, 0x9137, 0x9195, 0x918E, 0x83D5, 0x83FA, 0x83C7, 0x83D1, - 0x83EA, 0x8413, 0x83C3, 0x83EC, 0x83EE, 0x83C4, 0x83FB, 0x83D7, - 0x83E2, 0x841B, 0x83DB, 0x83FE, 0x86D8, 0x86E2, 0x86E6, 0x86D3, - 0x86E3, 0x86DA, 0x86EA, 0x86DD, 0x86EB, 0x86DC, 0x86EC, 0x86E9, - 0x86D7, 0x86E8, 0x86D1, 0x8848, 0x8856, 0x8855, 0x88BA, 0x88D7, - 0x88B9, 0x88B8, 0x88C0, 0x88BE, 0x88B6, 0x88BC, 0x88B7, 0x88BD, - 0x88B2, 0x8901, 0x88C9, 0x8995, 0x8998, 0x8997, 0x89DD, 0x89DA, - 0x89DB, 0x8A4E, 0x8A4D, 0x8A39, 0x8A59, 0x8A40, 0x8A57, 0x8A58, - 0x8A44, 0x8A45, 0x8A52, 0x8A48, 0x8A51, 0x8A4A, 0x8A4C, 0x8A4F, - 0x8C5F, 0x8C81, 0x8C80, 0x8CBA, 0x8CBE, 0x8CB0, 0x8CB9, 0x8CB5, - 0x8D84, 0x8D80, 0x8D89, 0x8DD8, 0x8DD3, 0x8DCD, 0x8DC7, 0x8DD6, - 0x8DDC, 0x8DCF, 0x8DD5, 0x8DD9, 0x8DC8, 0x8DD7, 0x8DC5, 0x8EEF, - 0x8EF7, 0x8EFA, 0x8EF9, 0x8EE6, 0x8EEE, 0x8EE5, 0x8EF5, 0x8EE7, - 0x8EE8, 0x8EF6, 0x8EEB, 0x8EF1, 0x8EEC, 0x8EF4, 0x8EE9, 0x902D, - 0x9034, 0x902F, 0x9106, 0x912C, 0x9104, 0x90FF, 0x90FC, 0x9108, - 0x90F9, 0x90FB, 0x9101, 0x9100, 0x9107, 0x9105, 0x9103, 0x9161, - 0x9164, 0x915F, 0x9162, 0x9160, 0x9201, 0x920A, 0x9225, 0x9203, - 0x921A, 0x9226, 0x920F, 0x920C, 0x9200, 0x9212, 0x91FF, 0x91FD, - 0x9206, 0x9204, 0x9227, 0x9202, 0x921C, 0x9224, 0x9219, 0x9217, - 0x9205, 0x9216, 0x957B, 0x958D, 0x958C, 0x9590, 0x9687, 0x967E, - 0x9688, 0x9196, 0x9345, 0x930A, 0x92FD, 0x9317, 0x931C, 0x9307, - 0x9331, 0x9332, 0x932C, 0x9330, 0x9303, 0x9305, 0x95C2, 0x95B8, - 0x95C1, 0x96AB, 0x96B7, 0x9715, 0x9714, 0x970C, 0x9717, 0x9793, - 0x97D2, 0x9836, 0x9831, 0x9833, 0x983C, 0x982E, 0x983A, 0x983D, - 0x98B5, 0x9922, 0x9689, 0x9683, 0x9680, 0x96C2, 0x96C8, 0x96C3, - 0x96F1, 0x96F0, 0x976C, 0x9770, 0x976E, 0x9807, 0x98A9, 0x98EB, - 0x9CE6, 0x9EF9, 0x4E83, 0x4E84, 0x4EB6, 0x50BD, 0x50BF, 0x50C6, -plane 69 -at 0x00 - 0x50AE, 0x50C4, 0x50CA, 0x50B4, 0x50C8, 0x50C2, 0x50B0, 0x50C1, - 0x50BA, 0x50B1, 0x50CB, 0x50C9, 0x50B6, 0x50B8, 0x51D7, 0x527A, - 0x5278, 0x527B, 0x527C, 0x55C3, 0x55DB, 0x55CC, 0x55D0, 0x55CB, - 0x55CA, 0x55DD, 0x55C0, 0x55D4, 0x55C4, 0x55E9, 0x55BF, 0x55D2, - 0x558D, 0x55CF, 0x55D5, 0x55E2, 0x55D6, 0x55C8, 0x55F2, 0x55CD, - 0x55D9, 0x55C2, 0x5714, 0x5853, 0x5868, 0x5864, 0x584F, 0x584D, - 0x5849, 0x586F, 0x5855, 0x584E, 0x585D, 0x5859, 0x5865, 0x585B, - 0x583D, 0x5863, 0x5871, 0x58FC, 0x5AC7, 0x5AC4, 0x5ACB, 0x5ABA, - 0x5AB8, 0x5AB1, 0x5AB5, 0x5AB0, 0x5ABF, 0x5AC8, 0x5ABB, 0x5AC6, - 0x5AB7, 0x5AC0, 0x5ACA, 0x5AB4, 0x5AB6, 0x5ACD, 0x5AB9, 0x5A90, - 0x5BD6, 0x5BD8, 0x5BD9, 0x5C1F, 0x5C33, 0x5D71, 0x5D63, 0x5D4A, - 0x5D65, 0x5D72, 0x5D6C, 0x5D5E, 0x5D68, 0x5D67, 0x5D62, 0x5DF0, - 0x5E4F, 0x5E4E, 0x5E4A, 0x5E4D, 0x5E4B, 0x5EC5, 0x5ECC, 0x5EC6, - 0x5ECB, 0x5EC7, 0x5F40, 0x5FAF, 0x5FAD, 0x60F7, 0x6149, 0x614A, - 0x612B, 0x6145, 0x6136, 0x6132, 0x612E, 0x6146, 0x612F, 0x614F, - 0x6129, 0x6140, 0x6220, 0x9168, 0x6223, 0x6225, 0x6224, 0x63C5, - 0x63F1, 0x63EB, 0x6410, 0x6412, 0x6409, 0x6420, 0x6424, 0x9923, - 0x9920, 0x991C, 0x991D, 0x99A0, 0x99EF, 0x99E8, 0x99EB, 0x99E1, - 0x99E6, 0x9AF8, 0x9AF5, 0x9B83, 0x9B94, 0x9B84, 0x9B8B, 0x9B8F, - 0x9B8C, 0x9B89, 0x9B8E, 0x9D24, 0x9D0F, 0x9D13, 0x9D0A, 0x9D2A, - 0x9D1A, 0x9D27, 0x9D16, 0x9D21, 0x9E85, 0x9EAC, 0x9EC6, 0x9EC5, - 0x6433, 0x6443, 0x641F, 0x6415, 0x6418, 0x6439, 0x6437, 0x6422, - 0x6423, 0x640C, 0x6426, 0x6430, 0x6428, 0x6441, 0x6435, 0x642F, - 0x640A, 0x641A, 0x6440, 0x6425, 0x6427, 0x640B, 0x63E7, 0x641B, - 0x642E, 0x6421, 0x640E, 0x656F, 0x6592, 0x65D3, 0x6686, 0x668C, - 0x6695, 0x6690, 0x668B, 0x668A, 0x6699, 0x6694, 0x6678, 0x6720, - 0x6966, 0x695F, 0x6938, 0x694E, 0x6962, 0x6971, 0x693F, 0x6945, - 0x696A, 0x6939, 0x6942, 0x6957, 0x6959, 0x697A, 0x6948, 0x6949, - 0x6935, 0x696C, 0x6933, 0x693D, 0x6965, 0x68F0, 0x6978, 0x6934, - 0x6969, 0x6940, 0x696F, 0x6944, 0x6976, 0x6958, 0x6941, 0x6974, - 0x694C, 0x693B, 0x694B, 0x6937, 0x695C, 0x694F, 0x6951, 0x6932, - 0x6952, 0x692F, 0x697B, 0x693C, 0x6B46, 0x6B45, 0x6B43, 0x6B42, -plane 70 -at 0x00 - 0x6B48, 0x6B41, 0x6B9B, 0x55C0, 0x6BFB, 0x6BFC, 0x6BF9, 0x6BF7, - 0x6BF8, 0x6E9B, 0x6ED6, 0x6EC8, 0x6E8F, 0x6EC0, 0x6E9F, 0x6E93, - 0x6E94, 0x6EA0, 0x6EB1, 0x6EB9, 0x6EC6, 0x6ED2, 0x6EBD, 0x6EC1, - 0x6E9E, 0x6EC9, 0x6EB7, 0x6EB0, 0x6ECD, 0x6EA6, 0x6ECF, 0x6EB2, - 0x6EBE, 0x6EC3, 0x6EDC, 0x6ED8, 0x6E99, 0x6E92, 0x6E8E, 0x6E8D, - 0x6EA4, 0x6EA1, 0x6EBF, 0x6EB3, 0x6ED0, 0x6ECA, 0x6E97, 0x6EAE, - 0x6EA3, 0x7147, 0x7154, 0x7152, 0x7163, 0x7160, 0x7141, 0x715D, - 0x7162, 0x7172, 0x7178, 0x716A, 0x7161, 0x7142, 0x7158, 0x7143, - 0x714B, 0x7170, 0x715F, 0x7150, 0x7153, 0x9ED7, 0x9F53, 0x5128, - 0x5127, 0x51DF, 0x5335, 0x53B3, 0x568A, 0x567D, 0x5689, 0x58CD, - 0x58D0, 0x5B2B, 0x5B33, 0x5B29, 0x5B35, 0x5B31, 0x5B37, 0x5C36, - 0x5DBE, 0x5DB9, 0x5DBB, 0x61E2, 0x61DB, 0x61DD, 0x61DC, 0x61DA, - 0x61D9, 0x64DF, 0x64E1, 0x64EE, 0x65B5, 0x66D4, 0x7144, 0x714D, - 0x715A, 0x724F, 0x728D, 0x728C, 0x7291, 0x7290, 0x728E, 0x733C, - 0x7342, 0x733B, 0x733A, 0x7340, 0x734A, 0x7349, 0x7444, 0x744A, - 0x744B, 0x7452, 0x7451, 0x7457, 0x7440, 0x744F, 0x7450, 0x744E, - 0x7442, 0x7446, 0x744D, 0x7454, 0x74E1, 0x74FF, 0x74FE, 0x74FD, - 0x751D, 0x7579, 0x7577, 0x6983, 0x75EF, 0x760F, 0x7603, 0x75F7, - 0x75FE, 0x75FC, 0x75F9, 0x75F8, 0x7610, 0x75FB, 0x75F6, 0x75ED, - 0x75F5, 0x75FD, 0x7699, 0x76B5, 0x76DD, 0x7755, 0x775F, 0x7760, - 0x7752, 0x7756, 0x775A, 0x7769, 0x7767, 0x7754, 0x7759, 0x776D, - 0x77E0, 0x7887, 0x789A, 0x7894, 0x788F, 0x7884, 0x7895, 0x7885, - 0x7886, 0x78A1, 0x7883, 0x7879, 0x7899, 0x7880, 0x7896, 0x787B, - 0x797C, 0x7982, 0x797D, 0x7979, 0x7A11, 0x7A18, 0x7A19, 0x7A12, - 0x7A17, 0x7A15, 0x7A22, 0x7A13, 0x7A1B, 0x7A10, 0x7AA3, 0x7AA2, - 0x7A9E, 0x7AEB, 0x7B66, 0x7B64, 0x7B6D, 0x7B74, 0x7B69, 0x7B72, - 0x7B65, 0x7B73, 0x7B71, 0x7B70, 0x7B61, 0x7B78, 0x7B76, 0x7B63, - 0x7CB2, 0x7CB4, 0x7CAF, 0x7D88, 0x7D86, 0x7D80, 0x7D8D, 0x7D7F, - 0x7D85, 0x7D7A, 0x7D8E, 0x7D7B, 0x7D83, 0x7D7C, 0x7D8C, 0x7D94, - 0x7D84, 0x7D7D, 0x7D92, 0x7F6D, 0x7F6B, 0x7F67, 0x7F68, 0x7F6C, - 0x7FA6, 0x7FA5, 0x7FA7, 0x7FDB, 0x7FDC, 0x8021, 0x8164, 0x8160, - 0x8177, 0x815C, 0x8169, 0x815B, 0x8162, 0x8172, 0x6721, 0x815E, -plane 71 -at 0x00 - 0x8176, 0x8167, 0x816F, 0x66D5, 0x66D0, 0x66D1, 0x66CE, 0x66D7, - 0x6A7D, 0x6A8A, 0x6AA7, 0x6A99, 0x6A82, 0x6A88, 0x6A86, 0x6A98, - 0x6A9D, 0x6A8F, 0x6AAA, 0x6B5D, 0x6C0A, 0x6FD7, 0x6FD6, 0x6FE5, - 0x6FD9, 0x6FDA, 0x6FEA, 0x6FF6, 0x71E3, 0x71E9, 0x71EB, 0x71EF, - 0x71F3, 0x71EA, 0x7371, 0x74AE, 0x8144, 0x8161, 0x821D, 0x8249, - 0x8244, 0x8240, 0x8242, 0x8245, 0x84F1, 0x843F, 0x8456, 0x8476, - 0x8479, 0x848F, 0x848D, 0x8465, 0x8451, 0x8440, 0x8486, 0x8467, - 0x8430, 0x844D, 0x847D, 0x845A, 0x8459, 0x8474, 0x8473, 0x845D, - 0x8507, 0x845E, 0x8437, 0x843A, 0x8434, 0x847A, 0x8443, 0x8478, - 0x8432, 0x8445, 0x8429, 0x83D9, 0x844B, 0x842F, 0x8442, 0x842D, - 0x845F, 0x8470, 0x8439, 0x844E, 0x844C, 0x8452, 0x846F, 0x84C5, - 0x848E, 0x843B, 0x8447, 0x8436, 0x8433, 0x8468, 0x847E, 0x8444, - 0x842B, 0x8460, 0x8454, 0x846E, 0x8450, 0x870B, 0x8704, 0x86F7, - 0x870C, 0x86FA, 0x86D6, 0x86F5, 0x874D, 0x86F8, 0x870E, 0x8709, - 0x8701, 0x86F6, 0x870D, 0x8705, 0x88D6, 0x88CB, 0x88CD, 0x88CE, - 0x88DE, 0x88DB, 0x88DA, 0x88CC, 0x88D0, 0x8985, 0x899B, 0x89DF, - 0x89E5, 0x89E4, 0x89E1, 0x89E0, 0x89E2, 0x89DC, 0x89E6, 0x8A76, - 0x8A86, 0x8A7F, 0x8A61, 0x8A3F, 0x8A77, 0x8A82, 0x8A84, 0x8A75, - 0x8A83, 0x8A81, 0x8A74, 0x8A7A, 0x8C3C, 0x8C4B, 0x8C4A, 0x8C65, - 0x8C64, 0x8C66, 0x8C86, 0x8C84, 0x8C85, 0x8CCC, 0x8D68, 0x8D69, - 0x8D91, 0x8D8C, 0x8D8E, 0x8D8F, 0x8D8D, 0x8D93, 0x8D94, 0x8D90, - 0x8D92, 0x8DF0, 0x8DE0, 0x8DEC, 0x8DF1, 0x8DEE, 0x8DD0, 0x8DE9, - 0x8DE3, 0x8DE2, 0x8DE7, 0x8DF2, 0x8DEB, 0x8DF4, 0x8F06, 0x8EFF, - 0x8F01, 0x8F00, 0x8F05, 0x8F07, 0x8F08, 0x8F02, 0x8F0B, 0x9052, - 0x903F, 0x74B3, 0x74AC, 0x7583, 0x7645, 0x764E, 0x7644, 0x76A3, - 0x76A5, 0x77A6, 0x77A4, 0x77A9, 0x77AF, 0x78F0, 0x78F8, 0x78F1, - 0x7A49, 0x7AC2, 0x7AF2, 0x7AF3, 0x7BFA, 0x7BF6, 0x7BFC, 0x7C18, - 0x7C08, 0x7C12, 0x7CDB, 0x7CDA, 0x7E2C, 0x7E4D, 0x7F46, 0x7FF6, - 0x802B, 0x8074, 0x9044, 0x9049, 0x903D, 0x9110, 0x910D, 0x910F, - 0x9111, 0x9116, 0x9114, 0x910B, 0x910E, 0x916E, 0x916F, 0x9248, - 0x9252, 0x9230, 0x923A, 0x9266, 0x9233, 0x9265, 0x925E, 0x9283, - 0x922E, 0x924A, 0x9246, 0x926D, 0x926C, 0x924F, 0x9260, 0x9267, -plane 72 -at 0x00 - 0x926F, 0x9236, 0x9261, 0x9270, 0x9231, 0x9254, 0x9263, 0x9250, - 0x9272, 0x924E, 0x9253, 0x924C, 0x9256, 0x9232, 0x959F, 0x959C, - 0x959E, 0x959B, 0x9692, 0x9693, 0x9691, 0x9697, 0x96CE, 0x96FA, - 0x96FD, 0x96F8, 0x96F5, 0x9773, 0x9777, 0x9778, 0x9772, 0x980F, - 0x980D, 0x980E, 0x98AC, 0x98F6, 0x98F9, 0x99AF, 0x99B2, 0x99B0, - 0x99B5, 0x9AAD, 0x9AAB, 0x9B5B, 0x9CEA, 0x9CED, 0x9CE7, 0x9E80, - 0x9EFD, 0x50E6, 0x50D4, 0x50D7, 0x50E8, 0x50F3, 0x50DB, 0x50EA, - 0x50DD, 0x50E4, 0x50D3, 0x50EC, 0x50F0, 0x50EF, 0x50E3, 0x50E0, - 0x51D8, 0x5280, 0x5281, 0x52E9, 0x52EB, 0x5330, 0x53AC, 0x5627, - 0x5615, 0x560C, 0x5612, 0x55FC, 0x560F, 0x561C, 0x5601, 0x5613, - 0x5602, 0x55FA, 0x561D, 0x5604, 0x55FF, 0x55F9, 0x5889, 0x587C, - 0x5890, 0x5898, 0x5886, 0x5881, 0x587F, 0x5874, 0x588B, 0x587A, - 0x5887, 0x5891, 0x588E, 0x5876, 0x5882, 0x5888, 0x587B, 0x5894, - 0x588F, 0x58FE, 0x596B, 0x5ADC, 0x5AEE, 0x5AE5, 0x5AD5, 0x5AEA, - 0x5ADA, 0x5AED, 0x5AEB, 0x5AF3, 0x5AE2, 0x5AE0, 0x5ADB, 0x5AEC, - 0x5ADE, 0x5ADD, 0x5AD9, 0x5AE8, 0x5ADF, 0x5B77, 0x5BE0, 0x81B8, - 0x81C8, 0x8592, 0x8593, 0x857F, 0x85AB, 0x8597, 0x85AC, 0x87CE, - 0x87CD, 0x87C1, 0x87B1, 0x87C7, 0x8940, 0x893F, 0x8939, 0x8943, - 0x89AB, 0x8B1F, 0x8B09, 0x8B0C, 0x8C40, 0x8C96, 0x8CF6, 0x8CF7, - 0x8E46, 0x8E4F, 0x8F3D, 0x8F41, 0x9366, 0x9378, 0x935D, 0x9369, - 0x5BE3, 0x5C63, 0x5D82, 0x5D80, 0x5D7D, 0x5D86, 0x5D7A, 0x5D81, - 0x5D77, 0x5D8A, 0x5D89, 0x5D88, 0x5D7E, 0x5D7C, 0x5D8D, 0x5D79, - 0x5D7F, 0x5E58, 0x5E59, 0x5E53, 0x5ED8, 0x5ED1, 0x5ED7, 0x5ECE, - 0x5EDC, 0x5ED5, 0x5ED9, 0x5ED2, 0x5ED4, 0x5F44, 0x5F43, 0x5F6F, - 0x5FB6, 0x612C, 0x6128, 0x6141, 0x615E, 0x6171, 0x6173, 0x6152, - 0x6153, 0x6172, 0x616C, 0x6180, 0x6174, 0x6154, 0x617A, 0x615B, - 0x6165, 0x613B, 0x616A, 0x6161, 0x6156, 0x6229, 0x6227, 0x622B, - 0x642B, 0x644D, 0x645B, 0x645D, 0x6474, 0x6476, 0x6472, 0x6473, - 0x647D, 0x6475, 0x6466, 0x64A6, 0x644E, 0x6482, 0x645E, 0x645C, - 0x644B, 0x6453, 0x6460, 0x6450, 0x647F, 0x643F, 0x646C, 0x646B, - 0x6459, 0x6465, 0x6477, 0x6573, 0x65A0, 0x66A1, 0x66A0, 0x669F, - 0x6705, 0x6704, 0x6722, 0x69B1, 0x69B6, 0x69C9, 0x69A0, 0x69CE, -plane 73 -at 0x00 - 0x6996, 0x69B0, 0x69AC, 0x69BC, 0x6991, 0x6999, 0x698E, 0x69A7, - 0x698D, 0x69A9, 0x69BE, 0x69AF, 0x69BF, 0x69C4, 0x69BD, 0x69A4, - 0x69D4, 0x69B9, 0x69CA, 0x699A, 0x69CF, 0x69B3, 0x6993, 0x69AA, - 0x69A1, 0x699E, 0x69D9, 0x6997, 0x6990, 0x69C2, 0x69B5, 0x69A5, - 0x69C6, 0x6B4A, 0x6B4D, 0x6B4B, 0x6B9E, 0x6B9F, 0x6BA0, 0x6BC3, - 0x6BC4, 0x6BFE, 0x6ECE, 0x6EF5, 0x6EF1, 0x6F03, 0x6F25, 0x6EF8, - 0x6F37, 0x6EFB, 0x6F2E, 0x6F09, 0x6F4E, 0x6F19, 0x6F1A, 0x6F27, - 0x6F18, 0x6F3B, 0x6F12, 0x6EED, 0x6F0A, 0x9374, 0x937D, 0x936E, - 0x9372, 0x9373, 0x9362, 0x9348, 0x9353, 0x935F, 0x9368, 0x937F, - 0x936B, 0x95C4, 0x96AF, 0x96AD, 0x96B2, 0x971A, 0x971B, 0x979B, - 0x979F, 0x9840, 0x9847, 0x98B7, 0x99A2, 0x9A00, 0x99F3, 0x99F5, - 0x9ABD, 0x9B00, 0x9B02, 0x9B34, 0x9B49, 0x9B9F, 0x6F36, 0x6F73, - 0x6EF9, 0x6EEE, 0x6F2D, 0x6F40, 0x6F30, 0x6F3C, 0x6F35, 0x6EEB, - 0x6F07, 0x6F0E, 0x6F43, 0x6F05, 0x6EFD, 0x6EF6, 0x6F39, 0x6F1C, - 0x6EFC, 0x6F3A, 0x6F1F, 0x6F0D, 0x6F1E, 0x6F08, 0x6F21, 0x7187, - 0x7190, 0x7189, 0x7180, 0x7185, 0x7182, 0x718F, 0x717B, 0x7186, - 0x7181, 0x7197, 0x7244, 0x7253, 0x7297, 0x7295, 0x7293, 0x7343, - 0x734D, 0x7351, 0x734C, 0x7462, 0x7473, 0x7471, 0x7475, 0x7472, - 0x7467, 0x746E, 0x7500, 0x7502, 0x7503, 0x757D, 0x7590, 0x7616, - 0x7608, 0x760C, 0x7615, 0x7611, 0x760A, 0x7614, 0x76B8, 0x7781, - 0x777C, 0x7785, 0x7782, 0x776E, 0x7780, 0x776F, 0x777E, 0x7783, - 0x78B2, 0x78AA, 0x78B4, 0x78AD, 0x78A8, 0x787E, 0x78AB, 0x789E, - 0x78A5, 0x78A0, 0x78AC, 0x78A2, 0x78A4, 0x7998, 0x798A, 0x798B, - 0x7996, 0x7995, 0x7994, 0x7993, 0x7997, 0x7988, 0x7992, 0x7990, - 0x7A2B, 0x7A4A, 0x7A30, 0x7A2F, 0x7A28, 0x7A26, 0x7AA8, 0x7AAB, - 0x7AAC, 0x7AEE, 0x7B88, 0x7B9C, 0x7B8A, 0x7B91, 0x7B90, 0x7B96, - 0x7B8D, 0x7B8C, 0x7B9B, 0x7B8E, 0x7B85, 0x7B98, 0x5284, 0x7B99, - 0x7BA4, 0x7B82, 0x7CBB, 0x7CBF, 0x7CBC, 0x7CBA, 0x7DA7, 0x7DB7, - 0x7DC2, 0x7DA3, 0x7DAA, 0x7DC1, 0x7DC0, 0x7DC5, 0x7D9D, 0x7DCE, - 0x7DC4, 0x7DC6, 0x7DCB, 0x7DCC, 0x7DAF, 0x7DB9, 0x7D96, 0x7DBC, - 0x7D9F, 0x7DA6, 0x7DAE, 0x7DA9, 0x7DA1, 0x7DC9, 0x7F73, 0x7FE2, - 0x7FE3, 0x7FE5, 0x7FDE, 0x9BA3, 0x9BCD, 0x9B99, 0x9B9D, 0x9D39, -plane 74 -at 0x00 - 0x9D44, 0x9D35, 0x9EAF, 0x512F, 0x9F8E, 0x569F, 0x569B, 0x569E, - 0x5696, 0x5694, 0x56A0, 0x5B3B, 0x5B3A, 0x5DC1, 0x5F4D, 0x5F5D, - 0x61F3, 0x64F6, 0x64E5, 0x64EA, 0x64E7, 0x6505, 0x64F9, 0x6AAB, - 0x6AED, 0x6AB2, 0x6AB0, 0x6AB5, 0x8024, 0x805D, 0x805C, 0x8189, - 0x8186, 0x8183, 0x8187, 0x818D, 0x818C, 0x818B, 0x8215, 0x8497, - 0x84A4, 0x84A1, 0x849F, 0x84BA, 0x84CE, 0x84C2, 0x84AC, 0x84AE, - 0x84AB, 0x84B9, 0x84B4, 0x84C1, 0x84CD, 0x84AA, 0x849A, 0x84B1, - 0x84D0, 0x849D, 0x84A7, 0x84BB, 0x84A2, 0x8494, 0x84C7, 0x84CC, - 0x849B, 0x84A9, 0x84AF, 0x84A8, 0x84D6, 0x8498, 0x84B6, 0x84CF, - 0x84A0, 0x84D7, 0x84D4, 0x84D2, 0x84DB, 0x84B0, 0x8491, 0x8661, - 0x8733, 0x8723, 0x8728, 0x876B, 0x8740, 0x872E, 0x871E, 0x8721, - 0x8719, 0x871B, 0x8743, 0x872C, 0x8741, 0x873E, 0x8746, 0x8720, - 0x8732, 0x872A, 0x872D, 0x873C, 0x8712, 0x873A, 0x8731, 0x8735, - 0x8742, 0x8726, 0x8727, 0x8738, 0x8724, 0x871A, 0x8730, 0x8711, - 0x88F7, 0x88E7, 0x88F1, 0x88F2, 0x88FA, 0x88FE, 0x88EE, 0x88FC, - 0x88F6, 0x88FB, 0x88F0, 0x88EC, 0x88EB, 0x899D, 0x89A1, 0x899F, - 0x899E, 0x89E9, 0x89EB, 0x89E8, 0x8AAB, 0x8A99, 0x8A8B, 0x8A92, - 0x8A8F, 0x8A96, 0x8C3D, 0x8C68, 0x8C69, 0x8CD5, 0x8CCF, 0x8CD7, - 0x8D96, 0x8E09, 0x8E02, 0x8DFF, 0x8E0D, 0x8DFD, 0x8E0A, 0x8E03, - 0x8E07, 0x8E06, 0x8E05, 0x8DFE, 0x8E00, 0x8E04, 0x8F10, 0x8F11, - 0x8F0E, 0x8F0D, 0x9123, 0x911C, 0x9120, 0x9122, 0x911F, 0x911D, - 0x911A, 0x9124, 0x9121, 0x911B, 0x917A, 0x9172, 0x9179, 0x9173, - 0x92A5, 0x92A4, 0x9276, 0x929B, 0x927A, 0x92A0, 0x9294, 0x92AA, - 0x928D, 0x6ABE, 0x6AC1, 0x6AC8, 0x6AC0, 0x6ABC, 0x6AB1, 0x6AC4, - 0x6ABF, 0x7008, 0x7003, 0x6FFD, 0x7010, 0x7002, 0x7013, 0x71FA, - 0x7200, 0x74B9, 0x74BC, 0x765B, 0x7651, 0x764F, 0x76EB, 0x77B8, - 0x77B9, 0x77C1, 0x77C0, 0x77BE, 0x790B, 0x7907, 0x790A, 0x7908, - 0x790D, 0x7906, 0x92A6, 0x929A, 0x92AB, 0x9279, 0x9297, 0x927F, - 0x92A3, 0x92EE, 0x928E, 0x9282, 0x9295, 0x92A2, 0x927D, 0x9288, - 0x92A1, 0x928A, 0x9286, 0x928C, 0x9299, 0x92A7, 0x927E, 0x9287, - 0x92A9, 0x929D, 0x928B, 0x922D, 0x969E, 0x96A1, 0x96FF, 0x9758, - 0x977D, 0x977A, 0x977E, 0x9783, 0x9780, 0x9782, 0x977B, 0x9784, -plane 75 -at 0x00 - 0x9781, 0x977F, 0x97CE, 0x97CD, 0x9816, 0x98AD, 0x98AE, 0x9902, - 0x9900, 0x9907, 0x999D, 0x999C, 0x99C3, 0x99B9, 0x99BB, 0x99BA, - 0x99C2, 0x99BD, 0x99C7, 0x9AB1, 0x9AE3, 0x9AE7, 0x9B3E, 0x9B3F, - 0x9B60, 0x9B61, 0x9B5F, 0x9CF1, 0x9CF2, 0x9CF5, 0x9EA7, 0x50FF, - 0x5103, 0x5130, 0x50F8, 0x5106, 0x5107, 0x50F6, 0x50FE, 0x510B, - 0x510C, 0x50FD, 0x510A, 0x528B, 0x528C, 0x52F1, 0x52EF, 0x5648, - 0x5642, 0x564C, 0x5635, 0x5641, 0x564A, 0x5649, 0x5646, 0x5658, - 0x565A, 0x5640, 0x5633, 0x563D, 0x562C, 0x563E, 0x5638, 0x562A, - 0x563A, 0x571A, 0x58AB, 0x589D, 0x58B1, 0x58A0, 0x58A3, 0x58AF, - 0x58AC, 0x58A5, 0x58A1, 0x58FF, 0x5AFF, 0x5AF4, 0x5AFD, 0x5AF7, - 0x5AF6, 0x5B03, 0x5AF8, 0x5B02, 0x5AF9, 0x5B01, 0x5B07, 0x5B05, - 0x5B0F, 0x5C67, 0x5D99, 0x5D97, 0x5D9F, 0x5D92, 0x5DA2, 0x5D93, - 0x5D95, 0x5DA0, 0x5D9C, 0x5DA1, 0x5D9A, 0x5D9E, 0x5E69, 0x5E5D, - 0x5E60, 0x5E5C, 0x7DF3, 0x5EDB, 0x5EDE, 0x5EE1, 0x5F49, 0x5FB2, - 0x618B, 0x6183, 0x6179, 0x61B1, 0x61B0, 0x61A2, 0x6189, 0x7915, - 0x79AF, 0x7AF5, 0x7C2E, 0x7C1B, 0x7C1A, 0x7C24, 0x7CE6, 0x7CE3, - 0x7E5D, 0x7E4F, 0x7E66, 0x7E5B, 0x7F47, 0x7FB4, 0x7FFA, 0x802E, - 0x81CE, 0x8219, 0x85CC, 0x85B2, 0x85BB, 0x85C1, 0x87E9, 0x87EE, - 0x87F0, 0x87D6, 0x880E, 0x87DA, 0x8948, 0x894A, 0x894E, 0x894D, - 0x619B, 0x6193, 0x61AF, 0x61AD, 0x619F, 0x6192, 0x61AA, 0x61A1, - 0x618D, 0x6166, 0x61B3, 0x622D, 0x646E, 0x6470, 0x6496, 0x64A0, - 0x6485, 0x6497, 0x649C, 0x648F, 0x648B, 0x648A, 0x648C, 0x64A3, - 0x649F, 0x6468, 0x64B1, 0x6498, 0x6576, 0x657A, 0x6579, 0x657B, - 0x65B2, 0x65B3, 0x66B5, 0x66B0, 0x66A9, 0x66B2, 0x66B7, 0x66AA, - 0x66AF, 0x6A00, 0x6A06, 0x6A17, 0x69E5, 0x69F8, 0x6A15, 0x69F1, - 0x69E4, 0x6A20, 0x69FF, 0x69EC, 0x69E2, 0x6A1B, 0x6A1D, 0x69FE, - 0x6A27, 0x69F2, 0x69EE, 0x6A14, 0x69F7, 0x69E7, 0x6A40, 0x6A08, - 0x69E6, 0x69FB, 0x6A0D, 0x69FC, 0x69EB, 0x6A09, 0x6A04, 0x6A18, - 0x6A25, 0x6A0F, 0x69F6, 0x6A26, 0x6A07, 0x69F4, 0x6A16, 0x6B51, - 0x6BA5, 0x6BA3, 0x6BA2, 0x6BA6, 0x6C01, 0x6C00, 0x6BFF, 0x6C02, - 0x6F41, 0x6F26, 0x6F7E, 0x6F87, 0x6FC6, 0x6F92, 0x6F8D, 0x6F89, - 0x6F8C, 0x6F62, 0x6F4F, 0x6F85, 0x6F5A, 0x6F96, 0x6F76, 0x6F6C, -plane 76 -at 0x00 - 0x6F82, 0x6F55, 0x6F72, 0x6F52, 0x6F50, 0x6F57, 0x6F94, 0x6F93, - 0x6F5D, 0x6F00, 0x6F61, 0x6F6B, 0x6F7D, 0x6F67, 0x6F90, 0x6F53, - 0x6F8B, 0x6F69, 0x6F7F, 0x6F95, 0x6F63, 0x6F77, 0x6F6A, 0x6F7B, - 0x71B2, 0x71AF, 0x719B, 0x71B0, 0x71A0, 0x719A, 0x71A9, 0x71B5, - 0x719D, 0x71A5, 0x719E, 0x71A4, 0x71A1, 0x71AA, 0x719C, 0x71A7, - 0x71B3, 0x7298, 0x729A, 0x7358, 0x7352, 0x735E, 0x735F, 0x7360, - 0x735D, 0x735B, 0x7361, 0x735A, 0x7359, 0x89B1, 0x89B0, 0x89B3, - 0x8B38, 0x8B32, 0x8B2D, 0x8B34, 0x8B29, 0x8C74, 0x8D03, 0x8DA9, - 0x8E58, 0x8EBF, 0x8EC1, 0x8F4A, 0x8FAC, 0x9089, 0x913D, 0x913C, - 0x91A9, 0x93A0, 0x9390, 0x9393, 0x938B, 0x93AD, 0x93BB, 0x93B8, - 0x939C, 0x95D8, 0x95D7, 0x975D, 0x97A9, 0x97DA, 0x7362, 0x7487, - 0x7489, 0x748A, 0x7486, 0x7481, 0x747D, 0x7485, 0x7488, 0x747C, - 0x7479, 0x7508, 0x7507, 0x757E, 0x7625, 0x761E, 0x7619, 0x761D, - 0x761C, 0x7623, 0x761A, 0x7628, 0x761B, 0x769C, 0x769D, 0x769E, - 0x769B, 0x778D, 0x778F, 0x7789, 0x7788, 0x78CD, 0x78BB, 0x78CF, - 0x78CC, 0x78D1, 0x78CE, 0x78D4, 0x78C8, 0x78C3, 0x78C4, 0x78C9, - 0x799A, 0x79A1, 0x79A0, 0x799C, 0x79A2, 0x799B, 0x6B76, 0x7A39, - 0x7AB2, 0x7AB4, 0x7AB3, 0x7BB7, 0x7BCB, 0x7BBE, 0x7BAC, 0x7BCE, - 0x7BAF, 0x7BB9, 0x7BCA, 0x7BB5, 0x7CC5, 0x7CC8, 0x7CCC, 0x7CCB, - 0x7DF7, 0x7DDB, 0x7DEA, 0x7DE7, 0x7DD7, 0x7DE1, 0x7E03, 0x7DFA, - 0x7DE6, 0x7DF6, 0x7DF1, 0x7DF0, 0x7DEE, 0x7DDF, 0x7F76, 0x7FAC, - 0x7FB0, 0x7FAD, 0x7FED, 0x7FEB, 0x7FEA, 0x7FEC, 0x7FE6, 0x7FE8, - 0x8064, 0x8067, 0x81A3, 0x819F, 0x819E, 0x8195, 0x81A2, 0x8199, - 0x8197, 0x8216, 0x824F, 0x8253, 0x8252, 0x8250, 0x824E, 0x8251, - 0x8524, 0x853B, 0x850F, 0x8500, 0x8529, 0x850E, 0x8509, 0x850D, - 0x851F, 0x850A, 0x8527, 0x851C, 0x84FB, 0x852B, 0x84FA, 0x8508, - 0x850C, 0x84F4, 0x852A, 0x84F2, 0x8515, 0x84F7, 0x84EB, 0x84F3, - 0x84FC, 0x8512, 0x84EA, 0x84E9, 0x8516, 0x84FE, 0x8528, 0x851D, - 0x852E, 0x8502, 0x84FD, 0x851E, 0x84F6, 0x8531, 0x8526, 0x84E7, - 0x84E8, 0x84F0, 0x84EF, 0x84F9, 0x8518, 0x8520, 0x8530, 0x850B, - 0x8519, 0x852F, 0x8662, 0x9854, 0x9855, 0x984B, 0x983F, 0x98B9, - 0x9938, 0x9936, 0x9940, 0x993B, 0x9939, 0x99A4, 0x9A08, 0x9A0C, -plane 77 -at 0x00 - 0x9A10, 0x9B07, 0x9BD2, 0x9BC2, 0x9BBB, 0x9BCC, 0x9BCB, 0x9D4D, - 0x9D63, 0x9D4E, 0x9D50, 0x9D55, 0x9D5E, 0x9E90, 0x9EB2, 0x9EB1, - 0x9ECA, 0x9F02, 0x9F27, 0x9F26, 0x8756, 0x8763, 0x8764, 0x8777, - 0x87E1, 0x8773, 0x8758, 0x8754, 0x875B, 0x8752, 0x8761, 0x875A, - 0x8751, 0x875E, 0x876D, 0x876A, 0x8750, 0x874E, 0x875F, 0x875D, - 0x876F, 0x876C, 0x877A, 0x876E, 0x875C, 0x8765, 0x874F, 0x877B, - 0x8775, 0x8762, 0x8767, 0x8769, 0x885A, 0x8905, 0x890C, 0x8914, - 0x890B, 0x8917, 0x8918, 0x8919, 0x8906, 0x8916, 0x8911, 0x890E, - 0x8909, 0x89A2, 0x89A4, 0x89A3, 0x89ED, 0x89F0, 0x89EC, 0x8ACF, - 0x8AC6, 0x8AB8, 0x8AD3, 0x8AD1, 0x8AD4, 0x8AD5, 0x8ABB, 0x8AD7, - 0x8ABE, 0x8AC0, 0x8AC5, 0x8AD8, 0x8AC3, 0x8ABA, 0x8ABD, 0x8AD9, - 0x8C3E, 0x8C4D, 0x8C8F, 0x8CE5, 0x8CDF, 0x8CD9, 0x8CE8, 0x8CDA, - 0x8CDD, 0x8CE7, 0x8DA0, 0x8D9C, 0x8DA1, 0x8D9B, 0x8E20, 0x8E23, - 0x8E25, 0x8E24, 0x8E2E, 0x8E15, 0x8E1B, 0x8E16, 0x8E11, 0x8E19, - 0x8E26, 0x8E27, 0x8E14, 0x8E12, 0x8E18, 0x8E13, 0x8E1C, 0x8E17, - 0x8E1A, 0x8F2C, 0x8F24, 0x8F18, 0x8F1A, 0x8F20, 0x8F23, 0x8F16, - 0x8F17, 0x9073, 0x9070, 0x906F, 0x9067, 0x906B, 0x912F, 0x912B, - 0x9129, 0x912A, 0x9132, 0x9126, 0x912E, 0x9185, 0x9186, 0x918A, - 0x9181, 0x9182, 0x9184, 0x9180, 0x92D0, 0x92C3, 0x92C4, 0x92C0, - 0x92D9, 0x92B6, 0x92CF, 0x92F1, 0x92DF, 0x92D8, 0x92E9, 0x92D7, - 0x92DD, 0x92CC, 0x92EF, 0x92C2, 0x92E8, 0x92CA, 0x92C8, 0x92CE, - 0x92E6, 0x92CD, 0x92D5, 0x92C9, 0x92E0, 0x92DE, 0x92E7, 0x92D1, - 0x92D3, 0x56AF, 0x58E0, 0x58DC, 0x5B39, 0x5B7C, 0x5BF3, 0x5C6B, - 0x5DC4, 0x650B, 0x6508, 0x650A, 0x65DC, 0x66E1, 0x66DF, 0x6ACE, - 0x6AD4, 0x6AE3, 0x6AD7, 0x6AE2, 0x6AD8, 0x6AD5, 0x6AD2, 0x701E, - 0x702C, 0x7025, 0x6FF3, 0x7204, 0x7208, 0x7215, 0x74C4, 0x74C9, - 0x74C7, 0x74C8, 0x92B5, 0x92E1, 0x92C6, 0x92B4, 0x957C, 0x95AC, - 0x95AB, 0x95AE, 0x95B0, 0x96A4, 0x96A2, 0x96D3, 0x9705, 0x9708, - 0x9702, 0x975A, 0x978A, 0x978E, 0x9788, 0x97D0, 0x97CF, 0x981E, - 0x981D, 0x9826, 0x9829, 0x9828, 0x9820, 0x981B, 0x9827, 0x98B2, - 0x9908, 0x98FA, 0x9911, 0x9914, 0x9916, 0x9917, 0x9915, 0x99DC, - 0x99CD, 0x99CF, 0x99D3, 0x99D4, 0x99CE, 0x99C9, 0x99D6, 0x99D8, -plane 78 -at 0x00 - 0x99CB, 0x99D7, 0x99CC, 0x9AB3, 0x9AEC, 0x9AEB, 0x9AF3, 0x9AF2, - 0x9AF1, 0x9B46, 0x9B43, 0x9B67, 0x9B74, 0x9B71, 0x9B66, 0x9B76, - 0x9B75, 0x9B70, 0x9B68, 0x9B64, 0x9B6C, 0x9CFC, 0x9CFA, 0x9CFD, - 0x9CFF, 0x9CF7, 0x9D07, 0x9D00, 0x9CF9, 0x9CFB, 0x9D08, 0x9D05, - 0x9D04, 0x9E83, 0x9ED3, 0x9F0F, 0x9F10, 0x511C, 0x5113, 0x5117, - 0x511A, 0x5111, 0x51DE, 0x5334, 0x53E1, 0x5670, 0x5660, 0x566E, - 0x5673, 0x5666, 0x5663, 0x566D, 0x5672, 0x565E, 0x5677, 0x571C, - 0x571B, 0x58C8, 0x58BD, 0x58C9, 0x58BF, 0x58BA, 0x58C2, 0x58BC, - 0x58C6, 0x5B17, 0x5B19, 0x5B1B, 0x5B21, 0x5B14, 0x5B13, 0x5B10, - 0x5B16, 0x5B28, 0x5B1A, 0x5B20, 0x5B1E, 0x5BEF, 0x5DAC, 0x5DB1, - 0x5DA9, 0x5DA7, 0x5DB5, 0x5DB0, 0x5DAE, 0x5DAA, 0x5DA8, 0x5DB2, - 0x5DAD, 0x5DAF, 0x5DB4, 0x5E67, 0x5E68, 0x5E66, 0x5E6F, 0x5EE9, - 0x5EE7, 0x5EE6, 0x5EE8, 0x5EE5, 0x5F4B, 0x5FBC, 0x619D, 0x61A8, - 0x6196, 0x61C5, 0x61B4, 0x61C6, 0x61C1, 0x61CC, 0x61BA, 0x76A9, - 0x77C6, 0x77C5, 0x7918, 0x791A, 0x7920, 0x7A66, 0x7A64, 0x7A6A, - 0x7C35, 0x7C34, 0x7E6C, 0x7E6E, 0x7E71, 0x81D4, 0x81D6, 0x821A, - 0x8262, 0x8265, 0x8276, 0x85DB, 0x85D6, 0x85E7, 0x85F4, 0x87FD, - 0x87D5, 0x8807, 0x880F, 0x87F8, 0x8987, 0x89B5, 0x89F5, 0x8B3F, - 0x61BF, 0x61B8, 0x618C, 0x64D7, 0x64D6, 0x64D0, 0x64CF, 0x64C9, - 0x64BD, 0x6489, 0x64C3, 0x64DB, 0x64F3, 0x64D9, 0x6533, 0x657F, - 0x657C, 0x65A2, 0x66C8, 0x66BE, 0x66C0, 0x66CA, 0x66CB, 0x66CF, - 0x66BD, 0x66BB, 0x66BA, 0x66CC, 0x6723, 0x6A34, 0x6A66, 0x6A49, - 0x6A67, 0x6A32, 0x6A68, 0x6A3E, 0x6A5D, 0x6A6D, 0x6A76, 0x6A5B, - 0x6A51, 0x6A28, 0x6A5A, 0x6A3B, 0x6A3F, 0x6A41, 0x6A6A, 0x6A64, - 0x6A50, 0x6A4F, 0x6A54, 0x6A6F, 0x6A69, 0x6A60, 0x6A3C, 0x6A5E, - 0x6A56, 0x6A55, 0x6A4D, 0x6A4E, 0x6A46, 0x6B55, 0x6B54, 0x6B56, - 0x6BA7, 0x6BAA, 0x6BAB, 0x6BC8, 0x6BC7, 0x6C04, 0x6C03, 0x6C06, - 0x6FAD, 0x6FCB, 0x6FA3, 0x6FC7, 0x6FBC, 0x6FCE, 0x6FC8, 0x6F5E, - 0x6FC4, 0x6FBD, 0x6F9E, 0x6FCA, 0x6FA8, 0x7004, 0x6FA5, 0x6FAE, - 0x6FBA, 0x6FAC, 0x6FAA, 0x6FCF, 0x6FBF, 0x6FB8, 0x6FA2, 0x6FC9, - 0x6FAB, 0x6FCD, 0x6FAF, 0x6FB2, 0x6FB0, 0x71C5, 0x71C2, 0x71BF, - 0x71B8, 0x71D6, 0x71C0, 0x71C1, 0x71CB, 0x71D4, 0x71CA, 0x71C7, -plane 79 -at 0x00 - 0x71CF, 0x71BD, 0x71D8, 0x71BC, 0x71C6, 0x71DA, 0x71DB, 0x729D, - 0x729E, 0x7369, 0x7366, 0x7367, 0x736C, 0x7365, 0x736B, 0x736A, - 0x747F, 0x749A, 0x74A0, 0x7494, 0x7492, 0x7495, 0x74A1, 0x750B, - 0x7580, 0x762F, 0x762D, 0x7631, 0x763D, 0x7633, 0x763C, 0x7635, - 0x7632, 0x7630, 0x76BB, 0x76E6, 0x779A, 0x779D, 0x77A1, 0x779C, - 0x779B, 0x77A2, 0x77A3, 0x7795, 0x7799, 0x8B43, 0x8B4C, 0x8D0B, - 0x8E6B, 0x8E68, 0x8E70, 0x8E75, 0x8E77, 0x8EC3, 0x93E9, 0x93EA, - 0x93CB, 0x93C5, 0x93C6, 0x93ED, 0x93D3, 0x93E5, 0x93DB, 0x93EB, - 0x93E0, 0x93C1, 0x95DD, 0x97B2, 0x97B4, 0x97B1, 0x97B5, 0x97F2, - 0x9856, 0x9944, 0x9A26, 0x9A1F, 0x9A18, 0x9A21, 0x7797, 0x78DD, - 0x78E9, 0x78E5, 0x78EA, 0x78DE, 0x78E3, 0x78DB, 0x78E1, 0x78E2, - 0x78ED, 0x78DF, 0x78E0, 0x79A4, 0x7A44, 0x7A48, 0x7A47, 0x7AB6, - 0x7AB8, 0x7AB5, 0x7AB1, 0x7AB7, 0x7BDE, 0x7BE3, 0x7BE7, 0x7BDD, - 0x7BD5, 0x7BE5, 0x7BDA, 0x7BE8, 0x7BF9, 0x7BD4, 0x7BEA, 0x7BE2, - 0x7BDC, 0x7BEB, 0x7BD8, 0x7BDF, 0x7CD2, 0x7CD4, 0x7CD7, 0x7CD0, - 0x7CD1, 0x7E12, 0x7E21, 0x7E17, 0x7E0C, 0x7E1F, 0x7E20, 0x7E13, - 0x7E0E, 0x7E1C, 0x7E15, 0x7E1A, 0x7E22, 0x7E0B, 0x7E0F, 0x7E16, - 0x7E0D, 0x7E14, 0x7E25, 0x7E24, 0x7F43, 0x7F7B, 0x7F7C, 0x7F7A, - 0x7FB1, 0x7FEF, 0x802A, 0x8029, 0x806C, 0x81B1, 0x81A6, 0x81AE, - 0x81B9, 0x81B5, 0x81AB, 0x81B0, 0x81AC, 0x81B4, 0x81B2, 0x81B7, - 0x81A7, 0x81F2, 0x8255, 0x8256, 0x8257, 0x8556, 0x8545, 0x856B, - 0x854D, 0x8553, 0x8561, 0x8558, 0x8540, 0x8546, 0x8564, 0x8541, - 0x8562, 0x8544, 0x8551, 0x8547, 0x8563, 0x853E, 0x855B, 0x8571, - 0x854E, 0x856E, 0x8575, 0x8555, 0x8567, 0x8560, 0x858C, 0x8566, - 0x855D, 0x8554, 0x8565, 0x856C, 0x8663, 0x8665, 0x8664, 0x879B, - 0x878F, 0x8797, 0x8793, 0x8792, 0x8788, 0x8781, 0x8796, 0x8798, - 0x8779, 0x8787, 0x87A3, 0x8785, 0x8790, 0x8791, 0x879D, 0x8784, - 0x8794, 0x879C, 0x879A, 0x8789, 0x891E, 0x8926, 0x8930, 0x892D, - 0x892E, 0x8927, 0x8931, 0x8922, 0x8929, 0x8923, 0x892F, 0x892C, - 0x891F, 0x89F1, 0x8AE0, 0x9A17, 0x9B09, 0x9BC5, 0x9BDF, 0x9BE3, - 0x9BE9, 0x9BEE, 0x9D66, 0x9D7A, 0x9D6E, 0x9D91, 0x9D83, 0x9D76, - 0x9D7E, 0x9D6D, 0x9E95, 0x9EE3, 0x9F03, 0x9F04, 0x9F17, 0x5136, -plane 80 -at 0x00 - 0x5336, 0x5B42, 0x5B44, 0x5B46, 0x5B7E, 0x5DCA, 0x5DC8, 0x5DCC, - 0x5EF0, 0x6585, 0x66E5, 0x66E7, 0x8AE2, 0x8AF2, 0x8AF4, 0x8AF5, - 0x8ADD, 0x8B14, 0x8AE4, 0x8ADF, 0x8AF0, 0x8AC8, 0x8ADE, 0x8AE1, - 0x8AE8, 0x8AFF, 0x8AEF, 0x8AFB, 0x8C91, 0x8C92, 0x8C90, 0x8CF5, - 0x8CEE, 0x8CF1, 0x8CF0, 0x8CF3, 0x8D6C, 0x8D6E, 0x8DA5, 0x8DA7, - 0x8E33, 0x8E3E, 0x8E38, 0x8E40, 0x8E45, 0x8E36, 0x8E3C, 0x8E3D, - 0x8E41, 0x8E30, 0x8E3F, 0x8EBD, 0x8F36, 0x8F2E, 0x8F35, 0x8F32, - 0x8F39, 0x8F37, 0x8F34, 0x9076, 0x9079, 0x907B, 0x9086, 0x90FA, - 0x9133, 0x9135, 0x9136, 0x9193, 0x9190, 0x9191, 0x918D, 0x918F, - 0x9327, 0x931E, 0x9308, 0x931F, 0x9306, 0x930F, 0x937A, 0x9338, - 0x933C, 0x931B, 0x9323, 0x9312, 0x9301, 0x9346, 0x932D, 0x930E, - 0x930D, 0x92CB, 0x931D, 0x92FA, 0x9325, 0x9313, 0x92F9, 0x92F7, - 0x9334, 0x9302, 0x9324, 0x92FF, 0x9329, 0x9339, 0x9335, 0x932A, - 0x9314, 0x930C, 0x930B, 0x92FE, 0x9309, 0x9300, 0x92FB, 0x9316, - 0x95BC, 0x95CD, 0x95BE, 0x95B9, 0x95BA, 0x95B6, 0x95BF, 0x95B5, - 0x95BD, 0x96A9, 0x96D4, 0x970B, 0x9712, 0x9710, 0x9799, 0x9797, - 0x9794, 0x97F0, 0x97F8, 0x9835, 0x982F, 0x9832, 0x9924, 0x991F, - 0x9927, 0x9929, 0x999E, 0x99EE, 0x99EC, 0x99E5, 0x99E4, 0x99F0, - 0x99E3, 0x99EA, 0x99E9, 0x99E7, 0x9AB9, 0x9ABF, 0x9AB4, 0x9ABB, - 0x9AF6, 0x9AFA, 0x9AF9, 0x9AF7, 0x9B33, 0x9B80, 0x9B85, 0x9B87, - 0x9B7C, 0x9B7E, 0x9B7B, 0x9B82, 0x9B93, 0x9B92, 0x9B90, 0x9B7A, - 0x9B95, 0x6AF4, 0x6AE9, 0x703D, 0x7036, 0x7216, 0x7212, 0x720F, - 0x7217, 0x7211, 0x720B, 0x74CD, 0x74D0, 0x74CC, 0x74CE, 0x74D1, - 0x7589, 0x7A6F, 0x7C4B, 0x7C44, 0x7C55, 0x7E7F, 0x8B71, 0x802F, - 0x807A, 0x807B, 0x807C, 0x85FC, 0x8610, 0x8602, 0x85EE, 0x8603, - 0x860D, 0x8613, 0x9B7D, 0x9B88, 0x9D25, 0x9D17, 0x9D20, 0x9D1E, - 0x9D14, 0x9D29, 0x9D1D, 0x9D18, 0x9D22, 0x9D10, 0x9D19, 0x9D1F, - 0x9E88, 0x9E86, 0x9E87, 0x9EAE, 0x9EAD, 0x9ED5, 0x9ED6, 0x9EFA, - 0x9F12, 0x9F3D, 0x5126, 0x5125, 0x5122, 0x5124, 0x5120, 0x5129, - 0x52F4, 0x5693, 0x568C, 0x568D, 0x5686, 0x5684, 0x5683, 0x567E, - 0x5682, 0x567F, 0x5681, 0x58D6, 0x58D4, 0x58CF, 0x58D2, 0x5B2D, - 0x5B25, 0x5B32, 0x5B23, 0x5B2C, 0x5B27, 0x5B26, 0x5B2F, 0x5B2E, -plane 81 -at 0x00 - 0x5B7B, 0x5BF1, 0x5BF2, 0x5DB7, 0x5E6C, 0x5E6A, 0x5FBE, 0x5FBB, - 0x61C3, 0x61B5, 0x61BC, 0x61E7, 0x61E0, 0x61E5, 0x61E4, 0x61E8, - 0x61DE, 0x64EF, 0x64E9, 0x64E3, 0x64EB, 0x64E4, 0x64E8, 0x6581, - 0x6580, 0x65B6, 0x65DA, 0x66D2, 0x6A8D, 0x6A96, 0x6A81, 0x6AA5, - 0x6A89, 0x6A9F, 0x6A9B, 0x6AA1, 0x6A9E, 0x6A87, 0x6A93, 0x6A8E, - 0x6A95, 0x6A83, 0x6AA8, 0x6AA4, 0x6A91, 0x6A7F, 0x6AA6, 0x6A9A, - 0x6A85, 0x6A8C, 0x6A92, 0x6B5B, 0x6BAD, 0x6C09, 0x6FCC, 0x6FA9, - 0x6FF4, 0x6FD4, 0x6FE3, 0x6FDC, 0x6FED, 0x6FE7, 0x6FE6, 0x6FDE, - 0x6FF2, 0x6FDD, 0x6FE2, 0x6FE8, 0x71E1, 0x71F1, 0x71E8, 0x71F2, - 0x71E4, 0x71F0, 0x71E2, 0x7373, 0x736E, 0x736F, 0x7497, 0x74B2, - 0x74AB, 0x7490, 0x74AA, 0x74AD, 0x74B1, 0x74A5, 0x74AF, 0x7510, - 0x7511, 0x7512, 0x750F, 0x7584, 0x7643, 0x7648, 0x7649, 0x7647, - 0x76A4, 0x76E9, 0x77B5, 0x77AB, 0x77B2, 0x77B7, 0x77B6, 0x8608, - 0x860F, 0x8818, 0x8812, 0x8967, 0x8965, 0x89BB, 0x8B69, 0x8B62, - 0x8B6E, 0x8B61, 0x8B64, 0x8B4D, 0x8C51, 0x8E83, 0x8EC6, 0x941F, - 0x9404, 0x9417, 0x9408, 0x9405, 0x93F3, 0x941E, 0x9402, 0x941A, - 0x941B, 0x9427, 0x941C, 0x96B5, 0x9733, 0x9734, 0x9731, 0x97B8, - 0x77B4, 0x77B1, 0x77A8, 0x77F0, 0x78F3, 0x78FD, 0x7902, 0x78FB, - 0x78FC, 0x78F2, 0x7905, 0x78F9, 0x78FE, 0x7904, 0x79AB, 0x79A8, - 0x7A5C, 0x7A5B, 0x7A56, 0x7A58, 0x7A54, 0x7A5A, 0x7ABE, 0x7AC0, - 0x7AC1, 0x7C05, 0x7C0F, 0x7BF2, 0x7C00, 0x7BFF, 0x7BFB, 0x7C0E, - 0x7BF4, 0x7C0B, 0x7BF3, 0x7C02, 0x7C09, 0x7C03, 0x7C01, 0x7BF8, - 0x7BFD, 0x7C06, 0x7BF0, 0x7BF1, 0x7C10, 0x7C0A, 0x7CE8, 0x7E2D, - 0x7E3C, 0x7E42, 0x7E33, 0x9848, 0x7E38, 0x7E2A, 0x7E49, 0x7E40, - 0x7E47, 0x7E29, 0x7E4C, 0x7E30, 0x7E3B, 0x7E36, 0x7E44, 0x7E3A, - 0x7F45, 0x7F7F, 0x7F7E, 0x7F7D, 0x7FF4, 0x7FF2, 0x802C, 0x81BB, - 0x81C4, 0x81CC, 0x81CA, 0x81C5, 0x81C7, 0x81BC, 0x81E9, 0x825B, - 0x825A, 0x825C, 0x8583, 0x8580, 0x858F, 0x85A7, 0x8595, 0x85A0, - 0x858B, 0x85A3, 0x857B, 0x85A4, 0x859A, 0x859E, 0x8577, 0x857C, - 0x8589, 0x85A1, 0x857A, 0x8578, 0x8557, 0x858E, 0x8596, 0x8586, - 0x858D, 0x8599, 0x859D, 0x8581, 0x85A2, 0x8582, 0x8588, 0x8585, - 0x8579, 0x8576, 0x8598, 0x8590, 0x859F, 0x8668, 0x87BE, 0x87AA, -plane 82 -at 0x00 - 0x87AD, 0x87C5, 0x87B0, 0x87AC, 0x87B9, 0x87B5, 0x87BC, 0x87AE, - 0x87C9, 0x87C3, 0x87C2, 0x87CC, 0x87B7, 0x87AF, 0x87C4, 0x87CA, - 0x87B4, 0x87B6, 0x87BF, 0x87B8, 0x87BD, 0x87DE, 0x87B2, 0x8935, - 0x8933, 0x893C, 0x893E, 0x8941, 0x8952, 0x8937, 0x8942, 0x89AD, - 0x89AF, 0x89AE, 0x89F2, 0x89F3, 0x8B1E, 0x97BA, 0x97FC, 0x98C3, - 0x994D, 0x9A2F, 0x9AC9, 0x9AC8, 0x9AC4, 0x9B2A, 0x9B38, 0x9B50, - 0x9C0A, 0x9BFB, 0x9C04, 0x9BFC, 0x9BFE, 0x9C02, 0x9BF6, 0x9C1B, - 0x9BF9, 0x9C15, 0x9C10, 0x9BFF, 0x9C00, 0x9C0C, 0x9D95, 0x9DA5, - 0x9E98, 0x9EC1, 0x9F5A, 0x5164, 0x56BB, 0x58E6, 0x8B18, 0x8B16, - 0x8B11, 0x8B05, 0x8B0B, 0x8B22, 0x8B0F, 0x8B12, 0x8B15, 0x8B07, - 0x8B0D, 0x8B08, 0x8B06, 0x8B1C, 0x8B13, 0x8B1A, 0x8C4F, 0x8C70, - 0x8C72, 0x8C71, 0x8C6F, 0x8C95, 0x8C94, 0x8CF9, 0x8D6F, 0x8E4E, - 0x8E4D, 0x8E53, 0x8E50, 0x8E4C, 0x8E47, 0x8F43, 0x8F40, 0x9085, - 0x907E, 0x9138, 0x919A, 0x91A2, 0x919B, 0x9199, 0x919F, 0x91A1, - 0x919D, 0x91A0, 0x93A1, 0x9383, 0x93AF, 0x9364, 0x9356, 0x9347, - 0x937C, 0x9358, 0x935C, 0x9376, 0x9349, 0x9350, 0x9351, 0x9360, - 0x936D, 0x938F, 0x934C, 0x936A, 0x9379, 0x9357, 0x9355, 0x9352, - 0x934F, 0x9371, 0x9377, 0x937B, 0x9361, 0x935E, 0x9363, 0x9367, - 0x9380, 0x934E, 0x9359, 0x95C7, 0x95C0, 0x95C9, 0x95C3, 0x95C5, - 0x95B7, 0x96AE, 0x96B0, 0x96AC, 0x9720, 0x971F, 0x9718, 0x971D, - 0x9719, 0x979A, 0x97A1, 0x979C, 0x979E, 0x979D, 0x97D5, 0x97D4, - 0x97F1, 0x9841, 0x9844, 0x984A, 0x9849, 0x9845, 0x9843, 0x9925, - 0x992B, 0x992C, 0x992A, 0x9933, 0x9932, 0x992F, 0x992D, 0x9931, - 0x9930, 0x9998, 0x99A3, 0x99A1, 0x9A02, 0x99FA, 0x99F4, 0x99F7, - 0x99F9, 0x99F8, 0x99F6, 0x99FB, 0x99FD, 0x99FE, 0x99FC, 0x9A03, - 0x9ABE, 0x9AFE, 0x9AFD, 0x9B01, 0x9AFC, 0x9B48, 0x9B9A, 0x9BA8, - 0x9B9E, 0x9B9B, 0x9BA6, 0x9BA1, 0x9BA5, 0x9BA4, 0x9B86, 0x9BA2, - 0x9BA0, 0x9BAF, 0x9D33, 0x9D41, 0x9D67, 0x9D36, 0x9D2E, 0x9D2F, - 0x9D31, 0x9D38, 0x9D30, 0x5B49, 0x5BF7, 0x5DD0, 0x5FC2, 0x6511, - 0x6AFF, 0x6AFE, 0x6AFD, 0x6B01, 0x704B, 0x704D, 0x7047, 0x74D3, - 0x7668, 0x7667, 0x77D1, 0x7930, 0x7932, 0x792E, 0x9F9D, 0x7AC9, - 0x7AC8, 0x7C56, 0x7C51, 0x7E85, 0x7E89, 0x7E8E, 0x7E84, 0x826A, -plane 83 -at 0x00 - 0x862B, 0x862F, 0x8628, 0x8616, 0x9D45, 0x9D42, 0x9D43, 0x9D3E, - 0x9D37, 0x9D40, 0x9D3D, 0x7FF5, 0x9D2D, 0x9E8A, 0x9E89, 0x9E8D, - 0x9EB0, 0x9EC8, 0x9EDA, 0x9EFB, 0x9EFF, 0x9F24, 0x9F23, 0x9F22, - 0x9F54, 0x9FA0, 0x5131, 0x512D, 0x512E, 0x5698, 0x569C, 0x5697, - 0x569A, 0x569D, 0x5699, 0x5970, 0x5B3C, 0x5C69, 0x5C6A, 0x5DC0, - 0x5E6D, 0x5E6E, 0x61D8, 0x61DF, 0x61ED, 0x61EE, 0x61F1, 0x61EA, - 0x61F0, 0x61EB, 0x61D6, 0x61E9, 0x64FF, 0x6504, 0x64FD, 0x64F8, - 0x6501, 0x6503, 0x64FC, 0x6594, 0x65DB, 0x66DA, 0x66DB, 0x66D8, - 0x6AC5, 0x6AB9, 0x6ABD, 0x6AE1, 0x6AC6, 0x6ABA, 0x6AB6, 0x6AB7, - 0x6AC7, 0x6AB4, 0x6AAD, 0x6B5E, 0x6BC9, 0x6C0B, 0x7007, 0x700C, - 0x700D, 0x7001, 0x7005, 0x7014, 0x700E, 0x6FFF, 0x7000, 0x6FFB, - 0x7026, 0x6FFC, 0x6FF7, 0x700A, 0x7201, 0x71FF, 0x71F9, 0x7203, - 0x71FD, 0x7376, 0x74B8, 0x74C0, 0x74B5, 0x74C1, 0x74BE, 0x74B6, - 0x74BB, 0x74C2, 0x7514, 0x7513, 0x765C, 0x7664, 0x7659, 0x7650, - 0x7653, 0x7657, 0x765A, 0x76A6, 0x76BD, 0x76EC, 0x77C2, 0x77BA, - 0x78FF, 0x790C, 0x7913, 0x7914, 0x7909, 0x7910, 0x7912, 0x7911, - 0x79AD, 0x79AC, 0x7A5F, 0x7C1C, 0x7C29, 0x7C19, 0x7C20, 0x7C1F, - 0x7C2D, 0x7C1D, 0x7C26, 0x7C28, 0x7C22, 0x7C25, 0x7C30, 0x7E5C, - 0x7E50, 0x7E56, 0x7E63, 0x7E58, 0x7E62, 0x7E5F, 0x7E51, 0x7E60, - 0x7E57, 0x7E53, 0x7FB5, 0x7FB3, 0x7FF7, 0x7FF8, 0x8075, 0x81D1, - 0x81D2, 0x8615, 0x861D, 0x881A, 0x89BC, 0x8B75, 0x8B7C, 0x8D11, - 0x8D12, 0x8F5C, 0x91BB, 0x93F4, 0x942D, 0x96E4, 0x9737, 0x9736, - 0x9767, 0x97BE, 0x97BD, 0x97E2, 0x9868, 0x9866, 0x98C8, 0x98CA, - 0x98C7, 0x98DC, 0x994F, 0x99A9, 0x9A3C, 0x9A3B, 0x9ACE, 0x9B14, - 0x9B53, 0x9C2E, 0x81D0, 0x825F, 0x825E, 0x85B4, 0x85C6, 0x85C0, - 0x85C3, 0x85C2, 0x85B3, 0x85B5, 0x85BD, 0x85C7, 0x85C4, 0x85BF, - 0x85CB, 0x85CE, 0x85C8, 0x85C5, 0x85B1, 0x85B6, 0x85D2, 0x8624, - 0x85B8, 0x85B7, 0x85BE, 0x8669, 0x87E7, 0x87E6, 0x87E2, 0x87DB, - 0x87EB, 0x87EA, 0x87E5, 0x87DF, 0x87F3, 0x87E4, 0x87D4, 0x87DC, - 0x87D3, 0x87ED, 0x87D8, 0x87E3, 0x87A4, 0x87D7, 0x87D9, 0x8801, - 0x87F4, 0x87E8, 0x87DD, 0x8953, 0x894B, 0x894F, 0x894C, 0x8946, - 0x8950, 0x8951, 0x8949, 0x8B2A, 0x8B27, 0x8B23, 0x8B33, 0x8B30, -plane 84 -at 0x00 - 0x8B35, 0x8B47, 0x8B2F, 0x8B3C, 0x8B3E, 0x8B31, 0x8B25, 0x8B37, - 0x8B26, 0x8B36, 0x8B2E, 0x8B24, 0x8B3B, 0x8B3D, 0x8B3A, 0x8C42, - 0x8C75, 0x8C99, 0x8C98, 0x8C97, 0x8CFE, 0x8D04, 0x8D02, 0x8D00, - 0x8E5C, 0x8E62, 0x8E60, 0x8E57, 0x8E56, 0x8E5E, 0x8E65, 0x8E67, - 0x8E5B, 0x8E5A, 0x8E61, 0x8E5D, 0x8E69, 0x8E54, 0x8F46, 0x8F47, - 0x8F48, 0x8F4B, 0x9128, 0x913A, 0x913B, 0x913E, 0x91A8, 0x91A5, - 0x91A7, 0x91AF, 0x91AA, 0x93B5, 0x938C, 0x9392, 0x93B7, 0x939B, - 0x939D, 0x9389, 0x93A7, 0x938E, 0x93AA, 0x939E, 0x93A6, 0x9395, - 0x9388, 0x9399, 0x939F, 0x938D, 0x93B1, 0x9391, 0x93B2, 0x93A4, - 0x93A8, 0x93B4, 0x93A3, 0x93A5, 0x95D2, 0x95D3, 0x95D1, 0x96B3, - 0x96D7, 0x96DA, 0x5DC2, 0x96DF, 0x96D8, 0x96DD, 0x9723, 0x9722, - 0x9725, 0x97AC, 0x97AE, 0x97A8, 0x97AB, 0x97A4, 0x97AA, 0x9C1F, - 0x9DB0, 0x9DBD, 0x9DAE, 0x9DC4, 0x9E7B, 0x9E9E, 0x9F05, 0x9F69, - 0x9FA1, 0x56C7, 0x571D, 0x5B4A, 0x5DD3, 0x5F72, 0x6202, 0x6235, - 0x6527, 0x651E, 0x651F, 0x6B07, 0x6B06, 0x7054, 0x721C, 0x7220, - 0x7AF8, 0x7C5D, 0x7C58, 0x7E92, 0x7F4E, 0x8827, 0x8B81, 0x8B83, - 0x97A2, 0x97A5, 0x97D7, 0x97D9, 0x97D6, 0x97D8, 0x97FA, 0x9850, - 0x9851, 0x9852, 0x98B8, 0x9941, 0x993C, 0x993A, 0x9A0F, 0x9A0B, - 0x9A09, 0x9A0D, 0x9A04, 0x9A11, 0x9A0A, 0x9A05, 0x9A07, 0x9A06, - 0x9AC0, 0x9ADC, 0x9B08, 0x9B04, 0x9B05, 0x9B29, 0x9B35, 0x9B4A, - 0x9B4C, 0x9B4B, 0x9BC7, 0x9BC6, 0x9BC3, 0x9BBF, 0x9BC1, 0x9BB5, - 0x9BB8, 0x9BD3, 0x9BB6, 0x9BC4, 0x9BB9, 0x9BBD, 0x9D5C, 0x9D53, - 0x9D4F, 0x9D4A, 0x9D5B, 0x9D4B, 0x9D59, 0x9D56, 0x9D4C, 0x9D57, - 0x9D52, 0x9D54, 0x9D5F, 0x9D58, 0x9D5A, 0x9E8E, 0x9E8C, 0x9EDF, - 0x9F01, 0x9F00, 0x9F16, 0x9F25, 0x9F2B, 0x9F2A, 0x9F29, 0x9F28, - 0x9F4C, 0x9F55, 0x5134, 0x5135, 0x5296, 0x52F7, 0x53B4, 0x56AB, - 0x56AD, 0x56A6, 0x56A7, 0x56AA, 0x56AC, 0x58DA, 0x58DD, 0x58DB, - 0x5912, 0x5B3D, 0x5B3E, 0x5B3F, 0x5DC3, 0x5E70, 0x5FBF, 0x61FB, - 0x6507, 0x6510, 0x650D, 0x6509, 0x650C, 0x650E, 0x6584, 0x65DE, - 0x65DD, 0x66DE, 0x6AE7, 0x6AE0, 0x6ACC, 0x6AD1, 0x6AD9, 0x6ACB, - 0x6ADF, 0x6ADC, 0x6AD0, 0x6AEB, 0x6ACF, 0x6ACD, 0x6ADE, 0x6B60, - 0x6BB0, 0x6C0C, 0x7019, 0x7027, 0x7020, 0x7016, 0x702B, 0x7021, -plane 85 -at 0x00 - 0x7022, 0x7023, 0x7029, 0x7017, 0x7024, 0x701C, 0x702A, 0x720C, - 0x720A, 0x7207, 0x7202, 0x7205, 0x72A5, 0x72A6, 0x72A4, 0x72A3, - 0x72A1, 0x74CB, 0x74C5, 0x74B7, 0x74C3, 0x7516, 0x7660, 0x77C9, - 0x77CA, 0x77C4, 0x77F1, 0x791D, 0x791B, 0x8C44, 0x9442, 0x944D, - 0x9454, 0x944E, 0x9443, 0x973C, 0x9740, 0x97C0, 0x995A, 0x9A51, - 0x9ADD, 0x9C38, 0x9C45, 0x9C3A, 0x9C35, 0x9EF1, 0x9F93, 0x529A, - 0x8641, 0x5DD7, 0x6528, 0x7053, 0x7059, 0x7221, 0x766F, 0x7937, - 0x79B5, 0x7C62, 0x7C5E, 0x7CF5, 0x863D, 0x882D, 0x7921, 0x791C, - 0x7917, 0x791E, 0x79B0, 0x7A67, 0x7A68, 0x7C33, 0x7C3C, 0x7C39, - 0x7C2C, 0x7C3B, 0x7CEC, 0x7CEA, 0x7E76, 0x7E75, 0x7E78, 0x7E70, - 0x7E77, 0x7E6F, 0x7E7A, 0x7E72, 0x7E74, 0x7E68, 0x7F4B, 0x7F4A, - 0x7F83, 0x7F86, 0x7FB7, 0x7FFD, 0x7FFE, 0x8078, 0x81D7, 0x81D5, - 0x8264, 0x8261, 0x8263, 0x85EB, 0x85F1, 0x85ED, 0x85D9, 0x85E1, - 0x85E8, 0x85DA, 0x85D7, 0x85EC, 0x85F2, 0x85F8, 0x85D8, 0x85DF, - 0x85E3, 0x85DC, 0x85D1, 0x85F0, 0x85E6, 0x85EF, 0x85DE, 0x85E2, - 0x8800, 0x87FA, 0x8803, 0x87F6, 0x87F7, 0x8809, 0x880C, 0x880B, - 0x8806, 0x87FC, 0x8808, 0x87FF, 0x880A, 0x8802, 0x8962, 0x895A, - 0x895B, 0x8957, 0x8961, 0x895C, 0x8958, 0x895D, 0x8959, 0x8988, - 0x89B7, 0x89B6, 0x89F6, 0x8B50, 0x8B48, 0x8B4A, 0x8B40, 0x8B53, - 0x8B56, 0x8B54, 0x8B4B, 0x8B55, 0x8B51, 0x8B42, 0x8B52, 0x8B57, - 0x8C43, 0x8C77, 0x8C76, 0x8C9A, 0x8D06, 0x8D07, 0x8D09, 0x8DAC, - 0x8DAA, 0x8DAD, 0x8DAB, 0x8E6D, 0x8E78, 0x8E73, 0x8E6A, 0x8E6F, - 0x8E7B, 0x8EC2, 0x8F52, 0x8F51, 0x8F4F, 0x8F50, 0x8F53, 0x8FB4, - 0x9140, 0x913F, 0x91B0, 0x91AD, 0x93DE, 0x93C7, 0x93CF, 0x93C2, - 0x93DA, 0x93D0, 0x93F9, 0x93EC, 0x93CC, 0x93D9, 0x93A9, 0x93E6, - 0x93CA, 0x93D4, 0x93EE, 0x93E3, 0x93D5, 0x93C4, 0x93CE, 0x93C0, - 0x93D2, 0x93E7, 0x957D, 0x95DA, 0x95DB, 0x96E1, 0x9729, 0x972B, - 0x972C, 0x9728, 0x9726, 0x8989, 0x8B8D, 0x8B87, 0x8B90, 0x8D1A, - 0x8E99, 0x945F, 0x9456, 0x9461, 0x945B, 0x945A, 0x945C, 0x9465, - 0x9741, 0x986E, 0x986C, 0x986D, 0x99AA, 0x9A5C, 0x9A58, 0x9ADE, - 0x9C4F, 0x9C51, 0x9C53, 0x9DFC, 0x9F39, 0x513E, 0x56D2, 0x5B4F, - 0x6B14, 0x7A72, 0x7A73, 0x8B91, 0x97B3, 0x97B7, 0x97B6, 0x97DD, -plane 86 -at 0x00 - 0x97DE, 0x97DF, 0x985C, 0x9859, 0x985D, 0x9857, 0x98BF, 0x98BD, - 0x98BB, 0x98BE, 0x9948, 0x9947, 0x9943, 0x99A6, 0x99A7, 0x9A1A, - 0x9A15, 0x9A25, 0x9A1D, 0x9A24, 0x9A1B, 0x9A22, 0x9A20, 0x9A27, - 0x9A23, 0x9A1E, 0x9A1C, 0x9A14, 0x9AC2, 0x9B0B, 0x9B0A, 0x9B0E, - 0x9B0C, 0x9B37, 0x9BEA, 0x9BEB, 0x9BE0, 0x9BDE, 0x9BE4, 0x9BE6, - 0x9BE2, 0x9BF0, 0x9BD4, 0x9BD7, 0x9BEC, 0x9BDC, 0x9BD9, 0x9BE5, - 0x9BD5, 0x9BE1, 0x9BDA, 0x9D77, 0x9D81, 0x9D8A, 0x9D84, 0x9D88, - 0x9D71, 0x9D80, 0x9D78, 0x9D86, 0x9D8B, 0x9D8C, 0x9D7D, 0x9D6B, - 0x9D74, 0x9D75, 0x9D70, 0x9D69, 0x9D85, 0x9D73, 0x9D7B, 0x9D82, - 0x9D6F, 0x9D79, 0x9D7F, 0x9D87, 0x9D68, 0x9E94, 0x9E91, 0x9EC0, - 0x9EFC, 0x9F2D, 0x9F40, 0x9F41, 0x9F4D, 0x9F56, 0x9F57, 0x9F58, - 0x5337, 0x56B2, 0x56B5, 0x56B3, 0x58E3, 0x5B45, 0x5DC6, 0x5DC7, - 0x5EEE, 0x5EEF, 0x5FC0, 0x5FC1, 0x61F9, 0x6517, 0x6516, 0x6515, - 0x6513, 0x65DF, 0x66E8, 0x66E3, 0x66E4, 0x6AF3, 0x6AF0, 0x6AEA, - 0x6AE8, 0x6AF9, 0x6AF1, 0x6AEE, 0x6AEF, 0x703C, 0x7035, 0x702F, - 0x7037, 0x7034, 0x7031, 0x7042, 0x7038, 0x703F, 0x703A, 0x7039, - 0x7040, 0x703B, 0x7033, 0x7041, 0x7213, 0x7214, 0x72A8, 0x737D, - 0x737C, 0x74BA, 0x76AB, 0x76AA, 0x76BE, 0x76ED, 0x77CC, 0x77CE, - 0x77CF, 0x77CD, 0x77F2, 0x7925, 0x7923, 0x7927, 0x7928, 0x7924, - 0x7929, 0x91BF, 0x946C, 0x96E6, 0x9745, 0x97C8, 0x97E4, 0x995D, - 0x9B21, 0x9B2C, 0x9B57, 0x9C5D, 0x9C61, 0x9C65, 0x9E08, 0x9F45, - 0x6205, 0x66EF, 0x6B1B, 0x6B1D, 0x7225, 0x7224, 0x7C6D, 0x8642, - 0x8649, 0x8978, 0x898A, 0x8B97, 0x8C9B, 0x8D1C, 0x8EA2, 0x9C6C, - 0x9C6F, 0x9E0E, 0x79B2, 0x7A6E, 0x7A6C, 0x7A6D, 0x7AF7, 0x7C49, - 0x7C48, 0x7C4A, 0x7C47, 0x7C45, 0x7CEE, 0x7E7B, 0x7E7E, 0x7E81, - 0x7E80, 0x7FBA, 0x7FFF, 0x8079, 0x81DB, 0x81D9, 0x820B, 0x8268, - 0x8269, 0x8622, 0x85FF, 0x8601, 0x85FE, 0x861B, 0x8600, 0x85F6, - 0x8604, 0x8609, 0x8605, 0x860C, 0x85FD, 0x8819, 0x8810, 0x8811, - 0x8817, 0x8813, 0x8816, 0x8963, 0x8966, 0x89B9, 0x89F7, 0x8B60, - 0x8B6A, 0x8B5D, 0x8B68, 0x8B63, 0x8B65, 0x8B67, 0x8B6D, 0x8DAE, - 0x8E86, 0x8E88, 0x8E84, 0x8F59, 0x8F56, 0x8F57, 0x8F55, 0x8F58, - 0x8F5A, 0x908D, 0x9143, 0x9141, 0x91B7, 0x91B5, 0x91B2, 0x91B3, -plane 87 -at 0x00 - 0x940B, 0x9413, 0x93FB, 0x9420, 0x940F, 0x9414, 0x93FE, 0x9415, - 0x9410, 0x9428, 0x9419, 0x940D, 0x93F5, 0x9400, 0x93F7, 0x9407, - 0x940E, 0x9416, 0x9412, 0x93FA, 0x9409, 0x93F8, 0x940A, 0x93FF, - 0x93FC, 0x940C, 0x93F6, 0x9411, 0x9406, 0x95DE, 0x95E0, 0x95DF, - 0x972E, 0x972F, 0x97B9, 0x97BB, 0x97FD, 0x97FE, 0x9860, 0x9862, - 0x9863, 0x985F, 0x98C1, 0x98C2, 0x9950, 0x994E, 0x9959, 0x994C, - 0x994B, 0x9953, 0x9A32, 0x9A34, 0x9A31, 0x9A2C, 0x9A2A, 0x9A36, - 0x9A29, 0x9A2E, 0x9A38, 0x9A2D, 0x9AC7, 0x9ACA, 0x9AC6, 0x9B10, - 0x9B12, 0x9B11, 0x9C0B, 0x9C08, 0x9BF7, 0x9C05, 0x9C12, 0x9BF8, - 0x9C40, 0x9C07, 0x9C0E, 0x9C06, 0x9C17, 0x9C14, 0x9C09, 0x9D9F, - 0x9D99, 0x9DA4, 0x9D9D, 0x9D92, 0x9D98, 0x9D90, 0x9D9B, 0x9F08, - 0x9F1D, 0x9FA3, 0x5F60, 0x6B1C, 0x7CF3, 0x8B9B, 0x8EA7, 0x91C4, - 0x947A, 0x9A61, 0x9A63, 0x9AD7, 0x9C76, 0x9FA5, 0x7067, 0x72AB, - 0x864A, 0x897D, 0x8B9D, 0x8C53, 0x8F65, 0x947B, 0x98CD, 0x98DD, - 0x9B30, 0x9E16, 0x96E7, 0x9E18, 0x9EA2, 0x9F7C, 0x7E9E, 0x9484, - 0x9DA0, 0x9D94, 0x9D9C, 0x9DAA, 0x9D97, 0x9DA1, 0x9D9A, 0x9DA2, - 0x9DA8, 0x9D9E, 0x9DA3, 0x9DBF, 0x9DA9, 0x9D96, 0x9DA6, 0x9DA7, - 0x9E99, 0x9E9B, 0x9E9A, 0x9EE5, 0x9EE4, 0x9EE7, 0x9EE6, 0x9F30, - 0x9F2E, 0x9F5B, 0x9F60, 0x9F5E, 0x9F5D, 0x9F59, 0x9F91, 0x513A, - 0x5139, 0x5298, 0x5297, 0x56C3, 0x56BD, 0x56BE, 0x5B48, 0x5B47, - 0x5DCB, 0x5DCF, 0x5EF1, 0x61FD, 0x651B, 0x6B02, 0x6AFC, 0x6B03, - 0x6AF8, 0x6B00, 0x7043, 0x7044, 0x704A, 0x7048, 0x7049, 0x7045, - 0x7046, 0x721D, 0x721A, 0x7219, 0x737E, 0x7517, 0x766A, 0x77D0, - 0x792D, 0x7931, 0x792F, 0x7C54, 0x7C53, 0x7CF2, 0x7E8A, 0x7E87, - 0x7E88, 0x7E8B, 0x7E86, 0x7E8D, 0x7F4D, 0x7FBB, 0x8030, 0x81DD, - 0x8618, 0x862A, 0x8626, 0x861F, 0x8623, 0x861C, 0x8619, 0x8627, - 0x862E, 0x8621, 0x8620, 0x8629, 0x861E, 0x8625, 0x8829, 0x881D, - 0x881B, 0x8820, 0x8824, 0x881C, 0x882B, 0x884A, 0x896D, 0x8969, - 0x896E, 0x896B, 0x89FA, 0x8B79, 0x8B78, 0x8B45, 0x8B7A, 0x8B7B, - 0x8D10, 0x8D14, 0x8DAF, 0x8E8E, 0x8E8C, 0x8F5E, 0x8F5B, 0x8F5D, - 0x9146, 0x9144, 0x9145, 0x91B9, 0x943F, 0x943B, 0x9436, 0x9429, - 0x943D, 0x943C, 0x9430, 0x9439, 0x942A, 0x9437, 0x942C, 0x9440, -plane 88 -at 0x00 - 0x9431, 0x95E5, 0x95E4, 0x95E3, 0x9735, 0x973A, 0x97BF, 0x97E1, - 0x9864, 0x98C9, 0x98C6, 0x98C0, 0x9958, 0x9956, 0x9A39, 0x9A3D, - 0x9A46, 0x9A44, 0x9A42, 0x9A41, 0x9A3A, 0x9E1C, 0x7C71, 0x97CA, - 0x9EA3, 0x9C7B, 0x9F97, 0x9750, 0x4E40, 0x4E41, 0x4E5A, 0x4E02, - 0x4E29, 0x5202, 0x5DDC, 0x5342, 0x536A, 0x5B52, 0x5FC4, 0x624C, - 0x72AD, 0x4E12, 0x4E2F, 0x4E96, 0x4ED0, 0x5142, 0x5183, 0x5383, - 0x53B8, 0x5928, 0x5C23, 0x5E01, 0x5F00, 0x706C, 0x9A3F, 0x9ACD, - 0x9B15, 0x9B17, 0x9B18, 0x9B16, 0x9B3A, 0x9B52, 0x9C2B, 0x9C1D, - 0x9C1C, 0x9C2C, 0x9C23, 0x9C28, 0x9C29, 0x9C24, 0x9C21, 0x9DB7, - 0x9DB6, 0x9DBC, 0x9DC1, 0x9DC7, 0x9DCA, 0x9DCF, 0x9DBE, 0x9DC5, - 0x9DC3, 0x9DBB, 0x9DB5, 0x9DCE, 0x9DB9, 0x9DBA, 0x9DAC, 0x9DC8, - 0x9DB1, 0x9DAD, 0x9DCC, 0x9DB3, 0x9DCD, 0x9DB2, 0x9E7A, 0x9E9C, - 0x9EEB, 0x9EEE, 0x9EED, 0x9F1B, 0x9F18, 0x9F1A, 0x9F31, 0x9F4E, - 0x9F65, 0x9F64, 0x9F92, 0x4EB9, 0x56C6, 0x56C5, 0x56CB, 0x5971, - 0x5B4B, 0x5B4C, 0x5DD5, 0x5DD1, 0x5EF2, 0x6521, 0x6520, 0x6526, - 0x6522, 0x6B0B, 0x6B08, 0x6B09, 0x6C0D, 0x7055, 0x7056, 0x7057, - 0x7052, 0x721E, 0x721F, 0x72A9, 0x737F, 0x74D8, 0x74D5, 0x74D9, - 0x74D7, 0x766D, 0x76AD, 0x7935, 0x79B4, 0x7A70, 0x7A71, 0x7C57, - 0x7C5C, 0x7C59, 0x7C5B, 0x7C5A, 0x7CF4, 0x7CF1, 0x7E91, 0x7F4F, - 0x7F87, 0x81DE, 0x826B, 0x8634, 0x8635, 0x8633, 0x862C, 0x8632, - 0x8636, 0x882C, 0x8828, 0x8826, 0x882A, 0x8825, 0x8971, 0x89BF, - 0x89BE, 0x89FB, 0x8B7E, 0x8B84, 0x8B82, 0x8B86, 0x8B85, 0x8B7F, - 0x8D15, 0x8E95, 0x8E94, 0x8E9A, 0x8E92, 0x8E90, 0x8E96, 0x8E97, - 0x8F60, 0x8F62, 0x9147, 0x944C, 0x9450, 0x944A, 0x944B, 0x944F, - 0x9447, 0x9445, 0x9448, 0x9449, 0x9446, 0x973F, 0x97E3, 0x986A, - 0x9869, 0x98CB, 0x9954, 0x995B, 0x9A4E, 0x9A53, 0x9A54, 0x9A4C, - 0x9A4F, 0x9A48, 0x9A4A, 0x722B, 0x5188, 0x8279, 0x8FB6, 0x4E17, - 0x4EE2, 0x4EDB, 0x51AD, 0x51F7, 0x531B, 0x5388, 0x5387, 0x53CF, - 0x53FD, 0x53E7, 0x56DC, 0x56D9, 0x5725, 0x5727, 0x5933, 0x5C13, - 0x5C75, 0x66F1, 0x7F52, 0x4E51, 0x4E6A, 0x4F0C, 0x4EFE, 0x4F1B, - 0x5173, 0x518E, 0x52A5, 0x52A7, 0x9A49, 0x9A52, 0x9A50, 0x9AD0, - 0x9B19, 0x9B2B, 0x9B3B, 0x9B56, 0x9B55, 0x9C46, 0x9C48, 0x9C3F, -plane 89 -at 0x00 - 0x9C44, 0x9C39, 0x9C33, 0x9C41, 0x9C3C, 0x9C37, 0x9C34, 0x9C32, - 0x9C3D, 0x9C36, 0x9DDB, 0x9DD2, 0x9DDE, 0x9DDA, 0x9DCB, 0x9DD0, - 0x9DDC, 0x9DD1, 0x9DDF, 0x9DE9, 0x9DD9, 0x9DD8, 0x9DD6, 0x9DF5, - 0x9DD5, 0x9DDD, 0x9EB6, 0x9EF0, 0x9F35, 0x9F33, 0x9F32, 0x9F42, - 0x9F6B, 0x9F95, 0x9FA2, 0x513D, 0x5299, 0x58E8, 0x58E7, 0x5972, - 0x5B4D, 0x5DD8, 0x882F, 0x5F4F, 0x6201, 0x6203, 0x6204, 0x6529, - 0x6525, 0x6596, 0x66EB, 0x6B11, 0x6B12, 0x6B0F, 0x6BCA, 0x705B, - 0x705A, 0x7222, 0x7382, 0x7381, 0x7383, 0x7670, 0x77D4, 0x7C67, - 0x7C66, 0x7E95, 0x826C, 0x863A, 0x8640, 0x8639, 0x863C, 0x8631, - 0x863B, 0x863E, 0x8830, 0x8832, 0x882E, 0x8833, 0x8976, 0x8974, - 0x8973, 0x89FE, 0x8B8C, 0x8B8E, 0x8B8B, 0x8B88, 0x8C45, 0x8D19, - 0x8E98, 0x8F64, 0x8F63, 0x91BC, 0x9462, 0x9455, 0x945D, 0x9457, - 0x945E, 0x97C4, 0x97C5, 0x9800, 0x9A56, 0x9A59, 0x9B1E, 0x9B1F, - 0x9B20, 0x9C52, 0x9C58, 0x9C50, 0x9C4A, 0x9C4D, 0x9C4B, 0x9C55, - 0x9C59, 0x9C4C, 0x9C4E, 0x9DFB, 0x9DF7, 0x9DEF, 0x9DE3, 0x9DEB, - 0x9DF8, 0x9DE4, 0x9DF6, 0x9DE1, 0x9DEE, 0x9DE6, 0x9DF2, 0x9DF0, - 0x9DE2, 0x9DEC, 0x9DF4, 0x9DF3, 0x9DE8, 0x9DED, 0x9EC2, 0x9ED0, - 0x9EF2, 0x9EF3, 0x9F06, 0x9F1C, 0x9F38, 0x9F37, 0x9F36, 0x9F43, - 0x9F4F, 0x52A4, 0x53BD, 0x5402, 0x572B, 0x591B, 0x5935, 0x5C17, - 0x5C70, 0x5C7D, 0x5DE9, 0x5F19, 0x5F1C, 0x5F75, 0x5FC8, 0x6C12, - 0x72B3, 0x7390, 0x7536, 0x8281, 0x8FB8, 0x4E23, 0x4F2E, 0x514F, - 0x51BA, 0x5222, 0x52AF, 0x52B0, 0x52B1, 0x5364, 0x53D3, 0x593F, - 0x598B, 0x5991, 0x9F71, 0x9F70, 0x9F6E, 0x9F6F, 0x56D3, 0x56CD, - 0x5B4E, 0x5C6D, 0x652D, 0x66ED, 0x66EE, 0x6B13, 0x705F, 0x7061, - 0x705D, 0x7060, 0x7223, 0x74DB, 0x74E5, 0x77D5, 0x7938, 0x79B7, - 0x79B6, 0x7C6A, 0x7E97, 0x7F89, 0x826D, 0x8643, 0x8838, 0x8837, - 0x8835, 0x884B, 0x8B94, 0x8B95, 0x8E9E, 0x8E9F, 0x8EA0, 0x8E9D, - 0x91BE, 0x91BD, 0x91C2, 0x946B, 0x9468, 0x9469, 0x96E5, 0x9746, - 0x9743, 0x9747, 0x97C7, 0x97E5, 0x9A5E, 0x9AD5, 0x9B59, 0x9C63, - 0x9C67, 0x9C66, 0x9C62, 0x9C5E, 0x9C60, 0x9E02, 0x9DFE, 0x9E07, - 0x9E03, 0x9E06, 0x9E05, 0x9E00, 0x9E01, 0x9E09, 0x9DFF, 0x9DFD, - 0x9E04, 0x9EA0, 0x9F1E, 0x9F46, 0x9F74, 0x9F75, 0x9F76, 0x56D4, -plane 90 -at 0x00 - 0x652E, 0x65B8, 0x6B18, 0x6B19, 0x6B17, 0x6B1A, 0x7062, 0x7226, - 0x72AA, 0x77D8, 0x77D9, 0x7939, 0x7C69, 0x7C6B, 0x7CF6, 0x7E9A, - 0x7E98, 0x7E9B, 0x7E99, 0x81E0, 0x81E1, 0x8646, 0x8647, 0x8648, - 0x8979, 0x897A, 0x897C, 0x897B, 0x89FF, 0x8B98, 0x8B99, 0x8EA5, - 0x8EA4, 0x8EA3, 0x946E, 0x946D, 0x946F, 0x9471, 0x9473, 0x9749, - 0x9872, 0x995F, 0x9C68, 0x9C6E, 0x9C6D, 0x9E0B, 0x9E0D, 0x9E10, - 0x9E0F, 0x9E12, 0x9E11, 0x9EA1, 0x9EF5, 0x9F09, 0x9F47, 0x9F78, - 0x9F7B, 0x9F7A, 0x9F79, 0x571E, 0x7066, 0x7C6F, 0x883C, 0x8DB2, - 0x8EA6, 0x91C3, 0x9474, 0x9478, 0x9476, 0x9475, 0x9A60, 0x9C74, - 0x9C73, 0x9C71, 0x9C75, 0x9E14, 0x9E13, 0x9EF6, 0x9F0A, 0x5995, - 0x5B8A, 0x5C87, 0x5E0D, 0x5E8E, 0x5F7A, 0x6290, 0x629A, 0x653C, - 0x653A, 0x6598, 0x6765, 0x79C2, 0x809E, 0x81EB, 0x8289, 0x8296, - 0x8287, 0x8FC0, 0x8FC3, 0x9578, 0x9625, 0x4E75, 0x4E74, 0x4F99, - 0x4F71, 0x5153, 0x51BF, 0x51C0, 0x51EE, 0x523D, 0x52BD, 0x530C, - 0x9FA4, 0x7068, 0x7065, 0x7CF7, 0x866A, 0x883E, 0x883D, 0x883F, - 0x8B9E, 0x8C9C, 0x8EA9, 0x8EC9, 0x974B, 0x9873, 0x9874, 0x98CC, - 0x9961, 0x99AB, 0x9A64, 0x9A66, 0x9A67, 0x9B24, 0x9E15, 0x9E17, - 0x9F48, 0x6207, 0x6B1E, 0x7227, 0x864C, 0x8EA8, 0x9482, 0x9480, - 0x9481, 0x9A69, 0x9A68, 0x9B2E, 0x9E19, 0x7229, 0x864B, 0x8B9F, - 0x9483, 0x9C79, 0x9EB7, 0x7675, 0x9A6B, 0x9C7A, 0x9E1D, 0x7069, - 0x706A, 0x9EA4, 0x9F7E, 0x9F49, 0x9F98, 0x7881, 0x92B9, 0x88CF, - 0x58BB, 0x6052, 0x7CA7, 0x5AFA, 0x2554, 0x2566, 0x2557, 0x2560, - 0x256C, 0x2563, 0x255A, 0x2569, 0x255D, 0x2552, 0x2564, 0x2555, - 0x255E, 0x256A, 0x2561, 0x2558, 0x2567, 0x255B, 0x2553, 0x2565, - 0x2556, 0x255F, 0x256B, 0x2562, 0x2559, 0x2568, 0x255C, 0x2551, - 0x2550, 0x2554, 0x2557, 0x255A, 0x255D, 0x2588, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 91 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0x7F37, 0x53C0, 0x546E, - 0x5483, 0x545E, 0x545D, 0x577E, 0x5779, 0x577A, 0x576C, 0x5787, - 0x591D, 0x5946, 0x5943, 0x5B61, 0x5B66, 0x5B90, 0x5C29, 0x5CB2, - 0x5CC0, 0x601F, 0x5FE2, 0x6616, 0x65F9, 0x6788, 0x679B, 0x676E, - 0x679E, 0x6B24, 0x6B7D, 0x6CE6, 0x6CCB, 0x6CB5, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0x7097, 0x709B, 0x726B, 0x72D5, 0x7543, - 0x759C, 0x77E4, 0x7ACE, 0x8013, 0x80B7, 0x80B9, 0x81E4, 0x81FD, - 0x820F, 0x82BF, 0x82CA, 0x82C1, 0x8FD0, 0x90AE, 0x9638, 0x4FBC, - 0x4FE9, 0x4FBD, 0x4FE2, 0x5158, 0x52C6, 0x52C8, 0x5328, 0x5329, - 0x57B4, 0x57A9, 0x5B68, 0x5F2B, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 92 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x5F8D, 0x6018, 0x6057, 0x6048, 0x6038, 0x6071, 0x6312, - 0x630A, 0x6323, 0x662A, 0x67E0, 0x67BE, 0x6B29, 0x6D43, 0x70A6, - 0x70C0, 0x722F, 0x7271, 0x74EA, 0x7520, 0x75A9, 0x7685, 0x7706, - 0x76F6, 0x7700, 0x7702, 0x8009, 0x82DA, 0x830A, 0x9655, 0x9652, - 0x4E35, 0x5034, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 93 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0x5001, - 0x500A, 0x5258, 0x532B, 0x54EC, 0x5515, 0x54FE, 0x54E3, 0x5516, - 0x57D3, 0x5959, 0x5A27, 0x5A28, 0x5A10, 0x5A0E, 0x5BAF, 0x5BBA, - 0x5BB1, 0x5CFC, 0x5CF2, 0x5CFE, 0x5DF8, 0x5F2C, 0x6082, 0x6091, - 0x608F, 0x6547, 0x654C, 0x658A, 0x67E1, 0x684A, 0x683F, 0x67BD, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 94 -at 0x00 - 0, 0, 0, 0, 0, 0x70C9, 0x73BA, 0x75C6, - 0x75B7, 0x768C, 0x768D, 0x7717, 0x771C, 0x7714, 0x7B0C, 0x7D23, - 0x7F98, 0x7F90, 0x803A, 0x8226, 0x832E, 0x8355, 0x831A, 0x833D, - 0x8330, 0x8651, 0x8688, 0x898E, 0x898D, 0x8A09, 0x8A14, 0x9007, - 0x9579, 0x9584, 0x9657, 0x96BA, 0x5067, 0x5318, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Build/source/texk/ttf2pt1/chinese/cubig5.map b/Build/source/texk/ttf2pt1/chinese/cubig5.map deleted file mode 100644 index 5ff26d43cc6..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/cubig5.map +++ /dev/null @@ -1,1861 +0,0 @@ -# -# Creating compact CJK type1 fonts from Unicode -# Chinese Big5 encoding fonts. -# -plane 01 -at 0x00 - 0x3000, 0xFF0C, 0x3001, 0x3002, 0xFF0E, 0x2027, 0xFF1B, 0xFF1A, - 0xFF1F, 0xFF01, 0xFE30, 0x2026, 0x2025, 0xFE50, 0xFE51, 0xFE52, - 0x00B7, 0xFE54, 0xFE55, 0xFE56, 0xFE57, 0xFF5C, 0x2013, 0xFE31, - 0x2014, 0xFE33, 0x2574, 0xFE34, 0xFE4F, 0xFF08, 0xFF09, 0xFE35, - 0xFE36, 0xFF5B, 0xFF5D, 0xFE37, 0xFE38, 0x3014, 0x3015, 0xFE39, - 0xFE3A, 0x3010, 0x3011, 0xFE3B, 0xFE3C, 0x300A, 0x300B, 0xFE3D, - 0xFE3E, 0x3008, 0x3009, 0xFE3F, 0xFE40, 0x300C, 0x300D, 0xFE41, - 0xFE42, 0x300E, 0x300F, 0xFE43, 0xFE44, 0xFE59, 0xFE5A, 0xFE5B, - 0xFE5C, 0xFE5D, 0xFE5E, 0x2018, 0x2019, 0x201C, 0x201D, 0x301D, - 0x301E, 0x2035, 0x2032, 0xFF03, 0xFF06, 0xFF0A, 0x203B, 0x00A7, - 0x3003, 0x25CB, 0x25CF, 0x25B3, 0x25B2, 0x25CE, 0x2606, 0x2605, - 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25BD, 0x25BC, 0x32A3, 0x2105, - 0x00AF, 0xFFE3, 0xFF3F, 0x02CD, 0xFE49, 0xFE4A, 0xFE4D, 0xFE4E, - 0xFE4B, 0xFE4C, 0xFE5F, 0xFE60, 0xFE61, 0xFF0B, 0xFF0D, 0x00D7, - 0x00F7, 0x00B1, 0x221A, 0xFF1C, 0xFF1E, 0xFF1D, 0x2266, 0x2267, - 0x2260, 0x221E, 0x2252, 0x2261, 0xFE62, 0xFE63, 0xFE64, 0xFE65, - 0xFE66, 0xFF5E, 0x2229, 0x222A, 0x22A5, 0x2220, 0x221F, 0x22BF, - 0x33D2, 0x33D1, 0x222B, 0x222E, 0x2235, 0x2234, 0x2640, 0x2642, - 0x2295, 0x2299, 0x2191, 0x2193, 0x2190, 0x2192, 0x2196, 0x2197, - 0x2199, 0x2198, 0x2225, 0x2223, 0xFF0F, 0xFF3C, 0x2215, 0xFE68, - 0xFF04, 0xFFE5, 0x3012, 0xFFE0, 0xFFE1, 0xFF05, 0xFF20, 0x2103, - 0x2109, 0xFE69, 0xFE6A, 0xFE6B, 0x33D5, 0x339C, 0x339D, 0x339E, - 0x33CE, 0x33A1, 0x338E, 0x338F, 0x33C4, 0x00B0, 0x5159, 0x515B, - 0x515E, 0x515D, 0x5161, 0x5163, 0x55E7, 0x74E9, 0x7CCE, 0x2581, - 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, 0x2587, 0x2588, 0x258F, - 0x258E, 0x258D, 0x258C, 0x258B, 0x258A, 0x2589, 0x253C, 0x2534, - 0x252C, 0x2524, 0x251C, 0x2594, 0x2500, 0x2502, 0x2595, 0x250C, - 0x2510, 0x2514, 0x2518, 0x256D, 0x256E, 0x2570, 0x256F, 0x2550, - 0x255E, 0x256A, 0x2561, 0x25E2, 0x25E3, 0x25E5, 0x25E4, 0x2571, - 0x2572, 0x2573, 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, 0xFF15, - 0xFF16, 0xFF17, 0xFF18, 0xFF19, 0x2160, 0x2161, 0x2162, 0x2163, - 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x3021, 0x3022, -plane 02 -at 0x00 - 0x3023, 0x3024, 0x3025, 0x3026, 0x3027, 0x3028, 0x3029, 0x5341, - 0x5344, 0x5345, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, - 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, - 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, - 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0xFF41, 0xFF42, 0xFF43, 0xFF44, - 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, - 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, - 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0x0391, 0x0392, - 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039A, - 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, 0x03A0, 0x03A1, 0x03A3, - 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, 0x03A9, 0x03B1, 0x03B2, - 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, 0x03B8, 0x03B9, 0x03BA, - 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, 0x03C0, 0x03C1, 0x03C3, - 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, 0x03C9, 0x3105, 0x3106, - 0x3107, 0x3108, 0x3109, 0x310A, 0x310B, 0x310C, 0x310D, 0x310E, - 0x310F, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, - 0x3117, 0x3118, 0x3119, 0x311A, 0x311B, 0x311C, 0x311D, 0x311E, - 0x311F, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, - 0x3127, 0x3128, 0x3129, 0x02D9, 0x02C9, 0x02CA, 0x02C7, 0x02CB, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x20AC, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0x4E00, - 0x4E59, 0x4E01, 0x4E03, 0x4E43, 0x4E5D, 0x4E86, 0x4E8C, 0x4EBA, - 0x513F, 0x5165, 0x516B, 0x51E0, 0x5200, 0x5201, 0x529B, 0x5315, - 0x5341, 0x535C, 0x53C8, 0x4E09, 0x4E0B, 0x4E08, 0x4E0A, 0x4E2B, - 0x4E38, 0x51E1, 0x4E45, 0x4E48, 0x4E5F, 0x4E5E, 0x4E8E, 0x4EA1, - 0x5140, 0x5203, 0x52FA, 0x5343, 0x53C9, 0x53E3, 0x571F, 0x58EB, -plane 03 -at 0x00 - 0x5915, 0x5927, 0x5973, 0x5B50, 0x5B51, 0x5B53, 0x5BF8, 0x5C0F, - 0x5C22, 0x5C38, 0x5C71, 0x5DDD, 0x5DE5, 0x5DF1, 0x5DF2, 0x5DF3, - 0x5DFE, 0x5E72, 0x5EFE, 0x5F0B, 0x5F13, 0x624D, 0x4E11, 0x4E10, - 0x4E0D, 0x4E2D, 0x4E30, 0x4E39, 0x4E4B, 0x5C39, 0x4E88, 0x4E91, - 0x4E95, 0x4E92, 0x4E94, 0x4EA2, 0x4EC1, 0x4EC0, 0x4EC3, 0x4EC6, - 0x4EC7, 0x4ECD, 0x4ECA, 0x4ECB, 0x4EC4, 0x5143, 0x5141, 0x5167, - 0x516D, 0x516E, 0x516C, 0x5197, 0x51F6, 0x5206, 0x5207, 0x5208, - 0x52FB, 0x52FE, 0x52FF, 0x5316, 0x5339, 0x5348, 0x5347, 0x5345, - 0x535E, 0x5384, 0x53CB, 0x53CA, 0x53CD, 0x58EC, 0x5929, 0x592B, - 0x592A, 0x592D, 0x5B54, 0x5C11, 0x5C24, 0x5C3A, 0x5C6F, 0x5DF4, - 0x5E7B, 0x5EFF, 0x5F14, 0x5F15, 0x5FC3, 0x6208, 0x6236, 0x624B, - 0x624E, 0x652F, 0x6587, 0x6597, 0x65A4, 0x65B9, 0x65E5, 0x66F0, - 0x6708, 0x6728, 0x6B20, 0x6B62, 0x6B79, 0x6BCB, 0x6BD4, 0x6BDB, - 0x6C0F, 0x6C34, 0x706B, 0x722A, 0x7236, 0x723B, 0x7247, 0x7259, - 0x725B, 0x72AC, 0x738B, 0x4E19, 0x4E16, 0x4E15, 0x4E14, 0x4E18, - 0x4E3B, 0x4E4D, 0x4E4F, 0x4E4E, 0x4EE5, 0x4ED8, 0x4ED4, 0x4ED5, - 0x4ED6, 0x4ED7, 0x4EE3, 0x4EE4, 0x4ED9, 0x4EDE, 0x5145, 0x5144, - 0x5189, 0x518A, 0x51AC, 0x51F9, 0x51FA, 0x51F8, 0x520A, 0x52A0, - 0x529F, 0x5305, 0x5306, 0x5317, 0x531D, 0x4EDF, 0x534A, 0x5349, - 0x5361, 0x5360, 0x536F, 0x536E, 0x53BB, 0x53EF, 0x53E4, 0x53F3, - 0x53EC, 0x53EE, 0x53E9, 0x53E8, 0x53FC, 0x53F8, 0x53F5, 0x53EB, - 0x53E6, 0x53EA, 0x53F2, 0x53F1, 0x53F0, 0x53E5, 0x53ED, 0x53FB, - 0x56DB, 0x56DA, 0x5916, 0x592E, 0x5931, 0x5974, 0x5976, 0x5B55, - 0x5B83, 0x5C3C, 0x5DE8, 0x5DE7, 0x5DE6, 0x5E02, 0x5E03, 0x5E73, - 0x5E7C, 0x5F01, 0x5F18, 0x5F17, 0x5FC5, 0x620A, 0x6253, 0x6254, - 0x6252, 0x6251, 0x65A5, 0x65E6, 0x672E, 0x672C, 0x672A, 0x672B, - 0x672D, 0x6B63, 0x6BCD, 0x6C11, 0x6C10, 0x6C38, 0x6C41, 0x6C40, - 0x6C3E, 0x72AF, 0x7384, 0x7389, 0x74DC, 0x74E6, 0x7518, 0x751F, - 0x7528, 0x7529, 0x7530, 0x7531, 0x7532, 0x7533, 0x758B, 0x767D, - 0x76AE, 0x76BF, 0x76EE, 0x77DB, 0x77E2, 0x77F3, 0x793A, 0x79BE, - 0x7A74, 0x7ACB, 0x4E1E, 0x4E1F, 0x4E52, 0x4E53, 0x4E69, 0x4E99, - 0x4EA4, 0x4EA6, 0x4EA5, 0x4EFF, 0x4F09, 0x4F19, 0x4F0A, 0x4F15, -plane 04 -at 0x00 - 0x4F0D, 0x4F10, 0x4F11, 0x4F0F, 0x4EF2, 0x4EF6, 0x4EFB, 0x4EF0, - 0x4EF3, 0x4EFD, 0x4F01, 0x4F0B, 0x5149, 0x5147, 0x5146, 0x5148, - 0x5168, 0x5171, 0x518D, 0x51B0, 0x5217, 0x5211, 0x5212, 0x520E, - 0x5216, 0x52A3, 0x5308, 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, - 0x540F, 0x540C, 0x540A, 0x5410, 0x5401, 0x540B, 0x5404, 0x5411, - 0x540D, 0x5408, 0x5403, 0x540E, 0x5406, 0x5412, 0x56E0, 0x56DE, - 0x56DD, 0x5733, 0x5730, 0x5728, 0x572D, 0x572C, 0x572F, 0x5729, - 0x5919, 0x591A, 0x5937, 0x5938, 0x5984, 0x5978, 0x5983, 0x597D, - 0x5979, 0x5982, 0x5981, 0x5B57, 0x5B58, 0x5B87, 0x5B88, 0x5B85, - 0x5B89, 0x5BFA, 0x5C16, 0x5C79, 0x5DDE, 0x5E06, 0x5E76, 0x5E74, - 0x5F0F, 0x5F1B, 0x5FD9, 0x5FD6, 0x620E, 0x620C, 0x620D, 0x6210, - 0x6263, 0x625B, 0x6258, 0x6536, 0x65E9, 0x65E8, 0x65EC, 0x65ED, - 0x66F2, 0x66F3, 0x6709, 0x673D, 0x6734, 0x6731, 0x6735, 0x6B21, - 0x6B64, 0x6B7B, 0x6C16, 0x6C5D, 0x6C57, 0x6C59, 0x6C5F, 0x6C60, - 0x6C50, 0x6C55, 0x6C61, 0x6C5B, 0x6C4D, 0x6C4E, 0x7070, 0x725F, - 0x725D, 0x767E, 0x7AF9, 0x7C73, 0x7CF8, 0x7F36, 0x7F8A, 0x7FBD, - 0x8001, 0x8003, 0x800C, 0x8012, 0x8033, 0x807F, 0x8089, 0x808B, - 0x808C, 0x81E3, 0x81EA, 0x81F3, 0x81FC, 0x820C, 0x821B, 0x821F, - 0x826E, 0x8272, 0x827E, 0x866B, 0x8840, 0x884C, 0x8863, 0x897F, - 0x9621, 0x4E32, 0x4EA8, 0x4F4D, 0x4F4F, 0x4F47, 0x4F57, 0x4F5E, - 0x4F34, 0x4F5B, 0x4F55, 0x4F30, 0x4F50, 0x4F51, 0x4F3D, 0x4F3A, - 0x4F38, 0x4F43, 0x4F54, 0x4F3C, 0x4F46, 0x4F63, 0x4F5C, 0x4F60, - 0x4F2F, 0x4F4E, 0x4F36, 0x4F59, 0x4F5D, 0x4F48, 0x4F5A, 0x514C, - 0x514B, 0x514D, 0x5175, 0x51B6, 0x51B7, 0x5225, 0x5224, 0x5229, - 0x522A, 0x5228, 0x52AB, 0x52A9, 0x52AA, 0x52AC, 0x5323, 0x5373, - 0x5375, 0x541D, 0x542D, 0x541E, 0x543E, 0x5426, 0x544E, 0x5427, - 0x5446, 0x5443, 0x5433, 0x5448, 0x5442, 0x541B, 0x5429, 0x544A, - 0x5439, 0x543B, 0x5438, 0x542E, 0x5435, 0x5436, 0x5420, 0x543C, - 0x5440, 0x5431, 0x542B, 0x541F, 0x542C, 0x56EA, 0x56F0, 0x56E4, - 0x56EB, 0x574A, 0x5751, 0x5740, 0x574D, 0x5747, 0x574E, 0x573E, - 0x5750, 0x574F, 0x573B, 0x58EF, 0x593E, 0x599D, 0x5992, 0x59A8, - 0x599E, 0x59A3, 0x5999, 0x5996, 0x598D, 0x59A4, 0x5993, 0x598A, -plane 05 -at 0x00 - 0x59A5, 0x5B5D, 0x5B5C, 0x5B5A, 0x5B5B, 0x5B8C, 0x5B8B, 0x5B8F, - 0x5C2C, 0x5C40, 0x5C41, 0x5C3F, 0x5C3E, 0x5C90, 0x5C91, 0x5C94, - 0x5C8C, 0x5DEB, 0x5E0C, 0x5E8F, 0x5E87, 0x5E8A, 0x5EF7, 0x5F04, - 0x5F1F, 0x5F64, 0x5F62, 0x5F77, 0x5F79, 0x5FD8, 0x5FCC, 0x5FD7, - 0x5FCD, 0x5FF1, 0x5FEB, 0x5FF8, 0x5FEA, 0x6212, 0x6211, 0x6284, - 0x6297, 0x6296, 0x6280, 0x6276, 0x6289, 0x626D, 0x628A, 0x627C, - 0x627E, 0x6279, 0x6273, 0x6292, 0x626F, 0x6298, 0x626E, 0x6295, - 0x6293, 0x6291, 0x6286, 0x6539, 0x653B, 0x6538, 0x65F1, 0x66F4, - 0x675F, 0x674E, 0x674F, 0x6750, 0x6751, 0x675C, 0x6756, 0x675E, - 0x6749, 0x6746, 0x6760, 0x6753, 0x6757, 0x6B65, 0x6BCF, 0x6C42, - 0x6C5E, 0x6C99, 0x6C81, 0x6C88, 0x6C89, 0x6C85, 0x6C9B, 0x6C6A, - 0x6C7A, 0x6C90, 0x6C70, 0x6C8C, 0x6C68, 0x6C96, 0x6C92, 0x6C7D, - 0x6C83, 0x6C72, 0x6C7E, 0x6C74, 0x6C86, 0x6C76, 0x6C8D, 0x6C94, - 0x6C98, 0x6C82, 0x7076, 0x707C, 0x707D, 0x7078, 0x7262, 0x7261, - 0x7260, 0x72C4, 0x72C2, 0x7396, 0x752C, 0x752B, 0x7537, 0x7538, - 0x7682, 0x76EF, 0x77E3, 0x79C1, 0x79C0, 0x79BF, 0x7A76, 0x7CFB, - 0x7F55, 0x8096, 0x8093, 0x809D, 0x8098, 0x809B, 0x809A, 0x80B2, - 0x826F, 0x8292, 0x828B, 0x828D, 0x898B, 0x89D2, 0x8A00, 0x8C37, - 0x8C46, 0x8C55, 0x8C9D, 0x8D64, 0x8D70, 0x8DB3, 0x8EAB, 0x8ECA, - 0x8F9B, 0x8FB0, 0x8FC2, 0x8FC6, 0x8FC5, 0x8FC4, 0x5DE1, 0x9091, - 0x90A2, 0x90AA, 0x90A6, 0x90A3, 0x9149, 0x91C6, 0x91CC, 0x9632, - 0x962E, 0x9631, 0x962A, 0x962C, 0x4E26, 0x4E56, 0x4E73, 0x4E8B, - 0x4E9B, 0x4E9E, 0x4EAB, 0x4EAC, 0x4F6F, 0x4F9D, 0x4F8D, 0x4F73, - 0x4F7F, 0x4F6C, 0x4F9B, 0x4F8B, 0x4F86, 0x4F83, 0x4F70, 0x4F75, - 0x4F88, 0x4F69, 0x4F7B, 0x4F96, 0x4F7E, 0x4F8F, 0x4F91, 0x4F7A, - 0x5154, 0x5152, 0x5155, 0x5169, 0x5177, 0x5176, 0x5178, 0x51BD, - 0x51FD, 0x523B, 0x5238, 0x5237, 0x523A, 0x5230, 0x522E, 0x5236, - 0x5241, 0x52BE, 0x52BB, 0x5352, 0x5354, 0x5353, 0x5351, 0x5366, - 0x5377, 0x5378, 0x5379, 0x53D6, 0x53D4, 0x53D7, 0x5473, 0x5475, - 0x5496, 0x5478, 0x5495, 0x5480, 0x547B, 0x5477, 0x5484, 0x5492, - 0x5486, 0x547C, 0x5490, 0x5471, 0x5476, 0x548C, 0x549A, 0x5462, - 0x5468, 0x548B, 0x547D, 0x548E, 0x56FA, 0x5783, 0x5777, 0x576A, -plane 06 -at 0x00 - 0x5769, 0x5761, 0x5766, 0x5764, 0x577C, 0x591C, 0x5949, 0x5947, - 0x5948, 0x5944, 0x5954, 0x59BE, 0x59BB, 0x59D4, 0x59B9, 0x59AE, - 0x59D1, 0x59C6, 0x59D0, 0x59CD, 0x59CB, 0x59D3, 0x59CA, 0x59AF, - 0x59B3, 0x59D2, 0x59C5, 0x5B5F, 0x5B64, 0x5B63, 0x5B97, 0x5B9A, - 0x5B98, 0x5B9C, 0x5B99, 0x5B9B, 0x5C1A, 0x5C48, 0x5C45, 0x5C46, - 0x5CB7, 0x5CA1, 0x5CB8, 0x5CA9, 0x5CAB, 0x5CB1, 0x5CB3, 0x5E18, - 0x5E1A, 0x5E16, 0x5E15, 0x5E1B, 0x5E11, 0x5E78, 0x5E9A, 0x5E97, - 0x5E9C, 0x5E95, 0x5E96, 0x5EF6, 0x5F26, 0x5F27, 0x5F29, 0x5F80, - 0x5F81, 0x5F7F, 0x5F7C, 0x5FDD, 0x5FE0, 0x5FFD, 0x5FF5, 0x5FFF, - 0x600F, 0x6014, 0x602F, 0x6035, 0x6016, 0x602A, 0x6015, 0x6021, - 0x6027, 0x6029, 0x602B, 0x601B, 0x6216, 0x6215, 0x623F, 0x623E, - 0x6240, 0x627F, 0x62C9, 0x62CC, 0x62C4, 0x62BF, 0x62C2, 0x62B9, - 0x62D2, 0x62DB, 0x62AB, 0x62D3, 0x62D4, 0x62CB, 0x62C8, 0x62A8, - 0x62BD, 0x62BC, 0x62D0, 0x62D9, 0x62C7, 0x62CD, 0x62B5, 0x62DA, - 0x62B1, 0x62D8, 0x62D6, 0x62D7, 0x62C6, 0x62AC, 0x62CE, 0x653E, - 0x65A7, 0x65BC, 0x65FA, 0x6614, 0x6613, 0x660C, 0x6606, 0x6602, - 0x660E, 0x6600, 0x660F, 0x6615, 0x660A, 0x6607, 0x670D, 0x670B, - 0x676D, 0x678B, 0x6795, 0x6771, 0x679C, 0x6773, 0x6777, 0x6787, - 0x679D, 0x6797, 0x676F, 0x6770, 0x677F, 0x6789, 0x677E, 0x6790, - 0x6775, 0x679A, 0x6793, 0x677C, 0x676A, 0x6772, 0x6B23, 0x6B66, - 0x6B67, 0x6B7F, 0x6C13, 0x6C1B, 0x6CE3, 0x6CE8, 0x6CF3, 0x6CB1, - 0x6CCC, 0x6CE5, 0x6CB3, 0x6CBD, 0x6CBE, 0x6CBC, 0x6CE2, 0x6CAB, - 0x6CD5, 0x6CD3, 0x6CB8, 0x6CC4, 0x6CB9, 0x6CC1, 0x6CAE, 0x6CD7, - 0x6CC5, 0x6CF1, 0x6CBF, 0x6CBB, 0x6CE1, 0x6CDB, 0x6CCA, 0x6CAC, - 0x6CEF, 0x6CDC, 0x6CD6, 0x6CE0, 0x7095, 0x708E, 0x7092, 0x708A, - 0x7099, 0x722C, 0x722D, 0x7238, 0x7248, 0x7267, 0x7269, 0x72C0, - 0x72CE, 0x72D9, 0x72D7, 0x72D0, 0x73A9, 0x73A8, 0x739F, 0x73AB, - 0x73A5, 0x753D, 0x759D, 0x7599, 0x759A, 0x7684, 0x76C2, 0x76F2, - 0x76F4, 0x77E5, 0x77FD, 0x793E, 0x7940, 0x7941, 0x79C9, 0x79C8, - 0x7A7A, 0x7A79, 0x7AFA, 0x7CFE, 0x7F54, 0x7F8C, 0x7F8B, 0x8005, - 0x80BA, 0x80A5, 0x80A2, 0x80B1, 0x80A1, 0x80AB, 0x80A9, 0x80B4, - 0x80AA, 0x80AF, 0x81E5, 0x81FE, 0x820D, 0x82B3, 0x829D, 0x8299, -plane 07 -at 0x00 - 0x82AD, 0x82BD, 0x829F, 0x82B9, 0x82B1, 0x82AC, 0x82A5, 0x82AF, - 0x82B8, 0x82A3, 0x82B0, 0x82BE, 0x82B7, 0x864E, 0x8671, 0x521D, - 0x8868, 0x8ECB, 0x8FCE, 0x8FD4, 0x8FD1, 0x90B5, 0x90B8, 0x90B1, - 0x90B6, 0x91C7, 0x91D1, 0x9577, 0x9580, 0x961C, 0x9640, 0x963F, - 0x963B, 0x9644, 0x9642, 0x96B9, 0x96E8, 0x9752, 0x975E, 0x4E9F, - 0x4EAD, 0x4EAE, 0x4FE1, 0x4FB5, 0x4FAF, 0x4FBF, 0x4FE0, 0x4FD1, - 0x4FCF, 0x4FDD, 0x4FC3, 0x4FB6, 0x4FD8, 0x4FDF, 0x4FCA, 0x4FD7, - 0x4FAE, 0x4FD0, 0x4FC4, 0x4FC2, 0x4FDA, 0x4FCE, 0x4FDE, 0x4FB7, - 0x5157, 0x5192, 0x5191, 0x51A0, 0x524E, 0x5243, 0x524A, 0x524D, - 0x524C, 0x524B, 0x5247, 0x52C7, 0x52C9, 0x52C3, 0x52C1, 0x530D, - 0x5357, 0x537B, 0x539A, 0x53DB, 0x54AC, 0x54C0, 0x54A8, 0x54CE, - 0x54C9, 0x54B8, 0x54A6, 0x54B3, 0x54C7, 0x54C2, 0x54BD, 0x54AA, - 0x54C1, 0x54C4, 0x54C8, 0x54AF, 0x54AB, 0x54B1, 0x54BB, 0x54A9, - 0x54A7, 0x54BF, 0x56FF, 0x5782, 0x578B, 0x57A0, 0x57A3, 0x57A2, - 0x57CE, 0x57AE, 0x5793, 0x5955, 0x5951, 0x594F, 0x594E, 0x5950, - 0x59DC, 0x59D8, 0x59FF, 0x59E3, 0x59E8, 0x5A03, 0x59E5, 0x59EA, - 0x59DA, 0x59E6, 0x5A01, 0x59FB, 0x5B69, 0x5BA3, 0x5BA6, 0x5BA4, - 0x5BA2, 0x5BA5, 0x5C01, 0x5C4E, 0x5C4F, 0x5C4D, 0x5C4B, 0x5CD9, - 0x5CD2, 0x5DF7, 0x5E1D, 0x5E25, 0x5E1F, 0x5E7D, 0x5EA0, 0x5EA6, - 0x5EFA, 0x5F08, 0x5F2D, 0x5F65, 0x5F88, 0x5F85, 0x5F8A, 0x5F8B, - 0x5F87, 0x5F8C, 0x5F89, 0x6012, 0x601D, 0x6020, 0x6025, 0x600E, - 0x6028, 0x604D, 0x6070, 0x6068, 0x6062, 0x6046, 0x6043, 0x606C, - 0x606B, 0x606A, 0x6064, 0x6241, 0x62DC, 0x6316, 0x6309, 0x62FC, - 0x62ED, 0x6301, 0x62EE, 0x62FD, 0x6307, 0x62F1, 0x62F7, 0x62EF, - 0x62EC, 0x62FE, 0x62F4, 0x6311, 0x6302, 0x653F, 0x6545, 0x65AB, - 0x65BD, 0x65E2, 0x6625, 0x662D, 0x6620, 0x6627, 0x662F, 0x661F, - 0x6628, 0x6631, 0x6624, 0x66F7, 0x67FF, 0x67D3, 0x67F1, 0x67D4, - 0x67D0, 0x67EC, 0x67B6, 0x67AF, 0x67F5, 0x67E9, 0x67EF, 0x67C4, - 0x67D1, 0x67B4, 0x67DA, 0x67E5, 0x67B8, 0x67CF, 0x67DE, 0x67F3, - 0x67B0, 0x67D9, 0x67E2, 0x67DD, 0x67D2, 0x6B6A, 0x6B83, 0x6B86, - 0x6BB5, 0x6BD2, 0x6BD7, 0x6C1F, 0x6CC9, 0x6D0B, 0x6D32, 0x6D2A, - 0x6D41, 0x6D25, 0x6D0C, 0x6D31, 0x6D1E, 0x6D17, 0x6D3B, 0x6D3D, -plane 08 -at 0x00 - 0x6D3E, 0x6D36, 0x6D1B, 0x6CF5, 0x6D39, 0x6D27, 0x6D38, 0x6D29, - 0x6D2E, 0x6D35, 0x6D0E, 0x6D2B, 0x70AB, 0x70BA, 0x70B3, 0x70AC, - 0x70AF, 0x70AD, 0x70B8, 0x70AE, 0x70A4, 0x7230, 0x7272, 0x726F, - 0x7274, 0x72E9, 0x72E0, 0x72E1, 0x73B7, 0x73CA, 0x73BB, 0x73B2, - 0x73CD, 0x73C0, 0x73B3, 0x751A, 0x752D, 0x754F, 0x754C, 0x754E, - 0x754B, 0x75AB, 0x75A4, 0x75A5, 0x75A2, 0x75A3, 0x7678, 0x7686, - 0x7687, 0x7688, 0x76C8, 0x76C6, 0x76C3, 0x76C5, 0x7701, 0x76F9, - 0x76F8, 0x7709, 0x770B, 0x76FE, 0x76FC, 0x7707, 0x77DC, 0x7802, - 0x7814, 0x780C, 0x780D, 0x7946, 0x7949, 0x7948, 0x7947, 0x79B9, - 0x79BA, 0x79D1, 0x79D2, 0x79CB, 0x7A7F, 0x7A81, 0x7AFF, 0x7AFD, - 0x7C7D, 0x7D02, 0x7D05, 0x7D00, 0x7D09, 0x7D07, 0x7D04, 0x7D06, - 0x7F38, 0x7F8E, 0x7FBF, 0x8004, 0x8010, 0x800D, 0x8011, 0x8036, - 0x80D6, 0x80E5, 0x80DA, 0x80C3, 0x80C4, 0x80CC, 0x80E1, 0x80DB, - 0x80CE, 0x80DE, 0x80E4, 0x80DD, 0x81F4, 0x8222, 0x82E7, 0x8303, - 0x8305, 0x82E3, 0x82DB, 0x82E6, 0x8304, 0x82E5, 0x8302, 0x8309, - 0x82D2, 0x82D7, 0x82F1, 0x8301, 0x82DC, 0x82D4, 0x82D1, 0x82DE, - 0x82D3, 0x82DF, 0x82EF, 0x8306, 0x8650, 0x8679, 0x867B, 0x867A, - 0x884D, 0x886B, 0x8981, 0x89D4, 0x8A08, 0x8A02, 0x8A03, 0x8C9E, - 0x8CA0, 0x8D74, 0x8D73, 0x8DB4, 0x8ECD, 0x8ECC, 0x8FF0, 0x8FE6, - 0x8FE2, 0x8FEA, 0x8FE5, 0x8FED, 0x8FEB, 0x8FE4, 0x8FE8, 0x90CA, - 0x90CE, 0x90C1, 0x90C3, 0x914B, 0x914A, 0x91CD, 0x9582, 0x9650, - 0x964B, 0x964C, 0x964D, 0x9762, 0x9769, 0x97CB, 0x97ED, 0x97F3, - 0x9801, 0x98A8, 0x98DB, 0x98DF, 0x9996, 0x9999, 0x4E58, 0x4EB3, - 0x500C, 0x500D, 0x5023, 0x4FEF, 0x5026, 0x5025, 0x4FF8, 0x5029, - 0x5016, 0x5006, 0x503C, 0x501F, 0x501A, 0x5012, 0x5011, 0x4FFA, - 0x5000, 0x5014, 0x5028, 0x4FF1, 0x5021, 0x500B, 0x5019, 0x5018, - 0x4FF3, 0x4FEE, 0x502D, 0x502A, 0x4FFE, 0x502B, 0x5009, 0x517C, - 0x51A4, 0x51A5, 0x51A2, 0x51CD, 0x51CC, 0x51C6, 0x51CB, 0x5256, - 0x525C, 0x5254, 0x525B, 0x525D, 0x532A, 0x537F, 0x539F, 0x539D, - 0x53DF, 0x54E8, 0x5510, 0x5501, 0x5537, 0x54FC, 0x54E5, 0x54F2, - 0x5506, 0x54FA, 0x5514, 0x54E9, 0x54ED, 0x54E1, 0x5509, 0x54EE, - 0x54EA, 0x54E6, 0x5527, 0x5507, 0x54FD, 0x550F, 0x5703, 0x5704, -plane 09 -at 0x00 - 0x57C2, 0x57D4, 0x57CB, 0x57C3, 0x5809, 0x590F, 0x5957, 0x5958, - 0x595A, 0x5A11, 0x5A18, 0x5A1C, 0x5A1F, 0x5A1B, 0x5A13, 0x59EC, - 0x5A20, 0x5A23, 0x5A29, 0x5A25, 0x5A0C, 0x5A09, 0x5B6B, 0x5C58, - 0x5BB0, 0x5BB3, 0x5BB6, 0x5BB4, 0x5BAE, 0x5BB5, 0x5BB9, 0x5BB8, - 0x5C04, 0x5C51, 0x5C55, 0x5C50, 0x5CED, 0x5CFD, 0x5CFB, 0x5CEA, - 0x5CE8, 0x5CF0, 0x5CF6, 0x5D01, 0x5CF4, 0x5DEE, 0x5E2D, 0x5E2B, - 0x5EAB, 0x5EAD, 0x5EA7, 0x5F31, 0x5F92, 0x5F91, 0x5F90, 0x6059, - 0x6063, 0x6065, 0x6050, 0x6055, 0x606D, 0x6069, 0x606F, 0x6084, - 0x609F, 0x609A, 0x608D, 0x6094, 0x608C, 0x6085, 0x6096, 0x6247, - 0x62F3, 0x6308, 0x62FF, 0x634E, 0x633E, 0x632F, 0x6355, 0x6342, - 0x6346, 0x634F, 0x6349, 0x633A, 0x6350, 0x633D, 0x632A, 0x632B, - 0x6328, 0x634D, 0x634C, 0x6548, 0x6549, 0x6599, 0x65C1, 0x65C5, - 0x6642, 0x6649, 0x664F, 0x6643, 0x6652, 0x664C, 0x6645, 0x6641, - 0x66F8, 0x6714, 0x6715, 0x6717, 0x6821, 0x6838, 0x6848, 0x6846, - 0x6853, 0x6839, 0x6842, 0x6854, 0x6829, 0x68B3, 0x6817, 0x684C, - 0x6851, 0x683D, 0x67F4, 0x6850, 0x6840, 0x683C, 0x6843, 0x682A, - 0x6845, 0x6813, 0x6818, 0x6841, 0x6B8A, 0x6B89, 0x6BB7, 0x6C23, - 0x6C27, 0x6C28, 0x6C26, 0x6C24, 0x6CF0, 0x6D6A, 0x6D95, 0x6D88, - 0x6D87, 0x6D66, 0x6D78, 0x6D77, 0x6D59, 0x6D93, 0x6D6C, 0x6D89, - 0x6D6E, 0x6D5A, 0x6D74, 0x6D69, 0x6D8C, 0x6D8A, 0x6D79, 0x6D85, - 0x6D65, 0x6D94, 0x70CA, 0x70D8, 0x70E4, 0x70D9, 0x70C8, 0x70CF, - 0x7239, 0x7279, 0x72FC, 0x72F9, 0x72FD, 0x72F8, 0x72F7, 0x7386, - 0x73ED, 0x7409, 0x73EE, 0x73E0, 0x73EA, 0x73DE, 0x7554, 0x755D, - 0x755C, 0x755A, 0x7559, 0x75BE, 0x75C5, 0x75C7, 0x75B2, 0x75B3, - 0x75BD, 0x75BC, 0x75B9, 0x75C2, 0x75B8, 0x768B, 0x76B0, 0x76CA, - 0x76CD, 0x76CE, 0x7729, 0x771F, 0x7720, 0x7728, 0x77E9, 0x7830, - 0x7827, 0x7838, 0x781D, 0x7834, 0x7837, 0x7825, 0x782D, 0x7820, - 0x781F, 0x7832, 0x7955, 0x7950, 0x7960, 0x795F, 0x7956, 0x795E, - 0x795D, 0x7957, 0x795A, 0x79E4, 0x79E3, 0x79E7, 0x79DF, 0x79E6, - 0x79E9, 0x79D8, 0x7A84, 0x7A88, 0x7AD9, 0x7B06, 0x7B11, 0x7C89, - 0x7D21, 0x7D17, 0x7D0B, 0x7D0A, 0x7D20, 0x7D22, 0x7D14, 0x7D10, - 0x7D15, 0x7D1A, 0x7D1C, 0x7D0D, 0x7D19, 0x7D1B, 0x7F3A, 0x7F5F, -plane 10 -at 0x00 - 0x7F94, 0x7FC5, 0x7FC1, 0x8006, 0x8018, 0x8015, 0x8019, 0x8017, - 0x803D, 0x803F, 0x80F1, 0x8102, 0x80F0, 0x8105, 0x80ED, 0x80F4, - 0x8106, 0x80F8, 0x80F3, 0x8108, 0x80FD, 0x810A, 0x80FC, 0x80EF, - 0x81ED, 0x81EC, 0x8200, 0x8210, 0x822A, 0x822B, 0x8228, 0x822C, - 0x82BB, 0x832B, 0x8352, 0x8354, 0x834A, 0x8338, 0x8350, 0x8349, - 0x8335, 0x8334, 0x834F, 0x8332, 0x8339, 0x8336, 0x8317, 0x8340, - 0x8331, 0x8328, 0x8343, 0x8654, 0x868A, 0x86AA, 0x8693, 0x86A4, - 0x86A9, 0x868C, 0x86A3, 0x869C, 0x8870, 0x8877, 0x8881, 0x8882, - 0x887D, 0x8879, 0x8A18, 0x8A10, 0x8A0E, 0x8A0C, 0x8A15, 0x8A0A, - 0x8A17, 0x8A13, 0x8A16, 0x8A0F, 0x8A11, 0x8C48, 0x8C7A, 0x8C79, - 0x8CA1, 0x8CA2, 0x8D77, 0x8EAC, 0x8ED2, 0x8ED4, 0x8ECF, 0x8FB1, - 0x9001, 0x9006, 0x8FF7, 0x9000, 0x8FFA, 0x8FF4, 0x9003, 0x8FFD, - 0x9005, 0x8FF8, 0x9095, 0x90E1, 0x90DD, 0x90E2, 0x9152, 0x914D, - 0x914C, 0x91D8, 0x91DD, 0x91D7, 0x91DC, 0x91D9, 0x9583, 0x9662, - 0x9663, 0x9661, 0x965B, 0x965D, 0x9664, 0x9658, 0x965E, 0x96BB, - 0x98E2, 0x99AC, 0x9AA8, 0x9AD8, 0x9B25, 0x9B32, 0x9B3C, 0x4E7E, - 0x507A, 0x507D, 0x505C, 0x5047, 0x5043, 0x504C, 0x505A, 0x5049, - 0x5065, 0x5076, 0x504E, 0x5055, 0x5075, 0x5074, 0x5077, 0x504F, - 0x500F, 0x506F, 0x506D, 0x515C, 0x5195, 0x51F0, 0x526A, 0x526F, - 0x52D2, 0x52D9, 0x52D8, 0x52D5, 0x5310, 0x530F, 0x5319, 0x533F, - 0x5340, 0x533E, 0x53C3, 0x66FC, 0x5546, 0x556A, 0x5566, 0x5544, - 0x555E, 0x5561, 0x5543, 0x554A, 0x5531, 0x5556, 0x554F, 0x5555, - 0x552F, 0x5564, 0x5538, 0x552E, 0x555C, 0x552C, 0x5563, 0x5533, - 0x5541, 0x5557, 0x5708, 0x570B, 0x5709, 0x57DF, 0x5805, 0x580A, - 0x5806, 0x57E0, 0x57E4, 0x57FA, 0x5802, 0x5835, 0x57F7, 0x57F9, - 0x5920, 0x5962, 0x5A36, 0x5A41, 0x5A49, 0x5A66, 0x5A6A, 0x5A40, - 0x5A3C, 0x5A62, 0x5A5A, 0x5A46, 0x5A4A, 0x5B70, 0x5BC7, 0x5BC5, - 0x5BC4, 0x5BC2, 0x5BBF, 0x5BC6, 0x5C09, 0x5C08, 0x5C07, 0x5C60, - 0x5C5C, 0x5C5D, 0x5D07, 0x5D06, 0x5D0E, 0x5D1B, 0x5D16, 0x5D22, - 0x5D11, 0x5D29, 0x5D14, 0x5D19, 0x5D24, 0x5D27, 0x5D17, 0x5DE2, - 0x5E38, 0x5E36, 0x5E33, 0x5E37, 0x5EB7, 0x5EB8, 0x5EB6, 0x5EB5, - 0x5EBE, 0x5F35, 0x5F37, 0x5F57, 0x5F6C, 0x5F69, 0x5F6B, 0x5F97, -plane 11 -at 0x00 - 0x5F99, 0x5F9E, 0x5F98, 0x5FA1, 0x5FA0, 0x5F9C, 0x607F, 0x60A3, - 0x6089, 0x60A0, 0x60A8, 0x60CB, 0x60B4, 0x60E6, 0x60BD, 0x60C5, - 0x60BB, 0x60B5, 0x60DC, 0x60BC, 0x60D8, 0x60D5, 0x60C6, 0x60DF, - 0x60B8, 0x60DA, 0x60C7, 0x621A, 0x621B, 0x6248, 0x63A0, 0x63A7, - 0x6372, 0x6396, 0x63A2, 0x63A5, 0x6377, 0x6367, 0x6398, 0x63AA, - 0x6371, 0x63A9, 0x6389, 0x6383, 0x639B, 0x636B, 0x63A8, 0x6384, - 0x6388, 0x6399, 0x63A1, 0x63AC, 0x6392, 0x638F, 0x6380, 0x637B, - 0x6369, 0x6368, 0x637A, 0x655D, 0x6556, 0x6551, 0x6559, 0x6557, - 0x555F, 0x654F, 0x6558, 0x6555, 0x6554, 0x659C, 0x659B, 0x65AC, - 0x65CF, 0x65CB, 0x65CC, 0x65CE, 0x665D, 0x665A, 0x6664, 0x6668, - 0x6666, 0x665E, 0x66F9, 0x52D7, 0x671B, 0x6881, 0x68AF, 0x68A2, - 0x6893, 0x68B5, 0x687F, 0x6876, 0x68B1, 0x68A7, 0x6897, 0x68B0, - 0x6883, 0x68C4, 0x68AD, 0x6886, 0x6885, 0x6894, 0x689D, 0x68A8, - 0x689F, 0x68A1, 0x6882, 0x6B32, 0x6BBA, 0x6BEB, 0x6BEC, 0x6C2B, - 0x6D8E, 0x6DBC, 0x6DF3, 0x6DD9, 0x6DB2, 0x6DE1, 0x6DCC, 0x6DE4, - 0x6DFB, 0x6DFA, 0x6E05, 0x6DC7, 0x6DCB, 0x6DAF, 0x6DD1, 0x6DAE, - 0x6DDE, 0x6DF9, 0x6DB8, 0x6DF7, 0x6DF5, 0x6DC5, 0x6DD2, 0x6E1A, - 0x6DB5, 0x6DDA, 0x6DEB, 0x6DD8, 0x6DEA, 0x6DF1, 0x6DEE, 0x6DE8, - 0x6DC6, 0x6DC4, 0x6DAA, 0x6DEC, 0x6DBF, 0x6DE6, 0x70F9, 0x7109, - 0x710A, 0x70FD, 0x70EF, 0x723D, 0x727D, 0x7281, 0x731C, 0x731B, - 0x7316, 0x7313, 0x7319, 0x7387, 0x7405, 0x740A, 0x7403, 0x7406, - 0x73FE, 0x740D, 0x74E0, 0x74F6, 0x74F7, 0x751C, 0x7522, 0x7565, - 0x7566, 0x7562, 0x7570, 0x758F, 0x75D4, 0x75D5, 0x75B5, 0x75CA, - 0x75CD, 0x768E, 0x76D4, 0x76D2, 0x76DB, 0x7737, 0x773E, 0x773C, - 0x7736, 0x7738, 0x773A, 0x786B, 0x7843, 0x784E, 0x7965, 0x7968, - 0x796D, 0x79FB, 0x7A92, 0x7A95, 0x7B20, 0x7B28, 0x7B1B, 0x7B2C, - 0x7B26, 0x7B19, 0x7B1E, 0x7B2E, 0x7C92, 0x7C97, 0x7C95, 0x7D46, - 0x7D43, 0x7D71, 0x7D2E, 0x7D39, 0x7D3C, 0x7D40, 0x7D30, 0x7D33, - 0x7D44, 0x7D2F, 0x7D42, 0x7D32, 0x7D31, 0x7F3D, 0x7F9E, 0x7F9A, - 0x7FCC, 0x7FCE, 0x7FD2, 0x801C, 0x804A, 0x8046, 0x812F, 0x8116, - 0x8123, 0x812B, 0x8129, 0x8130, 0x8124, 0x8202, 0x8235, 0x8237, - 0x8236, 0x8239, 0x838E, 0x839E, 0x8398, 0x8378, 0x83A2, 0x8396, -plane 12 -at 0x00 - 0x83BD, 0x83AB, 0x8392, 0x838A, 0x8393, 0x8389, 0x83A0, 0x8377, - 0x837B, 0x837C, 0x8386, 0x83A7, 0x8655, 0x5F6A, 0x86C7, 0x86C0, - 0x86B6, 0x86C4, 0x86B5, 0x86C6, 0x86CB, 0x86B1, 0x86AF, 0x86C9, - 0x8853, 0x889E, 0x8888, 0x88AB, 0x8892, 0x8896, 0x888D, 0x888B, - 0x8993, 0x898F, 0x8A2A, 0x8A1D, 0x8A23, 0x8A25, 0x8A31, 0x8A2D, - 0x8A1F, 0x8A1B, 0x8A22, 0x8C49, 0x8C5A, 0x8CA9, 0x8CAC, 0x8CAB, - 0x8CA8, 0x8CAA, 0x8CA7, 0x8D67, 0x8D66, 0x8DBE, 0x8DBA, 0x8EDB, - 0x8EDF, 0x9019, 0x900D, 0x901A, 0x9017, 0x9023, 0x901F, 0x901D, - 0x9010, 0x9015, 0x901E, 0x9020, 0x900F, 0x9022, 0x9016, 0x901B, - 0x9014, 0x90E8, 0x90ED, 0x90FD, 0x9157, 0x91CE, 0x91F5, 0x91E6, - 0x91E3, 0x91E7, 0x91ED, 0x91E9, 0x9589, 0x966A, 0x9675, 0x9673, - 0x9678, 0x9670, 0x9674, 0x9676, 0x9677, 0x966C, 0x96C0, 0x96EA, - 0x96E9, 0x7AE0, 0x7ADF, 0x9802, 0x9803, 0x9B5A, 0x9CE5, 0x9E75, - 0x9E7F, 0x9EA5, 0x9EBB, 0x50A2, 0x508D, 0x5085, 0x5099, 0x5091, - 0x5080, 0x5096, 0x5098, 0x509A, 0x6700, 0x51F1, 0x5272, 0x5274, - 0x5275, 0x5269, 0x52DE, 0x52DD, 0x52DB, 0x535A, 0x53A5, 0x557B, - 0x5580, 0x55A7, 0x557C, 0x558A, 0x559D, 0x5598, 0x5582, 0x559C, - 0x55AA, 0x5594, 0x5587, 0x558B, 0x5583, 0x55B3, 0x55AE, 0x559F, - 0x553E, 0x55B2, 0x559A, 0x55BB, 0x55AC, 0x55B1, 0x557E, 0x5589, - 0x55AB, 0x5599, 0x570D, 0x582F, 0x582A, 0x5834, 0x5824, 0x5830, - 0x5831, 0x5821, 0x581D, 0x5820, 0x58F9, 0x58FA, 0x5960, 0x5A77, - 0x5A9A, 0x5A7F, 0x5A92, 0x5A9B, 0x5AA7, 0x5B73, 0x5B71, 0x5BD2, - 0x5BCC, 0x5BD3, 0x5BD0, 0x5C0A, 0x5C0B, 0x5C31, 0x5D4C, 0x5D50, - 0x5D34, 0x5D47, 0x5DFD, 0x5E45, 0x5E3D, 0x5E40, 0x5E43, 0x5E7E, - 0x5ECA, 0x5EC1, 0x5EC2, 0x5EC4, 0x5F3C, 0x5F6D, 0x5FA9, 0x5FAA, - 0x5FA8, 0x60D1, 0x60E1, 0x60B2, 0x60B6, 0x60E0, 0x611C, 0x6123, - 0x60FA, 0x6115, 0x60F0, 0x60FB, 0x60F4, 0x6168, 0x60F1, 0x610E, - 0x60F6, 0x6109, 0x6100, 0x6112, 0x621F, 0x6249, 0x63A3, 0x638C, - 0x63CF, 0x63C0, 0x63E9, 0x63C9, 0x63C6, 0x63CD, 0x63D2, 0x63E3, - 0x63D0, 0x63E1, 0x63D6, 0x63ED, 0x63EE, 0x6376, 0x63F4, 0x63EA, - 0x63DB, 0x6452, 0x63DA, 0x63F9, 0x655E, 0x6566, 0x6562, 0x6563, - 0x6591, 0x6590, 0x65AF, 0x666E, 0x6670, 0x6674, 0x6676, 0x666F, -plane 13 -at 0x00 - 0x6691, 0x667A, 0x667E, 0x6677, 0x66FE, 0x66FF, 0x671F, 0x671D, - 0x68FA, 0x68D5, 0x68E0, 0x68D8, 0x68D7, 0x6905, 0x68DF, 0x68F5, - 0x68EE, 0x68E7, 0x68F9, 0x68D2, 0x68F2, 0x68E3, 0x68CB, 0x68CD, - 0x690D, 0x6912, 0x690E, 0x68C9, 0x68DA, 0x696E, 0x68FB, 0x6B3E, - 0x6B3A, 0x6B3D, 0x6B98, 0x6B96, 0x6BBC, 0x6BEF, 0x6C2E, 0x6C2F, - 0x6C2C, 0x6E2F, 0x6E38, 0x6E54, 0x6E21, 0x6E32, 0x6E67, 0x6E4A, - 0x6E20, 0x6E25, 0x6E23, 0x6E1B, 0x6E5B, 0x6E58, 0x6E24, 0x6E56, - 0x6E6E, 0x6E2D, 0x6E26, 0x6E6F, 0x6E34, 0x6E4D, 0x6E3A, 0x6E2C, - 0x6E43, 0x6E1D, 0x6E3E, 0x6ECB, 0x6E89, 0x6E19, 0x6E4E, 0x6E63, - 0x6E44, 0x6E72, 0x6E69, 0x6E5F, 0x7119, 0x711A, 0x7126, 0x7130, - 0x7121, 0x7136, 0x716E, 0x711C, 0x724C, 0x7284, 0x7280, 0x7336, - 0x7325, 0x7334, 0x7329, 0x743A, 0x742A, 0x7433, 0x7422, 0x7425, - 0x7435, 0x7436, 0x7434, 0x742F, 0x741B, 0x7426, 0x7428, 0x7525, - 0x7526, 0x756B, 0x756A, 0x75E2, 0x75DB, 0x75E3, 0x75D9, 0x75D8, - 0x75DE, 0x75E0, 0x767B, 0x767C, 0x7696, 0x7693, 0x76B4, 0x76DC, - 0x774F, 0x77ED, 0x785D, 0x786C, 0x786F, 0x7A0D, 0x7A08, 0x7A0B, - 0x7A05, 0x7A00, 0x7A98, 0x7A97, 0x7A96, 0x7AE5, 0x7AE3, 0x7B49, - 0x7B56, 0x7B46, 0x7B50, 0x7B52, 0x7B54, 0x7B4D, 0x7B4B, 0x7B4F, - 0x7B51, 0x7C9F, 0x7CA5, 0x7D5E, 0x7D50, 0x7D68, 0x7D55, 0x7D2B, - 0x7D6E, 0x7D72, 0x7D61, 0x7D66, 0x7D62, 0x7D70, 0x7D73, 0x5584, - 0x7FD4, 0x7FD5, 0x800B, 0x8052, 0x8085, 0x8155, 0x8154, 0x814B, - 0x8151, 0x814E, 0x8139, 0x8146, 0x813E, 0x814C, 0x8153, 0x8174, - 0x8212, 0x821C, 0x83E9, 0x8403, 0x83F8, 0x840D, 0x83E0, 0x83C5, - 0x840B, 0x83C1, 0x83EF, 0x83F1, 0x83F4, 0x8457, 0x840A, 0x83F0, - 0x840C, 0x83CC, 0x83FD, 0x83F2, 0x83CA, 0x8438, 0x840E, 0x8404, - 0x83DC, 0x8407, 0x83D4, 0x83DF, 0x865B, 0x86DF, 0x86D9, 0x86ED, - 0x86D4, 0x86DB, 0x86E4, 0x86D0, 0x86DE, 0x8857, 0x88C1, 0x88C2, - 0x88B1, 0x8983, 0x8996, 0x8A3B, 0x8A60, 0x8A55, 0x8A5E, 0x8A3C, - 0x8A41, 0x8A54, 0x8A5B, 0x8A50, 0x8A46, 0x8A34, 0x8A3A, 0x8A36, - 0x8A56, 0x8C61, 0x8C82, 0x8CAF, 0x8CBC, 0x8CB3, 0x8CBD, 0x8CC1, - 0x8CBB, 0x8CC0, 0x8CB4, 0x8CB7, 0x8CB6, 0x8CBF, 0x8CB8, 0x8D8A, - 0x8D85, 0x8D81, 0x8DCE, 0x8DDD, 0x8DCB, 0x8DDA, 0x8DD1, 0x8DCC, -plane 14 -at 0x00 - 0x8DDB, 0x8DC6, 0x8EFB, 0x8EF8, 0x8EFC, 0x8F9C, 0x902E, 0x9035, - 0x9031, 0x9038, 0x9032, 0x9036, 0x9102, 0x90F5, 0x9109, 0x90FE, - 0x9163, 0x9165, 0x91CF, 0x9214, 0x9215, 0x9223, 0x9209, 0x921E, - 0x920D, 0x9210, 0x9207, 0x9211, 0x9594, 0x958F, 0x958B, 0x9591, - 0x9593, 0x9592, 0x958E, 0x968A, 0x968E, 0x968B, 0x967D, 0x9685, - 0x9686, 0x968D, 0x9672, 0x9684, 0x96C1, 0x96C5, 0x96C4, 0x96C6, - 0x96C7, 0x96EF, 0x96F2, 0x97CC, 0x9805, 0x9806, 0x9808, 0x98E7, - 0x98EA, 0x98EF, 0x98E9, 0x98F2, 0x98ED, 0x99AE, 0x99AD, 0x9EC3, - 0x9ECD, 0x9ED1, 0x4E82, 0x50AD, 0x50B5, 0x50B2, 0x50B3, 0x50C5, - 0x50BE, 0x50AC, 0x50B7, 0x50BB, 0x50AF, 0x50C7, 0x527F, 0x5277, - 0x527D, 0x52DF, 0x52E6, 0x52E4, 0x52E2, 0x52E3, 0x532F, 0x55DF, - 0x55E8, 0x55D3, 0x55E6, 0x55CE, 0x55DC, 0x55C7, 0x55D1, 0x55E3, - 0x55E4, 0x55EF, 0x55DA, 0x55E1, 0x55C5, 0x55C6, 0x55E5, 0x55C9, - 0x5712, 0x5713, 0x585E, 0x5851, 0x5858, 0x5857, 0x585A, 0x5854, - 0x586B, 0x584C, 0x586D, 0x584A, 0x5862, 0x5852, 0x584B, 0x5967, - 0x5AC1, 0x5AC9, 0x5ACC, 0x5ABE, 0x5ABD, 0x5ABC, 0x5AB3, 0x5AC2, - 0x5AB2, 0x5D69, 0x5D6F, 0x5E4C, 0x5E79, 0x5EC9, 0x5EC8, 0x5F12, - 0x5F59, 0x5FAC, 0x5FAE, 0x611A, 0x610F, 0x6148, 0x611F, 0x60F3, - 0x611B, 0x60F9, 0x6101, 0x6108, 0x614E, 0x614C, 0x6144, 0x614D, - 0x613E, 0x6134, 0x6127, 0x610D, 0x6106, 0x6137, 0x6221, 0x6222, - 0x6413, 0x643E, 0x641E, 0x642A, 0x642D, 0x643D, 0x642C, 0x640F, - 0x641C, 0x6414, 0x640D, 0x6436, 0x6416, 0x6417, 0x6406, 0x656C, - 0x659F, 0x65B0, 0x6697, 0x6689, 0x6687, 0x6688, 0x6696, 0x6684, - 0x6698, 0x668D, 0x6703, 0x6994, 0x696D, 0x695A, 0x6977, 0x6960, - 0x6954, 0x6975, 0x6930, 0x6982, 0x694A, 0x6968, 0x696B, 0x695E, - 0x6953, 0x6979, 0x6986, 0x695D, 0x6963, 0x695B, 0x6B47, 0x6B72, - 0x6BC0, 0x6BBF, 0x6BD3, 0x6BFD, 0x6EA2, 0x6EAF, 0x6ED3, 0x6EB6, - 0x6EC2, 0x6E90, 0x6E9D, 0x6EC7, 0x6EC5, 0x6EA5, 0x6E98, 0x6EBC, - 0x6EBA, 0x6EAB, 0x6ED1, 0x6E96, 0x6E9C, 0x6EC4, 0x6ED4, 0x6EAA, - 0x6EA7, 0x6EB4, 0x714E, 0x7159, 0x7169, 0x7164, 0x7149, 0x7167, - 0x715C, 0x716C, 0x7166, 0x714C, 0x7165, 0x715E, 0x7146, 0x7168, - 0x7156, 0x723A, 0x7252, 0x7337, 0x7345, 0x733F, 0x733E, 0x746F, -plane 15 -at 0x00 - 0x745A, 0x7455, 0x745F, 0x745E, 0x7441, 0x743F, 0x7459, 0x745B, - 0x745C, 0x7576, 0x7578, 0x7600, 0x75F0, 0x7601, 0x75F2, 0x75F1, - 0x75FA, 0x75FF, 0x75F4, 0x75F3, 0x76DE, 0x76DF, 0x775B, 0x776B, - 0x7766, 0x775E, 0x7763, 0x7779, 0x776A, 0x776C, 0x775C, 0x7765, - 0x7768, 0x7762, 0x77EE, 0x788E, 0x78B0, 0x7897, 0x7898, 0x788C, - 0x7889, 0x787C, 0x7891, 0x7893, 0x787F, 0x797A, 0x797F, 0x7981, - 0x842C, 0x79BD, 0x7A1C, 0x7A1A, 0x7A20, 0x7A14, 0x7A1F, 0x7A1E, - 0x7A9F, 0x7AA0, 0x7B77, 0x7BC0, 0x7B60, 0x7B6E, 0x7B67, 0x7CB1, - 0x7CB3, 0x7CB5, 0x7D93, 0x7D79, 0x7D91, 0x7D81, 0x7D8F, 0x7D5B, - 0x7F6E, 0x7F69, 0x7F6A, 0x7F72, 0x7FA9, 0x7FA8, 0x7FA4, 0x8056, - 0x8058, 0x8086, 0x8084, 0x8171, 0x8170, 0x8178, 0x8165, 0x816E, - 0x8173, 0x816B, 0x8179, 0x817A, 0x8166, 0x8205, 0x8247, 0x8482, - 0x8477, 0x843D, 0x8431, 0x8475, 0x8466, 0x846B, 0x8449, 0x846C, - 0x845B, 0x843C, 0x8435, 0x8461, 0x8463, 0x8469, 0x846D, 0x8446, - 0x865E, 0x865C, 0x865F, 0x86F9, 0x8713, 0x8708, 0x8707, 0x8700, - 0x86FE, 0x86FB, 0x8702, 0x8703, 0x8706, 0x870A, 0x8859, 0x88DF, - 0x88D4, 0x88D9, 0x88DC, 0x88D8, 0x88DD, 0x88E1, 0x88CA, 0x88D5, - 0x88D2, 0x899C, 0x89E3, 0x8A6B, 0x8A72, 0x8A73, 0x8A66, 0x8A69, - 0x8A70, 0x8A87, 0x8A7C, 0x8A63, 0x8AA0, 0x8A71, 0x8A85, 0x8A6D, - 0x8A62, 0x8A6E, 0x8A6C, 0x8A79, 0x8A7B, 0x8A3E, 0x8A68, 0x8C62, - 0x8C8A, 0x8C89, 0x8CCA, 0x8CC7, 0x8CC8, 0x8CC4, 0x8CB2, 0x8CC3, - 0x8CC2, 0x8CC5, 0x8DE1, 0x8DDF, 0x8DE8, 0x8DEF, 0x8DF3, 0x8DFA, - 0x8DEA, 0x8DE4, 0x8DE6, 0x8EB2, 0x8F03, 0x8F09, 0x8EFE, 0x8F0A, - 0x8F9F, 0x8FB2, 0x904B, 0x904A, 0x9053, 0x9042, 0x9054, 0x903C, - 0x9055, 0x9050, 0x9047, 0x904F, 0x904E, 0x904D, 0x9051, 0x903E, - 0x9041, 0x9112, 0x9117, 0x916C, 0x916A, 0x9169, 0x91C9, 0x9237, - 0x9257, 0x9238, 0x923D, 0x9240, 0x923E, 0x925B, 0x924B, 0x9264, - 0x9251, 0x9234, 0x9249, 0x924D, 0x9245, 0x9239, 0x923F, 0x925A, - 0x9598, 0x9698, 0x9694, 0x9695, 0x96CD, 0x96CB, 0x96C9, 0x96CA, - 0x96F7, 0x96FB, 0x96F9, 0x96F6, 0x9756, 0x9774, 0x9776, 0x9810, - 0x9811, 0x9813, 0x980A, 0x9812, 0x980C, 0x98FC, 0x98F4, 0x98FD, - 0x98FE, 0x99B3, 0x99B1, 0x99B4, 0x9AE1, 0x9CE9, 0x9E82, 0x9F0E, -plane 16 -at 0x00 - 0x9F13, 0x9F20, 0x50E7, 0x50EE, 0x50E5, 0x50D6, 0x50ED, 0x50DA, - 0x50D5, 0x50CF, 0x50D1, 0x50F1, 0x50CE, 0x50E9, 0x5162, 0x51F3, - 0x5283, 0x5282, 0x5331, 0x53AD, 0x55FE, 0x5600, 0x561B, 0x5617, - 0x55FD, 0x5614, 0x5606, 0x5609, 0x560D, 0x560E, 0x55F7, 0x5616, - 0x561F, 0x5608, 0x5610, 0x55F6, 0x5718, 0x5716, 0x5875, 0x587E, - 0x5883, 0x5893, 0x588A, 0x5879, 0x5885, 0x587D, 0x58FD, 0x5925, - 0x5922, 0x5924, 0x596A, 0x5969, 0x5AE1, 0x5AE6, 0x5AE9, 0x5AD7, - 0x5AD6, 0x5AD8, 0x5AE3, 0x5B75, 0x5BDE, 0x5BE7, 0x5BE1, 0x5BE5, - 0x5BE6, 0x5BE8, 0x5BE2, 0x5BE4, 0x5BDF, 0x5C0D, 0x5C62, 0x5D84, - 0x5D87, 0x5E5B, 0x5E63, 0x5E55, 0x5E57, 0x5E54, 0x5ED3, 0x5ED6, - 0x5F0A, 0x5F46, 0x5F70, 0x5FB9, 0x6147, 0x613F, 0x614B, 0x6177, - 0x6162, 0x6163, 0x615F, 0x615A, 0x6158, 0x6175, 0x622A, 0x6487, - 0x6458, 0x6454, 0x64A4, 0x6478, 0x645F, 0x647A, 0x6451, 0x6467, - 0x6434, 0x646D, 0x647B, 0x6572, 0x65A1, 0x65D7, 0x65D6, 0x66A2, - 0x66A8, 0x669D, 0x699C, 0x69A8, 0x6995, 0x69C1, 0x69AE, 0x69D3, - 0x69CB, 0x699B, 0x69B7, 0x69BB, 0x69AB, 0x69B4, 0x69D0, 0x69CD, - 0x69AD, 0x69CC, 0x69A6, 0x69C3, 0x69A3, 0x6B49, 0x6B4C, 0x6C33, - 0x6F33, 0x6F14, 0x6EFE, 0x6F13, 0x6EF4, 0x6F29, 0x6F3E, 0x6F20, - 0x6F2C, 0x6F0F, 0x6F02, 0x6F22, 0x6EFF, 0x6EEF, 0x6F06, 0x6F31, - 0x6F38, 0x6F32, 0x6F23, 0x6F15, 0x6F2B, 0x6F2F, 0x6F88, 0x6F2A, - 0x6EEC, 0x6F01, 0x6EF2, 0x6ECC, 0x6EF7, 0x7194, 0x7199, 0x717D, - 0x718A, 0x7184, 0x7192, 0x723E, 0x7292, 0x7296, 0x7344, 0x7350, - 0x7464, 0x7463, 0x746A, 0x7470, 0x746D, 0x7504, 0x7591, 0x7627, - 0x760D, 0x760B, 0x7609, 0x7613, 0x76E1, 0x76E3, 0x7784, 0x777D, - 0x777F, 0x7761, 0x78C1, 0x789F, 0x78A7, 0x78B3, 0x78A9, 0x78A3, - 0x798E, 0x798F, 0x798D, 0x7A2E, 0x7A31, 0x7AAA, 0x7AA9, 0x7AED, - 0x7AEF, 0x7BA1, 0x7B95, 0x7B8B, 0x7B75, 0x7B97, 0x7B9D, 0x7B94, - 0x7B8F, 0x7BB8, 0x7B87, 0x7B84, 0x7CB9, 0x7CBD, 0x7CBE, 0x7DBB, - 0x7DB0, 0x7D9C, 0x7DBD, 0x7DBE, 0x7DA0, 0x7DCA, 0x7DB4, 0x7DB2, - 0x7DB1, 0x7DBA, 0x7DA2, 0x7DBF, 0x7DB5, 0x7DB8, 0x7DAD, 0x7DD2, - 0x7DC7, 0x7DAC, 0x7F70, 0x7FE0, 0x7FE1, 0x7FDF, 0x805E, 0x805A, - 0x8087, 0x8150, 0x8180, 0x818F, 0x8188, 0x818A, 0x817F, 0x8182, -plane 17 -at 0x00 - 0x81E7, 0x81FA, 0x8207, 0x8214, 0x821E, 0x824B, 0x84C9, 0x84BF, - 0x84C6, 0x84C4, 0x8499, 0x849E, 0x84B2, 0x849C, 0x84CB, 0x84B8, - 0x84C0, 0x84D3, 0x8490, 0x84BC, 0x84D1, 0x84CA, 0x873F, 0x871C, - 0x873B, 0x8722, 0x8725, 0x8734, 0x8718, 0x8755, 0x8737, 0x8729, - 0x88F3, 0x8902, 0x88F4, 0x88F9, 0x88F8, 0x88FD, 0x88E8, 0x891A, - 0x88EF, 0x8AA6, 0x8A8C, 0x8A9E, 0x8AA3, 0x8A8D, 0x8AA1, 0x8A93, - 0x8AA4, 0x8AAA, 0x8AA5, 0x8AA8, 0x8A98, 0x8A91, 0x8A9A, 0x8AA7, - 0x8C6A, 0x8C8D, 0x8C8C, 0x8CD3, 0x8CD1, 0x8CD2, 0x8D6B, 0x8D99, - 0x8D95, 0x8DFC, 0x8F14, 0x8F12, 0x8F15, 0x8F13, 0x8FA3, 0x9060, - 0x9058, 0x905C, 0x9063, 0x9059, 0x905E, 0x9062, 0x905D, 0x905B, - 0x9119, 0x9118, 0x911E, 0x9175, 0x9178, 0x9177, 0x9174, 0x9278, - 0x9280, 0x9285, 0x9298, 0x9296, 0x927B, 0x9293, 0x929C, 0x92A8, - 0x927C, 0x9291, 0x95A1, 0x95A8, 0x95A9, 0x95A3, 0x95A5, 0x95A4, - 0x9699, 0x969C, 0x969B, 0x96CC, 0x96D2, 0x9700, 0x977C, 0x9785, - 0x97F6, 0x9817, 0x9818, 0x98AF, 0x98B1, 0x9903, 0x9905, 0x990C, - 0x9909, 0x99C1, 0x9AAF, 0x9AB0, 0x9AE6, 0x9B41, 0x9B42, 0x9CF4, - 0x9CF6, 0x9CF3, 0x9EBC, 0x9F3B, 0x9F4A, 0x5104, 0x5100, 0x50FB, - 0x50F5, 0x50F9, 0x5102, 0x5108, 0x5109, 0x5105, 0x51DC, 0x5287, - 0x5288, 0x5289, 0x528D, 0x528A, 0x52F0, 0x53B2, 0x562E, 0x563B, - 0x5639, 0x5632, 0x563F, 0x5634, 0x5629, 0x5653, 0x564E, 0x5657, - 0x5674, 0x5636, 0x562F, 0x5630, 0x5880, 0x589F, 0x589E, 0x58B3, - 0x589C, 0x58AE, 0x58A9, 0x58A6, 0x596D, 0x5B09, 0x5AFB, 0x5B0B, - 0x5AF5, 0x5B0C, 0x5B08, 0x5BEE, 0x5BEC, 0x5BE9, 0x5BEB, 0x5C64, - 0x5C65, 0x5D9D, 0x5D94, 0x5E62, 0x5E5F, 0x5E61, 0x5EE2, 0x5EDA, - 0x5EDF, 0x5EDD, 0x5EE3, 0x5EE0, 0x5F48, 0x5F71, 0x5FB7, 0x5FB5, - 0x6176, 0x6167, 0x616E, 0x615D, 0x6155, 0x6182, 0x617C, 0x6170, - 0x616B, 0x617E, 0x61A7, 0x6190, 0x61AB, 0x618E, 0x61AC, 0x619A, - 0x61A4, 0x6194, 0x61AE, 0x622E, 0x6469, 0x646F, 0x6479, 0x649E, - 0x64B2, 0x6488, 0x6490, 0x64B0, 0x64A5, 0x6493, 0x6495, 0x64A9, - 0x6492, 0x64AE, 0x64AD, 0x64AB, 0x649A, 0x64AC, 0x6499, 0x64A2, - 0x64B3, 0x6575, 0x6577, 0x6578, 0x66AE, 0x66AB, 0x66B4, 0x66B1, - 0x6A23, 0x6A1F, 0x69E8, 0x6A01, 0x6A1E, 0x6A19, 0x69FD, 0x6A21, -plane 18 -at 0x00 - 0x6A13, 0x6A0A, 0x69F3, 0x6A02, 0x6A05, 0x69ED, 0x6A11, 0x6B50, - 0x6B4E, 0x6BA4, 0x6BC5, 0x6BC6, 0x6F3F, 0x6F7C, 0x6F84, 0x6F51, - 0x6F66, 0x6F54, 0x6F86, 0x6F6D, 0x6F5B, 0x6F78, 0x6F6E, 0x6F8E, - 0x6F7A, 0x6F70, 0x6F64, 0x6F97, 0x6F58, 0x6ED5, 0x6F6F, 0x6F60, - 0x6F5F, 0x719F, 0x71AC, 0x71B1, 0x71A8, 0x7256, 0x729B, 0x734E, - 0x7357, 0x7469, 0x748B, 0x7483, 0x747E, 0x7480, 0x757F, 0x7620, - 0x7629, 0x761F, 0x7624, 0x7626, 0x7621, 0x7622, 0x769A, 0x76BA, - 0x76E4, 0x778E, 0x7787, 0x778C, 0x7791, 0x778B, 0x78CB, 0x78C5, - 0x78BA, 0x78CA, 0x78BE, 0x78D5, 0x78BC, 0x78D0, 0x7A3F, 0x7A3C, - 0x7A40, 0x7A3D, 0x7A37, 0x7A3B, 0x7AAF, 0x7AAE, 0x7BAD, 0x7BB1, - 0x7BC4, 0x7BB4, 0x7BC6, 0x7BC7, 0x7BC1, 0x7BA0, 0x7BCC, 0x7CCA, - 0x7DE0, 0x7DF4, 0x7DEF, 0x7DFB, 0x7DD8, 0x7DEC, 0x7DDD, 0x7DE8, - 0x7DE3, 0x7DDA, 0x7DDE, 0x7DE9, 0x7D9E, 0x7DD9, 0x7DF2, 0x7DF9, - 0x7F75, 0x7F77, 0x7FAF, 0x7FE9, 0x8026, 0x819B, 0x819C, 0x819D, - 0x81A0, 0x819A, 0x8198, 0x8517, 0x853D, 0x851A, 0x84EE, 0x852C, - 0x852D, 0x8513, 0x8511, 0x8523, 0x8521, 0x8514, 0x84EC, 0x8525, - 0x84FF, 0x8506, 0x8782, 0x8774, 0x8776, 0x8760, 0x8766, 0x8778, - 0x8768, 0x8759, 0x8757, 0x874C, 0x8753, 0x885B, 0x885D, 0x8910, - 0x8907, 0x8912, 0x8913, 0x8915, 0x890A, 0x8ABC, 0x8AD2, 0x8AC7, - 0x8AC4, 0x8A95, 0x8ACB, 0x8AF8, 0x8AB2, 0x8AC9, 0x8AC2, 0x8ABF, - 0x8AB0, 0x8AD6, 0x8ACD, 0x8AB6, 0x8AB9, 0x8ADB, 0x8C4C, 0x8C4E, - 0x8C6C, 0x8CE0, 0x8CDE, 0x8CE6, 0x8CE4, 0x8CEC, 0x8CED, 0x8CE2, - 0x8CE3, 0x8CDC, 0x8CEA, 0x8CE1, 0x8D6D, 0x8D9F, 0x8DA3, 0x8E2B, - 0x8E10, 0x8E1D, 0x8E22, 0x8E0F, 0x8E29, 0x8E1F, 0x8E21, 0x8E1E, - 0x8EBA, 0x8F1D, 0x8F1B, 0x8F1F, 0x8F29, 0x8F26, 0x8F2A, 0x8F1C, - 0x8F1E, 0x8F25, 0x9069, 0x906E, 0x9068, 0x906D, 0x9077, 0x9130, - 0x912D, 0x9127, 0x9131, 0x9187, 0x9189, 0x918B, 0x9183, 0x92C5, - 0x92BB, 0x92B7, 0x92EA, 0x92AC, 0x92E4, 0x92C1, 0x92B3, 0x92BC, - 0x92D2, 0x92C7, 0x92F0, 0x92B2, 0x95AD, 0x95B1, 0x9704, 0x9706, - 0x9707, 0x9709, 0x9760, 0x978D, 0x978B, 0x978F, 0x9821, 0x982B, - 0x981C, 0x98B3, 0x990A, 0x9913, 0x9912, 0x9918, 0x99DD, 0x99D0, - 0x99DF, 0x99DB, 0x99D1, 0x99D5, 0x99D2, 0x99D9, 0x9AB7, 0x9AEE, -plane 19 -at 0x00 - 0x9AEF, 0x9B27, 0x9B45, 0x9B44, 0x9B77, 0x9B6F, 0x9D06, 0x9D09, - 0x9D03, 0x9EA9, 0x9EBE, 0x9ECE, 0x58A8, 0x9F52, 0x5112, 0x5118, - 0x5114, 0x5110, 0x5115, 0x5180, 0x51AA, 0x51DD, 0x5291, 0x5293, - 0x52F3, 0x5659, 0x566B, 0x5679, 0x5669, 0x5664, 0x5678, 0x566A, - 0x5668, 0x5665, 0x5671, 0x566F, 0x566C, 0x5662, 0x5676, 0x58C1, - 0x58BE, 0x58C7, 0x58C5, 0x596E, 0x5B1D, 0x5B34, 0x5B78, 0x5BF0, - 0x5C0E, 0x5F4A, 0x61B2, 0x6191, 0x61A9, 0x618A, 0x61CD, 0x61B6, - 0x61BE, 0x61CA, 0x61C8, 0x6230, 0x64C5, 0x64C1, 0x64CB, 0x64BB, - 0x64BC, 0x64DA, 0x64C4, 0x64C7, 0x64C2, 0x64CD, 0x64BF, 0x64D2, - 0x64D4, 0x64BE, 0x6574, 0x66C6, 0x66C9, 0x66B9, 0x66C4, 0x66C7, - 0x66B8, 0x6A3D, 0x6A38, 0x6A3A, 0x6A59, 0x6A6B, 0x6A58, 0x6A39, - 0x6A44, 0x6A62, 0x6A61, 0x6A4B, 0x6A47, 0x6A35, 0x6A5F, 0x6A48, - 0x6B59, 0x6B77, 0x6C05, 0x6FC2, 0x6FB1, 0x6FA1, 0x6FC3, 0x6FA4, - 0x6FC1, 0x6FA7, 0x6FB3, 0x6FC0, 0x6FB9, 0x6FB6, 0x6FA6, 0x6FA0, - 0x6FB4, 0x71BE, 0x71C9, 0x71D0, 0x71D2, 0x71C8, 0x71D5, 0x71B9, - 0x71CE, 0x71D9, 0x71DC, 0x71C3, 0x71C4, 0x7368, 0x749C, 0x74A3, - 0x7498, 0x749F, 0x749E, 0x74E2, 0x750C, 0x750D, 0x7634, 0x7638, - 0x763A, 0x76E7, 0x76E5, 0x77A0, 0x779E, 0x779F, 0x77A5, 0x78E8, - 0x78DA, 0x78EC, 0x78E7, 0x79A6, 0x7A4D, 0x7A4E, 0x7A46, 0x7A4C, - 0x7A4B, 0x7ABA, 0x7BD9, 0x7C11, 0x7BC9, 0x7BE4, 0x7BDB, 0x7BE1, - 0x7BE9, 0x7BE6, 0x7CD5, 0x7CD6, 0x7E0A, 0x7E11, 0x7E08, 0x7E1B, - 0x7E23, 0x7E1E, 0x7E1D, 0x7E09, 0x7E10, 0x7F79, 0x7FB2, 0x7FF0, - 0x7FF1, 0x7FEE, 0x8028, 0x81B3, 0x81A9, 0x81A8, 0x81FB, 0x8208, - 0x8258, 0x8259, 0x854A, 0x8559, 0x8548, 0x8568, 0x8569, 0x8543, - 0x8549, 0x856D, 0x856A, 0x855E, 0x8783, 0x879F, 0x879E, 0x87A2, - 0x878D, 0x8861, 0x892A, 0x8932, 0x8925, 0x892B, 0x8921, 0x89AA, - 0x89A6, 0x8AE6, 0x8AFA, 0x8AEB, 0x8AF1, 0x8B00, 0x8ADC, 0x8AE7, - 0x8AEE, 0x8AFE, 0x8B01, 0x8B02, 0x8AF7, 0x8AED, 0x8AF3, 0x8AF6, - 0x8AFC, 0x8C6B, 0x8C6D, 0x8C93, 0x8CF4, 0x8E44, 0x8E31, 0x8E34, - 0x8E42, 0x8E39, 0x8E35, 0x8F3B, 0x8F2F, 0x8F38, 0x8F33, 0x8FA8, - 0x8FA6, 0x9075, 0x9074, 0x9078, 0x9072, 0x907C, 0x907A, 0x9134, - 0x9192, 0x9320, 0x9336, 0x92F8, 0x9333, 0x932F, 0x9322, 0x92FC, -plane 20 -at 0x00 - 0x932B, 0x9304, 0x931A, 0x9310, 0x9326, 0x9321, 0x9315, 0x932E, - 0x9319, 0x95BB, 0x96A7, 0x96A8, 0x96AA, 0x96D5, 0x970E, 0x9711, - 0x9716, 0x970D, 0x9713, 0x970F, 0x975B, 0x975C, 0x9766, 0x9798, - 0x9830, 0x9838, 0x983B, 0x9837, 0x982D, 0x9839, 0x9824, 0x9910, - 0x9928, 0x991E, 0x991B, 0x9921, 0x991A, 0x99ED, 0x99E2, 0x99F1, - 0x9AB8, 0x9ABC, 0x9AFB, 0x9AED, 0x9B28, 0x9B91, 0x9D15, 0x9D23, - 0x9D26, 0x9D28, 0x9D12, 0x9D1B, 0x9ED8, 0x9ED4, 0x9F8D, 0x9F9C, - 0x512A, 0x511F, 0x5121, 0x5132, 0x52F5, 0x568E, 0x5680, 0x5690, - 0x5685, 0x5687, 0x568F, 0x58D5, 0x58D3, 0x58D1, 0x58CE, 0x5B30, - 0x5B2A, 0x5B24, 0x5B7A, 0x5C37, 0x5C68, 0x5DBC, 0x5DBA, 0x5DBD, - 0x5DB8, 0x5E6B, 0x5F4C, 0x5FBD, 0x61C9, 0x61C2, 0x61C7, 0x61E6, - 0x61CB, 0x6232, 0x6234, 0x64CE, 0x64CA, 0x64D8, 0x64E0, 0x64F0, - 0x64E6, 0x64EC, 0x64F1, 0x64E2, 0x64ED, 0x6582, 0x6583, 0x66D9, - 0x66D6, 0x6A80, 0x6A94, 0x6A84, 0x6AA2, 0x6A9C, 0x6ADB, 0x6AA3, - 0x6A7E, 0x6A97, 0x6A90, 0x6AA0, 0x6B5C, 0x6BAE, 0x6BDA, 0x6C08, - 0x6FD8, 0x6FF1, 0x6FDF, 0x6FE0, 0x6FDB, 0x6FE4, 0x6FEB, 0x6FEF, - 0x6F80, 0x6FEC, 0x6FE1, 0x6FE9, 0x6FD5, 0x6FEE, 0x6FF0, 0x71E7, - 0x71DF, 0x71EE, 0x71E6, 0x71E5, 0x71ED, 0x71EC, 0x71F4, 0x71E0, - 0x7235, 0x7246, 0x7370, 0x7372, 0x74A9, 0x74B0, 0x74A6, 0x74A8, - 0x7646, 0x7642, 0x764C, 0x76EA, 0x77B3, 0x77AA, 0x77B0, 0x77AC, - 0x77A7, 0x77AD, 0x77EF, 0x78F7, 0x78FA, 0x78F4, 0x78EF, 0x7901, - 0x79A7, 0x79AA, 0x7A57, 0x7ABF, 0x7C07, 0x7C0D, 0x7BFE, 0x7BF7, - 0x7C0C, 0x7BE0, 0x7CE0, 0x7CDC, 0x7CDE, 0x7CE2, 0x7CDF, 0x7CD9, - 0x7CDD, 0x7E2E, 0x7E3E, 0x7E46, 0x7E37, 0x7E32, 0x7E43, 0x7E2B, - 0x7E3D, 0x7E31, 0x7E45, 0x7E41, 0x7E34, 0x7E39, 0x7E48, 0x7E35, - 0x7E3F, 0x7E2F, 0x7F44, 0x7FF3, 0x7FFC, 0x8071, 0x8072, 0x8070, - 0x806F, 0x8073, 0x81C6, 0x81C3, 0x81BA, 0x81C2, 0x81C0, 0x81BF, - 0x81BD, 0x81C9, 0x81BE, 0x81E8, 0x8209, 0x8271, 0x85AA, 0x8584, - 0x857E, 0x859C, 0x8591, 0x8594, 0x85AF, 0x859B, 0x8587, 0x85A8, - 0x858A, 0x8667, 0x87C0, 0x87D1, 0x87B3, 0x87D2, 0x87C6, 0x87AB, - 0x87BB, 0x87BA, 0x87C8, 0x87CB, 0x893B, 0x8936, 0x8944, 0x8938, - 0x893D, 0x89AC, 0x8B0E, 0x8B17, 0x8B19, 0x8B1B, 0x8B0A, 0x8B20, -plane 21 -at 0x00 - 0x8B1D, 0x8B04, 0x8B10, 0x8C41, 0x8C3F, 0x8C73, 0x8CFA, 0x8CFD, - 0x8CFC, 0x8CF8, 0x8CFB, 0x8DA8, 0x8E49, 0x8E4B, 0x8E48, 0x8E4A, - 0x8F44, 0x8F3E, 0x8F42, 0x8F45, 0x8F3F, 0x907F, 0x907D, 0x9084, - 0x9081, 0x9082, 0x9080, 0x9139, 0x91A3, 0x919E, 0x919C, 0x934D, - 0x9382, 0x9328, 0x9375, 0x934A, 0x9365, 0x934B, 0x9318, 0x937E, - 0x936C, 0x935B, 0x9370, 0x935A, 0x9354, 0x95CA, 0x95CB, 0x95CC, - 0x95C8, 0x95C6, 0x96B1, 0x96B8, 0x96D6, 0x971C, 0x971E, 0x97A0, - 0x97D3, 0x9846, 0x98B6, 0x9935, 0x9A01, 0x99FF, 0x9BAE, 0x9BAB, - 0x9BAA, 0x9BAD, 0x9D3B, 0x9D3F, 0x9E8B, 0x9ECF, 0x9EDE, 0x9EDC, - 0x9EDD, 0x9EDB, 0x9F3E, 0x9F4B, 0x53E2, 0x5695, 0x56AE, 0x58D9, - 0x58D8, 0x5B38, 0x5F5D, 0x61E3, 0x6233, 0x64F4, 0x64F2, 0x64FE, - 0x6506, 0x64FA, 0x64FB, 0x64F7, 0x65B7, 0x66DC, 0x6726, 0x6AB3, - 0x6AAC, 0x6AC3, 0x6ABB, 0x6AB8, 0x6AC2, 0x6AAE, 0x6AAF, 0x6B5F, - 0x6B78, 0x6BAF, 0x7009, 0x700B, 0x6FFE, 0x7006, 0x6FFA, 0x7011, - 0x700F, 0x71FB, 0x71FC, 0x71FE, 0x71F8, 0x7377, 0x7375, 0x74A7, - 0x74BF, 0x7515, 0x7656, 0x7658, 0x7652, 0x77BD, 0x77BF, 0x77BB, - 0x77BC, 0x790E, 0x79AE, 0x7A61, 0x7A62, 0x7A60, 0x7AC4, 0x7AC5, - 0x7C2B, 0x7C27, 0x7C2A, 0x7C1E, 0x7C23, 0x7C21, 0x7CE7, 0x7E54, - 0x7E55, 0x7E5E, 0x7E5A, 0x7E61, 0x7E52, 0x7E59, 0x7F48, 0x7FF9, - 0x7FFB, 0x8077, 0x8076, 0x81CD, 0x81CF, 0x820A, 0x85CF, 0x85A9, - 0x85CD, 0x85D0, 0x85C9, 0x85B0, 0x85BA, 0x85B9, 0x85A6, 0x87EF, - 0x87EC, 0x87F2, 0x87E0, 0x8986, 0x89B2, 0x89F4, 0x8B28, 0x8B39, - 0x8B2C, 0x8B2B, 0x8C50, 0x8D05, 0x8E59, 0x8E63, 0x8E66, 0x8E64, - 0x8E5F, 0x8E55, 0x8EC0, 0x8F49, 0x8F4D, 0x9087, 0x9083, 0x9088, - 0x91AB, 0x91AC, 0x91D0, 0x9394, 0x938A, 0x9396, 0x93A2, 0x93B3, - 0x93AE, 0x93AC, 0x93B0, 0x9398, 0x939A, 0x9397, 0x95D4, 0x95D6, - 0x95D0, 0x95D5, 0x96E2, 0x96DC, 0x96D9, 0x96DB, 0x96DE, 0x9724, - 0x97A3, 0x97A6, 0x97AD, 0x97F9, 0x984D, 0x984F, 0x984C, 0x984E, - 0x9853, 0x98BA, 0x993E, 0x993F, 0x993D, 0x992E, 0x99A5, 0x9A0E, - 0x9AC1, 0x9B03, 0x9B06, 0x9B4F, 0x9B4E, 0x9B4D, 0x9BCA, 0x9BC9, - 0x9BFD, 0x9BC8, 0x9BC0, 0x9D51, 0x9D5D, 0x9D60, 0x9EE0, 0x9F15, - 0x9F2C, 0x5133, 0x56A5, 0x58DE, 0x58DF, 0x58E2, 0x5BF5, 0x9F90, -plane 22 -at 0x00 - 0x5EEC, 0x61F2, 0x61F7, 0x61F6, 0x61F5, 0x6500, 0x650F, 0x66E0, - 0x66DD, 0x6AE5, 0x6ADD, 0x6ADA, 0x6AD3, 0x701B, 0x701F, 0x7028, - 0x701A, 0x701D, 0x7015, 0x7018, 0x7206, 0x720D, 0x7258, 0x72A2, - 0x7378, 0x737A, 0x74BD, 0x74CA, 0x74E3, 0x7587, 0x7586, 0x765F, - 0x7661, 0x77C7, 0x7919, 0x79B1, 0x7A6B, 0x7A69, 0x7C3E, 0x7C3F, - 0x7C38, 0x7C3D, 0x7C37, 0x7C40, 0x7E6B, 0x7E6D, 0x7E79, 0x7E69, - 0x7E6A, 0x7F85, 0x7E73, 0x7FB6, 0x7FB9, 0x7FB8, 0x81D8, 0x85E9, - 0x85DD, 0x85EA, 0x85D5, 0x85E4, 0x85E5, 0x85F7, 0x87FB, 0x8805, - 0x880D, 0x87F9, 0x87FE, 0x8960, 0x895F, 0x8956, 0x895E, 0x8B41, - 0x8B5C, 0x8B58, 0x8B49, 0x8B5A, 0x8B4E, 0x8B4F, 0x8B46, 0x8B59, - 0x8D08, 0x8D0A, 0x8E7C, 0x8E72, 0x8E87, 0x8E76, 0x8E6C, 0x8E7A, - 0x8E74, 0x8F54, 0x8F4E, 0x8FAD, 0x908A, 0x908B, 0x91B1, 0x91AE, - 0x93E1, 0x93D1, 0x93DF, 0x93C3, 0x93C8, 0x93DC, 0x93DD, 0x93D6, - 0x93E2, 0x93CD, 0x93D8, 0x93E4, 0x93D7, 0x93E8, 0x95DC, 0x96B4, - 0x96E3, 0x972A, 0x9727, 0x9761, 0x97DC, 0x97FB, 0x985E, 0x9858, - 0x985B, 0x98BC, 0x9945, 0x9949, 0x9A16, 0x9A19, 0x9B0D, 0x9BE8, - 0x9BE7, 0x9BD6, 0x9BDB, 0x9D89, 0x9D61, 0x9D72, 0x9D6A, 0x9D6C, - 0x9E92, 0x9E97, 0x9E93, 0x9EB4, 0x52F8, 0x56A8, 0x56B7, 0x56B6, - 0x56B4, 0x56BC, 0x58E4, 0x5B40, 0x5B43, 0x5B7D, 0x5BF6, 0x5DC9, - 0x61F8, 0x61FA, 0x6518, 0x6514, 0x6519, 0x66E6, 0x6727, 0x6AEC, - 0x703E, 0x7030, 0x7032, 0x7210, 0x737B, 0x74CF, 0x7662, 0x7665, - 0x7926, 0x792A, 0x792C, 0x792B, 0x7AC7, 0x7AF6, 0x7C4C, 0x7C43, - 0x7C4D, 0x7CEF, 0x7CF0, 0x8FAE, 0x7E7D, 0x7E7C, 0x7E82, 0x7F4C, - 0x8000, 0x81DA, 0x8266, 0x85FB, 0x85F9, 0x8611, 0x85FA, 0x8606, - 0x860B, 0x8607, 0x860A, 0x8814, 0x8815, 0x8964, 0x89BA, 0x89F8, - 0x8B70, 0x8B6C, 0x8B66, 0x8B6F, 0x8B5F, 0x8B6B, 0x8D0F, 0x8D0D, - 0x8E89, 0x8E81, 0x8E85, 0x8E82, 0x91B4, 0x91CB, 0x9418, 0x9403, - 0x93FD, 0x95E1, 0x9730, 0x98C4, 0x9952, 0x9951, 0x99A8, 0x9A2B, - 0x9A30, 0x9A37, 0x9A35, 0x9C13, 0x9C0D, 0x9E79, 0x9EB5, 0x9EE8, - 0x9F2F, 0x9F5F, 0x9F63, 0x9F61, 0x5137, 0x5138, 0x56C1, 0x56C0, - 0x56C2, 0x5914, 0x5C6C, 0x5DCD, 0x61FC, 0x61FE, 0x651D, 0x651C, - 0x6595, 0x66E9, 0x6AFB, 0x6B04, 0x6AFA, 0x6BB2, 0x704C, 0x721B, -plane 23 -at 0x00 - 0x72A7, 0x74D6, 0x74D4, 0x7669, 0x77D3, 0x7C50, 0x7E8F, 0x7E8C, - 0x7FBC, 0x8617, 0x862D, 0x861A, 0x8823, 0x8822, 0x8821, 0x881F, - 0x896A, 0x896C, 0x89BD, 0x8B74, 0x8B77, 0x8B7D, 0x8D13, 0x8E8A, - 0x8E8D, 0x8E8B, 0x8F5F, 0x8FAF, 0x91BA, 0x942E, 0x9433, 0x9435, - 0x943A, 0x9438, 0x9432, 0x942B, 0x95E2, 0x9738, 0x9739, 0x9732, - 0x97FF, 0x9867, 0x9865, 0x9957, 0x9A45, 0x9A43, 0x9A40, 0x9A3E, - 0x9ACF, 0x9B54, 0x9B51, 0x9C2D, 0x9C25, 0x9DAF, 0x9DB4, 0x9DC2, - 0x9DB8, 0x9E9D, 0x9EEF, 0x9F19, 0x9F5C, 0x9F66, 0x9F67, 0x513C, - 0x513B, 0x56C8, 0x56CA, 0x56C9, 0x5B7F, 0x5DD4, 0x5DD2, 0x5F4E, - 0x61FF, 0x6524, 0x6B0A, 0x6B61, 0x7051, 0x7058, 0x7380, 0x74E4, - 0x758A, 0x766E, 0x766C, 0x79B3, 0x7C60, 0x7C5F, 0x807E, 0x807D, - 0x81DF, 0x8972, 0x896F, 0x89FC, 0x8B80, 0x8D16, 0x8D17, 0x8E91, - 0x8E93, 0x8F61, 0x9148, 0x9444, 0x9451, 0x9452, 0x973D, 0x973E, - 0x97C3, 0x97C1, 0x986B, 0x9955, 0x9A55, 0x9A4D, 0x9AD2, 0x9B1A, - 0x9C49, 0x9C31, 0x9C3E, 0x9C3B, 0x9DD3, 0x9DD7, 0x9F34, 0x9F6C, - 0x9F6A, 0x9F94, 0x56CC, 0x5DD6, 0x6200, 0x6523, 0x652B, 0x652A, - 0x66EC, 0x6B10, 0x74DA, 0x7ACA, 0x7C64, 0x7C63, 0x7C65, 0x7E93, - 0x7E96, 0x7E94, 0x81E2, 0x8638, 0x863F, 0x8831, 0x8B8A, 0x9090, - 0x908F, 0x9463, 0x9460, 0x9464, 0x9768, 0x986F, 0x995C, 0x9A5A, - 0x9A5B, 0x9A57, 0x9AD3, 0x9AD4, 0x9AD1, 0x9C54, 0x9C57, 0x9C56, - 0x9DE5, 0x9E9F, 0x9EF4, 0x56D1, 0x58E9, 0x652C, 0x705E, 0x7671, - 0x7672, 0x77D7, 0x7F50, 0x7F88, 0x8836, 0x8839, 0x8862, 0x8B93, - 0x8B92, 0x8B96, 0x8277, 0x8D1B, 0x91C0, 0x946A, 0x9742, 0x9748, - 0x9744, 0x97C6, 0x9870, 0x9A5F, 0x9B22, 0x9B58, 0x9C5F, 0x9DF9, - 0x9DFA, 0x9E7C, 0x9E7D, 0x9F07, 0x9F77, 0x9F72, 0x5EF3, 0x6B16, - 0x7063, 0x7C6C, 0x7C6E, 0x883B, 0x89C0, 0x8EA1, 0x91C1, 0x9472, - 0x9470, 0x9871, 0x995E, 0x9AD6, 0x9B23, 0x9ECC, 0x7064, 0x77DA, - 0x8B9A, 0x9477, 0x97C9, 0x9A62, 0x9A65, 0x7E9C, 0x8B9C, 0x8EAA, - 0x91C5, 0x947D, 0x947E, 0x947C, 0x9C77, 0x9C78, 0x9EF7, 0x8C54, - 0x947F, 0x9E1A, 0x7228, 0x9A6A, 0x9B31, 0x9E1B, 0x9E1E, 0x7C72, - 0xF6B1, 0xF6B2, 0xF6B3, 0xF6B4, 0xF6B5, 0xF6B6, 0xF6B7, 0xF6B8, - 0xF6B9, 0xF6BA, 0xF6BB, 0xF6BC, 0xF6BD, 0xF6BE, 0xF6BF, 0xF6C0, -plane 24 -at 0x00 - 0xF6C1, 0xF6C2, 0xF6C3, 0xF6C4, 0xF6C5, 0xF6C6, 0xF6C7, 0xF6C8, - 0xF6C9, 0xF6CA, 0xF6CB, 0xF6CC, 0xF6CD, 0xF6CE, 0xF6CF, 0xF6D0, - 0xF6D1, 0xF6D2, 0xF6D3, 0xF6D4, 0xF6D5, 0xF6D6, 0xF6D7, 0xF6D8, - 0xF6D9, 0xF6DA, 0xF6DB, 0xF6DC, 0xF6DD, 0xF6DE, 0xF6DF, 0xF6E0, - 0xF6E1, 0xF6E2, 0xF6E3, 0xF6E4, 0xF6E5, 0xF6E6, 0xF6E7, 0xF6E8, - 0xF6E9, 0xF6EA, 0xF6EB, 0xF6EC, 0xF6ED, 0xF6EE, 0xF6EF, 0xF6F0, - 0xF6F1, 0xF6F2, 0xF6F3, 0xF6F4, 0xF6F5, 0xF6F6, 0xF6F7, 0xF6F8, - 0xF6F9, 0xF6FA, 0xF6FB, 0xF6FC, 0xF6FD, 0xF6FE, 0xF6FF, 0xF700, - 0xF701, 0xF702, 0xF703, 0xF704, 0xF705, 0xF706, 0xF707, 0xF708, - 0xF709, 0xF70A, 0xF70B, 0xF70C, 0xF70D, 0xF70E, 0xF70F, 0xF710, - 0xF711, 0xF712, 0xF713, 0xF714, 0xF715, 0xF716, 0xF717, 0xF718, - 0xF719, 0xF71A, 0xF71B, 0xF71C, 0xF71D, 0xF71E, 0xF71F, 0xF720, - 0xF721, 0xF722, 0xF723, 0xF724, 0xF725, 0xF726, 0xF727, 0xF728, - 0xF729, 0xF72A, 0xF72B, 0xF72C, 0xF72D, 0xF72E, 0xF72F, 0xF730, - 0xF731, 0xF732, 0xF733, 0xF734, 0xF735, 0xF736, 0xF737, 0xF738, - 0xF739, 0xF73A, 0xF73B, 0xF73C, 0xF73D, 0xF73E, 0xF73F, 0xF740, - 0xF741, 0xF742, 0xF743, 0xF744, 0xF745, 0xF746, 0xF747, 0xF748, - 0xF749, 0xF74A, 0xF74B, 0xF74C, 0xF74D, 0xF74E, 0xF74F, 0xF750, - 0xF751, 0xF752, 0xF753, 0xF754, 0xF755, 0xF756, 0xF757, 0xF758, - 0xF759, 0xF75A, 0xF75B, 0xF75C, 0xF75D, 0xF75E, 0xF75F, 0xF760, - 0xF761, 0xF762, 0xF763, 0xF764, 0xF765, 0xF766, 0xF767, 0xF768, - 0xF769, 0xF76A, 0xF76B, 0xF76C, 0xF76D, 0xF76E, 0xF76F, 0xF770, - 0xF771, 0xF772, 0xF773, 0xF774, 0xF775, 0xF776, 0xF777, 0xF778, - 0xF779, 0xF77A, 0xF77B, 0xF77C, 0xF77D, 0xF77E, 0xF77F, 0xF780, - 0xF781, 0xF782, 0xF783, 0xF784, 0xF785, 0xF786, 0xF787, 0xF788, - 0xF789, 0xF78A, 0xF78B, 0xF78C, 0xF78D, 0xF78E, 0xF78F, 0xF790, - 0xF791, 0xF792, 0xF793, 0xF794, 0xF795, 0xF796, 0xF797, 0xF798, - 0xF799, 0xF79A, 0xF79B, 0xF79C, 0xF79D, 0xF79E, 0xF79F, 0xF7A0, - 0xF7A1, 0xF7A2, 0xF7A3, 0xF7A4, 0xF7A5, 0xF7A6, 0xF7A7, 0xF7A8, - 0xF7A9, 0xF7AA, 0xF7AB, 0xF7AC, 0xF7AD, 0xF7AE, 0xF7AF, 0xF7B0, - 0xF7B1, 0xF7B2, 0xF7B3, 0xF7B4, 0xF7B5, 0xF7B6, 0xF7B7, 0xF7B8, - 0xF7B9, 0xF7BA, 0xF7BB, 0xF7BC, 0xF7BD, 0xF7BE, 0xF7BF, 0xF7C0, -plane 25 -at 0x00 - 0xF7C1, 0xF7C2, 0xF7C3, 0xF7C4, 0xF7C5, 0xF7C6, 0xF7C7, 0xF7C8, - 0xF7C9, 0xF7CA, 0xF7CB, 0xF7CC, 0xF7CD, 0xF7CE, 0xF7CF, 0xF7D0, - 0xF7D1, 0xF7D2, 0xF7D3, 0xF7D4, 0xF7D5, 0xF7D6, 0xF7D7, 0xF7D8, - 0xF7D9, 0xF7DA, 0xF7DB, 0xF7DC, 0xF7DD, 0xF7DE, 0xF7DF, 0xF7E0, - 0xF7E1, 0xF7E2, 0xF7E3, 0xF7E4, 0xF7E5, 0xF7E6, 0xF7E7, 0xF7E8, - 0xF7E9, 0xF7EA, 0xF7EB, 0xF7EC, 0xF7ED, 0xF7EE, 0xF7EF, 0xF7F0, - 0xF7F1, 0xF7F2, 0xF7F3, 0xF7F4, 0xF7F5, 0xF7F6, 0xF7F7, 0xF7F8, - 0xF7F9, 0xF7FA, 0xF7FB, 0xF7FC, 0xF7FD, 0xF7FE, 0xF7FF, 0xF800, - 0xF801, 0xF802, 0xF803, 0xF804, 0xF805, 0xF806, 0xF807, 0xF808, - 0xF809, 0xF80A, 0xF80B, 0xF80C, 0xF80D, 0xF80E, 0xF80F, 0xF810, - 0xF811, 0xF812, 0xF813, 0xF814, 0xF815, 0xF816, 0xF817, 0xF818, - 0xF819, 0xF81A, 0xF81B, 0xF81C, 0xF81D, 0xF81E, 0xF81F, 0xF820, - 0xF821, 0xF822, 0xF823, 0xF824, 0xF825, 0xF826, 0xF827, 0xF828, - 0xF829, 0xF82A, 0xF82B, 0xF82C, 0xF82D, 0xF82E, 0xF82F, 0xF830, - 0xF831, 0xF832, 0xF833, 0xF834, 0xF835, 0xF836, 0xF837, 0xF838, - 0xF839, 0xF83A, 0xF83B, 0xF83C, 0xF83D, 0xF83E, 0xF83F, 0xF840, - 0xF841, 0xF842, 0xF843, 0xF844, 0xF845, 0xF846, 0xF847, 0xF848, - 0x4E42, 0x4E5C, 0x51F5, 0x531A, 0x5382, 0x4E07, 0x4E0C, 0x4E47, - 0x4E8D, 0x56D7, 0xFA0C, 0x5C6E, 0x5F73, 0x4E0F, 0x5187, 0x4E0E, - 0x4E2E, 0x4E93, 0x4EC2, 0x4EC9, 0x4EC8, 0x5198, 0x52FC, 0x536C, - 0x53B9, 0x5720, 0x5903, 0x592C, 0x5C10, 0x5DFF, 0x65E1, 0x6BB3, - 0x6BCC, 0x6C14, 0x723F, 0x4E31, 0x4E3C, 0x4EE8, 0x4EDC, 0x4EE9, - 0x4EE1, 0x4EDD, 0x4EDA, 0x520C, 0x531C, 0x534C, 0x5722, 0x5723, - 0x5917, 0x592F, 0x5B81, 0x5B84, 0x5C12, 0x5C3B, 0x5C74, 0x5C73, - 0x5E04, 0x5E80, 0x5E82, 0x5FC9, 0x6209, 0x6250, 0x6C15, 0x6C36, - 0x6C43, 0x6C3F, 0x6C3B, 0x72AE, 0x72B0, 0x738A, 0x79B8, 0x808A, - 0x961E, 0x4F0E, 0x4F18, 0x4F2C, 0x4EF5, 0x4F14, 0x4EF1, 0x4F00, - 0x4EF7, 0x4F08, 0x4F1D, 0x4F02, 0x4F05, 0x4F22, 0x4F13, 0x4F04, - 0x4EF4, 0x4F12, 0x51B1, 0x5213, 0x5209, 0x5210, 0x52A6, 0x5322, - 0x531F, 0x534D, 0x538A, 0x5407, 0x56E1, 0x56DF, 0x572E, 0x572A, - 0x5734, 0x593C, 0x5980, 0x597C, 0x5985, 0x597B, 0x597E, 0x5977, - 0x597F, 0x5B56, 0x5C15, 0x5C25, 0x5C7C, 0x5C7A, 0x5C7B, 0x5C7E, -plane 26 -at 0x00 - 0x5DDF, 0x5E75, 0x5E84, 0x5F02, 0x5F1A, 0x5F74, 0x5FD5, 0x5FD4, - 0x5FCF, 0x625C, 0x625E, 0x6264, 0x6261, 0x6266, 0x6262, 0x6259, - 0x6260, 0x625A, 0x6265, 0x65EF, 0x65EE, 0x673E, 0x6739, 0x6738, - 0x673B, 0x673A, 0x673F, 0x673C, 0x6733, 0x6C18, 0x6C46, 0x6C52, - 0x6C5C, 0x6C4F, 0x6C4A, 0x6C54, 0x6C4B, 0x6C4C, 0x7071, 0x725E, - 0x72B4, 0x72B5, 0x738E, 0x752A, 0x767F, 0x7A75, 0x7F51, 0x8278, - 0x827C, 0x8280, 0x827D, 0x827F, 0x864D, 0x897E, 0x9099, 0x9097, - 0x9098, 0x909B, 0x9094, 0x9622, 0x9624, 0x9620, 0x9623, 0x4F56, - 0x4F3B, 0x4F62, 0x4F49, 0x4F53, 0x4F64, 0x4F3E, 0x4F67, 0x4F52, - 0x4F5F, 0x4F41, 0x4F58, 0x4F2D, 0x4F33, 0x4F3F, 0x4F61, 0x518F, - 0x51B9, 0x521C, 0x521E, 0x5221, 0x52AD, 0x52AE, 0x5309, 0x5363, - 0x5372, 0x538E, 0x538F, 0x5430, 0x5437, 0x542A, 0x5454, 0x5445, - 0x5419, 0x541C, 0x5425, 0x5418, 0x543D, 0x544F, 0x5441, 0x5428, - 0x5424, 0x5447, 0x56EE, 0x56E7, 0x56E5, 0x5741, 0x5745, 0x574C, - 0x5749, 0x574B, 0x5752, 0x5906, 0x5940, 0x59A6, 0x5998, 0x59A0, - 0x5997, 0x598E, 0x59A2, 0x5990, 0x598F, 0x59A7, 0x59A1, 0x5B8E, - 0x5B92, 0x5C28, 0x5C2A, 0x5C8D, 0x5C8F, 0x5C88, 0x5C8B, 0x5C89, - 0x5C92, 0x5C8A, 0x5C86, 0x5C93, 0x5C95, 0x5DE0, 0x5E0A, 0x5E0E, - 0x5E8B, 0x5E89, 0x5E8C, 0x5E88, 0x5E8D, 0x5F05, 0x5F1D, 0x5F78, - 0x5F76, 0x5FD2, 0x5FD1, 0x5FD0, 0x5FED, 0x5FE8, 0x5FEE, 0x5FF3, - 0x5FE1, 0x5FE4, 0x5FE3, 0x5FFA, 0x5FEF, 0x5FF7, 0x5FFB, 0x6000, - 0x5FF4, 0x623A, 0x6283, 0x628C, 0x628E, 0x628F, 0x6294, 0x6287, - 0x6271, 0x627B, 0x627A, 0x6270, 0x6281, 0x6288, 0x6277, 0x627D, - 0x6272, 0x6274, 0x6537, 0x65F0, 0x65F4, 0x65F3, 0x65F2, 0x65F5, - 0x6745, 0x6747, 0x6759, 0x6755, 0x674C, 0x6748, 0x675D, 0x674D, - 0x675A, 0x674B, 0x6BD0, 0x6C19, 0x6C1A, 0x6C78, 0x6C67, 0x6C6B, - 0x6C84, 0x6C8B, 0x6C8F, 0x6C71, 0x6C6F, 0x6C69, 0x6C9A, 0x6C6D, - 0x6C87, 0x6C95, 0x6C9C, 0x6C66, 0x6C73, 0x6C65, 0x6C7B, 0x6C8E, - 0x7074, 0x707A, 0x7263, 0x72BF, 0x72BD, 0x72C3, 0x72C6, 0x72C1, - 0x72BA, 0x72C5, 0x7395, 0x7397, 0x7393, 0x7394, 0x7392, 0x753A, - 0x7539, 0x7594, 0x7595, 0x7681, 0x793D, 0x8034, 0x8095, 0x8099, - 0x8090, 0x8092, 0x809C, 0x8290, 0x828F, 0x8285, 0x828E, 0x8291, -plane 27 -at 0x00 - 0x8293, 0x828A, 0x8283, 0x8284, 0x8C78, 0x8FC9, 0x8FBF, 0x909F, - 0x90A1, 0x90A5, 0x909E, 0x90A7, 0x90A0, 0x9630, 0x9628, 0x962F, - 0x962D, 0x4E33, 0x4F98, 0x4F7C, 0x4F85, 0x4F7D, 0x4F80, 0x4F87, - 0x4F76, 0x4F74, 0x4F89, 0x4F84, 0x4F77, 0x4F4C, 0x4F97, 0x4F6A, - 0x4F9A, 0x4F79, 0x4F81, 0x4F78, 0x4F90, 0x4F9C, 0x4F94, 0x4F9E, - 0x4F92, 0x4F82, 0x4F95, 0x4F6B, 0x4F6E, 0x519E, 0x51BC, 0x51BE, - 0x5235, 0x5232, 0x5233, 0x5246, 0x5231, 0x52BC, 0x530A, 0x530B, - 0x533C, 0x5392, 0x5394, 0x5487, 0x547F, 0x5481, 0x5491, 0x5482, - 0x5488, 0x546B, 0x547A, 0x547E, 0x5465, 0x546C, 0x5474, 0x5466, - 0x548D, 0x546F, 0x5461, 0x5460, 0x5498, 0x5463, 0x5467, 0x5464, - 0x56F7, 0x56F9, 0x576F, 0x5772, 0x576D, 0x576B, 0x5771, 0x5770, - 0x5776, 0x5780, 0x5775, 0x577B, 0x5773, 0x5774, 0x5762, 0x5768, - 0x577D, 0x590C, 0x5945, 0x59B5, 0x59BA, 0x59CF, 0x59CE, 0x59B2, - 0x59CC, 0x59C1, 0x59B6, 0x59BC, 0x59C3, 0x59D6, 0x59B1, 0x59BD, - 0x59C0, 0x59C8, 0x59B4, 0x59C7, 0x5B62, 0x5B65, 0x5B93, 0x5B95, - 0x5C44, 0x5C47, 0x5CAE, 0x5CA4, 0x5CA0, 0x5CB5, 0x5CAF, 0x5CA8, - 0x5CAC, 0x5C9F, 0x5CA3, 0x5CAD, 0x5CA2, 0x5CAA, 0x5CA7, 0x5C9D, - 0x5CA5, 0x5CB6, 0x5CB0, 0x5CA6, 0x5E17, 0x5E14, 0x5E19, 0x5F28, - 0x5F22, 0x5F23, 0x5F24, 0x5F54, 0x5F82, 0x5F7E, 0x5F7D, 0x5FDE, - 0x5FE5, 0x602D, 0x6026, 0x6019, 0x6032, 0x600B, 0x6034, 0x600A, - 0x6017, 0x6033, 0x601A, 0x601E, 0x602C, 0x6022, 0x600D, 0x6010, - 0x602E, 0x6013, 0x6011, 0x600C, 0x6009, 0x601C, 0x6214, 0x623D, - 0x62AD, 0x62B4, 0x62D1, 0x62BE, 0x62AA, 0x62B6, 0x62CA, 0x62AE, - 0x62B3, 0x62AF, 0x62BB, 0x62A9, 0x62B0, 0x62B8, 0x653D, 0x65A8, - 0x65BB, 0x6609, 0x65FC, 0x6604, 0x6612, 0x6608, 0x65FB, 0x6603, - 0x660B, 0x660D, 0x6605, 0x65FD, 0x6611, 0x6610, 0x66F6, 0x670A, - 0x6785, 0x676C, 0x678E, 0x6792, 0x6776, 0x677B, 0x6798, 0x6786, - 0x6784, 0x6774, 0x678D, 0x678C, 0x677A, 0x679F, 0x6791, 0x6799, - 0x6783, 0x677D, 0x6781, 0x6778, 0x6779, 0x6794, 0x6B25, 0x6B80, - 0x6B7E, 0x6BDE, 0x6C1D, 0x6C93, 0x6CEC, 0x6CEB, 0x6CEE, 0x6CD9, - 0x6CB6, 0x6CD4, 0x6CAD, 0x6CE7, 0x6CB7, 0x6CD0, 0x6CC2, 0x6CBA, - 0x6CC3, 0x6CC6, 0x6CED, 0x6CF2, 0x6CD2, 0x6CDD, 0x6CB4, 0x6C8A, -plane 28 -at 0x00 - 0x6C9D, 0x6C80, 0x6CDE, 0x6CC0, 0x6D30, 0x6CCD, 0x6CC7, 0x6CB0, - 0x6CF9, 0x6CCF, 0x6CE9, 0x6CD1, 0x7094, 0x7098, 0x7085, 0x7093, - 0x7086, 0x7084, 0x7091, 0x7096, 0x7082, 0x709A, 0x7083, 0x726A, - 0x72D6, 0x72CB, 0x72D8, 0x72C9, 0x72DC, 0x72D2, 0x72D4, 0x72DA, - 0x72CC, 0x72D1, 0x73A4, 0x73A1, 0x73AD, 0x73A6, 0x73A2, 0x73A0, - 0x73AC, 0x739D, 0x74DD, 0x74E8, 0x753F, 0x7540, 0x753E, 0x758C, - 0x7598, 0x76AF, 0x76F3, 0x76F1, 0x76F0, 0x76F5, 0x77F8, 0x77FC, - 0x77F9, 0x77FB, 0x77FA, 0x77F7, 0x7942, 0x793F, 0x79C5, 0x7A78, - 0x7A7B, 0x7AFB, 0x7C75, 0x7CFD, 0x8035, 0x808F, 0x80AE, 0x80A3, - 0x80B8, 0x80B5, 0x80AD, 0x8220, 0x82A0, 0x82C0, 0x82AB, 0x829A, - 0x8298, 0x829B, 0x82B5, 0x82A7, 0x82AE, 0x82BC, 0x829E, 0x82BA, - 0x82B4, 0x82A8, 0x82A1, 0x82A9, 0x82C2, 0x82A4, 0x82C3, 0x82B6, - 0x82A2, 0x8670, 0x866F, 0x866D, 0x866E, 0x8C56, 0x8FD2, 0x8FCB, - 0x8FD3, 0x8FCD, 0x8FD6, 0x8FD5, 0x8FD7, 0x90B2, 0x90B4, 0x90AF, - 0x90B3, 0x90B0, 0x9639, 0x963D, 0x963C, 0x963A, 0x9643, 0x4FCD, - 0x4FC5, 0x4FD3, 0x4FB2, 0x4FC9, 0x4FCB, 0x4FC1, 0x4FD4, 0x4FDC, - 0x4FD9, 0x4FBB, 0x4FB3, 0x4FDB, 0x4FC7, 0x4FD6, 0x4FBA, 0x4FC0, - 0x4FB9, 0x4FEC, 0x5244, 0x5249, 0x52C0, 0x52C2, 0x533D, 0x537C, - 0x5397, 0x5396, 0x5399, 0x5398, 0x54BA, 0x54A1, 0x54AD, 0x54A5, - 0x54CF, 0x54C3, 0x830D, 0x54B7, 0x54AE, 0x54D6, 0x54B6, 0x54C5, - 0x54C6, 0x54A0, 0x5470, 0x54BC, 0x54A2, 0x54BE, 0x5472, 0x54DE, - 0x54B0, 0x57B5, 0x579E, 0x579F, 0x57A4, 0x578C, 0x5797, 0x579D, - 0x579B, 0x5794, 0x5798, 0x578F, 0x5799, 0x57A5, 0x579A, 0x5795, - 0x58F4, 0x590D, 0x5953, 0x59E1, 0x59DE, 0x59EE, 0x5A00, 0x59F1, - 0x59DD, 0x59FA, 0x59FD, 0x59FC, 0x59F6, 0x59E4, 0x59F2, 0x59F7, - 0x59DB, 0x59E9, 0x59F3, 0x59F5, 0x59E0, 0x59FE, 0x59F4, 0x59ED, - 0x5BA8, 0x5C4C, 0x5CD0, 0x5CD8, 0x5CCC, 0x5CD7, 0x5CCB, 0x5CDB, - 0x5CDE, 0x5CDA, 0x5CC9, 0x5CC7, 0x5CCA, 0x5CD6, 0x5CD3, 0x5CD4, - 0x5CCF, 0x5CC8, 0x5CC6, 0x5CCE, 0x5CDF, 0x5CF8, 0x5DF9, 0x5E21, - 0x5E22, 0x5E23, 0x5E20, 0x5E24, 0x5EB0, 0x5EA4, 0x5EA2, 0x5E9B, - 0x5EA3, 0x5EA5, 0x5F07, 0x5F2E, 0x5F56, 0x5F86, 0x6037, 0x6039, - 0x6054, 0x6072, 0x605E, 0x6045, 0x6053, 0x6047, 0x6049, 0x605B, -plane 29 -at 0x00 - 0x604C, 0x6040, 0x6042, 0x605F, 0x6024, 0x6044, 0x6058, 0x6066, - 0x606E, 0x6242, 0x6243, 0x62CF, 0x630D, 0x630B, 0x62F5, 0x630E, - 0x6303, 0x62EB, 0x62F9, 0x630F, 0x630C, 0x62F8, 0x62F6, 0x6300, - 0x6313, 0x6314, 0x62FA, 0x6315, 0x62FB, 0x62F0, 0x6541, 0x6543, - 0x65AA, 0x65BF, 0x6636, 0x6621, 0x6632, 0x6635, 0x661C, 0x6626, - 0x6622, 0x6633, 0x662B, 0x663A, 0x661D, 0x6634, 0x6639, 0x662E, - 0x670F, 0x6710, 0x67C1, 0x67F2, 0x67C8, 0x67BA, 0x67DC, 0x67BB, - 0x67F8, 0x67D8, 0x67C0, 0x67B7, 0x67C5, 0x67EB, 0x67E4, 0x67DF, - 0x67B5, 0x67CD, 0x67B3, 0x67F7, 0x67F6, 0x67EE, 0x67E3, 0x67C2, - 0x67B9, 0x67CE, 0x67E7, 0x67F0, 0x67B2, 0x67FC, 0x67C6, 0x67ED, - 0x67CC, 0x67AE, 0x67E6, 0x67DB, 0x67FA, 0x67C9, 0x67CA, 0x67C3, - 0x67EA, 0x67CB, 0x6B28, 0x6B82, 0x6B84, 0x6BB6, 0x6BD6, 0x6BD8, - 0x6BE0, 0x6C20, 0x6C21, 0x6D28, 0x6D34, 0x6D2D, 0x6D1F, 0x6D3C, - 0x6D3F, 0x6D12, 0x6D0A, 0x6CDA, 0x6D33, 0x6D04, 0x6D19, 0x6D3A, - 0x6D1A, 0x6D11, 0x6D00, 0x6D1D, 0x6D42, 0x6D01, 0x6D18, 0x6D37, - 0x6D03, 0x6D0F, 0x6D40, 0x6D07, 0x6D20, 0x6D2C, 0x6D08, 0x6D22, - 0x6D09, 0x6D10, 0x70B7, 0x709F, 0x70BE, 0x70B1, 0x70B0, 0x70A1, - 0x70B4, 0x70B5, 0x70A9, 0x7241, 0x7249, 0x724A, 0x726C, 0x7270, - 0x7273, 0x726E, 0x72CA, 0x72E4, 0x72E8, 0x72EB, 0x72DF, 0x72EA, - 0x72E6, 0x72E3, 0x7385, 0x73CC, 0x73C2, 0x73C8, 0x73C5, 0x73B9, - 0x73B6, 0x73B5, 0x73B4, 0x73EB, 0x73BF, 0x73C7, 0x73BE, 0x73C3, - 0x73C6, 0x73B8, 0x73CB, 0x74EC, 0x74EE, 0x752E, 0x7547, 0x7548, - 0x75A7, 0x75AA, 0x7679, 0x76C4, 0x7708, 0x7703, 0x7704, 0x7705, - 0x770A, 0x76F7, 0x76FB, 0x76FA, 0x77E7, 0x77E8, 0x7806, 0x7811, - 0x7812, 0x7805, 0x7810, 0x780F, 0x780E, 0x7809, 0x7803, 0x7813, - 0x794A, 0x794C, 0x794B, 0x7945, 0x7944, 0x79D5, 0x79CD, 0x79CF, - 0x79D6, 0x79CE, 0x7A80, 0x7A7E, 0x7AD1, 0x7B00, 0x7B01, 0x7C7A, - 0x7C78, 0x7C79, 0x7C7F, 0x7C80, 0x7C81, 0x7D03, 0x7D08, 0x7D01, - 0x7F58, 0x7F91, 0x7F8D, 0x7FBE, 0x8007, 0x800E, 0x800F, 0x8014, - 0x8037, 0x80D8, 0x80C7, 0x80E0, 0x80D1, 0x80C8, 0x80C2, 0x80D0, - 0x80C5, 0x80E3, 0x80D9, 0x80DC, 0x80CA, 0x80D5, 0x80C9, 0x80CF, - 0x80D7, 0x80E6, 0x80CD, 0x81FF, 0x8221, 0x8294, 0x82D9, 0x82FE, -plane 30 -at 0x00 - 0x82F9, 0x8307, 0x82E8, 0x8300, 0x82D5, 0x833A, 0x82EB, 0x82D6, - 0x82F4, 0x82EC, 0x82E1, 0x82F2, 0x82F5, 0x830C, 0x82FB, 0x82F6, - 0x82F0, 0x82EA, 0x82E4, 0x82E0, 0x82FA, 0x82F3, 0x82ED, 0x8677, - 0x8674, 0x867C, 0x8673, 0x8841, 0x884E, 0x8867, 0x886A, 0x8869, - 0x89D3, 0x8A04, 0x8A07, 0x8D72, 0x8FE3, 0x8FE1, 0x8FEE, 0x8FE0, - 0x90F1, 0x90BD, 0x90BF, 0x90D5, 0x90C5, 0x90BE, 0x90C7, 0x90CB, - 0x90C8, 0x91D4, 0x91D3, 0x9654, 0x964F, 0x9651, 0x9653, 0x964A, - 0x964E, 0x501E, 0x5005, 0x5007, 0x5013, 0x5022, 0x5030, 0x501B, - 0x4FF5, 0x4FF4, 0x5033, 0x5037, 0x502C, 0x4FF6, 0x4FF7, 0x5017, - 0x501C, 0x5020, 0x5027, 0x5035, 0x502F, 0x5031, 0x500E, 0x515A, - 0x5194, 0x5193, 0x51CA, 0x51C4, 0x51C5, 0x51C8, 0x51CE, 0x5261, - 0x525A, 0x5252, 0x525E, 0x525F, 0x5255, 0x5262, 0x52CD, 0x530E, - 0x539E, 0x5526, 0x54E2, 0x5517, 0x5512, 0x54E7, 0x54F3, 0x54E4, - 0x551A, 0x54FF, 0x5504, 0x5508, 0x54EB, 0x5511, 0x5505, 0x54F1, - 0x550A, 0x54FB, 0x54F7, 0x54F8, 0x54E0, 0x550E, 0x5503, 0x550B, - 0x5701, 0x5702, 0x57CC, 0x5832, 0x57D5, 0x57D2, 0x57BA, 0x57C6, - 0x57BD, 0x57BC, 0x57B8, 0x57B6, 0x57BF, 0x57C7, 0x57D0, 0x57B9, - 0x57C1, 0x590E, 0x594A, 0x5A19, 0x5A16, 0x5A2D, 0x5A2E, 0x5A15, - 0x5A0F, 0x5A17, 0x5A0A, 0x5A1E, 0x5A33, 0x5B6C, 0x5BA7, 0x5BAD, - 0x5BAC, 0x5C03, 0x5C56, 0x5C54, 0x5CEC, 0x5CFF, 0x5CEE, 0x5CF1, - 0x5CF7, 0x5D00, 0x5CF9, 0x5E29, 0x5E28, 0x5EA8, 0x5EAE, 0x5EAA, - 0x5EAC, 0x5F33, 0x5F30, 0x5F67, 0x605D, 0x605A, 0x6067, 0x6041, - 0x60A2, 0x6088, 0x6080, 0x6092, 0x6081, 0x609D, 0x6083, 0x6095, - 0x609B, 0x6097, 0x6087, 0x609C, 0x608E, 0x6219, 0x6246, 0x62F2, - 0x6310, 0x6356, 0x632C, 0x6344, 0x6345, 0x6336, 0x6343, 0x63E4, - 0x6339, 0x634B, 0x634A, 0x633C, 0x6329, 0x6341, 0x6334, 0x6358, - 0x6354, 0x6359, 0x632D, 0x6347, 0x6333, 0x635A, 0x6351, 0x6338, - 0x6357, 0x6340, 0x6348, 0x654A, 0x6546, 0x65C6, 0x65C3, 0x65C4, - 0x65C2, 0x664A, 0x665F, 0x6647, 0x6651, 0x6712, 0x6713, 0x681F, - 0x681A, 0x6849, 0x6832, 0x6833, 0x683B, 0x684B, 0x684F, 0x6816, - 0x6831, 0x681C, 0x6835, 0x682B, 0x682D, 0x682F, 0x684E, 0x6844, - 0x6834, 0x681D, 0x6812, 0x6814, 0x6826, 0x6828, 0x682E, 0x684D, -plane 31 -at 0x00 - 0x683A, 0x6825, 0x6820, 0x6B2C, 0x6B2F, 0x6B2D, 0x6B31, 0x6B34, - 0x6B6D, 0x8082, 0x6B88, 0x6BE6, 0x6BE4, 0x6BE8, 0x6BE3, 0x6BE2, - 0x6BE7, 0x6C25, 0x6D7A, 0x6D63, 0x6D64, 0x6D76, 0x6D0D, 0x6D61, - 0x6D92, 0x6D58, 0x6D62, 0x6D6D, 0x6D6F, 0x6D91, 0x6D8D, 0x6DEF, - 0x6D7F, 0x6D86, 0x6D5E, 0x6D67, 0x6D60, 0x6D97, 0x6D70, 0x6D7C, - 0x6D5F, 0x6D82, 0x6D98, 0x6D2F, 0x6D68, 0x6D8B, 0x6D7E, 0x6D80, - 0x6D84, 0x6D16, 0x6D83, 0x6D7B, 0x6D7D, 0x6D75, 0x6D90, 0x70DC, - 0x70D3, 0x70D1, 0x70DD, 0x70CB, 0x7F39, 0x70E2, 0x70D7, 0x70D2, - 0x70DE, 0x70E0, 0x70D4, 0x70CD, 0x70C5, 0x70C6, 0x70C7, 0x70DA, - 0x70CE, 0x70E1, 0x7242, 0x7278, 0x7277, 0x7276, 0x7300, 0x72FA, - 0x72F4, 0x72FE, 0x72F6, 0x72F3, 0x72FB, 0x7301, 0x73D3, 0x73D9, - 0x73E5, 0x73D6, 0x73BC, 0x73E7, 0x73E3, 0x73E9, 0x73DC, 0x73D2, - 0x73DB, 0x73D4, 0x73DD, 0x73DA, 0x73D7, 0x73D8, 0x73E8, 0x74DE, - 0x74DF, 0x74F4, 0x74F5, 0x7521, 0x755B, 0x755F, 0x75B0, 0x75C1, - 0x75BB, 0x75C4, 0x75C0, 0x75BF, 0x75B6, 0x75BA, 0x768A, 0x76C9, - 0x771D, 0x771B, 0x7710, 0x7713, 0x7712, 0x7723, 0x7711, 0x7715, - 0x7719, 0x771A, 0x7722, 0x7727, 0x7823, 0x782C, 0x7822, 0x7835, - 0x782F, 0x7828, 0x782E, 0x782B, 0x7821, 0x7829, 0x7833, 0x782A, - 0x7831, 0x7954, 0x795B, 0x794F, 0x795C, 0x7953, 0x7952, 0x7951, - 0x79EB, 0x79EC, 0x79E0, 0x79EE, 0x79ED, 0x79EA, 0x79DC, 0x79DE, - 0x79DD, 0x7A86, 0x7A89, 0x7A85, 0x7A8B, 0x7A8C, 0x7A8A, 0x7A87, - 0x7AD8, 0x7B10, 0x7B04, 0x7B13, 0x7B05, 0x7B0F, 0x7B08, 0x7B0A, - 0x7B0E, 0x7B09, 0x7B12, 0x7C84, 0x7C91, 0x7C8A, 0x7C8C, 0x7C88, - 0x7C8D, 0x7C85, 0x7D1E, 0x7D1D, 0x7D11, 0x7D0E, 0x7D18, 0x7D16, - 0x7D13, 0x7D1F, 0x7D12, 0x7D0F, 0x7D0C, 0x7F5C, 0x7F61, 0x7F5E, - 0x7F60, 0x7F5D, 0x7F5B, 0x7F96, 0x7F92, 0x7FC3, 0x7FC2, 0x7FC0, - 0x8016, 0x803E, 0x8039, 0x80FA, 0x80F2, 0x80F9, 0x80F5, 0x8101, - 0x80FB, 0x8100, 0x8201, 0x822F, 0x8225, 0x8333, 0x832D, 0x8344, - 0x8319, 0x8351, 0x8325, 0x8356, 0x833F, 0x8341, 0x8326, 0x831C, - 0x8322, 0x8342, 0x834E, 0x831B, 0x832A, 0x8308, 0x833C, 0x834D, - 0x8316, 0x8324, 0x8320, 0x8337, 0x832F, 0x8329, 0x8347, 0x8345, - 0x834C, 0x8353, 0x831E, 0x832C, 0x834B, 0x8327, 0x8348, 0x8653, -plane 32 -at 0x00 - 0x8652, 0x86A2, 0x86A8, 0x8696, 0x868D, 0x8691, 0x869E, 0x8687, - 0x8697, 0x8686, 0x868B, 0x869A, 0x8685, 0x86A5, 0x8699, 0x86A1, - 0x86A7, 0x8695, 0x8698, 0x868E, 0x869D, 0x8690, 0x8694, 0x8843, - 0x8844, 0x886D, 0x8875, 0x8876, 0x8872, 0x8880, 0x8871, 0x887F, - 0x886F, 0x8883, 0x887E, 0x8874, 0x887C, 0x8A12, 0x8C47, 0x8C57, - 0x8C7B, 0x8CA4, 0x8CA3, 0x8D76, 0x8D78, 0x8DB5, 0x8DB7, 0x8DB6, - 0x8ED1, 0x8ED3, 0x8FFE, 0x8FF5, 0x9002, 0x8FFF, 0x8FFB, 0x9004, - 0x8FFC, 0x8FF6, 0x90D6, 0x90E0, 0x90D9, 0x90DA, 0x90E3, 0x90DF, - 0x90E5, 0x90D8, 0x90DB, 0x90D7, 0x90DC, 0x90E4, 0x9150, 0x914E, - 0x914F, 0x91D5, 0x91E2, 0x91DA, 0x965C, 0x965F, 0x96BC, 0x98E3, - 0x9ADF, 0x9B2F, 0x4E7F, 0x5070, 0x506A, 0x5061, 0x505E, 0x5060, - 0x5053, 0x504B, 0x505D, 0x5072, 0x5048, 0x504D, 0x5041, 0x505B, - 0x504A, 0x5062, 0x5015, 0x5045, 0x505F, 0x5069, 0x506B, 0x5063, - 0x5064, 0x5046, 0x5040, 0x506E, 0x5073, 0x5057, 0x5051, 0x51D0, - 0x526B, 0x526D, 0x526C, 0x526E, 0x52D6, 0x52D3, 0x532D, 0x539C, - 0x5575, 0x5576, 0x553C, 0x554D, 0x5550, 0x5534, 0x552A, 0x5551, - 0x5562, 0x5536, 0x5535, 0x5530, 0x5552, 0x5545, 0x550C, 0x5532, - 0x5565, 0x554E, 0x5539, 0x5548, 0x552D, 0x553B, 0x5540, 0x554B, - 0x570A, 0x5707, 0x57FB, 0x5814, 0x57E2, 0x57F6, 0x57DC, 0x57F4, - 0x5800, 0x57ED, 0x57FD, 0x5808, 0x57F8, 0x580B, 0x57F3, 0x57CF, - 0x5807, 0x57EE, 0x57E3, 0x57F2, 0x57E5, 0x57EC, 0x57E1, 0x580E, - 0x57FC, 0x5810, 0x57E7, 0x5801, 0x580C, 0x57F1, 0x57E9, 0x57F0, - 0x580D, 0x5804, 0x595C, 0x5A60, 0x5A58, 0x5A55, 0x5A67, 0x5A5E, - 0x5A38, 0x5A35, 0x5A6D, 0x5A50, 0x5A5F, 0x5A65, 0x5A6C, 0x5A53, - 0x5A64, 0x5A57, 0x5A43, 0x5A5D, 0x5A52, 0x5A44, 0x5A5B, 0x5A48, - 0x5A8E, 0x5A3E, 0x5A4D, 0x5A39, 0x5A4C, 0x5A70, 0x5A69, 0x5A47, - 0x5A51, 0x5A56, 0x5A42, 0x5A5C, 0x5B72, 0x5B6E, 0x5BC1, 0x5BC0, - 0x5C59, 0x5D1E, 0x5D0B, 0x5D1D, 0x5D1A, 0x5D20, 0x5D0C, 0x5D28, - 0x5D0D, 0x5D26, 0x5D25, 0x5D0F, 0x5D30, 0x5D12, 0x5D23, 0x5D1F, - 0x5D2E, 0x5E3E, 0x5E34, 0x5EB1, 0x5EB4, 0x5EB9, 0x5EB2, 0x5EB3, - 0x5F36, 0x5F38, 0x5F9B, 0x5F96, 0x5F9F, 0x608A, 0x6090, 0x6086, - 0x60BE, 0x60B0, 0x60BA, 0x60D3, 0x60D4, 0x60CF, 0x60E4, 0x60D9, -plane 33 -at 0x00 - 0x60DD, 0x60C8, 0x60B1, 0x60DB, 0x60B7, 0x60CA, 0x60BF, 0x60C3, - 0x60CD, 0x60C0, 0x6332, 0x6365, 0x638A, 0x6382, 0x637D, 0x63BD, - 0x639E, 0x63AD, 0x639D, 0x6397, 0x63AB, 0x638E, 0x636F, 0x6387, - 0x6390, 0x636E, 0x63AF, 0x6375, 0x639C, 0x636D, 0x63AE, 0x637C, - 0x63A4, 0x633B, 0x639F, 0x6378, 0x6385, 0x6381, 0x6391, 0x638D, - 0x6370, 0x6553, 0x65CD, 0x6665, 0x6661, 0x665B, 0x6659, 0x665C, - 0x6662, 0x6718, 0x6879, 0x6887, 0x6890, 0x689C, 0x686D, 0x686E, - 0x68AE, 0x68AB, 0x6956, 0x686F, 0x68A3, 0x68AC, 0x68A9, 0x6875, - 0x6874, 0x68B2, 0x688F, 0x6877, 0x6892, 0x687C, 0x686B, 0x6872, - 0x68AA, 0x6880, 0x6871, 0x687E, 0x689B, 0x6896, 0x688B, 0x68A0, - 0x6889, 0x68A4, 0x6878, 0x687B, 0x6891, 0x688C, 0x688A, 0x687D, - 0x6B36, 0x6B33, 0x6B37, 0x6B38, 0x6B91, 0x6B8F, 0x6B8D, 0x6B8E, - 0x6B8C, 0x6C2A, 0x6DC0, 0x6DAB, 0x6DB4, 0x6DB3, 0x6E74, 0x6DAC, - 0x6DE9, 0x6DE2, 0x6DB7, 0x6DF6, 0x6DD4, 0x6E00, 0x6DC8, 0x6DE0, - 0x6DDF, 0x6DD6, 0x6DBE, 0x6DE5, 0x6DDC, 0x6DDD, 0x6DDB, 0x6DF4, - 0x6DCA, 0x6DBD, 0x6DED, 0x6DF0, 0x6DBA, 0x6DD5, 0x6DC2, 0x6DCF, - 0x6DC9, 0x6DD0, 0x6DF2, 0x6DD3, 0x6DFD, 0x6DD7, 0x6DCD, 0x6DE3, - 0x6DBB, 0x70FA, 0x710D, 0x70F7, 0x7117, 0x70F4, 0x710C, 0x70F0, - 0x7104, 0x70F3, 0x7110, 0x70FC, 0x70FF, 0x7106, 0x7113, 0x7100, - 0x70F8, 0x70F6, 0x710B, 0x7102, 0x710E, 0x727E, 0x727B, 0x727C, - 0x727F, 0x731D, 0x7317, 0x7307, 0x7311, 0x7318, 0x730A, 0x7308, - 0x72FF, 0x730F, 0x731E, 0x7388, 0x73F6, 0x73F8, 0x73F5, 0x7404, - 0x7401, 0x73FD, 0x7407, 0x7400, 0x73FA, 0x73FC, 0x73FF, 0x740C, - 0x740B, 0x73F4, 0x7408, 0x7564, 0x7563, 0x75CE, 0x75D2, 0x75CF, - 0x75CB, 0x75CC, 0x75D1, 0x75D0, 0x768F, 0x7689, 0x76D3, 0x7739, - 0x772F, 0x772D, 0x7731, 0x7732, 0x7734, 0x7733, 0x773D, 0x7725, - 0x773B, 0x7735, 0x7848, 0x7852, 0x7849, 0x784D, 0x784A, 0x784C, - 0x7826, 0x7845, 0x7850, 0x7964, 0x7967, 0x7969, 0x796A, 0x7963, - 0x796B, 0x7961, 0x79BB, 0x79FA, 0x79F8, 0x79F6, 0x79F7, 0x7A8F, - 0x7A94, 0x7A90, 0x7B35, 0x7B47, 0x7B34, 0x7B25, 0x7B30, 0x7B22, - 0x7B24, 0x7B33, 0x7B18, 0x7B2A, 0x7B1D, 0x7B31, 0x7B2B, 0x7B2D, - 0x7B2F, 0x7B32, 0x7B38, 0x7B1A, 0x7B23, 0x7C94, 0x7C98, 0x7C96, -plane 34 -at 0x00 - 0x7CA3, 0x7D35, 0x7D3D, 0x7D38, 0x7D36, 0x7D3A, 0x7D45, 0x7D2C, - 0x7D29, 0x7D41, 0x7D47, 0x7D3E, 0x7D3F, 0x7D4A, 0x7D3B, 0x7D28, - 0x7F63, 0x7F95, 0x7F9C, 0x7F9D, 0x7F9B, 0x7FCA, 0x7FCB, 0x7FCD, - 0x7FD0, 0x7FD1, 0x7FC7, 0x7FCF, 0x7FC9, 0x801F, 0x801E, 0x801B, - 0x8047, 0x8043, 0x8048, 0x8118, 0x8125, 0x8119, 0x811B, 0x812D, - 0x811F, 0x812C, 0x811E, 0x8121, 0x8115, 0x8127, 0x811D, 0x8122, - 0x8211, 0x8238, 0x8233, 0x823A, 0x8234, 0x8232, 0x8274, 0x8390, - 0x83A3, 0x83A8, 0x838D, 0x837A, 0x8373, 0x83A4, 0x8374, 0x838F, - 0x8381, 0x8395, 0x8399, 0x8375, 0x8394, 0x83A9, 0x837D, 0x8383, - 0x838C, 0x839D, 0x839B, 0x83AA, 0x838B, 0x837E, 0x83A5, 0x83AF, - 0x8388, 0x8397, 0x83B0, 0x837F, 0x83A6, 0x8387, 0x83AE, 0x8376, - 0x839A, 0x8659, 0x8656, 0x86BF, 0x86B7, 0x86C2, 0x86C1, 0x86C5, - 0x86BA, 0x86B0, 0x86C8, 0x86B9, 0x86B3, 0x86B8, 0x86CC, 0x86B4, - 0x86BB, 0x86BC, 0x86C3, 0x86BD, 0x86BE, 0x8852, 0x8889, 0x8895, - 0x88A8, 0x88A2, 0x88AA, 0x889A, 0x8891, 0x88A1, 0x889F, 0x8898, - 0x88A7, 0x8899, 0x889B, 0x8897, 0x88A4, 0x88AC, 0x888C, 0x8893, - 0x888E, 0x8982, 0x89D6, 0x89D9, 0x89D5, 0x8A30, 0x8A27, 0x8A2C, - 0x8A1E, 0x8C39, 0x8C3B, 0x8C5C, 0x8C5D, 0x8C7D, 0x8CA5, 0x8D7D, - 0x8D7B, 0x8D79, 0x8DBC, 0x8DC2, 0x8DB9, 0x8DBF, 0x8DC1, 0x8ED8, - 0x8EDE, 0x8EDD, 0x8EDC, 0x8ED7, 0x8EE0, 0x8EE1, 0x9024, 0x900B, - 0x9011, 0x901C, 0x900C, 0x9021, 0x90EF, 0x90EA, 0x90F0, 0x90F4, - 0x90F2, 0x90F3, 0x90D4, 0x90EB, 0x90EC, 0x90E9, 0x9156, 0x9158, - 0x915A, 0x9153, 0x9155, 0x91EC, 0x91F4, 0x91F1, 0x91F3, 0x91F8, - 0x91E4, 0x91F9, 0x91EA, 0x91EB, 0x91F7, 0x91E8, 0x91EE, 0x957A, - 0x9586, 0x9588, 0x967C, 0x966D, 0x966B, 0x9671, 0x966F, 0x96BF, - 0x976A, 0x9804, 0x98E5, 0x9997, 0x509B, 0x5095, 0x5094, 0x509E, - 0x508B, 0x50A3, 0x5083, 0x508C, 0x508E, 0x509D, 0x5068, 0x509C, - 0x5092, 0x5082, 0x5087, 0x515F, 0x51D4, 0x5312, 0x5311, 0x53A4, - 0x53A7, 0x5591, 0x55A8, 0x55A5, 0x55AD, 0x5577, 0x5645, 0x55A2, - 0x5593, 0x5588, 0x558F, 0x55B5, 0x5581, 0x55A3, 0x5592, 0x55A4, - 0x557D, 0x558C, 0x55A6, 0x557F, 0x5595, 0x55A1, 0x558E, 0x570C, - 0x5829, 0x5837, 0x5819, 0x581E, 0x5827, 0x5823, 0x5828, 0x57F5, -plane 35 -at 0x00 - 0x5848, 0x5825, 0x581C, 0x581B, 0x5833, 0x583F, 0x5836, 0x582E, - 0x5839, 0x5838, 0x582D, 0x582C, 0x583B, 0x5961, 0x5AAF, 0x5A94, - 0x5A9F, 0x5A7A, 0x5AA2, 0x5A9E, 0x5A78, 0x5AA6, 0x5A7C, 0x5AA5, - 0x5AAC, 0x5A95, 0x5AAE, 0x5A37, 0x5A84, 0x5A8A, 0x5A97, 0x5A83, - 0x5A8B, 0x5AA9, 0x5A7B, 0x5A7D, 0x5A8C, 0x5A9C, 0x5A8F, 0x5A93, - 0x5A9D, 0x5BEA, 0x5BCD, 0x5BCB, 0x5BD4, 0x5BD1, 0x5BCA, 0x5BCE, - 0x5C0C, 0x5C30, 0x5D37, 0x5D43, 0x5D6B, 0x5D41, 0x5D4B, 0x5D3F, - 0x5D35, 0x5D51, 0x5D4E, 0x5D55, 0x5D33, 0x5D3A, 0x5D52, 0x5D3D, - 0x5D31, 0x5D59, 0x5D42, 0x5D39, 0x5D49, 0x5D38, 0x5D3C, 0x5D32, - 0x5D36, 0x5D40, 0x5D45, 0x5E44, 0x5E41, 0x5F58, 0x5FA6, 0x5FA5, - 0x5FAB, 0x60C9, 0x60B9, 0x60CC, 0x60E2, 0x60CE, 0x60C4, 0x6114, - 0x60F2, 0x610A, 0x6116, 0x6105, 0x60F5, 0x6113, 0x60F8, 0x60FC, - 0x60FE, 0x60C1, 0x6103, 0x6118, 0x611D, 0x6110, 0x60FF, 0x6104, - 0x610B, 0x624A, 0x6394, 0x63B1, 0x63B0, 0x63CE, 0x63E5, 0x63E8, - 0x63EF, 0x63C3, 0x649D, 0x63F3, 0x63CA, 0x63E0, 0x63F6, 0x63D5, - 0x63F2, 0x63F5, 0x6461, 0x63DF, 0x63BE, 0x63DD, 0x63DC, 0x63C4, - 0x63D8, 0x63D3, 0x63C2, 0x63C7, 0x63CC, 0x63CB, 0x63C8, 0x63F0, - 0x63D7, 0x63D9, 0x6532, 0x6567, 0x656A, 0x6564, 0x655C, 0x6568, - 0x6565, 0x658C, 0x659D, 0x659E, 0x65AE, 0x65D0, 0x65D2, 0x667C, - 0x666C, 0x667B, 0x6680, 0x6671, 0x6679, 0x666A, 0x6672, 0x6701, - 0x690C, 0x68D3, 0x6904, 0x68DC, 0x692A, 0x68EC, 0x68EA, 0x68F1, - 0x690F, 0x68D6, 0x68F7, 0x68EB, 0x68E4, 0x68F6, 0x6913, 0x6910, - 0x68F3, 0x68E1, 0x6907, 0x68CC, 0x6908, 0x6970, 0x68B4, 0x6911, - 0x68EF, 0x68C6, 0x6914, 0x68F8, 0x68D0, 0x68FD, 0x68FC, 0x68E8, - 0x690B, 0x690A, 0x6917, 0x68CE, 0x68C8, 0x68DD, 0x68DE, 0x68E6, - 0x68F4, 0x68D1, 0x6906, 0x68D4, 0x68E9, 0x6915, 0x6925, 0x68C7, - 0x6B39, 0x6B3B, 0x6B3F, 0x6B3C, 0x6B94, 0x6B97, 0x6B99, 0x6B95, - 0x6BBD, 0x6BF0, 0x6BF2, 0x6BF3, 0x6C30, 0x6DFC, 0x6E46, 0x6E47, - 0x6E1F, 0x6E49, 0x6E88, 0x6E3C, 0x6E3D, 0x6E45, 0x6E62, 0x6E2B, - 0x6E3F, 0x6E41, 0x6E5D, 0x6E73, 0x6E1C, 0x6E33, 0x6E4B, 0x6E40, - 0x6E51, 0x6E3B, 0x6E03, 0x6E2E, 0x6E5E, 0x6E68, 0x6E5C, 0x6E61, - 0x6E31, 0x6E28, 0x6E60, 0x6E71, 0x6E6B, 0x6E39, 0x6E22, 0x6E30, -plane 36 -at 0x00 - 0x6E53, 0x6E65, 0x6E27, 0x6E78, 0x6E64, 0x6E77, 0x6E55, 0x6E79, - 0x6E52, 0x6E66, 0x6E35, 0x6E36, 0x6E5A, 0x7120, 0x711E, 0x712F, - 0x70FB, 0x712E, 0x7131, 0x7123, 0x7125, 0x7122, 0x7132, 0x711F, - 0x7128, 0x713A, 0x711B, 0x724B, 0x725A, 0x7288, 0x7289, 0x7286, - 0x7285, 0x728B, 0x7312, 0x730B, 0x7330, 0x7322, 0x7331, 0x7333, - 0x7327, 0x7332, 0x732D, 0x7326, 0x7323, 0x7335, 0x730C, 0x742E, - 0x742C, 0x7430, 0x742B, 0x7416, 0x741A, 0x7421, 0x742D, 0x7431, - 0x7424, 0x7423, 0x741D, 0x7429, 0x7420, 0x7432, 0x74FB, 0x752F, - 0x756F, 0x756C, 0x75E7, 0x75DA, 0x75E1, 0x75E6, 0x75DD, 0x75DF, - 0x75E4, 0x75D7, 0x7695, 0x7692, 0x76DA, 0x7746, 0x7747, 0x7744, - 0x774D, 0x7745, 0x774A, 0x774E, 0x774B, 0x774C, 0x77DE, 0x77EC, - 0x7860, 0x7864, 0x7865, 0x785C, 0x786D, 0x7871, 0x786A, 0x786E, - 0x7870, 0x7869, 0x7868, 0x785E, 0x7862, 0x7974, 0x7973, 0x7972, - 0x7970, 0x7A02, 0x7A0A, 0x7A03, 0x7A0C, 0x7A04, 0x7A99, 0x7AE6, - 0x7AE4, 0x7B4A, 0x7B3B, 0x7B44, 0x7B48, 0x7B4C, 0x7B4E, 0x7B40, - 0x7B58, 0x7B45, 0x7CA2, 0x7C9E, 0x7CA8, 0x7CA1, 0x7D58, 0x7D6F, - 0x7D63, 0x7D53, 0x7D56, 0x7D67, 0x7D6A, 0x7D4F, 0x7D6D, 0x7D5C, - 0x7D6B, 0x7D52, 0x7D54, 0x7D69, 0x7D51, 0x7D5F, 0x7D4E, 0x7F3E, - 0x7F3F, 0x7F65, 0x7F66, 0x7FA2, 0x7FA0, 0x7FA1, 0x7FD7, 0x8051, - 0x804F, 0x8050, 0x80FE, 0x80D4, 0x8143, 0x814A, 0x8152, 0x814F, - 0x8147, 0x813D, 0x814D, 0x813A, 0x81E6, 0x81EE, 0x81F7, 0x81F8, - 0x81F9, 0x8204, 0x823C, 0x823D, 0x823F, 0x8275, 0x833B, 0x83CF, - 0x83F9, 0x8423, 0x83C0, 0x83E8, 0x8412, 0x83E7, 0x83E4, 0x83FC, - 0x83F6, 0x8410, 0x83C6, 0x83C8, 0x83EB, 0x83E3, 0x83BF, 0x8401, - 0x83DD, 0x83E5, 0x83D8, 0x83FF, 0x83E1, 0x83CB, 0x83CE, 0x83D6, - 0x83F5, 0x83C9, 0x8409, 0x840F, 0x83DE, 0x8411, 0x8406, 0x83C2, - 0x83F3, 0x83D5, 0x83FA, 0x83C7, 0x83D1, 0x83EA, 0x8413, 0x83C3, - 0x83EC, 0x83EE, 0x83C4, 0x83FB, 0x83D7, 0x83E2, 0x841B, 0x83DB, - 0x83FE, 0x86D8, 0x86E2, 0x86E6, 0x86D3, 0x86E3, 0x86DA, 0x86EA, - 0x86DD, 0x86EB, 0x86DC, 0x86EC, 0x86E9, 0x86D7, 0x86E8, 0x86D1, - 0x8848, 0x8856, 0x8855, 0x88BA, 0x88D7, 0x88B9, 0x88B8, 0x88C0, - 0x88BE, 0x88B6, 0x88BC, 0x88B7, 0x88BD, 0x88B2, 0x8901, 0x88C9, -plane 37 -at 0x00 - 0x8995, 0x8998, 0x8997, 0x89DD, 0x89DA, 0x89DB, 0x8A4E, 0x8A4D, - 0x8A39, 0x8A59, 0x8A40, 0x8A57, 0x8A58, 0x8A44, 0x8A45, 0x8A52, - 0x8A48, 0x8A51, 0x8A4A, 0x8A4C, 0x8A4F, 0x8C5F, 0x8C81, 0x8C80, - 0x8CBA, 0x8CBE, 0x8CB0, 0x8CB9, 0x8CB5, 0x8D84, 0x8D80, 0x8D89, - 0x8DD8, 0x8DD3, 0x8DCD, 0x8DC7, 0x8DD6, 0x8DDC, 0x8DCF, 0x8DD5, - 0x8DD9, 0x8DC8, 0x8DD7, 0x8DC5, 0x8EEF, 0x8EF7, 0x8EFA, 0x8EF9, - 0x8EE6, 0x8EEE, 0x8EE5, 0x8EF5, 0x8EE7, 0x8EE8, 0x8EF6, 0x8EEB, - 0x8EF1, 0x8EEC, 0x8EF4, 0x8EE9, 0x902D, 0x9034, 0x902F, 0x9106, - 0x912C, 0x9104, 0x90FF, 0x90FC, 0x9108, 0x90F9, 0x90FB, 0x9101, - 0x9100, 0x9107, 0x9105, 0x9103, 0x9161, 0x9164, 0x915F, 0x9162, - 0x9160, 0x9201, 0x920A, 0x9225, 0x9203, 0x921A, 0x9226, 0x920F, - 0x920C, 0x9200, 0x9212, 0x91FF, 0x91FD, 0x9206, 0x9204, 0x9227, - 0x9202, 0x921C, 0x9224, 0x9219, 0x9217, 0x9205, 0x9216, 0x957B, - 0x958D, 0x958C, 0x9590, 0x9687, 0x967E, 0x9688, 0x9689, 0x9683, - 0x9680, 0x96C2, 0x96C8, 0x96C3, 0x96F1, 0x96F0, 0x976C, 0x9770, - 0x976E, 0x9807, 0x98A9, 0x98EB, 0x9CE6, 0x9EF9, 0x4E83, 0x4E84, - 0x4EB6, 0x50BD, 0x50BF, 0x50C6, 0x50AE, 0x50C4, 0x50CA, 0x50B4, - 0x50C8, 0x50C2, 0x50B0, 0x50C1, 0x50BA, 0x50B1, 0x50CB, 0x50C9, - 0x50B6, 0x50B8, 0x51D7, 0x527A, 0x5278, 0x527B, 0x527C, 0x55C3, - 0x55DB, 0x55CC, 0x55D0, 0x55CB, 0x55CA, 0x55DD, 0x55C0, 0x55D4, - 0x55C4, 0x55E9, 0x55BF, 0x55D2, 0x558D, 0x55CF, 0x55D5, 0x55E2, - 0x55D6, 0x55C8, 0x55F2, 0x55CD, 0x55D9, 0x55C2, 0x5714, 0x5853, - 0x5868, 0x5864, 0x584F, 0x584D, 0x5849, 0x586F, 0x5855, 0x584E, - 0x585D, 0x5859, 0x5865, 0x585B, 0x583D, 0x5863, 0x5871, 0x58FC, - 0x5AC7, 0x5AC4, 0x5ACB, 0x5ABA, 0x5AB8, 0x5AB1, 0x5AB5, 0x5AB0, - 0x5ABF, 0x5AC8, 0x5ABB, 0x5AC6, 0x5AB7, 0x5AC0, 0x5ACA, 0x5AB4, - 0x5AB6, 0x5ACD, 0x5AB9, 0x5A90, 0x5BD6, 0x5BD8, 0x5BD9, 0x5C1F, - 0x5C33, 0x5D71, 0x5D63, 0x5D4A, 0x5D65, 0x5D72, 0x5D6C, 0x5D5E, - 0x5D68, 0x5D67, 0x5D62, 0x5DF0, 0x5E4F, 0x5E4E, 0x5E4A, 0x5E4D, - 0x5E4B, 0x5EC5, 0x5ECC, 0x5EC6, 0x5ECB, 0x5EC7, 0x5F40, 0x5FAF, - 0x5FAD, 0x60F7, 0x6149, 0x614A, 0x612B, 0x6145, 0x6136, 0x6132, - 0x612E, 0x6146, 0x612F, 0x614F, 0x6129, 0x6140, 0x6220, 0x9168, -plane 38 -at 0x00 - 0x6223, 0x6225, 0x6224, 0x63C5, 0x63F1, 0x63EB, 0x6410, 0x6412, - 0x6409, 0x6420, 0x6424, 0x6433, 0x6443, 0x641F, 0x6415, 0x6418, - 0x6439, 0x6437, 0x6422, 0x6423, 0x640C, 0x6426, 0x6430, 0x6428, - 0x6441, 0x6435, 0x642F, 0x640A, 0x641A, 0x6440, 0x6425, 0x6427, - 0x640B, 0x63E7, 0x641B, 0x642E, 0x6421, 0x640E, 0x656F, 0x6592, - 0x65D3, 0x6686, 0x668C, 0x6695, 0x6690, 0x668B, 0x668A, 0x6699, - 0x6694, 0x6678, 0x6720, 0x6966, 0x695F, 0x6938, 0x694E, 0x6962, - 0x6971, 0x693F, 0x6945, 0x696A, 0x6939, 0x6942, 0x6957, 0x6959, - 0x697A, 0x6948, 0x6949, 0x6935, 0x696C, 0x6933, 0x693D, 0x6965, - 0x68F0, 0x6978, 0x6934, 0x6969, 0x6940, 0x696F, 0x6944, 0x6976, - 0x6958, 0x6941, 0x6974, 0x694C, 0x693B, 0x694B, 0x6937, 0x695C, - 0x694F, 0x6951, 0x6932, 0x6952, 0x692F, 0x697B, 0x693C, 0x6B46, - 0x6B45, 0x6B43, 0x6B42, 0x6B48, 0x6B41, 0x6B9B, 0xFA0D, 0x6BFB, - 0x6BFC, 0x6BF9, 0x6BF7, 0x6BF8, 0x6E9B, 0x6ED6, 0x6EC8, 0x6E8F, - 0x6EC0, 0x6E9F, 0x6E93, 0x6E94, 0x6EA0, 0x6EB1, 0x6EB9, 0x6EC6, - 0x6ED2, 0x6EBD, 0x6EC1, 0x6E9E, 0x6EC9, 0x6EB7, 0x6EB0, 0x6ECD, - 0x6EA6, 0x6ECF, 0x6EB2, 0x6EBE, 0x6EC3, 0x6EDC, 0x6ED8, 0x6E99, - 0x6E92, 0x6E8E, 0x6E8D, 0x6EA4, 0x6EA1, 0x6EBF, 0x6EB3, 0x6ED0, - 0x6ECA, 0x6E97, 0x6EAE, 0x6EA3, 0x7147, 0x7154, 0x7152, 0x7163, - 0x7160, 0x7141, 0x715D, 0x7162, 0x7172, 0x7178, 0x716A, 0x7161, - 0x7142, 0x7158, 0x7143, 0x714B, 0x7170, 0x715F, 0x7150, 0x7153, - 0x7144, 0x714D, 0x715A, 0x724F, 0x728D, 0x728C, 0x7291, 0x7290, - 0x728E, 0x733C, 0x7342, 0x733B, 0x733A, 0x7340, 0x734A, 0x7349, - 0x7444, 0x744A, 0x744B, 0x7452, 0x7451, 0x7457, 0x7440, 0x744F, - 0x7450, 0x744E, 0x7442, 0x7446, 0x744D, 0x7454, 0x74E1, 0x74FF, - 0x74FE, 0x74FD, 0x751D, 0x7579, 0x7577, 0x6983, 0x75EF, 0x760F, - 0x7603, 0x75F7, 0x75FE, 0x75FC, 0x75F9, 0x75F8, 0x7610, 0x75FB, - 0x75F6, 0x75ED, 0x75F5, 0x75FD, 0x7699, 0x76B5, 0x76DD, 0x7755, - 0x775F, 0x7760, 0x7752, 0x7756, 0x775A, 0x7769, 0x7767, 0x7754, - 0x7759, 0x776D, 0x77E0, 0x7887, 0x789A, 0x7894, 0x788F, 0x7884, - 0x7895, 0x7885, 0x7886, 0x78A1, 0x7883, 0x7879, 0x7899, 0x7880, - 0x7896, 0x787B, 0x797C, 0x7982, 0x797D, 0x7979, 0x7A11, 0x7A18, -plane 39 -at 0x00 - 0x7A19, 0x7A12, 0x7A17, 0x7A15, 0x7A22, 0x7A13, 0x7A1B, 0x7A10, - 0x7AA3, 0x7AA2, 0x7A9E, 0x7AEB, 0x7B66, 0x7B64, 0x7B6D, 0x7B74, - 0x7B69, 0x7B72, 0x7B65, 0x7B73, 0x7B71, 0x7B70, 0x7B61, 0x7B78, - 0x7B76, 0x7B63, 0x7CB2, 0x7CB4, 0x7CAF, 0x7D88, 0x7D86, 0x7D80, - 0x7D8D, 0x7D7F, 0x7D85, 0x7D7A, 0x7D8E, 0x7D7B, 0x7D83, 0x7D7C, - 0x7D8C, 0x7D94, 0x7D84, 0x7D7D, 0x7D92, 0x7F6D, 0x7F6B, 0x7F67, - 0x7F68, 0x7F6C, 0x7FA6, 0x7FA5, 0x7FA7, 0x7FDB, 0x7FDC, 0x8021, - 0x8164, 0x8160, 0x8177, 0x815C, 0x8169, 0x815B, 0x8162, 0x8172, - 0x6721, 0x815E, 0x8176, 0x8167, 0x816F, 0x8144, 0x8161, 0x821D, - 0x8249, 0x8244, 0x8240, 0x8242, 0x8245, 0x84F1, 0x843F, 0x8456, - 0x8476, 0x8479, 0x848F, 0x848D, 0x8465, 0x8451, 0x8440, 0x8486, - 0x8467, 0x8430, 0x844D, 0x847D, 0x845A, 0x8459, 0x8474, 0x8473, - 0x845D, 0x8507, 0x845E, 0x8437, 0x843A, 0x8434, 0x847A, 0x8443, - 0x8478, 0x8432, 0x8445, 0x8429, 0x83D9, 0x844B, 0x842F, 0x8442, - 0x842D, 0x845F, 0x8470, 0x8439, 0x844E, 0x844C, 0x8452, 0x846F, - 0x84C5, 0x848E, 0x843B, 0x8447, 0x8436, 0x8433, 0x8468, 0x847E, - 0x8444, 0x842B, 0x8460, 0x8454, 0x846E, 0x8450, 0x870B, 0x8704, - 0x86F7, 0x870C, 0x86FA, 0x86D6, 0x86F5, 0x874D, 0x86F8, 0x870E, - 0x8709, 0x8701, 0x86F6, 0x870D, 0x8705, 0x88D6, 0x88CB, 0x88CD, - 0x88CE, 0x88DE, 0x88DB, 0x88DA, 0x88CC, 0x88D0, 0x8985, 0x899B, - 0x89DF, 0x89E5, 0x89E4, 0x89E1, 0x89E0, 0x89E2, 0x89DC, 0x89E6, - 0x8A76, 0x8A86, 0x8A7F, 0x8A61, 0x8A3F, 0x8A77, 0x8A82, 0x8A84, - 0x8A75, 0x8A83, 0x8A81, 0x8A74, 0x8A7A, 0x8C3C, 0x8C4B, 0x8C4A, - 0x8C65, 0x8C64, 0x8C66, 0x8C86, 0x8C84, 0x8C85, 0x8CCC, 0x8D68, - 0x8D69, 0x8D91, 0x8D8C, 0x8D8E, 0x8D8F, 0x8D8D, 0x8D93, 0x8D94, - 0x8D90, 0x8D92, 0x8DF0, 0x8DE0, 0x8DEC, 0x8DF1, 0x8DEE, 0x8DD0, - 0x8DE9, 0x8DE3, 0x8DE2, 0x8DE7, 0x8DF2, 0x8DEB, 0x8DF4, 0x8F06, - 0x8EFF, 0x8F01, 0x8F00, 0x8F05, 0x8F07, 0x8F08, 0x8F02, 0x8F0B, - 0x9052, 0x903F, 0x9044, 0x9049, 0x903D, 0x9110, 0x910D, 0x910F, - 0x9111, 0x9116, 0x9114, 0x910B, 0x910E, 0x916E, 0x916F, 0x9248, - 0x9252, 0x9230, 0x923A, 0x9266, 0x9233, 0x9265, 0x925E, 0x9283, - 0x922E, 0x924A, 0x9246, 0x926D, 0x926C, 0x924F, 0x9260, 0x9267, -plane 40 -at 0x00 - 0x926F, 0x9236, 0x9261, 0x9270, 0x9231, 0x9254, 0x9263, 0x9250, - 0x9272, 0x924E, 0x9253, 0x924C, 0x9256, 0x9232, 0x959F, 0x959C, - 0x959E, 0x959B, 0x9692, 0x9693, 0x9691, 0x9697, 0x96CE, 0x96FA, - 0x96FD, 0x96F8, 0x96F5, 0x9773, 0x9777, 0x9778, 0x9772, 0x980F, - 0x980D, 0x980E, 0x98AC, 0x98F6, 0x98F9, 0x99AF, 0x99B2, 0x99B0, - 0x99B5, 0x9AAD, 0x9AAB, 0x9B5B, 0x9CEA, 0x9CED, 0x9CE7, 0x9E80, - 0x9EFD, 0x50E6, 0x50D4, 0x50D7, 0x50E8, 0x50F3, 0x50DB, 0x50EA, - 0x50DD, 0x50E4, 0x50D3, 0x50EC, 0x50F0, 0x50EF, 0x50E3, 0x50E0, - 0x51D8, 0x5280, 0x5281, 0x52E9, 0x52EB, 0x5330, 0x53AC, 0x5627, - 0x5615, 0x560C, 0x5612, 0x55FC, 0x560F, 0x561C, 0x5601, 0x5613, - 0x5602, 0x55FA, 0x561D, 0x5604, 0x55FF, 0x55F9, 0x5889, 0x587C, - 0x5890, 0x5898, 0x5886, 0x5881, 0x587F, 0x5874, 0x588B, 0x587A, - 0x5887, 0x5891, 0x588E, 0x5876, 0x5882, 0x5888, 0x587B, 0x5894, - 0x588F, 0x58FE, 0x596B, 0x5ADC, 0x5AEE, 0x5AE5, 0x5AD5, 0x5AEA, - 0x5ADA, 0x5AED, 0x5AEB, 0x5AF3, 0x5AE2, 0x5AE0, 0x5ADB, 0x5AEC, - 0x5ADE, 0x5ADD, 0x5AD9, 0x5AE8, 0x5ADF, 0x5B77, 0x5BE0, 0x5BE3, - 0x5C63, 0x5D82, 0x5D80, 0x5D7D, 0x5D86, 0x5D7A, 0x5D81, 0x5D77, - 0x5D8A, 0x5D89, 0x5D88, 0x5D7E, 0x5D7C, 0x5D8D, 0x5D79, 0x5D7F, - 0x5E58, 0x5E59, 0x5E53, 0x5ED8, 0x5ED1, 0x5ED7, 0x5ECE, 0x5EDC, - 0x5ED5, 0x5ED9, 0x5ED2, 0x5ED4, 0x5F44, 0x5F43, 0x5F6F, 0x5FB6, - 0x612C, 0x6128, 0x6141, 0x615E, 0x6171, 0x6173, 0x6152, 0x6153, - 0x6172, 0x616C, 0x6180, 0x6174, 0x6154, 0x617A, 0x615B, 0x6165, - 0x613B, 0x616A, 0x6161, 0x6156, 0x6229, 0x6227, 0x622B, 0x642B, - 0x644D, 0x645B, 0x645D, 0x6474, 0x6476, 0x6472, 0x6473, 0x647D, - 0x6475, 0x6466, 0x64A6, 0x644E, 0x6482, 0x645E, 0x645C, 0x644B, - 0x6453, 0x6460, 0x6450, 0x647F, 0x643F, 0x646C, 0x646B, 0x6459, - 0x6465, 0x6477, 0x6573, 0x65A0, 0x66A1, 0x66A0, 0x669F, 0x6705, - 0x6704, 0x6722, 0x69B1, 0x69B6, 0x69C9, 0x69A0, 0x69CE, 0x6996, - 0x69B0, 0x69AC, 0x69BC, 0x6991, 0x6999, 0x698E, 0x69A7, 0x698D, - 0x69A9, 0x69BE, 0x69AF, 0x69BF, 0x69C4, 0x69BD, 0x69A4, 0x69D4, - 0x69B9, 0x69CA, 0x699A, 0x69CF, 0x69B3, 0x6993, 0x69AA, 0x69A1, - 0x699E, 0x69D9, 0x6997, 0x6990, 0x69C2, 0x69B5, 0x69A5, 0x69C6, -plane 41 -at 0x00 - 0x6B4A, 0x6B4D, 0x6B4B, 0x6B9E, 0x6B9F, 0x6BA0, 0x6BC3, 0x6BC4, - 0x6BFE, 0x6ECE, 0x6EF5, 0x6EF1, 0x6F03, 0x6F25, 0x6EF8, 0x6F37, - 0x6EFB, 0x6F2E, 0x6F09, 0x6F4E, 0x6F19, 0x6F1A, 0x6F27, 0x6F18, - 0x6F3B, 0x6F12, 0x6EED, 0x6F0A, 0x6F36, 0x6F73, 0x6EF9, 0x6EEE, - 0x6F2D, 0x6F40, 0x6F30, 0x6F3C, 0x6F35, 0x6EEB, 0x6F07, 0x6F0E, - 0x6F43, 0x6F05, 0x6EFD, 0x6EF6, 0x6F39, 0x6F1C, 0x6EFC, 0x6F3A, - 0x6F1F, 0x6F0D, 0x6F1E, 0x6F08, 0x6F21, 0x7187, 0x7190, 0x7189, - 0x7180, 0x7185, 0x7182, 0x718F, 0x717B, 0x7186, 0x7181, 0x7197, - 0x7244, 0x7253, 0x7297, 0x7295, 0x7293, 0x7343, 0x734D, 0x7351, - 0x734C, 0x7462, 0x7473, 0x7471, 0x7475, 0x7472, 0x7467, 0x746E, - 0x7500, 0x7502, 0x7503, 0x757D, 0x7590, 0x7616, 0x7608, 0x760C, - 0x7615, 0x7611, 0x760A, 0x7614, 0x76B8, 0x7781, 0x777C, 0x7785, - 0x7782, 0x776E, 0x7780, 0x776F, 0x777E, 0x7783, 0x78B2, 0x78AA, - 0x78B4, 0x78AD, 0x78A8, 0x787E, 0x78AB, 0x789E, 0x78A5, 0x78A0, - 0x78AC, 0x78A2, 0x78A4, 0x7998, 0x798A, 0x798B, 0x7996, 0x7995, - 0x7994, 0x7993, 0x7997, 0x7988, 0x7992, 0x7990, 0x7A2B, 0x7A4A, - 0x7A30, 0x7A2F, 0x7A28, 0x7A26, 0x7AA8, 0x7AAB, 0x7AAC, 0x7AEE, - 0x7B88, 0x7B9C, 0x7B8A, 0x7B91, 0x7B90, 0x7B96, 0x7B8D, 0x7B8C, - 0x7B9B, 0x7B8E, 0x7B85, 0x7B98, 0x5284, 0x7B99, 0x7BA4, 0x7B82, - 0x7CBB, 0x7CBF, 0x7CBC, 0x7CBA, 0x7DA7, 0x7DB7, 0x7DC2, 0x7DA3, - 0x7DAA, 0x7DC1, 0x7DC0, 0x7DC5, 0x7D9D, 0x7DCE, 0x7DC4, 0x7DC6, - 0x7DCB, 0x7DCC, 0x7DAF, 0x7DB9, 0x7D96, 0x7DBC, 0x7D9F, 0x7DA6, - 0x7DAE, 0x7DA9, 0x7DA1, 0x7DC9, 0x7F73, 0x7FE2, 0x7FE3, 0x7FE5, - 0x7FDE, 0x8024, 0x805D, 0x805C, 0x8189, 0x8186, 0x8183, 0x8187, - 0x818D, 0x818C, 0x818B, 0x8215, 0x8497, 0x84A4, 0x84A1, 0x849F, - 0x84BA, 0x84CE, 0x84C2, 0x84AC, 0x84AE, 0x84AB, 0x84B9, 0x84B4, - 0x84C1, 0x84CD, 0x84AA, 0x849A, 0x84B1, 0x84D0, 0x849D, 0x84A7, - 0x84BB, 0x84A2, 0x8494, 0x84C7, 0x84CC, 0x849B, 0x84A9, 0x84AF, - 0x84A8, 0x84D6, 0x8498, 0x84B6, 0x84CF, 0x84A0, 0x84D7, 0x84D4, - 0x84D2, 0x84DB, 0x84B0, 0x8491, 0x8661, 0x8733, 0x8723, 0x8728, - 0x876B, 0x8740, 0x872E, 0x871E, 0x8721, 0x8719, 0x871B, 0x8743, - 0x872C, 0x8741, 0x873E, 0x8746, 0x8720, 0x8732, 0x872A, 0x872D, -plane 42 -at 0x00 - 0x873C, 0x8712, 0x873A, 0x8731, 0x8735, 0x8742, 0x8726, 0x8727, - 0x8738, 0x8724, 0x871A, 0x8730, 0x8711, 0x88F7, 0x88E7, 0x88F1, - 0x88F2, 0x88FA, 0x88FE, 0x88EE, 0x88FC, 0x88F6, 0x88FB, 0x88F0, - 0x88EC, 0x88EB, 0x899D, 0x89A1, 0x899F, 0x899E, 0x89E9, 0x89EB, - 0x89E8, 0x8AAB, 0x8A99, 0x8A8B, 0x8A92, 0x8A8F, 0x8A96, 0x8C3D, - 0x8C68, 0x8C69, 0x8CD5, 0x8CCF, 0x8CD7, 0x8D96, 0x8E09, 0x8E02, - 0x8DFF, 0x8E0D, 0x8DFD, 0x8E0A, 0x8E03, 0x8E07, 0x8E06, 0x8E05, - 0x8DFE, 0x8E00, 0x8E04, 0x8F10, 0x8F11, 0x8F0E, 0x8F0D, 0x9123, - 0x911C, 0x9120, 0x9122, 0x911F, 0x911D, 0x911A, 0x9124, 0x9121, - 0x911B, 0x917A, 0x9172, 0x9179, 0x9173, 0x92A5, 0x92A4, 0x9276, - 0x929B, 0x927A, 0x92A0, 0x9294, 0x92AA, 0x928D, 0x92A6, 0x929A, - 0x92AB, 0x9279, 0x9297, 0x927F, 0x92A3, 0x92EE, 0x928E, 0x9282, - 0x9295, 0x92A2, 0x927D, 0x9288, 0x92A1, 0x928A, 0x9286, 0x928C, - 0x9299, 0x92A7, 0x927E, 0x9287, 0x92A9, 0x929D, 0x928B, 0x922D, - 0x969E, 0x96A1, 0x96FF, 0x9758, 0x977D, 0x977A, 0x977E, 0x9783, - 0x9780, 0x9782, 0x977B, 0x9784, 0x9781, 0x977F, 0x97CE, 0x97CD, - 0x9816, 0x98AD, 0x98AE, 0x9902, 0x9900, 0x9907, 0x999D, 0x999C, - 0x99C3, 0x99B9, 0x99BB, 0x99BA, 0x99C2, 0x99BD, 0x99C7, 0x9AB1, - 0x9AE3, 0x9AE7, 0x9B3E, 0x9B3F, 0x9B60, 0x9B61, 0x9B5F, 0x9CF1, - 0x9CF2, 0x9CF5, 0x9EA7, 0x50FF, 0x5103, 0x5130, 0x50F8, 0x5106, - 0x5107, 0x50F6, 0x50FE, 0x510B, 0x510C, 0x50FD, 0x510A, 0x528B, - 0x528C, 0x52F1, 0x52EF, 0x5648, 0x5642, 0x564C, 0x5635, 0x5641, - 0x564A, 0x5649, 0x5646, 0x5658, 0x565A, 0x5640, 0x5633, 0x563D, - 0x562C, 0x563E, 0x5638, 0x562A, 0x563A, 0x571A, 0x58AB, 0x589D, - 0x58B1, 0x58A0, 0x58A3, 0x58AF, 0x58AC, 0x58A5, 0x58A1, 0x58FF, - 0x5AFF, 0x5AF4, 0x5AFD, 0x5AF7, 0x5AF6, 0x5B03, 0x5AF8, 0x5B02, - 0x5AF9, 0x5B01, 0x5B07, 0x5B05, 0x5B0F, 0x5C67, 0x5D99, 0x5D97, - 0x5D9F, 0x5D92, 0x5DA2, 0x5D93, 0x5D95, 0x5DA0, 0x5D9C, 0x5DA1, - 0x5D9A, 0x5D9E, 0x5E69, 0x5E5D, 0x5E60, 0x5E5C, 0x7DF3, 0x5EDB, - 0x5EDE, 0x5EE1, 0x5F49, 0x5FB2, 0x618B, 0x6183, 0x6179, 0x61B1, - 0x61B0, 0x61A2, 0x6189, 0x619B, 0x6193, 0x61AF, 0x61AD, 0x619F, - 0x6192, 0x61AA, 0x61A1, 0x618D, 0x6166, 0x61B3, 0x622D, 0x646E, -plane 43 -at 0x00 - 0x6470, 0x6496, 0x64A0, 0x6485, 0x6497, 0x649C, 0x648F, 0x648B, - 0x648A, 0x648C, 0x64A3, 0x649F, 0x6468, 0x64B1, 0x6498, 0x6576, - 0x657A, 0x6579, 0x657B, 0x65B2, 0x65B3, 0x66B5, 0x66B0, 0x66A9, - 0x66B2, 0x66B7, 0x66AA, 0x66AF, 0x6A00, 0x6A06, 0x6A17, 0x69E5, - 0x69F8, 0x6A15, 0x69F1, 0x69E4, 0x6A20, 0x69FF, 0x69EC, 0x69E2, - 0x6A1B, 0x6A1D, 0x69FE, 0x6A27, 0x69F2, 0x69EE, 0x6A14, 0x69F7, - 0x69E7, 0x6A40, 0x6A08, 0x69E6, 0x69FB, 0x6A0D, 0x69FC, 0x69EB, - 0x6A09, 0x6A04, 0x6A18, 0x6A25, 0x6A0F, 0x69F6, 0x6A26, 0x6A07, - 0x69F4, 0x6A16, 0x6B51, 0x6BA5, 0x6BA3, 0x6BA2, 0x6BA6, 0x6C01, - 0x6C00, 0x6BFF, 0x6C02, 0x6F41, 0x6F26, 0x6F7E, 0x6F87, 0x6FC6, - 0x6F92, 0x6F8D, 0x6F89, 0x6F8C, 0x6F62, 0x6F4F, 0x6F85, 0x6F5A, - 0x6F96, 0x6F76, 0x6F6C, 0x6F82, 0x6F55, 0x6F72, 0x6F52, 0x6F50, - 0x6F57, 0x6F94, 0x6F93, 0x6F5D, 0x6F00, 0x6F61, 0x6F6B, 0x6F7D, - 0x6F67, 0x6F90, 0x6F53, 0x6F8B, 0x6F69, 0x6F7F, 0x6F95, 0x6F63, - 0x6F77, 0x6F6A, 0x6F7B, 0x71B2, 0x71AF, 0x719B, 0x71B0, 0x71A0, - 0x719A, 0x71A9, 0x71B5, 0x719D, 0x71A5, 0x719E, 0x71A4, 0x71A1, - 0x71AA, 0x719C, 0x71A7, 0x71B3, 0x7298, 0x729A, 0x7358, 0x7352, - 0x735E, 0x735F, 0x7360, 0x735D, 0x735B, 0x7361, 0x735A, 0x7359, - 0x7362, 0x7487, 0x7489, 0x748A, 0x7486, 0x7481, 0x747D, 0x7485, - 0x7488, 0x747C, 0x7479, 0x7508, 0x7507, 0x757E, 0x7625, 0x761E, - 0x7619, 0x761D, 0x761C, 0x7623, 0x761A, 0x7628, 0x761B, 0x769C, - 0x769D, 0x769E, 0x769B, 0x778D, 0x778F, 0x7789, 0x7788, 0x78CD, - 0x78BB, 0x78CF, 0x78CC, 0x78D1, 0x78CE, 0x78D4, 0x78C8, 0x78C3, - 0x78C4, 0x78C9, 0x799A, 0x79A1, 0x79A0, 0x799C, 0x79A2, 0x799B, - 0x6B76, 0x7A39, 0x7AB2, 0x7AB4, 0x7AB3, 0x7BB7, 0x7BCB, 0x7BBE, - 0x7BAC, 0x7BCE, 0x7BAF, 0x7BB9, 0x7BCA, 0x7BB5, 0x7CC5, 0x7CC8, - 0x7CCC, 0x7CCB, 0x7DF7, 0x7DDB, 0x7DEA, 0x7DE7, 0x7DD7, 0x7DE1, - 0x7E03, 0x7DFA, 0x7DE6, 0x7DF6, 0x7DF1, 0x7DF0, 0x7DEE, 0x7DDF, - 0x7F76, 0x7FAC, 0x7FB0, 0x7FAD, 0x7FED, 0x7FEB, 0x7FEA, 0x7FEC, - 0x7FE6, 0x7FE8, 0x8064, 0x8067, 0x81A3, 0x819F, 0x819E, 0x8195, - 0x81A2, 0x8199, 0x8197, 0x8216, 0x824F, 0x8253, 0x8252, 0x8250, - 0x824E, 0x8251, 0x8524, 0x853B, 0x850F, 0x8500, 0x8529, 0x850E, -plane 44 -at 0x00 - 0x8509, 0x850D, 0x851F, 0x850A, 0x8527, 0x851C, 0x84FB, 0x852B, - 0x84FA, 0x8508, 0x850C, 0x84F4, 0x852A, 0x84F2, 0x8515, 0x84F7, - 0x84EB, 0x84F3, 0x84FC, 0x8512, 0x84EA, 0x84E9, 0x8516, 0x84FE, - 0x8528, 0x851D, 0x852E, 0x8502, 0x84FD, 0x851E, 0x84F6, 0x8531, - 0x8526, 0x84E7, 0x84E8, 0x84F0, 0x84EF, 0x84F9, 0x8518, 0x8520, - 0x8530, 0x850B, 0x8519, 0x852F, 0x8662, 0x8756, 0x8763, 0x8764, - 0x8777, 0x87E1, 0x8773, 0x8758, 0x8754, 0x875B, 0x8752, 0x8761, - 0x875A, 0x8751, 0x875E, 0x876D, 0x876A, 0x8750, 0x874E, 0x875F, - 0x875D, 0x876F, 0x876C, 0x877A, 0x876E, 0x875C, 0x8765, 0x874F, - 0x877B, 0x8775, 0x8762, 0x8767, 0x8769, 0x885A, 0x8905, 0x890C, - 0x8914, 0x890B, 0x8917, 0x8918, 0x8919, 0x8906, 0x8916, 0x8911, - 0x890E, 0x8909, 0x89A2, 0x89A4, 0x89A3, 0x89ED, 0x89F0, 0x89EC, - 0x8ACF, 0x8AC6, 0x8AB8, 0x8AD3, 0x8AD1, 0x8AD4, 0x8AD5, 0x8ABB, - 0x8AD7, 0x8ABE, 0x8AC0, 0x8AC5, 0x8AD8, 0x8AC3, 0x8ABA, 0x8ABD, - 0x8AD9, 0x8C3E, 0x8C4D, 0x8C8F, 0x8CE5, 0x8CDF, 0x8CD9, 0x8CE8, - 0x8CDA, 0x8CDD, 0x8CE7, 0x8DA0, 0x8D9C, 0x8DA1, 0x8D9B, 0x8E20, - 0x8E23, 0x8E25, 0x8E24, 0x8E2E, 0x8E15, 0x8E1B, 0x8E16, 0x8E11, - 0x8E19, 0x8E26, 0x8E27, 0x8E14, 0x8E12, 0x8E18, 0x8E13, 0x8E1C, - 0x8E17, 0x8E1A, 0x8F2C, 0x8F24, 0x8F18, 0x8F1A, 0x8F20, 0x8F23, - 0x8F16, 0x8F17, 0x9073, 0x9070, 0x906F, 0x9067, 0x906B, 0x912F, - 0x912B, 0x9129, 0x912A, 0x9132, 0x9126, 0x912E, 0x9185, 0x9186, - 0x918A, 0x9181, 0x9182, 0x9184, 0x9180, 0x92D0, 0x92C3, 0x92C4, - 0x92C0, 0x92D9, 0x92B6, 0x92CF, 0x92F1, 0x92DF, 0x92D8, 0x92E9, - 0x92D7, 0x92DD, 0x92CC, 0x92EF, 0x92C2, 0x92E8, 0x92CA, 0x92C8, - 0x92CE, 0x92E6, 0x92CD, 0x92D5, 0x92C9, 0x92E0, 0x92DE, 0x92E7, - 0x92D1, 0x92D3, 0x92B5, 0x92E1, 0x92C6, 0x92B4, 0x957C, 0x95AC, - 0x95AB, 0x95AE, 0x95B0, 0x96A4, 0x96A2, 0x96D3, 0x9705, 0x9708, - 0x9702, 0x975A, 0x978A, 0x978E, 0x9788, 0x97D0, 0x97CF, 0x981E, - 0x981D, 0x9826, 0x9829, 0x9828, 0x9820, 0x981B, 0x9827, 0x98B2, - 0x9908, 0x98FA, 0x9911, 0x9914, 0x9916, 0x9917, 0x9915, 0x99DC, - 0x99CD, 0x99CF, 0x99D3, 0x99D4, 0x99CE, 0x99C9, 0x99D6, 0x99D8, - 0x99CB, 0x99D7, 0x99CC, 0x9AB3, 0x9AEC, 0x9AEB, 0x9AF3, 0x9AF2, -plane 45 -at 0x00 - 0x9AF1, 0x9B46, 0x9B43, 0x9B67, 0x9B74, 0x9B71, 0x9B66, 0x9B76, - 0x9B75, 0x9B70, 0x9B68, 0x9B64, 0x9B6C, 0x9CFC, 0x9CFA, 0x9CFD, - 0x9CFF, 0x9CF7, 0x9D07, 0x9D00, 0x9CF9, 0x9CFB, 0x9D08, 0x9D05, - 0x9D04, 0x9E83, 0x9ED3, 0x9F0F, 0x9F10, 0x511C, 0x5113, 0x5117, - 0x511A, 0x5111, 0x51DE, 0x5334, 0x53E1, 0x5670, 0x5660, 0x566E, - 0x5673, 0x5666, 0x5663, 0x566D, 0x5672, 0x565E, 0x5677, 0x571C, - 0x571B, 0x58C8, 0x58BD, 0x58C9, 0x58BF, 0x58BA, 0x58C2, 0x58BC, - 0x58C6, 0x5B17, 0x5B19, 0x5B1B, 0x5B21, 0x5B14, 0x5B13, 0x5B10, - 0x5B16, 0x5B28, 0x5B1A, 0x5B20, 0x5B1E, 0x5BEF, 0x5DAC, 0x5DB1, - 0x5DA9, 0x5DA7, 0x5DB5, 0x5DB0, 0x5DAE, 0x5DAA, 0x5DA8, 0x5DB2, - 0x5DAD, 0x5DAF, 0x5DB4, 0x5E67, 0x5E68, 0x5E66, 0x5E6F, 0x5EE9, - 0x5EE7, 0x5EE6, 0x5EE8, 0x5EE5, 0x5F4B, 0x5FBC, 0x619D, 0x61A8, - 0x6196, 0x61C5, 0x61B4, 0x61C6, 0x61C1, 0x61CC, 0x61BA, 0x61BF, - 0x61B8, 0x618C, 0x64D7, 0x64D6, 0x64D0, 0x64CF, 0x64C9, 0x64BD, - 0x6489, 0x64C3, 0x64DB, 0x64F3, 0x64D9, 0x6533, 0x657F, 0x657C, - 0x65A2, 0x66C8, 0x66BE, 0x66C0, 0x66CA, 0x66CB, 0x66CF, 0x66BD, - 0x66BB, 0x66BA, 0x66CC, 0x6723, 0x6A34, 0x6A66, 0x6A49, 0x6A67, - 0x6A32, 0x6A68, 0x6A3E, 0x6A5D, 0x6A6D, 0x6A76, 0x6A5B, 0x6A51, - 0x6A28, 0x6A5A, 0x6A3B, 0x6A3F, 0x6A41, 0x6A6A, 0x6A64, 0x6A50, - 0x6A4F, 0x6A54, 0x6A6F, 0x6A69, 0x6A60, 0x6A3C, 0x6A5E, 0x6A56, - 0x6A55, 0x6A4D, 0x6A4E, 0x6A46, 0x6B55, 0x6B54, 0x6B56, 0x6BA7, - 0x6BAA, 0x6BAB, 0x6BC8, 0x6BC7, 0x6C04, 0x6C03, 0x6C06, 0x6FAD, - 0x6FCB, 0x6FA3, 0x6FC7, 0x6FBC, 0x6FCE, 0x6FC8, 0x6F5E, 0x6FC4, - 0x6FBD, 0x6F9E, 0x6FCA, 0x6FA8, 0x7004, 0x6FA5, 0x6FAE, 0x6FBA, - 0x6FAC, 0x6FAA, 0x6FCF, 0x6FBF, 0x6FB8, 0x6FA2, 0x6FC9, 0x6FAB, - 0x6FCD, 0x6FAF, 0x6FB2, 0x6FB0, 0x71C5, 0x71C2, 0x71BF, 0x71B8, - 0x71D6, 0x71C0, 0x71C1, 0x71CB, 0x71D4, 0x71CA, 0x71C7, 0x71CF, - 0x71BD, 0x71D8, 0x71BC, 0x71C6, 0x71DA, 0x71DB, 0x729D, 0x729E, - 0x7369, 0x7366, 0x7367, 0x736C, 0x7365, 0x736B, 0x736A, 0x747F, - 0x749A, 0x74A0, 0x7494, 0x7492, 0x7495, 0x74A1, 0x750B, 0x7580, - 0x762F, 0x762D, 0x7631, 0x763D, 0x7633, 0x763C, 0x7635, 0x7632, - 0x7630, 0x76BB, 0x76E6, 0x779A, 0x779D, 0x77A1, 0x779C, 0x779B, -plane 46 -at 0x00 - 0x77A2, 0x77A3, 0x7795, 0x7799, 0x7797, 0x78DD, 0x78E9, 0x78E5, - 0x78EA, 0x78DE, 0x78E3, 0x78DB, 0x78E1, 0x78E2, 0x78ED, 0x78DF, - 0x78E0, 0x79A4, 0x7A44, 0x7A48, 0x7A47, 0x7AB6, 0x7AB8, 0x7AB5, - 0x7AB1, 0x7AB7, 0x7BDE, 0x7BE3, 0x7BE7, 0x7BDD, 0x7BD5, 0x7BE5, - 0x7BDA, 0x7BE8, 0x7BF9, 0x7BD4, 0x7BEA, 0x7BE2, 0x7BDC, 0x7BEB, - 0x7BD8, 0x7BDF, 0x7CD2, 0x7CD4, 0x7CD7, 0x7CD0, 0x7CD1, 0x7E12, - 0x7E21, 0x7E17, 0x7E0C, 0x7E1F, 0x7E20, 0x7E13, 0x7E0E, 0x7E1C, - 0x7E15, 0x7E1A, 0x7E22, 0x7E0B, 0x7E0F, 0x7E16, 0x7E0D, 0x7E14, - 0x7E25, 0x7E24, 0x7F43, 0x7F7B, 0x7F7C, 0x7F7A, 0x7FB1, 0x7FEF, - 0x802A, 0x8029, 0x806C, 0x81B1, 0x81A6, 0x81AE, 0x81B9, 0x81B5, - 0x81AB, 0x81B0, 0x81AC, 0x81B4, 0x81B2, 0x81B7, 0x81A7, 0x81F2, - 0x8255, 0x8256, 0x8257, 0x8556, 0x8545, 0x856B, 0x854D, 0x8553, - 0x8561, 0x8558, 0x8540, 0x8546, 0x8564, 0x8541, 0x8562, 0x8544, - 0x8551, 0x8547, 0x8563, 0x853E, 0x855B, 0x8571, 0x854E, 0x856E, - 0x8575, 0x8555, 0x8567, 0x8560, 0x858C, 0x8566, 0x855D, 0x8554, - 0x8565, 0x856C, 0x8663, 0x8665, 0x8664, 0x879B, 0x878F, 0x8797, - 0x8793, 0x8792, 0x8788, 0x8781, 0x8796, 0x8798, 0x8779, 0x8787, - 0x87A3, 0x8785, 0x8790, 0x8791, 0x879D, 0x8784, 0x8794, 0x879C, - 0x879A, 0x8789, 0x891E, 0x8926, 0x8930, 0x892D, 0x892E, 0x8927, - 0x8931, 0x8922, 0x8929, 0x8923, 0x892F, 0x892C, 0x891F, 0x89F1, - 0x8AE0, 0x8AE2, 0x8AF2, 0x8AF4, 0x8AF5, 0x8ADD, 0x8B14, 0x8AE4, - 0x8ADF, 0x8AF0, 0x8AC8, 0x8ADE, 0x8AE1, 0x8AE8, 0x8AFF, 0x8AEF, - 0x8AFB, 0x8C91, 0x8C92, 0x8C90, 0x8CF5, 0x8CEE, 0x8CF1, 0x8CF0, - 0x8CF3, 0x8D6C, 0x8D6E, 0x8DA5, 0x8DA7, 0x8E33, 0x8E3E, 0x8E38, - 0x8E40, 0x8E45, 0x8E36, 0x8E3C, 0x8E3D, 0x8E41, 0x8E30, 0x8E3F, - 0x8EBD, 0x8F36, 0x8F2E, 0x8F35, 0x8F32, 0x8F39, 0x8F37, 0x8F34, - 0x9076, 0x9079, 0x907B, 0x9086, 0x90FA, 0x9133, 0x9135, 0x9136, - 0x9193, 0x9190, 0x9191, 0x918D, 0x918F, 0x9327, 0x931E, 0x9308, - 0x931F, 0x9306, 0x930F, 0x937A, 0x9338, 0x933C, 0x931B, 0x9323, - 0x9312, 0x9301, 0x9346, 0x932D, 0x930E, 0x930D, 0x92CB, 0x931D, - 0x92FA, 0x9325, 0x9313, 0x92F9, 0x92F7, 0x9334, 0x9302, 0x9324, - 0x92FF, 0x9329, 0x9339, 0x9335, 0x932A, 0x9314, 0x930C, 0x930B, -plane 47 -at 0x00 - 0x92FE, 0x9309, 0x9300, 0x92FB, 0x9316, 0x95BC, 0x95CD, 0x95BE, - 0x95B9, 0x95BA, 0x95B6, 0x95BF, 0x95B5, 0x95BD, 0x96A9, 0x96D4, - 0x970B, 0x9712, 0x9710, 0x9799, 0x9797, 0x9794, 0x97F0, 0x97F8, - 0x9835, 0x982F, 0x9832, 0x9924, 0x991F, 0x9927, 0x9929, 0x999E, - 0x99EE, 0x99EC, 0x99E5, 0x99E4, 0x99F0, 0x99E3, 0x99EA, 0x99E9, - 0x99E7, 0x9AB9, 0x9ABF, 0x9AB4, 0x9ABB, 0x9AF6, 0x9AFA, 0x9AF9, - 0x9AF7, 0x9B33, 0x9B80, 0x9B85, 0x9B87, 0x9B7C, 0x9B7E, 0x9B7B, - 0x9B82, 0x9B93, 0x9B92, 0x9B90, 0x9B7A, 0x9B95, 0x9B7D, 0x9B88, - 0x9D25, 0x9D17, 0x9D20, 0x9D1E, 0x9D14, 0x9D29, 0x9D1D, 0x9D18, - 0x9D22, 0x9D10, 0x9D19, 0x9D1F, 0x9E88, 0x9E86, 0x9E87, 0x9EAE, - 0x9EAD, 0x9ED5, 0x9ED6, 0x9EFA, 0x9F12, 0x9F3D, 0x5126, 0x5125, - 0x5122, 0x5124, 0x5120, 0x5129, 0x52F4, 0x5693, 0x568C, 0x568D, - 0x5686, 0x5684, 0x5683, 0x567E, 0x5682, 0x567F, 0x5681, 0x58D6, - 0x58D4, 0x58CF, 0x58D2, 0x5B2D, 0x5B25, 0x5B32, 0x5B23, 0x5B2C, - 0x5B27, 0x5B26, 0x5B2F, 0x5B2E, 0x5B7B, 0x5BF1, 0x5BF2, 0x5DB7, - 0x5E6C, 0x5E6A, 0x5FBE, 0x5FBB, 0x61C3, 0x61B5, 0x61BC, 0x61E7, - 0x61E0, 0x61E5, 0x61E4, 0x61E8, 0x61DE, 0x64EF, 0x64E9, 0x64E3, - 0x64EB, 0x64E4, 0x64E8, 0x6581, 0x6580, 0x65B6, 0x65DA, 0x66D2, - 0x6A8D, 0x6A96, 0x6A81, 0x6AA5, 0x6A89, 0x6A9F, 0x6A9B, 0x6AA1, - 0x6A9E, 0x6A87, 0x6A93, 0x6A8E, 0x6A95, 0x6A83, 0x6AA8, 0x6AA4, - 0x6A91, 0x6A7F, 0x6AA6, 0x6A9A, 0x6A85, 0x6A8C, 0x6A92, 0x6B5B, - 0x6BAD, 0x6C09, 0x6FCC, 0x6FA9, 0x6FF4, 0x6FD4, 0x6FE3, 0x6FDC, - 0x6FED, 0x6FE7, 0x6FE6, 0x6FDE, 0x6FF2, 0x6FDD, 0x6FE2, 0x6FE8, - 0x71E1, 0x71F1, 0x71E8, 0x71F2, 0x71E4, 0x71F0, 0x71E2, 0x7373, - 0x736E, 0x736F, 0x7497, 0x74B2, 0x74AB, 0x7490, 0x74AA, 0x74AD, - 0x74B1, 0x74A5, 0x74AF, 0x7510, 0x7511, 0x7512, 0x750F, 0x7584, - 0x7643, 0x7648, 0x7649, 0x7647, 0x76A4, 0x76E9, 0x77B5, 0x77AB, - 0x77B2, 0x77B7, 0x77B6, 0x77B4, 0x77B1, 0x77A8, 0x77F0, 0x78F3, - 0x78FD, 0x7902, 0x78FB, 0x78FC, 0x78F2, 0x7905, 0x78F9, 0x78FE, - 0x7904, 0x79AB, 0x79A8, 0x7A5C, 0x7A5B, 0x7A56, 0x7A58, 0x7A54, - 0x7A5A, 0x7ABE, 0x7AC0, 0x7AC1, 0x7C05, 0x7C0F, 0x7BF2, 0x7C00, - 0x7BFF, 0x7BFB, 0x7C0E, 0x7BF4, 0x7C0B, 0x7BF3, 0x7C02, 0x7C09, -plane 48 -at 0x00 - 0x7C03, 0x7C01, 0x7BF8, 0x7BFD, 0x7C06, 0x7BF0, 0x7BF1, 0x7C10, - 0x7C0A, 0x7CE8, 0x7E2D, 0x7E3C, 0x7E42, 0x7E33, 0x9848, 0x7E38, - 0x7E2A, 0x7E49, 0x7E40, 0x7E47, 0x7E29, 0x7E4C, 0x7E30, 0x7E3B, - 0x7E36, 0x7E44, 0x7E3A, 0x7F45, 0x7F7F, 0x7F7E, 0x7F7D, 0x7FF4, - 0x7FF2, 0x802C, 0x81BB, 0x81C4, 0x81CC, 0x81CA, 0x81C5, 0x81C7, - 0x81BC, 0x81E9, 0x825B, 0x825A, 0x825C, 0x8583, 0x8580, 0x858F, - 0x85A7, 0x8595, 0x85A0, 0x858B, 0x85A3, 0x857B, 0x85A4, 0x859A, - 0x859E, 0x8577, 0x857C, 0x8589, 0x85A1, 0x857A, 0x8578, 0x8557, - 0x858E, 0x8596, 0x8586, 0x858D, 0x8599, 0x859D, 0x8581, 0x85A2, - 0x8582, 0x8588, 0x8585, 0x8579, 0x8576, 0x8598, 0x8590, 0x859F, - 0x8668, 0x87BE, 0x87AA, 0x87AD, 0x87C5, 0x87B0, 0x87AC, 0x87B9, - 0x87B5, 0x87BC, 0x87AE, 0x87C9, 0x87C3, 0x87C2, 0x87CC, 0x87B7, - 0x87AF, 0x87C4, 0x87CA, 0x87B4, 0x87B6, 0x87BF, 0x87B8, 0x87BD, - 0x87DE, 0x87B2, 0x8935, 0x8933, 0x893C, 0x893E, 0x8941, 0x8952, - 0x8937, 0x8942, 0x89AD, 0x89AF, 0x89AE, 0x89F2, 0x89F3, 0x8B1E, - 0x8B18, 0x8B16, 0x8B11, 0x8B05, 0x8B0B, 0x8B22, 0x8B0F, 0x8B12, - 0x8B15, 0x8B07, 0x8B0D, 0x8B08, 0x8B06, 0x8B1C, 0x8B13, 0x8B1A, - 0x8C4F, 0x8C70, 0x8C72, 0x8C71, 0x8C6F, 0x8C95, 0x8C94, 0x8CF9, - 0x8D6F, 0x8E4E, 0x8E4D, 0x8E53, 0x8E50, 0x8E4C, 0x8E47, 0x8F43, - 0x8F40, 0x9085, 0x907E, 0x9138, 0x919A, 0x91A2, 0x919B, 0x9199, - 0x919F, 0x91A1, 0x919D, 0x91A0, 0x93A1, 0x9383, 0x93AF, 0x9364, - 0x9356, 0x9347, 0x937C, 0x9358, 0x935C, 0x9376, 0x9349, 0x9350, - 0x9351, 0x9360, 0x936D, 0x938F, 0x934C, 0x936A, 0x9379, 0x9357, - 0x9355, 0x9352, 0x934F, 0x9371, 0x9377, 0x937B, 0x9361, 0x935E, - 0x9363, 0x9367, 0x9380, 0x934E, 0x9359, 0x95C7, 0x95C0, 0x95C9, - 0x95C3, 0x95C5, 0x95B7, 0x96AE, 0x96B0, 0x96AC, 0x9720, 0x971F, - 0x9718, 0x971D, 0x9719, 0x979A, 0x97A1, 0x979C, 0x979E, 0x979D, - 0x97D5, 0x97D4, 0x97F1, 0x9841, 0x9844, 0x984A, 0x9849, 0x9845, - 0x9843, 0x9925, 0x992B, 0x992C, 0x992A, 0x9933, 0x9932, 0x992F, - 0x992D, 0x9931, 0x9930, 0x9998, 0x99A3, 0x99A1, 0x9A02, 0x99FA, - 0x99F4, 0x99F7, 0x99F9, 0x99F8, 0x99F6, 0x99FB, 0x99FD, 0x99FE, - 0x99FC, 0x9A03, 0x9ABE, 0x9AFE, 0x9AFD, 0x9B01, 0x9AFC, 0x9B48, -plane 49 -at 0x00 - 0x9B9A, 0x9BA8, 0x9B9E, 0x9B9B, 0x9BA6, 0x9BA1, 0x9BA5, 0x9BA4, - 0x9B86, 0x9BA2, 0x9BA0, 0x9BAF, 0x9D33, 0x9D41, 0x9D67, 0x9D36, - 0x9D2E, 0x9D2F, 0x9D31, 0x9D38, 0x9D30, 0x9D45, 0x9D42, 0x9D43, - 0x9D3E, 0x9D37, 0x9D40, 0x9D3D, 0x7FF5, 0x9D2D, 0x9E8A, 0x9E89, - 0x9E8D, 0x9EB0, 0x9EC8, 0x9EDA, 0x9EFB, 0x9EFF, 0x9F24, 0x9F23, - 0x9F22, 0x9F54, 0x9FA0, 0x5131, 0x512D, 0x512E, 0x5698, 0x569C, - 0x5697, 0x569A, 0x569D, 0x5699, 0x5970, 0x5B3C, 0x5C69, 0x5C6A, - 0x5DC0, 0x5E6D, 0x5E6E, 0x61D8, 0x61DF, 0x61ED, 0x61EE, 0x61F1, - 0x61EA, 0x61F0, 0x61EB, 0x61D6, 0x61E9, 0x64FF, 0x6504, 0x64FD, - 0x64F8, 0x6501, 0x6503, 0x64FC, 0x6594, 0x65DB, 0x66DA, 0x66DB, - 0x66D8, 0x6AC5, 0x6AB9, 0x6ABD, 0x6AE1, 0x6AC6, 0x6ABA, 0x6AB6, - 0x6AB7, 0x6AC7, 0x6AB4, 0x6AAD, 0x6B5E, 0x6BC9, 0x6C0B, 0x7007, - 0x700C, 0x700D, 0x7001, 0x7005, 0x7014, 0x700E, 0x6FFF, 0x7000, - 0x6FFB, 0x7026, 0x6FFC, 0x6FF7, 0x700A, 0x7201, 0x71FF, 0x71F9, - 0x7203, 0x71FD, 0x7376, 0x74B8, 0x74C0, 0x74B5, 0x74C1, 0x74BE, - 0x74B6, 0x74BB, 0x74C2, 0x7514, 0x7513, 0x765C, 0x7664, 0x7659, - 0x7650, 0x7653, 0x7657, 0x765A, 0x76A6, 0x76BD, 0x76EC, 0x77C2, - 0x77BA, 0x78FF, 0x790C, 0x7913, 0x7914, 0x7909, 0x7910, 0x7912, - 0x7911, 0x79AD, 0x79AC, 0x7A5F, 0x7C1C, 0x7C29, 0x7C19, 0x7C20, - 0x7C1F, 0x7C2D, 0x7C1D, 0x7C26, 0x7C28, 0x7C22, 0x7C25, 0x7C30, - 0x7E5C, 0x7E50, 0x7E56, 0x7E63, 0x7E58, 0x7E62, 0x7E5F, 0x7E51, - 0x7E60, 0x7E57, 0x7E53, 0x7FB5, 0x7FB3, 0x7FF7, 0x7FF8, 0x8075, - 0x81D1, 0x81D2, 0x81D0, 0x825F, 0x825E, 0x85B4, 0x85C6, 0x85C0, - 0x85C3, 0x85C2, 0x85B3, 0x85B5, 0x85BD, 0x85C7, 0x85C4, 0x85BF, - 0x85CB, 0x85CE, 0x85C8, 0x85C5, 0x85B1, 0x85B6, 0x85D2, 0x8624, - 0x85B8, 0x85B7, 0x85BE, 0x8669, 0x87E7, 0x87E6, 0x87E2, 0x87DB, - 0x87EB, 0x87EA, 0x87E5, 0x87DF, 0x87F3, 0x87E4, 0x87D4, 0x87DC, - 0x87D3, 0x87ED, 0x87D8, 0x87E3, 0x87A4, 0x87D7, 0x87D9, 0x8801, - 0x87F4, 0x87E8, 0x87DD, 0x8953, 0x894B, 0x894F, 0x894C, 0x8946, - 0x8950, 0x8951, 0x8949, 0x8B2A, 0x8B27, 0x8B23, 0x8B33, 0x8B30, - 0x8B35, 0x8B47, 0x8B2F, 0x8B3C, 0x8B3E, 0x8B31, 0x8B25, 0x8B37, - 0x8B26, 0x8B36, 0x8B2E, 0x8B24, 0x8B3B, 0x8B3D, 0x8B3A, 0x8C42, -plane 50 -at 0x00 - 0x8C75, 0x8C99, 0x8C98, 0x8C97, 0x8CFE, 0x8D04, 0x8D02, 0x8D00, - 0x8E5C, 0x8E62, 0x8E60, 0x8E57, 0x8E56, 0x8E5E, 0x8E65, 0x8E67, - 0x8E5B, 0x8E5A, 0x8E61, 0x8E5D, 0x8E69, 0x8E54, 0x8F46, 0x8F47, - 0x8F48, 0x8F4B, 0x9128, 0x913A, 0x913B, 0x913E, 0x91A8, 0x91A5, - 0x91A7, 0x91AF, 0x91AA, 0x93B5, 0x938C, 0x9392, 0x93B7, 0x939B, - 0x939D, 0x9389, 0x93A7, 0x938E, 0x93AA, 0x939E, 0x93A6, 0x9395, - 0x9388, 0x9399, 0x939F, 0x938D, 0x93B1, 0x9391, 0x93B2, 0x93A4, - 0x93A8, 0x93B4, 0x93A3, 0x93A5, 0x95D2, 0x95D3, 0x95D1, 0x96B3, - 0x96D7, 0x96DA, 0x5DC2, 0x96DF, 0x96D8, 0x96DD, 0x9723, 0x9722, - 0x9725, 0x97AC, 0x97AE, 0x97A8, 0x97AB, 0x97A4, 0x97AA, 0x97A2, - 0x97A5, 0x97D7, 0x97D9, 0x97D6, 0x97D8, 0x97FA, 0x9850, 0x9851, - 0x9852, 0x98B8, 0x9941, 0x993C, 0x993A, 0x9A0F, 0x9A0B, 0x9A09, - 0x9A0D, 0x9A04, 0x9A11, 0x9A0A, 0x9A05, 0x9A07, 0x9A06, 0x9AC0, - 0x9ADC, 0x9B08, 0x9B04, 0x9B05, 0x9B29, 0x9B35, 0x9B4A, 0x9B4C, - 0x9B4B, 0x9BC7, 0x9BC6, 0x9BC3, 0x9BBF, 0x9BC1, 0x9BB5, 0x9BB8, - 0x9BD3, 0x9BB6, 0x9BC4, 0x9BB9, 0x9BBD, 0x9D5C, 0x9D53, 0x9D4F, - 0x9D4A, 0x9D5B, 0x9D4B, 0x9D59, 0x9D56, 0x9D4C, 0x9D57, 0x9D52, - 0x9D54, 0x9D5F, 0x9D58, 0x9D5A, 0x9E8E, 0x9E8C, 0x9EDF, 0x9F01, - 0x9F00, 0x9F16, 0x9F25, 0x9F2B, 0x9F2A, 0x9F29, 0x9F28, 0x9F4C, - 0x9F55, 0x5134, 0x5135, 0x5296, 0x52F7, 0x53B4, 0x56AB, 0x56AD, - 0x56A6, 0x56A7, 0x56AA, 0x56AC, 0x58DA, 0x58DD, 0x58DB, 0x5912, - 0x5B3D, 0x5B3E, 0x5B3F, 0x5DC3, 0x5E70, 0x5FBF, 0x61FB, 0x6507, - 0x6510, 0x650D, 0x6509, 0x650C, 0x650E, 0x6584, 0x65DE, 0x65DD, - 0x66DE, 0x6AE7, 0x6AE0, 0x6ACC, 0x6AD1, 0x6AD9, 0x6ACB, 0x6ADF, - 0x6ADC, 0x6AD0, 0x6AEB, 0x6ACF, 0x6ACD, 0x6ADE, 0x6B60, 0x6BB0, - 0x6C0C, 0x7019, 0x7027, 0x7020, 0x7016, 0x702B, 0x7021, 0x7022, - 0x7023, 0x7029, 0x7017, 0x7024, 0x701C, 0x702A, 0x720C, 0x720A, - 0x7207, 0x7202, 0x7205, 0x72A5, 0x72A6, 0x72A4, 0x72A3, 0x72A1, - 0x74CB, 0x74C5, 0x74B7, 0x74C3, 0x7516, 0x7660, 0x77C9, 0x77CA, - 0x77C4, 0x77F1, 0x791D, 0x791B, 0x7921, 0x791C, 0x7917, 0x791E, - 0x79B0, 0x7A67, 0x7A68, 0x7C33, 0x7C3C, 0x7C39, 0x7C2C, 0x7C3B, - 0x7CEC, 0x7CEA, 0x7E76, 0x7E75, 0x7E78, 0x7E70, 0x7E77, 0x7E6F, -plane 51 -at 0x00 - 0x7E7A, 0x7E72, 0x7E74, 0x7E68, 0x7F4B, 0x7F4A, 0x7F83, 0x7F86, - 0x7FB7, 0x7FFD, 0x7FFE, 0x8078, 0x81D7, 0x81D5, 0x8264, 0x8261, - 0x8263, 0x85EB, 0x85F1, 0x85ED, 0x85D9, 0x85E1, 0x85E8, 0x85DA, - 0x85D7, 0x85EC, 0x85F2, 0x85F8, 0x85D8, 0x85DF, 0x85E3, 0x85DC, - 0x85D1, 0x85F0, 0x85E6, 0x85EF, 0x85DE, 0x85E2, 0x8800, 0x87FA, - 0x8803, 0x87F6, 0x87F7, 0x8809, 0x880C, 0x880B, 0x8806, 0x87FC, - 0x8808, 0x87FF, 0x880A, 0x8802, 0x8962, 0x895A, 0x895B, 0x8957, - 0x8961, 0x895C, 0x8958, 0x895D, 0x8959, 0x8988, 0x89B7, 0x89B6, - 0x89F6, 0x8B50, 0x8B48, 0x8B4A, 0x8B40, 0x8B53, 0x8B56, 0x8B54, - 0x8B4B, 0x8B55, 0x8B51, 0x8B42, 0x8B52, 0x8B57, 0x8C43, 0x8C77, - 0x8C76, 0x8C9A, 0x8D06, 0x8D07, 0x8D09, 0x8DAC, 0x8DAA, 0x8DAD, - 0x8DAB, 0x8E6D, 0x8E78, 0x8E73, 0x8E6A, 0x8E6F, 0x8E7B, 0x8EC2, - 0x8F52, 0x8F51, 0x8F4F, 0x8F50, 0x8F53, 0x8FB4, 0x9140, 0x913F, - 0x91B0, 0x91AD, 0x93DE, 0x93C7, 0x93CF, 0x93C2, 0x93DA, 0x93D0, - 0x93F9, 0x93EC, 0x93CC, 0x93D9, 0x93A9, 0x93E6, 0x93CA, 0x93D4, - 0x93EE, 0x93E3, 0x93D5, 0x93C4, 0x93CE, 0x93C0, 0x93D2, 0x93E7, - 0x957D, 0x95DA, 0x95DB, 0x96E1, 0x9729, 0x972B, 0x972C, 0x9728, - 0x9726, 0x97B3, 0x97B7, 0x97B6, 0x97DD, 0x97DE, 0x97DF, 0x985C, - 0x9859, 0x985D, 0x9857, 0x98BF, 0x98BD, 0x98BB, 0x98BE, 0x9948, - 0x9947, 0x9943, 0x99A6, 0x99A7, 0x9A1A, 0x9A15, 0x9A25, 0x9A1D, - 0x9A24, 0x9A1B, 0x9A22, 0x9A20, 0x9A27, 0x9A23, 0x9A1E, 0x9A1C, - 0x9A14, 0x9AC2, 0x9B0B, 0x9B0A, 0x9B0E, 0x9B0C, 0x9B37, 0x9BEA, - 0x9BEB, 0x9BE0, 0x9BDE, 0x9BE4, 0x9BE6, 0x9BE2, 0x9BF0, 0x9BD4, - 0x9BD7, 0x9BEC, 0x9BDC, 0x9BD9, 0x9BE5, 0x9BD5, 0x9BE1, 0x9BDA, - 0x9D77, 0x9D81, 0x9D8A, 0x9D84, 0x9D88, 0x9D71, 0x9D80, 0x9D78, - 0x9D86, 0x9D8B, 0x9D8C, 0x9D7D, 0x9D6B, 0x9D74, 0x9D75, 0x9D70, - 0x9D69, 0x9D85, 0x9D73, 0x9D7B, 0x9D82, 0x9D6F, 0x9D79, 0x9D7F, - 0x9D87, 0x9D68, 0x9E94, 0x9E91, 0x9EC0, 0x9EFC, 0x9F2D, 0x9F40, - 0x9F41, 0x9F4D, 0x9F56, 0x9F57, 0x9F58, 0x5337, 0x56B2, 0x56B5, - 0x56B3, 0x58E3, 0x5B45, 0x5DC6, 0x5DC7, 0x5EEE, 0x5EEF, 0x5FC0, - 0x5FC1, 0x61F9, 0x6517, 0x6516, 0x6515, 0x6513, 0x65DF, 0x66E8, - 0x66E3, 0x66E4, 0x6AF3, 0x6AF0, 0x6AEA, 0x6AE8, 0x6AF9, 0x6AF1, -plane 52 -at 0x00 - 0x6AEE, 0x6AEF, 0x703C, 0x7035, 0x702F, 0x7037, 0x7034, 0x7031, - 0x7042, 0x7038, 0x703F, 0x703A, 0x7039, 0x7040, 0x703B, 0x7033, - 0x7041, 0x7213, 0x7214, 0x72A8, 0x737D, 0x737C, 0x74BA, 0x76AB, - 0x76AA, 0x76BE, 0x76ED, 0x77CC, 0x77CE, 0x77CF, 0x77CD, 0x77F2, - 0x7925, 0x7923, 0x7927, 0x7928, 0x7924, 0x7929, 0x79B2, 0x7A6E, - 0x7A6C, 0x7A6D, 0x7AF7, 0x7C49, 0x7C48, 0x7C4A, 0x7C47, 0x7C45, - 0x7CEE, 0x7E7B, 0x7E7E, 0x7E81, 0x7E80, 0x7FBA, 0x7FFF, 0x8079, - 0x81DB, 0x81D9, 0x820B, 0x8268, 0x8269, 0x8622, 0x85FF, 0x8601, - 0x85FE, 0x861B, 0x8600, 0x85F6, 0x8604, 0x8609, 0x8605, 0x860C, - 0x85FD, 0x8819, 0x8810, 0x8811, 0x8817, 0x8813, 0x8816, 0x8963, - 0x8966, 0x89B9, 0x89F7, 0x8B60, 0x8B6A, 0x8B5D, 0x8B68, 0x8B63, - 0x8B65, 0x8B67, 0x8B6D, 0x8DAE, 0x8E86, 0x8E88, 0x8E84, 0x8F59, - 0x8F56, 0x8F57, 0x8F55, 0x8F58, 0x8F5A, 0x908D, 0x9143, 0x9141, - 0x91B7, 0x91B5, 0x91B2, 0x91B3, 0x940B, 0x9413, 0x93FB, 0x9420, - 0x940F, 0x9414, 0x93FE, 0x9415, 0x9410, 0x9428, 0x9419, 0x940D, - 0x93F5, 0x9400, 0x93F7, 0x9407, 0x940E, 0x9416, 0x9412, 0x93FA, - 0x9409, 0x93F8, 0x940A, 0x93FF, 0x93FC, 0x940C, 0x93F6, 0x9411, - 0x9406, 0x95DE, 0x95E0, 0x95DF, 0x972E, 0x972F, 0x97B9, 0x97BB, - 0x97FD, 0x97FE, 0x9860, 0x9862, 0x9863, 0x985F, 0x98C1, 0x98C2, - 0x9950, 0x994E, 0x9959, 0x994C, 0x994B, 0x9953, 0x9A32, 0x9A34, - 0x9A31, 0x9A2C, 0x9A2A, 0x9A36, 0x9A29, 0x9A2E, 0x9A38, 0x9A2D, - 0x9AC7, 0x9ACA, 0x9AC6, 0x9B10, 0x9B12, 0x9B11, 0x9C0B, 0x9C08, - 0x9BF7, 0x9C05, 0x9C12, 0x9BF8, 0x9C40, 0x9C07, 0x9C0E, 0x9C06, - 0x9C17, 0x9C14, 0x9C09, 0x9D9F, 0x9D99, 0x9DA4, 0x9D9D, 0x9D92, - 0x9D98, 0x9D90, 0x9D9B, 0x9DA0, 0x9D94, 0x9D9C, 0x9DAA, 0x9D97, - 0x9DA1, 0x9D9A, 0x9DA2, 0x9DA8, 0x9D9E, 0x9DA3, 0x9DBF, 0x9DA9, - 0x9D96, 0x9DA6, 0x9DA7, 0x9E99, 0x9E9B, 0x9E9A, 0x9EE5, 0x9EE4, - 0x9EE7, 0x9EE6, 0x9F30, 0x9F2E, 0x9F5B, 0x9F60, 0x9F5E, 0x9F5D, - 0x9F59, 0x9F91, 0x513A, 0x5139, 0x5298, 0x5297, 0x56C3, 0x56BD, - 0x56BE, 0x5B48, 0x5B47, 0x5DCB, 0x5DCF, 0x5EF1, 0x61FD, 0x651B, - 0x6B02, 0x6AFC, 0x6B03, 0x6AF8, 0x6B00, 0x7043, 0x7044, 0x704A, - 0x7048, 0x7049, 0x7045, 0x7046, 0x721D, 0x721A, 0x7219, 0x737E, -plane 53 -at 0x00 - 0x7517, 0x766A, 0x77D0, 0x792D, 0x7931, 0x792F, 0x7C54, 0x7C53, - 0x7CF2, 0x7E8A, 0x7E87, 0x7E88, 0x7E8B, 0x7E86, 0x7E8D, 0x7F4D, - 0x7FBB, 0x8030, 0x81DD, 0x8618, 0x862A, 0x8626, 0x861F, 0x8623, - 0x861C, 0x8619, 0x8627, 0x862E, 0x8621, 0x8620, 0x8629, 0x861E, - 0x8625, 0x8829, 0x881D, 0x881B, 0x8820, 0x8824, 0x881C, 0x882B, - 0x884A, 0x896D, 0x8969, 0x896E, 0x896B, 0x89FA, 0x8B79, 0x8B78, - 0x8B45, 0x8B7A, 0x8B7B, 0x8D10, 0x8D14, 0x8DAF, 0x8E8E, 0x8E8C, - 0x8F5E, 0x8F5B, 0x8F5D, 0x9146, 0x9144, 0x9145, 0x91B9, 0x943F, - 0x943B, 0x9436, 0x9429, 0x943D, 0x943C, 0x9430, 0x9439, 0x942A, - 0x9437, 0x942C, 0x9440, 0x9431, 0x95E5, 0x95E4, 0x95E3, 0x9735, - 0x973A, 0x97BF, 0x97E1, 0x9864, 0x98C9, 0x98C6, 0x98C0, 0x9958, - 0x9956, 0x9A39, 0x9A3D, 0x9A46, 0x9A44, 0x9A42, 0x9A41, 0x9A3A, - 0x9A3F, 0x9ACD, 0x9B15, 0x9B17, 0x9B18, 0x9B16, 0x9B3A, 0x9B52, - 0x9C2B, 0x9C1D, 0x9C1C, 0x9C2C, 0x9C23, 0x9C28, 0x9C29, 0x9C24, - 0x9C21, 0x9DB7, 0x9DB6, 0x9DBC, 0x9DC1, 0x9DC7, 0x9DCA, 0x9DCF, - 0x9DBE, 0x9DC5, 0x9DC3, 0x9DBB, 0x9DB5, 0x9DCE, 0x9DB9, 0x9DBA, - 0x9DAC, 0x9DC8, 0x9DB1, 0x9DAD, 0x9DCC, 0x9DB3, 0x9DCD, 0x9DB2, - 0x9E7A, 0x9E9C, 0x9EEB, 0x9EEE, 0x9EED, 0x9F1B, 0x9F18, 0x9F1A, - 0x9F31, 0x9F4E, 0x9F65, 0x9F64, 0x9F92, 0x4EB9, 0x56C6, 0x56C5, - 0x56CB, 0x5971, 0x5B4B, 0x5B4C, 0x5DD5, 0x5DD1, 0x5EF2, 0x6521, - 0x6520, 0x6526, 0x6522, 0x6B0B, 0x6B08, 0x6B09, 0x6C0D, 0x7055, - 0x7056, 0x7057, 0x7052, 0x721E, 0x721F, 0x72A9, 0x737F, 0x74D8, - 0x74D5, 0x74D9, 0x74D7, 0x766D, 0x76AD, 0x7935, 0x79B4, 0x7A70, - 0x7A71, 0x7C57, 0x7C5C, 0x7C59, 0x7C5B, 0x7C5A, 0x7CF4, 0x7CF1, - 0x7E91, 0x7F4F, 0x7F87, 0x81DE, 0x826B, 0x8634, 0x8635, 0x8633, - 0x862C, 0x8632, 0x8636, 0x882C, 0x8828, 0x8826, 0x882A, 0x8825, - 0x8971, 0x89BF, 0x89BE, 0x89FB, 0x8B7E, 0x8B84, 0x8B82, 0x8B86, - 0x8B85, 0x8B7F, 0x8D15, 0x8E95, 0x8E94, 0x8E9A, 0x8E92, 0x8E90, - 0x8E96, 0x8E97, 0x8F60, 0x8F62, 0x9147, 0x944C, 0x9450, 0x944A, - 0x944B, 0x944F, 0x9447, 0x9445, 0x9448, 0x9449, 0x9446, 0x973F, - 0x97E3, 0x986A, 0x9869, 0x98CB, 0x9954, 0x995B, 0x9A4E, 0x9A53, - 0x9A54, 0x9A4C, 0x9A4F, 0x9A48, 0x9A4A, 0x9A49, 0x9A52, 0x9A50, -plane 54 -at 0x00 - 0x9AD0, 0x9B19, 0x9B2B, 0x9B3B, 0x9B56, 0x9B55, 0x9C46, 0x9C48, - 0x9C3F, 0x9C44, 0x9C39, 0x9C33, 0x9C41, 0x9C3C, 0x9C37, 0x9C34, - 0x9C32, 0x9C3D, 0x9C36, 0x9DDB, 0x9DD2, 0x9DDE, 0x9DDA, 0x9DCB, - 0x9DD0, 0x9DDC, 0x9DD1, 0x9DDF, 0x9DE9, 0x9DD9, 0x9DD8, 0x9DD6, - 0x9DF5, 0x9DD5, 0x9DDD, 0x9EB6, 0x9EF0, 0x9F35, 0x9F33, 0x9F32, - 0x9F42, 0x9F6B, 0x9F95, 0x9FA2, 0x513D, 0x5299, 0x58E8, 0x58E7, - 0x5972, 0x5B4D, 0x5DD8, 0x882F, 0x5F4F, 0x6201, 0x6203, 0x6204, - 0x6529, 0x6525, 0x6596, 0x66EB, 0x6B11, 0x6B12, 0x6B0F, 0x6BCA, - 0x705B, 0x705A, 0x7222, 0x7382, 0x7381, 0x7383, 0x7670, 0x77D4, - 0x7C67, 0x7C66, 0x7E95, 0x826C, 0x863A, 0x8640, 0x8639, 0x863C, - 0x8631, 0x863B, 0x863E, 0x8830, 0x8832, 0x882E, 0x8833, 0x8976, - 0x8974, 0x8973, 0x89FE, 0x8B8C, 0x8B8E, 0x8B8B, 0x8B88, 0x8C45, - 0x8D19, 0x8E98, 0x8F64, 0x8F63, 0x91BC, 0x9462, 0x9455, 0x945D, - 0x9457, 0x945E, 0x97C4, 0x97C5, 0x9800, 0x9A56, 0x9A59, 0x9B1E, - 0x9B1F, 0x9B20, 0x9C52, 0x9C58, 0x9C50, 0x9C4A, 0x9C4D, 0x9C4B, - 0x9C55, 0x9C59, 0x9C4C, 0x9C4E, 0x9DFB, 0x9DF7, 0x9DEF, 0x9DE3, - 0x9DEB, 0x9DF8, 0x9DE4, 0x9DF6, 0x9DE1, 0x9DEE, 0x9DE6, 0x9DF2, - 0x9DF0, 0x9DE2, 0x9DEC, 0x9DF4, 0x9DF3, 0x9DE8, 0x9DED, 0x9EC2, - 0x9ED0, 0x9EF2, 0x9EF3, 0x9F06, 0x9F1C, 0x9F38, 0x9F37, 0x9F36, - 0x9F43, 0x9F4F, 0x9F71, 0x9F70, 0x9F6E, 0x9F6F, 0x56D3, 0x56CD, - 0x5B4E, 0x5C6D, 0x652D, 0x66ED, 0x66EE, 0x6B13, 0x705F, 0x7061, - 0x705D, 0x7060, 0x7223, 0x74DB, 0x74E5, 0x77D5, 0x7938, 0x79B7, - 0x79B6, 0x7C6A, 0x7E97, 0x7F89, 0x826D, 0x8643, 0x8838, 0x8837, - 0x8835, 0x884B, 0x8B94, 0x8B95, 0x8E9E, 0x8E9F, 0x8EA0, 0x8E9D, - 0x91BE, 0x91BD, 0x91C2, 0x946B, 0x9468, 0x9469, 0x96E5, 0x9746, - 0x9743, 0x9747, 0x97C7, 0x97E5, 0x9A5E, 0x9AD5, 0x9B59, 0x9C63, - 0x9C67, 0x9C66, 0x9C62, 0x9C5E, 0x9C60, 0x9E02, 0x9DFE, 0x9E07, - 0x9E03, 0x9E06, 0x9E05, 0x9E00, 0x9E01, 0x9E09, 0x9DFF, 0x9DFD, - 0x9E04, 0x9EA0, 0x9F1E, 0x9F46, 0x9F74, 0x9F75, 0x9F76, 0x56D4, - 0x652E, 0x65B8, 0x6B18, 0x6B19, 0x6B17, 0x6B1A, 0x7062, 0x7226, - 0x72AA, 0x77D8, 0x77D9, 0x7939, 0x7C69, 0x7C6B, 0x7CF6, 0x7E9A, - 0x7E98, 0x7E9B, 0x7E99, 0x81E0, 0x81E1, 0x8646, 0x8647, 0x8648, -plane 55 -at 0x00 - 0x8979, 0x897A, 0x897C, 0x897B, 0x89FF, 0x8B98, 0x8B99, 0x8EA5, - 0x8EA4, 0x8EA3, 0x946E, 0x946D, 0x946F, 0x9471, 0x9473, 0x9749, - 0x9872, 0x995F, 0x9C68, 0x9C6E, 0x9C6D, 0x9E0B, 0x9E0D, 0x9E10, - 0x9E0F, 0x9E12, 0x9E11, 0x9EA1, 0x9EF5, 0x9F09, 0x9F47, 0x9F78, - 0x9F7B, 0x9F7A, 0x9F79, 0x571E, 0x7066, 0x7C6F, 0x883C, 0x8DB2, - 0x8EA6, 0x91C3, 0x9474, 0x9478, 0x9476, 0x9475, 0x9A60, 0x9C74, - 0x9C73, 0x9C71, 0x9C75, 0x9E14, 0x9E13, 0x9EF6, 0x9F0A, 0x9FA4, - 0x7068, 0x7065, 0x7CF7, 0x866A, 0x883E, 0x883D, 0x883F, 0x8B9E, - 0x8C9C, 0x8EA9, 0x8EC9, 0x974B, 0x9873, 0x9874, 0x98CC, 0x9961, - 0x99AB, 0x9A64, 0x9A66, 0x9A67, 0x9B24, 0x9E15, 0x9E17, 0x9F48, - 0x6207, 0x6B1E, 0x7227, 0x864C, 0x8EA8, 0x9482, 0x9480, 0x9481, - 0x9A69, 0x9A68, 0x9B2E, 0x9E19, 0x7229, 0x864B, 0x8B9F, 0x9483, - 0x9C79, 0x9EB7, 0x7675, 0x9A6B, 0x9C7A, 0x9E1D, 0x7069, 0x706A, - 0x9EA4, 0x9F7E, 0x9F49, 0x9F98, 0x7881, 0x92B9, 0x88CF, 0x58BB, - 0x6052, 0x7CA7, 0x5AFA, 0x2554, 0x2566, 0x2557, 0x2560, 0x256C, - 0x2563, 0x255A, 0x2569, 0x255D, 0x2552, 0x2564, 0x2555, 0x255E, - 0x256A, 0x2561, 0x2558, 0x2567, 0x255B, 0x2553, 0x2565, 0x2556, - 0x255F, 0x256B, 0x2562, 0x2559, 0x2568, 0x255C, 0x2551, 0x2550, - 0x256D, 0x256E, 0x2570, 0x256F, 0x2593, 0, 0, 0, diff --git a/Build/source/texk/ttf2pt1/chinese/cugb.map b/Build/source/texk/ttf2pt1/chinese/cugb.map deleted file mode 100644 index 46adc115f37..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/cugb.map +++ /dev/null @@ -1,1181 +0,0 @@ -# -# For Unicode GB 2312-80 Chinese font to create compact -# CJK fonts Type1 fonts. -# -plane 01 -at 0x00 - 0x3000, 0x3001, 0x3002, 0x00B7, 0x02C9, 0x02C7, 0x00A8, 0x3003, - 0x3005, 0x2014, 0xFF5E, 0x2016, 0x2026, 0x2018, 0x2019, 0x201C, - 0x201D, 0x3014, 0x3015, 0x3008, 0x3009, 0x300A, 0x300B, 0x300C, - 0x300D, 0x300E, 0x300F, 0x3016, 0x3017, 0x3010, 0x3011, 0x00B1, - 0x00D7, 0x00F7, 0x2236, 0x2227, 0x2228, 0x2211, 0x220F, 0x222A, - 0x2229, 0x2208, 0x2237, 0x221A, 0x22A5, 0x2225, 0x2220, 0x2312, - 0x2299, 0x222B, 0x222E, 0x2261, 0x224C, 0x2248, 0x223D, 0x221D, - 0x2260, 0x226E, 0x226F, 0x2264, 0x2265, 0x221E, 0x2235, 0x2234, - 0x2642, 0x2640, 0x00B0, 0x2032, 0x2033, 0x2103, 0xFF04, 0x00A4, - 0xFFE0, 0xFFE1, 0x2030, 0x00A7, 0x2116, 0x2606, 0x2605, 0x25CB, - 0x25CF, 0x25CE, 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25B3, 0x25B2, - 0x203B, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x2488, 0x2489, - 0x248A, 0x248B, 0x248C, 0x248D, 0x248E, 0x248F, 0x2490, 0x2491, - 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, 0x2497, 0x2498, 0x2499, - 0x249A, 0x249B, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, - 0x247A, 0x247B, 0x247C, 0x247D, 0x247E, 0x247F, 0x2480, 0x2481, - 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, 0x2487, 0x2460, 0x2461, - 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, - 0, 0, 0x3220, 0x3221, 0x3222, 0x3223, 0x3224, 0x3225, - 0x3226, 0x3227, 0x3228, 0x3229, 0, 0, 0x2160, 0x2161, - 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, - 0x216A, 0x216B, 0, 0, 0xFF01, 0xFF02, 0xFF03, 0xFFE5, - 0xFF05, 0xFF06, 0xFF07, 0xFF08, 0xFF09, 0xFF0A, 0xFF0B, 0xFF0C, - 0xFF0D, 0xFF0E, 0xFF0F, 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, - 0xFF15, 0xFF16, 0xFF17, 0xFF18, 0xFF19, 0xFF1A, 0xFF1B, 0xFF1C, - 0xFF1D, 0xFF1E, 0xFF1F, 0xFF20, 0xFF21, 0xFF22, 0xFF23, 0xFF24, - 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, - 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, - 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0xFF3B, 0xFF3C, - 0xFF3D, 0xFF3E, 0xFF3F, 0xFF40, 0xFF41, 0xFF42, 0xFF43, 0xFF44, -plane 02 -at 0x00 - 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, - 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, - 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0xFF5B, 0xFF5C, - 0xFF5D, 0xFFE3, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, - 0x3047, 0x3048, 0x3049, 0x304A, 0x304B, 0x304C, 0x304D, 0x304E, - 0x304F, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, - 0x3057, 0x3058, 0x3059, 0x305A, 0x305B, 0x305C, 0x305D, 0x305E, - 0x305F, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, - 0x3067, 0x3068, 0x3069, 0x306A, 0x306B, 0x306C, 0x306D, 0x306E, - 0x306F, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, - 0x3077, 0x3078, 0x3079, 0x307A, 0x307B, 0x307C, 0x307D, 0x307E, - 0x307F, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, - 0x3087, 0x3088, 0x3089, 0x308A, 0x308B, 0x308C, 0x308D, 0x308E, - 0x308F, 0x3090, 0x3091, 0x3092, 0x3093, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0x30A1, 0x30A2, 0x30A3, 0x30A4, 0x30A5, 0x30A6, 0x30A7, 0x30A8, - 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, 0x30B0, - 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, 0x30B8, - 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, 0x30C0, - 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, 0x30C8, - 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, 0x30D0, - 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, 0x30D8, - 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, 0x30E0, - 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0x30E7, 0x30E8, - 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EE, 0x30EF, 0x30F0, - 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, 0x30F6, 0, 0, - 0, 0, 0, 0, 0, 0, 0x0391, 0x0392, - 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039A, - 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, 0x03A0, 0x03A1, 0x03A3, - 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, 0x03A9, 0, 0, - 0, 0, 0, 0, 0, 0, 0x03B1, 0x03B2, - 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, 0x03B8, 0x03B9, 0x03BA, -plane 03 -at 0x00 - 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, 0x03C0, 0x03C1, 0x03C3, - 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, 0x03C9, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x0410, 0x0411, 0x0412, 0x0413, - 0x0414, 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, - 0x041B, 0x041C, 0x041D, 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, - 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, - 0x042B, 0x042C, 0x042D, 0x042E, 0x042F, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x0430, 0x0431, 0x0432, 0x0433, - 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, - 0x043B, 0x043C, 0x043D, 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, - 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, - 0x044B, 0x044C, 0x044D, 0x044E, 0x044F, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x0101, 0x00E1, 0x01CE, 0x00E0, 0x0113, 0x00E9, - 0x011B, 0x00E8, 0x012B, 0x00ED, 0x01D0, 0x00EC, 0x014D, 0x00F3, - 0x01D2, 0x00F2, 0x016B, 0x00FA, 0x01D4, 0x00F9, 0x01D6, 0x01D8, - 0x01DA, 0x01DC, 0x00FC, 0x00EA, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x3105, 0x3106, - 0x3107, 0x3108, 0x3109, 0x310A, 0x310B, 0x310C, 0x310D, 0x310E, - 0x310F, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, - 0x3117, 0x3118, 0x3119, 0x311A, 0x311B, 0x311C, 0x311D, 0x311E, - 0x311F, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, - 0x3127, 0x3128, 0x3129, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0x2500, 0x2501, 0x2502, 0x2503, 0x2504, - 0x2505, 0x2506, 0x2507, 0x2508, 0x2509, 0x250A, 0x250B, 0x250C, -plane 04 -at 0x00 - 0x250D, 0x250E, 0x250F, 0x2510, 0x2511, 0x2512, 0x2513, 0x2514, - 0x2515, 0x2516, 0x2517, 0x2518, 0x2519, 0x251A, 0x251B, 0x251C, - 0x251D, 0x251E, 0x251F, 0x2520, 0x2521, 0x2522, 0x2523, 0x2524, - 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252A, 0x252B, 0x252C, - 0x252D, 0x252E, 0x252F, 0x2530, 0x2531, 0x2532, 0x2533, 0x2534, - 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253A, 0x253B, 0x253C, - 0x253D, 0x253E, 0x253F, 0x2540, 0x2541, 0x2542, 0x2543, 0x2544, - 0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254A, 0x254B, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 05 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 06 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x554A, 0x963F, 0x57C3, 0x6328, 0x54CE, 0x5509, - 0x54C0, 0x7691, 0x764C, 0x853C, 0x77EE, 0x827E, 0x788D, 0x7231, - 0x9698, 0x978D, 0x6C28, 0x5B89, 0x4FFA, 0x6309, 0x6697, 0x5CB8, - 0x80FA, 0x6848, 0x80AE, 0x6602, 0x76CE, 0x51F9, 0x6556, 0x71AC, - 0x7FF1, 0x8884, 0x50B2, 0x5965, 0x61CA, 0x6FB3, 0x82AD, 0x634C, - 0x6252, 0x53ED, 0x5427, 0x7B06, 0x516B, 0x75A4, 0x5DF4, 0x62D4, - 0x8DCB, 0x9776, 0x628A, 0x8019, 0x575D, 0x9738, 0x7F62, 0x7238, - 0x767D, 0x67CF, 0x767E, 0x6446, 0x4F70, 0x8D25, 0x62DC, 0x7A17, - 0x6591, 0x73ED, 0x642C, 0x6273, 0x822C, 0x9881, 0x677F, 0x7248, - 0x626E, 0x62CC, 0x4F34, 0x74E3, 0x534A, 0x529E, 0x7ECA, 0x90A6, - 0x5E2E, 0x6886, 0x699C, 0x8180, 0x7ED1, 0x68D2, 0x78C5, 0x868C, - 0x9551, 0x508D, 0x8C24, 0x82DE, 0x80DE, 0x5305, 0x8912, 0x5265, - 0x8584, 0x96F9, 0x4FDD, 0x5821, 0x9971, 0x5B9D, 0x62B1, 0x62A5, - 0x66B4, 0x8C79, 0x9C8D, 0x7206, 0x676F, 0x7891, 0x60B2, 0x5351, - 0x5317, 0x8F88, 0x80CC, 0x8D1D, 0x94A1, 0x500D, 0x72C8, 0x5907, - 0x60EB, 0x7119, 0x88AB, 0x5954, 0x82EF, 0x672C, 0x7B28, 0x5D29, -plane 07 -at 0x00 - 0x7EF7, 0x752D, 0x6CF5, 0x8E66, 0x8FF8, 0x903C, 0x9F3B, 0x6BD4, - 0x9119, 0x7B14, 0x5F7C, 0x78A7, 0x84D6, 0x853D, 0x6BD5, 0x6BD9, - 0x6BD6, 0x5E01, 0x5E87, 0x75F9, 0x95ED, 0x655D, 0x5F0A, 0x5FC5, - 0x8F9F, 0x58C1, 0x81C2, 0x907F, 0x965B, 0x97AD, 0x8FB9, 0x7F16, - 0x8D2C, 0x6241, 0x4FBF, 0x53D8, 0x535E, 0x8FA8, 0x8FA9, 0x8FAB, - 0x904D, 0x6807, 0x5F6A, 0x8198, 0x8868, 0x9CD6, 0x618B, 0x522B, - 0x762A, 0x5F6C, 0x658C, 0x6FD2, 0x6EE8, 0x5BBE, 0x6448, 0x5175, - 0x51B0, 0x67C4, 0x4E19, 0x79C9, 0x997C, 0x70B3, 0x75C5, 0x5E76, - 0x73BB, 0x83E0, 0x64AD, 0x62E8, 0x94B5, 0x6CE2, 0x535A, 0x52C3, - 0x640F, 0x94C2, 0x7B94, 0x4F2F, 0x5E1B, 0x8236, 0x8116, 0x818A, - 0x6E24, 0x6CCA, 0x9A73, 0x6355, 0x535C, 0x54FA, 0x8865, 0x57E0, - 0x4E0D, 0x5E03, 0x6B65, 0x7C3F, 0x90E8, 0x6016, 0x64E6, 0x731C, - 0x88C1, 0x6750, 0x624D, 0x8D22, 0x776C, 0x8E29, 0x91C7, 0x5F69, - 0x83DC, 0x8521, 0x9910, 0x53C2, 0x8695, 0x6B8B, 0x60ED, 0x60E8, - 0x707F, 0x82CD, 0x8231, 0x4ED3, 0x6CA7, 0x85CF, 0x64CD, 0x7CD9, - 0x69FD, 0x66F9, 0x8349, 0x5395, 0x7B56, 0x4FA7, 0x518C, 0x6D4B, - 0x5C42, 0x8E6D, 0x63D2, 0x53C9, 0x832C, 0x8336, 0x67E5, 0x78B4, - 0x643D, 0x5BDF, 0x5C94, 0x5DEE, 0x8BE7, 0x62C6, 0x67F4, 0x8C7A, - 0x6400, 0x63BA, 0x8749, 0x998B, 0x8C17, 0x7F20, 0x94F2, 0x4EA7, - 0x9610, 0x98A4, 0x660C, 0x7316, 0x573A, 0x5C1D, 0x5E38, 0x957F, - 0x507F, 0x80A0, 0x5382, 0x655E, 0x7545, 0x5531, 0x5021, 0x8D85, - 0x6284, 0x949E, 0x671D, 0x5632, 0x6F6E, 0x5DE2, 0x5435, 0x7092, - 0x8F66, 0x626F, 0x64A4, 0x63A3, 0x5F7B, 0x6F88, 0x90F4, 0x81E3, - 0x8FB0, 0x5C18, 0x6668, 0x5FF1, 0x6C89, 0x9648, 0x8D81, 0x886C, - 0x6491, 0x79F0, 0x57CE, 0x6A59, 0x6210, 0x5448, 0x4E58, 0x7A0B, - 0x60E9, 0x6F84, 0x8BDA, 0x627F, 0x901E, 0x9A8B, 0x79E4, 0x5403, - 0x75F4, 0x6301, 0x5319, 0x6C60, 0x8FDF, 0x5F1B, 0x9A70, 0x803B, - 0x9F7F, 0x4F88, 0x5C3A, 0x8D64, 0x7FC5, 0x65A5, 0x70BD, 0x5145, - 0x51B2, 0x866B, 0x5D07, 0x5BA0, 0x62BD, 0x916C, 0x7574, 0x8E0C, - 0x7A20, 0x6101, 0x7B79, 0x4EC7, 0x7EF8, 0x7785, 0x4E11, 0x81ED, - 0x521D, 0x51FA, 0x6A71, 0x53A8, 0x8E87, 0x9504, 0x96CF, 0x6EC1, - 0x9664, 0x695A, 0x7840, 0x50A8, 0x77D7, 0x6410, 0x89E6, 0x5904, -plane 08 -at 0x00 - 0x63E3, 0x5DDD, 0x7A7F, 0x693D, 0x4F20, 0x8239, 0x5598, 0x4E32, - 0x75AE, 0x7A97, 0x5E62, 0x5E8A, 0x95EF, 0x521B, 0x5439, 0x708A, - 0x6376, 0x9524, 0x5782, 0x6625, 0x693F, 0x9187, 0x5507, 0x6DF3, - 0x7EAF, 0x8822, 0x6233, 0x7EF0, 0x75B5, 0x8328, 0x78C1, 0x96CC, - 0x8F9E, 0x6148, 0x74F7, 0x8BCD, 0x6B64, 0x523A, 0x8D50, 0x6B21, - 0x806A, 0x8471, 0x56F1, 0x5306, 0x4ECE, 0x4E1B, 0x51D1, 0x7C97, - 0x918B, 0x7C07, 0x4FC3, 0x8E7F, 0x7BE1, 0x7A9C, 0x6467, 0x5D14, - 0x50AC, 0x8106, 0x7601, 0x7CB9, 0x6DEC, 0x7FE0, 0x6751, 0x5B58, - 0x5BF8, 0x78CB, 0x64AE, 0x6413, 0x63AA, 0x632B, 0x9519, 0x642D, - 0x8FBE, 0x7B54, 0x7629, 0x6253, 0x5927, 0x5446, 0x6B79, 0x50A3, - 0x6234, 0x5E26, 0x6B86, 0x4EE3, 0x8D37, 0x888B, 0x5F85, 0x902E, - 0x6020, 0x803D, 0x62C5, 0x4E39, 0x5355, 0x90F8, 0x63B8, 0x80C6, - 0x65E6, 0x6C2E, 0x4F46, 0x60EE, 0x6DE1, 0x8BDE, 0x5F39, 0x86CB, - 0x5F53, 0x6321, 0x515A, 0x8361, 0x6863, 0x5200, 0x6363, 0x8E48, - 0x5012, 0x5C9B, 0x7977, 0x5BFC, 0x5230, 0x7A3B, 0x60BC, 0x9053, - 0x76D7, 0x5FB7, 0x5F97, 0x7684, 0x8E6C, 0x706F, 0x767B, 0x7B49, - 0x77AA, 0x51F3, 0x9093, 0x5824, 0x4F4E, 0x6EF4, 0x8FEA, 0x654C, - 0x7B1B, 0x72C4, 0x6DA4, 0x7FDF, 0x5AE1, 0x62B5, 0x5E95, 0x5730, - 0x8482, 0x7B2C, 0x5E1D, 0x5F1F, 0x9012, 0x7F14, 0x98A0, 0x6382, - 0x6EC7, 0x7898, 0x70B9, 0x5178, 0x975B, 0x57AB, 0x7535, 0x4F43, - 0x7538, 0x5E97, 0x60E6, 0x5960, 0x6DC0, 0x6BBF, 0x7889, 0x53FC, - 0x96D5, 0x51CB, 0x5201, 0x6389, 0x540A, 0x9493, 0x8C03, 0x8DCC, - 0x7239, 0x789F, 0x8776, 0x8FED, 0x8C0D, 0x53E0, 0x4E01, 0x76EF, - 0x53EE, 0x9489, 0x9876, 0x9F0E, 0x952D, 0x5B9A, 0x8BA2, 0x4E22, - 0x4E1C, 0x51AC, 0x8463, 0x61C2, 0x52A8, 0x680B, 0x4F97, 0x606B, - 0x51BB, 0x6D1E, 0x515C, 0x6296, 0x6597, 0x9661, 0x8C46, 0x9017, - 0x75D8, 0x90FD, 0x7763, 0x6BD2, 0x728A, 0x72EC, 0x8BFB, 0x5835, - 0x7779, 0x8D4C, 0x675C, 0x9540, 0x809A, 0x5EA6, 0x6E21, 0x5992, - 0x7AEF, 0x77ED, 0x953B, 0x6BB5, 0x65AD, 0x7F0E, 0x5806, 0x5151, - 0x961F, 0x5BF9, 0x58A9, 0x5428, 0x8E72, 0x6566, 0x987F, 0x56E4, - 0x949D, 0x76FE, 0x9041, 0x6387, 0x54C6, 0x591A, 0x593A, 0x579B, - 0x8EB2, 0x6735, 0x8DFA, 0x8235, 0x5241, 0x60F0, 0x5815, 0x86FE, -plane 09 -at 0x00 - 0x5CE8, 0x9E45, 0x4FC4, 0x989D, 0x8BB9, 0x5A25, 0x6076, 0x5384, - 0x627C, 0x904F, 0x9102, 0x997F, 0x6069, 0x800C, 0x513F, 0x8033, - 0x5C14, 0x9975, 0x6D31, 0x4E8C, 0x8D30, 0x53D1, 0x7F5A, 0x7B4F, - 0x4F10, 0x4E4F, 0x9600, 0x6CD5, 0x73D0, 0x85E9, 0x5E06, 0x756A, - 0x7FFB, 0x6A0A, 0x77FE, 0x9492, 0x7E41, 0x51E1, 0x70E6, 0x53CD, - 0x8FD4, 0x8303, 0x8D29, 0x72AF, 0x996D, 0x6CDB, 0x574A, 0x82B3, - 0x65B9, 0x80AA, 0x623F, 0x9632, 0x59A8, 0x4EFF, 0x8BBF, 0x7EBA, - 0x653E, 0x83F2, 0x975E, 0x5561, 0x98DE, 0x80A5, 0x532A, 0x8BFD, - 0x5420, 0x80BA, 0x5E9F, 0x6CB8, 0x8D39, 0x82AC, 0x915A, 0x5429, - 0x6C1B, 0x5206, 0x7EB7, 0x575F, 0x711A, 0x6C7E, 0x7C89, 0x594B, - 0x4EFD, 0x5FFF, 0x6124, 0x7CAA, 0x4E30, 0x5C01, 0x67AB, 0x8702, - 0x5CF0, 0x950B, 0x98CE, 0x75AF, 0x70FD, 0x9022, 0x51AF, 0x7F1D, - 0x8BBD, 0x5949, 0x51E4, 0x4F5B, 0x5426, 0x592B, 0x6577, 0x80A4, - 0x5B75, 0x6276, 0x62C2, 0x8F90, 0x5E45, 0x6C1F, 0x7B26, 0x4F0F, - 0x4FD8, 0x670D, 0x6D6E, 0x6DAA, 0x798F, 0x88B1, 0x5F17, 0x752B, - 0x629A, 0x8F85, 0x4FEF, 0x91DC, 0x65A7, 0x812F, 0x8151, 0x5E9C, - 0x8150, 0x8D74, 0x526F, 0x8986, 0x8D4B, 0x590D, 0x5085, 0x4ED8, - 0x961C, 0x7236, 0x8179, 0x8D1F, 0x5BCC, 0x8BA3, 0x9644, 0x5987, - 0x7F1A, 0x5490, 0x5676, 0x560E, 0x8BE5, 0x6539, 0x6982, 0x9499, - 0x76D6, 0x6E89, 0x5E72, 0x7518, 0x6746, 0x67D1, 0x7AFF, 0x809D, - 0x8D76, 0x611F, 0x79C6, 0x6562, 0x8D63, 0x5188, 0x521A, 0x94A2, - 0x7F38, 0x809B, 0x7EB2, 0x5C97, 0x6E2F, 0x6760, 0x7BD9, 0x768B, - 0x9AD8, 0x818F, 0x7F94, 0x7CD5, 0x641E, 0x9550, 0x7A3F, 0x544A, - 0x54E5, 0x6B4C, 0x6401, 0x6208, 0x9E3D, 0x80F3, 0x7599, 0x5272, - 0x9769, 0x845B, 0x683C, 0x86E4, 0x9601, 0x9694, 0x94EC, 0x4E2A, - 0x5404, 0x7ED9, 0x6839, 0x8DDF, 0x8015, 0x66F4, 0x5E9A, 0x7FB9, - 0x57C2, 0x803F, 0x6897, 0x5DE5, 0x653B, 0x529F, 0x606D, 0x9F9A, - 0x4F9B, 0x8EAC, 0x516C, 0x5BAB, 0x5F13, 0x5DE9, 0x6C5E, 0x62F1, - 0x8D21, 0x5171, 0x94A9, 0x52FE, 0x6C9F, 0x82DF, 0x72D7, 0x57A2, - 0x6784, 0x8D2D, 0x591F, 0x8F9C, 0x83C7, 0x5495, 0x7B8D, 0x4F30, - 0x6CBD, 0x5B64, 0x59D1, 0x9F13, 0x53E4, 0x86CA, 0x9AA8, 0x8C37, - 0x80A1, 0x6545, 0x987E, 0x56FA, 0x96C7, 0x522E, 0x74DC, 0x5250, -plane 10 -at 0x00 - 0x5BE1, 0x6302, 0x8902, 0x4E56, 0x62D0, 0x602A, 0x68FA, 0x5173, - 0x5B98, 0x51A0, 0x89C2, 0x7BA1, 0x9986, 0x7F50, 0x60EF, 0x704C, - 0x8D2F, 0x5149, 0x5E7F, 0x901B, 0x7470, 0x89C4, 0x572D, 0x7845, - 0x5F52, 0x9F9F, 0x95FA, 0x8F68, 0x9B3C, 0x8BE1, 0x7678, 0x6842, - 0x67DC, 0x8DEA, 0x8D35, 0x523D, 0x8F8A, 0x6EDA, 0x68CD, 0x9505, - 0x90ED, 0x56FD, 0x679C, 0x88F9, 0x8FC7, 0x54C8, 0x9AB8, 0x5B69, - 0x6D77, 0x6C26, 0x4EA5, 0x5BB3, 0x9A87, 0x9163, 0x61A8, 0x90AF, - 0x97E9, 0x542B, 0x6DB5, 0x5BD2, 0x51FD, 0x558A, 0x7F55, 0x7FF0, - 0x64BC, 0x634D, 0x65F1, 0x61BE, 0x608D, 0x710A, 0x6C57, 0x6C49, - 0x592F, 0x676D, 0x822A, 0x58D5, 0x568E, 0x8C6A, 0x6BEB, 0x90DD, - 0x597D, 0x8017, 0x53F7, 0x6D69, 0x5475, 0x559D, 0x8377, 0x83CF, - 0x6838, 0x79BE, 0x548C, 0x4F55, 0x5408, 0x76D2, 0x8C89, 0x9602, - 0x6CB3, 0x6DB8, 0x8D6B, 0x8910, 0x9E64, 0x8D3A, 0x563F, 0x9ED1, - 0x75D5, 0x5F88, 0x72E0, 0x6068, 0x54FC, 0x4EA8, 0x6A2A, 0x8861, - 0x6052, 0x8F70, 0x54C4, 0x70D8, 0x8679, 0x9E3F, 0x6D2A, 0x5B8F, - 0x5F18, 0x7EA2, 0x5589, 0x4FAF, 0x7334, 0x543C, 0x539A, 0x5019, - 0x540E, 0x547C, 0x4E4E, 0x5FFD, 0x745A, 0x58F6, 0x846B, 0x80E1, - 0x8774, 0x72D0, 0x7CCA, 0x6E56, 0x5F27, 0x864E, 0x552C, 0x62A4, - 0x4E92, 0x6CAA, 0x6237, 0x82B1, 0x54D7, 0x534E, 0x733E, 0x6ED1, - 0x753B, 0x5212, 0x5316, 0x8BDD, 0x69D0, 0x5F8A, 0x6000, 0x6DEE, - 0x574F, 0x6B22, 0x73AF, 0x6853, 0x8FD8, 0x7F13, 0x6362, 0x60A3, - 0x5524, 0x75EA, 0x8C62, 0x7115, 0x6DA3, 0x5BA6, 0x5E7B, 0x8352, - 0x614C, 0x9EC4, 0x78FA, 0x8757, 0x7C27, 0x7687, 0x51F0, 0x60F6, - 0x714C, 0x6643, 0x5E4C, 0x604D, 0x8C0E, 0x7070, 0x6325, 0x8F89, - 0x5FBD, 0x6062, 0x86D4, 0x56DE, 0x6BC1, 0x6094, 0x6167, 0x5349, - 0x60E0, 0x6666, 0x8D3F, 0x79FD, 0x4F1A, 0x70E9, 0x6C47, 0x8BB3, - 0x8BF2, 0x7ED8, 0x8364, 0x660F, 0x5A5A, 0x9B42, 0x6D51, 0x6DF7, - 0x8C41, 0x6D3B, 0x4F19, 0x706B, 0x83B7, 0x6216, 0x60D1, 0x970D, - 0x8D27, 0x7978, 0x51FB, 0x573E, 0x57FA, 0x673A, 0x7578, 0x7A3D, - 0x79EF, 0x7B95, 0x808C, 0x9965, 0x8FF9, 0x6FC0, 0x8BA5, 0x9E21, - 0x59EC, 0x7EE9, 0x7F09, 0x5409, 0x6781, 0x68D8, 0x8F91, 0x7C4D, - 0x96C6, 0x53CA, 0x6025, 0x75BE, 0x6C72, 0x5373, 0x5AC9, 0x7EA7, -plane 11 -at 0x00 - 0x6324, 0x51E0, 0x810A, 0x5DF1, 0x84DF, 0x6280, 0x5180, 0x5B63, - 0x4F0E, 0x796D, 0x5242, 0x60B8, 0x6D4E, 0x5BC4, 0x5BC2, 0x8BA1, - 0x8BB0, 0x65E2, 0x5FCC, 0x9645, 0x5993, 0x7EE7, 0x7EAA, 0x5609, - 0x67B7, 0x5939, 0x4F73, 0x5BB6, 0x52A0, 0x835A, 0x988A, 0x8D3E, - 0x7532, 0x94BE, 0x5047, 0x7A3C, 0x4EF7, 0x67B6, 0x9A7E, 0x5AC1, - 0x6B7C, 0x76D1, 0x575A, 0x5C16, 0x7B3A, 0x95F4, 0x714E, 0x517C, - 0x80A9, 0x8270, 0x5978, 0x7F04, 0x8327, 0x68C0, 0x67EC, 0x78B1, - 0x7877, 0x62E3, 0x6361, 0x7B80, 0x4FED, 0x526A, 0x51CF, 0x8350, - 0x69DB, 0x9274, 0x8DF5, 0x8D31, 0x89C1, 0x952E, 0x7BAD, 0x4EF6, - 0x5065, 0x8230, 0x5251, 0x996F, 0x6E10, 0x6E85, 0x6DA7, 0x5EFA, - 0x50F5, 0x59DC, 0x5C06, 0x6D46, 0x6C5F, 0x7586, 0x848B, 0x6868, - 0x5956, 0x8BB2, 0x5320, 0x9171, 0x964D, 0x8549, 0x6912, 0x7901, - 0x7126, 0x80F6, 0x4EA4, 0x90CA, 0x6D47, 0x9A84, 0x5A07, 0x56BC, - 0x6405, 0x94F0, 0x77EB, 0x4FA5, 0x811A, 0x72E1, 0x89D2, 0x997A, - 0x7F34, 0x7EDE, 0x527F, 0x6559, 0x9175, 0x8F7F, 0x8F83, 0x53EB, - 0x7A96, 0x63ED, 0x63A5, 0x7686, 0x79F8, 0x8857, 0x9636, 0x622A, - 0x52AB, 0x8282, 0x6854, 0x6770, 0x6377, 0x776B, 0x7AED, 0x6D01, - 0x7ED3, 0x89E3, 0x59D0, 0x6212, 0x85C9, 0x82A5, 0x754C, 0x501F, - 0x4ECB, 0x75A5, 0x8BEB, 0x5C4A, 0x5DFE, 0x7B4B, 0x65A4, 0x91D1, - 0x4ECA, 0x6D25, 0x895F, 0x7D27, 0x9526, 0x4EC5, 0x8C28, 0x8FDB, - 0x9773, 0x664B, 0x7981, 0x8FD1, 0x70EC, 0x6D78, 0x5C3D, 0x52B2, - 0x8346, 0x5162, 0x830E, 0x775B, 0x6676, 0x9CB8, 0x4EAC, 0x60CA, - 0x7CBE, 0x7CB3, 0x7ECF, 0x4E95, 0x8B66, 0x666F, 0x9888, 0x9759, - 0x5883, 0x656C, 0x955C, 0x5F84, 0x75C9, 0x9756, 0x7ADF, 0x7ADE, - 0x51C0, 0x70AF, 0x7A98, 0x63EA, 0x7A76, 0x7EA0, 0x7396, 0x97ED, - 0x4E45, 0x7078, 0x4E5D, 0x9152, 0x53A9, 0x6551, 0x65E7, 0x81FC, - 0x8205, 0x548E, 0x5C31, 0x759A, 0x97A0, 0x62D8, 0x72D9, 0x75BD, - 0x5C45, 0x9A79, 0x83CA, 0x5C40, 0x5480, 0x77E9, 0x4E3E, 0x6CAE, - 0x805A, 0x62D2, 0x636E, 0x5DE8, 0x5177, 0x8DDD, 0x8E1E, 0x952F, - 0x4FF1, 0x53E5, 0x60E7, 0x70AC, 0x5267, 0x6350, 0x9E43, 0x5A1F, - 0x5026, 0x7737, 0x5377, 0x7EE2, 0x6485, 0x652B, 0x6289, 0x6398, - 0x5014, 0x7235, 0x89C9, 0x51B3, 0x8BC0, 0x7EDD, 0x5747, 0x83CC, -plane 12 -at 0x00 - 0x94A7, 0x519B, 0x541B, 0x5CFB, 0x4FCA, 0x7AE3, 0x6D5A, 0x90E1, - 0x9A8F, 0x5580, 0x5496, 0x5361, 0x54AF, 0x5F00, 0x63E9, 0x6977, - 0x51EF, 0x6168, 0x520A, 0x582A, 0x52D8, 0x574E, 0x780D, 0x770B, - 0x5EB7, 0x6177, 0x7CE0, 0x625B, 0x6297, 0x4EA2, 0x7095, 0x8003, - 0x62F7, 0x70E4, 0x9760, 0x5777, 0x82DB, 0x67EF, 0x68F5, 0x78D5, - 0x9897, 0x79D1, 0x58F3, 0x54B3, 0x53EF, 0x6E34, 0x514B, 0x523B, - 0x5BA2, 0x8BFE, 0x80AF, 0x5543, 0x57A6, 0x6073, 0x5751, 0x542D, - 0x7A7A, 0x6050, 0x5B54, 0x63A7, 0x62A0, 0x53E3, 0x6263, 0x5BC7, - 0x67AF, 0x54ED, 0x7A9F, 0x82E6, 0x9177, 0x5E93, 0x88E4, 0x5938, - 0x57AE, 0x630E, 0x8DE8, 0x80EF, 0x5757, 0x7B77, 0x4FA9, 0x5FEB, - 0x5BBD, 0x6B3E, 0x5321, 0x7B50, 0x72C2, 0x6846, 0x77FF, 0x7736, - 0x65F7, 0x51B5, 0x4E8F, 0x76D4, 0x5CBF, 0x7AA5, 0x8475, 0x594E, - 0x9B41, 0x5080, 0x9988, 0x6127, 0x6E83, 0x5764, 0x6606, 0x6346, - 0x56F0, 0x62EC, 0x6269, 0x5ED3, 0x9614, 0x5783, 0x62C9, 0x5587, - 0x8721, 0x814A, 0x8FA3, 0x5566, 0x83B1, 0x6765, 0x8D56, 0x84DD, - 0x5A6A, 0x680F, 0x62E6, 0x7BEE, 0x9611, 0x5170, 0x6F9C, 0x8C30, - 0x63FD, 0x89C8, 0x61D2, 0x7F06, 0x70C2, 0x6EE5, 0x7405, 0x6994, - 0x72FC, 0x5ECA, 0x90CE, 0x6717, 0x6D6A, 0x635E, 0x52B3, 0x7262, - 0x8001, 0x4F6C, 0x59E5, 0x916A, 0x70D9, 0x6D9D, 0x52D2, 0x4E50, - 0x96F7, 0x956D, 0x857E, 0x78CA, 0x7D2F, 0x5121, 0x5792, 0x64C2, - 0x808B, 0x7C7B, 0x6CEA, 0x68F1, 0x695E, 0x51B7, 0x5398, 0x68A8, - 0x7281, 0x9ECE, 0x7BF1, 0x72F8, 0x79BB, 0x6F13, 0x7406, 0x674E, - 0x91CC, 0x9CA4, 0x793C, 0x8389, 0x8354, 0x540F, 0x6817, 0x4E3D, - 0x5389, 0x52B1, 0x783E, 0x5386, 0x5229, 0x5088, 0x4F8B, 0x4FD0, - 0x75E2, 0x7ACB, 0x7C92, 0x6CA5, 0x96B6, 0x529B, 0x7483, 0x54E9, - 0x4FE9, 0x8054, 0x83B2, 0x8FDE, 0x9570, 0x5EC9, 0x601C, 0x6D9F, - 0x5E18, 0x655B, 0x8138, 0x94FE, 0x604B, 0x70BC, 0x7EC3, 0x7CAE, - 0x51C9, 0x6881, 0x7CB1, 0x826F, 0x4E24, 0x8F86, 0x91CF, 0x667E, - 0x4EAE, 0x8C05, 0x64A9, 0x804A, 0x50DA, 0x7597, 0x71CE, 0x5BE5, - 0x8FBD, 0x6F66, 0x4E86, 0x6482, 0x9563, 0x5ED6, 0x6599, 0x5217, - 0x88C2, 0x70C8, 0x52A3, 0x730E, 0x7433, 0x6797, 0x78F7, 0x9716, - 0x4E34, 0x90BB, 0x9CDE, 0x6DCB, 0x51DB, 0x8D41, 0x541D, 0x62CE, -plane 13 -at 0x00 - 0x73B2, 0x83F1, 0x96F6, 0x9F84, 0x94C3, 0x4F36, 0x7F9A, 0x51CC, - 0x7075, 0x9675, 0x5CAD, 0x9886, 0x53E6, 0x4EE4, 0x6E9C, 0x7409, - 0x69B4, 0x786B, 0x998F, 0x7559, 0x5218, 0x7624, 0x6D41, 0x67F3, - 0x516D, 0x9F99, 0x804B, 0x5499, 0x7B3C, 0x7ABF, 0x9686, 0x5784, - 0x62E2, 0x9647, 0x697C, 0x5A04, 0x6402, 0x7BD3, 0x6F0F, 0x964B, - 0x82A6, 0x5362, 0x9885, 0x5E90, 0x7089, 0x63B3, 0x5364, 0x864F, - 0x9C81, 0x9E93, 0x788C, 0x9732, 0x8DEF, 0x8D42, 0x9E7F, 0x6F5E, - 0x7984, 0x5F55, 0x9646, 0x622E, 0x9A74, 0x5415, 0x94DD, 0x4FA3, - 0x65C5, 0x5C65, 0x5C61, 0x7F15, 0x8651, 0x6C2F, 0x5F8B, 0x7387, - 0x6EE4, 0x7EFF, 0x5CE6, 0x631B, 0x5B6A, 0x6EE6, 0x5375, 0x4E71, - 0x63A0, 0x7565, 0x62A1, 0x8F6E, 0x4F26, 0x4ED1, 0x6CA6, 0x7EB6, - 0x8BBA, 0x841D, 0x87BA, 0x7F57, 0x903B, 0x9523, 0x7BA9, 0x9AA1, - 0x88F8, 0x843D, 0x6D1B, 0x9A86, 0x7EDC, 0x5988, 0x9EBB, 0x739B, - 0x7801, 0x8682, 0x9A6C, 0x9A82, 0x561B, 0x5417, 0x57CB, 0x4E70, - 0x9EA6, 0x5356, 0x8FC8, 0x8109, 0x7792, 0x9992, 0x86EE, 0x6EE1, - 0x8513, 0x66FC, 0x6162, 0x6F2B, 0x8C29, 0x8292, 0x832B, 0x76F2, - 0x6C13, 0x5FD9, 0x83BD, 0x732B, 0x8305, 0x951A, 0x6BDB, 0x77DB, - 0x94C6, 0x536F, 0x8302, 0x5192, 0x5E3D, 0x8C8C, 0x8D38, 0x4E48, - 0x73AB, 0x679A, 0x6885, 0x9176, 0x9709, 0x7164, 0x6CA1, 0x7709, - 0x5A92, 0x9541, 0x6BCF, 0x7F8E, 0x6627, 0x5BD0, 0x59B9, 0x5A9A, - 0x95E8, 0x95F7, 0x4EEC, 0x840C, 0x8499, 0x6AAC, 0x76DF, 0x9530, - 0x731B, 0x68A6, 0x5B5F, 0x772F, 0x919A, 0x9761, 0x7CDC, 0x8FF7, - 0x8C1C, 0x5F25, 0x7C73, 0x79D8, 0x89C5, 0x6CCC, 0x871C, 0x5BC6, - 0x5E42, 0x68C9, 0x7720, 0x7EF5, 0x5195, 0x514D, 0x52C9, 0x5A29, - 0x7F05, 0x9762, 0x82D7, 0x63CF, 0x7784, 0x85D0, 0x79D2, 0x6E3A, - 0x5E99, 0x5999, 0x8511, 0x706D, 0x6C11, 0x62BF, 0x76BF, 0x654F, - 0x60AF, 0x95FD, 0x660E, 0x879F, 0x9E23, 0x94ED, 0x540D, 0x547D, - 0x8C2C, 0x6478, 0x6479, 0x8611, 0x6A21, 0x819C, 0x78E8, 0x6469, - 0x9B54, 0x62B9, 0x672B, 0x83AB, 0x58A8, 0x9ED8, 0x6CAB, 0x6F20, - 0x5BDE, 0x964C, 0x8C0B, 0x725F, 0x67D0, 0x62C7, 0x7261, 0x4EA9, - 0x59C6, 0x6BCD, 0x5893, 0x66AE, 0x5E55, 0x52DF, 0x6155, 0x6728, - 0x76EE, 0x7766, 0x7267, 0x7A46, 0x62FF, 0x54EA, 0x5450, 0x94A0, -plane 14 -at 0x00 - 0x90A3, 0x5A1C, 0x7EB3, 0x6C16, 0x4E43, 0x5976, 0x8010, 0x5948, - 0x5357, 0x7537, 0x96BE, 0x56CA, 0x6320, 0x8111, 0x607C, 0x95F9, - 0x6DD6, 0x5462, 0x9981, 0x5185, 0x5AE9, 0x80FD, 0x59AE, 0x9713, - 0x502A, 0x6CE5, 0x5C3C, 0x62DF, 0x4F60, 0x533F, 0x817B, 0x9006, - 0x6EBA, 0x852B, 0x62C8, 0x5E74, 0x78BE, 0x64B5, 0x637B, 0x5FF5, - 0x5A18, 0x917F, 0x9E1F, 0x5C3F, 0x634F, 0x8042, 0x5B7D, 0x556E, - 0x954A, 0x954D, 0x6D85, 0x60A8, 0x67E0, 0x72DE, 0x51DD, 0x5B81, - 0x62E7, 0x6CDE, 0x725B, 0x626D, 0x94AE, 0x7EBD, 0x8113, 0x6D53, - 0x519C, 0x5F04, 0x5974, 0x52AA, 0x6012, 0x5973, 0x6696, 0x8650, - 0x759F, 0x632A, 0x61E6, 0x7CEF, 0x8BFA, 0x54E6, 0x6B27, 0x9E25, - 0x6BB4, 0x85D5, 0x5455, 0x5076, 0x6CA4, 0x556A, 0x8DB4, 0x722C, - 0x5E15, 0x6015, 0x7436, 0x62CD, 0x6392, 0x724C, 0x5F98, 0x6E43, - 0x6D3E, 0x6500, 0x6F58, 0x76D8, 0x78D0, 0x76FC, 0x7554, 0x5224, - 0x53DB, 0x4E53, 0x5E9E, 0x65C1, 0x802A, 0x80D6, 0x629B, 0x5486, - 0x5228, 0x70AE, 0x888D, 0x8DD1, 0x6CE1, 0x5478, 0x80DA, 0x57F9, - 0x88F4, 0x8D54, 0x966A, 0x914D, 0x4F69, 0x6C9B, 0x55B7, 0x76C6, - 0x7830, 0x62A8, 0x70F9, 0x6F8E, 0x5F6D, 0x84EC, 0x68DA, 0x787C, - 0x7BF7, 0x81A8, 0x670B, 0x9E4F, 0x6367, 0x78B0, 0x576F, 0x7812, - 0x9739, 0x6279, 0x62AB, 0x5288, 0x7435, 0x6BD7, 0x5564, 0x813E, - 0x75B2, 0x76AE, 0x5339, 0x75DE, 0x50FB, 0x5C41, 0x8B6C, 0x7BC7, - 0x504F, 0x7247, 0x9A97, 0x98D8, 0x6F02, 0x74E2, 0x7968, 0x6487, - 0x77A5, 0x62FC, 0x9891, 0x8D2B, 0x54C1, 0x8058, 0x4E52, 0x576A, - 0x82F9, 0x840D, 0x5E73, 0x51ED, 0x74F6, 0x8BC4, 0x5C4F, 0x5761, - 0x6CFC, 0x9887, 0x5A46, 0x7834, 0x9B44, 0x8FEB, 0x7C95, 0x5256, - 0x6251, 0x94FA, 0x4EC6, 0x8386, 0x8461, 0x83E9, 0x84B2, 0x57D4, - 0x6734, 0x5703, 0x666E, 0x6D66, 0x8C31, 0x66DD, 0x7011, 0x671F, - 0x6B3A, 0x6816, 0x621A, 0x59BB, 0x4E03, 0x51C4, 0x6F06, 0x67D2, - 0x6C8F, 0x5176, 0x68CB, 0x5947, 0x6B67, 0x7566, 0x5D0E, 0x8110, - 0x9F50, 0x65D7, 0x7948, 0x7941, 0x9A91, 0x8D77, 0x5C82, 0x4E5E, - 0x4F01, 0x542F, 0x5951, 0x780C, 0x5668, 0x6C14, 0x8FC4, 0x5F03, - 0x6C7D, 0x6CE3, 0x8BAB, 0x6390, 0x6070, 0x6D3D, 0x7275, 0x6266, - 0x948E, 0x94C5, 0x5343, 0x8FC1, 0x7B7E, 0x4EDF, 0x8C26, 0x4E7E, -plane 15 -at 0x00 - 0x9ED4, 0x94B1, 0x94B3, 0x524D, 0x6F5C, 0x9063, 0x6D45, 0x8C34, - 0x5811, 0x5D4C, 0x6B20, 0x6B49, 0x67AA, 0x545B, 0x8154, 0x7F8C, - 0x5899, 0x8537, 0x5F3A, 0x62A2, 0x6A47, 0x9539, 0x6572, 0x6084, - 0x6865, 0x77A7, 0x4E54, 0x4FA8, 0x5DE7, 0x9798, 0x64AC, 0x7FD8, - 0x5CED, 0x4FCF, 0x7A8D, 0x5207, 0x8304, 0x4E14, 0x602F, 0x7A83, - 0x94A6, 0x4FB5, 0x4EB2, 0x79E6, 0x7434, 0x52E4, 0x82B9, 0x64D2, - 0x79BD, 0x5BDD, 0x6C81, 0x9752, 0x8F7B, 0x6C22, 0x503E, 0x537F, - 0x6E05, 0x64CE, 0x6674, 0x6C30, 0x60C5, 0x9877, 0x8BF7, 0x5E86, - 0x743C, 0x7A77, 0x79CB, 0x4E18, 0x90B1, 0x7403, 0x6C42, 0x56DA, - 0x914B, 0x6CC5, 0x8D8B, 0x533A, 0x86C6, 0x66F2, 0x8EAF, 0x5C48, - 0x9A71, 0x6E20, 0x53D6, 0x5A36, 0x9F8B, 0x8DA3, 0x53BB, 0x5708, - 0x98A7, 0x6743, 0x919B, 0x6CC9, 0x5168, 0x75CA, 0x62F3, 0x72AC, - 0x5238, 0x529D, 0x7F3A, 0x7094, 0x7638, 0x5374, 0x9E4A, 0x69B7, - 0x786E, 0x96C0, 0x88D9, 0x7FA4, 0x7136, 0x71C3, 0x5189, 0x67D3, - 0x74E4, 0x58E4, 0x6518, 0x56B7, 0x8BA9, 0x9976, 0x6270, 0x7ED5, - 0x60F9, 0x70ED, 0x58EC, 0x4EC1, 0x4EBA, 0x5FCD, 0x97E7, 0x4EFB, - 0x8BA4, 0x5203, 0x598A, 0x7EAB, 0x6254, 0x4ECD, 0x65E5, 0x620E, - 0x8338, 0x84C9, 0x8363, 0x878D, 0x7194, 0x6EB6, 0x5BB9, 0x7ED2, - 0x5197, 0x63C9, 0x67D4, 0x8089, 0x8339, 0x8815, 0x5112, 0x5B7A, - 0x5982, 0x8FB1, 0x4E73, 0x6C5D, 0x5165, 0x8925, 0x8F6F, 0x962E, - 0x854A, 0x745E, 0x9510, 0x95F0, 0x6DA6, 0x82E5, 0x5F31, 0x6492, - 0x6D12, 0x8428, 0x816E, 0x9CC3, 0x585E, 0x8D5B, 0x4E09, 0x53C1, - 0x4F1E, 0x6563, 0x6851, 0x55D3, 0x4E27, 0x6414, 0x9A9A, 0x626B, - 0x5AC2, 0x745F, 0x8272, 0x6DA9, 0x68EE, 0x50E7, 0x838E, 0x7802, - 0x6740, 0x5239, 0x6C99, 0x7EB1, 0x50BB, 0x5565, 0x715E, 0x7B5B, - 0x6652, 0x73CA, 0x82EB, 0x6749, 0x5C71, 0x5220, 0x717D, 0x886B, - 0x95EA, 0x9655, 0x64C5, 0x8D61, 0x81B3, 0x5584, 0x6C55, 0x6247, - 0x7F2E, 0x5892, 0x4F24, 0x5546, 0x8D4F, 0x664C, 0x4E0A, 0x5C1A, - 0x88F3, 0x68A2, 0x634E, 0x7A0D, 0x70E7, 0x828D, 0x52FA, 0x97F6, - 0x5C11, 0x54E8, 0x90B5, 0x7ECD, 0x5962, 0x8D4A, 0x86C7, 0x820C, - 0x820D, 0x8D66, 0x6444, 0x5C04, 0x6151, 0x6D89, 0x793E, 0x8BBE, - 0x7837, 0x7533, 0x547B, 0x4F38, 0x8EAB, 0x6DF1, 0x5A20, 0x7EC5, -plane 16 -at 0x00 - 0x795E, 0x6C88, 0x5BA1, 0x5A76, 0x751A, 0x80BE, 0x614E, 0x6E17, - 0x58F0, 0x751F, 0x7525, 0x7272, 0x5347, 0x7EF3, 0x7701, 0x76DB, - 0x5269, 0x80DC, 0x5723, 0x5E08, 0x5931, 0x72EE, 0x65BD, 0x6E7F, - 0x8BD7, 0x5C38, 0x8671, 0x5341, 0x77F3, 0x62FE, 0x65F6, 0x4EC0, - 0x98DF, 0x8680, 0x5B9E, 0x8BC6, 0x53F2, 0x77E2, 0x4F7F, 0x5C4E, - 0x9A76, 0x59CB, 0x5F0F, 0x793A, 0x58EB, 0x4E16, 0x67FF, 0x4E8B, - 0x62ED, 0x8A93, 0x901D, 0x52BF, 0x662F, 0x55DC, 0x566C, 0x9002, - 0x4ED5, 0x4F8D, 0x91CA, 0x9970, 0x6C0F, 0x5E02, 0x6043, 0x5BA4, - 0x89C6, 0x8BD5, 0x6536, 0x624B, 0x9996, 0x5B88, 0x5BFF, 0x6388, - 0x552E, 0x53D7, 0x7626, 0x517D, 0x852C, 0x67A2, 0x68B3, 0x6B8A, - 0x6292, 0x8F93, 0x53D4, 0x8212, 0x6DD1, 0x758F, 0x4E66, 0x8D4E, - 0x5B70, 0x719F, 0x85AF, 0x6691, 0x66D9, 0x7F72, 0x8700, 0x9ECD, - 0x9F20, 0x5C5E, 0x672F, 0x8FF0, 0x6811, 0x675F, 0x620D, 0x7AD6, - 0x5885, 0x5EB6, 0x6570, 0x6F31, 0x6055, 0x5237, 0x800D, 0x6454, - 0x8870, 0x7529, 0x5E05, 0x6813, 0x62F4, 0x971C, 0x53CC, 0x723D, - 0x8C01, 0x6C34, 0x7761, 0x7A0E, 0x542E, 0x77AC, 0x987A, 0x821C, - 0x8BF4, 0x7855, 0x6714, 0x70C1, 0x65AF, 0x6495, 0x5636, 0x601D, - 0x79C1, 0x53F8, 0x4E1D, 0x6B7B, 0x8086, 0x5BFA, 0x55E3, 0x56DB, - 0x4F3A, 0x4F3C, 0x9972, 0x5DF3, 0x677E, 0x8038, 0x6002, 0x9882, - 0x9001, 0x5B8B, 0x8BBC, 0x8BF5, 0x641C, 0x8258, 0x64DE, 0x55FD, - 0x82CF, 0x9165, 0x4FD7, 0x7D20, 0x901F, 0x7C9F, 0x50F3, 0x5851, - 0x6EAF, 0x5BBF, 0x8BC9, 0x8083, 0x9178, 0x849C, 0x7B97, 0x867D, - 0x968B, 0x968F, 0x7EE5, 0x9AD3, 0x788E, 0x5C81, 0x7A57, 0x9042, - 0x96A7, 0x795F, 0x5B59, 0x635F, 0x7B0B, 0x84D1, 0x68AD, 0x5506, - 0x7F29, 0x7410, 0x7D22, 0x9501, 0x6240, 0x584C, 0x4ED6, 0x5B83, - 0x5979, 0x5854, 0x736D, 0x631E, 0x8E4B, 0x8E0F, 0x80CE, 0x82D4, - 0x62AC, 0x53F0, 0x6CF0, 0x915E, 0x592A, 0x6001, 0x6C70, 0x574D, - 0x644A, 0x8D2A, 0x762B, 0x6EE9, 0x575B, 0x6A80, 0x75F0, 0x6F6D, - 0x8C2D, 0x8C08, 0x5766, 0x6BEF, 0x8892, 0x78B3, 0x63A2, 0x53F9, - 0x70AD, 0x6C64, 0x5858, 0x642A, 0x5802, 0x68E0, 0x819B, 0x5510, - 0x7CD6, 0x5018, 0x8EBA, 0x6DCC, 0x8D9F, 0x70EB, 0x638F, 0x6D9B, - 0x6ED4, 0x7EE6, 0x8404, 0x6843, 0x9003, 0x6DD8, 0x9676, 0x8BA8, -plane 17 -at 0x00 - 0x5957, 0x7279, 0x85E4, 0x817E, 0x75BC, 0x8A8A, 0x68AF, 0x5254, - 0x8E22, 0x9511, 0x63D0, 0x9898, 0x8E44, 0x557C, 0x4F53, 0x66FF, - 0x568F, 0x60D5, 0x6D95, 0x5243, 0x5C49, 0x5929, 0x6DFB, 0x586B, - 0x7530, 0x751C, 0x606C, 0x8214, 0x8146, 0x6311, 0x6761, 0x8FE2, - 0x773A, 0x8DF3, 0x8D34, 0x94C1, 0x5E16, 0x5385, 0x542C, 0x70C3, - 0x6C40, 0x5EF7, 0x505C, 0x4EAD, 0x5EAD, 0x633A, 0x8247, 0x901A, - 0x6850, 0x916E, 0x77B3, 0x540C, 0x94DC, 0x5F64, 0x7AE5, 0x6876, - 0x6345, 0x7B52, 0x7EDF, 0x75DB, 0x5077, 0x6295, 0x5934, 0x900F, - 0x51F8, 0x79C3, 0x7A81, 0x56FE, 0x5F92, 0x9014, 0x6D82, 0x5C60, - 0x571F, 0x5410, 0x5154, 0x6E4D, 0x56E2, 0x63A8, 0x9893, 0x817F, - 0x8715, 0x892A, 0x9000, 0x541E, 0x5C6F, 0x81C0, 0x62D6, 0x6258, - 0x8131, 0x9E35, 0x9640, 0x9A6E, 0x9A7C, 0x692D, 0x59A5, 0x62D3, - 0x553E, 0x6316, 0x54C7, 0x86D9, 0x6D3C, 0x5A03, 0x74E6, 0x889C, - 0x6B6A, 0x5916, 0x8C4C, 0x5F2F, 0x6E7E, 0x73A9, 0x987D, 0x4E38, - 0x70F7, 0x5B8C, 0x7897, 0x633D, 0x665A, 0x7696, 0x60CB, 0x5B9B, - 0x5A49, 0x4E07, 0x8155, 0x6C6A, 0x738B, 0x4EA1, 0x6789, 0x7F51, - 0x5F80, 0x65FA, 0x671B, 0x5FD8, 0x5984, 0x5A01, 0x5DCD, 0x5FAE, - 0x5371, 0x97E6, 0x8FDD, 0x6845, 0x56F4, 0x552F, 0x60DF, 0x4E3A, - 0x6F4D, 0x7EF4, 0x82C7, 0x840E, 0x59D4, 0x4F1F, 0x4F2A, 0x5C3E, - 0x7EAC, 0x672A, 0x851A, 0x5473, 0x754F, 0x80C3, 0x5582, 0x9B4F, - 0x4F4D, 0x6E2D, 0x8C13, 0x5C09, 0x6170, 0x536B, 0x761F, 0x6E29, - 0x868A, 0x6587, 0x95FB, 0x7EB9, 0x543B, 0x7A33, 0x7D0A, 0x95EE, - 0x55E1, 0x7FC1, 0x74EE, 0x631D, 0x8717, 0x6DA1, 0x7A9D, 0x6211, - 0x65A1, 0x5367, 0x63E1, 0x6C83, 0x5DEB, 0x545C, 0x94A8, 0x4E4C, - 0x6C61, 0x8BEC, 0x5C4B, 0x65E0, 0x829C, 0x68A7, 0x543E, 0x5434, - 0x6BCB, 0x6B66, 0x4E94, 0x6342, 0x5348, 0x821E, 0x4F0D, 0x4FAE, - 0x575E, 0x620A, 0x96FE, 0x6664, 0x7269, 0x52FF, 0x52A1, 0x609F, - 0x8BEF, 0x6614, 0x7199, 0x6790, 0x897F, 0x7852, 0x77FD, 0x6670, - 0x563B, 0x5438, 0x9521, 0x727A, 0x7A00, 0x606F, 0x5E0C, 0x6089, - 0x819D, 0x5915, 0x60DC, 0x7184, 0x70EF, 0x6EAA, 0x6C50, 0x7280, - 0x6A84, 0x88AD, 0x5E2D, 0x4E60, 0x5AB3, 0x559C, 0x94E3, 0x6D17, - 0x7CFB, 0x9699, 0x620F, 0x7EC6, 0x778E, 0x867E, 0x5323, 0x971E, -plane 18 -at 0x00 - 0x8F96, 0x6687, 0x5CE1, 0x4FA0, 0x72ED, 0x4E0B, 0x53A6, 0x590F, - 0x5413, 0x6380, 0x9528, 0x5148, 0x4ED9, 0x9C9C, 0x7EA4, 0x54B8, - 0x8D24, 0x8854, 0x8237, 0x95F2, 0x6D8E, 0x5F26, 0x5ACC, 0x663E, - 0x9669, 0x73B0, 0x732E, 0x53BF, 0x817A, 0x9985, 0x7FA1, 0x5BAA, - 0x9677, 0x9650, 0x7EBF, 0x76F8, 0x53A2, 0x9576, 0x9999, 0x7BB1, - 0x8944, 0x6E58, 0x4E61, 0x7FD4, 0x7965, 0x8BE6, 0x60F3, 0x54CD, - 0x4EAB, 0x9879, 0x5DF7, 0x6A61, 0x50CF, 0x5411, 0x8C61, 0x8427, - 0x785D, 0x9704, 0x524A, 0x54EE, 0x56A3, 0x9500, 0x6D88, 0x5BB5, - 0x6DC6, 0x6653, 0x5C0F, 0x5B5D, 0x6821, 0x8096, 0x5578, 0x7B11, - 0x6548, 0x6954, 0x4E9B, 0x6B47, 0x874E, 0x978B, 0x534F, 0x631F, - 0x643A, 0x90AA, 0x659C, 0x80C1, 0x8C10, 0x5199, 0x68B0, 0x5378, - 0x87F9, 0x61C8, 0x6CC4, 0x6CFB, 0x8C22, 0x5C51, 0x85AA, 0x82AF, - 0x950C, 0x6B23, 0x8F9B, 0x65B0, 0x5FFB, 0x5FC3, 0x4FE1, 0x8845, - 0x661F, 0x8165, 0x7329, 0x60FA, 0x5174, 0x5211, 0x578B, 0x5F62, - 0x90A2, 0x884C, 0x9192, 0x5E78, 0x674F, 0x6027, 0x59D3, 0x5144, - 0x51F6, 0x80F8, 0x5308, 0x6C79, 0x96C4, 0x718A, 0x4F11, 0x4FEE, - 0x7F9E, 0x673D, 0x55C5, 0x9508, 0x79C0, 0x8896, 0x7EE3, 0x589F, - 0x620C, 0x9700, 0x865A, 0x5618, 0x987B, 0x5F90, 0x8BB8, 0x84C4, - 0x9157, 0x53D9, 0x65ED, 0x5E8F, 0x755C, 0x6064, 0x7D6E, 0x5A7F, - 0x7EEA, 0x7EED, 0x8F69, 0x55A7, 0x5BA3, 0x60AC, 0x65CB, 0x7384, - 0x9009, 0x7663, 0x7729, 0x7EDA, 0x9774, 0x859B, 0x5B66, 0x7A74, - 0x96EA, 0x8840, 0x52CB, 0x718F, 0x5FAA, 0x65EC, 0x8BE2, 0x5BFB, - 0x9A6F, 0x5DE1, 0x6B89, 0x6C5B, 0x8BAD, 0x8BAF, 0x900A, 0x8FC5, - 0x538B, 0x62BC, 0x9E26, 0x9E2D, 0x5440, 0x4E2B, 0x82BD, 0x7259, - 0x869C, 0x5D16, 0x8859, 0x6DAF, 0x96C5, 0x54D1, 0x4E9A, 0x8BB6, - 0x7109, 0x54BD, 0x9609, 0x70DF, 0x6DF9, 0x76D0, 0x4E25, 0x7814, - 0x8712, 0x5CA9, 0x5EF6, 0x8A00, 0x989C, 0x960E, 0x708E, 0x6CBF, - 0x5944, 0x63A9, 0x773C, 0x884D, 0x6F14, 0x8273, 0x5830, 0x71D5, - 0x538C, 0x781A, 0x96C1, 0x5501, 0x5F66, 0x7130, 0x5BB4, 0x8C1A, - 0x9A8C, 0x6B83, 0x592E, 0x9E2F, 0x79E7, 0x6768, 0x626C, 0x4F6F, - 0x75A1, 0x7F8A, 0x6D0B, 0x9633, 0x6C27, 0x4EF0, 0x75D2, 0x517B, - 0x6837, 0x6F3E, 0x9080, 0x8170, 0x5996, 0x7476, 0x6447, 0x5C27, -plane 19 -at 0x00 - 0x9065, 0x7A91, 0x8C23, 0x59DA, 0x54AC, 0x8200, 0x836F, 0x8981, - 0x8000, 0x6930, 0x564E, 0x8036, 0x7237, 0x91CE, 0x51B6, 0x4E5F, - 0x9875, 0x6396, 0x4E1A, 0x53F6, 0x66F3, 0x814B, 0x591C, 0x6DB2, - 0x4E00, 0x58F9, 0x533B, 0x63D6, 0x94F1, 0x4F9D, 0x4F0A, 0x8863, - 0x9890, 0x5937, 0x9057, 0x79FB, 0x4EEA, 0x80F0, 0x7591, 0x6C82, - 0x5B9C, 0x59E8, 0x5F5D, 0x6905, 0x8681, 0x501A, 0x5DF2, 0x4E59, - 0x77E3, 0x4EE5, 0x827A, 0x6291, 0x6613, 0x9091, 0x5C79, 0x4EBF, - 0x5F79, 0x81C6, 0x9038, 0x8084, 0x75AB, 0x4EA6, 0x88D4, 0x610F, - 0x6BC5, 0x5FC6, 0x4E49, 0x76CA, 0x6EA2, 0x8BE3, 0x8BAE, 0x8C0A, - 0x8BD1, 0x5F02, 0x7FFC, 0x7FCC, 0x7ECE, 0x8335, 0x836B, 0x56E0, - 0x6BB7, 0x97F3, 0x9634, 0x59FB, 0x541F, 0x94F6, 0x6DEB, 0x5BC5, - 0x996E, 0x5C39, 0x5F15, 0x9690, 0x5370, 0x82F1, 0x6A31, 0x5A74, - 0x9E70, 0x5E94, 0x7F28, 0x83B9, 0x8424, 0x8425, 0x8367, 0x8747, - 0x8FCE, 0x8D62, 0x76C8, 0x5F71, 0x9896, 0x786C, 0x6620, 0x54DF, - 0x62E5, 0x4F63, 0x81C3, 0x75C8, 0x5EB8, 0x96CD, 0x8E0A, 0x86F9, - 0x548F, 0x6CF3, 0x6D8C, 0x6C38, 0x607F, 0x52C7, 0x7528, 0x5E7D, - 0x4F18, 0x60A0, 0x5FE7, 0x5C24, 0x7531, 0x90AE, 0x94C0, 0x72B9, - 0x6CB9, 0x6E38, 0x9149, 0x6709, 0x53CB, 0x53F3, 0x4F51, 0x91C9, - 0x8BF1, 0x53C8, 0x5E7C, 0x8FC2, 0x6DE4, 0x4E8E, 0x76C2, 0x6986, - 0x865E, 0x611A, 0x8206, 0x4F59, 0x4FDE, 0x903E, 0x9C7C, 0x6109, - 0x6E1D, 0x6E14, 0x9685, 0x4E88, 0x5A31, 0x96E8, 0x4E0E, 0x5C7F, - 0x79B9, 0x5B87, 0x8BED, 0x7FBD, 0x7389, 0x57DF, 0x828B, 0x90C1, - 0x5401, 0x9047, 0x55BB, 0x5CEA, 0x5FA1, 0x6108, 0x6B32, 0x72F1, - 0x80B2, 0x8A89, 0x6D74, 0x5BD3, 0x88D5, 0x9884, 0x8C6B, 0x9A6D, - 0x9E33, 0x6E0A, 0x51A4, 0x5143, 0x57A3, 0x8881, 0x539F, 0x63F4, - 0x8F95, 0x56ED, 0x5458, 0x5706, 0x733F, 0x6E90, 0x7F18, 0x8FDC, - 0x82D1, 0x613F, 0x6028, 0x9662, 0x66F0, 0x7EA6, 0x8D8A, 0x8DC3, - 0x94A5, 0x5CB3, 0x7CA4, 0x6708, 0x60A6, 0x9605, 0x8018, 0x4E91, - 0x90E7, 0x5300, 0x9668, 0x5141, 0x8FD0, 0x8574, 0x915D, 0x6655, - 0x97F5, 0x5B55, 0x531D, 0x7838, 0x6742, 0x683D, 0x54C9, 0x707E, - 0x5BB0, 0x8F7D, 0x518D, 0x5728, 0x54B1, 0x6512, 0x6682, 0x8D5E, - 0x8D43, 0x810F, 0x846C, 0x906D, 0x7CDF, 0x51FF, 0x85FB, 0x67A3, -plane 20 -at 0x00 - 0x65E9, 0x6FA1, 0x86A4, 0x8E81, 0x566A, 0x9020, 0x7682, 0x7076, - 0x71E5, 0x8D23, 0x62E9, 0x5219, 0x6CFD, 0x8D3C, 0x600E, 0x589E, - 0x618E, 0x66FE, 0x8D60, 0x624E, 0x55B3, 0x6E23, 0x672D, 0x8F67, - 0x94E1, 0x95F8, 0x7728, 0x6805, 0x69A8, 0x548B, 0x4E4D, 0x70B8, - 0x8BC8, 0x6458, 0x658B, 0x5B85, 0x7A84, 0x503A, 0x5BE8, 0x77BB, - 0x6BE1, 0x8A79, 0x7C98, 0x6CBE, 0x76CF, 0x65A9, 0x8F97, 0x5D2D, - 0x5C55, 0x8638, 0x6808, 0x5360, 0x6218, 0x7AD9, 0x6E5B, 0x7EFD, - 0x6A1F, 0x7AE0, 0x5F70, 0x6F33, 0x5F20, 0x638C, 0x6DA8, 0x6756, - 0x4E08, 0x5E10, 0x8D26, 0x4ED7, 0x80C0, 0x7634, 0x969C, 0x62DB, - 0x662D, 0x627E, 0x6CBC, 0x8D75, 0x7167, 0x7F69, 0x5146, 0x8087, - 0x53EC, 0x906E, 0x6298, 0x54F2, 0x86F0, 0x8F99, 0x8005, 0x9517, - 0x8517, 0x8FD9, 0x6D59, 0x73CD, 0x659F, 0x771F, 0x7504, 0x7827, - 0x81FB, 0x8D1E, 0x9488, 0x4FA6, 0x6795, 0x75B9, 0x8BCA, 0x9707, - 0x632F, 0x9547, 0x9635, 0x84B8, 0x6323, 0x7741, 0x5F81, 0x72F0, - 0x4E89, 0x6014, 0x6574, 0x62EF, 0x6B63, 0x653F, 0x5E27, 0x75C7, - 0x90D1, 0x8BC1, 0x829D, 0x679D, 0x652F, 0x5431, 0x8718, 0x77E5, - 0x80A2, 0x8102, 0x6C41, 0x4E4B, 0x7EC7, 0x804C, 0x76F4, 0x690D, - 0x6B96, 0x6267, 0x503C, 0x4F84, 0x5740, 0x6307, 0x6B62, 0x8DBE, - 0x53EA, 0x65E8, 0x7EB8, 0x5FD7, 0x631A, 0x63B7, 0x81F3, 0x81F4, - 0x7F6E, 0x5E1C, 0x5CD9, 0x5236, 0x667A, 0x79E9, 0x7A1A, 0x8D28, - 0x7099, 0x75D4, 0x6EDE, 0x6CBB, 0x7A92, 0x4E2D, 0x76C5, 0x5FE0, - 0x949F, 0x8877, 0x7EC8, 0x79CD, 0x80BF, 0x91CD, 0x4EF2, 0x4F17, - 0x821F, 0x5468, 0x5DDE, 0x6D32, 0x8BCC, 0x7CA5, 0x8F74, 0x8098, - 0x5E1A, 0x5492, 0x76B1, 0x5B99, 0x663C, 0x9AA4, 0x73E0, 0x682A, - 0x86DB, 0x6731, 0x732A, 0x8BF8, 0x8BDB, 0x9010, 0x7AF9, 0x70DB, - 0x716E, 0x62C4, 0x77A9, 0x5631, 0x4E3B, 0x8457, 0x67F1, 0x52A9, - 0x86C0, 0x8D2E, 0x94F8, 0x7B51, 0x4F4F, 0x6CE8, 0x795D, 0x9A7B, - 0x6293, 0x722A, 0x62FD, 0x4E13, 0x7816, 0x8F6C, 0x64B0, 0x8D5A, - 0x7BC6, 0x6869, 0x5E84, 0x88C5, 0x5986, 0x649E, 0x58EE, 0x72B6, - 0x690E, 0x9525, 0x8FFD, 0x8D58, 0x5760, 0x7F00, 0x8C06, 0x51C6, - 0x6349, 0x62D9, 0x5353, 0x684C, 0x7422, 0x8301, 0x914C, 0x5544, - 0x7740, 0x707C, 0x6D4A, 0x5179, 0x54A8, 0x8D44, 0x59FF, 0x6ECB, -plane 21 -at 0x00 - 0x6DC4, 0x5B5C, 0x7D2B, 0x4ED4, 0x7C7D, 0x6ED3, 0x5B50, 0x81EA, - 0x6E0D, 0x5B57, 0x9B03, 0x68D5, 0x8E2A, 0x5B97, 0x7EFC, 0x603B, - 0x7EB5, 0x90B9, 0x8D70, 0x594F, 0x63CD, 0x79DF, 0x8DB3, 0x5352, - 0x65CF, 0x7956, 0x8BC5, 0x963B, 0x7EC4, 0x94BB, 0x7E82, 0x5634, - 0x9189, 0x6700, 0x7F6A, 0x5C0A, 0x9075, 0x6628, 0x5DE6, 0x4F50, - 0x67DE, 0x505A, 0x4F5C, 0x5750, 0x5EA7, 0, 0, 0, - 0, 0, 0x4E8D, 0x4E0C, 0x5140, 0x4E10, 0x5EFF, 0x5345, - 0x4E15, 0x4E98, 0x4E1E, 0x9B32, 0x5B6C, 0x5669, 0x4E28, 0x79BA, - 0x4E3F, 0x5315, 0x4E47, 0x592D, 0x723B, 0x536E, 0x6C10, 0x56DF, - 0x80E4, 0x9997, 0x6BD3, 0x777E, 0x9F17, 0x4E36, 0x4E9F, 0x9F10, - 0x4E5C, 0x4E69, 0x4E93, 0x8288, 0x5B5B, 0x556C, 0x560F, 0x4EC4, - 0x538D, 0x539D, 0x53A3, 0x53A5, 0x53AE, 0x9765, 0x8D5D, 0x531A, - 0x53F5, 0x5326, 0x532E, 0x533E, 0x8D5C, 0x5366, 0x5363, 0x5202, - 0x5208, 0x520E, 0x522D, 0x5233, 0x523F, 0x5240, 0x524C, 0x525E, - 0x5261, 0x525C, 0x84AF, 0x527D, 0x5282, 0x5281, 0x5290, 0x5293, - 0x5182, 0x7F54, 0x4EBB, 0x4EC3, 0x4EC9, 0x4EC2, 0x4EE8, 0x4EE1, - 0x4EEB, 0x4EDE, 0x4F1B, 0x4EF3, 0x4F22, 0x4F64, 0x4EF5, 0x4F25, - 0x4F27, 0x4F09, 0x4F2B, 0x4F5E, 0x4F67, 0x6538, 0x4F5A, 0x4F5D, - 0x4F5F, 0x4F57, 0x4F32, 0x4F3D, 0x4F76, 0x4F74, 0x4F91, 0x4F89, - 0x4F83, 0x4F8F, 0x4F7E, 0x4F7B, 0x4FAA, 0x4F7C, 0x4FAC, 0x4F94, - 0x4FE6, 0x4FE8, 0x4FEA, 0x4FC5, 0x4FDA, 0x4FE3, 0x4FDC, 0x4FD1, - 0x4FDF, 0x4FF8, 0x5029, 0x504C, 0x4FF3, 0x502C, 0x500F, 0x502E, - 0x502D, 0x4FFE, 0x501C, 0x500C, 0x5025, 0x5028, 0x507E, 0x5043, - 0x5055, 0x5048, 0x504E, 0x506C, 0x507B, 0x50A5, 0x50A7, 0x50A9, - 0x50BA, 0x50D6, 0x5106, 0x50ED, 0x50EC, 0x50E6, 0x50EE, 0x5107, - 0x510B, 0x4EDD, 0x6C3D, 0x4F58, 0x4F65, 0x4FCE, 0x9FA0, 0x6C46, - 0x7C74, 0x516E, 0x5DFD, 0x9EC9, 0x9998, 0x5181, 0x5914, 0x52F9, - 0x530D, 0x8A07, 0x5310, 0x51EB, 0x5919, 0x5155, 0x4EA0, 0x5156, - 0x4EB3, 0x886E, 0x88A4, 0x4EB5, 0x8114, 0x88D2, 0x7980, 0x5B34, - 0x8803, 0x7FB8, 0x51AB, 0x51B1, 0x51BD, 0x51BC, 0x51C7, 0x5196, - 0x51A2, 0x51A5, 0x8BA0, 0x8BA6, 0x8BA7, 0x8BAA, 0x8BB4, 0x8BB5, - 0x8BB7, 0x8BC2, 0x8BC3, 0x8BCB, 0x8BCF, 0x8BCE, 0x8BD2, 0x8BD3, -plane 22 -at 0x00 - 0x8BD4, 0x8BD6, 0x8BD8, 0x8BD9, 0x8BDC, 0x8BDF, 0x8BE0, 0x8BE4, - 0x8BE8, 0x8BE9, 0x8BEE, 0x8BF0, 0x8BF3, 0x8BF6, 0x8BF9, 0x8BFC, - 0x8BFF, 0x8C00, 0x8C02, 0x8C04, 0x8C07, 0x8C0C, 0x8C0F, 0x8C11, - 0x8C12, 0x8C14, 0x8C15, 0x8C16, 0x8C19, 0x8C1B, 0x8C18, 0x8C1D, - 0x8C1F, 0x8C20, 0x8C21, 0x8C25, 0x8C27, 0x8C2A, 0x8C2B, 0x8C2E, - 0x8C2F, 0x8C32, 0x8C33, 0x8C35, 0x8C36, 0x5369, 0x537A, 0x961D, - 0x9622, 0x9621, 0x9631, 0x962A, 0x963D, 0x963C, 0x9642, 0x9649, - 0x9654, 0x965F, 0x9667, 0x966C, 0x9672, 0x9674, 0x9688, 0x968D, - 0x9697, 0x96B0, 0x9097, 0x909B, 0x909D, 0x9099, 0x90AC, 0x90A1, - 0x90B4, 0x90B3, 0x90B6, 0x90BA, 0x90B8, 0x90B0, 0x90CF, 0x90C5, - 0x90BE, 0x90D0, 0x90C4, 0x90C7, 0x90D3, 0x90E6, 0x90E2, 0x90DC, - 0x90D7, 0x90DB, 0x90EB, 0x90EF, 0x90FE, 0x9104, 0x9122, 0x911E, - 0x9123, 0x9131, 0x912F, 0x9139, 0x9143, 0x9146, 0x520D, 0x5942, - 0x52A2, 0x52AC, 0x52AD, 0x52BE, 0x54FF, 0x52D0, 0x52D6, 0x52F0, - 0x53DF, 0x71EE, 0x77CD, 0x5EF4, 0x51F5, 0x51FC, 0x9B2F, 0x53B6, - 0x5F01, 0x755A, 0x5DEF, 0x574C, 0x57A9, 0x57A1, 0x587E, 0x58BC, - 0x58C5, 0x58D1, 0x5729, 0x572C, 0x572A, 0x5733, 0x5739, 0x572E, - 0x572F, 0x575C, 0x573B, 0x5742, 0x5769, 0x5785, 0x576B, 0x5786, - 0x577C, 0x577B, 0x5768, 0x576D, 0x5776, 0x5773, 0x57AD, 0x57A4, - 0x578C, 0x57B2, 0x57CF, 0x57A7, 0x57B4, 0x5793, 0x57A0, 0x57D5, - 0x57D8, 0x57DA, 0x57D9, 0x57D2, 0x57B8, 0x57F4, 0x57EF, 0x57F8, - 0x57E4, 0x57DD, 0x580B, 0x580D, 0x57FD, 0x57ED, 0x5800, 0x581E, - 0x5819, 0x5844, 0x5820, 0x5865, 0x586C, 0x5881, 0x5889, 0x589A, - 0x5880, 0x99A8, 0x9F19, 0x61FF, 0x8279, 0x827D, 0x827F, 0x828F, - 0x828A, 0x82A8, 0x8284, 0x828E, 0x8291, 0x8297, 0x8299, 0x82AB, - 0x82B8, 0x82BE, 0x82B0, 0x82C8, 0x82CA, 0x82E3, 0x8298, 0x82B7, - 0x82AE, 0x82CB, 0x82CC, 0x82C1, 0x82A9, 0x82B4, 0x82A1, 0x82AA, - 0x829F, 0x82C4, 0x82CE, 0x82A4, 0x82E1, 0x8309, 0x82F7, 0x82E4, - 0x830F, 0x8307, 0x82DC, 0x82F4, 0x82D2, 0x82D8, 0x830C, 0x82FB, - 0x82D3, 0x8311, 0x831A, 0x8306, 0x8314, 0x8315, 0x82E0, 0x82D5, - 0x831C, 0x8351, 0x835B, 0x835C, 0x8308, 0x8392, 0x833C, 0x8334, - 0x8331, 0x839B, 0x835E, 0x832F, 0x834F, 0x8347, 0x8343, 0x835F, -plane 23 -at 0x00 - 0x8340, 0x8317, 0x8360, 0x832D, 0x833A, 0x8333, 0x8366, 0x8365, - 0x8368, 0x831B, 0x8369, 0x836C, 0x836A, 0x836D, 0x836E, 0x83B0, - 0x8378, 0x83B3, 0x83B4, 0x83A0, 0x83AA, 0x8393, 0x839C, 0x8385, - 0x837C, 0x83B6, 0x83A9, 0x837D, 0x83B8, 0x837B, 0x8398, 0x839E, - 0x83A8, 0x83BA, 0x83BC, 0x83C1, 0x8401, 0x83E5, 0x83D8, 0x5807, - 0x8418, 0x840B, 0x83DD, 0x83FD, 0x83D6, 0x841C, 0x8438, 0x8411, - 0x8406, 0x83D4, 0x83DF, 0x840F, 0x8403, 0x83F8, 0x83F9, 0x83EA, - 0x83C5, 0x83C0, 0x8426, 0x83F0, 0x83E1, 0x845C, 0x8451, 0x845A, - 0x8459, 0x8473, 0x8487, 0x8488, 0x847A, 0x8489, 0x8478, 0x843C, - 0x8446, 0x8469, 0x8476, 0x848C, 0x848E, 0x8431, 0x846D, 0x84C1, - 0x84CD, 0x84D0, 0x84E6, 0x84BD, 0x84D3, 0x84CA, 0x84BF, 0x84BA, - 0x84E0, 0x84A1, 0x84B9, 0x84B4, 0x8497, 0x84E5, 0x84E3, 0x850C, - 0x750D, 0x8538, 0x84F0, 0x8539, 0x851F, 0x853A, 0x8556, 0x853B, - 0x84FF, 0x84FC, 0x8559, 0x8548, 0x8568, 0x8564, 0x855E, 0x857A, - 0x77A2, 0x8543, 0x8572, 0x857B, 0x85A4, 0x85A8, 0x8587, 0x858F, - 0x8579, 0x85AE, 0x859C, 0x8585, 0x85B9, 0x85B7, 0x85B0, 0x85D3, - 0x85C1, 0x85DC, 0x85FF, 0x8627, 0x8605, 0x8629, 0x8616, 0x863C, - 0x5EFE, 0x5F08, 0x593C, 0x5941, 0x8037, 0x5955, 0x595A, 0x5958, - 0x530F, 0x5C22, 0x5C25, 0x5C2C, 0x5C34, 0x624C, 0x626A, 0x629F, - 0x62BB, 0x62CA, 0x62DA, 0x62D7, 0x62EE, 0x6322, 0x62F6, 0x6339, - 0x634B, 0x6343, 0x63AD, 0x63F6, 0x6371, 0x637A, 0x638E, 0x63B4, - 0x636D, 0x63AC, 0x638A, 0x6369, 0x63AE, 0x63BC, 0x63F2, 0x63F8, - 0x63E0, 0x63FF, 0x63C4, 0x63DE, 0x63CE, 0x6452, 0x63C6, 0x63BE, - 0x6445, 0x6441, 0x640B, 0x641B, 0x6420, 0x640C, 0x6426, 0x6421, - 0x645E, 0x6484, 0x646D, 0x6496, 0x647A, 0x64B7, 0x64B8, 0x6499, - 0x64BA, 0x64C0, 0x64D0, 0x64D7, 0x64E4, 0x64E2, 0x6509, 0x6525, - 0x652E, 0x5F0B, 0x5FD2, 0x7519, 0x5F11, 0x535F, 0x53F1, 0x53FD, - 0x53E9, 0x53E8, 0x53FB, 0x5412, 0x5416, 0x5406, 0x544B, 0x5452, - 0x5453, 0x5454, 0x5456, 0x5443, 0x5421, 0x5457, 0x5459, 0x5423, - 0x5432, 0x5482, 0x5494, 0x5477, 0x5471, 0x5464, 0x549A, 0x549B, - 0x5484, 0x5476, 0x5466, 0x549D, 0x54D0, 0x54AD, 0x54C2, 0x54B4, - 0x54D2, 0x54A7, 0x54A6, 0x54D3, 0x54D4, 0x5472, 0x54A3, 0x54D5, -plane 24 -at 0x00 - 0x54BB, 0x54BF, 0x54CC, 0x54D9, 0x54DA, 0x54DC, 0x54A9, 0x54AA, - 0x54A4, 0x54DD, 0x54CF, 0x54DE, 0x551B, 0x54E7, 0x5520, 0x54FD, - 0x5514, 0x54F3, 0x5522, 0x5523, 0x550F, 0x5511, 0x5527, 0x552A, - 0x5567, 0x558F, 0x55B5, 0x5549, 0x556D, 0x5541, 0x5555, 0x553F, - 0x5550, 0x553C, 0x5537, 0x5556, 0x5575, 0x5576, 0x5577, 0x5533, - 0x5530, 0x555C, 0x558B, 0x55D2, 0x5583, 0x55B1, 0x55B9, 0x5588, - 0x5581, 0x559F, 0x557E, 0x55D6, 0x5591, 0x557B, 0x55DF, 0x55BD, - 0x55BE, 0x5594, 0x5599, 0x55EA, 0x55F7, 0x55C9, 0x561F, 0x55D1, - 0x55EB, 0x55EC, 0x55D4, 0x55E6, 0x55DD, 0x55C4, 0x55EF, 0x55E5, - 0x55F2, 0x55F3, 0x55CC, 0x55CD, 0x55E8, 0x55F5, 0x55E4, 0x8F94, - 0x561E, 0x5608, 0x560C, 0x5601, 0x5624, 0x5623, 0x55FE, 0x5600, - 0x5627, 0x562D, 0x5658, 0x5639, 0x5657, 0x562C, 0x564D, 0x5662, - 0x5659, 0x565C, 0x564C, 0x5654, 0x5686, 0x5664, 0x5671, 0x566B, - 0x567B, 0x567C, 0x5685, 0x5693, 0x56AF, 0x56D4, 0x56D7, 0x56DD, - 0x56E1, 0x56F5, 0x56EB, 0x56F9, 0x56FF, 0x5704, 0x570A, 0x5709, - 0x571C, 0x5E0F, 0x5E19, 0x5E14, 0x5E11, 0x5E31, 0x5E3B, 0x5E3C, - 0x5E37, 0x5E44, 0x5E54, 0x5E5B, 0x5E5E, 0x5E61, 0x5C8C, 0x5C7A, - 0x5C8D, 0x5C90, 0x5C96, 0x5C88, 0x5C98, 0x5C99, 0x5C91, 0x5C9A, - 0x5C9C, 0x5CB5, 0x5CA2, 0x5CBD, 0x5CAC, 0x5CAB, 0x5CB1, 0x5CA3, - 0x5CC1, 0x5CB7, 0x5CC4, 0x5CD2, 0x5CE4, 0x5CCB, 0x5CE5, 0x5D02, - 0x5D03, 0x5D27, 0x5D26, 0x5D2E, 0x5D24, 0x5D1E, 0x5D06, 0x5D1B, - 0x5D58, 0x5D3E, 0x5D34, 0x5D3D, 0x5D6C, 0x5D5B, 0x5D6F, 0x5D5D, - 0x5D6B, 0x5D4B, 0x5D4A, 0x5D69, 0x5D74, 0x5D82, 0x5D99, 0x5D9D, - 0x8C73, 0x5DB7, 0x5DC5, 0x5F73, 0x5F77, 0x5F82, 0x5F87, 0x5F89, - 0x5F8C, 0x5F95, 0x5F99, 0x5F9C, 0x5FA8, 0x5FAD, 0x5FB5, 0x5FBC, - 0x8862, 0x5F61, 0x72AD, 0x72B0, 0x72B4, 0x72B7, 0x72B8, 0x72C3, - 0x72C1, 0x72CE, 0x72CD, 0x72D2, 0x72E8, 0x72EF, 0x72E9, 0x72F2, - 0x72F4, 0x72F7, 0x7301, 0x72F3, 0x7303, 0x72FA, 0x72FB, 0x7317, - 0x7313, 0x7321, 0x730A, 0x731E, 0x731D, 0x7315, 0x7322, 0x7339, - 0x7325, 0x732C, 0x7338, 0x7331, 0x7350, 0x734D, 0x7357, 0x7360, - 0x736C, 0x736F, 0x737E, 0x821B, 0x5925, 0x98E7, 0x5924, 0x5902, - 0x9963, 0x9967, 0x9968, 0x9969, 0x996A, 0x996B, 0x996C, 0x9974, -plane 25 -at 0x00 - 0x9977, 0x997D, 0x9980, 0x9984, 0x9987, 0x998A, 0x998D, 0x9990, - 0x9991, 0x9993, 0x9994, 0x9995, 0x5E80, 0x5E91, 0x5E8B, 0x5E96, - 0x5EA5, 0x5EA0, 0x5EB9, 0x5EB5, 0x5EBE, 0x5EB3, 0x8D53, 0x5ED2, - 0x5ED1, 0x5EDB, 0x5EE8, 0x5EEA, 0x81BA, 0x5FC4, 0x5FC9, 0x5FD6, - 0x5FCF, 0x6003, 0x5FEE, 0x6004, 0x5FE1, 0x5FE4, 0x5FFE, 0x6005, - 0x6006, 0x5FEA, 0x5FED, 0x5FF8, 0x6019, 0x6035, 0x6026, 0x601B, - 0x600F, 0x600D, 0x6029, 0x602B, 0x600A, 0x603F, 0x6021, 0x6078, - 0x6079, 0x607B, 0x607A, 0x6042, 0x606A, 0x607D, 0x6096, 0x609A, - 0x60AD, 0x609D, 0x6083, 0x6092, 0x608C, 0x609B, 0x60EC, 0x60BB, - 0x60B1, 0x60DD, 0x60D8, 0x60C6, 0x60DA, 0x60B4, 0x6120, 0x6126, - 0x6115, 0x6123, 0x60F4, 0x6100, 0x610E, 0x612B, 0x614A, 0x6175, - 0x61AC, 0x6194, 0x61A7, 0x61B7, 0x61D4, 0x61F5, 0x5FDD, 0x96B3, - 0x95E9, 0x95EB, 0x95F1, 0x95F3, 0x95F5, 0x95F6, 0x95FC, 0x95FE, - 0x9603, 0x9604, 0x9606, 0x9608, 0x960A, 0x960B, 0x960C, 0x960D, - 0x960F, 0x9612, 0x9615, 0x9616, 0x9617, 0x9619, 0x961A, 0x4E2C, - 0x723F, 0x6215, 0x6C35, 0x6C54, 0x6C5C, 0x6C4A, 0x6CA3, 0x6C85, - 0x6C90, 0x6C94, 0x6C8C, 0x6C68, 0x6C69, 0x6C74, 0x6C76, 0x6C86, - 0x6CA9, 0x6CD0, 0x6CD4, 0x6CAD, 0x6CF7, 0x6CF8, 0x6CF1, 0x6CD7, - 0x6CB2, 0x6CE0, 0x6CD6, 0x6CFA, 0x6CEB, 0x6CEE, 0x6CB1, 0x6CD3, - 0x6CEF, 0x6CFE, 0x6D39, 0x6D27, 0x6D0C, 0x6D43, 0x6D48, 0x6D07, - 0x6D04, 0x6D19, 0x6D0E, 0x6D2B, 0x6D4D, 0x6D2E, 0x6D35, 0x6D1A, - 0x6D4F, 0x6D52, 0x6D54, 0x6D33, 0x6D91, 0x6D6F, 0x6D9E, 0x6DA0, - 0x6D5E, 0x6D93, 0x6D94, 0x6D5C, 0x6D60, 0x6D7C, 0x6D63, 0x6E1A, - 0x6DC7, 0x6DC5, 0x6DDE, 0x6E0E, 0x6DBF, 0x6DE0, 0x6E11, 0x6DE6, - 0x6DDD, 0x6DD9, 0x6E16, 0x6DAB, 0x6E0C, 0x6DAE, 0x6E2B, 0x6E6E, - 0x6E4E, 0x6E6B, 0x6EB2, 0x6E5F, 0x6E86, 0x6E53, 0x6E54, 0x6E32, - 0x6E25, 0x6E44, 0x6EDF, 0x6EB1, 0x6E98, 0x6EE0, 0x6F2D, 0x6EE2, - 0x6EA5, 0x6EA7, 0x6EBD, 0x6EBB, 0x6EB7, 0x6ED7, 0x6EB4, 0x6ECF, - 0x6E8F, 0x6EC2, 0x6E9F, 0x6F62, 0x6F46, 0x6F47, 0x6F24, 0x6F15, - 0x6EF9, 0x6F2F, 0x6F36, 0x6F4B, 0x6F74, 0x6F2A, 0x6F09, 0x6F29, - 0x6F89, 0x6F8D, 0x6F8C, 0x6F78, 0x6F72, 0x6F7C, 0x6F7A, 0x6FD1, - 0x6FC9, 0x6FA7, 0x6FB9, 0x6FB6, 0x6FC2, 0x6FE1, 0x6FEE, 0x6FDE, -plane 26 -at 0x00 - 0x6FE0, 0x6FEF, 0x701A, 0x7023, 0x701B, 0x7039, 0x7035, 0x704F, - 0x705E, 0x5B80, 0x5B84, 0x5B95, 0x5B93, 0x5BA5, 0x5BB8, 0x752F, - 0x9A9E, 0x6434, 0x5BE4, 0x5BEE, 0x8930, 0x5BF0, 0x8E47, 0x8B07, - 0x8FB6, 0x8FD3, 0x8FD5, 0x8FE5, 0x8FEE, 0x8FE4, 0x8FE9, 0x8FE6, - 0x8FF3, 0x8FE8, 0x9005, 0x9004, 0x900B, 0x9026, 0x9011, 0x900D, - 0x9016, 0x9021, 0x9035, 0x9036, 0x902D, 0x902F, 0x9044, 0x9051, - 0x9052, 0x9050, 0x9068, 0x9058, 0x9062, 0x905B, 0x66B9, 0x9074, - 0x907D, 0x9082, 0x9088, 0x9083, 0x908B, 0x5F50, 0x5F57, 0x5F56, - 0x5F58, 0x5C3B, 0x54AB, 0x5C50, 0x5C59, 0x5B71, 0x5C63, 0x5C66, - 0x7FBC, 0x5F2A, 0x5F29, 0x5F2D, 0x8274, 0x5F3C, 0x9B3B, 0x5C6E, - 0x5981, 0x5983, 0x598D, 0x59A9, 0x59AA, 0x59A3, 0x5997, 0x59CA, - 0x59AB, 0x599E, 0x59A4, 0x59D2, 0x59B2, 0x59AF, 0x59D7, 0x59BE, - 0x5A05, 0x5A06, 0x59DD, 0x5A08, 0x59E3, 0x59D8, 0x59F9, 0x5A0C, - 0x5A09, 0x5A32, 0x5A34, 0x5A11, 0x5A23, 0x5A13, 0x5A40, 0x5A67, - 0x5A4A, 0x5A55, 0x5A3C, 0x5A62, 0x5A75, 0x80EC, 0x5AAA, 0x5A9B, - 0x5A77, 0x5A7A, 0x5ABE, 0x5AEB, 0x5AB2, 0x5AD2, 0x5AD4, 0x5AB8, - 0x5AE0, 0x5AE3, 0x5AF1, 0x5AD6, 0x5AE6, 0x5AD8, 0x5ADC, 0x5B09, - 0x5B17, 0x5B16, 0x5B32, 0x5B37, 0x5B40, 0x5C15, 0x5C1C, 0x5B5A, - 0x5B65, 0x5B73, 0x5B51, 0x5B53, 0x5B62, 0x9A75, 0x9A77, 0x9A78, - 0x9A7A, 0x9A7F, 0x9A7D, 0x9A80, 0x9A81, 0x9A85, 0x9A88, 0x9A8A, - 0x9A90, 0x9A92, 0x9A93, 0x9A96, 0x9A98, 0x9A9B, 0x9A9C, 0x9A9D, - 0x9A9F, 0x9AA0, 0x9AA2, 0x9AA3, 0x9AA5, 0x9AA7, 0x7E9F, 0x7EA1, - 0x7EA3, 0x7EA5, 0x7EA8, 0x7EA9, 0x7EAD, 0x7EB0, 0x7EBE, 0x7EC0, - 0x7EC1, 0x7EC2, 0x7EC9, 0x7ECB, 0x7ECC, 0x7ED0, 0x7ED4, 0x7ED7, - 0x7EDB, 0x7EE0, 0x7EE1, 0x7EE8, 0x7EEB, 0x7EEE, 0x7EEF, 0x7EF1, - 0x7EF2, 0x7F0D, 0x7EF6, 0x7EFA, 0x7EFB, 0x7EFE, 0x7F01, 0x7F02, - 0x7F03, 0x7F07, 0x7F08, 0x7F0B, 0x7F0C, 0x7F0F, 0x7F11, 0x7F12, - 0x7F17, 0x7F19, 0x7F1C, 0x7F1B, 0x7F1F, 0x7F21, 0x7F22, 0x7F23, - 0x7F24, 0x7F25, 0x7F26, 0x7F27, 0x7F2A, 0x7F2B, 0x7F2C, 0x7F2D, - 0x7F2F, 0x7F30, 0x7F31, 0x7F32, 0x7F33, 0x7F35, 0x5E7A, 0x757F, - 0x5DDB, 0x753E, 0x9095, 0x738E, 0x7391, 0x73AE, 0x73A2, 0x739F, - 0x73CF, 0x73C2, 0x73D1, 0x73B7, 0x73B3, 0x73C0, 0x73C9, 0x73C8, -plane 27 -at 0x00 - 0x73E5, 0x73D9, 0x987C, 0x740A, 0x73E9, 0x73E7, 0x73DE, 0x73BA, - 0x73F2, 0x740F, 0x742A, 0x745B, 0x7426, 0x7425, 0x7428, 0x7430, - 0x742E, 0x742C, 0x741B, 0x741A, 0x7441, 0x745C, 0x7457, 0x7455, - 0x7459, 0x7477, 0x746D, 0x747E, 0x749C, 0x748E, 0x7480, 0x7481, - 0x7487, 0x748B, 0x749E, 0x74A8, 0x74A9, 0x7490, 0x74A7, 0x74D2, - 0x74BA, 0x97EA, 0x97EB, 0x97EC, 0x674C, 0x6753, 0x675E, 0x6748, - 0x6769, 0x67A5, 0x6787, 0x676A, 0x6773, 0x6798, 0x67A7, 0x6775, - 0x67A8, 0x679E, 0x67AD, 0x678B, 0x6777, 0x677C, 0x67F0, 0x6809, - 0x67D8, 0x680A, 0x67E9, 0x67B0, 0x680C, 0x67D9, 0x67B5, 0x67DA, - 0x67B3, 0x67DD, 0x6800, 0x67C3, 0x67B8, 0x67E2, 0x680E, 0x67C1, - 0x67FD, 0x6832, 0x6833, 0x6860, 0x6861, 0x684E, 0x6862, 0x6844, - 0x6864, 0x6883, 0x681D, 0x6855, 0x6866, 0x6841, 0x6867, 0x6840, - 0x683E, 0x684A, 0x6849, 0x6829, 0x68B5, 0x688F, 0x6874, 0x6877, - 0x6893, 0x686B, 0x68C2, 0x696E, 0x68FC, 0x691F, 0x6920, 0x68F9, - 0x6924, 0x68F0, 0x690B, 0x6901, 0x6957, 0x68E3, 0x6910, 0x6971, - 0x6939, 0x6960, 0x6942, 0x695D, 0x6984, 0x696B, 0x6980, 0x6998, - 0x6978, 0x6934, 0x69CC, 0x6987, 0x6988, 0x69CE, 0x6989, 0x6966, - 0x6963, 0x6979, 0x699B, 0x69A7, 0x69BB, 0x69AB, 0x69AD, 0x69D4, - 0x69B1, 0x69C1, 0x69CA, 0x69DF, 0x6995, 0x69E0, 0x698D, 0x69FF, - 0x6A2F, 0x69ED, 0x6A17, 0x6A18, 0x6A65, 0x69F2, 0x6A44, 0x6A3E, - 0x6AA0, 0x6A50, 0x6A5B, 0x6A35, 0x6A8E, 0x6A79, 0x6A3D, 0x6A28, - 0x6A58, 0x6A7C, 0x6A91, 0x6A90, 0x6AA9, 0x6A97, 0x6AAB, 0x7337, - 0x7352, 0x6B81, 0x6B82, 0x6B87, 0x6B84, 0x6B92, 0x6B93, 0x6B8D, - 0x6B9A, 0x6B9B, 0x6BA1, 0x6BAA, 0x8F6B, 0x8F6D, 0x8F71, 0x8F72, - 0x8F73, 0x8F75, 0x8F76, 0x8F78, 0x8F77, 0x8F79, 0x8F7A, 0x8F7C, - 0x8F7E, 0x8F81, 0x8F82, 0x8F84, 0x8F87, 0x8F8B, 0x8F8D, 0x8F8E, - 0x8F8F, 0x8F98, 0x8F9A, 0x8ECE, 0x620B, 0x6217, 0x621B, 0x621F, - 0x6222, 0x6221, 0x6225, 0x6224, 0x622C, 0x81E7, 0x74EF, 0x74F4, - 0x74FF, 0x750F, 0x7511, 0x7513, 0x6534, 0x65EE, 0x65EF, 0x65F0, - 0x660A, 0x6619, 0x6772, 0x6603, 0x6615, 0x6600, 0x7085, 0x66F7, - 0x661D, 0x6634, 0x6631, 0x6636, 0x6635, 0x8006, 0x665F, 0x6654, - 0x6641, 0x664F, 0x6656, 0x6661, 0x6657, 0x6677, 0x6684, 0x668C, -plane 28 -at 0x00 - 0x66A7, 0x669D, 0x66BE, 0x66DB, 0x66DC, 0x66E6, 0x66E9, 0x8D32, - 0x8D33, 0x8D36, 0x8D3B, 0x8D3D, 0x8D40, 0x8D45, 0x8D46, 0x8D48, - 0x8D49, 0x8D47, 0x8D4D, 0x8D55, 0x8D59, 0x89C7, 0x89CA, 0x89CB, - 0x89CC, 0x89CE, 0x89CF, 0x89D0, 0x89D1, 0x726E, 0x729F, 0x725D, - 0x7266, 0x726F, 0x727E, 0x727F, 0x7284, 0x728B, 0x728D, 0x728F, - 0x7292, 0x6308, 0x6332, 0x63B0, 0x643F, 0x64D8, 0x8004, 0x6BEA, - 0x6BF3, 0x6BFD, 0x6BF5, 0x6BF9, 0x6C05, 0x6C07, 0x6C06, 0x6C0D, - 0x6C15, 0x6C18, 0x6C19, 0x6C1A, 0x6C21, 0x6C29, 0x6C24, 0x6C2A, - 0x6C32, 0x6535, 0x6555, 0x656B, 0x724D, 0x7252, 0x7256, 0x7230, - 0x8662, 0x5216, 0x809F, 0x809C, 0x8093, 0x80BC, 0x670A, 0x80BD, - 0x80B1, 0x80AB, 0x80AD, 0x80B4, 0x80B7, 0x80E7, 0x80E8, 0x80E9, - 0x80EA, 0x80DB, 0x80C2, 0x80C4, 0x80D9, 0x80CD, 0x80D7, 0x6710, - 0x80DD, 0x80EB, 0x80F1, 0x80F4, 0x80ED, 0x810D, 0x810E, 0x80F2, - 0x80FC, 0x6715, 0x8112, 0x8C5A, 0x8136, 0x811E, 0x812C, 0x8118, - 0x8132, 0x8148, 0x814C, 0x8153, 0x8174, 0x8159, 0x815A, 0x8171, - 0x8160, 0x8169, 0x817C, 0x817D, 0x816D, 0x8167, 0x584D, 0x5AB5, - 0x8188, 0x8182, 0x8191, 0x6ED5, 0x81A3, 0x81AA, 0x81CC, 0x6726, - 0x81CA, 0x81BB, 0x81C1, 0x81A6, 0x6B24, 0x6B37, 0x6B39, 0x6B43, - 0x6B46, 0x6B59, 0x98D1, 0x98D2, 0x98D3, 0x98D5, 0x98D9, 0x98DA, - 0x6BB3, 0x5F40, 0x6BC2, 0x89F3, 0x6590, 0x9F51, 0x6593, 0x65BC, - 0x65C6, 0x65C4, 0x65C3, 0x65CC, 0x65CE, 0x65D2, 0x65D6, 0x7080, - 0x709C, 0x7096, 0x709D, 0x70BB, 0x70C0, 0x70B7, 0x70AB, 0x70B1, - 0x70E8, 0x70CA, 0x7110, 0x7113, 0x7116, 0x712F, 0x7131, 0x7173, - 0x715C, 0x7168, 0x7145, 0x7172, 0x714A, 0x7178, 0x717A, 0x7198, - 0x71B3, 0x71B5, 0x71A8, 0x71A0, 0x71E0, 0x71D4, 0x71E7, 0x71F9, - 0x721D, 0x7228, 0x706C, 0x7118, 0x7166, 0x71B9, 0x623E, 0x623D, - 0x6243, 0x6248, 0x6249, 0x793B, 0x7940, 0x7946, 0x7949, 0x795B, - 0x795C, 0x7953, 0x795A, 0x7962, 0x7957, 0x7960, 0x796F, 0x7967, - 0x797A, 0x7985, 0x798A, 0x799A, 0x79A7, 0x79B3, 0x5FD1, 0x5FD0, - 0x603C, 0x605D, 0x605A, 0x6067, 0x6041, 0x6059, 0x6063, 0x60AB, - 0x6106, 0x610D, 0x615D, 0x61A9, 0x619D, 0x61CB, 0x61D1, 0x6206, - 0x8080, 0x807F, 0x6C93, 0x6CF6, 0x6DFC, 0x77F6, 0x77F8, 0x7800, -plane 29 -at 0x00 - 0x7809, 0x7817, 0x7818, 0x7811, 0x65AB, 0x782D, 0x781C, 0x781D, - 0x7839, 0x783A, 0x783B, 0x781F, 0x783C, 0x7825, 0x782C, 0x7823, - 0x7829, 0x784E, 0x786D, 0x7856, 0x7857, 0x7826, 0x7850, 0x7847, - 0x784C, 0x786A, 0x789B, 0x7893, 0x789A, 0x7887, 0x789C, 0x78A1, - 0x78A3, 0x78B2, 0x78B9, 0x78A5, 0x78D4, 0x78D9, 0x78C9, 0x78EC, - 0x78F2, 0x7905, 0x78F4, 0x7913, 0x7924, 0x791E, 0x7934, 0x9F9B, - 0x9EF9, 0x9EFB, 0x9EFC, 0x76F1, 0x7704, 0x770D, 0x76F9, 0x7707, - 0x7708, 0x771A, 0x7722, 0x7719, 0x772D, 0x7726, 0x7735, 0x7738, - 0x7750, 0x7751, 0x7747, 0x7743, 0x775A, 0x7768, 0x7762, 0x7765, - 0x777F, 0x778D, 0x777D, 0x7780, 0x778C, 0x7791, 0x779F, 0x77A0, - 0x77B0, 0x77B5, 0x77BD, 0x753A, 0x7540, 0x754E, 0x754B, 0x7548, - 0x755B, 0x7572, 0x7579, 0x7583, 0x7F58, 0x7F61, 0x7F5F, 0x8A48, - 0x7F68, 0x7F74, 0x7F71, 0x7F79, 0x7F81, 0x7F7E, 0x76CD, 0x76E5, - 0x8832, 0x9485, 0x9486, 0x9487, 0x948B, 0x948A, 0x948C, 0x948D, - 0x948F, 0x9490, 0x9494, 0x9497, 0x9495, 0x949A, 0x949B, 0x949C, - 0x94A3, 0x94A4, 0x94AB, 0x94AA, 0x94AD, 0x94AC, 0x94AF, 0x94B0, - 0x94B2, 0x94B4, 0x94B6, 0x94B7, 0x94B8, 0x94B9, 0x94BA, 0x94BC, - 0x94BD, 0x94BF, 0x94C4, 0x94C8, 0x94C9, 0x94CA, 0x94CB, 0x94CC, - 0x94CD, 0x94CE, 0x94D0, 0x94D1, 0x94D2, 0x94D5, 0x94D6, 0x94D7, - 0x94D9, 0x94D8, 0x94DB, 0x94DE, 0x94DF, 0x94E0, 0x94E2, 0x94E4, - 0x94E5, 0x94E7, 0x94E8, 0x94EA, 0x94E9, 0x94EB, 0x94EE, 0x94EF, - 0x94F3, 0x94F4, 0x94F5, 0x94F7, 0x94F9, 0x94FC, 0x94FD, 0x94FF, - 0x9503, 0x9502, 0x9506, 0x9507, 0x9509, 0x950A, 0x950D, 0x950E, - 0x950F, 0x9512, 0x9513, 0x9514, 0x9515, 0x9516, 0x9518, 0x951B, - 0x951D, 0x951E, 0x951F, 0x9522, 0x952A, 0x952B, 0x9529, 0x952C, - 0x9531, 0x9532, 0x9534, 0x9536, 0x9537, 0x9538, 0x953C, 0x953E, - 0x953F, 0x9542, 0x9535, 0x9544, 0x9545, 0x9546, 0x9549, 0x954C, - 0x954E, 0x954F, 0x9552, 0x9553, 0x9554, 0x9556, 0x9557, 0x9558, - 0x9559, 0x955B, 0x955E, 0x955F, 0x955D, 0x9561, 0x9562, 0x9564, - 0x9565, 0x9566, 0x9567, 0x9568, 0x9569, 0x956A, 0x956B, 0x956C, - 0x956F, 0x9571, 0x9572, 0x9573, 0x953A, 0x77E7, 0x77EC, 0x96C9, - 0x79D5, 0x79ED, 0x79E3, 0x79EB, 0x7A06, 0x5D47, 0x7A03, 0x7A02, -plane 30 -at 0x00 - 0x7A1E, 0x7A14, 0x7A39, 0x7A37, 0x7A51, 0x9ECF, 0x99A5, 0x7A70, - 0x7688, 0x768E, 0x7693, 0x7699, 0x76A4, 0x74DE, 0x74E0, 0x752C, - 0x9E20, 0x9E22, 0x9E28, 0x9E29, 0x9E2A, 0x9E2B, 0x9E2C, 0x9E32, - 0x9E31, 0x9E36, 0x9E38, 0x9E37, 0x9E39, 0x9E3A, 0x9E3E, 0x9E41, - 0x9E42, 0x9E44, 0x9E46, 0x9E47, 0x9E48, 0x9E49, 0x9E4B, 0x9E4C, - 0x9E4E, 0x9E51, 0x9E55, 0x9E57, 0x9E5A, 0x9E5B, 0x9E5C, 0x9E5E, - 0x9E63, 0x9E66, 0x9E67, 0x9E68, 0x9E69, 0x9E6A, 0x9E6B, 0x9E6C, - 0x9E71, 0x9E6D, 0x9E73, 0x7592, 0x7594, 0x7596, 0x75A0, 0x759D, - 0x75AC, 0x75A3, 0x75B3, 0x75B4, 0x75B8, 0x75C4, 0x75B1, 0x75B0, - 0x75C3, 0x75C2, 0x75D6, 0x75CD, 0x75E3, 0x75E8, 0x75E6, 0x75E4, - 0x75EB, 0x75E7, 0x7603, 0x75F1, 0x75FC, 0x75FF, 0x7610, 0x7600, - 0x7605, 0x760C, 0x7617, 0x760A, 0x7625, 0x7618, 0x7615, 0x7619, - 0x761B, 0x763C, 0x7622, 0x7620, 0x7640, 0x762D, 0x7630, 0x763F, - 0x7635, 0x7643, 0x763E, 0x7633, 0x764D, 0x765E, 0x7654, 0x765C, - 0x7656, 0x766B, 0x766F, 0x7FCA, 0x7AE6, 0x7A78, 0x7A79, 0x7A80, - 0x7A86, 0x7A88, 0x7A95, 0x7AA6, 0x7AA0, 0x7AAC, 0x7AA8, 0x7AAD, - 0x7AB3, 0x8864, 0x8869, 0x8872, 0x887D, 0x887F, 0x8882, 0x88A2, - 0x88C6, 0x88B7, 0x88BC, 0x88C9, 0x88E2, 0x88CE, 0x88E3, 0x88E5, - 0x88F1, 0x891A, 0x88FC, 0x88E8, 0x88FE, 0x88F0, 0x8921, 0x8919, - 0x8913, 0x891B, 0x890A, 0x8934, 0x892B, 0x8936, 0x8941, 0x8966, - 0x897B, 0x758B, 0x80E5, 0x76B2, 0x76B4, 0x77DC, 0x8012, 0x8014, - 0x8016, 0x801C, 0x8020, 0x8022, 0x8025, 0x8026, 0x8027, 0x8029, - 0x8028, 0x8031, 0x800B, 0x8035, 0x8043, 0x8046, 0x804D, 0x8052, - 0x8069, 0x8071, 0x8983, 0x9878, 0x9880, 0x9883, 0x9889, 0x988C, - 0x988D, 0x988F, 0x9894, 0x989A, 0x989B, 0x989E, 0x989F, 0x98A1, - 0x98A2, 0x98A5, 0x98A6, 0x864D, 0x8654, 0x866C, 0x866E, 0x867F, - 0x867A, 0x867C, 0x867B, 0x86A8, 0x868D, 0x868B, 0x86AC, 0x869D, - 0x86A7, 0x86A3, 0x86AA, 0x8693, 0x86A9, 0x86B6, 0x86C4, 0x86B5, - 0x86CE, 0x86B0, 0x86BA, 0x86B1, 0x86AF, 0x86C9, 0x86CF, 0x86B4, - 0x86E9, 0x86F1, 0x86F2, 0x86ED, 0x86F3, 0x86D0, 0x8713, 0x86DE, - 0x86F4, 0x86DF, 0x86D8, 0x86D1, 0x8703, 0x8707, 0x86F8, 0x8708, - 0x870A, 0x870D, 0x8709, 0x8723, 0x873B, 0x871E, 0x8725, 0x872E, -plane 31 -at 0x00 - 0x871A, 0x873E, 0x8748, 0x8734, 0x8731, 0x8729, 0x8737, 0x873F, - 0x8782, 0x8722, 0x877D, 0x877E, 0x877B, 0x8760, 0x8770, 0x874C, - 0x876E, 0x878B, 0x8753, 0x8763, 0x877C, 0x8764, 0x8759, 0x8765, - 0x8793, 0x87AF, 0x87A8, 0x87D2, 0x87C6, 0x8788, 0x8785, 0x87AD, - 0x8797, 0x8783, 0x87AB, 0x87E5, 0x87AC, 0x87B5, 0x87B3, 0x87CB, - 0x87D3, 0x87BD, 0x87D1, 0x87C0, 0x87CA, 0x87DB, 0x87EA, 0x87E0, - 0x87EE, 0x8816, 0x8813, 0x87FE, 0x880A, 0x881B, 0x8821, 0x8839, - 0x883C, 0x7F36, 0x7F42, 0x7F44, 0x7F45, 0x8210, 0x7AFA, 0x7AFD, - 0x7B08, 0x7B03, 0x7B04, 0x7B15, 0x7B0A, 0x7B2B, 0x7B0F, 0x7B47, - 0x7B38, 0x7B2A, 0x7B19, 0x7B2E, 0x7B31, 0x7B20, 0x7B25, 0x7B24, - 0x7B33, 0x7B3E, 0x7B1E, 0x7B58, 0x7B5A, 0x7B45, 0x7B75, 0x7B4C, - 0x7B5D, 0x7B60, 0x7B6E, 0x7B7B, 0x7B62, 0x7B72, 0x7B71, 0x7B90, - 0x7BA6, 0x7BA7, 0x7BB8, 0x7BAC, 0x7B9D, 0x7BA8, 0x7B85, 0x7BAA, - 0x7B9C, 0x7BA2, 0x7BAB, 0x7BB4, 0x7BD1, 0x7BC1, 0x7BCC, 0x7BDD, - 0x7BDA, 0x7BE5, 0x7BE6, 0x7BEA, 0x7C0C, 0x7BFE, 0x7BFC, 0x7C0F, - 0x7C16, 0x7C0B, 0x7C1F, 0x7C2A, 0x7C26, 0x7C38, 0x7C41, 0x7C40, - 0x81FE, 0x8201, 0x8202, 0x8204, 0x81EC, 0x8844, 0x8221, 0x8222, - 0x8223, 0x822D, 0x822F, 0x8228, 0x822B, 0x8238, 0x823B, 0x8233, - 0x8234, 0x823E, 0x8244, 0x8249, 0x824B, 0x824F, 0x825A, 0x825F, - 0x8268, 0x887E, 0x8885, 0x8888, 0x88D8, 0x88DF, 0x895E, 0x7F9D, - 0x7F9F, 0x7FA7, 0x7FAF, 0x7FB0, 0x7FB2, 0x7C7C, 0x6549, 0x7C91, - 0x7C9D, 0x7C9C, 0x7C9E, 0x7CA2, 0x7CB2, 0x7CBC, 0x7CBD, 0x7CC1, - 0x7CC7, 0x7CCC, 0x7CCD, 0x7CC8, 0x7CC5, 0x7CD7, 0x7CE8, 0x826E, - 0x66A8, 0x7FBF, 0x7FCE, 0x7FD5, 0x7FE5, 0x7FE1, 0x7FE6, 0x7FE9, - 0x7FEE, 0x7FF3, 0x7CF8, 0x7D77, 0x7DA6, 0x7DAE, 0x7E47, 0x7E9B, - 0x9EB8, 0x9EB4, 0x8D73, 0x8D84, 0x8D94, 0x8D91, 0x8DB1, 0x8D67, - 0x8D6D, 0x8C47, 0x8C49, 0x914A, 0x9150, 0x914E, 0x914F, 0x9164, - 0x9162, 0x9161, 0x9170, 0x9169, 0x916F, 0x917D, 0x917E, 0x9172, - 0x9174, 0x9179, 0x918C, 0x9185, 0x9190, 0x918D, 0x9191, 0x91A2, - 0x91A3, 0x91AA, 0x91AD, 0x91AE, 0x91AF, 0x91B5, 0x91B4, 0x91BA, - 0x8C55, 0x9E7E, 0x8DB8, 0x8DEB, 0x8E05, 0x8E59, 0x8E69, 0x8DB5, - 0x8DBF, 0x8DBC, 0x8DBA, 0x8DC4, 0x8DD6, 0x8DD7, 0x8DDA, 0x8DDE, -plane 32 -at 0x00 - 0x8DCE, 0x8DCF, 0x8DDB, 0x8DC6, 0x8DEC, 0x8DF7, 0x8DF8, 0x8DE3, - 0x8DF9, 0x8DFB, 0x8DE4, 0x8E09, 0x8DFD, 0x8E14, 0x8E1D, 0x8E1F, - 0x8E2C, 0x8E2E, 0x8E23, 0x8E2F, 0x8E3A, 0x8E40, 0x8E39, 0x8E35, - 0x8E3D, 0x8E31, 0x8E49, 0x8E41, 0x8E42, 0x8E51, 0x8E52, 0x8E4A, - 0x8E70, 0x8E76, 0x8E7C, 0x8E6F, 0x8E74, 0x8E85, 0x8E8F, 0x8E94, - 0x8E90, 0x8E9C, 0x8E9E, 0x8C78, 0x8C82, 0x8C8A, 0x8C85, 0x8C98, - 0x8C94, 0x659B, 0x89D6, 0x89DE, 0x89DA, 0x89DC, 0x89E5, 0x89EB, - 0x89EF, 0x8A3E, 0x8B26, 0x9753, 0x96E9, 0x96F3, 0x96EF, 0x9706, - 0x9701, 0x9708, 0x970F, 0x970E, 0x972A, 0x972D, 0x9730, 0x973E, - 0x9F80, 0x9F83, 0x9F85, 0x9F86, 0x9F87, 0x9F88, 0x9F89, 0x9F8A, - 0x9F8C, 0x9EFE, 0x9F0B, 0x9F0D, 0x96B9, 0x96BC, 0x96BD, 0x96CE, - 0x96D2, 0x77BF, 0x96E0, 0x928E, 0x92AE, 0x92C8, 0x933E, 0x936A, - 0x93CA, 0x938F, 0x943E, 0x946B, 0x9C7F, 0x9C82, 0x9C85, 0x9C86, - 0x9C87, 0x9C88, 0x7A23, 0x9C8B, 0x9C8E, 0x9C90, 0x9C91, 0x9C92, - 0x9C94, 0x9C95, 0x9C9A, 0x9C9B, 0x9C9E, 0x9C9F, 0x9CA0, 0x9CA1, - 0x9CA2, 0x9CA3, 0x9CA5, 0x9CA6, 0x9CA7, 0x9CA8, 0x9CA9, 0x9CAB, - 0x9CAD, 0x9CAE, 0x9CB0, 0x9CB1, 0x9CB2, 0x9CB3, 0x9CB4, 0x9CB5, - 0x9CB6, 0x9CB7, 0x9CBA, 0x9CBB, 0x9CBC, 0x9CBD, 0x9CC4, 0x9CC5, - 0x9CC6, 0x9CC7, 0x9CCA, 0x9CCB, 0x9CCC, 0x9CCD, 0x9CCE, 0x9CCF, - 0x9CD0, 0x9CD3, 0x9CD4, 0x9CD5, 0x9CD7, 0x9CD8, 0x9CD9, 0x9CDC, - 0x9CDD, 0x9CDF, 0x9CE2, 0x977C, 0x9785, 0x9791, 0x9792, 0x9794, - 0x97AF, 0x97AB, 0x97A3, 0x97B2, 0x97B4, 0x9AB1, 0x9AB0, 0x9AB7, - 0x9E58, 0x9AB6, 0x9ABA, 0x9ABC, 0x9AC1, 0x9AC0, 0x9AC5, 0x9AC2, - 0x9ACB, 0x9ACC, 0x9AD1, 0x9B45, 0x9B43, 0x9B47, 0x9B49, 0x9B48, - 0x9B4D, 0x9B51, 0x98E8, 0x990D, 0x992E, 0x9955, 0x9954, 0x9ADF, - 0x9AE1, 0x9AE6, 0x9AEF, 0x9AEB, 0x9AFB, 0x9AED, 0x9AF9, 0x9B08, - 0x9B0F, 0x9B13, 0x9B1F, 0x9B23, 0x9EBD, 0x9EBE, 0x7E3B, 0x9E82, - 0x9E87, 0x9E88, 0x9E8B, 0x9E92, 0x93D6, 0x9E9D, 0x9E9F, 0x9EDB, - 0x9EDC, 0x9EDD, 0x9EE0, 0x9EDF, 0x9EE2, 0x9EE9, 0x9EE7, 0x9EE5, - 0x9EEA, 0x9EEF, 0x9F22, 0x9F2C, 0x9F2F, 0x9F39, 0x9F37, 0x9F3D, - 0x9F3E, 0x9F44, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 33 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 34 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 35 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - -# # diff --git a/Build/source/texk/ttf2pt1/chinese/cugbk.map b/Build/source/texk/ttf2pt1/chinese/cugbk.map deleted file mode 100644 index 34889ff5cdf..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/cugbk.map +++ /dev/null @@ -1,3185 +0,0 @@ -# -# For Creating Unicode GBK encoding Chinese Type1 -# compact CJK fonts. -# -plane 01 -at 0x00 - 0x4E02, 0x4E04, 0x4E05, 0x4E06, 0x4E0F, 0x4E12, 0x4E17, 0x4E1F, - 0x4E20, 0x4E21, 0x4E23, 0x4E26, 0x4E29, 0x4E2E, 0x4E2F, 0x4E31, - 0x4E33, 0x4E35, 0x4E37, 0x4E3C, 0x4E40, 0x4E41, 0x4E42, 0x4E44, - 0x4E46, 0x4E4A, 0x4E51, 0x4E55, 0x4E57, 0x4E5A, 0x4E5B, 0x4E62, - 0x4E63, 0x4E64, 0x4E65, 0x4E67, 0x4E68, 0x4E6A, 0x4E6B, 0x4E6C, - 0x4E6D, 0x4E6E, 0x4E6F, 0x4E72, 0x4E74, 0x4E75, 0x4E76, 0x4E77, - 0x4E78, 0x4E79, 0x4E7A, 0x4E7B, 0x4E7C, 0x4E7D, 0x4E7F, 0x4E80, - 0x4E81, 0x4E82, 0x4E83, 0x4E84, 0x4E85, 0x4E87, 0x4E8A, 0x4E90, - 0x4E96, 0x4E97, 0x4E99, 0x4E9C, 0x4E9D, 0x4E9E, 0x4EA3, 0x4EAA, - 0x4EAF, 0x4EB0, 0x4EB1, 0x4EB4, 0x4EB6, 0x4EB7, 0x4EB8, 0x4EB9, - 0x4EBC, 0x4EBD, 0x4EBE, 0x4EC8, 0x4ECC, 0x4ECF, 0x4ED0, 0x4ED2, - 0x4EDA, 0x4EDB, 0x4EDC, 0x4EE0, 0x4EE2, 0x4EE6, 0x4EE7, 0x4EE9, - 0x4EED, 0x4EEE, 0x4EEF, 0x4EF1, 0x4EF4, 0x4EF8, 0x4EF9, 0x4EFA, - 0x4EFC, 0x4EFE, 0x4F00, 0x4F02, 0x4F03, 0x4F04, 0x4F05, 0x4F06, - 0x4F07, 0x4F08, 0x4F0B, 0x4F0C, 0x4F12, 0x4F13, 0x4F14, 0x4F15, - 0x4F16, 0x4F1C, 0x4F1D, 0x4F21, 0x4F23, 0x4F28, 0x4F29, 0x4F2C, - 0x4F2D, 0x4F2E, 0x4F31, 0x4F33, 0x4F35, 0x4F37, 0x4F39, 0x4F3B, - 0x4F3E, 0x4F3F, 0x4F40, 0x4F41, 0x4F42, 0x4F44, 0x4F45, 0x4F47, - 0x4F48, 0x4F49, 0x4F4A, 0x4F4B, 0x4F4C, 0x4F52, 0x4F54, 0x4F56, - 0x4F61, 0x4F62, 0x4F66, 0x4F68, 0x4F6A, 0x4F6B, 0x4F6D, 0x4F6E, - 0x4F71, 0x4F72, 0x4F75, 0x4F77, 0x4F78, 0x4F79, 0x4F7A, 0x4F7D, - 0x4F80, 0x4F81, 0x4F82, 0x4F85, 0x4F86, 0x4F87, 0x4F8A, 0x4F8C, - 0x4F8E, 0x4F90, 0x4F92, 0x4F93, 0x4F95, 0x4F96, 0x4F98, 0x4F99, - 0x4F9A, 0x4F9C, 0x4F9E, 0x4F9F, 0x4FA1, 0x4FA2, 0x4FA4, 0x4FAB, - 0x4FAD, 0x4FB0, 0x4FB1, 0x4FB2, 0x4FB3, 0x4FB4, 0x4FB6, 0x4FB7, - 0x4FB8, 0x4FB9, 0x4FBA, 0x4FBB, 0x4FBC, 0x4FBD, 0x4FBE, 0x4FC0, - 0x4FC1, 0x4FC2, 0x4FC6, 0x4FC7, 0x4FC8, 0x4FC9, 0x4FCB, 0x4FCC, - 0x4FCD, 0x4FD2, 0x4FD3, 0x4FD4, 0x4FD5, 0x4FD6, 0x4FD9, 0x4FDB, - 0x4FE0, 0x4FE2, 0x4FE4, 0x4FE5, 0x4FE7, 0x4FEB, 0x4FEC, 0x4FF0, - 0x4FF2, 0x4FF4, 0x4FF5, 0x4FF6, 0x4FF7, 0x4FF9, 0x4FFB, 0x4FFC, - 0x4FFD, 0x4FFF, 0x5000, 0x5001, 0x5002, 0x5003, 0x5004, 0x5005, - 0x5006, 0x5007, 0x5008, 0x5009, 0x500A, 0x500B, 0x500E, 0x5010, -plane 02 -at 0x00 - 0x5011, 0x5013, 0x5015, 0x5016, 0x5017, 0x501B, 0x501D, 0x501E, - 0x5020, 0x5022, 0x5023, 0x5024, 0x5027, 0x502B, 0x502F, 0x5030, - 0x5031, 0x5032, 0x5033, 0x5034, 0x5035, 0x5036, 0x5037, 0x5038, - 0x5039, 0x503B, 0x503D, 0x503F, 0x5040, 0x5041, 0x5042, 0x5044, - 0x5045, 0x5046, 0x5049, 0x504A, 0x504B, 0x504D, 0x5050, 0x5051, - 0x5052, 0x5053, 0x5054, 0x5056, 0x5057, 0x5058, 0x5059, 0x505B, - 0x505D, 0x505E, 0x505F, 0x5060, 0x5061, 0x5062, 0x5063, 0x5064, - 0x5066, 0x5067, 0x5068, 0x5069, 0x506A, 0x506B, 0x506D, 0x506E, - 0x506F, 0x5070, 0x5071, 0x5072, 0x5073, 0x5074, 0x5075, 0x5078, - 0x5079, 0x507A, 0x507C, 0x507D, 0x5081, 0x5082, 0x5083, 0x5084, - 0x5086, 0x5087, 0x5089, 0x508A, 0x508B, 0x508C, 0x508E, 0x508F, - 0x5090, 0x5091, 0x5092, 0x5093, 0x5094, 0x5095, 0x5096, 0x5097, - 0x5098, 0x5099, 0x509A, 0x509B, 0x509C, 0x509D, 0x509E, 0x509F, - 0x50A0, 0x50A1, 0x50A2, 0x50A4, 0x50A6, 0x50AA, 0x50AB, 0x50AD, - 0x50AE, 0x50AF, 0x50B0, 0x50B1, 0x50B3, 0x50B4, 0x50B5, 0x50B6, - 0x50B7, 0x50B8, 0x50B9, 0x50BC, 0x50BD, 0x50BE, 0x50BF, 0x50C0, - 0x50C1, 0x50C2, 0x50C3, 0x50C4, 0x50C5, 0x50C6, 0x50C7, 0x50C8, - 0x50C9, 0x50CA, 0x50CB, 0x50CC, 0x50CD, 0x50CE, 0x50D0, 0x50D1, - 0x50D2, 0x50D3, 0x50D4, 0x50D5, 0x50D7, 0x50D8, 0x50D9, 0x50DB, - 0x50DC, 0x50DD, 0x50DE, 0x50DF, 0x50E0, 0x50E1, 0x50E2, 0x50E3, - 0x50E4, 0x50E5, 0x50E8, 0x50E9, 0x50EA, 0x50EB, 0x50EF, 0x50F0, - 0x50F1, 0x50F2, 0x50F4, 0x50F6, 0x50F7, 0x50F8, 0x50F9, 0x50FA, - 0x50FC, 0x50FD, 0x50FE, 0x50FF, 0x5100, 0x5101, 0x5102, 0x5103, - 0x5104, 0x5105, 0x5108, 0x5109, 0x510A, 0x510C, 0x510D, 0x510E, - 0x510F, 0x5110, 0x5111, 0x5113, 0x5114, 0x5115, 0x5116, 0x5117, - 0x5118, 0x5119, 0x511A, 0x511B, 0x511C, 0x511D, 0x511E, 0x511F, - 0x5120, 0x5122, 0x5123, 0x5124, 0x5125, 0x5126, 0x5127, 0x5128, - 0x5129, 0x512A, 0x512B, 0x512C, 0x512D, 0x512E, 0x512F, 0x5130, - 0x5131, 0x5132, 0x5133, 0x5134, 0x5135, 0x5136, 0x5137, 0x5138, - 0x5139, 0x513A, 0x513B, 0x513C, 0x513D, 0x513E, 0x5142, 0x5147, - 0x514A, 0x514C, 0x514E, 0x514F, 0x5150, 0x5152, 0x5153, 0x5157, - 0x5158, 0x5159, 0x515B, 0x515D, 0x515E, 0x515F, 0x5160, 0x5161, -plane 03 -at 0x00 - 0x5163, 0x5164, 0x5166, 0x5167, 0x5169, 0x516A, 0x516F, 0x5172, - 0x517A, 0x517E, 0x517F, 0x5183, 0x5184, 0x5186, 0x5187, 0x518A, - 0x518B, 0x518E, 0x518F, 0x5190, 0x5191, 0x5193, 0x5194, 0x5198, - 0x519A, 0x519D, 0x519E, 0x519F, 0x51A1, 0x51A3, 0x51A6, 0x51A7, - 0x51A8, 0x51A9, 0x51AA, 0x51AD, 0x51AE, 0x51B4, 0x51B8, 0x51B9, - 0x51BA, 0x51BE, 0x51BF, 0x51C1, 0x51C2, 0x51C3, 0x51C5, 0x51C8, - 0x51CA, 0x51CD, 0x51CE, 0x51D0, 0x51D2, 0x51D3, 0x51D4, 0x51D5, - 0x51D6, 0x51D7, 0x51D8, 0x51D9, 0x51DA, 0x51DC, 0x51DE, 0x51DF, - 0x51E2, 0x51E3, 0x51E5, 0x51E6, 0x51E7, 0x51E8, 0x51E9, 0x51EA, - 0x51EC, 0x51EE, 0x51F1, 0x51F2, 0x51F4, 0x51F7, 0x51FE, 0x5204, - 0x5205, 0x5209, 0x520B, 0x520C, 0x520F, 0x5210, 0x5213, 0x5214, - 0x5215, 0x521C, 0x521E, 0x521F, 0x5221, 0x5222, 0x5223, 0x5225, - 0x5226, 0x5227, 0x522A, 0x522C, 0x522F, 0x5231, 0x5232, 0x5234, - 0x5235, 0x523C, 0x523E, 0x5244, 0x5245, 0x5246, 0x5247, 0x5248, - 0x5249, 0x524B, 0x524E, 0x524F, 0x5252, 0x5253, 0x5255, 0x5257, - 0x5258, 0x5259, 0x525A, 0x525B, 0x525D, 0x525F, 0x5260, 0x5262, - 0x5263, 0x5264, 0x5266, 0x5268, 0x526B, 0x526C, 0x526D, 0x526E, - 0x5270, 0x5271, 0x5273, 0x5274, 0x5275, 0x5276, 0x5277, 0x5278, - 0x5279, 0x527A, 0x527B, 0x527C, 0x527E, 0x5280, 0x5283, 0x5284, - 0x5285, 0x5286, 0x5287, 0x5289, 0x528A, 0x528B, 0x528C, 0x528D, - 0x528E, 0x528F, 0x5291, 0x5292, 0x5294, 0x5295, 0x5296, 0x5297, - 0x5298, 0x5299, 0x529A, 0x529C, 0x52A4, 0x52A5, 0x52A6, 0x52A7, - 0x52AE, 0x52AF, 0x52B0, 0x52B4, 0x52B5, 0x52B6, 0x52B7, 0x52B8, - 0x52B9, 0x52BA, 0x52BB, 0x52BC, 0x52BD, 0x52C0, 0x52C1, 0x52C2, - 0x52C4, 0x52C5, 0x52C6, 0x52C8, 0x52CA, 0x52CC, 0x52CD, 0x52CE, - 0x52CF, 0x52D1, 0x52D3, 0x52D4, 0x52D5, 0x52D7, 0x52D9, 0x52DA, - 0x52DB, 0x52DC, 0x52DD, 0x52DE, 0x52E0, 0x52E1, 0x52E2, 0x52E3, - 0x52E5, 0x52E6, 0x52E7, 0x52E8, 0x52E9, 0x52EA, 0x52EB, 0x52EC, - 0x52ED, 0x52EE, 0x52EF, 0x52F1, 0x52F2, 0x52F3, 0x52F4, 0x52F5, - 0x52F6, 0x52F7, 0x52F8, 0x52FB, 0x52FC, 0x52FD, 0x5301, 0x5302, - 0x5303, 0x5304, 0x5307, 0x5309, 0x530A, 0x530B, 0x530C, 0x530E, - 0x5311, 0x5312, 0x5313, 0x5314, 0x5318, 0x531B, 0x531C, 0x531E, -plane 04 -at 0x00 - 0x531F, 0x5322, 0x5324, 0x5325, 0x5327, 0x5328, 0x5329, 0x532B, - 0x532C, 0x532D, 0x532F, 0x5330, 0x5331, 0x5332, 0x5333, 0x5334, - 0x5335, 0x5336, 0x5337, 0x5338, 0x533C, 0x533D, 0x5340, 0x5342, - 0x5344, 0x5346, 0x534B, 0x534C, 0x534D, 0x5350, 0x5354, 0x5358, - 0x5359, 0x535B, 0x535D, 0x5365, 0x5368, 0x536A, 0x536C, 0x536D, - 0x5372, 0x5376, 0x5379, 0x537B, 0x537C, 0x537D, 0x537E, 0x5380, - 0x5381, 0x5383, 0x5387, 0x5388, 0x538A, 0x538E, 0x538F, 0x5390, - 0x5391, 0x5392, 0x5393, 0x5394, 0x5396, 0x5397, 0x5399, 0x539B, - 0x539C, 0x539E, 0x53A0, 0x53A1, 0x53A4, 0x53A7, 0x53AA, 0x53AB, - 0x53AC, 0x53AD, 0x53AF, 0x53B0, 0x53B1, 0x53B2, 0x53B3, 0x53B4, - 0x53B5, 0x53B7, 0x53B8, 0x53B9, 0x53BA, 0x53BC, 0x53BD, 0x53BE, - 0x53C0, 0x53C3, 0x53C4, 0x53C5, 0x53C6, 0x53C7, 0x53CE, 0x53CF, - 0x53D0, 0x53D2, 0x53D3, 0x53D5, 0x53DA, 0x53DC, 0x53DD, 0x53DE, - 0x53E1, 0x53E2, 0x53E7, 0x53F4, 0x53FA, 0x53FE, 0x53FF, 0x5400, - 0x5402, 0x5405, 0x5407, 0x540B, 0x5414, 0x5418, 0x5419, 0x541A, - 0x541C, 0x5422, 0x5424, 0x5425, 0x542A, 0x5430, 0x5433, 0x5436, - 0x5437, 0x543A, 0x543D, 0x543F, 0x5441, 0x5442, 0x5444, 0x5445, - 0x5447, 0x5449, 0x544C, 0x544D, 0x544E, 0x544F, 0x5451, 0x545A, - 0x545D, 0x545E, 0x545F, 0x5460, 0x5461, 0x5463, 0x5465, 0x5467, - 0x5469, 0x546A, 0x546B, 0x546C, 0x546D, 0x546E, 0x546F, 0x5470, - 0x5474, 0x5479, 0x547A, 0x547E, 0x547F, 0x5481, 0x5483, 0x5485, - 0x5487, 0x5488, 0x5489, 0x548A, 0x548D, 0x5491, 0x5493, 0x5497, - 0x5498, 0x549C, 0x549E, 0x549F, 0x54A0, 0x54A1, 0x54A2, 0x54A5, - 0x54AE, 0x54B0, 0x54B2, 0x54B5, 0x54B6, 0x54B7, 0x54B9, 0x54BA, - 0x54BC, 0x54BE, 0x54C3, 0x54C5, 0x54CA, 0x54CB, 0x54D6, 0x54D8, - 0x54DB, 0x54E0, 0x54E1, 0x54E2, 0x54E3, 0x54E4, 0x54EB, 0x54EC, - 0x54EF, 0x54F0, 0x54F1, 0x54F4, 0x54F5, 0x54F6, 0x54F7, 0x54F8, - 0x54F9, 0x54FB, 0x54FE, 0x5500, 0x5502, 0x5503, 0x5504, 0x5505, - 0x5508, 0x550A, 0x550B, 0x550C, 0x550D, 0x550E, 0x5512, 0x5513, - 0x5515, 0x5516, 0x5517, 0x5518, 0x5519, 0x551A, 0x551C, 0x551D, - 0x551E, 0x551F, 0x5521, 0x5525, 0x5526, 0x5528, 0x5529, 0x552B, - 0x552D, 0x5532, 0x5534, 0x5535, 0x5536, 0x5538, 0x5539, 0x553A, -plane 05 -at 0x00 - 0x553B, 0x553D, 0x5540, 0x5542, 0x5545, 0x5547, 0x5548, 0x554B, - 0x554C, 0x554D, 0x554E, 0x554F, 0x5551, 0x5552, 0x5553, 0x5554, - 0x5557, 0x5558, 0x5559, 0x555A, 0x555B, 0x555D, 0x555E, 0x555F, - 0x5560, 0x5562, 0x5563, 0x5568, 0x5569, 0x556B, 0x556F, 0x5570, - 0x5571, 0x5572, 0x5573, 0x5574, 0x5579, 0x557A, 0x557D, 0x557F, - 0x5585, 0x5586, 0x558C, 0x558D, 0x558E, 0x5590, 0x5592, 0x5593, - 0x5595, 0x5596, 0x5597, 0x559A, 0x559B, 0x559E, 0x55A0, 0x55A1, - 0x55A2, 0x55A3, 0x55A4, 0x55A5, 0x55A6, 0x55A8, 0x55A9, 0x55AA, - 0x55AB, 0x55AC, 0x55AD, 0x55AE, 0x55AF, 0x55B0, 0x55B2, 0x55B4, - 0x55B6, 0x55B8, 0x55BA, 0x55BC, 0x55BF, 0x55C0, 0x55C1, 0x55C2, - 0x55C3, 0x55C6, 0x55C7, 0x55C8, 0x55CA, 0x55CB, 0x55CE, 0x55CF, - 0x55D0, 0x55D5, 0x55D7, 0x55D8, 0x55D9, 0x55DA, 0x55DB, 0x55DE, - 0x55E0, 0x55E2, 0x55E7, 0x55E9, 0x55ED, 0x55EE, 0x55F0, 0x55F1, - 0x55F4, 0x55F6, 0x55F8, 0x55F9, 0x55FA, 0x55FB, 0x55FC, 0x55FF, - 0x5602, 0x5603, 0x5604, 0x5605, 0x5606, 0x5607, 0x560A, 0x560B, - 0x560D, 0x5610, 0x5611, 0x5612, 0x5613, 0x5614, 0x5615, 0x5616, - 0x5617, 0x5619, 0x561A, 0x561C, 0x561D, 0x5620, 0x5621, 0x5622, - 0x5625, 0x5626, 0x5628, 0x5629, 0x562A, 0x562B, 0x562E, 0x562F, - 0x5630, 0x5633, 0x5635, 0x5637, 0x5638, 0x563A, 0x563C, 0x563D, - 0x563E, 0x5640, 0x5641, 0x5642, 0x5643, 0x5644, 0x5645, 0x5646, - 0x5647, 0x5648, 0x5649, 0x564A, 0x564B, 0x564F, 0x5650, 0x5651, - 0x5652, 0x5653, 0x5655, 0x5656, 0x565A, 0x565B, 0x565D, 0x565E, - 0x565F, 0x5660, 0x5661, 0x5663, 0x5665, 0x5666, 0x5667, 0x566D, - 0x566E, 0x566F, 0x5670, 0x5672, 0x5673, 0x5674, 0x5675, 0x5677, - 0x5678, 0x5679, 0x567A, 0x567D, 0x567E, 0x567F, 0x5680, 0x5681, - 0x5682, 0x5683, 0x5684, 0x5687, 0x5688, 0x5689, 0x568A, 0x568B, - 0x568C, 0x568D, 0x5690, 0x5691, 0x5692, 0x5694, 0x5695, 0x5696, - 0x5697, 0x5698, 0x5699, 0x569A, 0x569B, 0x569C, 0x569D, 0x569E, - 0x569F, 0x56A0, 0x56A1, 0x56A2, 0x56A4, 0x56A5, 0x56A6, 0x56A7, - 0x56A8, 0x56A9, 0x56AA, 0x56AB, 0x56AC, 0x56AD, 0x56AE, 0x56B0, - 0x56B1, 0x56B2, 0x56B3, 0x56B4, 0x56B5, 0x56B6, 0x56B8, 0x56B9, - 0x56BA, 0x56BB, 0x56BD, 0x56BE, 0x56BF, 0x56C0, 0x56C1, 0x56C2, -plane 06 -at 0x00 - 0x56C3, 0x56C4, 0x56C5, 0x56C6, 0x56C7, 0x56C8, 0x56C9, 0x56CB, - 0x56CC, 0x56CD, 0x56CE, 0x56CF, 0x56D0, 0x56D1, 0x56D2, 0x56D3, - 0x56D5, 0x56D6, 0x56D8, 0x56D9, 0x56DC, 0x56E3, 0x56E5, 0x56E6, - 0x56E7, 0x56E8, 0x56E9, 0x56EA, 0x56EC, 0x56EE, 0x56EF, 0x56F2, - 0x56F3, 0x56F6, 0x56F7, 0x56F8, 0x56FB, 0x56FC, 0x5700, 0x5701, - 0x5702, 0x5705, 0x5707, 0x570B, 0x570C, 0x570D, 0x570E, 0x570F, - 0x5710, 0x5711, 0x5712, 0x5713, 0x5714, 0x5715, 0x5716, 0x5717, - 0x5718, 0x5719, 0x571A, 0x571B, 0x571D, 0x571E, 0x5720, 0x5721, - 0x5722, 0x5724, 0x5725, 0x5726, 0x5727, 0x572B, 0x5731, 0x5732, - 0x5734, 0x5735, 0x5736, 0x5737, 0x5738, 0x573C, 0x573D, 0x573F, - 0x5741, 0x5743, 0x5744, 0x5745, 0x5746, 0x5748, 0x5749, 0x574B, - 0x5752, 0x5753, 0x5754, 0x5755, 0x5756, 0x5758, 0x5759, 0x5762, - 0x5763, 0x5765, 0x5767, 0x576C, 0x576E, 0x5770, 0x5771, 0x5772, - 0x5774, 0x5775, 0x5778, 0x5779, 0x577A, 0x577D, 0x577E, 0x577F, - 0x5780, 0x5781, 0x5787, 0x5788, 0x5789, 0x578A, 0x578D, 0x578E, - 0x578F, 0x5790, 0x5791, 0x5794, 0x5795, 0x5796, 0x5797, 0x5798, - 0x5799, 0x579A, 0x579C, 0x579D, 0x579E, 0x579F, 0x57A5, 0x57A8, - 0x57AA, 0x57AC, 0x57AF, 0x57B0, 0x57B1, 0x57B3, 0x57B5, 0x57B6, - 0x57B7, 0x57B9, 0x57BA, 0x57BB, 0x57BC, 0x57BD, 0x57BE, 0x57BF, - 0x57C0, 0x57C1, 0x57C4, 0x57C5, 0x57C6, 0x57C7, 0x57C8, 0x57C9, - 0x57CA, 0x57CC, 0x57CD, 0x57D0, 0x57D1, 0x57D3, 0x57D6, 0x57D7, - 0x57DB, 0x57DC, 0x57DE, 0x57E1, 0x57E2, 0x57E3, 0x57E5, 0x57E6, - 0x57E7, 0x57E8, 0x57E9, 0x57EA, 0x57EB, 0x57EC, 0x57EE, 0x57F0, - 0x57F1, 0x57F2, 0x57F3, 0x57F5, 0x57F6, 0x57F7, 0x57FB, 0x57FC, - 0x57FE, 0x57FF, 0x5801, 0x5803, 0x5804, 0x5805, 0x5808, 0x5809, - 0x580A, 0x580C, 0x580E, 0x580F, 0x5810, 0x5812, 0x5813, 0x5814, - 0x5816, 0x5817, 0x5818, 0x581A, 0x581B, 0x581C, 0x581D, 0x581F, - 0x5822, 0x5823, 0x5825, 0x5826, 0x5827, 0x5828, 0x5829, 0x582B, - 0x582C, 0x582D, 0x582E, 0x582F, 0x5831, 0x5832, 0x5833, 0x5834, - 0x5836, 0x5837, 0x5838, 0x5839, 0x583A, 0x583B, 0x583C, 0x583D, - 0x583E, 0x583F, 0x5840, 0x5841, 0x5842, 0x5843, 0x5845, 0x5846, - 0x5847, 0x5848, 0x5849, 0x584A, 0x584B, 0x584E, 0x584F, 0x5850, -plane 07 -at 0x00 - 0x5852, 0x5853, 0x5855, 0x5856, 0x5857, 0x5859, 0x585A, 0x585B, - 0x585C, 0x585D, 0x585F, 0x5860, 0x5861, 0x5862, 0x5863, 0x5864, - 0x5866, 0x5867, 0x5868, 0x5869, 0x586A, 0x586D, 0x586E, 0x586F, - 0x5870, 0x5871, 0x5872, 0x5873, 0x5874, 0x5875, 0x5876, 0x5877, - 0x5878, 0x5879, 0x587A, 0x587B, 0x587C, 0x587D, 0x587F, 0x5882, - 0x5884, 0x5886, 0x5887, 0x5888, 0x588A, 0x588B, 0x588C, 0x588D, - 0x588E, 0x588F, 0x5890, 0x5891, 0x5894, 0x5895, 0x5896, 0x5897, - 0x5898, 0x589B, 0x589C, 0x589D, 0x58A0, 0x58A1, 0x58A2, 0x58A3, - 0x58A4, 0x58A5, 0x58A6, 0x58A7, 0x58AA, 0x58AB, 0x58AC, 0x58AD, - 0x58AE, 0x58AF, 0x58B0, 0x58B1, 0x58B2, 0x58B3, 0x58B4, 0x58B5, - 0x58B6, 0x58B7, 0x58B8, 0x58B9, 0x58BA, 0x58BB, 0x58BD, 0x58BE, - 0x58BF, 0x58C0, 0x58C2, 0x58C3, 0x58C4, 0x58C6, 0x58C7, 0x58C8, - 0x58C9, 0x58CA, 0x58CB, 0x58CC, 0x58CD, 0x58CE, 0x58CF, 0x58D0, - 0x58D2, 0x58D3, 0x58D4, 0x58D6, 0x58D7, 0x58D8, 0x58D9, 0x58DA, - 0x58DB, 0x58DC, 0x58DD, 0x58DE, 0x58DF, 0x58E0, 0x58E1, 0x58E2, - 0x58E3, 0x58E5, 0x58E6, 0x58E7, 0x58E8, 0x58E9, 0x58EA, 0x58ED, - 0x58EF, 0x58F1, 0x58F2, 0x58F4, 0x58F5, 0x58F7, 0x58F8, 0x58FA, - 0x58FB, 0x58FC, 0x58FD, 0x58FE, 0x58FF, 0x5900, 0x5901, 0x5903, - 0x5905, 0x5906, 0x5908, 0x5909, 0x590A, 0x590B, 0x590C, 0x590E, - 0x5910, 0x5911, 0x5912, 0x5913, 0x5917, 0x5918, 0x591B, 0x591D, - 0x591E, 0x5920, 0x5921, 0x5922, 0x5923, 0x5926, 0x5928, 0x592C, - 0x5930, 0x5932, 0x5933, 0x5935, 0x5936, 0x593B, 0x593D, 0x593E, - 0x593F, 0x5940, 0x5943, 0x5945, 0x5946, 0x594A, 0x594C, 0x594D, - 0x5950, 0x5952, 0x5953, 0x5959, 0x595B, 0x595C, 0x595D, 0x595E, - 0x595F, 0x5961, 0x5963, 0x5964, 0x5966, 0x5967, 0x5968, 0x5969, - 0x596A, 0x596B, 0x596C, 0x596D, 0x596E, 0x596F, 0x5970, 0x5971, - 0x5972, 0x5975, 0x5977, 0x597A, 0x597B, 0x597C, 0x597E, 0x597F, - 0x5980, 0x5985, 0x5989, 0x598B, 0x598C, 0x598E, 0x598F, 0x5990, - 0x5991, 0x5994, 0x5995, 0x5998, 0x599A, 0x599B, 0x599C, 0x599D, - 0x599F, 0x59A0, 0x59A1, 0x59A2, 0x59A6, 0x59A7, 0x59AC, 0x59AD, - 0x59B0, 0x59B1, 0x59B3, 0x59B4, 0x59B5, 0x59B6, 0x59B7, 0x59B8, - 0x59BA, 0x59BC, 0x59BD, 0x59BF, 0x59C0, 0x59C1, 0x59C2, 0x59C3, -plane 08 -at 0x00 - 0x59C4, 0x59C5, 0x59C7, 0x59C8, 0x59C9, 0x59CC, 0x59CD, 0x59CE, - 0x59CF, 0x59D5, 0x59D6, 0x59D9, 0x59DB, 0x59DE, 0x59DF, 0x59E0, - 0x59E1, 0x59E2, 0x59E4, 0x59E6, 0x59E7, 0x59E9, 0x59EA, 0x59EB, - 0x59ED, 0x59EE, 0x59EF, 0x59F0, 0x59F1, 0x59F2, 0x59F3, 0x59F4, - 0x59F5, 0x59F6, 0x59F7, 0x59F8, 0x59FA, 0x59FC, 0x59FD, 0x59FE, - 0x5A00, 0x5A02, 0x5A0A, 0x5A0B, 0x5A0D, 0x5A0E, 0x5A0F, 0x5A10, - 0x5A12, 0x5A14, 0x5A15, 0x5A16, 0x5A17, 0x5A19, 0x5A1A, 0x5A1B, - 0x5A1D, 0x5A1E, 0x5A21, 0x5A22, 0x5A24, 0x5A26, 0x5A27, 0x5A28, - 0x5A2A, 0x5A2B, 0x5A2C, 0x5A2D, 0x5A2E, 0x5A2F, 0x5A30, 0x5A33, - 0x5A35, 0x5A37, 0x5A38, 0x5A39, 0x5A3A, 0x5A3B, 0x5A3D, 0x5A3E, - 0x5A3F, 0x5A41, 0x5A42, 0x5A43, 0x5A44, 0x5A45, 0x5A47, 0x5A48, - 0x5A4B, 0x5A4C, 0x5A4D, 0x5A4E, 0x5A4F, 0x5A50, 0x5A51, 0x5A52, - 0x5A53, 0x5A54, 0x5A56, 0x5A57, 0x5A58, 0x5A59, 0x5A5B, 0x5A5C, - 0x5A5D, 0x5A5E, 0x5A5F, 0x5A60, 0x5A61, 0x5A63, 0x5A64, 0x5A65, - 0x5A66, 0x5A68, 0x5A69, 0x5A6B, 0x5A6C, 0x5A6D, 0x5A6E, 0x5A6F, - 0x5A70, 0x5A71, 0x5A72, 0x5A73, 0x5A78, 0x5A79, 0x5A7B, 0x5A7C, - 0x5A7D, 0x5A7E, 0x5A80, 0x5A81, 0x5A82, 0x5A83, 0x5A84, 0x5A85, - 0x5A86, 0x5A87, 0x5A88, 0x5A89, 0x5A8A, 0x5A8B, 0x5A8C, 0x5A8D, - 0x5A8E, 0x5A8F, 0x5A90, 0x5A91, 0x5A93, 0x5A94, 0x5A95, 0x5A96, - 0x5A97, 0x5A98, 0x5A99, 0x5A9C, 0x5A9D, 0x5A9E, 0x5A9F, 0x5AA0, - 0x5AA1, 0x5AA2, 0x5AA3, 0x5AA4, 0x5AA5, 0x5AA6, 0x5AA7, 0x5AA8, - 0x5AA9, 0x5AAB, 0x5AAC, 0x5AAD, 0x5AAE, 0x5AAF, 0x5AB0, 0x5AB1, - 0x5AB4, 0x5AB6, 0x5AB7, 0x5AB9, 0x5ABA, 0x5ABB, 0x5ABC, 0x5ABD, - 0x5ABF, 0x5AC0, 0x5AC3, 0x5AC4, 0x5AC5, 0x5AC6, 0x5AC7, 0x5AC8, - 0x5ACA, 0x5ACB, 0x5ACD, 0x5ACE, 0x5ACF, 0x5AD0, 0x5AD1, 0x5AD3, - 0x5AD5, 0x5AD7, 0x5AD9, 0x5ADA, 0x5ADB, 0x5ADD, 0x5ADE, 0x5ADF, - 0x5AE2, 0x5AE4, 0x5AE5, 0x5AE7, 0x5AE8, 0x5AEA, 0x5AEC, 0x5AED, - 0x5AEE, 0x5AEF, 0x5AF0, 0x5AF2, 0x5AF3, 0x5AF4, 0x5AF5, 0x5AF6, - 0x5AF7, 0x5AF8, 0x5AF9, 0x5AFA, 0x5AFB, 0x5AFC, 0x5AFD, 0x5AFE, - 0x5AFF, 0x5B00, 0x5B01, 0x5B02, 0x5B03, 0x5B04, 0x5B05, 0x5B06, - 0x5B07, 0x5B08, 0x5B0A, 0x5B0B, 0x5B0C, 0x5B0D, 0x5B0E, 0x5B0F, - 0x5B10, 0x5B11, 0x5B12, 0x5B13, 0x5B14, 0x5B15, 0x5B18, 0x5B19, -plane 09 -at 0x00 - 0x5B1A, 0x5B1B, 0x5B1C, 0x5B1D, 0x5B1E, 0x5B1F, 0x5B20, 0x5B21, - 0x5B22, 0x5B23, 0x5B24, 0x5B25, 0x5B26, 0x5B27, 0x5B28, 0x5B29, - 0x5B2A, 0x5B2B, 0x5B2C, 0x5B2D, 0x5B2E, 0x5B2F, 0x5B30, 0x5B31, - 0x5B33, 0x5B35, 0x5B36, 0x5B38, 0x5B39, 0x5B3A, 0x5B3B, 0x5B3C, - 0x5B3D, 0x5B3E, 0x5B3F, 0x5B41, 0x5B42, 0x5B43, 0x5B44, 0x5B45, - 0x5B46, 0x5B47, 0x5B48, 0x5B49, 0x5B4A, 0x5B4B, 0x5B4C, 0x5B4D, - 0x5B4E, 0x5B4F, 0x5B52, 0x5B56, 0x5B5E, 0x5B60, 0x5B61, 0x5B67, - 0x5B68, 0x5B6B, 0x5B6D, 0x5B6E, 0x5B6F, 0x5B72, 0x5B74, 0x5B76, - 0x5B77, 0x5B78, 0x5B79, 0x5B7B, 0x5B7C, 0x5B7E, 0x5B7F, 0x5B82, - 0x5B86, 0x5B8A, 0x5B8D, 0x5B8E, 0x5B90, 0x5B91, 0x5B92, 0x5B94, - 0x5B96, 0x5B9F, 0x5BA7, 0x5BA8, 0x5BA9, 0x5BAC, 0x5BAD, 0x5BAE, - 0x5BAF, 0x5BB1, 0x5BB2, 0x5BB7, 0x5BBA, 0x5BBB, 0x5BBC, 0x5BC0, - 0x5BC1, 0x5BC3, 0x5BC8, 0x5BC9, 0x5BCA, 0x5BCB, 0x5BCD, 0x5BCE, - 0x5BCF, 0x5BD1, 0x5BD4, 0x5BD5, 0x5BD6, 0x5BD7, 0x5BD8, 0x5BD9, - 0x5BDA, 0x5BDB, 0x5BDC, 0x5BE0, 0x5BE2, 0x5BE3, 0x5BE6, 0x5BE7, - 0x5BE9, 0x5BEA, 0x5BEB, 0x5BEC, 0x5BED, 0x5BEF, 0x5BF1, 0x5BF2, - 0x5BF3, 0x5BF4, 0x5BF5, 0x5BF6, 0x5BF7, 0x5BFD, 0x5BFE, 0x5C00, - 0x5C02, 0x5C03, 0x5C05, 0x5C07, 0x5C08, 0x5C0B, 0x5C0C, 0x5C0D, - 0x5C0E, 0x5C10, 0x5C12, 0x5C13, 0x5C17, 0x5C19, 0x5C1B, 0x5C1E, - 0x5C1F, 0x5C20, 0x5C21, 0x5C23, 0x5C26, 0x5C28, 0x5C29, 0x5C2A, - 0x5C2B, 0x5C2D, 0x5C2E, 0x5C2F, 0x5C30, 0x5C32, 0x5C33, 0x5C35, - 0x5C36, 0x5C37, 0x5C43, 0x5C44, 0x5C46, 0x5C47, 0x5C4C, 0x5C4D, - 0x5C52, 0x5C53, 0x5C54, 0x5C56, 0x5C57, 0x5C58, 0x5C5A, 0x5C5B, - 0x5C5C, 0x5C5D, 0x5C5F, 0x5C62, 0x5C64, 0x5C67, 0x5C68, 0x5C69, - 0x5C6A, 0x5C6B, 0x5C6C, 0x5C6D, 0x5C70, 0x5C72, 0x5C73, 0x5C74, - 0x5C75, 0x5C76, 0x5C77, 0x5C78, 0x5C7B, 0x5C7C, 0x5C7D, 0x5C7E, - 0x5C80, 0x5C83, 0x5C84, 0x5C85, 0x5C86, 0x5C87, 0x5C89, 0x5C8A, - 0x5C8B, 0x5C8E, 0x5C8F, 0x5C92, 0x5C93, 0x5C95, 0x5C9D, 0x5C9E, - 0x5C9F, 0x5CA0, 0x5CA1, 0x5CA4, 0x5CA5, 0x5CA6, 0x5CA7, 0x5CA8, - 0x5CAA, 0x5CAE, 0x5CAF, 0x5CB0, 0x5CB2, 0x5CB4, 0x5CB6, 0x5CB9, - 0x5CBA, 0x5CBB, 0x5CBC, 0x5CBE, 0x5CC0, 0x5CC2, 0x5CC3, 0x5CC5, - 0x5CC6, 0x5CC7, 0x5CC8, 0x5CC9, 0x5CCA, 0x5CCC, 0x5CCD, 0x5CCE, -plane 10 -at 0x00 - 0x5CCF, 0x5CD0, 0x5CD1, 0x5CD3, 0x5CD4, 0x5CD5, 0x5CD6, 0x5CD7, - 0x5CD8, 0x5CDA, 0x5CDB, 0x5CDC, 0x5CDD, 0x5CDE, 0x5CDF, 0x5CE0, - 0x5CE2, 0x5CE3, 0x5CE7, 0x5CE9, 0x5CEB, 0x5CEC, 0x5CEE, 0x5CEF, - 0x5CF1, 0x5CF2, 0x5CF3, 0x5CF4, 0x5CF5, 0x5CF6, 0x5CF7, 0x5CF8, - 0x5CF9, 0x5CFA, 0x5CFC, 0x5CFD, 0x5CFE, 0x5CFF, 0x5D00, 0x5D01, - 0x5D04, 0x5D05, 0x5D08, 0x5D09, 0x5D0A, 0x5D0B, 0x5D0C, 0x5D0D, - 0x5D0F, 0x5D10, 0x5D11, 0x5D12, 0x5D13, 0x5D15, 0x5D17, 0x5D18, - 0x5D19, 0x5D1A, 0x5D1C, 0x5D1D, 0x5D1F, 0x5D20, 0x5D21, 0x5D22, - 0x5D23, 0x5D25, 0x5D28, 0x5D2A, 0x5D2B, 0x5D2C, 0x5D2F, 0x5D30, - 0x5D31, 0x5D32, 0x5D33, 0x5D35, 0x5D36, 0x5D37, 0x5D38, 0x5D39, - 0x5D3A, 0x5D3B, 0x5D3C, 0x5D3F, 0x5D40, 0x5D41, 0x5D42, 0x5D43, - 0x5D44, 0x5D45, 0x5D46, 0x5D48, 0x5D49, 0x5D4D, 0x5D4E, 0x5D4F, - 0x5D50, 0x5D51, 0x5D52, 0x5D53, 0x5D54, 0x5D55, 0x5D56, 0x5D57, - 0x5D59, 0x5D5A, 0x5D5C, 0x5D5E, 0x5D5F, 0x5D60, 0x5D61, 0x5D62, - 0x5D63, 0x5D64, 0x5D65, 0x5D66, 0x5D67, 0x5D68, 0x5D6A, 0x5D6D, - 0x5D6E, 0x5D70, 0x5D71, 0x5D72, 0x5D73, 0x5D75, 0x5D76, 0x5D77, - 0x5D78, 0x5D79, 0x5D7A, 0x5D7B, 0x5D7C, 0x5D7D, 0x5D7E, 0x5D7F, - 0x5D80, 0x5D81, 0x5D83, 0x5D84, 0x5D85, 0x5D86, 0x5D87, 0x5D88, - 0x5D89, 0x5D8A, 0x5D8B, 0x5D8C, 0x5D8D, 0x5D8E, 0x5D8F, 0x5D90, - 0x5D91, 0x5D92, 0x5D93, 0x5D94, 0x5D95, 0x5D96, 0x5D97, 0x5D98, - 0x5D9A, 0x5D9B, 0x5D9C, 0x5D9E, 0x5D9F, 0x5DA0, 0x5DA1, 0x5DA2, - 0x5DA3, 0x5DA4, 0x5DA5, 0x5DA6, 0x5DA7, 0x5DA8, 0x5DA9, 0x5DAA, - 0x5DAB, 0x5DAC, 0x5DAD, 0x5DAE, 0x5DAF, 0x5DB0, 0x5DB1, 0x5DB2, - 0x5DB3, 0x5DB4, 0x5DB5, 0x5DB6, 0x5DB8, 0x5DB9, 0x5DBA, 0x5DBB, - 0x5DBC, 0x5DBD, 0x5DBE, 0x5DBF, 0x5DC0, 0x5DC1, 0x5DC2, 0x5DC3, - 0x5DC4, 0x5DC6, 0x5DC7, 0x5DC8, 0x5DC9, 0x5DCA, 0x5DCB, 0x5DCC, - 0x5DCE, 0x5DCF, 0x5DD0, 0x5DD1, 0x5DD2, 0x5DD3, 0x5DD4, 0x5DD5, - 0x5DD6, 0x5DD7, 0x5DD8, 0x5DD9, 0x5DDA, 0x5DDC, 0x5DDF, 0x5DE0, - 0x5DE3, 0x5DE4, 0x5DEA, 0x5DEC, 0x5DED, 0x5DF0, 0x5DF5, 0x5DF6, - 0x5DF8, 0x5DF9, 0x5DFA, 0x5DFB, 0x5DFC, 0x5DFF, 0x5E00, 0x5E04, - 0x5E07, 0x5E09, 0x5E0A, 0x5E0B, 0x5E0D, 0x5E0E, 0x5E12, 0x5E13, - 0x5E17, 0x5E1E, 0x5E1F, 0x5E20, 0x5E21, 0x5E22, 0x5E23, 0x5E24, -plane 11 -at 0x00 - 0x5E25, 0x5E28, 0x5E29, 0x5E2A, 0x5E2B, 0x5E2C, 0x5E2F, 0x5E30, - 0x5E32, 0x5E33, 0x5E34, 0x5E35, 0x5E36, 0x5E39, 0x5E3A, 0x5E3E, - 0x5E3F, 0x5E40, 0x5E41, 0x5E43, 0x5E46, 0x5E47, 0x5E48, 0x5E49, - 0x5E4A, 0x5E4B, 0x5E4D, 0x5E4E, 0x5E4F, 0x5E50, 0x5E51, 0x5E52, - 0x5E53, 0x5E56, 0x5E57, 0x5E58, 0x5E59, 0x5E5A, 0x5E5C, 0x5E5D, - 0x5E5F, 0x5E60, 0x5E63, 0x5E64, 0x5E65, 0x5E66, 0x5E67, 0x5E68, - 0x5E69, 0x5E6A, 0x5E6B, 0x5E6C, 0x5E6D, 0x5E6E, 0x5E6F, 0x5E70, - 0x5E71, 0x5E75, 0x5E77, 0x5E79, 0x5E7E, 0x5E81, 0x5E82, 0x5E83, - 0x5E85, 0x5E88, 0x5E89, 0x5E8C, 0x5E8D, 0x5E8E, 0x5E92, 0x5E98, - 0x5E9B, 0x5E9D, 0x5EA1, 0x5EA2, 0x5EA3, 0x5EA4, 0x5EA8, 0x5EA9, - 0x5EAA, 0x5EAB, 0x5EAC, 0x5EAE, 0x5EAF, 0x5EB0, 0x5EB1, 0x5EB2, - 0x5EB4, 0x5EBA, 0x5EBB, 0x5EBC, 0x5EBD, 0x5EBF, 0x5EC0, 0x5EC1, - 0x5EC2, 0x5EC3, 0x5EC4, 0x5EC5, 0x5EC6, 0x5EC7, 0x5EC8, 0x5ECB, - 0x5ECC, 0x5ECD, 0x5ECE, 0x5ECF, 0x5ED0, 0x5ED4, 0x5ED5, 0x5ED7, - 0x5ED8, 0x5ED9, 0x5EDA, 0x5EDC, 0x5EDD, 0x5EDE, 0x5EDF, 0x5EE0, - 0x5EE1, 0x5EE2, 0x5EE3, 0x5EE4, 0x5EE5, 0x5EE6, 0x5EE7, 0x5EE9, - 0x5EEB, 0x5EEC, 0x5EED, 0x5EEE, 0x5EEF, 0x5EF0, 0x5EF1, 0x5EF2, - 0x5EF3, 0x5EF5, 0x5EF8, 0x5EF9, 0x5EFB, 0x5EFC, 0x5EFD, 0x5F05, - 0x5F06, 0x5F07, 0x5F09, 0x5F0C, 0x5F0D, 0x5F0E, 0x5F10, 0x5F12, - 0x5F14, 0x5F16, 0x5F19, 0x5F1A, 0x5F1C, 0x5F1D, 0x5F1E, 0x5F21, - 0x5F22, 0x5F23, 0x5F24, 0x5F28, 0x5F2B, 0x5F2C, 0x5F2E, 0x5F30, - 0x5F32, 0x5F33, 0x5F34, 0x5F35, 0x5F36, 0x5F37, 0x5F38, 0x5F3B, - 0x5F3D, 0x5F3E, 0x5F3F, 0x5F41, 0x5F42, 0x5F43, 0x5F44, 0x5F45, - 0x5F46, 0x5F47, 0x5F48, 0x5F49, 0x5F4A, 0x5F4B, 0x5F4C, 0x5F4D, - 0x5F4E, 0x5F4F, 0x5F51, 0x5F54, 0x5F59, 0x5F5A, 0x5F5B, 0x5F5C, - 0x5F5E, 0x5F5F, 0x5F60, 0x5F63, 0x5F65, 0x5F67, 0x5F68, 0x5F6B, - 0x5F6E, 0x5F6F, 0x5F72, 0x5F74, 0x5F75, 0x5F76, 0x5F78, 0x5F7A, - 0x5F7D, 0x5F7E, 0x5F7F, 0x5F83, 0x5F86, 0x5F8D, 0x5F8E, 0x5F8F, - 0x5F91, 0x5F93, 0x5F94, 0x5F96, 0x5F9A, 0x5F9B, 0x5F9D, 0x5F9E, - 0x5F9F, 0x5FA0, 0x5FA2, 0x5FA3, 0x5FA4, 0x5FA5, 0x5FA6, 0x5FA7, - 0x5FA9, 0x5FAB, 0x5FAC, 0x5FAF, 0x5FB0, 0x5FB1, 0x5FB2, 0x5FB3, - 0x5FB4, 0x5FB6, 0x5FB8, 0x5FB9, 0x5FBA, 0x5FBB, 0x5FBE, 0x5FBF, -plane 12 -at 0x00 - 0x5FC0, 0x5FC1, 0x5FC2, 0x5FC7, 0x5FC8, 0x5FCA, 0x5FCB, 0x5FCE, - 0x5FD3, 0x5FD4, 0x5FD5, 0x5FDA, 0x5FDB, 0x5FDC, 0x5FDE, 0x5FDF, - 0x5FE2, 0x5FE3, 0x5FE5, 0x5FE6, 0x5FE8, 0x5FE9, 0x5FEC, 0x5FEF, - 0x5FF0, 0x5FF2, 0x5FF3, 0x5FF4, 0x5FF6, 0x5FF7, 0x5FF9, 0x5FFA, - 0x5FFC, 0x6007, 0x6008, 0x6009, 0x600B, 0x600C, 0x6010, 0x6011, - 0x6013, 0x6017, 0x6018, 0x601A, 0x601E, 0x601F, 0x6022, 0x6023, - 0x6024, 0x602C, 0x602D, 0x602E, 0x6030, 0x6031, 0x6032, 0x6033, - 0x6034, 0x6036, 0x6037, 0x6038, 0x6039, 0x603A, 0x603D, 0x603E, - 0x6040, 0x6044, 0x6045, 0x6046, 0x6047, 0x6048, 0x6049, 0x604A, - 0x604C, 0x604E, 0x604F, 0x6051, 0x6053, 0x6054, 0x6056, 0x6057, - 0x6058, 0x605B, 0x605C, 0x605E, 0x605F, 0x6060, 0x6061, 0x6065, - 0x6066, 0x606E, 0x6071, 0x6072, 0x6074, 0x6075, 0x6077, 0x607E, - 0x6080, 0x6081, 0x6082, 0x6085, 0x6086, 0x6087, 0x6088, 0x608A, - 0x608B, 0x608E, 0x608F, 0x6090, 0x6091, 0x6093, 0x6095, 0x6097, - 0x6098, 0x6099, 0x609C, 0x609E, 0x60A1, 0x60A2, 0x60A4, 0x60A5, - 0x60A7, 0x60A9, 0x60AA, 0x60AE, 0x60B0, 0x60B3, 0x60B5, 0x60B6, - 0x60B7, 0x60B9, 0x60BA, 0x60BD, 0x60BE, 0x60BF, 0x60C0, 0x60C1, - 0x60C2, 0x60C3, 0x60C4, 0x60C7, 0x60C8, 0x60C9, 0x60CC, 0x60CD, - 0x60CE, 0x60CF, 0x60D0, 0x60D2, 0x60D3, 0x60D4, 0x60D6, 0x60D7, - 0x60D9, 0x60DB, 0x60DE, 0x60E1, 0x60E2, 0x60E3, 0x60E4, 0x60E5, - 0x60EA, 0x60F1, 0x60F2, 0x60F5, 0x60F7, 0x60F8, 0x60FB, 0x60FC, - 0x60FD, 0x60FE, 0x60FF, 0x6102, 0x6103, 0x6104, 0x6105, 0x6107, - 0x610A, 0x610B, 0x610C, 0x6110, 0x6111, 0x6112, 0x6113, 0x6114, - 0x6116, 0x6117, 0x6118, 0x6119, 0x611B, 0x611C, 0x611D, 0x611E, - 0x6121, 0x6122, 0x6125, 0x6128, 0x6129, 0x612A, 0x612C, 0x612D, - 0x612E, 0x612F, 0x6130, 0x6131, 0x6132, 0x6133, 0x6134, 0x6135, - 0x6136, 0x6137, 0x6138, 0x6139, 0x613A, 0x613B, 0x613C, 0x613D, - 0x613E, 0x6140, 0x6141, 0x6142, 0x6143, 0x6144, 0x6145, 0x6146, - 0x6147, 0x6149, 0x614B, 0x614D, 0x614F, 0x6150, 0x6152, 0x6153, - 0x6154, 0x6156, 0x6157, 0x6158, 0x6159, 0x615A, 0x615B, 0x615C, - 0x615E, 0x615F, 0x6160, 0x6161, 0x6163, 0x6164, 0x6165, 0x6166, - 0x6169, 0x616A, 0x616B, 0x616C, 0x616D, 0x616E, 0x616F, 0x6171, -plane 13 -at 0x00 - 0x6172, 0x6173, 0x6174, 0x6176, 0x6178, 0x6179, 0x617A, 0x617B, - 0x617C, 0x617D, 0x617E, 0x617F, 0x6180, 0x6181, 0x6182, 0x6183, - 0x6184, 0x6185, 0x6186, 0x6187, 0x6188, 0x6189, 0x618A, 0x618C, - 0x618D, 0x618F, 0x6190, 0x6191, 0x6192, 0x6193, 0x6195, 0x6196, - 0x6197, 0x6198, 0x6199, 0x619A, 0x619B, 0x619C, 0x619E, 0x619F, - 0x61A0, 0x61A1, 0x61A2, 0x61A3, 0x61A4, 0x61A5, 0x61A6, 0x61AA, - 0x61AB, 0x61AD, 0x61AE, 0x61AF, 0x61B0, 0x61B1, 0x61B2, 0x61B3, - 0x61B4, 0x61B5, 0x61B6, 0x61B8, 0x61B9, 0x61BA, 0x61BB, 0x61BC, - 0x61BD, 0x61BF, 0x61C0, 0x61C1, 0x61C3, 0x61C4, 0x61C5, 0x61C6, - 0x61C7, 0x61C9, 0x61CC, 0x61CD, 0x61CE, 0x61CF, 0x61D0, 0x61D3, - 0x61D5, 0x61D6, 0x61D7, 0x61D8, 0x61D9, 0x61DA, 0x61DB, 0x61DC, - 0x61DD, 0x61DE, 0x61DF, 0x61E0, 0x61E1, 0x61E2, 0x61E3, 0x61E4, - 0x61E5, 0x61E7, 0x61E8, 0x61E9, 0x61EA, 0x61EB, 0x61EC, 0x61ED, - 0x61EE, 0x61EF, 0x61F0, 0x61F1, 0x61F2, 0x61F3, 0x61F4, 0x61F6, - 0x61F7, 0x61F8, 0x61F9, 0x61FA, 0x61FB, 0x61FC, 0x61FD, 0x61FE, - 0x6200, 0x6201, 0x6202, 0x6203, 0x6204, 0x6205, 0x6207, 0x6209, - 0x6213, 0x6214, 0x6219, 0x621C, 0x621D, 0x621E, 0x6220, 0x6223, - 0x6226, 0x6227, 0x6228, 0x6229, 0x622B, 0x622D, 0x622F, 0x6230, - 0x6231, 0x6232, 0x6235, 0x6236, 0x6238, 0x6239, 0x623A, 0x623B, - 0x623C, 0x6242, 0x6244, 0x6245, 0x6246, 0x624A, 0x624F, 0x6250, - 0x6255, 0x6256, 0x6257, 0x6259, 0x625A, 0x625C, 0x625D, 0x625E, - 0x625F, 0x6260, 0x6261, 0x6262, 0x6264, 0x6265, 0x6268, 0x6271, - 0x6272, 0x6274, 0x6275, 0x6277, 0x6278, 0x627A, 0x627B, 0x627D, - 0x6281, 0x6282, 0x6283, 0x6285, 0x6286, 0x6287, 0x6288, 0x628B, - 0x628C, 0x628D, 0x628E, 0x628F, 0x6290, 0x6294, 0x6299, 0x629C, - 0x629D, 0x629E, 0x62A3, 0x62A6, 0x62A7, 0x62A9, 0x62AA, 0x62AD, - 0x62AE, 0x62AF, 0x62B0, 0x62B2, 0x62B3, 0x62B4, 0x62B6, 0x62B7, - 0x62B8, 0x62BA, 0x62BE, 0x62C0, 0x62C1, 0x62C3, 0x62CB, 0x62CF, - 0x62D1, 0x62D5, 0x62DD, 0x62DE, 0x62E0, 0x62E1, 0x62E4, 0x62EA, - 0x62EB, 0x62F0, 0x62F2, 0x62F5, 0x62F8, 0x62F9, 0x62FA, 0x62FB, - 0x6300, 0x6303, 0x6304, 0x6305, 0x6306, 0x630A, 0x630B, 0x630C, - 0x630D, 0x630F, 0x6310, 0x6312, 0x6313, 0x6314, 0x6315, 0x6317, -plane 14 -at 0x00 - 0x6318, 0x6319, 0x631C, 0x6326, 0x6327, 0x6329, 0x632C, 0x632D, - 0x632E, 0x6330, 0x6331, 0x6333, 0x6334, 0x6335, 0x6336, 0x6337, - 0x6338, 0x633B, 0x633C, 0x633E, 0x633F, 0x6340, 0x6341, 0x6344, - 0x6347, 0x6348, 0x634A, 0x6351, 0x6352, 0x6353, 0x6354, 0x6356, - 0x6357, 0x6358, 0x6359, 0x635A, 0x635B, 0x635C, 0x635D, 0x6360, - 0x6364, 0x6365, 0x6366, 0x6368, 0x636A, 0x636B, 0x636C, 0x636F, - 0x6370, 0x6372, 0x6373, 0x6374, 0x6375, 0x6378, 0x6379, 0x637C, - 0x637D, 0x637E, 0x637F, 0x6381, 0x6383, 0x6384, 0x6385, 0x6386, - 0x638B, 0x638D, 0x6391, 0x6393, 0x6394, 0x6395, 0x6397, 0x6399, - 0x639A, 0x639B, 0x639C, 0x639D, 0x639E, 0x639F, 0x63A1, 0x63A4, - 0x63A6, 0x63AB, 0x63AF, 0x63B1, 0x63B2, 0x63B5, 0x63B6, 0x63B9, - 0x63BB, 0x63BD, 0x63BF, 0x63C0, 0x63C1, 0x63C2, 0x63C3, 0x63C5, - 0x63C7, 0x63C8, 0x63CA, 0x63CB, 0x63CC, 0x63D1, 0x63D3, 0x63D4, - 0x63D5, 0x63D7, 0x63D8, 0x63D9, 0x63DA, 0x63DB, 0x63DC, 0x63DD, - 0x63DF, 0x63E2, 0x63E4, 0x63E5, 0x63E6, 0x63E7, 0x63E8, 0x63EB, - 0x63EC, 0x63EE, 0x63EF, 0x63F0, 0x63F1, 0x63F3, 0x63F5, 0x63F7, - 0x63F9, 0x63FA, 0x63FB, 0x63FC, 0x63FE, 0x6403, 0x6404, 0x6406, - 0x6407, 0x6408, 0x6409, 0x640A, 0x640D, 0x640E, 0x6411, 0x6412, - 0x6415, 0x6416, 0x6417, 0x6418, 0x6419, 0x641A, 0x641D, 0x641F, - 0x6422, 0x6423, 0x6424, 0x6425, 0x6427, 0x6428, 0x6429, 0x642B, - 0x642E, 0x642F, 0x6430, 0x6431, 0x6432, 0x6433, 0x6435, 0x6436, - 0x6437, 0x6438, 0x6439, 0x643B, 0x643C, 0x643E, 0x6440, 0x6442, - 0x6443, 0x6449, 0x644B, 0x644C, 0x644D, 0x644E, 0x644F, 0x6450, - 0x6451, 0x6453, 0x6455, 0x6456, 0x6457, 0x6459, 0x645A, 0x645B, - 0x645C, 0x645D, 0x645F, 0x6460, 0x6461, 0x6462, 0x6463, 0x6464, - 0x6465, 0x6466, 0x6468, 0x646A, 0x646B, 0x646C, 0x646E, 0x646F, - 0x6470, 0x6471, 0x6472, 0x6473, 0x6474, 0x6475, 0x6476, 0x6477, - 0x647B, 0x647C, 0x647D, 0x647E, 0x647F, 0x6480, 0x6481, 0x6483, - 0x6486, 0x6488, 0x6489, 0x648A, 0x648B, 0x648C, 0x648D, 0x648E, - 0x648F, 0x6490, 0x6493, 0x6494, 0x6497, 0x6498, 0x649A, 0x649B, - 0x649C, 0x649D, 0x649F, 0x64A0, 0x64A1, 0x64A2, 0x64A3, 0x64A5, - 0x64A6, 0x64A7, 0x64A8, 0x64AA, 0x64AB, 0x64AF, 0x64B1, 0x64B2, -plane 15 -at 0x00 - 0x64B3, 0x64B4, 0x64B6, 0x64B9, 0x64BB, 0x64BD, 0x64BE, 0x64BF, - 0x64C1, 0x64C3, 0x64C4, 0x64C6, 0x64C7, 0x64C8, 0x64C9, 0x64CA, - 0x64CB, 0x64CC, 0x64CF, 0x64D1, 0x64D3, 0x64D4, 0x64D5, 0x64D6, - 0x64D9, 0x64DA, 0x64DB, 0x64DC, 0x64DD, 0x64DF, 0x64E0, 0x64E1, - 0x64E3, 0x64E5, 0x64E7, 0x64E8, 0x64E9, 0x64EA, 0x64EB, 0x64EC, - 0x64ED, 0x64EE, 0x64EF, 0x64F0, 0x64F1, 0x64F2, 0x64F3, 0x64F4, - 0x64F5, 0x64F6, 0x64F7, 0x64F8, 0x64F9, 0x64FA, 0x64FB, 0x64FC, - 0x64FD, 0x64FE, 0x64FF, 0x6501, 0x6502, 0x6503, 0x6504, 0x6505, - 0x6506, 0x6507, 0x6508, 0x650A, 0x650B, 0x650C, 0x650D, 0x650E, - 0x650F, 0x6510, 0x6511, 0x6513, 0x6514, 0x6515, 0x6516, 0x6517, - 0x6519, 0x651A, 0x651B, 0x651C, 0x651D, 0x651E, 0x651F, 0x6520, - 0x6521, 0x6522, 0x6523, 0x6524, 0x6526, 0x6527, 0x6528, 0x6529, - 0x652A, 0x652C, 0x652D, 0x6530, 0x6531, 0x6532, 0x6533, 0x6537, - 0x653A, 0x653C, 0x653D, 0x6540, 0x6541, 0x6542, 0x6543, 0x6544, - 0x6546, 0x6547, 0x654A, 0x654B, 0x654D, 0x654E, 0x6550, 0x6552, - 0x6553, 0x6554, 0x6557, 0x6558, 0x655A, 0x655C, 0x655F, 0x6560, - 0x6561, 0x6564, 0x6565, 0x6567, 0x6568, 0x6569, 0x656A, 0x656D, - 0x656E, 0x656F, 0x6571, 0x6573, 0x6575, 0x6576, 0x6578, 0x6579, - 0x657A, 0x657B, 0x657C, 0x657D, 0x657E, 0x657F, 0x6580, 0x6581, - 0x6582, 0x6583, 0x6584, 0x6585, 0x6586, 0x6588, 0x6589, 0x658A, - 0x658D, 0x658E, 0x658F, 0x6592, 0x6594, 0x6595, 0x6596, 0x6598, - 0x659A, 0x659D, 0x659E, 0x65A0, 0x65A2, 0x65A3, 0x65A6, 0x65A8, - 0x65AA, 0x65AC, 0x65AE, 0x65B1, 0x65B2, 0x65B3, 0x65B4, 0x65B5, - 0x65B6, 0x65B7, 0x65B8, 0x65BA, 0x65BB, 0x65BE, 0x65BF, 0x65C0, - 0x65C2, 0x65C7, 0x65C8, 0x65C9, 0x65CA, 0x65CD, 0x65D0, 0x65D1, - 0x65D3, 0x65D4, 0x65D5, 0x65D8, 0x65D9, 0x65DA, 0x65DB, 0x65DC, - 0x65DD, 0x65DE, 0x65DF, 0x65E1, 0x65E3, 0x65E4, 0x65EA, 0x65EB, - 0x65F2, 0x65F3, 0x65F4, 0x65F5, 0x65F8, 0x65F9, 0x65FB, 0x65FC, - 0x65FD, 0x65FE, 0x65FF, 0x6601, 0x6604, 0x6605, 0x6607, 0x6608, - 0x6609, 0x660B, 0x660D, 0x6610, 0x6611, 0x6612, 0x6616, 0x6617, - 0x6618, 0x661A, 0x661B, 0x661C, 0x661E, 0x6621, 0x6622, 0x6623, - 0x6624, 0x6626, 0x6629, 0x662A, 0x662B, 0x662C, 0x662E, 0x6630, -plane 16 -at 0x00 - 0x6632, 0x6633, 0x6637, 0x6638, 0x6639, 0x663A, 0x663B, 0x663D, - 0x663F, 0x6640, 0x6642, 0x6644, 0x6645, 0x6646, 0x6647, 0x6648, - 0x6649, 0x664A, 0x664D, 0x664E, 0x6650, 0x6651, 0x6658, 0x6659, - 0x665B, 0x665C, 0x665D, 0x665E, 0x6660, 0x6662, 0x6663, 0x6665, - 0x6667, 0x6669, 0x666A, 0x666B, 0x666C, 0x666D, 0x6671, 0x6672, - 0x6673, 0x6675, 0x6678, 0x6679, 0x667B, 0x667C, 0x667D, 0x667F, - 0x6680, 0x6681, 0x6683, 0x6685, 0x6686, 0x6688, 0x6689, 0x668A, - 0x668B, 0x668D, 0x668E, 0x668F, 0x6690, 0x6692, 0x6693, 0x6694, - 0x6695, 0x6698, 0x6699, 0x669A, 0x669B, 0x669C, 0x669E, 0x669F, - 0x66A0, 0x66A1, 0x66A2, 0x66A3, 0x66A4, 0x66A5, 0x66A6, 0x66A9, - 0x66AA, 0x66AB, 0x66AC, 0x66AD, 0x66AF, 0x66B0, 0x66B1, 0x66B2, - 0x66B3, 0x66B5, 0x66B6, 0x66B7, 0x66B8, 0x66BA, 0x66BB, 0x66BC, - 0x66BD, 0x66BF, 0x66C0, 0x66C1, 0x66C2, 0x66C3, 0x66C4, 0x66C5, - 0x66C6, 0x66C7, 0x66C8, 0x66C9, 0x66CA, 0x66CB, 0x66CC, 0x66CD, - 0x66CE, 0x66CF, 0x66D0, 0x66D1, 0x66D2, 0x66D3, 0x66D4, 0x66D5, - 0x66D6, 0x66D7, 0x66D8, 0x66DA, 0x66DE, 0x66DF, 0x66E0, 0x66E1, - 0x66E2, 0x66E3, 0x66E4, 0x66E5, 0x66E7, 0x66E8, 0x66EA, 0x66EB, - 0x66EC, 0x66ED, 0x66EE, 0x66EF, 0x66F1, 0x66F5, 0x66F6, 0x66F8, - 0x66FA, 0x66FB, 0x66FD, 0x6701, 0x6702, 0x6703, 0x6704, 0x6705, - 0x6706, 0x6707, 0x670C, 0x670E, 0x670F, 0x6711, 0x6712, 0x6713, - 0x6716, 0x6718, 0x6719, 0x671A, 0x671C, 0x671E, 0x6720, 0x6721, - 0x6722, 0x6723, 0x6724, 0x6725, 0x6727, 0x6729, 0x672E, 0x6730, - 0x6732, 0x6733, 0x6736, 0x6737, 0x6738, 0x6739, 0x673B, 0x673C, - 0x673E, 0x673F, 0x6741, 0x6744, 0x6745, 0x6747, 0x674A, 0x674B, - 0x674D, 0x6752, 0x6754, 0x6755, 0x6757, 0x6758, 0x6759, 0x675A, - 0x675B, 0x675D, 0x6762, 0x6763, 0x6764, 0x6766, 0x6767, 0x676B, - 0x676C, 0x676E, 0x6771, 0x6774, 0x6776, 0x6778, 0x6779, 0x677A, - 0x677B, 0x677D, 0x6780, 0x6782, 0x6783, 0x6785, 0x6786, 0x6788, - 0x678A, 0x678C, 0x678D, 0x678E, 0x678F, 0x6791, 0x6792, 0x6793, - 0x6794, 0x6796, 0x6799, 0x679B, 0x679F, 0x67A0, 0x67A1, 0x67A4, - 0x67A6, 0x67A9, 0x67AC, 0x67AE, 0x67B1, 0x67B2, 0x67B4, 0x67B9, - 0x67BA, 0x67BB, 0x67BC, 0x67BD, 0x67BE, 0x67BF, 0x67C0, 0x67C2, -plane 17 -at 0x00 - 0x67C5, 0x67C6, 0x67C7, 0x67C8, 0x67C9, 0x67CA, 0x67CB, 0x67CC, - 0x67CD, 0x67CE, 0x67D5, 0x67D6, 0x67D7, 0x67DB, 0x67DF, 0x67E1, - 0x67E3, 0x67E4, 0x67E6, 0x67E7, 0x67E8, 0x67EA, 0x67EB, 0x67ED, - 0x67EE, 0x67F2, 0x67F5, 0x67F6, 0x67F7, 0x67F8, 0x67F9, 0x67FA, - 0x67FB, 0x67FC, 0x67FE, 0x6801, 0x6802, 0x6803, 0x6804, 0x6806, - 0x680D, 0x6810, 0x6812, 0x6814, 0x6815, 0x6818, 0x6819, 0x681A, - 0x681B, 0x681C, 0x681E, 0x681F, 0x6820, 0x6822, 0x6823, 0x6824, - 0x6825, 0x6826, 0x6827, 0x6828, 0x682B, 0x682C, 0x682D, 0x682E, - 0x682F, 0x6830, 0x6831, 0x6834, 0x6835, 0x6836, 0x683A, 0x683B, - 0x683F, 0x6847, 0x684B, 0x684D, 0x684F, 0x6852, 0x6856, 0x6857, - 0x6858, 0x6859, 0x685A, 0x685B, 0x685C, 0x685D, 0x685E, 0x685F, - 0x686A, 0x686C, 0x686D, 0x686E, 0x686F, 0x6870, 0x6871, 0x6872, - 0x6873, 0x6875, 0x6878, 0x6879, 0x687A, 0x687B, 0x687C, 0x687D, - 0x687E, 0x687F, 0x6880, 0x6882, 0x6884, 0x6887, 0x6888, 0x6889, - 0x688A, 0x688B, 0x688C, 0x688D, 0x688E, 0x6890, 0x6891, 0x6892, - 0x6894, 0x6895, 0x6896, 0x6898, 0x6899, 0x689A, 0x689B, 0x689C, - 0x689D, 0x689E, 0x689F, 0x68A0, 0x68A1, 0x68A3, 0x68A4, 0x68A5, - 0x68A9, 0x68AA, 0x68AB, 0x68AC, 0x68AE, 0x68B1, 0x68B2, 0x68B4, - 0x68B6, 0x68B7, 0x68B8, 0x68B9, 0x68BA, 0x68BB, 0x68BC, 0x68BD, - 0x68BE, 0x68BF, 0x68C1, 0x68C3, 0x68C4, 0x68C5, 0x68C6, 0x68C7, - 0x68C8, 0x68CA, 0x68CC, 0x68CE, 0x68CF, 0x68D0, 0x68D1, 0x68D3, - 0x68D4, 0x68D6, 0x68D7, 0x68D9, 0x68DB, 0x68DC, 0x68DD, 0x68DE, - 0x68DF, 0x68E1, 0x68E2, 0x68E4, 0x68E5, 0x68E6, 0x68E7, 0x68E8, - 0x68E9, 0x68EA, 0x68EB, 0x68EC, 0x68ED, 0x68EF, 0x68F2, 0x68F3, - 0x68F4, 0x68F6, 0x68F7, 0x68F8, 0x68FB, 0x68FD, 0x68FE, 0x68FF, - 0x6900, 0x6902, 0x6903, 0x6904, 0x6906, 0x6907, 0x6908, 0x6909, - 0x690A, 0x690C, 0x690F, 0x6911, 0x6913, 0x6914, 0x6915, 0x6916, - 0x6917, 0x6918, 0x6919, 0x691A, 0x691B, 0x691C, 0x691D, 0x691E, - 0x6921, 0x6922, 0x6923, 0x6925, 0x6926, 0x6927, 0x6928, 0x6929, - 0x692A, 0x692B, 0x692C, 0x692E, 0x692F, 0x6931, 0x6932, 0x6933, - 0x6935, 0x6936, 0x6937, 0x6938, 0x693A, 0x693B, 0x693C, 0x693E, - 0x6940, 0x6941, 0x6943, 0x6944, 0x6945, 0x6946, 0x6947, 0x6948, -plane 18 -at 0x00 - 0x6949, 0x694A, 0x694B, 0x694C, 0x694D, 0x694E, 0x694F, 0x6950, - 0x6951, 0x6952, 0x6953, 0x6955, 0x6956, 0x6958, 0x6959, 0x695B, - 0x695C, 0x695F, 0x6961, 0x6962, 0x6964, 0x6965, 0x6967, 0x6968, - 0x6969, 0x696A, 0x696C, 0x696D, 0x696F, 0x6970, 0x6972, 0x6973, - 0x6974, 0x6975, 0x6976, 0x697A, 0x697B, 0x697D, 0x697E, 0x697F, - 0x6981, 0x6983, 0x6985, 0x698A, 0x698B, 0x698C, 0x698E, 0x698F, - 0x6990, 0x6991, 0x6992, 0x6993, 0x6996, 0x6997, 0x6999, 0x699A, - 0x699D, 0x699E, 0x699F, 0x69A0, 0x69A1, 0x69A2, 0x69A3, 0x69A4, - 0x69A5, 0x69A6, 0x69A9, 0x69AA, 0x69AC, 0x69AE, 0x69AF, 0x69B0, - 0x69B2, 0x69B3, 0x69B5, 0x69B6, 0x69B8, 0x69B9, 0x69BA, 0x69BC, - 0x69BD, 0x69BE, 0x69BF, 0x69C0, 0x69C2, 0x69C3, 0x69C4, 0x69C5, - 0x69C6, 0x69C7, 0x69C8, 0x69C9, 0x69CB, 0x69CD, 0x69CF, 0x69D1, - 0x69D2, 0x69D3, 0x69D5, 0x69D6, 0x69D7, 0x69D8, 0x69D9, 0x69DA, - 0x69DC, 0x69DD, 0x69DE, 0x69E1, 0x69E2, 0x69E3, 0x69E4, 0x69E5, - 0x69E6, 0x69E7, 0x69E8, 0x69E9, 0x69EA, 0x69EB, 0x69EC, 0x69EE, - 0x69EF, 0x69F0, 0x69F1, 0x69F3, 0x69F4, 0x69F5, 0x69F6, 0x69F7, - 0x69F8, 0x69F9, 0x69FA, 0x69FB, 0x69FC, 0x69FE, 0x6A00, 0x6A01, - 0x6A02, 0x6A03, 0x6A04, 0x6A05, 0x6A06, 0x6A07, 0x6A08, 0x6A09, - 0x6A0B, 0x6A0C, 0x6A0D, 0x6A0E, 0x6A0F, 0x6A10, 0x6A11, 0x6A12, - 0x6A13, 0x6A14, 0x6A15, 0x6A16, 0x6A19, 0x6A1A, 0x6A1B, 0x6A1C, - 0x6A1D, 0x6A1E, 0x6A20, 0x6A22, 0x6A23, 0x6A24, 0x6A25, 0x6A26, - 0x6A27, 0x6A29, 0x6A2B, 0x6A2C, 0x6A2D, 0x6A2E, 0x6A30, 0x6A32, - 0x6A33, 0x6A34, 0x6A36, 0x6A37, 0x6A38, 0x6A39, 0x6A3A, 0x6A3B, - 0x6A3C, 0x6A3F, 0x6A40, 0x6A41, 0x6A42, 0x6A43, 0x6A45, 0x6A46, - 0x6A48, 0x6A49, 0x6A4A, 0x6A4B, 0x6A4C, 0x6A4D, 0x6A4E, 0x6A4F, - 0x6A51, 0x6A52, 0x6A53, 0x6A54, 0x6A55, 0x6A56, 0x6A57, 0x6A5A, - 0x6A5C, 0x6A5D, 0x6A5E, 0x6A5F, 0x6A60, 0x6A62, 0x6A63, 0x6A64, - 0x6A66, 0x6A67, 0x6A68, 0x6A69, 0x6A6A, 0x6A6B, 0x6A6C, 0x6A6D, - 0x6A6E, 0x6A6F, 0x6A70, 0x6A72, 0x6A73, 0x6A74, 0x6A75, 0x6A76, - 0x6A77, 0x6A78, 0x6A7A, 0x6A7B, 0x6A7D, 0x6A7E, 0x6A7F, 0x6A81, - 0x6A82, 0x6A83, 0x6A85, 0x6A86, 0x6A87, 0x6A88, 0x6A89, 0x6A8A, - 0x6A8B, 0x6A8C, 0x6A8D, 0x6A8F, 0x6A92, 0x6A93, 0x6A94, 0x6A95, -plane 19 -at 0x00 - 0x6A96, 0x6A98, 0x6A99, 0x6A9A, 0x6A9B, 0x6A9C, 0x6A9D, 0x6A9E, - 0x6A9F, 0x6AA1, 0x6AA2, 0x6AA3, 0x6AA4, 0x6AA5, 0x6AA6, 0x6AA7, - 0x6AA8, 0x6AAA, 0x6AAD, 0x6AAE, 0x6AAF, 0x6AB0, 0x6AB1, 0x6AB2, - 0x6AB3, 0x6AB4, 0x6AB5, 0x6AB6, 0x6AB7, 0x6AB8, 0x6AB9, 0x6ABA, - 0x6ABB, 0x6ABC, 0x6ABD, 0x6ABE, 0x6ABF, 0x6AC0, 0x6AC1, 0x6AC2, - 0x6AC3, 0x6AC4, 0x6AC5, 0x6AC6, 0x6AC7, 0x6AC8, 0x6AC9, 0x6ACA, - 0x6ACB, 0x6ACC, 0x6ACD, 0x6ACE, 0x6ACF, 0x6AD0, 0x6AD1, 0x6AD2, - 0x6AD3, 0x6AD4, 0x6AD5, 0x6AD6, 0x6AD7, 0x6AD8, 0x6AD9, 0x6ADA, - 0x6ADB, 0x6ADC, 0x6ADD, 0x6ADE, 0x6ADF, 0x6AE0, 0x6AE1, 0x6AE2, - 0x6AE3, 0x6AE4, 0x6AE5, 0x6AE6, 0x6AE7, 0x6AE8, 0x6AE9, 0x6AEA, - 0x6AEB, 0x6AEC, 0x6AED, 0x6AEE, 0x6AEF, 0x6AF0, 0x6AF1, 0x6AF2, - 0x6AF3, 0x6AF4, 0x6AF5, 0x6AF6, 0x6AF7, 0x6AF8, 0x6AF9, 0x6AFA, - 0x6AFB, 0x6AFC, 0x6AFD, 0x6AFE, 0x6AFF, 0x6B00, 0x6B01, 0x6B02, - 0x6B03, 0x6B04, 0x6B05, 0x6B06, 0x6B07, 0x6B08, 0x6B09, 0x6B0A, - 0x6B0B, 0x6B0C, 0x6B0D, 0x6B0E, 0x6B0F, 0x6B10, 0x6B11, 0x6B12, - 0x6B13, 0x6B14, 0x6B15, 0x6B16, 0x6B17, 0x6B18, 0x6B19, 0x6B1A, - 0x6B1B, 0x6B1C, 0x6B1D, 0x6B1E, 0x6B1F, 0x6B25, 0x6B26, 0x6B28, - 0x6B29, 0x6B2A, 0x6B2B, 0x6B2C, 0x6B2D, 0x6B2E, 0x6B2F, 0x6B30, - 0x6B31, 0x6B33, 0x6B34, 0x6B35, 0x6B36, 0x6B38, 0x6B3B, 0x6B3C, - 0x6B3D, 0x6B3F, 0x6B40, 0x6B41, 0x6B42, 0x6B44, 0x6B45, 0x6B48, - 0x6B4A, 0x6B4B, 0x6B4D, 0x6B4E, 0x6B4F, 0x6B50, 0x6B51, 0x6B52, - 0x6B53, 0x6B54, 0x6B55, 0x6B56, 0x6B57, 0x6B58, 0x6B5A, 0x6B5B, - 0x6B5C, 0x6B5D, 0x6B5E, 0x6B5F, 0x6B60, 0x6B61, 0x6B68, 0x6B69, - 0x6B6B, 0x6B6C, 0x6B6D, 0x6B6E, 0x6B6F, 0x6B70, 0x6B71, 0x6B72, - 0x6B73, 0x6B74, 0x6B75, 0x6B76, 0x6B77, 0x6B78, 0x6B7A, 0x6B7D, - 0x6B7E, 0x6B7F, 0x6B80, 0x6B85, 0x6B88, 0x6B8C, 0x6B8E, 0x6B8F, - 0x6B90, 0x6B91, 0x6B94, 0x6B95, 0x6B97, 0x6B98, 0x6B99, 0x6B9C, - 0x6B9D, 0x6B9E, 0x6B9F, 0x6BA0, 0x6BA2, 0x6BA3, 0x6BA4, 0x6BA5, - 0x6BA6, 0x6BA7, 0x6BA8, 0x6BA9, 0x6BAB, 0x6BAC, 0x6BAD, 0x6BAE, - 0x6BAF, 0x6BB0, 0x6BB1, 0x6BB2, 0x6BB6, 0x6BB8, 0x6BB9, 0x6BBA, - 0x6BBB, 0x6BBC, 0x6BBD, 0x6BBE, 0x6BC0, 0x6BC3, 0x6BC4, 0x6BC6, - 0x6BC7, 0x6BC8, 0x6BC9, 0x6BCA, 0x6BCC, 0x6BCE, 0x6BD0, 0x6BD1, -plane 20 -at 0x00 - 0x6BD8, 0x6BDA, 0x6BDC, 0x6BDD, 0x6BDE, 0x6BDF, 0x6BE0, 0x6BE2, - 0x6BE3, 0x6BE4, 0x6BE5, 0x6BE6, 0x6BE7, 0x6BE8, 0x6BE9, 0x6BEC, - 0x6BED, 0x6BEE, 0x6BF0, 0x6BF1, 0x6BF2, 0x6BF4, 0x6BF6, 0x6BF7, - 0x6BF8, 0x6BFA, 0x6BFB, 0x6BFC, 0x6BFE, 0x6BFF, 0x6C00, 0x6C01, - 0x6C02, 0x6C03, 0x6C04, 0x6C08, 0x6C09, 0x6C0A, 0x6C0B, 0x6C0C, - 0x6C0E, 0x6C12, 0x6C17, 0x6C1C, 0x6C1D, 0x6C1E, 0x6C20, 0x6C23, - 0x6C25, 0x6C2B, 0x6C2C, 0x6C2D, 0x6C31, 0x6C33, 0x6C36, 0x6C37, - 0x6C39, 0x6C3A, 0x6C3B, 0x6C3C, 0x6C3E, 0x6C3F, 0x6C43, 0x6C44, - 0x6C45, 0x6C48, 0x6C4B, 0x6C4C, 0x6C4D, 0x6C4E, 0x6C4F, 0x6C51, - 0x6C52, 0x6C53, 0x6C56, 0x6C58, 0x6C59, 0x6C5A, 0x6C62, 0x6C63, - 0x6C65, 0x6C66, 0x6C67, 0x6C6B, 0x6C6C, 0x6C6D, 0x6C6E, 0x6C6F, - 0x6C71, 0x6C73, 0x6C75, 0x6C77, 0x6C78, 0x6C7A, 0x6C7B, 0x6C7C, - 0x6C7F, 0x6C80, 0x6C84, 0x6C87, 0x6C8A, 0x6C8B, 0x6C8D, 0x6C8E, - 0x6C91, 0x6C92, 0x6C95, 0x6C96, 0x6C97, 0x6C98, 0x6C9A, 0x6C9C, - 0x6C9D, 0x6C9E, 0x6CA0, 0x6CA2, 0x6CA8, 0x6CAC, 0x6CAF, 0x6CB0, - 0x6CB4, 0x6CB5, 0x6CB6, 0x6CB7, 0x6CBA, 0x6CC0, 0x6CC1, 0x6CC2, - 0x6CC3, 0x6CC6, 0x6CC7, 0x6CC8, 0x6CCB, 0x6CCD, 0x6CCE, 0x6CCF, - 0x6CD1, 0x6CD2, 0x6CD8, 0x6CD9, 0x6CDA, 0x6CDC, 0x6CDD, 0x6CDF, - 0x6CE4, 0x6CE6, 0x6CE7, 0x6CE9, 0x6CEC, 0x6CED, 0x6CF2, 0x6CF4, - 0x6CF9, 0x6CFF, 0x6D00, 0x6D02, 0x6D03, 0x6D05, 0x6D06, 0x6D08, - 0x6D09, 0x6D0A, 0x6D0D, 0x6D0F, 0x6D10, 0x6D11, 0x6D13, 0x6D14, - 0x6D15, 0x6D16, 0x6D18, 0x6D1C, 0x6D1D, 0x6D1F, 0x6D20, 0x6D21, - 0x6D22, 0x6D23, 0x6D24, 0x6D26, 0x6D28, 0x6D29, 0x6D2C, 0x6D2D, - 0x6D2F, 0x6D30, 0x6D34, 0x6D36, 0x6D37, 0x6D38, 0x6D3A, 0x6D3F, - 0x6D40, 0x6D42, 0x6D44, 0x6D49, 0x6D4C, 0x6D50, 0x6D55, 0x6D56, - 0x6D57, 0x6D58, 0x6D5B, 0x6D5D, 0x6D5F, 0x6D61, 0x6D62, 0x6D64, - 0x6D65, 0x6D67, 0x6D68, 0x6D6B, 0x6D6C, 0x6D6D, 0x6D70, 0x6D71, - 0x6D72, 0x6D73, 0x6D75, 0x6D76, 0x6D79, 0x6D7A, 0x6D7B, 0x6D7D, - 0x6D7E, 0x6D7F, 0x6D80, 0x6D81, 0x6D83, 0x6D84, 0x6D86, 0x6D87, - 0x6D8A, 0x6D8B, 0x6D8D, 0x6D8F, 0x6D90, 0x6D92, 0x6D96, 0x6D97, - 0x6D98, 0x6D99, 0x6D9A, 0x6D9C, 0x6DA2, 0x6DA5, 0x6DAC, 0x6DAD, - 0x6DB0, 0x6DB1, 0x6DB3, 0x6DB4, 0x6DB6, 0x6DB7, 0x6DB9, 0x6DBA, -plane 21 -at 0x00 - 0x6DBB, 0x6DBC, 0x6DBD, 0x6DBE, 0x6DC1, 0x6DC2, 0x6DC3, 0x6DC8, - 0x6DC9, 0x6DCA, 0x6DCD, 0x6DCE, 0x6DCF, 0x6DD0, 0x6DD2, 0x6DD3, - 0x6DD4, 0x6DD5, 0x6DD7, 0x6DDA, 0x6DDB, 0x6DDC, 0x6DDF, 0x6DE2, - 0x6DE3, 0x6DE5, 0x6DE7, 0x6DE8, 0x6DE9, 0x6DEA, 0x6DED, 0x6DEF, - 0x6DF0, 0x6DF2, 0x6DF4, 0x6DF5, 0x6DF6, 0x6DF8, 0x6DFA, 0x6DFD, - 0x6DFE, 0x6DFF, 0x6E00, 0x6E01, 0x6E02, 0x6E03, 0x6E04, 0x6E06, - 0x6E07, 0x6E08, 0x6E09, 0x6E0B, 0x6E0F, 0x6E12, 0x6E13, 0x6E15, - 0x6E18, 0x6E19, 0x6E1B, 0x6E1C, 0x6E1E, 0x6E1F, 0x6E22, 0x6E26, - 0x6E27, 0x6E28, 0x6E2A, 0x6E2C, 0x6E2E, 0x6E30, 0x6E31, 0x6E33, - 0x6E35, 0x6E36, 0x6E37, 0x6E39, 0x6E3B, 0x6E3C, 0x6E3D, 0x6E3E, - 0x6E3F, 0x6E40, 0x6E41, 0x6E42, 0x6E45, 0x6E46, 0x6E47, 0x6E48, - 0x6E49, 0x6E4A, 0x6E4B, 0x6E4C, 0x6E4F, 0x6E50, 0x6E51, 0x6E52, - 0x6E55, 0x6E57, 0x6E59, 0x6E5A, 0x6E5C, 0x6E5D, 0x6E5E, 0x6E60, - 0x6E61, 0x6E62, 0x6E63, 0x6E64, 0x6E65, 0x6E66, 0x6E67, 0x6E68, - 0x6E69, 0x6E6A, 0x6E6C, 0x6E6D, 0x6E6F, 0x6E70, 0x6E71, 0x6E72, - 0x6E73, 0x6E74, 0x6E75, 0x6E76, 0x6E77, 0x6E78, 0x6E79, 0x6E7A, - 0x6E7B, 0x6E7C, 0x6E7D, 0x6E80, 0x6E81, 0x6E82, 0x6E84, 0x6E87, - 0x6E88, 0x6E8A, 0x6E8B, 0x6E8C, 0x6E8D, 0x6E8E, 0x6E91, 0x6E92, - 0x6E93, 0x6E94, 0x6E95, 0x6E96, 0x6E97, 0x6E99, 0x6E9A, 0x6E9B, - 0x6E9D, 0x6E9E, 0x6EA0, 0x6EA1, 0x6EA3, 0x6EA4, 0x6EA6, 0x6EA8, - 0x6EA9, 0x6EAB, 0x6EAC, 0x6EAD, 0x6EAE, 0x6EB0, 0x6EB3, 0x6EB5, - 0x6EB8, 0x6EB9, 0x6EBC, 0x6EBE, 0x6EBF, 0x6EC0, 0x6EC3, 0x6EC4, - 0x6EC5, 0x6EC6, 0x6EC8, 0x6EC9, 0x6ECA, 0x6ECC, 0x6ECD, 0x6ECE, - 0x6ED0, 0x6ED2, 0x6ED6, 0x6ED8, 0x6ED9, 0x6EDB, 0x6EDC, 0x6EDD, - 0x6EE3, 0x6EE7, 0x6EEA, 0x6EEB, 0x6EEC, 0x6EED, 0x6EEE, 0x6EEF, - 0x6EF0, 0x6EF1, 0x6EF2, 0x6EF3, 0x6EF5, 0x6EF6, 0x6EF7, 0x6EF8, - 0x6EFA, 0x6EFB, 0x6EFC, 0x6EFD, 0x6EFE, 0x6EFF, 0x6F00, 0x6F01, - 0x6F03, 0x6F04, 0x6F05, 0x6F07, 0x6F08, 0x6F0A, 0x6F0B, 0x6F0C, - 0x6F0D, 0x6F0E, 0x6F10, 0x6F11, 0x6F12, 0x6F16, 0x6F17, 0x6F18, - 0x6F19, 0x6F1A, 0x6F1B, 0x6F1C, 0x6F1D, 0x6F1E, 0x6F1F, 0x6F21, - 0x6F22, 0x6F23, 0x6F25, 0x6F26, 0x6F27, 0x6F28, 0x6F2C, 0x6F2E, - 0x6F30, 0x6F32, 0x6F34, 0x6F35, 0x6F37, 0x6F38, 0x6F39, 0x6F3A, -plane 22 -at 0x00 - 0x6F3B, 0x6F3C, 0x6F3D, 0x6F3F, 0x6F40, 0x6F41, 0x6F42, 0x6F43, - 0x6F44, 0x6F45, 0x6F48, 0x6F49, 0x6F4A, 0x6F4C, 0x6F4E, 0x6F4F, - 0x6F50, 0x6F51, 0x6F52, 0x6F53, 0x6F54, 0x6F55, 0x6F56, 0x6F57, - 0x6F59, 0x6F5A, 0x6F5B, 0x6F5D, 0x6F5F, 0x6F60, 0x6F61, 0x6F63, - 0x6F64, 0x6F65, 0x6F67, 0x6F68, 0x6F69, 0x6F6A, 0x6F6B, 0x6F6C, - 0x6F6F, 0x6F70, 0x6F71, 0x6F73, 0x6F75, 0x6F76, 0x6F77, 0x6F79, - 0x6F7B, 0x6F7D, 0x6F7E, 0x6F7F, 0x6F80, 0x6F81, 0x6F82, 0x6F83, - 0x6F85, 0x6F86, 0x6F87, 0x6F8A, 0x6F8B, 0x6F8F, 0x6F90, 0x6F91, - 0x6F92, 0x6F93, 0x6F94, 0x6F95, 0x6F96, 0x6F97, 0x6F98, 0x6F99, - 0x6F9A, 0x6F9B, 0x6F9D, 0x6F9E, 0x6F9F, 0x6FA0, 0x6FA2, 0x6FA3, - 0x6FA4, 0x6FA5, 0x6FA6, 0x6FA8, 0x6FA9, 0x6FAA, 0x6FAB, 0x6FAC, - 0x6FAD, 0x6FAE, 0x6FAF, 0x6FB0, 0x6FB1, 0x6FB2, 0x6FB4, 0x6FB5, - 0x6FB7, 0x6FB8, 0x6FBA, 0x6FBB, 0x6FBC, 0x6FBD, 0x6FBE, 0x6FBF, - 0x6FC1, 0x6FC3, 0x6FC4, 0x6FC5, 0x6FC6, 0x6FC7, 0x6FC8, 0x6FCA, - 0x6FCB, 0x6FCC, 0x6FCD, 0x6FCE, 0x6FCF, 0x6FD0, 0x6FD3, 0x6FD4, - 0x6FD5, 0x6FD6, 0x6FD7, 0x6FD8, 0x6FD9, 0x6FDA, 0x6FDB, 0x6FDC, - 0x6FDD, 0x6FDF, 0x6FE2, 0x6FE3, 0x6FE4, 0x6FE5, 0x6FE6, 0x6FE7, - 0x6FE8, 0x6FE9, 0x6FEA, 0x6FEB, 0x6FEC, 0x6FED, 0x6FF0, 0x6FF1, - 0x6FF2, 0x6FF3, 0x6FF4, 0x6FF5, 0x6FF6, 0x6FF7, 0x6FF8, 0x6FF9, - 0x6FFA, 0x6FFB, 0x6FFC, 0x6FFD, 0x6FFE, 0x6FFF, 0x7000, 0x7001, - 0x7002, 0x7003, 0x7004, 0x7005, 0x7006, 0x7007, 0x7008, 0x7009, - 0x700A, 0x700B, 0x700C, 0x700D, 0x700E, 0x700F, 0x7010, 0x7012, - 0x7013, 0x7014, 0x7015, 0x7016, 0x7017, 0x7018, 0x7019, 0x701C, - 0x701D, 0x701E, 0x701F, 0x7020, 0x7021, 0x7022, 0x7024, 0x7025, - 0x7026, 0x7027, 0x7028, 0x7029, 0x702A, 0x702B, 0x702C, 0x702D, - 0x702E, 0x702F, 0x7030, 0x7031, 0x7032, 0x7033, 0x7034, 0x7036, - 0x7037, 0x7038, 0x703A, 0x703B, 0x703C, 0x703D, 0x703E, 0x703F, - 0x7040, 0x7041, 0x7042, 0x7043, 0x7044, 0x7045, 0x7046, 0x7047, - 0x7048, 0x7049, 0x704A, 0x704B, 0x704D, 0x704E, 0x7050, 0x7051, - 0x7052, 0x7053, 0x7054, 0x7055, 0x7056, 0x7057, 0x7058, 0x7059, - 0x705A, 0x705B, 0x705C, 0x705D, 0x705F, 0x7060, 0x7061, 0x7062, - 0x7063, 0x7064, 0x7065, 0x7066, 0x7067, 0x7068, 0x7069, 0x706A, -plane 23 -at 0x00 - 0x706E, 0x7071, 0x7072, 0x7073, 0x7074, 0x7077, 0x7079, 0x707A, - 0x707B, 0x707D, 0x7081, 0x7082, 0x7083, 0x7084, 0x7086, 0x7087, - 0x7088, 0x708B, 0x708C, 0x708D, 0x708F, 0x7090, 0x7091, 0x7093, - 0x7097, 0x7098, 0x709A, 0x709B, 0x709E, 0x709F, 0x70A0, 0x70A1, - 0x70A2, 0x70A3, 0x70A4, 0x70A5, 0x70A6, 0x70A7, 0x70A8, 0x70A9, - 0x70AA, 0x70B0, 0x70B2, 0x70B4, 0x70B5, 0x70B6, 0x70BA, 0x70BE, - 0x70BF, 0x70C4, 0x70C5, 0x70C6, 0x70C7, 0x70C9, 0x70CB, 0x70CC, - 0x70CD, 0x70CE, 0x70CF, 0x70D0, 0x70D1, 0x70D2, 0x70D3, 0x70D4, - 0x70D5, 0x70D6, 0x70D7, 0x70DA, 0x70DC, 0x70DD, 0x70DE, 0x70E0, - 0x70E1, 0x70E2, 0x70E3, 0x70E5, 0x70EA, 0x70EE, 0x70F0, 0x70F1, - 0x70F2, 0x70F3, 0x70F4, 0x70F5, 0x70F6, 0x70F8, 0x70FA, 0x70FB, - 0x70FC, 0x70FE, 0x70FF, 0x7100, 0x7101, 0x7102, 0x7103, 0x7104, - 0x7105, 0x7106, 0x7107, 0x7108, 0x710B, 0x710C, 0x710D, 0x710E, - 0x710F, 0x7111, 0x7112, 0x7114, 0x7117, 0x711B, 0x711C, 0x711D, - 0x711E, 0x711F, 0x7120, 0x7121, 0x7122, 0x7123, 0x7124, 0x7125, - 0x7127, 0x7128, 0x7129, 0x712A, 0x712B, 0x712C, 0x712D, 0x712E, - 0x7132, 0x7133, 0x7134, 0x7135, 0x7137, 0x7138, 0x7139, 0x713A, - 0x713B, 0x713C, 0x713D, 0x713E, 0x713F, 0x7140, 0x7141, 0x7142, - 0x7143, 0x7144, 0x7146, 0x7147, 0x7148, 0x7149, 0x714B, 0x714D, - 0x714F, 0x7150, 0x7151, 0x7152, 0x7153, 0x7154, 0x7155, 0x7156, - 0x7157, 0x7158, 0x7159, 0x715A, 0x715B, 0x715D, 0x715F, 0x7160, - 0x7161, 0x7162, 0x7163, 0x7165, 0x7169, 0x716A, 0x716B, 0x716C, - 0x716D, 0x716F, 0x7170, 0x7171, 0x7174, 0x7175, 0x7176, 0x7177, - 0x7179, 0x717B, 0x717C, 0x717E, 0x717F, 0x7180, 0x7181, 0x7182, - 0x7183, 0x7185, 0x7186, 0x7187, 0x7188, 0x7189, 0x718B, 0x718C, - 0x718D, 0x718E, 0x7190, 0x7191, 0x7192, 0x7193, 0x7195, 0x7196, - 0x7197, 0x719A, 0x719B, 0x719C, 0x719D, 0x719E, 0x71A1, 0x71A2, - 0x71A3, 0x71A4, 0x71A5, 0x71A6, 0x71A7, 0x71A9, 0x71AA, 0x71AB, - 0x71AD, 0x71AE, 0x71AF, 0x71B0, 0x71B1, 0x71B2, 0x71B4, 0x71B6, - 0x71B7, 0x71B8, 0x71BA, 0x71BB, 0x71BC, 0x71BD, 0x71BE, 0x71BF, - 0x71C0, 0x71C1, 0x71C2, 0x71C4, 0x71C5, 0x71C6, 0x71C7, 0x71C8, - 0x71C9, 0x71CA, 0x71CB, 0x71CC, 0x71CD, 0x71CF, 0x71D0, 0x71D1, -plane 24 -at 0x00 - 0x71D2, 0x71D3, 0x71D6, 0x71D7, 0x71D8, 0x71D9, 0x71DA, 0x71DB, - 0x71DC, 0x71DD, 0x71DE, 0x71DF, 0x71E1, 0x71E2, 0x71E3, 0x71E4, - 0x71E6, 0x71E8, 0x71E9, 0x71EA, 0x71EB, 0x71EC, 0x71ED, 0x71EF, - 0x71F0, 0x71F1, 0x71F2, 0x71F3, 0x71F4, 0x71F5, 0x71F6, 0x71F7, - 0x71F8, 0x71FA, 0x71FB, 0x71FC, 0x71FD, 0x71FE, 0x71FF, 0x7200, - 0x7201, 0x7202, 0x7203, 0x7204, 0x7205, 0x7207, 0x7208, 0x7209, - 0x720A, 0x720B, 0x720C, 0x720D, 0x720E, 0x720F, 0x7210, 0x7211, - 0x7212, 0x7213, 0x7214, 0x7215, 0x7216, 0x7217, 0x7218, 0x7219, - 0x721A, 0x721B, 0x721C, 0x721E, 0x721F, 0x7220, 0x7221, 0x7222, - 0x7223, 0x7224, 0x7225, 0x7226, 0x7227, 0x7229, 0x722B, 0x722D, - 0x722E, 0x722F, 0x7232, 0x7233, 0x7234, 0x723A, 0x723C, 0x723E, - 0x7240, 0x7241, 0x7242, 0x7243, 0x7244, 0x7245, 0x7246, 0x7249, - 0x724A, 0x724B, 0x724E, 0x724F, 0x7250, 0x7251, 0x7253, 0x7254, - 0x7255, 0x7257, 0x7258, 0x725A, 0x725C, 0x725E, 0x7260, 0x7263, - 0x7264, 0x7265, 0x7268, 0x726A, 0x726B, 0x726C, 0x726D, 0x7270, - 0x7271, 0x7273, 0x7274, 0x7276, 0x7277, 0x7278, 0x727B, 0x727C, - 0x727D, 0x7282, 0x7283, 0x7285, 0x7286, 0x7287, 0x7288, 0x7289, - 0x728C, 0x728E, 0x7290, 0x7291, 0x7293, 0x7294, 0x7295, 0x7296, - 0x7297, 0x7298, 0x7299, 0x729A, 0x729B, 0x729C, 0x729D, 0x729E, - 0x72A0, 0x72A1, 0x72A2, 0x72A3, 0x72A4, 0x72A5, 0x72A6, 0x72A7, - 0x72A8, 0x72A9, 0x72AA, 0x72AB, 0x72AE, 0x72B1, 0x72B2, 0x72B3, - 0x72B5, 0x72BA, 0x72BB, 0x72BC, 0x72BD, 0x72BE, 0x72BF, 0x72C0, - 0x72C5, 0x72C6, 0x72C7, 0x72C9, 0x72CA, 0x72CB, 0x72CC, 0x72CF, - 0x72D1, 0x72D3, 0x72D4, 0x72D5, 0x72D6, 0x72D8, 0x72DA, 0x72DB, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 25 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0x3000, 0x3001, 0x3002, 0x00B7, 0x02C9, 0x02C7, 0x00A8, 0x3003, - 0x3005, 0x2014, 0xFF5E, 0x2016, 0x2026, 0x2018, 0x2019, 0x201C, - 0x201D, 0x3014, 0x3015, 0x3008, 0x3009, 0x300A, 0x300B, 0x300C, - 0x300D, 0x300E, 0x300F, 0x3016, 0x3017, 0x3010, 0x3011, 0x00B1, - 0x00D7, 0x00F7, 0x2236, 0x2227, 0x2228, 0x2211, 0x220F, 0x222A, - 0x2229, 0x2208, 0x2237, 0x221A, 0x22A5, 0x2225, 0x2220, 0x2312, - 0x2299, 0x222B, 0x222E, 0x2261, 0x224C, 0x2248, 0x223D, 0x221D, - 0x2260, 0x226E, 0x226F, 0x2264, 0x2265, 0x221E, 0x2235, 0x2234, - 0x2642, 0x2640, 0x00B0, 0x2032, 0x2033, 0x2103, 0xFF04, 0x00A4, - 0xFFE0, 0xFFE1, 0x2030, 0x00A7, 0x2116, 0x2606, 0x2605, 0x25CB, - 0x25CF, 0x25CE, 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25B3, 0x25B2, - 0x203B, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x2170, 0x2171, - 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, - 0, 0, 0, 0, 0, 0, 0x2488, 0x2489, - 0x248A, 0x248B, 0x248C, 0x248D, 0x248E, 0x248F, 0x2490, 0x2491, - 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, 0x2497, 0x2498, 0x2499, -plane 26 -at 0x00 - 0x249A, 0x249B, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, 0x2479, - 0x247A, 0x247B, 0x247C, 0x247D, 0x247E, 0x247F, 0x2480, 0x2481, - 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, 0x2487, 0x2460, 0x2461, - 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, 0x2467, 0x2468, 0x2469, - 0, 0, 0x3220, 0x3221, 0x3222, 0x3223, 0x3224, 0x3225, - 0x3226, 0x3227, 0x3228, 0x3229, 0, 0, 0x2160, 0x2161, - 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, - 0x216A, 0x216B, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0xFF01, 0xFF02, 0xFF03, 0xFFE5, - 0xFF05, 0xFF06, 0xFF07, 0xFF08, 0xFF09, 0xFF0A, 0xFF0B, 0xFF0C, - 0xFF0D, 0xFF0E, 0xFF0F, 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, - 0xFF15, 0xFF16, 0xFF17, 0xFF18, 0xFF19, 0xFF1A, 0xFF1B, 0xFF1C, - 0xFF1D, 0xFF1E, 0xFF1F, 0xFF20, 0xFF21, 0xFF22, 0xFF23, 0xFF24, - 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, - 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, - 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0xFF3B, 0xFF3C, - 0xFF3D, 0xFF3E, 0xFF3F, 0xFF40, 0xFF41, 0xFF42, 0xFF43, 0xFF44, - 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, - 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, - 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0xFF5B, 0xFF5C, - 0xFF5D, 0xFFE3, 0, 0, 0, 0, 0, 0, -plane 27 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, - 0x3047, 0x3048, 0x3049, 0x304A, 0x304B, 0x304C, 0x304D, 0x304E, - 0x304F, 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, - 0x3057, 0x3058, 0x3059, 0x305A, 0x305B, 0x305C, 0x305D, 0x305E, - 0x305F, 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, - 0x3067, 0x3068, 0x3069, 0x306A, 0x306B, 0x306C, 0x306D, 0x306E, - 0x306F, 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, - 0x3077, 0x3078, 0x3079, 0x307A, 0x307B, 0x307C, 0x307D, 0x307E, - 0x307F, 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, - 0x3087, 0x3088, 0x3089, 0x308A, 0x308B, 0x308C, 0x308D, 0x308E, - 0x308F, 0x3090, 0x3091, 0x3092, 0x3093, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 28 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0x30A1, 0x30A2, 0x30A3, 0x30A4, 0x30A5, 0x30A6, 0x30A7, 0x30A8, - 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, 0x30B0, - 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, 0x30B8, - 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, 0x30C0, - 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, 0x30C8, - 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, 0x30D0, - 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, 0x30D8, - 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, 0x30E0, - 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0x30E7, 0x30E8, - 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EE, 0x30EF, 0x30F0, - 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, 0x30F6, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x0391, 0x0392, - 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039A, - 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, 0x03A0, 0x03A1, 0x03A3, - 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, 0x03A9, 0, 0, - 0, 0, 0, 0, 0, 0, 0x03B1, 0x03B2, - 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, 0x03B8, 0x03B9, 0x03BA, -plane 29 -at 0x00 - 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, 0x03C0, 0x03C1, 0x03C3, - 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, 0x03C9, 0, 0, - 0, 0, 0, 0, 0, 0xFE35, 0xFE36, 0xFE39, - 0xFE3A, 0xFE3F, 0xFE40, 0xFE3D, 0xFE3E, 0xFE41, 0xFE42, 0xFE43, - 0xFE44, 0, 0, 0xFE3B, 0xFE3C, 0xFE37, 0xFE38, 0xFE31, - 0, 0xFE33, 0xFE34, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x0410, 0x0411, 0x0412, 0x0413, - 0x0414, 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, - 0x041B, 0x041C, 0x041D, 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, - 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, - 0x042B, 0x042C, 0x042D, 0x042E, 0x042F, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x0430, 0x0431, 0x0432, 0x0433, - 0x0434, 0x0435, 0x0451, 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, - 0x043B, 0x043C, 0x043D, 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, - 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, - 0x044B, 0x044C, 0x044D, 0x044E, 0x044F, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x02CA, 0x02CB, 0x02D9, 0x2013, 0x2015, 0x2025, - 0x2035, 0x2105, 0x2109, 0x2196, 0x2197, 0x2198, 0x2199, 0x2215, -plane 30 -at 0x00 - 0x221F, 0x2223, 0x2252, 0x2266, 0x2267, 0x22BF, 0x2550, 0x2551, - 0x2552, 0x2553, 0x2554, 0x2555, 0x2556, 0x2557, 0x2558, 0x2559, - 0x255A, 0x255B, 0x255C, 0x255D, 0x255E, 0x255F, 0x2560, 0x2561, - 0x2562, 0x2563, 0x2564, 0x2565, 0x2566, 0x2567, 0x2568, 0x2569, - 0x256A, 0x256B, 0x256C, 0x256D, 0x256E, 0x256F, 0x2570, 0x2571, - 0x2572, 0x2573, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, - 0x2587, 0x2588, 0x2589, 0x258A, 0x258B, 0x258C, 0x258D, 0x258E, - 0x258F, 0x2593, 0x2594, 0x2595, 0x25BC, 0x25BD, 0x25E2, 0x25E3, - 0x25E4, 0x25E5, 0x2609, 0x2295, 0x3012, 0x301D, 0x301E, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x0101, 0x00E1, 0x01CE, 0x00E0, 0x0113, 0x00E9, - 0x011B, 0x00E8, 0x012B, 0x00ED, 0x01D0, 0x00EC, 0x014D, 0x00F3, - 0x01D2, 0x00F2, 0x016B, 0x00FA, 0x01D4, 0x00F9, 0x01D6, 0x01D8, - 0x01DA, 0x01DC, 0x00FC, 0x00EA, 0x0251, 0xE7C7, 0x0144, 0x0148, - 0xE7C8, 0x0261, 0, 0, 0, 0, 0x3105, 0x3106, - 0x3107, 0x3108, 0x3109, 0x310A, 0x310B, 0x310C, 0x310D, 0x310E, - 0x310F, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, - 0x3117, 0x3118, 0x3119, 0x311A, 0x311B, 0x311C, 0x311D, 0x311E, - 0x311F, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, - 0x3127, 0x3128, 0x3129, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027, 0x3028, - 0x3029, 0x32A3, 0x338E, 0x338F, 0x339C, 0x339D, 0x339E, 0x33A1, - 0x33C4, 0x33CE, 0x33D1, 0x33D2, 0x33D5, 0xFE30, 0xFFE2, 0xFFE4, - 0, 0x2121, 0x3231, 0, 0x2010, 0, 0, 0, - 0x30FC, 0x309B, 0x309C, 0x30FD, 0x30FE, 0x3006, 0x309D, 0x309E, - 0xFE49, 0xFE4A, 0xFE4B, 0xFE4C, 0xFE4D, 0xFE4E, 0xFE4F, 0xFE50, - 0xFE51, 0xFE52, 0xFE54, 0xFE55, 0xFE56, 0xFE57, 0xFE59, 0xFE5A, - 0xFE5B, 0xFE5C, 0xFE5D, 0xFE5E, 0xFE5F, 0xFE60, 0xFE61, 0xFE62, - 0xFE63, 0xFE64, 0xFE65, 0xFE66, 0xFE68, 0xFE69, 0xFE6A, 0xFE6B, - 0xE7E7, 0xE7E8, 0xE7E9, 0xE7EA, 0xE7EB, 0xE7EC, 0xE7ED, 0xE7EE, -plane 31 -at 0x00 - 0xE7EF, 0xE7F0, 0xE7F1, 0xE7F2, 0xE7F3, 0x3007, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0x2500, 0x2501, 0x2502, 0x2503, 0x2504, - 0x2505, 0x2506, 0x2507, 0x2508, 0x2509, 0x250A, 0x250B, 0x250C, - 0x250D, 0x250E, 0x250F, 0x2510, 0x2511, 0x2512, 0x2513, 0x2514, - 0x2515, 0x2516, 0x2517, 0x2518, 0x2519, 0x251A, 0x251B, 0x251C, - 0x251D, 0x251E, 0x251F, 0x2520, 0x2521, 0x2522, 0x2523, 0x2524, - 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252A, 0x252B, 0x252C, - 0x252D, 0x252E, 0x252F, 0x2530, 0x2531, 0x2532, 0x2533, 0x2534, - 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253A, 0x253B, 0x253C, - 0x253D, 0x253E, 0x253F, 0x2540, 0x2541, 0x2542, 0x2543, 0x2544, - 0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254A, 0x254B, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x72DC, 0x72DD, - 0x72DF, 0x72E2, 0x72E3, 0x72E4, 0x72E5, 0x72E6, 0x72E7, 0x72EA, - 0x72EB, 0x72F5, 0x72F6, 0x72F9, 0x72FD, 0x72FE, 0x72FF, 0x7300, - 0x7302, 0x7304, 0x7305, 0x7306, 0x7307, 0x7308, 0x7309, 0x730B, - 0x730C, 0x730D, 0x730F, 0x7310, 0x7311, 0x7312, 0x7314, 0x7318, - 0x7319, 0x731A, 0x731F, 0x7320, 0x7323, 0x7324, 0x7326, 0x7327, - 0x7328, 0x732D, 0x732F, 0x7330, 0x7332, 0x7333, 0x7335, 0x7336, - 0x733A, 0x733B, 0x733C, 0x733D, 0x7340, 0x7341, 0x7342, 0x7343, - 0x7344, 0x7345, 0x7346, 0x7347, 0x7348, 0x7349, 0x734A, 0x734B, - 0x734C, 0x734E, 0x734F, 0x7351, 0x7353, 0x7354, 0x7355, 0x7356, - 0x7358, 0x7359, 0x735A, 0x735B, 0x735C, 0x735D, 0x735E, 0x735F, - 0x7361, 0x7362, 0x7363, 0x7364, 0x7365, 0x7366, 0x7367, 0x7368, - 0x7369, 0x736A, 0x736B, 0x736E, 0x7370, 0x7371, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 32 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x7372, 0x7373, 0x7374, 0x7375, - 0x7376, 0x7377, 0x7378, 0x7379, 0x737A, 0x737B, 0x737C, 0x737D, - 0x737F, 0x7380, 0x7381, 0x7382, 0x7383, 0x7385, 0x7386, 0x7388, - 0x738A, 0x738C, 0x738D, 0x738F, 0x7390, 0x7392, 0x7393, 0x7394, - 0x7395, 0x7397, 0x7398, 0x7399, 0x739A, 0x739C, 0x739D, 0x739E, - 0x73A0, 0x73A1, 0x73A3, 0x73A4, 0x73A5, 0x73A6, 0x73A7, 0x73A8, - 0x73AA, 0x73AC, 0x73AD, 0x73B1, 0x73B4, 0x73B5, 0x73B6, 0x73B8, - 0x73B9, 0x73BC, 0x73BD, 0x73BE, 0x73BF, 0x73C1, 0x73C3, 0x73C4, - 0x73C5, 0x73C6, 0x73C7, 0x73CB, 0x73CC, 0x73CE, 0x73D2, 0x73D3, - 0x73D4, 0x73D5, 0x73D6, 0x73D7, 0x73D8, 0x73DA, 0x73DB, 0x73DC, - 0x73DD, 0x73DF, 0x73E1, 0x73E2, 0x73E3, 0x73E4, 0x73E6, 0x73E8, - 0x73EA, 0x73EB, 0x73EC, 0x73EE, 0x73EF, 0x73F0, 0x73F1, 0x73F3, - 0x73F4, 0x73F5, 0x73F6, 0x73F7, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x73F8, 0x73F9, 0x73FA, 0x73FB, 0x73FC, 0x73FD, - 0x73FE, 0x73FF, 0x7400, 0x7401, 0x7402, 0x7404, 0x7407, 0x7408, - 0x740B, 0x740C, 0x740D, 0x740E, 0x7411, 0x7412, 0x7413, 0x7414, -plane 33 -at 0x00 - 0x7415, 0x7416, 0x7417, 0x7418, 0x7419, 0x741C, 0x741D, 0x741E, - 0x741F, 0x7420, 0x7421, 0x7423, 0x7424, 0x7427, 0x7429, 0x742B, - 0x742D, 0x742F, 0x7431, 0x7432, 0x7437, 0x7438, 0x7439, 0x743A, - 0x743B, 0x743D, 0x743E, 0x743F, 0x7440, 0x7442, 0x7443, 0x7444, - 0x7445, 0x7446, 0x7447, 0x7448, 0x7449, 0x744A, 0x744B, 0x744C, - 0x744D, 0x744E, 0x744F, 0x7450, 0x7451, 0x7452, 0x7453, 0x7454, - 0x7456, 0x7458, 0x745D, 0x7460, 0x7461, 0x7462, 0x7463, 0x7464, - 0x7465, 0x7466, 0x7467, 0x7468, 0x7469, 0x746A, 0x746B, 0x746C, - 0x746E, 0x746F, 0x7471, 0x7472, 0x7473, 0x7474, 0x7475, 0x7478, - 0x7479, 0x747A, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0x747B, 0x747C, 0x747D, 0x747F, 0x7482, 0x7484, 0x7485, 0x7486, - 0x7488, 0x7489, 0x748A, 0x748C, 0x748D, 0x748F, 0x7491, 0x7492, - 0x7493, 0x7494, 0x7495, 0x7496, 0x7497, 0x7498, 0x7499, 0x749A, - 0x749B, 0x749D, 0x749F, 0x74A0, 0x74A1, 0x74A2, 0x74A3, 0x74A4, - 0x74A5, 0x74A6, 0x74AA, 0x74AB, 0x74AC, 0x74AD, 0x74AE, 0x74AF, - 0x74B0, 0x74B1, 0x74B2, 0x74B3, 0x74B4, 0x74B5, 0x74B6, 0x74B7, - 0x74B8, 0x74B9, 0x74BB, 0x74BC, 0x74BD, 0x74BE, 0x74BF, 0x74C0, - 0x74C1, 0x74C2, 0x74C3, 0x74C4, 0x74C5, 0x74C6, 0x74C7, 0x74C8, - 0x74C9, 0x74CA, 0x74CB, 0x74CC, 0x74CD, 0x74CE, 0x74CF, 0x74D0, - 0x74D1, 0x74D3, 0x74D4, 0x74D5, 0x74D6, 0x74D7, 0x74D8, 0x74D9, - 0x74DA, 0x74DB, 0x74DD, 0x74DF, 0x74E1, 0x74E5, 0x74E7, 0x74E8, -plane 34 -at 0x00 - 0x74E9, 0x74EA, 0x74EB, 0x74EC, 0x74ED, 0x74F0, 0x74F1, 0x74F2, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x74F3, 0x74F5, - 0x74F8, 0x74F9, 0x74FA, 0x74FB, 0x74FC, 0x74FD, 0x74FE, 0x7500, - 0x7501, 0x7502, 0x7503, 0x7505, 0x7506, 0x7507, 0x7508, 0x7509, - 0x750A, 0x750B, 0x750C, 0x750E, 0x7510, 0x7512, 0x7514, 0x7515, - 0x7516, 0x7517, 0x751B, 0x751D, 0x751E, 0x7520, 0x7521, 0x7522, - 0x7523, 0x7524, 0x7526, 0x7527, 0x752A, 0x752E, 0x7534, 0x7536, - 0x7539, 0x753C, 0x753D, 0x753F, 0x7541, 0x7542, 0x7543, 0x7544, - 0x7546, 0x7547, 0x7549, 0x754A, 0x754D, 0x7550, 0x7551, 0x7552, - 0x7553, 0x7555, 0x7556, 0x7557, 0x7558, 0x755D, 0x755E, 0x755F, - 0x7560, 0x7561, 0x7562, 0x7563, 0x7564, 0x7567, 0x7568, 0x7569, - 0x756B, 0x756C, 0x756D, 0x756E, 0x756F, 0x7570, 0x7571, 0x7573, - 0x7575, 0x7576, 0x7577, 0x757A, 0x757B, 0x757C, 0x757D, 0x757E, - 0x7580, 0x7581, 0x7582, 0x7584, 0x7585, 0x7587, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 35 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x7588, 0x7589, 0x758A, 0x758C, - 0x758D, 0x758E, 0x7590, 0x7593, 0x7595, 0x7598, 0x759B, 0x759C, - 0x759E, 0x75A2, 0x75A6, 0x75A7, 0x75A8, 0x75A9, 0x75AA, 0x75AD, - 0x75B6, 0x75B7, 0x75BA, 0x75BB, 0x75BF, 0x75C0, 0x75C1, 0x75C6, - 0x75CB, 0x75CC, 0x75CE, 0x75CF, 0x75D0, 0x75D1, 0x75D3, 0x75D7, - 0x75D9, 0x75DA, 0x75DC, 0x75DD, 0x75DF, 0x75E0, 0x75E1, 0x75E5, - 0x75E9, 0x75EC, 0x75ED, 0x75EE, 0x75EF, 0x75F2, 0x75F3, 0x75F5, - 0x75F6, 0x75F7, 0x75F8, 0x75FA, 0x75FB, 0x75FD, 0x75FE, 0x7602, - 0x7604, 0x7606, 0x7607, 0x7608, 0x7609, 0x760B, 0x760D, 0x760E, - 0x760F, 0x7611, 0x7612, 0x7613, 0x7614, 0x7616, 0x761A, 0x761C, - 0x761D, 0x761E, 0x7621, 0x7623, 0x7627, 0x7628, 0x762C, 0x762E, - 0x762F, 0x7631, 0x7632, 0x7636, 0x7637, 0x7639, 0x763A, 0x763B, - 0x763D, 0x7641, 0x7642, 0x7644, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x7645, 0x7646, 0x7647, 0x7648, 0x7649, 0x764A, - 0x764B, 0x764E, 0x764F, 0x7650, 0x7651, 0x7652, 0x7653, 0x7655, - 0x7657, 0x7658, 0x7659, 0x765A, 0x765B, 0x765D, 0x765F, 0x7660, - 0x7661, 0x7662, 0x7664, 0x7665, 0x7666, 0x7667, 0x7668, 0x7669, -plane 36 -at 0x00 - 0x766A, 0x766C, 0x766D, 0x766E, 0x7670, 0x7671, 0x7672, 0x7673, - 0x7674, 0x7675, 0x7676, 0x7677, 0x7679, 0x767A, 0x767C, 0x767F, - 0x7680, 0x7681, 0x7683, 0x7685, 0x7689, 0x768A, 0x768C, 0x768D, - 0x768F, 0x7690, 0x7692, 0x7694, 0x7695, 0x7697, 0x7698, 0x769A, - 0x769B, 0x769C, 0x769D, 0x769E, 0x769F, 0x76A0, 0x76A1, 0x76A2, - 0x76A3, 0x76A5, 0x76A6, 0x76A7, 0x76A8, 0x76A9, 0x76AA, 0x76AB, - 0x76AC, 0x76AD, 0x76AF, 0x76B0, 0x76B3, 0x76B5, 0x76B6, 0x76B7, - 0x76B8, 0x76B9, 0x76BA, 0x76BB, 0x76BC, 0x76BD, 0x76BE, 0x76C0, - 0x76C1, 0x76C3, 0x554A, 0x963F, 0x57C3, 0x6328, 0x54CE, 0x5509, - 0x54C0, 0x7691, 0x764C, 0x853C, 0x77EE, 0x827E, 0x788D, 0x7231, - 0x9698, 0x978D, 0x6C28, 0x5B89, 0x4FFA, 0x6309, 0x6697, 0x5CB8, - 0x80FA, 0x6848, 0x80AE, 0x6602, 0x76CE, 0x51F9, 0x6556, 0x71AC, - 0x7FF1, 0x8884, 0x50B2, 0x5965, 0x61CA, 0x6FB3, 0x82AD, 0x634C, - 0x6252, 0x53ED, 0x5427, 0x7B06, 0x516B, 0x75A4, 0x5DF4, 0x62D4, - 0x8DCB, 0x9776, 0x628A, 0x8019, 0x575D, 0x9738, 0x7F62, 0x7238, - 0x767D, 0x67CF, 0x767E, 0x6446, 0x4F70, 0x8D25, 0x62DC, 0x7A17, - 0x6591, 0x73ED, 0x642C, 0x6273, 0x822C, 0x9881, 0x677F, 0x7248, - 0x626E, 0x62CC, 0x4F34, 0x74E3, 0x534A, 0x529E, 0x7ECA, 0x90A6, - 0x5E2E, 0x6886, 0x699C, 0x8180, 0x7ED1, 0x68D2, 0x78C5, 0x868C, - 0x9551, 0x508D, 0x8C24, 0x82DE, 0x80DE, 0x5305, 0x8912, 0x5265, - 0x76C4, 0x76C7, 0x76C9, 0x76CB, 0x76CC, 0x76D3, 0x76D5, 0x76D9, - 0x76DA, 0x76DC, 0x76DD, 0x76DE, 0x76E0, 0x76E1, 0x76E2, 0x76E3, - 0x76E4, 0x76E6, 0x76E7, 0x76E8, 0x76E9, 0x76EA, 0x76EB, 0x76EC, - 0x76ED, 0x76F0, 0x76F3, 0x76F5, 0x76F6, 0x76F7, 0x76FA, 0x76FB, - 0x76FD, 0x76FF, 0x7700, 0x7702, 0x7703, 0x7705, 0x7706, 0x770A, - 0x770C, 0x770E, 0x770F, 0x7710, 0x7711, 0x7712, 0x7713, 0x7714, - 0x7715, 0x7716, 0x7717, 0x7718, 0x771B, 0x771C, 0x771D, 0x771E, - 0x7721, 0x7723, 0x7724, 0x7725, 0x7727, 0x772A, 0x772B, 0x772C, - 0x772E, 0x7730, 0x7731, 0x7732, 0x7733, 0x7734, 0x7739, 0x773B, - 0x773D, 0x773E, 0x773F, 0x7742, 0x7744, 0x7745, 0x7746, 0x7748, - 0x7749, 0x774A, 0x774B, 0x774C, 0x774D, 0x774E, 0x774F, 0x7752, - 0x7753, 0x7754, 0x7755, 0x7756, 0x7757, 0x7758, 0x7759, 0x775C, -plane 37 -at 0x00 - 0x8584, 0x96F9, 0x4FDD, 0x5821, 0x9971, 0x5B9D, 0x62B1, 0x62A5, - 0x66B4, 0x8C79, 0x9C8D, 0x7206, 0x676F, 0x7891, 0x60B2, 0x5351, - 0x5317, 0x8F88, 0x80CC, 0x8D1D, 0x94A1, 0x500D, 0x72C8, 0x5907, - 0x60EB, 0x7119, 0x88AB, 0x5954, 0x82EF, 0x672C, 0x7B28, 0x5D29, - 0x7EF7, 0x752D, 0x6CF5, 0x8E66, 0x8FF8, 0x903C, 0x9F3B, 0x6BD4, - 0x9119, 0x7B14, 0x5F7C, 0x78A7, 0x84D6, 0x853D, 0x6BD5, 0x6BD9, - 0x6BD6, 0x5E01, 0x5E87, 0x75F9, 0x95ED, 0x655D, 0x5F0A, 0x5FC5, - 0x8F9F, 0x58C1, 0x81C2, 0x907F, 0x965B, 0x97AD, 0x8FB9, 0x7F16, - 0x8D2C, 0x6241, 0x4FBF, 0x53D8, 0x535E, 0x8FA8, 0x8FA9, 0x8FAB, - 0x904D, 0x6807, 0x5F6A, 0x8198, 0x8868, 0x9CD6, 0x618B, 0x522B, - 0x762A, 0x5F6C, 0x658C, 0x6FD2, 0x6EE8, 0x5BBE, 0x6448, 0x5175, - 0x51B0, 0x67C4, 0x4E19, 0x79C9, 0x997C, 0x70B3, 0x775D, 0x775E, - 0x775F, 0x7760, 0x7764, 0x7767, 0x7769, 0x776A, 0x776D, 0x776E, - 0x776F, 0x7770, 0x7771, 0x7772, 0x7773, 0x7774, 0x7775, 0x7776, - 0x7777, 0x7778, 0x777A, 0x777B, 0x777C, 0x7781, 0x7782, 0x7783, - 0x7786, 0x7787, 0x7788, 0x7789, 0x778A, 0x778B, 0x778F, 0x7790, - 0x7793, 0x7794, 0x7795, 0x7796, 0x7797, 0x7798, 0x7799, 0x779A, - 0x779B, 0x779C, 0x779D, 0x779E, 0x77A1, 0x77A3, 0x77A4, 0x77A6, - 0x77A8, 0x77AB, 0x77AD, 0x77AE, 0x77AF, 0x77B1, 0x77B2, 0x77B4, - 0x77B6, 0x77B7, 0x77B8, 0x77B9, 0x77BA, 0x77BC, 0x77BE, 0x77C0, - 0x77C1, 0x77C2, 0x77C3, 0x77C4, 0x77C5, 0x77C6, 0x77C7, 0x77C8, - 0x77C9, 0x77CA, 0x77CB, 0x77CC, 0x77CE, 0x77CF, 0x77D0, 0x77D1, - 0x77D2, 0x77D3, 0x77D4, 0x77D5, 0x77D6, 0x77D8, 0x77D9, 0x77DA, - 0x77DD, 0x77DE, 0x77DF, 0x77E0, 0x77E1, 0x77E4, 0x75C5, 0x5E76, - 0x73BB, 0x83E0, 0x64AD, 0x62E8, 0x94B5, 0x6CE2, 0x535A, 0x52C3, - 0x640F, 0x94C2, 0x7B94, 0x4F2F, 0x5E1B, 0x8236, 0x8116, 0x818A, - 0x6E24, 0x6CCA, 0x9A73, 0x6355, 0x535C, 0x54FA, 0x8865, 0x57E0, - 0x4E0D, 0x5E03, 0x6B65, 0x7C3F, 0x90E8, 0x6016, 0x64E6, 0x731C, - 0x88C1, 0x6750, 0x624D, 0x8D22, 0x776C, 0x8E29, 0x91C7, 0x5F69, - 0x83DC, 0x8521, 0x9910, 0x53C2, 0x8695, 0x6B8B, 0x60ED, 0x60E8, - 0x707F, 0x82CD, 0x8231, 0x4ED3, 0x6CA7, 0x85CF, 0x64CD, 0x7CD9, - 0x69FD, 0x66F9, 0x8349, 0x5395, 0x7B56, 0x4FA7, 0x518C, 0x6D4B, -plane 38 -at 0x00 - 0x5C42, 0x8E6D, 0x63D2, 0x53C9, 0x832C, 0x8336, 0x67E5, 0x78B4, - 0x643D, 0x5BDF, 0x5C94, 0x5DEE, 0x8BE7, 0x62C6, 0x67F4, 0x8C7A, - 0x6400, 0x63BA, 0x8749, 0x998B, 0x8C17, 0x7F20, 0x94F2, 0x4EA7, - 0x9610, 0x98A4, 0x660C, 0x7316, 0x77E6, 0x77E8, 0x77EA, 0x77EF, - 0x77F0, 0x77F1, 0x77F2, 0x77F4, 0x77F5, 0x77F7, 0x77F9, 0x77FA, - 0x77FB, 0x77FC, 0x7803, 0x7804, 0x7805, 0x7806, 0x7807, 0x7808, - 0x780A, 0x780B, 0x780E, 0x780F, 0x7810, 0x7813, 0x7815, 0x7819, - 0x781B, 0x781E, 0x7820, 0x7821, 0x7822, 0x7824, 0x7828, 0x782A, - 0x782B, 0x782E, 0x782F, 0x7831, 0x7832, 0x7833, 0x7835, 0x7836, - 0x783D, 0x783F, 0x7841, 0x7842, 0x7843, 0x7844, 0x7846, 0x7848, - 0x7849, 0x784A, 0x784B, 0x784D, 0x784F, 0x7851, 0x7853, 0x7854, - 0x7858, 0x7859, 0x785A, 0x785B, 0x785C, 0x785E, 0x785F, 0x7860, - 0x7861, 0x7862, 0x7863, 0x7864, 0x7865, 0x7866, 0x7867, 0x7868, - 0x7869, 0x786F, 0x7870, 0x7871, 0x7872, 0x7873, 0x7874, 0x7875, - 0x7876, 0x7878, 0x7879, 0x787A, 0x787B, 0x787D, 0x787E, 0x787F, - 0x7880, 0x7881, 0x7882, 0x7883, 0x573A, 0x5C1D, 0x5E38, 0x957F, - 0x507F, 0x80A0, 0x5382, 0x655E, 0x7545, 0x5531, 0x5021, 0x8D85, - 0x6284, 0x949E, 0x671D, 0x5632, 0x6F6E, 0x5DE2, 0x5435, 0x7092, - 0x8F66, 0x626F, 0x64A4, 0x63A3, 0x5F7B, 0x6F88, 0x90F4, 0x81E3, - 0x8FB0, 0x5C18, 0x6668, 0x5FF1, 0x6C89, 0x9648, 0x8D81, 0x886C, - 0x6491, 0x79F0, 0x57CE, 0x6A59, 0x6210, 0x5448, 0x4E58, 0x7A0B, - 0x60E9, 0x6F84, 0x8BDA, 0x627F, 0x901E, 0x9A8B, 0x79E4, 0x5403, - 0x75F4, 0x6301, 0x5319, 0x6C60, 0x8FDF, 0x5F1B, 0x9A70, 0x803B, - 0x9F7F, 0x4F88, 0x5C3A, 0x8D64, 0x7FC5, 0x65A5, 0x70BD, 0x5145, - 0x51B2, 0x866B, 0x5D07, 0x5BA0, 0x62BD, 0x916C, 0x7574, 0x8E0C, - 0x7A20, 0x6101, 0x7B79, 0x4EC7, 0x7EF8, 0x7785, 0x4E11, 0x81ED, - 0x521D, 0x51FA, 0x6A71, 0x53A8, 0x8E87, 0x9504, 0x96CF, 0x6EC1, - 0x9664, 0x695A, 0x7884, 0x7885, 0x7886, 0x7888, 0x788A, 0x788B, - 0x788F, 0x7890, 0x7892, 0x7894, 0x7895, 0x7896, 0x7899, 0x789D, - 0x789E, 0x78A0, 0x78A2, 0x78A4, 0x78A6, 0x78A8, 0x78A9, 0x78AA, - 0x78AB, 0x78AC, 0x78AD, 0x78AE, 0x78AF, 0x78B5, 0x78B6, 0x78B7, - 0x78B8, 0x78BA, 0x78BB, 0x78BC, 0x78BD, 0x78BF, 0x78C0, 0x78C2, -plane 39 -at 0x00 - 0x78C3, 0x78C4, 0x78C6, 0x78C7, 0x78C8, 0x78CC, 0x78CD, 0x78CE, - 0x78CF, 0x78D1, 0x78D2, 0x78D3, 0x78D6, 0x78D7, 0x78D8, 0x78DA, - 0x78DB, 0x78DC, 0x78DD, 0x78DE, 0x78DF, 0x78E0, 0x78E1, 0x78E2, - 0x78E3, 0x78E4, 0x78E5, 0x78E6, 0x78E7, 0x78E9, 0x78EA, 0x78EB, - 0x78ED, 0x78EE, 0x78EF, 0x78F0, 0x78F1, 0x78F3, 0x78F5, 0x78F6, - 0x78F8, 0x78F9, 0x78FB, 0x78FC, 0x78FD, 0x78FE, 0x78FF, 0x7900, - 0x7902, 0x7903, 0x7904, 0x7906, 0x7907, 0x7908, 0x7909, 0x790A, - 0x790B, 0x790C, 0x7840, 0x50A8, 0x77D7, 0x6410, 0x89E6, 0x5904, - 0x63E3, 0x5DDD, 0x7A7F, 0x693D, 0x4F20, 0x8239, 0x5598, 0x4E32, - 0x75AE, 0x7A97, 0x5E62, 0x5E8A, 0x95EF, 0x521B, 0x5439, 0x708A, - 0x6376, 0x9524, 0x5782, 0x6625, 0x693F, 0x9187, 0x5507, 0x6DF3, - 0x7EAF, 0x8822, 0x6233, 0x7EF0, 0x75B5, 0x8328, 0x78C1, 0x96CC, - 0x8F9E, 0x6148, 0x74F7, 0x8BCD, 0x6B64, 0x523A, 0x8D50, 0x6B21, - 0x806A, 0x8471, 0x56F1, 0x5306, 0x4ECE, 0x4E1B, 0x51D1, 0x7C97, - 0x918B, 0x7C07, 0x4FC3, 0x8E7F, 0x7BE1, 0x7A9C, 0x6467, 0x5D14, - 0x50AC, 0x8106, 0x7601, 0x7CB9, 0x6DEC, 0x7FE0, 0x6751, 0x5B58, - 0x5BF8, 0x78CB, 0x64AE, 0x6413, 0x63AA, 0x632B, 0x9519, 0x642D, - 0x8FBE, 0x7B54, 0x7629, 0x6253, 0x5927, 0x5446, 0x6B79, 0x50A3, - 0x6234, 0x5E26, 0x6B86, 0x4EE3, 0x8D37, 0x888B, 0x5F85, 0x902E, - 0x790D, 0x790E, 0x790F, 0x7910, 0x7911, 0x7912, 0x7914, 0x7915, - 0x7916, 0x7917, 0x7918, 0x7919, 0x791A, 0x791B, 0x791C, 0x791D, - 0x791F, 0x7920, 0x7921, 0x7922, 0x7923, 0x7925, 0x7926, 0x7927, - 0x7928, 0x7929, 0x792A, 0x792B, 0x792C, 0x792D, 0x792E, 0x792F, - 0x7930, 0x7931, 0x7932, 0x7933, 0x7935, 0x7936, 0x7937, 0x7938, - 0x7939, 0x793D, 0x793F, 0x7942, 0x7943, 0x7944, 0x7945, 0x7947, - 0x794A, 0x794B, 0x794C, 0x794D, 0x794E, 0x794F, 0x7950, 0x7951, - 0x7952, 0x7954, 0x7955, 0x7958, 0x7959, 0x7961, 0x7963, 0x7964, - 0x7966, 0x7969, 0x796A, 0x796B, 0x796C, 0x796E, 0x7970, 0x7971, - 0x7972, 0x7973, 0x7974, 0x7975, 0x7976, 0x7979, 0x797B, 0x797C, - 0x797D, 0x797E, 0x797F, 0x7982, 0x7983, 0x7986, 0x7987, 0x7988, - 0x7989, 0x798B, 0x798C, 0x798D, 0x798E, 0x7990, 0x7991, 0x7992, - 0x6020, 0x803D, 0x62C5, 0x4E39, 0x5355, 0x90F8, 0x63B8, 0x80C6, -plane 40 -at 0x00 - 0x65E6, 0x6C2E, 0x4F46, 0x60EE, 0x6DE1, 0x8BDE, 0x5F39, 0x86CB, - 0x5F53, 0x6321, 0x515A, 0x8361, 0x6863, 0x5200, 0x6363, 0x8E48, - 0x5012, 0x5C9B, 0x7977, 0x5BFC, 0x5230, 0x7A3B, 0x60BC, 0x9053, - 0x76D7, 0x5FB7, 0x5F97, 0x7684, 0x8E6C, 0x706F, 0x767B, 0x7B49, - 0x77AA, 0x51F3, 0x9093, 0x5824, 0x4F4E, 0x6EF4, 0x8FEA, 0x654C, - 0x7B1B, 0x72C4, 0x6DA4, 0x7FDF, 0x5AE1, 0x62B5, 0x5E95, 0x5730, - 0x8482, 0x7B2C, 0x5E1D, 0x5F1F, 0x9012, 0x7F14, 0x98A0, 0x6382, - 0x6EC7, 0x7898, 0x70B9, 0x5178, 0x975B, 0x57AB, 0x7535, 0x4F43, - 0x7538, 0x5E97, 0x60E6, 0x5960, 0x6DC0, 0x6BBF, 0x7889, 0x53FC, - 0x96D5, 0x51CB, 0x5201, 0x6389, 0x540A, 0x9493, 0x8C03, 0x8DCC, - 0x7239, 0x789F, 0x8776, 0x8FED, 0x8C0D, 0x53E0, 0x7993, 0x7994, - 0x7995, 0x7996, 0x7997, 0x7998, 0x7999, 0x799B, 0x799C, 0x799D, - 0x799E, 0x799F, 0x79A0, 0x79A1, 0x79A2, 0x79A3, 0x79A4, 0x79A5, - 0x79A6, 0x79A8, 0x79A9, 0x79AA, 0x79AB, 0x79AC, 0x79AD, 0x79AE, - 0x79AF, 0x79B0, 0x79B1, 0x79B2, 0x79B4, 0x79B5, 0x79B6, 0x79B7, - 0x79B8, 0x79BC, 0x79BF, 0x79C2, 0x79C4, 0x79C5, 0x79C7, 0x79C8, - 0x79CA, 0x79CC, 0x79CE, 0x79CF, 0x79D0, 0x79D3, 0x79D4, 0x79D6, - 0x79D7, 0x79D9, 0x79DA, 0x79DB, 0x79DC, 0x79DD, 0x79DE, 0x79E0, - 0x79E1, 0x79E2, 0x79E5, 0x79E8, 0x79EA, 0x79EC, 0x79EE, 0x79F1, - 0x79F2, 0x79F3, 0x79F4, 0x79F5, 0x79F6, 0x79F7, 0x79F9, 0x79FA, - 0x79FC, 0x79FE, 0x79FF, 0x7A01, 0x7A04, 0x7A05, 0x7A07, 0x7A08, - 0x7A09, 0x7A0A, 0x7A0C, 0x7A0F, 0x7A10, 0x7A11, 0x7A12, 0x7A13, - 0x7A15, 0x7A16, 0x7A18, 0x7A19, 0x7A1B, 0x7A1C, 0x4E01, 0x76EF, - 0x53EE, 0x9489, 0x9876, 0x9F0E, 0x952D, 0x5B9A, 0x8BA2, 0x4E22, - 0x4E1C, 0x51AC, 0x8463, 0x61C2, 0x52A8, 0x680B, 0x4F97, 0x606B, - 0x51BB, 0x6D1E, 0x515C, 0x6296, 0x6597, 0x9661, 0x8C46, 0x9017, - 0x75D8, 0x90FD, 0x7763, 0x6BD2, 0x728A, 0x72EC, 0x8BFB, 0x5835, - 0x7779, 0x8D4C, 0x675C, 0x9540, 0x809A, 0x5EA6, 0x6E21, 0x5992, - 0x7AEF, 0x77ED, 0x953B, 0x6BB5, 0x65AD, 0x7F0E, 0x5806, 0x5151, - 0x961F, 0x5BF9, 0x58A9, 0x5428, 0x8E72, 0x6566, 0x987F, 0x56E4, - 0x949D, 0x76FE, 0x9041, 0x6387, 0x54C6, 0x591A, 0x593A, 0x579B, - 0x8EB2, 0x6735, 0x8DFA, 0x8235, 0x5241, 0x60F0, 0x5815, 0x86FE, -plane 41 -at 0x00 - 0x5CE8, 0x9E45, 0x4FC4, 0x989D, 0x8BB9, 0x5A25, 0x6076, 0x5384, - 0x627C, 0x904F, 0x9102, 0x997F, 0x6069, 0x800C, 0x513F, 0x8033, - 0x5C14, 0x9975, 0x6D31, 0x4E8C, 0x7A1D, 0x7A1F, 0x7A21, 0x7A22, - 0x7A24, 0x7A25, 0x7A26, 0x7A27, 0x7A28, 0x7A29, 0x7A2A, 0x7A2B, - 0x7A2C, 0x7A2D, 0x7A2E, 0x7A2F, 0x7A30, 0x7A31, 0x7A32, 0x7A34, - 0x7A35, 0x7A36, 0x7A38, 0x7A3A, 0x7A3E, 0x7A40, 0x7A41, 0x7A42, - 0x7A43, 0x7A44, 0x7A45, 0x7A47, 0x7A48, 0x7A49, 0x7A4A, 0x7A4B, - 0x7A4C, 0x7A4D, 0x7A4E, 0x7A4F, 0x7A50, 0x7A52, 0x7A53, 0x7A54, - 0x7A55, 0x7A56, 0x7A58, 0x7A59, 0x7A5A, 0x7A5B, 0x7A5C, 0x7A5D, - 0x7A5E, 0x7A5F, 0x7A60, 0x7A61, 0x7A62, 0x7A63, 0x7A64, 0x7A65, - 0x7A66, 0x7A67, 0x7A68, 0x7A69, 0x7A6A, 0x7A6B, 0x7A6C, 0x7A6D, - 0x7A6E, 0x7A6F, 0x7A71, 0x7A72, 0x7A73, 0x7A75, 0x7A7B, 0x7A7C, - 0x7A7D, 0x7A7E, 0x7A82, 0x7A85, 0x7A87, 0x7A89, 0x7A8A, 0x7A8B, - 0x7A8C, 0x7A8E, 0x7A8F, 0x7A90, 0x7A93, 0x7A94, 0x7A99, 0x7A9A, - 0x7A9B, 0x7A9E, 0x7AA1, 0x7AA2, 0x8D30, 0x53D1, 0x7F5A, 0x7B4F, - 0x4F10, 0x4E4F, 0x9600, 0x6CD5, 0x73D0, 0x85E9, 0x5E06, 0x756A, - 0x7FFB, 0x6A0A, 0x77FE, 0x9492, 0x7E41, 0x51E1, 0x70E6, 0x53CD, - 0x8FD4, 0x8303, 0x8D29, 0x72AF, 0x996D, 0x6CDB, 0x574A, 0x82B3, - 0x65B9, 0x80AA, 0x623F, 0x9632, 0x59A8, 0x4EFF, 0x8BBF, 0x7EBA, - 0x653E, 0x83F2, 0x975E, 0x5561, 0x98DE, 0x80A5, 0x532A, 0x8BFD, - 0x5420, 0x80BA, 0x5E9F, 0x6CB8, 0x8D39, 0x82AC, 0x915A, 0x5429, - 0x6C1B, 0x5206, 0x7EB7, 0x575F, 0x711A, 0x6C7E, 0x7C89, 0x594B, - 0x4EFD, 0x5FFF, 0x6124, 0x7CAA, 0x4E30, 0x5C01, 0x67AB, 0x8702, - 0x5CF0, 0x950B, 0x98CE, 0x75AF, 0x70FD, 0x9022, 0x51AF, 0x7F1D, - 0x8BBD, 0x5949, 0x51E4, 0x4F5B, 0x5426, 0x592B, 0x6577, 0x80A4, - 0x5B75, 0x6276, 0x62C2, 0x8F90, 0x5E45, 0x6C1F, 0x7B26, 0x4F0F, - 0x4FD8, 0x670D, 0x7AA3, 0x7AA4, 0x7AA7, 0x7AA9, 0x7AAA, 0x7AAB, - 0x7AAE, 0x7AAF, 0x7AB0, 0x7AB1, 0x7AB2, 0x7AB4, 0x7AB5, 0x7AB6, - 0x7AB7, 0x7AB8, 0x7AB9, 0x7ABA, 0x7ABB, 0x7ABC, 0x7ABD, 0x7ABE, - 0x7AC0, 0x7AC1, 0x7AC2, 0x7AC3, 0x7AC4, 0x7AC5, 0x7AC6, 0x7AC7, - 0x7AC8, 0x7AC9, 0x7ACA, 0x7ACC, 0x7ACD, 0x7ACE, 0x7ACF, 0x7AD0, - 0x7AD1, 0x7AD2, 0x7AD3, 0x7AD4, 0x7AD5, 0x7AD7, 0x7AD8, 0x7ADA, -plane 42 -at 0x00 - 0x7ADB, 0x7ADC, 0x7ADD, 0x7AE1, 0x7AE2, 0x7AE4, 0x7AE7, 0x7AE8, - 0x7AE9, 0x7AEA, 0x7AEB, 0x7AEC, 0x7AEE, 0x7AF0, 0x7AF1, 0x7AF2, - 0x7AF3, 0x7AF4, 0x7AF5, 0x7AF6, 0x7AF7, 0x7AF8, 0x7AFB, 0x7AFC, - 0x7AFE, 0x7B00, 0x7B01, 0x7B02, 0x7B05, 0x7B07, 0x7B09, 0x7B0C, - 0x7B0D, 0x7B0E, 0x7B10, 0x7B12, 0x7B13, 0x7B16, 0x7B17, 0x7B18, - 0x7B1A, 0x7B1C, 0x7B1D, 0x7B1F, 0x7B21, 0x7B22, 0x7B23, 0x7B27, - 0x7B29, 0x7B2D, 0x6D6E, 0x6DAA, 0x798F, 0x88B1, 0x5F17, 0x752B, - 0x629A, 0x8F85, 0x4FEF, 0x91DC, 0x65A7, 0x812F, 0x8151, 0x5E9C, - 0x8150, 0x8D74, 0x526F, 0x8986, 0x8D4B, 0x590D, 0x5085, 0x4ED8, - 0x961C, 0x7236, 0x8179, 0x8D1F, 0x5BCC, 0x8BA3, 0x9644, 0x5987, - 0x7F1A, 0x5490, 0x5676, 0x560E, 0x8BE5, 0x6539, 0x6982, 0x9499, - 0x76D6, 0x6E89, 0x5E72, 0x7518, 0x6746, 0x67D1, 0x7AFF, 0x809D, - 0x8D76, 0x611F, 0x79C6, 0x6562, 0x8D63, 0x5188, 0x521A, 0x94A2, - 0x7F38, 0x809B, 0x7EB2, 0x5C97, 0x6E2F, 0x6760, 0x7BD9, 0x768B, - 0x9AD8, 0x818F, 0x7F94, 0x7CD5, 0x641E, 0x9550, 0x7A3F, 0x544A, - 0x54E5, 0x6B4C, 0x6401, 0x6208, 0x9E3D, 0x80F3, 0x7599, 0x5272, - 0x9769, 0x845B, 0x683C, 0x86E4, 0x9601, 0x9694, 0x94EC, 0x4E2A, - 0x5404, 0x7ED9, 0x6839, 0x8DDF, 0x8015, 0x66F4, 0x5E9A, 0x7FB9, - 0x7B2F, 0x7B30, 0x7B32, 0x7B34, 0x7B35, 0x7B36, 0x7B37, 0x7B39, - 0x7B3B, 0x7B3D, 0x7B3F, 0x7B40, 0x7B41, 0x7B42, 0x7B43, 0x7B44, - 0x7B46, 0x7B48, 0x7B4A, 0x7B4D, 0x7B4E, 0x7B53, 0x7B55, 0x7B57, - 0x7B59, 0x7B5C, 0x7B5E, 0x7B5F, 0x7B61, 0x7B63, 0x7B64, 0x7B65, - 0x7B66, 0x7B67, 0x7B68, 0x7B69, 0x7B6A, 0x7B6B, 0x7B6C, 0x7B6D, - 0x7B6F, 0x7B70, 0x7B73, 0x7B74, 0x7B76, 0x7B78, 0x7B7A, 0x7B7C, - 0x7B7D, 0x7B7F, 0x7B81, 0x7B82, 0x7B83, 0x7B84, 0x7B86, 0x7B87, - 0x7B88, 0x7B89, 0x7B8A, 0x7B8B, 0x7B8C, 0x7B8E, 0x7B8F, 0x7B91, - 0x7B92, 0x7B93, 0x7B96, 0x7B98, 0x7B99, 0x7B9A, 0x7B9B, 0x7B9E, - 0x7B9F, 0x7BA0, 0x7BA3, 0x7BA4, 0x7BA5, 0x7BAE, 0x7BAF, 0x7BB0, - 0x7BB2, 0x7BB3, 0x7BB5, 0x7BB6, 0x7BB7, 0x7BB9, 0x7BBA, 0x7BBB, - 0x7BBC, 0x7BBD, 0x7BBE, 0x7BBF, 0x7BC0, 0x7BC2, 0x7BC3, 0x7BC4, - 0x57C2, 0x803F, 0x6897, 0x5DE5, 0x653B, 0x529F, 0x606D, 0x9F9A, - 0x4F9B, 0x8EAC, 0x516C, 0x5BAB, 0x5F13, 0x5DE9, 0x6C5E, 0x62F1, -plane 43 -at 0x00 - 0x8D21, 0x5171, 0x94A9, 0x52FE, 0x6C9F, 0x82DF, 0x72D7, 0x57A2, - 0x6784, 0x8D2D, 0x591F, 0x8F9C, 0x83C7, 0x5495, 0x7B8D, 0x4F30, - 0x6CBD, 0x5B64, 0x59D1, 0x9F13, 0x53E4, 0x86CA, 0x9AA8, 0x8C37, - 0x80A1, 0x6545, 0x987E, 0x56FA, 0x96C7, 0x522E, 0x74DC, 0x5250, - 0x5BE1, 0x6302, 0x8902, 0x4E56, 0x62D0, 0x602A, 0x68FA, 0x5173, - 0x5B98, 0x51A0, 0x89C2, 0x7BA1, 0x9986, 0x7F50, 0x60EF, 0x704C, - 0x8D2F, 0x5149, 0x5E7F, 0x901B, 0x7470, 0x89C4, 0x572D, 0x7845, - 0x5F52, 0x9F9F, 0x95FA, 0x8F68, 0x9B3C, 0x8BE1, 0x7678, 0x6842, - 0x67DC, 0x8DEA, 0x8D35, 0x523D, 0x8F8A, 0x6EDA, 0x68CD, 0x9505, - 0x90ED, 0x56FD, 0x679C, 0x88F9, 0x8FC7, 0x54C8, 0x7BC5, 0x7BC8, - 0x7BC9, 0x7BCA, 0x7BCB, 0x7BCD, 0x7BCE, 0x7BCF, 0x7BD0, 0x7BD2, - 0x7BD4, 0x7BD5, 0x7BD6, 0x7BD7, 0x7BD8, 0x7BDB, 0x7BDC, 0x7BDE, - 0x7BDF, 0x7BE0, 0x7BE2, 0x7BE3, 0x7BE4, 0x7BE7, 0x7BE8, 0x7BE9, - 0x7BEB, 0x7BEC, 0x7BED, 0x7BEF, 0x7BF0, 0x7BF2, 0x7BF3, 0x7BF4, - 0x7BF5, 0x7BF6, 0x7BF8, 0x7BF9, 0x7BFA, 0x7BFB, 0x7BFD, 0x7BFF, - 0x7C00, 0x7C01, 0x7C02, 0x7C03, 0x7C04, 0x7C05, 0x7C06, 0x7C08, - 0x7C09, 0x7C0A, 0x7C0D, 0x7C0E, 0x7C10, 0x7C11, 0x7C12, 0x7C13, - 0x7C14, 0x7C15, 0x7C17, 0x7C18, 0x7C19, 0x7C1A, 0x7C1B, 0x7C1C, - 0x7C1D, 0x7C1E, 0x7C20, 0x7C21, 0x7C22, 0x7C23, 0x7C24, 0x7C25, - 0x7C28, 0x7C29, 0x7C2B, 0x7C2C, 0x7C2D, 0x7C2E, 0x7C2F, 0x7C30, - 0x7C31, 0x7C32, 0x7C33, 0x7C34, 0x7C35, 0x7C36, 0x7C37, 0x7C39, - 0x7C3A, 0x7C3B, 0x7C3C, 0x7C3D, 0x7C3E, 0x7C42, 0x9AB8, 0x5B69, - 0x6D77, 0x6C26, 0x4EA5, 0x5BB3, 0x9A87, 0x9163, 0x61A8, 0x90AF, - 0x97E9, 0x542B, 0x6DB5, 0x5BD2, 0x51FD, 0x558A, 0x7F55, 0x7FF0, - 0x64BC, 0x634D, 0x65F1, 0x61BE, 0x608D, 0x710A, 0x6C57, 0x6C49, - 0x592F, 0x676D, 0x822A, 0x58D5, 0x568E, 0x8C6A, 0x6BEB, 0x90DD, - 0x597D, 0x8017, 0x53F7, 0x6D69, 0x5475, 0x559D, 0x8377, 0x83CF, - 0x6838, 0x79BE, 0x548C, 0x4F55, 0x5408, 0x76D2, 0x8C89, 0x9602, - 0x6CB3, 0x6DB8, 0x8D6B, 0x8910, 0x9E64, 0x8D3A, 0x563F, 0x9ED1, - 0x75D5, 0x5F88, 0x72E0, 0x6068, 0x54FC, 0x4EA8, 0x6A2A, 0x8861, - 0x6052, 0x8F70, 0x54C4, 0x70D8, 0x8679, 0x9E3F, 0x6D2A, 0x5B8F, - 0x5F18, 0x7EA2, 0x5589, 0x4FAF, 0x7334, 0x543C, 0x539A, 0x5019, -plane 44 -at 0x00 - 0x540E, 0x547C, 0x4E4E, 0x5FFD, 0x745A, 0x58F6, 0x846B, 0x80E1, - 0x8774, 0x72D0, 0x7CCA, 0x6E56, 0x7C43, 0x7C44, 0x7C45, 0x7C46, - 0x7C47, 0x7C48, 0x7C49, 0x7C4A, 0x7C4B, 0x7C4C, 0x7C4E, 0x7C4F, - 0x7C50, 0x7C51, 0x7C52, 0x7C53, 0x7C54, 0x7C55, 0x7C56, 0x7C57, - 0x7C58, 0x7C59, 0x7C5A, 0x7C5B, 0x7C5C, 0x7C5D, 0x7C5E, 0x7C5F, - 0x7C60, 0x7C61, 0x7C62, 0x7C63, 0x7C64, 0x7C65, 0x7C66, 0x7C67, - 0x7C68, 0x7C69, 0x7C6A, 0x7C6B, 0x7C6C, 0x7C6D, 0x7C6E, 0x7C6F, - 0x7C70, 0x7C71, 0x7C72, 0x7C75, 0x7C76, 0x7C77, 0x7C78, 0x7C79, - 0x7C7A, 0x7C7E, 0x7C7F, 0x7C80, 0x7C81, 0x7C82, 0x7C83, 0x7C84, - 0x7C85, 0x7C86, 0x7C87, 0x7C88, 0x7C8A, 0x7C8B, 0x7C8C, 0x7C8D, - 0x7C8E, 0x7C8F, 0x7C90, 0x7C93, 0x7C94, 0x7C96, 0x7C99, 0x7C9A, - 0x7C9B, 0x7CA0, 0x7CA1, 0x7CA3, 0x7CA6, 0x7CA7, 0x7CA8, 0x7CA9, - 0x7CAB, 0x7CAC, 0x7CAD, 0x7CAF, 0x7CB0, 0x7CB4, 0x7CB5, 0x7CB6, - 0x7CB7, 0x7CB8, 0x7CBA, 0x7CBB, 0x5F27, 0x864E, 0x552C, 0x62A4, - 0x4E92, 0x6CAA, 0x6237, 0x82B1, 0x54D7, 0x534E, 0x733E, 0x6ED1, - 0x753B, 0x5212, 0x5316, 0x8BDD, 0x69D0, 0x5F8A, 0x6000, 0x6DEE, - 0x574F, 0x6B22, 0x73AF, 0x6853, 0x8FD8, 0x7F13, 0x6362, 0x60A3, - 0x5524, 0x75EA, 0x8C62, 0x7115, 0x6DA3, 0x5BA6, 0x5E7B, 0x8352, - 0x614C, 0x9EC4, 0x78FA, 0x8757, 0x7C27, 0x7687, 0x51F0, 0x60F6, - 0x714C, 0x6643, 0x5E4C, 0x604D, 0x8C0E, 0x7070, 0x6325, 0x8F89, - 0x5FBD, 0x6062, 0x86D4, 0x56DE, 0x6BC1, 0x6094, 0x6167, 0x5349, - 0x60E0, 0x6666, 0x8D3F, 0x79FD, 0x4F1A, 0x70E9, 0x6C47, 0x8BB3, - 0x8BF2, 0x7ED8, 0x8364, 0x660F, 0x5A5A, 0x9B42, 0x6D51, 0x6DF7, - 0x8C41, 0x6D3B, 0x4F19, 0x706B, 0x83B7, 0x6216, 0x60D1, 0x970D, - 0x8D27, 0x7978, 0x51FB, 0x573E, 0x57FA, 0x673A, 0x7578, 0x7A3D, - 0x79EF, 0x7B95, 0x7CBF, 0x7CC0, 0x7CC2, 0x7CC3, 0x7CC4, 0x7CC6, - 0x7CC9, 0x7CCB, 0x7CCE, 0x7CCF, 0x7CD0, 0x7CD1, 0x7CD2, 0x7CD3, - 0x7CD4, 0x7CD8, 0x7CDA, 0x7CDB, 0x7CDD, 0x7CDE, 0x7CE1, 0x7CE2, - 0x7CE3, 0x7CE4, 0x7CE5, 0x7CE6, 0x7CE7, 0x7CE9, 0x7CEA, 0x7CEB, - 0x7CEC, 0x7CED, 0x7CEE, 0x7CF0, 0x7CF1, 0x7CF2, 0x7CF3, 0x7CF4, - 0x7CF5, 0x7CF6, 0x7CF7, 0x7CF9, 0x7CFA, 0x7CFC, 0x7CFD, 0x7CFE, - 0x7CFF, 0x7D00, 0x7D01, 0x7D02, 0x7D03, 0x7D04, 0x7D05, 0x7D06, -plane 45 -at 0x00 - 0x7D07, 0x7D08, 0x7D09, 0x7D0B, 0x7D0C, 0x7D0D, 0x7D0E, 0x7D0F, - 0x7D10, 0x7D11, 0x7D12, 0x7D13, 0x7D14, 0x7D15, 0x7D16, 0x7D17, - 0x7D18, 0x7D19, 0x7D1A, 0x7D1B, 0x7D1C, 0x7D1D, 0x7D1E, 0x7D1F, - 0x7D21, 0x7D23, 0x7D24, 0x7D25, 0x7D26, 0x7D28, 0x7D29, 0x7D2A, - 0x7D2C, 0x7D2D, 0x7D2E, 0x7D30, 0x7D31, 0x7D32, 0x7D33, 0x7D34, - 0x7D35, 0x7D36, 0x808C, 0x9965, 0x8FF9, 0x6FC0, 0x8BA5, 0x9E21, - 0x59EC, 0x7EE9, 0x7F09, 0x5409, 0x6781, 0x68D8, 0x8F91, 0x7C4D, - 0x96C6, 0x53CA, 0x6025, 0x75BE, 0x6C72, 0x5373, 0x5AC9, 0x7EA7, - 0x6324, 0x51E0, 0x810A, 0x5DF1, 0x84DF, 0x6280, 0x5180, 0x5B63, - 0x4F0E, 0x796D, 0x5242, 0x60B8, 0x6D4E, 0x5BC4, 0x5BC2, 0x8BA1, - 0x8BB0, 0x65E2, 0x5FCC, 0x9645, 0x5993, 0x7EE7, 0x7EAA, 0x5609, - 0x67B7, 0x5939, 0x4F73, 0x5BB6, 0x52A0, 0x835A, 0x988A, 0x8D3E, - 0x7532, 0x94BE, 0x5047, 0x7A3C, 0x4EF7, 0x67B6, 0x9A7E, 0x5AC1, - 0x6B7C, 0x76D1, 0x575A, 0x5C16, 0x7B3A, 0x95F4, 0x714E, 0x517C, - 0x80A9, 0x8270, 0x5978, 0x7F04, 0x8327, 0x68C0, 0x67EC, 0x78B1, - 0x7877, 0x62E3, 0x6361, 0x7B80, 0x4FED, 0x526A, 0x51CF, 0x8350, - 0x69DB, 0x9274, 0x8DF5, 0x8D31, 0x89C1, 0x952E, 0x7BAD, 0x4EF6, - 0x7D37, 0x7D38, 0x7D39, 0x7D3A, 0x7D3B, 0x7D3C, 0x7D3D, 0x7D3E, - 0x7D3F, 0x7D40, 0x7D41, 0x7D42, 0x7D43, 0x7D44, 0x7D45, 0x7D46, - 0x7D47, 0x7D48, 0x7D49, 0x7D4A, 0x7D4B, 0x7D4C, 0x7D4D, 0x7D4E, - 0x7D4F, 0x7D50, 0x7D51, 0x7D52, 0x7D53, 0x7D54, 0x7D55, 0x7D56, - 0x7D57, 0x7D58, 0x7D59, 0x7D5A, 0x7D5B, 0x7D5C, 0x7D5D, 0x7D5E, - 0x7D5F, 0x7D60, 0x7D61, 0x7D62, 0x7D63, 0x7D64, 0x7D65, 0x7D66, - 0x7D67, 0x7D68, 0x7D69, 0x7D6A, 0x7D6B, 0x7D6C, 0x7D6D, 0x7D6F, - 0x7D70, 0x7D71, 0x7D72, 0x7D73, 0x7D74, 0x7D75, 0x7D76, 0x7D78, - 0x7D79, 0x7D7A, 0x7D7B, 0x7D7C, 0x7D7D, 0x7D7E, 0x7D7F, 0x7D80, - 0x7D81, 0x7D82, 0x7D83, 0x7D84, 0x7D85, 0x7D86, 0x7D87, 0x7D88, - 0x7D89, 0x7D8A, 0x7D8B, 0x7D8C, 0x7D8D, 0x7D8E, 0x7D8F, 0x7D90, - 0x7D91, 0x7D92, 0x7D93, 0x7D94, 0x7D95, 0x7D96, 0x7D97, 0x7D98, - 0x5065, 0x8230, 0x5251, 0x996F, 0x6E10, 0x6E85, 0x6DA7, 0x5EFA, - 0x50F5, 0x59DC, 0x5C06, 0x6D46, 0x6C5F, 0x7586, 0x848B, 0x6868, - 0x5956, 0x8BB2, 0x5320, 0x9171, 0x964D, 0x8549, 0x6912, 0x7901, -plane 46 -at 0x00 - 0x7126, 0x80F6, 0x4EA4, 0x90CA, 0x6D47, 0x9A84, 0x5A07, 0x56BC, - 0x6405, 0x94F0, 0x77EB, 0x4FA5, 0x811A, 0x72E1, 0x89D2, 0x997A, - 0x7F34, 0x7EDE, 0x527F, 0x6559, 0x9175, 0x8F7F, 0x8F83, 0x53EB, - 0x7A96, 0x63ED, 0x63A5, 0x7686, 0x79F8, 0x8857, 0x9636, 0x622A, - 0x52AB, 0x8282, 0x6854, 0x6770, 0x6377, 0x776B, 0x7AED, 0x6D01, - 0x7ED3, 0x89E3, 0x59D0, 0x6212, 0x85C9, 0x82A5, 0x754C, 0x501F, - 0x4ECB, 0x75A5, 0x8BEB, 0x5C4A, 0x5DFE, 0x7B4B, 0x65A4, 0x91D1, - 0x4ECA, 0x6D25, 0x895F, 0x7D27, 0x9526, 0x4EC5, 0x8C28, 0x8FDB, - 0x9773, 0x664B, 0x7981, 0x8FD1, 0x70EC, 0x6D78, 0x7D99, 0x7D9A, - 0x7D9B, 0x7D9C, 0x7D9D, 0x7D9E, 0x7D9F, 0x7DA0, 0x7DA1, 0x7DA2, - 0x7DA3, 0x7DA4, 0x7DA5, 0x7DA7, 0x7DA8, 0x7DA9, 0x7DAA, 0x7DAB, - 0x7DAC, 0x7DAD, 0x7DAF, 0x7DB0, 0x7DB1, 0x7DB2, 0x7DB3, 0x7DB4, - 0x7DB5, 0x7DB6, 0x7DB7, 0x7DB8, 0x7DB9, 0x7DBA, 0x7DBB, 0x7DBC, - 0x7DBD, 0x7DBE, 0x7DBF, 0x7DC0, 0x7DC1, 0x7DC2, 0x7DC3, 0x7DC4, - 0x7DC5, 0x7DC6, 0x7DC7, 0x7DC8, 0x7DC9, 0x7DCA, 0x7DCB, 0x7DCC, - 0x7DCD, 0x7DCE, 0x7DCF, 0x7DD0, 0x7DD1, 0x7DD2, 0x7DD3, 0x7DD4, - 0x7DD5, 0x7DD6, 0x7DD7, 0x7DD8, 0x7DD9, 0x7DDA, 0x7DDB, 0x7DDC, - 0x7DDD, 0x7DDE, 0x7DDF, 0x7DE0, 0x7DE1, 0x7DE2, 0x7DE3, 0x7DE4, - 0x7DE5, 0x7DE6, 0x7DE7, 0x7DE8, 0x7DE9, 0x7DEA, 0x7DEB, 0x7DEC, - 0x7DED, 0x7DEE, 0x7DEF, 0x7DF0, 0x7DF1, 0x7DF2, 0x7DF3, 0x7DF4, - 0x7DF5, 0x7DF6, 0x7DF7, 0x7DF8, 0x7DF9, 0x7DFA, 0x5C3D, 0x52B2, - 0x8346, 0x5162, 0x830E, 0x775B, 0x6676, 0x9CB8, 0x4EAC, 0x60CA, - 0x7CBE, 0x7CB3, 0x7ECF, 0x4E95, 0x8B66, 0x666F, 0x9888, 0x9759, - 0x5883, 0x656C, 0x955C, 0x5F84, 0x75C9, 0x9756, 0x7ADF, 0x7ADE, - 0x51C0, 0x70AF, 0x7A98, 0x63EA, 0x7A76, 0x7EA0, 0x7396, 0x97ED, - 0x4E45, 0x7078, 0x4E5D, 0x9152, 0x53A9, 0x6551, 0x65E7, 0x81FC, - 0x8205, 0x548E, 0x5C31, 0x759A, 0x97A0, 0x62D8, 0x72D9, 0x75BD, - 0x5C45, 0x9A79, 0x83CA, 0x5C40, 0x5480, 0x77E9, 0x4E3E, 0x6CAE, - 0x805A, 0x62D2, 0x636E, 0x5DE8, 0x5177, 0x8DDD, 0x8E1E, 0x952F, - 0x4FF1, 0x53E5, 0x60E7, 0x70AC, 0x5267, 0x6350, 0x9E43, 0x5A1F, - 0x5026, 0x7737, 0x5377, 0x7EE2, 0x6485, 0x652B, 0x6289, 0x6398, - 0x5014, 0x7235, 0x89C9, 0x51B3, 0x8BC0, 0x7EDD, 0x5747, 0x83CC, -plane 47 -at 0x00 - 0x94A7, 0x519B, 0x541B, 0x5CFB, 0x7DFB, 0x7DFC, 0x7DFD, 0x7DFE, - 0x7DFF, 0x7E00, 0x7E01, 0x7E02, 0x7E03, 0x7E04, 0x7E05, 0x7E06, - 0x7E07, 0x7E08, 0x7E09, 0x7E0A, 0x7E0B, 0x7E0C, 0x7E0D, 0x7E0E, - 0x7E0F, 0x7E10, 0x7E11, 0x7E12, 0x7E13, 0x7E14, 0x7E15, 0x7E16, - 0x7E17, 0x7E18, 0x7E19, 0x7E1A, 0x7E1B, 0x7E1C, 0x7E1D, 0x7E1E, - 0x7E1F, 0x7E20, 0x7E21, 0x7E22, 0x7E23, 0x7E24, 0x7E25, 0x7E26, - 0x7E27, 0x7E28, 0x7E29, 0x7E2A, 0x7E2B, 0x7E2C, 0x7E2D, 0x7E2E, - 0x7E2F, 0x7E30, 0x7E31, 0x7E32, 0x7E33, 0x7E34, 0x7E35, 0x7E36, - 0x7E37, 0x7E38, 0x7E39, 0x7E3A, 0x7E3C, 0x7E3D, 0x7E3E, 0x7E3F, - 0x7E40, 0x7E42, 0x7E43, 0x7E44, 0x7E45, 0x7E46, 0x7E48, 0x7E49, - 0x7E4A, 0x7E4B, 0x7E4C, 0x7E4D, 0x7E4E, 0x7E4F, 0x7E50, 0x7E51, - 0x7E52, 0x7E53, 0x7E54, 0x7E55, 0x7E56, 0x7E57, 0x7E58, 0x7E59, - 0x7E5A, 0x7E5B, 0x7E5C, 0x7E5D, 0x4FCA, 0x7AE3, 0x6D5A, 0x90E1, - 0x9A8F, 0x5580, 0x5496, 0x5361, 0x54AF, 0x5F00, 0x63E9, 0x6977, - 0x51EF, 0x6168, 0x520A, 0x582A, 0x52D8, 0x574E, 0x780D, 0x770B, - 0x5EB7, 0x6177, 0x7CE0, 0x625B, 0x6297, 0x4EA2, 0x7095, 0x8003, - 0x62F7, 0x70E4, 0x9760, 0x5777, 0x82DB, 0x67EF, 0x68F5, 0x78D5, - 0x9897, 0x79D1, 0x58F3, 0x54B3, 0x53EF, 0x6E34, 0x514B, 0x523B, - 0x5BA2, 0x8BFE, 0x80AF, 0x5543, 0x57A6, 0x6073, 0x5751, 0x542D, - 0x7A7A, 0x6050, 0x5B54, 0x63A7, 0x62A0, 0x53E3, 0x6263, 0x5BC7, - 0x67AF, 0x54ED, 0x7A9F, 0x82E6, 0x9177, 0x5E93, 0x88E4, 0x5938, - 0x57AE, 0x630E, 0x8DE8, 0x80EF, 0x5757, 0x7B77, 0x4FA9, 0x5FEB, - 0x5BBD, 0x6B3E, 0x5321, 0x7B50, 0x72C2, 0x6846, 0x77FF, 0x7736, - 0x65F7, 0x51B5, 0x4E8F, 0x76D4, 0x5CBF, 0x7AA5, 0x8475, 0x594E, - 0x9B41, 0x5080, 0x7E5E, 0x7E5F, 0x7E60, 0x7E61, 0x7E62, 0x7E63, - 0x7E64, 0x7E65, 0x7E66, 0x7E67, 0x7E68, 0x7E69, 0x7E6A, 0x7E6B, - 0x7E6C, 0x7E6D, 0x7E6E, 0x7E6F, 0x7E70, 0x7E71, 0x7E72, 0x7E73, - 0x7E74, 0x7E75, 0x7E76, 0x7E77, 0x7E78, 0x7E79, 0x7E7A, 0x7E7B, - 0x7E7C, 0x7E7D, 0x7E7E, 0x7E7F, 0x7E80, 0x7E81, 0x7E83, 0x7E84, - 0x7E85, 0x7E86, 0x7E87, 0x7E88, 0x7E89, 0x7E8A, 0x7E8B, 0x7E8C, - 0x7E8D, 0x7E8E, 0x7E8F, 0x7E90, 0x7E91, 0x7E92, 0x7E93, 0x7E94, - 0x7E95, 0x7E96, 0x7E97, 0x7E98, 0x7E99, 0x7E9A, 0x7E9C, 0x7E9D, -plane 48 -at 0x00 - 0x7E9E, 0x7EAE, 0x7EB4, 0x7EBB, 0x7EBC, 0x7ED6, 0x7EE4, 0x7EEC, - 0x7EF9, 0x7F0A, 0x7F10, 0x7F1E, 0x7F37, 0x7F39, 0x7F3B, 0x7F3C, - 0x7F3D, 0x7F3E, 0x7F3F, 0x7F40, 0x7F41, 0x7F43, 0x7F46, 0x7F47, - 0x7F48, 0x7F49, 0x7F4A, 0x7F4B, 0x7F4C, 0x7F4D, 0x7F4E, 0x7F4F, - 0x7F52, 0x7F53, 0x9988, 0x6127, 0x6E83, 0x5764, 0x6606, 0x6346, - 0x56F0, 0x62EC, 0x6269, 0x5ED3, 0x9614, 0x5783, 0x62C9, 0x5587, - 0x8721, 0x814A, 0x8FA3, 0x5566, 0x83B1, 0x6765, 0x8D56, 0x84DD, - 0x5A6A, 0x680F, 0x62E6, 0x7BEE, 0x9611, 0x5170, 0x6F9C, 0x8C30, - 0x63FD, 0x89C8, 0x61D2, 0x7F06, 0x70C2, 0x6EE5, 0x7405, 0x6994, - 0x72FC, 0x5ECA, 0x90CE, 0x6717, 0x6D6A, 0x635E, 0x52B3, 0x7262, - 0x8001, 0x4F6C, 0x59E5, 0x916A, 0x70D9, 0x6D9D, 0x52D2, 0x4E50, - 0x96F7, 0x956D, 0x857E, 0x78CA, 0x7D2F, 0x5121, 0x5792, 0x64C2, - 0x808B, 0x7C7B, 0x6CEA, 0x68F1, 0x695E, 0x51B7, 0x5398, 0x68A8, - 0x7281, 0x9ECE, 0x7BF1, 0x72F8, 0x79BB, 0x6F13, 0x7406, 0x674E, - 0x91CC, 0x9CA4, 0x793C, 0x8389, 0x8354, 0x540F, 0x6817, 0x4E3D, - 0x5389, 0x52B1, 0x783E, 0x5386, 0x5229, 0x5088, 0x4F8B, 0x4FD0, - 0x7F56, 0x7F59, 0x7F5B, 0x7F5C, 0x7F5D, 0x7F5E, 0x7F60, 0x7F63, - 0x7F64, 0x7F65, 0x7F66, 0x7F67, 0x7F6B, 0x7F6C, 0x7F6D, 0x7F6F, - 0x7F70, 0x7F73, 0x7F75, 0x7F76, 0x7F77, 0x7F78, 0x7F7A, 0x7F7B, - 0x7F7C, 0x7F7D, 0x7F7F, 0x7F80, 0x7F82, 0x7F83, 0x7F84, 0x7F85, - 0x7F86, 0x7F87, 0x7F88, 0x7F89, 0x7F8B, 0x7F8D, 0x7F8F, 0x7F90, - 0x7F91, 0x7F92, 0x7F93, 0x7F95, 0x7F96, 0x7F97, 0x7F98, 0x7F99, - 0x7F9B, 0x7F9C, 0x7FA0, 0x7FA2, 0x7FA3, 0x7FA5, 0x7FA6, 0x7FA8, - 0x7FA9, 0x7FAA, 0x7FAB, 0x7FAC, 0x7FAD, 0x7FAE, 0x7FB1, 0x7FB3, - 0x7FB4, 0x7FB5, 0x7FB6, 0x7FB7, 0x7FBA, 0x7FBB, 0x7FBE, 0x7FC0, - 0x7FC2, 0x7FC3, 0x7FC4, 0x7FC6, 0x7FC7, 0x7FC8, 0x7FC9, 0x7FCB, - 0x7FCD, 0x7FCF, 0x7FD0, 0x7FD1, 0x7FD2, 0x7FD3, 0x7FD6, 0x7FD7, - 0x7FD9, 0x7FDA, 0x7FDB, 0x7FDC, 0x7FDD, 0x7FDE, 0x7FE2, 0x7FE3, - 0x75E2, 0x7ACB, 0x7C92, 0x6CA5, 0x96B6, 0x529B, 0x7483, 0x54E9, - 0x4FE9, 0x8054, 0x83B2, 0x8FDE, 0x9570, 0x5EC9, 0x601C, 0x6D9F, - 0x5E18, 0x655B, 0x8138, 0x94FE, 0x604B, 0x70BC, 0x7EC3, 0x7CAE, - 0x51C9, 0x6881, 0x7CB1, 0x826F, 0x4E24, 0x8F86, 0x91CF, 0x667E, -plane 49 -at 0x00 - 0x4EAE, 0x8C05, 0x64A9, 0x804A, 0x50DA, 0x7597, 0x71CE, 0x5BE5, - 0x8FBD, 0x6F66, 0x4E86, 0x6482, 0x9563, 0x5ED6, 0x6599, 0x5217, - 0x88C2, 0x70C8, 0x52A3, 0x730E, 0x7433, 0x6797, 0x78F7, 0x9716, - 0x4E34, 0x90BB, 0x9CDE, 0x6DCB, 0x51DB, 0x8D41, 0x541D, 0x62CE, - 0x73B2, 0x83F1, 0x96F6, 0x9F84, 0x94C3, 0x4F36, 0x7F9A, 0x51CC, - 0x7075, 0x9675, 0x5CAD, 0x9886, 0x53E6, 0x4EE4, 0x6E9C, 0x7409, - 0x69B4, 0x786B, 0x998F, 0x7559, 0x5218, 0x7624, 0x6D41, 0x67F3, - 0x516D, 0x9F99, 0x804B, 0x5499, 0x7B3C, 0x7ABF, 0x7FE4, 0x7FE7, - 0x7FE8, 0x7FEA, 0x7FEB, 0x7FEC, 0x7FED, 0x7FEF, 0x7FF2, 0x7FF4, - 0x7FF5, 0x7FF6, 0x7FF7, 0x7FF8, 0x7FF9, 0x7FFA, 0x7FFD, 0x7FFE, - 0x7FFF, 0x8002, 0x8007, 0x8008, 0x8009, 0x800A, 0x800E, 0x800F, - 0x8011, 0x8013, 0x801A, 0x801B, 0x801D, 0x801E, 0x801F, 0x8021, - 0x8023, 0x8024, 0x802B, 0x802C, 0x802D, 0x802E, 0x802F, 0x8030, - 0x8032, 0x8034, 0x8039, 0x803A, 0x803C, 0x803E, 0x8040, 0x8041, - 0x8044, 0x8045, 0x8047, 0x8048, 0x8049, 0x804E, 0x804F, 0x8050, - 0x8051, 0x8053, 0x8055, 0x8056, 0x8057, 0x8059, 0x805B, 0x805C, - 0x805D, 0x805E, 0x805F, 0x8060, 0x8061, 0x8062, 0x8063, 0x8064, - 0x8065, 0x8066, 0x8067, 0x8068, 0x806B, 0x806C, 0x806D, 0x806E, - 0x806F, 0x8070, 0x8072, 0x8073, 0x8074, 0x8075, 0x8076, 0x8077, - 0x8078, 0x8079, 0x807A, 0x807B, 0x807C, 0x807D, 0x9686, 0x5784, - 0x62E2, 0x9647, 0x697C, 0x5A04, 0x6402, 0x7BD3, 0x6F0F, 0x964B, - 0x82A6, 0x5362, 0x9885, 0x5E90, 0x7089, 0x63B3, 0x5364, 0x864F, - 0x9C81, 0x9E93, 0x788C, 0x9732, 0x8DEF, 0x8D42, 0x9E7F, 0x6F5E, - 0x7984, 0x5F55, 0x9646, 0x622E, 0x9A74, 0x5415, 0x94DD, 0x4FA3, - 0x65C5, 0x5C65, 0x5C61, 0x7F15, 0x8651, 0x6C2F, 0x5F8B, 0x7387, - 0x6EE4, 0x7EFF, 0x5CE6, 0x631B, 0x5B6A, 0x6EE6, 0x5375, 0x4E71, - 0x63A0, 0x7565, 0x62A1, 0x8F6E, 0x4F26, 0x4ED1, 0x6CA6, 0x7EB6, - 0x8BBA, 0x841D, 0x87BA, 0x7F57, 0x903B, 0x9523, 0x7BA9, 0x9AA1, - 0x88F8, 0x843D, 0x6D1B, 0x9A86, 0x7EDC, 0x5988, 0x9EBB, 0x739B, - 0x7801, 0x8682, 0x9A6C, 0x9A82, 0x561B, 0x5417, 0x57CB, 0x4E70, - 0x9EA6, 0x5356, 0x8FC8, 0x8109, 0x7792, 0x9992, 0x86EE, 0x6EE1, - 0x8513, 0x66FC, 0x6162, 0x6F2B, 0x807E, 0x8081, 0x8082, 0x8085, -plane 50 -at 0x00 - 0x8088, 0x808A, 0x808D, 0x808E, 0x808F, 0x8090, 0x8091, 0x8092, - 0x8094, 0x8095, 0x8097, 0x8099, 0x809E, 0x80A3, 0x80A6, 0x80A7, - 0x80A8, 0x80AC, 0x80B0, 0x80B3, 0x80B5, 0x80B6, 0x80B8, 0x80B9, - 0x80BB, 0x80C5, 0x80C7, 0x80C8, 0x80C9, 0x80CA, 0x80CB, 0x80CF, - 0x80D0, 0x80D1, 0x80D2, 0x80D3, 0x80D4, 0x80D5, 0x80D8, 0x80DF, - 0x80E0, 0x80E2, 0x80E3, 0x80E6, 0x80EE, 0x80F5, 0x80F7, 0x80F9, - 0x80FB, 0x80FE, 0x80FF, 0x8100, 0x8101, 0x8103, 0x8104, 0x8105, - 0x8107, 0x8108, 0x810B, 0x810C, 0x8115, 0x8117, 0x8119, 0x811B, - 0x811C, 0x811D, 0x811F, 0x8120, 0x8121, 0x8122, 0x8123, 0x8124, - 0x8125, 0x8126, 0x8127, 0x8128, 0x8129, 0x812A, 0x812B, 0x812D, - 0x812E, 0x8130, 0x8133, 0x8134, 0x8135, 0x8137, 0x8139, 0x813A, - 0x813B, 0x813C, 0x813D, 0x813F, 0x8C29, 0x8292, 0x832B, 0x76F2, - 0x6C13, 0x5FD9, 0x83BD, 0x732B, 0x8305, 0x951A, 0x6BDB, 0x77DB, - 0x94C6, 0x536F, 0x8302, 0x5192, 0x5E3D, 0x8C8C, 0x8D38, 0x4E48, - 0x73AB, 0x679A, 0x6885, 0x9176, 0x9709, 0x7164, 0x6CA1, 0x7709, - 0x5A92, 0x9541, 0x6BCF, 0x7F8E, 0x6627, 0x5BD0, 0x59B9, 0x5A9A, - 0x95E8, 0x95F7, 0x4EEC, 0x840C, 0x8499, 0x6AAC, 0x76DF, 0x9530, - 0x731B, 0x68A6, 0x5B5F, 0x772F, 0x919A, 0x9761, 0x7CDC, 0x8FF7, - 0x8C1C, 0x5F25, 0x7C73, 0x79D8, 0x89C5, 0x6CCC, 0x871C, 0x5BC6, - 0x5E42, 0x68C9, 0x7720, 0x7EF5, 0x5195, 0x514D, 0x52C9, 0x5A29, - 0x7F05, 0x9762, 0x82D7, 0x63CF, 0x7784, 0x85D0, 0x79D2, 0x6E3A, - 0x5E99, 0x5999, 0x8511, 0x706D, 0x6C11, 0x62BF, 0x76BF, 0x654F, - 0x60AF, 0x95FD, 0x660E, 0x879F, 0x9E23, 0x94ED, 0x540D, 0x547D, - 0x8C2C, 0x6478, 0x8140, 0x8141, 0x8142, 0x8143, 0x8144, 0x8145, - 0x8147, 0x8149, 0x814D, 0x814E, 0x814F, 0x8152, 0x8156, 0x8157, - 0x8158, 0x815B, 0x815C, 0x815D, 0x815E, 0x815F, 0x8161, 0x8162, - 0x8163, 0x8164, 0x8166, 0x8168, 0x816A, 0x816B, 0x816C, 0x816F, - 0x8172, 0x8173, 0x8175, 0x8176, 0x8177, 0x8178, 0x8181, 0x8183, - 0x8184, 0x8185, 0x8186, 0x8187, 0x8189, 0x818B, 0x818C, 0x818D, - 0x818E, 0x8190, 0x8192, 0x8193, 0x8194, 0x8195, 0x8196, 0x8197, - 0x8199, 0x819A, 0x819E, 0x819F, 0x81A0, 0x81A1, 0x81A2, 0x81A4, - 0x81A5, 0x81A7, 0x81A9, 0x81AB, 0x81AC, 0x81AD, 0x81AE, 0x81AF, -plane 51 -at 0x00 - 0x81B0, 0x81B1, 0x81B2, 0x81B4, 0x81B5, 0x81B6, 0x81B7, 0x81B8, - 0x81B9, 0x81BC, 0x81BD, 0x81BE, 0x81BF, 0x81C4, 0x81C5, 0x81C7, - 0x81C8, 0x81C9, 0x81CB, 0x81CD, 0x81CE, 0x81CF, 0x81D0, 0x81D1, - 0x81D2, 0x81D3, 0x6479, 0x8611, 0x6A21, 0x819C, 0x78E8, 0x6469, - 0x9B54, 0x62B9, 0x672B, 0x83AB, 0x58A8, 0x9ED8, 0x6CAB, 0x6F20, - 0x5BDE, 0x964C, 0x8C0B, 0x725F, 0x67D0, 0x62C7, 0x7261, 0x4EA9, - 0x59C6, 0x6BCD, 0x5893, 0x66AE, 0x5E55, 0x52DF, 0x6155, 0x6728, - 0x76EE, 0x7766, 0x7267, 0x7A46, 0x62FF, 0x54EA, 0x5450, 0x94A0, - 0x90A3, 0x5A1C, 0x7EB3, 0x6C16, 0x4E43, 0x5976, 0x8010, 0x5948, - 0x5357, 0x7537, 0x96BE, 0x56CA, 0x6320, 0x8111, 0x607C, 0x95F9, - 0x6DD6, 0x5462, 0x9981, 0x5185, 0x5AE9, 0x80FD, 0x59AE, 0x9713, - 0x502A, 0x6CE5, 0x5C3C, 0x62DF, 0x4F60, 0x533F, 0x817B, 0x9006, - 0x6EBA, 0x852B, 0x62C8, 0x5E74, 0x78BE, 0x64B5, 0x637B, 0x5FF5, - 0x5A18, 0x917F, 0x9E1F, 0x5C3F, 0x634F, 0x8042, 0x5B7D, 0x556E, - 0x954A, 0x954D, 0x6D85, 0x60A8, 0x67E0, 0x72DE, 0x51DD, 0x5B81, - 0x81D4, 0x81D5, 0x81D6, 0x81D7, 0x81D8, 0x81D9, 0x81DA, 0x81DB, - 0x81DC, 0x81DD, 0x81DE, 0x81DF, 0x81E0, 0x81E1, 0x81E2, 0x81E4, - 0x81E5, 0x81E6, 0x81E8, 0x81E9, 0x81EB, 0x81EE, 0x81EF, 0x81F0, - 0x81F1, 0x81F2, 0x81F5, 0x81F6, 0x81F7, 0x81F8, 0x81F9, 0x81FA, - 0x81FD, 0x81FF, 0x8203, 0x8207, 0x8208, 0x8209, 0x820A, 0x820B, - 0x820E, 0x820F, 0x8211, 0x8213, 0x8215, 0x8216, 0x8217, 0x8218, - 0x8219, 0x821A, 0x821D, 0x8220, 0x8224, 0x8225, 0x8226, 0x8227, - 0x8229, 0x822E, 0x8232, 0x823A, 0x823C, 0x823D, 0x823F, 0x8240, - 0x8241, 0x8242, 0x8243, 0x8245, 0x8246, 0x8248, 0x824A, 0x824C, - 0x824D, 0x824E, 0x8250, 0x8251, 0x8252, 0x8253, 0x8254, 0x8255, - 0x8256, 0x8257, 0x8259, 0x825B, 0x825C, 0x825D, 0x825E, 0x8260, - 0x8261, 0x8262, 0x8263, 0x8264, 0x8265, 0x8266, 0x8267, 0x8269, - 0x62E7, 0x6CDE, 0x725B, 0x626D, 0x94AE, 0x7EBD, 0x8113, 0x6D53, - 0x519C, 0x5F04, 0x5974, 0x52AA, 0x6012, 0x5973, 0x6696, 0x8650, - 0x759F, 0x632A, 0x61E6, 0x7CEF, 0x8BFA, 0x54E6, 0x6B27, 0x9E25, - 0x6BB4, 0x85D5, 0x5455, 0x5076, 0x6CA4, 0x556A, 0x8DB4, 0x722C, - 0x5E15, 0x6015, 0x7436, 0x62CD, 0x6392, 0x724C, 0x5F98, 0x6E43, -plane 52 -at 0x00 - 0x6D3E, 0x6500, 0x6F58, 0x76D8, 0x78D0, 0x76FC, 0x7554, 0x5224, - 0x53DB, 0x4E53, 0x5E9E, 0x65C1, 0x802A, 0x80D6, 0x629B, 0x5486, - 0x5228, 0x70AE, 0x888D, 0x8DD1, 0x6CE1, 0x5478, 0x80DA, 0x57F9, - 0x88F4, 0x8D54, 0x966A, 0x914D, 0x4F69, 0x6C9B, 0x55B7, 0x76C6, - 0x7830, 0x62A8, 0x70F9, 0x6F8E, 0x5F6D, 0x84EC, 0x68DA, 0x787C, - 0x7BF7, 0x81A8, 0x670B, 0x9E4F, 0x6367, 0x78B0, 0x576F, 0x7812, - 0x9739, 0x6279, 0x62AB, 0x5288, 0x7435, 0x6BD7, 0x826A, 0x826B, - 0x826C, 0x826D, 0x8271, 0x8275, 0x8276, 0x8277, 0x8278, 0x827B, - 0x827C, 0x8280, 0x8281, 0x8283, 0x8285, 0x8286, 0x8287, 0x8289, - 0x828C, 0x8290, 0x8293, 0x8294, 0x8295, 0x8296, 0x829A, 0x829B, - 0x829E, 0x82A0, 0x82A2, 0x82A3, 0x82A7, 0x82B2, 0x82B5, 0x82B6, - 0x82BA, 0x82BB, 0x82BC, 0x82BF, 0x82C0, 0x82C2, 0x82C3, 0x82C5, - 0x82C6, 0x82C9, 0x82D0, 0x82D6, 0x82D9, 0x82DA, 0x82DD, 0x82E2, - 0x82E7, 0x82E8, 0x82E9, 0x82EA, 0x82EC, 0x82ED, 0x82EE, 0x82F0, - 0x82F2, 0x82F3, 0x82F5, 0x82F6, 0x82F8, 0x82FA, 0x82FC, 0x82FD, - 0x82FE, 0x82FF, 0x8300, 0x830A, 0x830B, 0x830D, 0x8310, 0x8312, - 0x8313, 0x8316, 0x8318, 0x8319, 0x831D, 0x831E, 0x831F, 0x8320, - 0x8321, 0x8322, 0x8323, 0x8324, 0x8325, 0x8326, 0x8329, 0x832A, - 0x832E, 0x8330, 0x8332, 0x8337, 0x833B, 0x833D, 0x5564, 0x813E, - 0x75B2, 0x76AE, 0x5339, 0x75DE, 0x50FB, 0x5C41, 0x8B6C, 0x7BC7, - 0x504F, 0x7247, 0x9A97, 0x98D8, 0x6F02, 0x74E2, 0x7968, 0x6487, - 0x77A5, 0x62FC, 0x9891, 0x8D2B, 0x54C1, 0x8058, 0x4E52, 0x576A, - 0x82F9, 0x840D, 0x5E73, 0x51ED, 0x74F6, 0x8BC4, 0x5C4F, 0x5761, - 0x6CFC, 0x9887, 0x5A46, 0x7834, 0x9B44, 0x8FEB, 0x7C95, 0x5256, - 0x6251, 0x94FA, 0x4EC6, 0x8386, 0x8461, 0x83E9, 0x84B2, 0x57D4, - 0x6734, 0x5703, 0x666E, 0x6D66, 0x8C31, 0x66DD, 0x7011, 0x671F, - 0x6B3A, 0x6816, 0x621A, 0x59BB, 0x4E03, 0x51C4, 0x6F06, 0x67D2, - 0x6C8F, 0x5176, 0x68CB, 0x5947, 0x6B67, 0x7566, 0x5D0E, 0x8110, - 0x9F50, 0x65D7, 0x7948, 0x7941, 0x9A91, 0x8D77, 0x5C82, 0x4E5E, - 0x4F01, 0x542F, 0x5951, 0x780C, 0x5668, 0x6C14, 0x8FC4, 0x5F03, - 0x6C7D, 0x6CE3, 0x8BAB, 0x6390, 0x833E, 0x833F, 0x8341, 0x8342, - 0x8344, 0x8345, 0x8348, 0x834A, 0x834B, 0x834C, 0x834D, 0x834E, -plane 53 -at 0x00 - 0x8353, 0x8355, 0x8356, 0x8357, 0x8358, 0x8359, 0x835D, 0x8362, - 0x8370, 0x8371, 0x8372, 0x8373, 0x8374, 0x8375, 0x8376, 0x8379, - 0x837A, 0x837E, 0x837F, 0x8380, 0x8381, 0x8382, 0x8383, 0x8384, - 0x8387, 0x8388, 0x838A, 0x838B, 0x838C, 0x838D, 0x838F, 0x8390, - 0x8391, 0x8394, 0x8395, 0x8396, 0x8397, 0x8399, 0x839A, 0x839D, - 0x839F, 0x83A1, 0x83A2, 0x83A3, 0x83A4, 0x83A5, 0x83A6, 0x83A7, - 0x83AC, 0x83AD, 0x83AE, 0x83AF, 0x83B5, 0x83BB, 0x83BE, 0x83BF, - 0x83C2, 0x83C3, 0x83C4, 0x83C6, 0x83C8, 0x83C9, 0x83CB, 0x83CD, - 0x83CE, 0x83D0, 0x83D1, 0x83D2, 0x83D3, 0x83D5, 0x83D7, 0x83D9, - 0x83DA, 0x83DB, 0x83DE, 0x83E2, 0x83E3, 0x83E4, 0x83E6, 0x83E7, - 0x83E8, 0x83EB, 0x83EC, 0x83ED, 0x6070, 0x6D3D, 0x7275, 0x6266, - 0x948E, 0x94C5, 0x5343, 0x8FC1, 0x7B7E, 0x4EDF, 0x8C26, 0x4E7E, - 0x9ED4, 0x94B1, 0x94B3, 0x524D, 0x6F5C, 0x9063, 0x6D45, 0x8C34, - 0x5811, 0x5D4C, 0x6B20, 0x6B49, 0x67AA, 0x545B, 0x8154, 0x7F8C, - 0x5899, 0x8537, 0x5F3A, 0x62A2, 0x6A47, 0x9539, 0x6572, 0x6084, - 0x6865, 0x77A7, 0x4E54, 0x4FA8, 0x5DE7, 0x9798, 0x64AC, 0x7FD8, - 0x5CED, 0x4FCF, 0x7A8D, 0x5207, 0x8304, 0x4E14, 0x602F, 0x7A83, - 0x94A6, 0x4FB5, 0x4EB2, 0x79E6, 0x7434, 0x52E4, 0x82B9, 0x64D2, - 0x79BD, 0x5BDD, 0x6C81, 0x9752, 0x8F7B, 0x6C22, 0x503E, 0x537F, - 0x6E05, 0x64CE, 0x6674, 0x6C30, 0x60C5, 0x9877, 0x8BF7, 0x5E86, - 0x743C, 0x7A77, 0x79CB, 0x4E18, 0x90B1, 0x7403, 0x6C42, 0x56DA, - 0x914B, 0x6CC5, 0x8D8B, 0x533A, 0x86C6, 0x66F2, 0x8EAF, 0x5C48, - 0x9A71, 0x6E20, 0x83EE, 0x83EF, 0x83F3, 0x83F4, 0x83F5, 0x83F6, - 0x83F7, 0x83FA, 0x83FB, 0x83FC, 0x83FE, 0x83FF, 0x8400, 0x8402, - 0x8405, 0x8407, 0x8408, 0x8409, 0x840A, 0x8410, 0x8412, 0x8413, - 0x8414, 0x8415, 0x8416, 0x8417, 0x8419, 0x841A, 0x841B, 0x841E, - 0x841F, 0x8420, 0x8421, 0x8422, 0x8423, 0x8429, 0x842A, 0x842B, - 0x842C, 0x842D, 0x842E, 0x842F, 0x8430, 0x8432, 0x8433, 0x8434, - 0x8435, 0x8436, 0x8437, 0x8439, 0x843A, 0x843B, 0x843E, 0x843F, - 0x8440, 0x8441, 0x8442, 0x8443, 0x8444, 0x8445, 0x8447, 0x8448, - 0x8449, 0x844A, 0x844B, 0x844C, 0x844D, 0x844E, 0x844F, 0x8450, - 0x8452, 0x8453, 0x8454, 0x8455, 0x8456, 0x8458, 0x845D, 0x845E, -plane 54 -at 0x00 - 0x845F, 0x8460, 0x8462, 0x8464, 0x8465, 0x8466, 0x8467, 0x8468, - 0x846A, 0x846E, 0x846F, 0x8470, 0x8472, 0x8474, 0x8477, 0x8479, - 0x847B, 0x847C, 0x53D6, 0x5A36, 0x9F8B, 0x8DA3, 0x53BB, 0x5708, - 0x98A7, 0x6743, 0x919B, 0x6CC9, 0x5168, 0x75CA, 0x62F3, 0x72AC, - 0x5238, 0x529D, 0x7F3A, 0x7094, 0x7638, 0x5374, 0x9E4A, 0x69B7, - 0x786E, 0x96C0, 0x88D9, 0x7FA4, 0x7136, 0x71C3, 0x5189, 0x67D3, - 0x74E4, 0x58E4, 0x6518, 0x56B7, 0x8BA9, 0x9976, 0x6270, 0x7ED5, - 0x60F9, 0x70ED, 0x58EC, 0x4EC1, 0x4EBA, 0x5FCD, 0x97E7, 0x4EFB, - 0x8BA4, 0x5203, 0x598A, 0x7EAB, 0x6254, 0x4ECD, 0x65E5, 0x620E, - 0x8338, 0x84C9, 0x8363, 0x878D, 0x7194, 0x6EB6, 0x5BB9, 0x7ED2, - 0x5197, 0x63C9, 0x67D4, 0x8089, 0x8339, 0x8815, 0x5112, 0x5B7A, - 0x5982, 0x8FB1, 0x4E73, 0x6C5D, 0x5165, 0x8925, 0x8F6F, 0x962E, - 0x854A, 0x745E, 0x9510, 0x95F0, 0x6DA6, 0x82E5, 0x5F31, 0x6492, - 0x6D12, 0x8428, 0x816E, 0x9CC3, 0x585E, 0x8D5B, 0x4E09, 0x53C1, - 0x847D, 0x847E, 0x847F, 0x8480, 0x8481, 0x8483, 0x8484, 0x8485, - 0x8486, 0x848A, 0x848D, 0x848F, 0x8490, 0x8491, 0x8492, 0x8493, - 0x8494, 0x8495, 0x8496, 0x8498, 0x849A, 0x849B, 0x849D, 0x849E, - 0x849F, 0x84A0, 0x84A2, 0x84A3, 0x84A4, 0x84A5, 0x84A6, 0x84A7, - 0x84A8, 0x84A9, 0x84AA, 0x84AB, 0x84AC, 0x84AD, 0x84AE, 0x84B0, - 0x84B1, 0x84B3, 0x84B5, 0x84B6, 0x84B7, 0x84BB, 0x84BC, 0x84BE, - 0x84C0, 0x84C2, 0x84C3, 0x84C5, 0x84C6, 0x84C7, 0x84C8, 0x84CB, - 0x84CC, 0x84CE, 0x84CF, 0x84D2, 0x84D4, 0x84D5, 0x84D7, 0x84D8, - 0x84D9, 0x84DA, 0x84DB, 0x84DC, 0x84DE, 0x84E1, 0x84E2, 0x84E4, - 0x84E7, 0x84E8, 0x84E9, 0x84EA, 0x84EB, 0x84ED, 0x84EE, 0x84EF, - 0x84F1, 0x84F2, 0x84F3, 0x84F4, 0x84F5, 0x84F6, 0x84F7, 0x84F8, - 0x84F9, 0x84FA, 0x84FB, 0x84FD, 0x84FE, 0x8500, 0x8501, 0x8502, - 0x4F1E, 0x6563, 0x6851, 0x55D3, 0x4E27, 0x6414, 0x9A9A, 0x626B, - 0x5AC2, 0x745F, 0x8272, 0x6DA9, 0x68EE, 0x50E7, 0x838E, 0x7802, - 0x6740, 0x5239, 0x6C99, 0x7EB1, 0x50BB, 0x5565, 0x715E, 0x7B5B, - 0x6652, 0x73CA, 0x82EB, 0x6749, 0x5C71, 0x5220, 0x717D, 0x886B, - 0x95EA, 0x9655, 0x64C5, 0x8D61, 0x81B3, 0x5584, 0x6C55, 0x6247, - 0x7F2E, 0x5892, 0x4F24, 0x5546, 0x8D4F, 0x664C, 0x4E0A, 0x5C1A, -plane 55 -at 0x00 - 0x88F3, 0x68A2, 0x634E, 0x7A0D, 0x70E7, 0x828D, 0x52FA, 0x97F6, - 0x5C11, 0x54E8, 0x90B5, 0x7ECD, 0x5962, 0x8D4A, 0x86C7, 0x820C, - 0x820D, 0x8D66, 0x6444, 0x5C04, 0x6151, 0x6D89, 0x793E, 0x8BBE, - 0x7837, 0x7533, 0x547B, 0x4F38, 0x8EAB, 0x6DF1, 0x5A20, 0x7EC5, - 0x795E, 0x6C88, 0x5BA1, 0x5A76, 0x751A, 0x80BE, 0x614E, 0x6E17, - 0x58F0, 0x751F, 0x7525, 0x7272, 0x5347, 0x7EF3, 0x8503, 0x8504, - 0x8505, 0x8506, 0x8507, 0x8508, 0x8509, 0x850A, 0x850B, 0x850D, - 0x850E, 0x850F, 0x8510, 0x8512, 0x8514, 0x8515, 0x8516, 0x8518, - 0x8519, 0x851B, 0x851C, 0x851D, 0x851E, 0x8520, 0x8522, 0x8523, - 0x8524, 0x8525, 0x8526, 0x8527, 0x8528, 0x8529, 0x852A, 0x852D, - 0x852E, 0x852F, 0x8530, 0x8531, 0x8532, 0x8533, 0x8534, 0x8535, - 0x8536, 0x853E, 0x853F, 0x8540, 0x8541, 0x8542, 0x8544, 0x8545, - 0x8546, 0x8547, 0x854B, 0x854C, 0x854D, 0x854E, 0x854F, 0x8550, - 0x8551, 0x8552, 0x8553, 0x8554, 0x8555, 0x8557, 0x8558, 0x855A, - 0x855B, 0x855C, 0x855D, 0x855F, 0x8560, 0x8561, 0x8562, 0x8563, - 0x8565, 0x8566, 0x8567, 0x8569, 0x856A, 0x856B, 0x856C, 0x856D, - 0x856E, 0x856F, 0x8570, 0x8571, 0x8573, 0x8575, 0x8576, 0x8577, - 0x8578, 0x857C, 0x857D, 0x857F, 0x8580, 0x8581, 0x7701, 0x76DB, - 0x5269, 0x80DC, 0x5723, 0x5E08, 0x5931, 0x72EE, 0x65BD, 0x6E7F, - 0x8BD7, 0x5C38, 0x8671, 0x5341, 0x77F3, 0x62FE, 0x65F6, 0x4EC0, - 0x98DF, 0x8680, 0x5B9E, 0x8BC6, 0x53F2, 0x77E2, 0x4F7F, 0x5C4E, - 0x9A76, 0x59CB, 0x5F0F, 0x793A, 0x58EB, 0x4E16, 0x67FF, 0x4E8B, - 0x62ED, 0x8A93, 0x901D, 0x52BF, 0x662F, 0x55DC, 0x566C, 0x9002, - 0x4ED5, 0x4F8D, 0x91CA, 0x9970, 0x6C0F, 0x5E02, 0x6043, 0x5BA4, - 0x89C6, 0x8BD5, 0x6536, 0x624B, 0x9996, 0x5B88, 0x5BFF, 0x6388, - 0x552E, 0x53D7, 0x7626, 0x517D, 0x852C, 0x67A2, 0x68B3, 0x6B8A, - 0x6292, 0x8F93, 0x53D4, 0x8212, 0x6DD1, 0x758F, 0x4E66, 0x8D4E, - 0x5B70, 0x719F, 0x85AF, 0x6691, 0x66D9, 0x7F72, 0x8700, 0x9ECD, - 0x9F20, 0x5C5E, 0x672F, 0x8FF0, 0x6811, 0x675F, 0x620D, 0x7AD6, - 0x5885, 0x5EB6, 0x6570, 0x6F31, 0x8582, 0x8583, 0x8586, 0x8588, - 0x8589, 0x858A, 0x858B, 0x858C, 0x858D, 0x858E, 0x8590, 0x8591, - 0x8592, 0x8593, 0x8594, 0x8595, 0x8596, 0x8597, 0x8598, 0x8599, -plane 56 -at 0x00 - 0x859A, 0x859D, 0x859E, 0x859F, 0x85A0, 0x85A1, 0x85A2, 0x85A3, - 0x85A5, 0x85A6, 0x85A7, 0x85A9, 0x85AB, 0x85AC, 0x85AD, 0x85B1, - 0x85B2, 0x85B3, 0x85B4, 0x85B5, 0x85B6, 0x85B8, 0x85BA, 0x85BB, - 0x85BC, 0x85BD, 0x85BE, 0x85BF, 0x85C0, 0x85C2, 0x85C3, 0x85C4, - 0x85C5, 0x85C6, 0x85C7, 0x85C8, 0x85CA, 0x85CB, 0x85CC, 0x85CD, - 0x85CE, 0x85D1, 0x85D2, 0x85D4, 0x85D6, 0x85D7, 0x85D8, 0x85D9, - 0x85DA, 0x85DB, 0x85DD, 0x85DE, 0x85DF, 0x85E0, 0x85E1, 0x85E2, - 0x85E3, 0x85E5, 0x85E6, 0x85E7, 0x85E8, 0x85EA, 0x85EB, 0x85EC, - 0x85ED, 0x85EE, 0x85EF, 0x85F0, 0x85F1, 0x85F2, 0x85F3, 0x85F4, - 0x85F5, 0x85F6, 0x85F7, 0x85F8, 0x6055, 0x5237, 0x800D, 0x6454, - 0x8870, 0x7529, 0x5E05, 0x6813, 0x62F4, 0x971C, 0x53CC, 0x723D, - 0x8C01, 0x6C34, 0x7761, 0x7A0E, 0x542E, 0x77AC, 0x987A, 0x821C, - 0x8BF4, 0x7855, 0x6714, 0x70C1, 0x65AF, 0x6495, 0x5636, 0x601D, - 0x79C1, 0x53F8, 0x4E1D, 0x6B7B, 0x8086, 0x5BFA, 0x55E3, 0x56DB, - 0x4F3A, 0x4F3C, 0x9972, 0x5DF3, 0x677E, 0x8038, 0x6002, 0x9882, - 0x9001, 0x5B8B, 0x8BBC, 0x8BF5, 0x641C, 0x8258, 0x64DE, 0x55FD, - 0x82CF, 0x9165, 0x4FD7, 0x7D20, 0x901F, 0x7C9F, 0x50F3, 0x5851, - 0x6EAF, 0x5BBF, 0x8BC9, 0x8083, 0x9178, 0x849C, 0x7B97, 0x867D, - 0x968B, 0x968F, 0x7EE5, 0x9AD3, 0x788E, 0x5C81, 0x7A57, 0x9042, - 0x96A7, 0x795F, 0x5B59, 0x635F, 0x7B0B, 0x84D1, 0x68AD, 0x5506, - 0x7F29, 0x7410, 0x7D22, 0x9501, 0x6240, 0x584C, 0x4ED6, 0x5B83, - 0x5979, 0x5854, 0x85F9, 0x85FA, 0x85FC, 0x85FD, 0x85FE, 0x8600, - 0x8601, 0x8602, 0x8603, 0x8604, 0x8606, 0x8607, 0x8608, 0x8609, - 0x860A, 0x860B, 0x860C, 0x860D, 0x860E, 0x860F, 0x8610, 0x8612, - 0x8613, 0x8614, 0x8615, 0x8617, 0x8618, 0x8619, 0x861A, 0x861B, - 0x861C, 0x861D, 0x861E, 0x861F, 0x8620, 0x8621, 0x8622, 0x8623, - 0x8624, 0x8625, 0x8626, 0x8628, 0x862A, 0x862B, 0x862C, 0x862D, - 0x862E, 0x862F, 0x8630, 0x8631, 0x8632, 0x8633, 0x8634, 0x8635, - 0x8636, 0x8637, 0x8639, 0x863A, 0x863B, 0x863D, 0x863E, 0x863F, - 0x8640, 0x8641, 0x8642, 0x8643, 0x8644, 0x8645, 0x8646, 0x8647, - 0x8648, 0x8649, 0x864A, 0x864B, 0x864C, 0x8652, 0x8653, 0x8655, - 0x8656, 0x8657, 0x8658, 0x8659, 0x865B, 0x865C, 0x865D, 0x865F, -plane 57 -at 0x00 - 0x8660, 0x8661, 0x8663, 0x8664, 0x8665, 0x8666, 0x8667, 0x8668, - 0x8669, 0x866A, 0x736D, 0x631E, 0x8E4B, 0x8E0F, 0x80CE, 0x82D4, - 0x62AC, 0x53F0, 0x6CF0, 0x915E, 0x592A, 0x6001, 0x6C70, 0x574D, - 0x644A, 0x8D2A, 0x762B, 0x6EE9, 0x575B, 0x6A80, 0x75F0, 0x6F6D, - 0x8C2D, 0x8C08, 0x5766, 0x6BEF, 0x8892, 0x78B3, 0x63A2, 0x53F9, - 0x70AD, 0x6C64, 0x5858, 0x642A, 0x5802, 0x68E0, 0x819B, 0x5510, - 0x7CD6, 0x5018, 0x8EBA, 0x6DCC, 0x8D9F, 0x70EB, 0x638F, 0x6D9B, - 0x6ED4, 0x7EE6, 0x8404, 0x6843, 0x9003, 0x6DD8, 0x9676, 0x8BA8, - 0x5957, 0x7279, 0x85E4, 0x817E, 0x75BC, 0x8A8A, 0x68AF, 0x5254, - 0x8E22, 0x9511, 0x63D0, 0x9898, 0x8E44, 0x557C, 0x4F53, 0x66FF, - 0x568F, 0x60D5, 0x6D95, 0x5243, 0x5C49, 0x5929, 0x6DFB, 0x586B, - 0x7530, 0x751C, 0x606C, 0x8214, 0x8146, 0x6311, 0x6761, 0x8FE2, - 0x773A, 0x8DF3, 0x8D34, 0x94C1, 0x5E16, 0x5385, 0x542C, 0x70C3, - 0x866D, 0x866F, 0x8670, 0x8672, 0x8673, 0x8674, 0x8675, 0x8676, - 0x8677, 0x8678, 0x8683, 0x8684, 0x8685, 0x8686, 0x8687, 0x8688, - 0x8689, 0x868E, 0x868F, 0x8690, 0x8691, 0x8692, 0x8694, 0x8696, - 0x8697, 0x8698, 0x8699, 0x869A, 0x869B, 0x869E, 0x869F, 0x86A0, - 0x86A1, 0x86A2, 0x86A5, 0x86A6, 0x86AB, 0x86AD, 0x86AE, 0x86B2, - 0x86B3, 0x86B7, 0x86B8, 0x86B9, 0x86BB, 0x86BC, 0x86BD, 0x86BE, - 0x86BF, 0x86C1, 0x86C2, 0x86C3, 0x86C5, 0x86C8, 0x86CC, 0x86CD, - 0x86D2, 0x86D3, 0x86D5, 0x86D6, 0x86D7, 0x86DA, 0x86DC, 0x86DD, - 0x86E0, 0x86E1, 0x86E2, 0x86E3, 0x86E5, 0x86E6, 0x86E7, 0x86E8, - 0x86EA, 0x86EB, 0x86EC, 0x86EF, 0x86F5, 0x86F6, 0x86F7, 0x86FA, - 0x86FB, 0x86FC, 0x86FD, 0x86FF, 0x8701, 0x8704, 0x8705, 0x8706, - 0x870B, 0x870C, 0x870E, 0x870F, 0x8710, 0x8711, 0x8714, 0x8716, - 0x6C40, 0x5EF7, 0x505C, 0x4EAD, 0x5EAD, 0x633A, 0x8247, 0x901A, - 0x6850, 0x916E, 0x77B3, 0x540C, 0x94DC, 0x5F64, 0x7AE5, 0x6876, - 0x6345, 0x7B52, 0x7EDF, 0x75DB, 0x5077, 0x6295, 0x5934, 0x900F, - 0x51F8, 0x79C3, 0x7A81, 0x56FE, 0x5F92, 0x9014, 0x6D82, 0x5C60, - 0x571F, 0x5410, 0x5154, 0x6E4D, 0x56E2, 0x63A8, 0x9893, 0x817F, - 0x8715, 0x892A, 0x9000, 0x541E, 0x5C6F, 0x81C0, 0x62D6, 0x6258, - 0x8131, 0x9E35, 0x9640, 0x9A6E, 0x9A7C, 0x692D, 0x59A5, 0x62D3, -plane 58 -at 0x00 - 0x553E, 0x6316, 0x54C7, 0x86D9, 0x6D3C, 0x5A03, 0x74E6, 0x889C, - 0x6B6A, 0x5916, 0x8C4C, 0x5F2F, 0x6E7E, 0x73A9, 0x987D, 0x4E38, - 0x70F7, 0x5B8C, 0x7897, 0x633D, 0x665A, 0x7696, 0x60CB, 0x5B9B, - 0x5A49, 0x4E07, 0x8155, 0x6C6A, 0x738B, 0x4EA1, 0x6789, 0x7F51, - 0x5F80, 0x65FA, 0x671B, 0x5FD8, 0x5984, 0x5A01, 0x8719, 0x871B, - 0x871D, 0x871F, 0x8720, 0x8724, 0x8726, 0x8727, 0x8728, 0x872A, - 0x872B, 0x872C, 0x872D, 0x872F, 0x8730, 0x8732, 0x8733, 0x8735, - 0x8736, 0x8738, 0x8739, 0x873A, 0x873C, 0x873D, 0x8740, 0x8741, - 0x8742, 0x8743, 0x8744, 0x8745, 0x8746, 0x874A, 0x874B, 0x874D, - 0x874F, 0x8750, 0x8751, 0x8752, 0x8754, 0x8755, 0x8756, 0x8758, - 0x875A, 0x875B, 0x875C, 0x875D, 0x875E, 0x875F, 0x8761, 0x8762, - 0x8766, 0x8767, 0x8768, 0x8769, 0x876A, 0x876B, 0x876C, 0x876D, - 0x876F, 0x8771, 0x8772, 0x8773, 0x8775, 0x8777, 0x8778, 0x8779, - 0x877A, 0x877F, 0x8780, 0x8781, 0x8784, 0x8786, 0x8787, 0x8789, - 0x878A, 0x878C, 0x878E, 0x878F, 0x8790, 0x8791, 0x8792, 0x8794, - 0x8795, 0x8796, 0x8798, 0x8799, 0x879A, 0x879B, 0x879C, 0x879D, - 0x879E, 0x87A0, 0x87A1, 0x87A2, 0x87A3, 0x87A4, 0x5DCD, 0x5FAE, - 0x5371, 0x97E6, 0x8FDD, 0x6845, 0x56F4, 0x552F, 0x60DF, 0x4E3A, - 0x6F4D, 0x7EF4, 0x82C7, 0x840E, 0x59D4, 0x4F1F, 0x4F2A, 0x5C3E, - 0x7EAC, 0x672A, 0x851A, 0x5473, 0x754F, 0x80C3, 0x5582, 0x9B4F, - 0x4F4D, 0x6E2D, 0x8C13, 0x5C09, 0x6170, 0x536B, 0x761F, 0x6E29, - 0x868A, 0x6587, 0x95FB, 0x7EB9, 0x543B, 0x7A33, 0x7D0A, 0x95EE, - 0x55E1, 0x7FC1, 0x74EE, 0x631D, 0x8717, 0x6DA1, 0x7A9D, 0x6211, - 0x65A1, 0x5367, 0x63E1, 0x6C83, 0x5DEB, 0x545C, 0x94A8, 0x4E4C, - 0x6C61, 0x8BEC, 0x5C4B, 0x65E0, 0x829C, 0x68A7, 0x543E, 0x5434, - 0x6BCB, 0x6B66, 0x4E94, 0x6342, 0x5348, 0x821E, 0x4F0D, 0x4FAE, - 0x575E, 0x620A, 0x96FE, 0x6664, 0x7269, 0x52FF, 0x52A1, 0x609F, - 0x8BEF, 0x6614, 0x7199, 0x6790, 0x897F, 0x7852, 0x77FD, 0x6670, - 0x563B, 0x5438, 0x9521, 0x727A, 0x87A5, 0x87A6, 0x87A7, 0x87A9, - 0x87AA, 0x87AE, 0x87B0, 0x87B1, 0x87B2, 0x87B4, 0x87B6, 0x87B7, - 0x87B8, 0x87B9, 0x87BB, 0x87BC, 0x87BE, 0x87BF, 0x87C1, 0x87C2, - 0x87C3, 0x87C4, 0x87C5, 0x87C7, 0x87C8, 0x87C9, 0x87CC, 0x87CD, -plane 59 -at 0x00 - 0x87CE, 0x87CF, 0x87D0, 0x87D4, 0x87D5, 0x87D6, 0x87D7, 0x87D8, - 0x87D9, 0x87DA, 0x87DC, 0x87DD, 0x87DE, 0x87DF, 0x87E1, 0x87E2, - 0x87E3, 0x87E4, 0x87E6, 0x87E7, 0x87E8, 0x87E9, 0x87EB, 0x87EC, - 0x87ED, 0x87EF, 0x87F0, 0x87F1, 0x87F2, 0x87F3, 0x87F4, 0x87F5, - 0x87F6, 0x87F7, 0x87F8, 0x87FA, 0x87FB, 0x87FC, 0x87FD, 0x87FF, - 0x8800, 0x8801, 0x8802, 0x8804, 0x8805, 0x8806, 0x8807, 0x8808, - 0x8809, 0x880B, 0x880C, 0x880D, 0x880E, 0x880F, 0x8810, 0x8811, - 0x8812, 0x8814, 0x8817, 0x8818, 0x8819, 0x881A, 0x881C, 0x881D, - 0x881E, 0x881F, 0x8820, 0x8823, 0x7A00, 0x606F, 0x5E0C, 0x6089, - 0x819D, 0x5915, 0x60DC, 0x7184, 0x70EF, 0x6EAA, 0x6C50, 0x7280, - 0x6A84, 0x88AD, 0x5E2D, 0x4E60, 0x5AB3, 0x559C, 0x94E3, 0x6D17, - 0x7CFB, 0x9699, 0x620F, 0x7EC6, 0x778E, 0x867E, 0x5323, 0x971E, - 0x8F96, 0x6687, 0x5CE1, 0x4FA0, 0x72ED, 0x4E0B, 0x53A6, 0x590F, - 0x5413, 0x6380, 0x9528, 0x5148, 0x4ED9, 0x9C9C, 0x7EA4, 0x54B8, - 0x8D24, 0x8854, 0x8237, 0x95F2, 0x6D8E, 0x5F26, 0x5ACC, 0x663E, - 0x9669, 0x73B0, 0x732E, 0x53BF, 0x817A, 0x9985, 0x7FA1, 0x5BAA, - 0x9677, 0x9650, 0x7EBF, 0x76F8, 0x53A2, 0x9576, 0x9999, 0x7BB1, - 0x8944, 0x6E58, 0x4E61, 0x7FD4, 0x7965, 0x8BE6, 0x60F3, 0x54CD, - 0x4EAB, 0x9879, 0x5DF7, 0x6A61, 0x50CF, 0x5411, 0x8C61, 0x8427, - 0x785D, 0x9704, 0x524A, 0x54EE, 0x56A3, 0x9500, 0x6D88, 0x5BB5, - 0x6DC6, 0x6653, 0x8824, 0x8825, 0x8826, 0x8827, 0x8828, 0x8829, - 0x882A, 0x882B, 0x882C, 0x882D, 0x882E, 0x882F, 0x8830, 0x8831, - 0x8833, 0x8834, 0x8835, 0x8836, 0x8837, 0x8838, 0x883A, 0x883B, - 0x883D, 0x883E, 0x883F, 0x8841, 0x8842, 0x8843, 0x8846, 0x8847, - 0x8848, 0x8849, 0x884A, 0x884B, 0x884E, 0x884F, 0x8850, 0x8851, - 0x8852, 0x8853, 0x8855, 0x8856, 0x8858, 0x885A, 0x885B, 0x885C, - 0x885D, 0x885E, 0x885F, 0x8860, 0x8866, 0x8867, 0x886A, 0x886D, - 0x886F, 0x8871, 0x8873, 0x8874, 0x8875, 0x8876, 0x8878, 0x8879, - 0x887A, 0x887B, 0x887C, 0x8880, 0x8883, 0x8886, 0x8887, 0x8889, - 0x888A, 0x888C, 0x888E, 0x888F, 0x8890, 0x8891, 0x8893, 0x8894, - 0x8895, 0x8897, 0x8898, 0x8899, 0x889A, 0x889B, 0x889D, 0x889E, - 0x889F, 0x88A0, 0x88A1, 0x88A3, 0x88A5, 0x88A6, 0x88A7, 0x88A8, -plane 60 -at 0x00 - 0x88A9, 0x88AA, 0x5C0F, 0x5B5D, 0x6821, 0x8096, 0x5578, 0x7B11, - 0x6548, 0x6954, 0x4E9B, 0x6B47, 0x874E, 0x978B, 0x534F, 0x631F, - 0x643A, 0x90AA, 0x659C, 0x80C1, 0x8C10, 0x5199, 0x68B0, 0x5378, - 0x87F9, 0x61C8, 0x6CC4, 0x6CFB, 0x8C22, 0x5C51, 0x85AA, 0x82AF, - 0x950C, 0x6B23, 0x8F9B, 0x65B0, 0x5FFB, 0x5FC3, 0x4FE1, 0x8845, - 0x661F, 0x8165, 0x7329, 0x60FA, 0x5174, 0x5211, 0x578B, 0x5F62, - 0x90A2, 0x884C, 0x9192, 0x5E78, 0x674F, 0x6027, 0x59D3, 0x5144, - 0x51F6, 0x80F8, 0x5308, 0x6C79, 0x96C4, 0x718A, 0x4F11, 0x4FEE, - 0x7F9E, 0x673D, 0x55C5, 0x9508, 0x79C0, 0x8896, 0x7EE3, 0x589F, - 0x620C, 0x9700, 0x865A, 0x5618, 0x987B, 0x5F90, 0x8BB8, 0x84C4, - 0x9157, 0x53D9, 0x65ED, 0x5E8F, 0x755C, 0x6064, 0x7D6E, 0x5A7F, - 0x7EEA, 0x7EED, 0x8F69, 0x55A7, 0x5BA3, 0x60AC, 0x65CB, 0x7384, - 0x88AC, 0x88AE, 0x88AF, 0x88B0, 0x88B2, 0x88B3, 0x88B4, 0x88B5, - 0x88B6, 0x88B8, 0x88B9, 0x88BA, 0x88BB, 0x88BD, 0x88BE, 0x88BF, - 0x88C0, 0x88C3, 0x88C4, 0x88C7, 0x88C8, 0x88CA, 0x88CB, 0x88CC, - 0x88CD, 0x88CF, 0x88D0, 0x88D1, 0x88D3, 0x88D6, 0x88D7, 0x88DA, - 0x88DB, 0x88DC, 0x88DD, 0x88DE, 0x88E0, 0x88E1, 0x88E6, 0x88E7, - 0x88E9, 0x88EA, 0x88EB, 0x88EC, 0x88ED, 0x88EE, 0x88EF, 0x88F2, - 0x88F5, 0x88F6, 0x88F7, 0x88FA, 0x88FB, 0x88FD, 0x88FF, 0x8900, - 0x8901, 0x8903, 0x8904, 0x8905, 0x8906, 0x8907, 0x8908, 0x8909, - 0x890B, 0x890C, 0x890D, 0x890E, 0x890F, 0x8911, 0x8914, 0x8915, - 0x8916, 0x8917, 0x8918, 0x891C, 0x891D, 0x891E, 0x891F, 0x8920, - 0x8922, 0x8923, 0x8924, 0x8926, 0x8927, 0x8928, 0x8929, 0x892C, - 0x892D, 0x892E, 0x892F, 0x8931, 0x8932, 0x8933, 0x8935, 0x8937, - 0x9009, 0x7663, 0x7729, 0x7EDA, 0x9774, 0x859B, 0x5B66, 0x7A74, - 0x96EA, 0x8840, 0x52CB, 0x718F, 0x5FAA, 0x65EC, 0x8BE2, 0x5BFB, - 0x9A6F, 0x5DE1, 0x6B89, 0x6C5B, 0x8BAD, 0x8BAF, 0x900A, 0x8FC5, - 0x538B, 0x62BC, 0x9E26, 0x9E2D, 0x5440, 0x4E2B, 0x82BD, 0x7259, - 0x869C, 0x5D16, 0x8859, 0x6DAF, 0x96C5, 0x54D1, 0x4E9A, 0x8BB6, - 0x7109, 0x54BD, 0x9609, 0x70DF, 0x6DF9, 0x76D0, 0x4E25, 0x7814, - 0x8712, 0x5CA9, 0x5EF6, 0x8A00, 0x989C, 0x960E, 0x708E, 0x6CBF, - 0x5944, 0x63A9, 0x773C, 0x884D, 0x6F14, 0x8273, 0x5830, 0x71D5, -plane 61 -at 0x00 - 0x538C, 0x781A, 0x96C1, 0x5501, 0x5F66, 0x7130, 0x5BB4, 0x8C1A, - 0x9A8C, 0x6B83, 0x592E, 0x9E2F, 0x79E7, 0x6768, 0x626C, 0x4F6F, - 0x75A1, 0x7F8A, 0x6D0B, 0x9633, 0x6C27, 0x4EF0, 0x75D2, 0x517B, - 0x6837, 0x6F3E, 0x9080, 0x8170, 0x5996, 0x7476, 0x8938, 0x8939, - 0x893A, 0x893B, 0x893C, 0x893D, 0x893E, 0x893F, 0x8940, 0x8942, - 0x8943, 0x8945, 0x8946, 0x8947, 0x8948, 0x8949, 0x894A, 0x894B, - 0x894C, 0x894D, 0x894E, 0x894F, 0x8950, 0x8951, 0x8952, 0x8953, - 0x8954, 0x8955, 0x8956, 0x8957, 0x8958, 0x8959, 0x895A, 0x895B, - 0x895C, 0x895D, 0x8960, 0x8961, 0x8962, 0x8963, 0x8964, 0x8965, - 0x8967, 0x8968, 0x8969, 0x896A, 0x896B, 0x896C, 0x896D, 0x896E, - 0x896F, 0x8970, 0x8971, 0x8972, 0x8973, 0x8974, 0x8975, 0x8976, - 0x8977, 0x8978, 0x8979, 0x897A, 0x897C, 0x897D, 0x897E, 0x8980, - 0x8982, 0x8984, 0x8985, 0x8987, 0x8988, 0x8989, 0x898A, 0x898B, - 0x898C, 0x898D, 0x898E, 0x898F, 0x8990, 0x8991, 0x8992, 0x8993, - 0x8994, 0x8995, 0x8996, 0x8997, 0x8998, 0x8999, 0x899A, 0x899B, - 0x899C, 0x899D, 0x899E, 0x899F, 0x89A0, 0x89A1, 0x6447, 0x5C27, - 0x9065, 0x7A91, 0x8C23, 0x59DA, 0x54AC, 0x8200, 0x836F, 0x8981, - 0x8000, 0x6930, 0x564E, 0x8036, 0x7237, 0x91CE, 0x51B6, 0x4E5F, - 0x9875, 0x6396, 0x4E1A, 0x53F6, 0x66F3, 0x814B, 0x591C, 0x6DB2, - 0x4E00, 0x58F9, 0x533B, 0x63D6, 0x94F1, 0x4F9D, 0x4F0A, 0x8863, - 0x9890, 0x5937, 0x9057, 0x79FB, 0x4EEA, 0x80F0, 0x7591, 0x6C82, - 0x5B9C, 0x59E8, 0x5F5D, 0x6905, 0x8681, 0x501A, 0x5DF2, 0x4E59, - 0x77E3, 0x4EE5, 0x827A, 0x6291, 0x6613, 0x9091, 0x5C79, 0x4EBF, - 0x5F79, 0x81C6, 0x9038, 0x8084, 0x75AB, 0x4EA6, 0x88D4, 0x610F, - 0x6BC5, 0x5FC6, 0x4E49, 0x76CA, 0x6EA2, 0x8BE3, 0x8BAE, 0x8C0A, - 0x8BD1, 0x5F02, 0x7FFC, 0x7FCC, 0x7ECE, 0x8335, 0x836B, 0x56E0, - 0x6BB7, 0x97F3, 0x9634, 0x59FB, 0x541F, 0x94F6, 0x6DEB, 0x5BC5, - 0x996E, 0x5C39, 0x5F15, 0x9690, 0x89A2, 0x89A3, 0x89A4, 0x89A5, - 0x89A6, 0x89A7, 0x89A8, 0x89A9, 0x89AA, 0x89AB, 0x89AC, 0x89AD, - 0x89AE, 0x89AF, 0x89B0, 0x89B1, 0x89B2, 0x89B3, 0x89B4, 0x89B5, - 0x89B6, 0x89B7, 0x89B8, 0x89B9, 0x89BA, 0x89BB, 0x89BC, 0x89BD, - 0x89BE, 0x89BF, 0x89C0, 0x89C3, 0x89CD, 0x89D3, 0x89D4, 0x89D5, -plane 62 -at 0x00 - 0x89D7, 0x89D8, 0x89D9, 0x89DB, 0x89DD, 0x89DF, 0x89E0, 0x89E1, - 0x89E2, 0x89E4, 0x89E7, 0x89E8, 0x89E9, 0x89EA, 0x89EC, 0x89ED, - 0x89EE, 0x89F0, 0x89F1, 0x89F2, 0x89F4, 0x89F5, 0x89F6, 0x89F7, - 0x89F8, 0x89F9, 0x89FA, 0x89FB, 0x89FC, 0x89FD, 0x89FE, 0x89FF, - 0x8A01, 0x8A02, 0x8A03, 0x8A04, 0x8A05, 0x8A06, 0x8A08, 0x8A09, - 0x8A0A, 0x8A0B, 0x8A0C, 0x8A0D, 0x8A0E, 0x8A0F, 0x8A10, 0x8A11, - 0x8A12, 0x8A13, 0x8A14, 0x8A15, 0x8A16, 0x8A17, 0x8A18, 0x8A19, - 0x8A1A, 0x8A1B, 0x8A1C, 0x8A1D, 0x5370, 0x82F1, 0x6A31, 0x5A74, - 0x9E70, 0x5E94, 0x7F28, 0x83B9, 0x8424, 0x8425, 0x8367, 0x8747, - 0x8FCE, 0x8D62, 0x76C8, 0x5F71, 0x9896, 0x786C, 0x6620, 0x54DF, - 0x62E5, 0x4F63, 0x81C3, 0x75C8, 0x5EB8, 0x96CD, 0x8E0A, 0x86F9, - 0x548F, 0x6CF3, 0x6D8C, 0x6C38, 0x607F, 0x52C7, 0x7528, 0x5E7D, - 0x4F18, 0x60A0, 0x5FE7, 0x5C24, 0x7531, 0x90AE, 0x94C0, 0x72B9, - 0x6CB9, 0x6E38, 0x9149, 0x6709, 0x53CB, 0x53F3, 0x4F51, 0x91C9, - 0x8BF1, 0x53C8, 0x5E7C, 0x8FC2, 0x6DE4, 0x4E8E, 0x76C2, 0x6986, - 0x865E, 0x611A, 0x8206, 0x4F59, 0x4FDE, 0x903E, 0x9C7C, 0x6109, - 0x6E1D, 0x6E14, 0x9685, 0x4E88, 0x5A31, 0x96E8, 0x4E0E, 0x5C7F, - 0x79B9, 0x5B87, 0x8BED, 0x7FBD, 0x7389, 0x57DF, 0x828B, 0x90C1, - 0x5401, 0x9047, 0x55BB, 0x5CEA, 0x5FA1, 0x6108, 0x6B32, 0x72F1, - 0x80B2, 0x8A89, 0x8A1E, 0x8A1F, 0x8A20, 0x8A21, 0x8A22, 0x8A23, - 0x8A24, 0x8A25, 0x8A26, 0x8A27, 0x8A28, 0x8A29, 0x8A2A, 0x8A2B, - 0x8A2C, 0x8A2D, 0x8A2E, 0x8A2F, 0x8A30, 0x8A31, 0x8A32, 0x8A33, - 0x8A34, 0x8A35, 0x8A36, 0x8A37, 0x8A38, 0x8A39, 0x8A3A, 0x8A3B, - 0x8A3C, 0x8A3D, 0x8A3F, 0x8A40, 0x8A41, 0x8A42, 0x8A43, 0x8A44, - 0x8A45, 0x8A46, 0x8A47, 0x8A49, 0x8A4A, 0x8A4B, 0x8A4C, 0x8A4D, - 0x8A4E, 0x8A4F, 0x8A50, 0x8A51, 0x8A52, 0x8A53, 0x8A54, 0x8A55, - 0x8A56, 0x8A57, 0x8A58, 0x8A59, 0x8A5A, 0x8A5B, 0x8A5C, 0x8A5D, - 0x8A5E, 0x8A5F, 0x8A60, 0x8A61, 0x8A62, 0x8A63, 0x8A64, 0x8A65, - 0x8A66, 0x8A67, 0x8A68, 0x8A69, 0x8A6A, 0x8A6B, 0x8A6C, 0x8A6D, - 0x8A6E, 0x8A6F, 0x8A70, 0x8A71, 0x8A72, 0x8A73, 0x8A74, 0x8A75, - 0x8A76, 0x8A77, 0x8A78, 0x8A7A, 0x8A7B, 0x8A7C, 0x8A7D, 0x8A7E, - 0x8A7F, 0x8A80, 0x6D74, 0x5BD3, 0x88D5, 0x9884, 0x8C6B, 0x9A6D, -plane 63 -at 0x00 - 0x9E33, 0x6E0A, 0x51A4, 0x5143, 0x57A3, 0x8881, 0x539F, 0x63F4, - 0x8F95, 0x56ED, 0x5458, 0x5706, 0x733F, 0x6E90, 0x7F18, 0x8FDC, - 0x82D1, 0x613F, 0x6028, 0x9662, 0x66F0, 0x7EA6, 0x8D8A, 0x8DC3, - 0x94A5, 0x5CB3, 0x7CA4, 0x6708, 0x60A6, 0x9605, 0x8018, 0x4E91, - 0x90E7, 0x5300, 0x9668, 0x5141, 0x8FD0, 0x8574, 0x915D, 0x6655, - 0x97F5, 0x5B55, 0x531D, 0x7838, 0x6742, 0x683D, 0x54C9, 0x707E, - 0x5BB0, 0x8F7D, 0x518D, 0x5728, 0x54B1, 0x6512, 0x6682, 0x8D5E, - 0x8D43, 0x810F, 0x846C, 0x906D, 0x7CDF, 0x51FF, 0x85FB, 0x67A3, - 0x65E9, 0x6FA1, 0x86A4, 0x8E81, 0x566A, 0x9020, 0x7682, 0x7076, - 0x71E5, 0x8D23, 0x62E9, 0x5219, 0x6CFD, 0x8D3C, 0x600E, 0x589E, - 0x618E, 0x66FE, 0x8D60, 0x624E, 0x55B3, 0x6E23, 0x672D, 0x8F67, - 0x8A81, 0x8A82, 0x8A83, 0x8A84, 0x8A85, 0x8A86, 0x8A87, 0x8A88, - 0x8A8B, 0x8A8C, 0x8A8D, 0x8A8E, 0x8A8F, 0x8A90, 0x8A91, 0x8A92, - 0x8A94, 0x8A95, 0x8A96, 0x8A97, 0x8A98, 0x8A99, 0x8A9A, 0x8A9B, - 0x8A9C, 0x8A9D, 0x8A9E, 0x8A9F, 0x8AA0, 0x8AA1, 0x8AA2, 0x8AA3, - 0x8AA4, 0x8AA5, 0x8AA6, 0x8AA7, 0x8AA8, 0x8AA9, 0x8AAA, 0x8AAB, - 0x8AAC, 0x8AAD, 0x8AAE, 0x8AAF, 0x8AB0, 0x8AB1, 0x8AB2, 0x8AB3, - 0x8AB4, 0x8AB5, 0x8AB6, 0x8AB7, 0x8AB8, 0x8AB9, 0x8ABA, 0x8ABB, - 0x8ABC, 0x8ABD, 0x8ABE, 0x8ABF, 0x8AC0, 0x8AC1, 0x8AC2, 0x8AC3, - 0x8AC4, 0x8AC5, 0x8AC6, 0x8AC7, 0x8AC8, 0x8AC9, 0x8ACA, 0x8ACB, - 0x8ACC, 0x8ACD, 0x8ACE, 0x8ACF, 0x8AD0, 0x8AD1, 0x8AD2, 0x8AD3, - 0x8AD4, 0x8AD5, 0x8AD6, 0x8AD7, 0x8AD8, 0x8AD9, 0x8ADA, 0x8ADB, - 0x8ADC, 0x8ADD, 0x8ADE, 0x8ADF, 0x8AE0, 0x8AE1, 0x8AE2, 0x8AE3, - 0x94E1, 0x95F8, 0x7728, 0x6805, 0x69A8, 0x548B, 0x4E4D, 0x70B8, - 0x8BC8, 0x6458, 0x658B, 0x5B85, 0x7A84, 0x503A, 0x5BE8, 0x77BB, - 0x6BE1, 0x8A79, 0x7C98, 0x6CBE, 0x76CF, 0x65A9, 0x8F97, 0x5D2D, - 0x5C55, 0x8638, 0x6808, 0x5360, 0x6218, 0x7AD9, 0x6E5B, 0x7EFD, - 0x6A1F, 0x7AE0, 0x5F70, 0x6F33, 0x5F20, 0x638C, 0x6DA8, 0x6756, - 0x4E08, 0x5E10, 0x8D26, 0x4ED7, 0x80C0, 0x7634, 0x969C, 0x62DB, - 0x662D, 0x627E, 0x6CBC, 0x8D75, 0x7167, 0x7F69, 0x5146, 0x8087, - 0x53EC, 0x906E, 0x6298, 0x54F2, 0x86F0, 0x8F99, 0x8005, 0x9517, - 0x8517, 0x8FD9, 0x6D59, 0x73CD, 0x659F, 0x771F, 0x7504, 0x7827, -plane 64 -at 0x00 - 0x81FB, 0x8D1E, 0x9488, 0x4FA6, 0x6795, 0x75B9, 0x8BCA, 0x9707, - 0x632F, 0x9547, 0x9635, 0x84B8, 0x6323, 0x7741, 0x5F81, 0x72F0, - 0x4E89, 0x6014, 0x6574, 0x62EF, 0x6B63, 0x653F, 0x8AE4, 0x8AE5, - 0x8AE6, 0x8AE7, 0x8AE8, 0x8AE9, 0x8AEA, 0x8AEB, 0x8AEC, 0x8AED, - 0x8AEE, 0x8AEF, 0x8AF0, 0x8AF1, 0x8AF2, 0x8AF3, 0x8AF4, 0x8AF5, - 0x8AF6, 0x8AF7, 0x8AF8, 0x8AF9, 0x8AFA, 0x8AFB, 0x8AFC, 0x8AFD, - 0x8AFE, 0x8AFF, 0x8B00, 0x8B01, 0x8B02, 0x8B03, 0x8B04, 0x8B05, - 0x8B06, 0x8B08, 0x8B09, 0x8B0A, 0x8B0B, 0x8B0C, 0x8B0D, 0x8B0E, - 0x8B0F, 0x8B10, 0x8B11, 0x8B12, 0x8B13, 0x8B14, 0x8B15, 0x8B16, - 0x8B17, 0x8B18, 0x8B19, 0x8B1A, 0x8B1B, 0x8B1C, 0x8B1D, 0x8B1E, - 0x8B1F, 0x8B20, 0x8B21, 0x8B22, 0x8B23, 0x8B24, 0x8B25, 0x8B27, - 0x8B28, 0x8B29, 0x8B2A, 0x8B2B, 0x8B2C, 0x8B2D, 0x8B2E, 0x8B2F, - 0x8B30, 0x8B31, 0x8B32, 0x8B33, 0x8B34, 0x8B35, 0x8B36, 0x8B37, - 0x8B38, 0x8B39, 0x8B3A, 0x8B3B, 0x8B3C, 0x8B3D, 0x8B3E, 0x8B3F, - 0x8B40, 0x8B41, 0x8B42, 0x8B43, 0x8B44, 0x8B45, 0x5E27, 0x75C7, - 0x90D1, 0x8BC1, 0x829D, 0x679D, 0x652F, 0x5431, 0x8718, 0x77E5, - 0x80A2, 0x8102, 0x6C41, 0x4E4B, 0x7EC7, 0x804C, 0x76F4, 0x690D, - 0x6B96, 0x6267, 0x503C, 0x4F84, 0x5740, 0x6307, 0x6B62, 0x8DBE, - 0x53EA, 0x65E8, 0x7EB8, 0x5FD7, 0x631A, 0x63B7, 0x81F3, 0x81F4, - 0x7F6E, 0x5E1C, 0x5CD9, 0x5236, 0x667A, 0x79E9, 0x7A1A, 0x8D28, - 0x7099, 0x75D4, 0x6EDE, 0x6CBB, 0x7A92, 0x4E2D, 0x76C5, 0x5FE0, - 0x949F, 0x8877, 0x7EC8, 0x79CD, 0x80BF, 0x91CD, 0x4EF2, 0x4F17, - 0x821F, 0x5468, 0x5DDE, 0x6D32, 0x8BCC, 0x7CA5, 0x8F74, 0x8098, - 0x5E1A, 0x5492, 0x76B1, 0x5B99, 0x663C, 0x9AA4, 0x73E0, 0x682A, - 0x86DB, 0x6731, 0x732A, 0x8BF8, 0x8BDB, 0x9010, 0x7AF9, 0x70DB, - 0x716E, 0x62C4, 0x77A9, 0x5631, 0x4E3B, 0x8457, 0x67F1, 0x52A9, - 0x86C0, 0x8D2E, 0x94F8, 0x7B51, 0x8B46, 0x8B47, 0x8B48, 0x8B49, - 0x8B4A, 0x8B4B, 0x8B4C, 0x8B4D, 0x8B4E, 0x8B4F, 0x8B50, 0x8B51, - 0x8B52, 0x8B53, 0x8B54, 0x8B55, 0x8B56, 0x8B57, 0x8B58, 0x8B59, - 0x8B5A, 0x8B5B, 0x8B5C, 0x8B5D, 0x8B5E, 0x8B5F, 0x8B60, 0x8B61, - 0x8B62, 0x8B63, 0x8B64, 0x8B65, 0x8B67, 0x8B68, 0x8B69, 0x8B6A, - 0x8B6B, 0x8B6D, 0x8B6E, 0x8B6F, 0x8B70, 0x8B71, 0x8B72, 0x8B73, -plane 65 -at 0x00 - 0x8B74, 0x8B75, 0x8B76, 0x8B77, 0x8B78, 0x8B79, 0x8B7A, 0x8B7B, - 0x8B7C, 0x8B7D, 0x8B7E, 0x8B7F, 0x8B80, 0x8B81, 0x8B82, 0x8B83, - 0x8B84, 0x8B85, 0x8B86, 0x8B87, 0x8B88, 0x8B89, 0x8B8A, 0x8B8B, - 0x8B8C, 0x8B8D, 0x8B8E, 0x8B8F, 0x8B90, 0x8B91, 0x8B92, 0x8B93, - 0x8B94, 0x8B95, 0x8B96, 0x8B97, 0x8B98, 0x8B99, 0x8B9A, 0x8B9B, - 0x8B9C, 0x8B9D, 0x8B9E, 0x8B9F, 0x8BAC, 0x8BB1, 0x8BBB, 0x8BC7, - 0x8BD0, 0x8BEA, 0x8C09, 0x8C1E, 0x4F4F, 0x6CE8, 0x795D, 0x9A7B, - 0x6293, 0x722A, 0x62FD, 0x4E13, 0x7816, 0x8F6C, 0x64B0, 0x8D5A, - 0x7BC6, 0x6869, 0x5E84, 0x88C5, 0x5986, 0x649E, 0x58EE, 0x72B6, - 0x690E, 0x9525, 0x8FFD, 0x8D58, 0x5760, 0x7F00, 0x8C06, 0x51C6, - 0x6349, 0x62D9, 0x5353, 0x684C, 0x7422, 0x8301, 0x914C, 0x5544, - 0x7740, 0x707C, 0x6D4A, 0x5179, 0x54A8, 0x8D44, 0x59FF, 0x6ECB, - 0x6DC4, 0x5B5C, 0x7D2B, 0x4ED4, 0x7C7D, 0x6ED3, 0x5B50, 0x81EA, - 0x6E0D, 0x5B57, 0x9B03, 0x68D5, 0x8E2A, 0x5B97, 0x7EFC, 0x603B, - 0x7EB5, 0x90B9, 0x8D70, 0x594F, 0x63CD, 0x79DF, 0x8DB3, 0x5352, - 0x65CF, 0x7956, 0x8BC5, 0x963B, 0x7EC4, 0x94BB, 0x7E82, 0x5634, - 0x9189, 0x6700, 0x7F6A, 0x5C0A, 0x9075, 0x6628, 0x5DE6, 0x4F50, - 0x67DE, 0x505A, 0x4F5C, 0x5750, 0x5EA7, 0, 0, 0, - 0, 0, 0x8C38, 0x8C39, 0x8C3A, 0x8C3B, 0x8C3C, 0x8C3D, - 0x8C3E, 0x8C3F, 0x8C40, 0x8C42, 0x8C43, 0x8C44, 0x8C45, 0x8C48, - 0x8C4A, 0x8C4B, 0x8C4D, 0x8C4E, 0x8C4F, 0x8C50, 0x8C51, 0x8C52, - 0x8C53, 0x8C54, 0x8C56, 0x8C57, 0x8C58, 0x8C59, 0x8C5B, 0x8C5C, - 0x8C5D, 0x8C5E, 0x8C5F, 0x8C60, 0x8C63, 0x8C64, 0x8C65, 0x8C66, - 0x8C67, 0x8C68, 0x8C69, 0x8C6C, 0x8C6D, 0x8C6E, 0x8C6F, 0x8C70, - 0x8C71, 0x8C72, 0x8C74, 0x8C75, 0x8C76, 0x8C77, 0x8C7B, 0x8C7C, - 0x8C7D, 0x8C7E, 0x8C7F, 0x8C80, 0x8C81, 0x8C83, 0x8C84, 0x8C86, - 0x8C87, 0x8C88, 0x8C8B, 0x8C8D, 0x8C8E, 0x8C8F, 0x8C90, 0x8C91, - 0x8C92, 0x8C93, 0x8C95, 0x8C96, 0x8C97, 0x8C99, 0x8C9A, 0x8C9B, - 0x8C9C, 0x8C9D, 0x8C9E, 0x8C9F, 0x8CA0, 0x8CA1, 0x8CA2, 0x8CA3, - 0x8CA4, 0x8CA5, 0x8CA6, 0x8CA7, 0x8CA8, 0x8CA9, 0x8CAA, 0x8CAB, - 0x8CAC, 0x8CAD, 0x4E8D, 0x4E0C, 0x5140, 0x4E10, 0x5EFF, 0x5345, - 0x4E15, 0x4E98, 0x4E1E, 0x9B32, 0x5B6C, 0x5669, 0x4E28, 0x79BA, -plane 66 -at 0x00 - 0x4E3F, 0x5315, 0x4E47, 0x592D, 0x723B, 0x536E, 0x6C10, 0x56DF, - 0x80E4, 0x9997, 0x6BD3, 0x777E, 0x9F17, 0x4E36, 0x4E9F, 0x9F10, - 0x4E5C, 0x4E69, 0x4E93, 0x8288, 0x5B5B, 0x556C, 0x560F, 0x4EC4, - 0x538D, 0x539D, 0x53A3, 0x53A5, 0x53AE, 0x9765, 0x8D5D, 0x531A, - 0x53F5, 0x5326, 0x532E, 0x533E, 0x8D5C, 0x5366, 0x5363, 0x5202, - 0x5208, 0x520E, 0x522D, 0x5233, 0x523F, 0x5240, 0x524C, 0x525E, - 0x5261, 0x525C, 0x84AF, 0x527D, 0x5282, 0x5281, 0x5290, 0x5293, - 0x5182, 0x7F54, 0x4EBB, 0x4EC3, 0x4EC9, 0x4EC2, 0x4EE8, 0x4EE1, - 0x4EEB, 0x4EDE, 0x4F1B, 0x4EF3, 0x4F22, 0x4F64, 0x4EF5, 0x4F25, - 0x4F27, 0x4F09, 0x4F2B, 0x4F5E, 0x4F67, 0x6538, 0x4F5A, 0x4F5D, - 0x8CAE, 0x8CAF, 0x8CB0, 0x8CB1, 0x8CB2, 0x8CB3, 0x8CB4, 0x8CB5, - 0x8CB6, 0x8CB7, 0x8CB8, 0x8CB9, 0x8CBA, 0x8CBB, 0x8CBC, 0x8CBD, - 0x8CBE, 0x8CBF, 0x8CC0, 0x8CC1, 0x8CC2, 0x8CC3, 0x8CC4, 0x8CC5, - 0x8CC6, 0x8CC7, 0x8CC8, 0x8CC9, 0x8CCA, 0x8CCB, 0x8CCC, 0x8CCD, - 0x8CCE, 0x8CCF, 0x8CD0, 0x8CD1, 0x8CD2, 0x8CD3, 0x8CD4, 0x8CD5, - 0x8CD6, 0x8CD7, 0x8CD8, 0x8CD9, 0x8CDA, 0x8CDB, 0x8CDC, 0x8CDD, - 0x8CDE, 0x8CDF, 0x8CE0, 0x8CE1, 0x8CE2, 0x8CE3, 0x8CE4, 0x8CE5, - 0x8CE6, 0x8CE7, 0x8CE8, 0x8CE9, 0x8CEA, 0x8CEB, 0x8CEC, 0x8CED, - 0x8CEE, 0x8CEF, 0x8CF0, 0x8CF1, 0x8CF2, 0x8CF3, 0x8CF4, 0x8CF5, - 0x8CF6, 0x8CF7, 0x8CF8, 0x8CF9, 0x8CFA, 0x8CFB, 0x8CFC, 0x8CFD, - 0x8CFE, 0x8CFF, 0x8D00, 0x8D01, 0x8D02, 0x8D03, 0x8D04, 0x8D05, - 0x8D06, 0x8D07, 0x8D08, 0x8D09, 0x8D0A, 0x8D0B, 0x8D0C, 0x8D0D, - 0x4F5F, 0x4F57, 0x4F32, 0x4F3D, 0x4F76, 0x4F74, 0x4F91, 0x4F89, - 0x4F83, 0x4F8F, 0x4F7E, 0x4F7B, 0x4FAA, 0x4F7C, 0x4FAC, 0x4F94, - 0x4FE6, 0x4FE8, 0x4FEA, 0x4FC5, 0x4FDA, 0x4FE3, 0x4FDC, 0x4FD1, - 0x4FDF, 0x4FF8, 0x5029, 0x504C, 0x4FF3, 0x502C, 0x500F, 0x502E, - 0x502D, 0x4FFE, 0x501C, 0x500C, 0x5025, 0x5028, 0x507E, 0x5043, - 0x5055, 0x5048, 0x504E, 0x506C, 0x507B, 0x50A5, 0x50A7, 0x50A9, - 0x50BA, 0x50D6, 0x5106, 0x50ED, 0x50EC, 0x50E6, 0x50EE, 0x5107, - 0x510B, 0x4EDD, 0x6C3D, 0x4F58, 0x4F65, 0x4FCE, 0x9FA0, 0x6C46, - 0x7C74, 0x516E, 0x5DFD, 0x9EC9, 0x9998, 0x5181, 0x5914, 0x52F9, - 0x530D, 0x8A07, 0x5310, 0x51EB, 0x5919, 0x5155, 0x4EA0, 0x5156, -plane 67 -at 0x00 - 0x4EB3, 0x886E, 0x88A4, 0x4EB5, 0x8114, 0x88D2, 0x7980, 0x5B34, - 0x8803, 0x7FB8, 0x51AB, 0x51B1, 0x51BD, 0x51BC, 0x8D0E, 0x8D0F, - 0x8D10, 0x8D11, 0x8D12, 0x8D13, 0x8D14, 0x8D15, 0x8D16, 0x8D17, - 0x8D18, 0x8D19, 0x8D1A, 0x8D1B, 0x8D1C, 0x8D20, 0x8D51, 0x8D52, - 0x8D57, 0x8D5F, 0x8D65, 0x8D68, 0x8D69, 0x8D6A, 0x8D6C, 0x8D6E, - 0x8D6F, 0x8D71, 0x8D72, 0x8D78, 0x8D79, 0x8D7A, 0x8D7B, 0x8D7C, - 0x8D7D, 0x8D7E, 0x8D7F, 0x8D80, 0x8D82, 0x8D83, 0x8D86, 0x8D87, - 0x8D88, 0x8D89, 0x8D8C, 0x8D8D, 0x8D8E, 0x8D8F, 0x8D90, 0x8D92, - 0x8D93, 0x8D95, 0x8D96, 0x8D97, 0x8D98, 0x8D99, 0x8D9A, 0x8D9B, - 0x8D9C, 0x8D9D, 0x8D9E, 0x8DA0, 0x8DA1, 0x8DA2, 0x8DA4, 0x8DA5, - 0x8DA6, 0x8DA7, 0x8DA8, 0x8DA9, 0x8DAA, 0x8DAB, 0x8DAC, 0x8DAD, - 0x8DAE, 0x8DAF, 0x8DB0, 0x8DB2, 0x8DB6, 0x8DB7, 0x8DB9, 0x8DBB, - 0x8DBD, 0x8DC0, 0x8DC1, 0x8DC2, 0x8DC5, 0x8DC7, 0x8DC8, 0x8DC9, - 0x8DCA, 0x8DCD, 0x8DD0, 0x8DD2, 0x8DD3, 0x8DD4, 0x51C7, 0x5196, - 0x51A2, 0x51A5, 0x8BA0, 0x8BA6, 0x8BA7, 0x8BAA, 0x8BB4, 0x8BB5, - 0x8BB7, 0x8BC2, 0x8BC3, 0x8BCB, 0x8BCF, 0x8BCE, 0x8BD2, 0x8BD3, - 0x8BD4, 0x8BD6, 0x8BD8, 0x8BD9, 0x8BDC, 0x8BDF, 0x8BE0, 0x8BE4, - 0x8BE8, 0x8BE9, 0x8BEE, 0x8BF0, 0x8BF3, 0x8BF6, 0x8BF9, 0x8BFC, - 0x8BFF, 0x8C00, 0x8C02, 0x8C04, 0x8C07, 0x8C0C, 0x8C0F, 0x8C11, - 0x8C12, 0x8C14, 0x8C15, 0x8C16, 0x8C19, 0x8C1B, 0x8C18, 0x8C1D, - 0x8C1F, 0x8C20, 0x8C21, 0x8C25, 0x8C27, 0x8C2A, 0x8C2B, 0x8C2E, - 0x8C2F, 0x8C32, 0x8C33, 0x8C35, 0x8C36, 0x5369, 0x537A, 0x961D, - 0x9622, 0x9621, 0x9631, 0x962A, 0x963D, 0x963C, 0x9642, 0x9649, - 0x9654, 0x965F, 0x9667, 0x966C, 0x9672, 0x9674, 0x9688, 0x968D, - 0x9697, 0x96B0, 0x9097, 0x909B, 0x909D, 0x9099, 0x90AC, 0x90A1, - 0x90B4, 0x90B3, 0x90B6, 0x90BA, 0x8DD5, 0x8DD8, 0x8DD9, 0x8DDC, - 0x8DE0, 0x8DE1, 0x8DE2, 0x8DE5, 0x8DE6, 0x8DE7, 0x8DE9, 0x8DED, - 0x8DEE, 0x8DF0, 0x8DF1, 0x8DF2, 0x8DF4, 0x8DF6, 0x8DFC, 0x8DFE, - 0x8DFF, 0x8E00, 0x8E01, 0x8E02, 0x8E03, 0x8E04, 0x8E06, 0x8E07, - 0x8E08, 0x8E0B, 0x8E0D, 0x8E0E, 0x8E10, 0x8E11, 0x8E12, 0x8E13, - 0x8E15, 0x8E16, 0x8E17, 0x8E18, 0x8E19, 0x8E1A, 0x8E1B, 0x8E1C, - 0x8E20, 0x8E21, 0x8E24, 0x8E25, 0x8E26, 0x8E27, 0x8E28, 0x8E2B, -plane 68 -at 0x00 - 0x8E2D, 0x8E30, 0x8E32, 0x8E33, 0x8E34, 0x8E36, 0x8E37, 0x8E38, - 0x8E3B, 0x8E3C, 0x8E3E, 0x8E3F, 0x8E43, 0x8E45, 0x8E46, 0x8E4C, - 0x8E4D, 0x8E4E, 0x8E4F, 0x8E50, 0x8E53, 0x8E54, 0x8E55, 0x8E56, - 0x8E57, 0x8E58, 0x8E5A, 0x8E5B, 0x8E5C, 0x8E5D, 0x8E5E, 0x8E5F, - 0x8E60, 0x8E61, 0x8E62, 0x8E63, 0x8E64, 0x8E65, 0x8E67, 0x8E68, - 0x8E6A, 0x8E6B, 0x8E6E, 0x8E71, 0x90B8, 0x90B0, 0x90CF, 0x90C5, - 0x90BE, 0x90D0, 0x90C4, 0x90C7, 0x90D3, 0x90E6, 0x90E2, 0x90DC, - 0x90D7, 0x90DB, 0x90EB, 0x90EF, 0x90FE, 0x9104, 0x9122, 0x911E, - 0x9123, 0x9131, 0x912F, 0x9139, 0x9143, 0x9146, 0x520D, 0x5942, - 0x52A2, 0x52AC, 0x52AD, 0x52BE, 0x54FF, 0x52D0, 0x52D6, 0x52F0, - 0x53DF, 0x71EE, 0x77CD, 0x5EF4, 0x51F5, 0x51FC, 0x9B2F, 0x53B6, - 0x5F01, 0x755A, 0x5DEF, 0x574C, 0x57A9, 0x57A1, 0x587E, 0x58BC, - 0x58C5, 0x58D1, 0x5729, 0x572C, 0x572A, 0x5733, 0x5739, 0x572E, - 0x572F, 0x575C, 0x573B, 0x5742, 0x5769, 0x5785, 0x576B, 0x5786, - 0x577C, 0x577B, 0x5768, 0x576D, 0x5776, 0x5773, 0x57AD, 0x57A4, - 0x578C, 0x57B2, 0x57CF, 0x57A7, 0x57B4, 0x5793, 0x57A0, 0x57D5, - 0x57D8, 0x57DA, 0x57D9, 0x57D2, 0x57B8, 0x57F4, 0x57EF, 0x57F8, - 0x57E4, 0x57DD, 0x8E73, 0x8E75, 0x8E77, 0x8E78, 0x8E79, 0x8E7A, - 0x8E7B, 0x8E7D, 0x8E7E, 0x8E80, 0x8E82, 0x8E83, 0x8E84, 0x8E86, - 0x8E88, 0x8E89, 0x8E8A, 0x8E8B, 0x8E8C, 0x8E8D, 0x8E8E, 0x8E91, - 0x8E92, 0x8E93, 0x8E95, 0x8E96, 0x8E97, 0x8E98, 0x8E99, 0x8E9A, - 0x8E9B, 0x8E9D, 0x8E9F, 0x8EA0, 0x8EA1, 0x8EA2, 0x8EA3, 0x8EA4, - 0x8EA5, 0x8EA6, 0x8EA7, 0x8EA8, 0x8EA9, 0x8EAA, 0x8EAD, 0x8EAE, - 0x8EB0, 0x8EB1, 0x8EB3, 0x8EB4, 0x8EB5, 0x8EB6, 0x8EB7, 0x8EB8, - 0x8EB9, 0x8EBB, 0x8EBC, 0x8EBD, 0x8EBE, 0x8EBF, 0x8EC0, 0x8EC1, - 0x8EC2, 0x8EC3, 0x8EC4, 0x8EC5, 0x8EC6, 0x8EC7, 0x8EC8, 0x8EC9, - 0x8ECA, 0x8ECB, 0x8ECC, 0x8ECD, 0x8ECF, 0x8ED0, 0x8ED1, 0x8ED2, - 0x8ED3, 0x8ED4, 0x8ED5, 0x8ED6, 0x8ED7, 0x8ED8, 0x8ED9, 0x8EDA, - 0x8EDB, 0x8EDC, 0x8EDD, 0x8EDE, 0x8EDF, 0x8EE0, 0x8EE1, 0x8EE2, - 0x8EE3, 0x8EE4, 0x580B, 0x580D, 0x57FD, 0x57ED, 0x5800, 0x581E, - 0x5819, 0x5844, 0x5820, 0x5865, 0x586C, 0x5881, 0x5889, 0x589A, - 0x5880, 0x99A8, 0x9F19, 0x61FF, 0x8279, 0x827D, 0x827F, 0x828F, -plane 69 -at 0x00 - 0x828A, 0x82A8, 0x8284, 0x828E, 0x8291, 0x8297, 0x8299, 0x82AB, - 0x82B8, 0x82BE, 0x82B0, 0x82C8, 0x82CA, 0x82E3, 0x8298, 0x82B7, - 0x82AE, 0x82CB, 0x82CC, 0x82C1, 0x82A9, 0x82B4, 0x82A1, 0x82AA, - 0x829F, 0x82C4, 0x82CE, 0x82A4, 0x82E1, 0x8309, 0x82F7, 0x82E4, - 0x830F, 0x8307, 0x82DC, 0x82F4, 0x82D2, 0x82D8, 0x830C, 0x82FB, - 0x82D3, 0x8311, 0x831A, 0x8306, 0x8314, 0x8315, 0x82E0, 0x82D5, - 0x831C, 0x8351, 0x835B, 0x835C, 0x8308, 0x8392, 0x833C, 0x8334, - 0x8331, 0x839B, 0x835E, 0x832F, 0x834F, 0x8347, 0x8343, 0x835F, - 0x8340, 0x8317, 0x8360, 0x832D, 0x833A, 0x8333, 0x8366, 0x8365, - 0x8EE5, 0x8EE6, 0x8EE7, 0x8EE8, 0x8EE9, 0x8EEA, 0x8EEB, 0x8EEC, - 0x8EED, 0x8EEE, 0x8EEF, 0x8EF0, 0x8EF1, 0x8EF2, 0x8EF3, 0x8EF4, - 0x8EF5, 0x8EF6, 0x8EF7, 0x8EF8, 0x8EF9, 0x8EFA, 0x8EFB, 0x8EFC, - 0x8EFD, 0x8EFE, 0x8EFF, 0x8F00, 0x8F01, 0x8F02, 0x8F03, 0x8F04, - 0x8F05, 0x8F06, 0x8F07, 0x8F08, 0x8F09, 0x8F0A, 0x8F0B, 0x8F0C, - 0x8F0D, 0x8F0E, 0x8F0F, 0x8F10, 0x8F11, 0x8F12, 0x8F13, 0x8F14, - 0x8F15, 0x8F16, 0x8F17, 0x8F18, 0x8F19, 0x8F1A, 0x8F1B, 0x8F1C, - 0x8F1D, 0x8F1E, 0x8F1F, 0x8F20, 0x8F21, 0x8F22, 0x8F23, 0x8F24, - 0x8F25, 0x8F26, 0x8F27, 0x8F28, 0x8F29, 0x8F2A, 0x8F2B, 0x8F2C, - 0x8F2D, 0x8F2E, 0x8F2F, 0x8F30, 0x8F31, 0x8F32, 0x8F33, 0x8F34, - 0x8F35, 0x8F36, 0x8F37, 0x8F38, 0x8F39, 0x8F3A, 0x8F3B, 0x8F3C, - 0x8F3D, 0x8F3E, 0x8F3F, 0x8F40, 0x8F41, 0x8F42, 0x8F43, 0x8F44, - 0x8368, 0x831B, 0x8369, 0x836C, 0x836A, 0x836D, 0x836E, 0x83B0, - 0x8378, 0x83B3, 0x83B4, 0x83A0, 0x83AA, 0x8393, 0x839C, 0x8385, - 0x837C, 0x83B6, 0x83A9, 0x837D, 0x83B8, 0x837B, 0x8398, 0x839E, - 0x83A8, 0x83BA, 0x83BC, 0x83C1, 0x8401, 0x83E5, 0x83D8, 0x5807, - 0x8418, 0x840B, 0x83DD, 0x83FD, 0x83D6, 0x841C, 0x8438, 0x8411, - 0x8406, 0x83D4, 0x83DF, 0x840F, 0x8403, 0x83F8, 0x83F9, 0x83EA, - 0x83C5, 0x83C0, 0x8426, 0x83F0, 0x83E1, 0x845C, 0x8451, 0x845A, - 0x8459, 0x8473, 0x8487, 0x8488, 0x847A, 0x8489, 0x8478, 0x843C, - 0x8446, 0x8469, 0x8476, 0x848C, 0x848E, 0x8431, 0x846D, 0x84C1, - 0x84CD, 0x84D0, 0x84E6, 0x84BD, 0x84D3, 0x84CA, 0x84BF, 0x84BA, - 0x84E0, 0x84A1, 0x84B9, 0x84B4, 0x8497, 0x84E5, 0x84E3, 0x850C, -plane 70 -at 0x00 - 0x750D, 0x8538, 0x84F0, 0x8539, 0x851F, 0x853A, 0x8F45, 0x8F46, - 0x8F47, 0x8F48, 0x8F49, 0x8F4A, 0x8F4B, 0x8F4C, 0x8F4D, 0x8F4E, - 0x8F4F, 0x8F50, 0x8F51, 0x8F52, 0x8F53, 0x8F54, 0x8F55, 0x8F56, - 0x8F57, 0x8F58, 0x8F59, 0x8F5A, 0x8F5B, 0x8F5C, 0x8F5D, 0x8F5E, - 0x8F5F, 0x8F60, 0x8F61, 0x8F62, 0x8F63, 0x8F64, 0x8F65, 0x8F6A, - 0x8F80, 0x8F8C, 0x8F92, 0x8F9D, 0x8FA0, 0x8FA1, 0x8FA2, 0x8FA4, - 0x8FA5, 0x8FA6, 0x8FA7, 0x8FAA, 0x8FAC, 0x8FAD, 0x8FAE, 0x8FAF, - 0x8FB2, 0x8FB3, 0x8FB4, 0x8FB5, 0x8FB7, 0x8FB8, 0x8FBA, 0x8FBB, - 0x8FBC, 0x8FBF, 0x8FC0, 0x8FC3, 0x8FC6, 0x8FC9, 0x8FCA, 0x8FCB, - 0x8FCC, 0x8FCD, 0x8FCF, 0x8FD2, 0x8FD6, 0x8FD7, 0x8FDA, 0x8FE0, - 0x8FE1, 0x8FE3, 0x8FE7, 0x8FEC, 0x8FEF, 0x8FF1, 0x8FF2, 0x8FF4, - 0x8FF5, 0x8FF6, 0x8FFA, 0x8FFB, 0x8FFC, 0x8FFE, 0x8FFF, 0x9007, - 0x9008, 0x900C, 0x900E, 0x9013, 0x9015, 0x9018, 0x8556, 0x853B, - 0x84FF, 0x84FC, 0x8559, 0x8548, 0x8568, 0x8564, 0x855E, 0x857A, - 0x77A2, 0x8543, 0x8572, 0x857B, 0x85A4, 0x85A8, 0x8587, 0x858F, - 0x8579, 0x85AE, 0x859C, 0x8585, 0x85B9, 0x85B7, 0x85B0, 0x85D3, - 0x85C1, 0x85DC, 0x85FF, 0x8627, 0x8605, 0x8629, 0x8616, 0x863C, - 0x5EFE, 0x5F08, 0x593C, 0x5941, 0x8037, 0x5955, 0x595A, 0x5958, - 0x530F, 0x5C22, 0x5C25, 0x5C2C, 0x5C34, 0x624C, 0x626A, 0x629F, - 0x62BB, 0x62CA, 0x62DA, 0x62D7, 0x62EE, 0x6322, 0x62F6, 0x6339, - 0x634B, 0x6343, 0x63AD, 0x63F6, 0x6371, 0x637A, 0x638E, 0x63B4, - 0x636D, 0x63AC, 0x638A, 0x6369, 0x63AE, 0x63BC, 0x63F2, 0x63F8, - 0x63E0, 0x63FF, 0x63C4, 0x63DE, 0x63CE, 0x6452, 0x63C6, 0x63BE, - 0x6445, 0x6441, 0x640B, 0x641B, 0x6420, 0x640C, 0x6426, 0x6421, - 0x645E, 0x6484, 0x646D, 0x6496, 0x9019, 0x901C, 0x9023, 0x9024, - 0x9025, 0x9027, 0x9028, 0x9029, 0x902A, 0x902B, 0x902C, 0x9030, - 0x9031, 0x9032, 0x9033, 0x9034, 0x9037, 0x9039, 0x903A, 0x903D, - 0x903F, 0x9040, 0x9043, 0x9045, 0x9046, 0x9048, 0x9049, 0x904A, - 0x904B, 0x904C, 0x904E, 0x9054, 0x9055, 0x9056, 0x9059, 0x905A, - 0x905C, 0x905D, 0x905E, 0x905F, 0x9060, 0x9061, 0x9064, 0x9066, - 0x9067, 0x9069, 0x906A, 0x906B, 0x906C, 0x906F, 0x9070, 0x9071, - 0x9072, 0x9073, 0x9076, 0x9077, 0x9078, 0x9079, 0x907A, 0x907B, -plane 71 -at 0x00 - 0x907C, 0x907E, 0x9081, 0x9084, 0x9085, 0x9086, 0x9087, 0x9089, - 0x908A, 0x908C, 0x908D, 0x908E, 0x908F, 0x9090, 0x9092, 0x9094, - 0x9096, 0x9098, 0x909A, 0x909C, 0x909E, 0x909F, 0x90A0, 0x90A4, - 0x90A5, 0x90A7, 0x90A8, 0x90A9, 0x90AB, 0x90AD, 0x90B2, 0x90B7, - 0x90BC, 0x90BD, 0x90BF, 0x90C0, 0x647A, 0x64B7, 0x64B8, 0x6499, - 0x64BA, 0x64C0, 0x64D0, 0x64D7, 0x64E4, 0x64E2, 0x6509, 0x6525, - 0x652E, 0x5F0B, 0x5FD2, 0x7519, 0x5F11, 0x535F, 0x53F1, 0x53FD, - 0x53E9, 0x53E8, 0x53FB, 0x5412, 0x5416, 0x5406, 0x544B, 0x5452, - 0x5453, 0x5454, 0x5456, 0x5443, 0x5421, 0x5457, 0x5459, 0x5423, - 0x5432, 0x5482, 0x5494, 0x5477, 0x5471, 0x5464, 0x549A, 0x549B, - 0x5484, 0x5476, 0x5466, 0x549D, 0x54D0, 0x54AD, 0x54C2, 0x54B4, - 0x54D2, 0x54A7, 0x54A6, 0x54D3, 0x54D4, 0x5472, 0x54A3, 0x54D5, - 0x54BB, 0x54BF, 0x54CC, 0x54D9, 0x54DA, 0x54DC, 0x54A9, 0x54AA, - 0x54A4, 0x54DD, 0x54CF, 0x54DE, 0x551B, 0x54E7, 0x5520, 0x54FD, - 0x5514, 0x54F3, 0x5522, 0x5523, 0x550F, 0x5511, 0x5527, 0x552A, - 0x5567, 0x558F, 0x55B5, 0x5549, 0x556D, 0x5541, 0x5555, 0x553F, - 0x5550, 0x553C, 0x90C2, 0x90C3, 0x90C6, 0x90C8, 0x90C9, 0x90CB, - 0x90CC, 0x90CD, 0x90D2, 0x90D4, 0x90D5, 0x90D6, 0x90D8, 0x90D9, - 0x90DA, 0x90DE, 0x90DF, 0x90E0, 0x90E3, 0x90E4, 0x90E5, 0x90E9, - 0x90EA, 0x90EC, 0x90EE, 0x90F0, 0x90F1, 0x90F2, 0x90F3, 0x90F5, - 0x90F6, 0x90F7, 0x90F9, 0x90FA, 0x90FB, 0x90FC, 0x90FF, 0x9100, - 0x9101, 0x9103, 0x9105, 0x9106, 0x9107, 0x9108, 0x9109, 0x910A, - 0x910B, 0x910C, 0x910D, 0x910E, 0x910F, 0x9110, 0x9111, 0x9112, - 0x9113, 0x9114, 0x9115, 0x9116, 0x9117, 0x9118, 0x911A, 0x911B, - 0x911C, 0x911D, 0x911F, 0x9120, 0x9121, 0x9124, 0x9125, 0x9126, - 0x9127, 0x9128, 0x9129, 0x912A, 0x912B, 0x912C, 0x912D, 0x912E, - 0x9130, 0x9132, 0x9133, 0x9134, 0x9135, 0x9136, 0x9137, 0x9138, - 0x913A, 0x913B, 0x913C, 0x913D, 0x913E, 0x913F, 0x9140, 0x9141, - 0x9142, 0x9144, 0x5537, 0x5556, 0x5575, 0x5576, 0x5577, 0x5533, - 0x5530, 0x555C, 0x558B, 0x55D2, 0x5583, 0x55B1, 0x55B9, 0x5588, - 0x5581, 0x559F, 0x557E, 0x55D6, 0x5591, 0x557B, 0x55DF, 0x55BD, - 0x55BE, 0x5594, 0x5599, 0x55EA, 0x55F7, 0x55C9, 0x561F, 0x55D1, -plane 72 -at 0x00 - 0x55EB, 0x55EC, 0x55D4, 0x55E6, 0x55DD, 0x55C4, 0x55EF, 0x55E5, - 0x55F2, 0x55F3, 0x55CC, 0x55CD, 0x55E8, 0x55F5, 0x55E4, 0x8F94, - 0x561E, 0x5608, 0x560C, 0x5601, 0x5624, 0x5623, 0x55FE, 0x5600, - 0x5627, 0x562D, 0x5658, 0x5639, 0x5657, 0x562C, 0x564D, 0x5662, - 0x5659, 0x565C, 0x564C, 0x5654, 0x5686, 0x5664, 0x5671, 0x566B, - 0x567B, 0x567C, 0x5685, 0x5693, 0x56AF, 0x56D4, 0x56D7, 0x56DD, - 0x56E1, 0x56F5, 0x56EB, 0x56F9, 0x56FF, 0x5704, 0x570A, 0x5709, - 0x571C, 0x5E0F, 0x5E19, 0x5E14, 0x5E11, 0x5E31, 0x5E3B, 0x5E3C, - 0x9145, 0x9147, 0x9148, 0x9151, 0x9153, 0x9154, 0x9155, 0x9156, - 0x9158, 0x9159, 0x915B, 0x915C, 0x915F, 0x9160, 0x9166, 0x9167, - 0x9168, 0x916B, 0x916D, 0x9173, 0x917A, 0x917B, 0x917C, 0x9180, - 0x9181, 0x9182, 0x9183, 0x9184, 0x9186, 0x9188, 0x918A, 0x918E, - 0x918F, 0x9193, 0x9194, 0x9195, 0x9196, 0x9197, 0x9198, 0x9199, - 0x919C, 0x919D, 0x919E, 0x919F, 0x91A0, 0x91A1, 0x91A4, 0x91A5, - 0x91A6, 0x91A7, 0x91A8, 0x91A9, 0x91AB, 0x91AC, 0x91B0, 0x91B1, - 0x91B2, 0x91B3, 0x91B6, 0x91B7, 0x91B8, 0x91B9, 0x91BB, 0x91BC, - 0x91BD, 0x91BE, 0x91BF, 0x91C0, 0x91C1, 0x91C2, 0x91C3, 0x91C4, - 0x91C5, 0x91C6, 0x91C8, 0x91CB, 0x91D0, 0x91D2, 0x91D3, 0x91D4, - 0x91D5, 0x91D6, 0x91D7, 0x91D8, 0x91D9, 0x91DA, 0x91DB, 0x91DD, - 0x91DE, 0x91DF, 0x91E0, 0x91E1, 0x91E2, 0x91E3, 0x91E4, 0x91E5, - 0x5E37, 0x5E44, 0x5E54, 0x5E5B, 0x5E5E, 0x5E61, 0x5C8C, 0x5C7A, - 0x5C8D, 0x5C90, 0x5C96, 0x5C88, 0x5C98, 0x5C99, 0x5C91, 0x5C9A, - 0x5C9C, 0x5CB5, 0x5CA2, 0x5CBD, 0x5CAC, 0x5CAB, 0x5CB1, 0x5CA3, - 0x5CC1, 0x5CB7, 0x5CC4, 0x5CD2, 0x5CE4, 0x5CCB, 0x5CE5, 0x5D02, - 0x5D03, 0x5D27, 0x5D26, 0x5D2E, 0x5D24, 0x5D1E, 0x5D06, 0x5D1B, - 0x5D58, 0x5D3E, 0x5D34, 0x5D3D, 0x5D6C, 0x5D5B, 0x5D6F, 0x5D5D, - 0x5D6B, 0x5D4B, 0x5D4A, 0x5D69, 0x5D74, 0x5D82, 0x5D99, 0x5D9D, - 0x8C73, 0x5DB7, 0x5DC5, 0x5F73, 0x5F77, 0x5F82, 0x5F87, 0x5F89, - 0x5F8C, 0x5F95, 0x5F99, 0x5F9C, 0x5FA8, 0x5FAD, 0x5FB5, 0x5FBC, - 0x8862, 0x5F61, 0x72AD, 0x72B0, 0x72B4, 0x72B7, 0x72B8, 0x72C3, - 0x72C1, 0x72CE, 0x72CD, 0x72D2, 0x72E8, 0x72EF, 0x72E9, 0x72F2, - 0x72F4, 0x72F7, 0x7301, 0x72F3, 0x7303, 0x72FA, 0x91E6, 0x91E7, -plane 73 -at 0x00 - 0x91E8, 0x91E9, 0x91EA, 0x91EB, 0x91EC, 0x91ED, 0x91EE, 0x91EF, - 0x91F0, 0x91F1, 0x91F2, 0x91F3, 0x91F4, 0x91F5, 0x91F6, 0x91F7, - 0x91F8, 0x91F9, 0x91FA, 0x91FB, 0x91FC, 0x91FD, 0x91FE, 0x91FF, - 0x9200, 0x9201, 0x9202, 0x9203, 0x9204, 0x9205, 0x9206, 0x9207, - 0x9208, 0x9209, 0x920A, 0x920B, 0x920C, 0x920D, 0x920E, 0x920F, - 0x9210, 0x9211, 0x9212, 0x9213, 0x9214, 0x9215, 0x9216, 0x9217, - 0x9218, 0x9219, 0x921A, 0x921B, 0x921C, 0x921D, 0x921E, 0x921F, - 0x9220, 0x9221, 0x9222, 0x9223, 0x9224, 0x9225, 0x9226, 0x9227, - 0x9228, 0x9229, 0x922A, 0x922B, 0x922C, 0x922D, 0x922E, 0x922F, - 0x9230, 0x9231, 0x9232, 0x9233, 0x9234, 0x9235, 0x9236, 0x9237, - 0x9238, 0x9239, 0x923A, 0x923B, 0x923C, 0x923D, 0x923E, 0x923F, - 0x9240, 0x9241, 0x9242, 0x9243, 0x9244, 0x9245, 0x72FB, 0x7317, - 0x7313, 0x7321, 0x730A, 0x731E, 0x731D, 0x7315, 0x7322, 0x7339, - 0x7325, 0x732C, 0x7338, 0x7331, 0x7350, 0x734D, 0x7357, 0x7360, - 0x736C, 0x736F, 0x737E, 0x821B, 0x5925, 0x98E7, 0x5924, 0x5902, - 0x9963, 0x9967, 0x9968, 0x9969, 0x996A, 0x996B, 0x996C, 0x9974, - 0x9977, 0x997D, 0x9980, 0x9984, 0x9987, 0x998A, 0x998D, 0x9990, - 0x9991, 0x9993, 0x9994, 0x9995, 0x5E80, 0x5E91, 0x5E8B, 0x5E96, - 0x5EA5, 0x5EA0, 0x5EB9, 0x5EB5, 0x5EBE, 0x5EB3, 0x8D53, 0x5ED2, - 0x5ED1, 0x5EDB, 0x5EE8, 0x5EEA, 0x81BA, 0x5FC4, 0x5FC9, 0x5FD6, - 0x5FCF, 0x6003, 0x5FEE, 0x6004, 0x5FE1, 0x5FE4, 0x5FFE, 0x6005, - 0x6006, 0x5FEA, 0x5FED, 0x5FF8, 0x6019, 0x6035, 0x6026, 0x601B, - 0x600F, 0x600D, 0x6029, 0x602B, 0x600A, 0x603F, 0x6021, 0x6078, - 0x6079, 0x607B, 0x607A, 0x6042, 0x9246, 0x9247, 0x9248, 0x9249, - 0x924A, 0x924B, 0x924C, 0x924D, 0x924E, 0x924F, 0x9250, 0x9251, - 0x9252, 0x9253, 0x9254, 0x9255, 0x9256, 0x9257, 0x9258, 0x9259, - 0x925A, 0x925B, 0x925C, 0x925D, 0x925E, 0x925F, 0x9260, 0x9261, - 0x9262, 0x9263, 0x9264, 0x9265, 0x9266, 0x9267, 0x9268, 0x9269, - 0x926A, 0x926B, 0x926C, 0x926D, 0x926E, 0x926F, 0x9270, 0x9271, - 0x9272, 0x9273, 0x9275, 0x9276, 0x9277, 0x9278, 0x9279, 0x927A, - 0x927B, 0x927C, 0x927D, 0x927E, 0x927F, 0x9280, 0x9281, 0x9282, - 0x9283, 0x9284, 0x9285, 0x9286, 0x9287, 0x9288, 0x9289, 0x928A, -plane 74 -at 0x00 - 0x928B, 0x928C, 0x928D, 0x928F, 0x9290, 0x9291, 0x9292, 0x9293, - 0x9294, 0x9295, 0x9296, 0x9297, 0x9298, 0x9299, 0x929A, 0x929B, - 0x929C, 0x929D, 0x929E, 0x929F, 0x92A0, 0x92A1, 0x92A2, 0x92A3, - 0x92A4, 0x92A5, 0x92A6, 0x92A7, 0x606A, 0x607D, 0x6096, 0x609A, - 0x60AD, 0x609D, 0x6083, 0x6092, 0x608C, 0x609B, 0x60EC, 0x60BB, - 0x60B1, 0x60DD, 0x60D8, 0x60C6, 0x60DA, 0x60B4, 0x6120, 0x6126, - 0x6115, 0x6123, 0x60F4, 0x6100, 0x610E, 0x612B, 0x614A, 0x6175, - 0x61AC, 0x6194, 0x61A7, 0x61B7, 0x61D4, 0x61F5, 0x5FDD, 0x96B3, - 0x95E9, 0x95EB, 0x95F1, 0x95F3, 0x95F5, 0x95F6, 0x95FC, 0x95FE, - 0x9603, 0x9604, 0x9606, 0x9608, 0x960A, 0x960B, 0x960C, 0x960D, - 0x960F, 0x9612, 0x9615, 0x9616, 0x9617, 0x9619, 0x961A, 0x4E2C, - 0x723F, 0x6215, 0x6C35, 0x6C54, 0x6C5C, 0x6C4A, 0x6CA3, 0x6C85, - 0x6C90, 0x6C94, 0x6C8C, 0x6C68, 0x6C69, 0x6C74, 0x6C76, 0x6C86, - 0x6CA9, 0x6CD0, 0x6CD4, 0x6CAD, 0x6CF7, 0x6CF8, 0x6CF1, 0x6CD7, - 0x6CB2, 0x6CE0, 0x6CD6, 0x6CFA, 0x6CEB, 0x6CEE, 0x6CB1, 0x6CD3, - 0x6CEF, 0x6CFE, 0x92A8, 0x92A9, 0x92AA, 0x92AB, 0x92AC, 0x92AD, - 0x92AF, 0x92B0, 0x92B1, 0x92B2, 0x92B3, 0x92B4, 0x92B5, 0x92B6, - 0x92B7, 0x92B8, 0x92B9, 0x92BA, 0x92BB, 0x92BC, 0x92BD, 0x92BE, - 0x92BF, 0x92C0, 0x92C1, 0x92C2, 0x92C3, 0x92C4, 0x92C5, 0x92C6, - 0x92C7, 0x92C9, 0x92CA, 0x92CB, 0x92CC, 0x92CD, 0x92CE, 0x92CF, - 0x92D0, 0x92D1, 0x92D2, 0x92D3, 0x92D4, 0x92D5, 0x92D6, 0x92D7, - 0x92D8, 0x92D9, 0x92DA, 0x92DB, 0x92DC, 0x92DD, 0x92DE, 0x92DF, - 0x92E0, 0x92E1, 0x92E2, 0x92E3, 0x92E4, 0x92E5, 0x92E6, 0x92E7, - 0x92E8, 0x92E9, 0x92EA, 0x92EB, 0x92EC, 0x92ED, 0x92EE, 0x92EF, - 0x92F0, 0x92F1, 0x92F2, 0x92F3, 0x92F4, 0x92F5, 0x92F6, 0x92F7, - 0x92F8, 0x92F9, 0x92FA, 0x92FB, 0x92FC, 0x92FD, 0x92FE, 0x92FF, - 0x9300, 0x9301, 0x9302, 0x9303, 0x9304, 0x9305, 0x9306, 0x9307, - 0x9308, 0x9309, 0x6D39, 0x6D27, 0x6D0C, 0x6D43, 0x6D48, 0x6D07, - 0x6D04, 0x6D19, 0x6D0E, 0x6D2B, 0x6D4D, 0x6D2E, 0x6D35, 0x6D1A, - 0x6D4F, 0x6D52, 0x6D54, 0x6D33, 0x6D91, 0x6D6F, 0x6D9E, 0x6DA0, - 0x6D5E, 0x6D93, 0x6D94, 0x6D5C, 0x6D60, 0x6D7C, 0x6D63, 0x6E1A, - 0x6DC7, 0x6DC5, 0x6DDE, 0x6E0E, 0x6DBF, 0x6DE0, 0x6E11, 0x6DE6, -plane 75 -at 0x00 - 0x6DDD, 0x6DD9, 0x6E16, 0x6DAB, 0x6E0C, 0x6DAE, 0x6E2B, 0x6E6E, - 0x6E4E, 0x6E6B, 0x6EB2, 0x6E5F, 0x6E86, 0x6E53, 0x6E54, 0x6E32, - 0x6E25, 0x6E44, 0x6EDF, 0x6EB1, 0x6E98, 0x6EE0, 0x6F2D, 0x6EE2, - 0x6EA5, 0x6EA7, 0x6EBD, 0x6EBB, 0x6EB7, 0x6ED7, 0x6EB4, 0x6ECF, - 0x6E8F, 0x6EC2, 0x6E9F, 0x6F62, 0x6F46, 0x6F47, 0x6F24, 0x6F15, - 0x6EF9, 0x6F2F, 0x6F36, 0x6F4B, 0x6F74, 0x6F2A, 0x6F09, 0x6F29, - 0x6F89, 0x6F8D, 0x6F8C, 0x6F78, 0x6F72, 0x6F7C, 0x6F7A, 0x6FD1, - 0x930A, 0x930B, 0x930C, 0x930D, 0x930E, 0x930F, 0x9310, 0x9311, - 0x9312, 0x9313, 0x9314, 0x9315, 0x9316, 0x9317, 0x9318, 0x9319, - 0x931A, 0x931B, 0x931C, 0x931D, 0x931E, 0x931F, 0x9320, 0x9321, - 0x9322, 0x9323, 0x9324, 0x9325, 0x9326, 0x9327, 0x9328, 0x9329, - 0x932A, 0x932B, 0x932C, 0x932D, 0x932E, 0x932F, 0x9330, 0x9331, - 0x9332, 0x9333, 0x9334, 0x9335, 0x9336, 0x9337, 0x9338, 0x9339, - 0x933A, 0x933B, 0x933C, 0x933D, 0x933F, 0x9340, 0x9341, 0x9342, - 0x9343, 0x9344, 0x9345, 0x9346, 0x9347, 0x9348, 0x9349, 0x934A, - 0x934B, 0x934C, 0x934D, 0x934E, 0x934F, 0x9350, 0x9351, 0x9352, - 0x9353, 0x9354, 0x9355, 0x9356, 0x9357, 0x9358, 0x9359, 0x935A, - 0x935B, 0x935C, 0x935D, 0x935E, 0x935F, 0x9360, 0x9361, 0x9362, - 0x9363, 0x9364, 0x9365, 0x9366, 0x9367, 0x9368, 0x9369, 0x936B, - 0x6FC9, 0x6FA7, 0x6FB9, 0x6FB6, 0x6FC2, 0x6FE1, 0x6FEE, 0x6FDE, - 0x6FE0, 0x6FEF, 0x701A, 0x7023, 0x701B, 0x7039, 0x7035, 0x704F, - 0x705E, 0x5B80, 0x5B84, 0x5B95, 0x5B93, 0x5BA5, 0x5BB8, 0x752F, - 0x9A9E, 0x6434, 0x5BE4, 0x5BEE, 0x8930, 0x5BF0, 0x8E47, 0x8B07, - 0x8FB6, 0x8FD3, 0x8FD5, 0x8FE5, 0x8FEE, 0x8FE4, 0x8FE9, 0x8FE6, - 0x8FF3, 0x8FE8, 0x9005, 0x9004, 0x900B, 0x9026, 0x9011, 0x900D, - 0x9016, 0x9021, 0x9035, 0x9036, 0x902D, 0x902F, 0x9044, 0x9051, - 0x9052, 0x9050, 0x9068, 0x9058, 0x9062, 0x905B, 0x66B9, 0x9074, - 0x907D, 0x9082, 0x9088, 0x9083, 0x908B, 0x5F50, 0x5F57, 0x5F56, - 0x5F58, 0x5C3B, 0x54AB, 0x5C50, 0x5C59, 0x5B71, 0x5C63, 0x5C66, - 0x7FBC, 0x5F2A, 0x5F29, 0x5F2D, 0x8274, 0x5F3C, 0x9B3B, 0x5C6E, - 0x5981, 0x5983, 0x598D, 0x59A9, 0x59AA, 0x59A3, 0x936C, 0x936D, - 0x936E, 0x936F, 0x9370, 0x9371, 0x9372, 0x9373, 0x9374, 0x9375, -plane 76 -at 0x00 - 0x9376, 0x9377, 0x9378, 0x9379, 0x937A, 0x937B, 0x937C, 0x937D, - 0x937E, 0x937F, 0x9380, 0x9381, 0x9382, 0x9383, 0x9384, 0x9385, - 0x9386, 0x9387, 0x9388, 0x9389, 0x938A, 0x938B, 0x938C, 0x938D, - 0x938E, 0x9390, 0x9391, 0x9392, 0x9393, 0x9394, 0x9395, 0x9396, - 0x9397, 0x9398, 0x9399, 0x939A, 0x939B, 0x939C, 0x939D, 0x939E, - 0x939F, 0x93A0, 0x93A1, 0x93A2, 0x93A3, 0x93A4, 0x93A5, 0x93A6, - 0x93A7, 0x93A8, 0x93A9, 0x93AA, 0x93AB, 0x93AC, 0x93AD, 0x93AE, - 0x93AF, 0x93B0, 0x93B1, 0x93B2, 0x93B3, 0x93B4, 0x93B5, 0x93B6, - 0x93B7, 0x93B8, 0x93B9, 0x93BA, 0x93BB, 0x93BC, 0x93BD, 0x93BE, - 0x93BF, 0x93C0, 0x93C1, 0x93C2, 0x93C3, 0x93C4, 0x93C5, 0x93C6, - 0x93C7, 0x93C8, 0x93C9, 0x93CB, 0x93CC, 0x93CD, 0x5997, 0x59CA, - 0x59AB, 0x599E, 0x59A4, 0x59D2, 0x59B2, 0x59AF, 0x59D7, 0x59BE, - 0x5A05, 0x5A06, 0x59DD, 0x5A08, 0x59E3, 0x59D8, 0x59F9, 0x5A0C, - 0x5A09, 0x5A32, 0x5A34, 0x5A11, 0x5A23, 0x5A13, 0x5A40, 0x5A67, - 0x5A4A, 0x5A55, 0x5A3C, 0x5A62, 0x5A75, 0x80EC, 0x5AAA, 0x5A9B, - 0x5A77, 0x5A7A, 0x5ABE, 0x5AEB, 0x5AB2, 0x5AD2, 0x5AD4, 0x5AB8, - 0x5AE0, 0x5AE3, 0x5AF1, 0x5AD6, 0x5AE6, 0x5AD8, 0x5ADC, 0x5B09, - 0x5B17, 0x5B16, 0x5B32, 0x5B37, 0x5B40, 0x5C15, 0x5C1C, 0x5B5A, - 0x5B65, 0x5B73, 0x5B51, 0x5B53, 0x5B62, 0x9A75, 0x9A77, 0x9A78, - 0x9A7A, 0x9A7F, 0x9A7D, 0x9A80, 0x9A81, 0x9A85, 0x9A88, 0x9A8A, - 0x9A90, 0x9A92, 0x9A93, 0x9A96, 0x9A98, 0x9A9B, 0x9A9C, 0x9A9D, - 0x9A9F, 0x9AA0, 0x9AA2, 0x9AA3, 0x9AA5, 0x9AA7, 0x7E9F, 0x7EA1, - 0x7EA3, 0x7EA5, 0x7EA8, 0x7EA9, 0x93CE, 0x93CF, 0x93D0, 0x93D1, - 0x93D2, 0x93D3, 0x93D4, 0x93D5, 0x93D7, 0x93D8, 0x93D9, 0x93DA, - 0x93DB, 0x93DC, 0x93DD, 0x93DE, 0x93DF, 0x93E0, 0x93E1, 0x93E2, - 0x93E3, 0x93E4, 0x93E5, 0x93E6, 0x93E7, 0x93E8, 0x93E9, 0x93EA, - 0x93EB, 0x93EC, 0x93ED, 0x93EE, 0x93EF, 0x93F0, 0x93F1, 0x93F2, - 0x93F3, 0x93F4, 0x93F5, 0x93F6, 0x93F7, 0x93F8, 0x93F9, 0x93FA, - 0x93FB, 0x93FC, 0x93FD, 0x93FE, 0x93FF, 0x9400, 0x9401, 0x9402, - 0x9403, 0x9404, 0x9405, 0x9406, 0x9407, 0x9408, 0x9409, 0x940A, - 0x940B, 0x940C, 0x940D, 0x940E, 0x940F, 0x9410, 0x9411, 0x9412, - 0x9413, 0x9414, 0x9415, 0x9416, 0x9417, 0x9418, 0x9419, 0x941A, -plane 77 -at 0x00 - 0x941B, 0x941C, 0x941D, 0x941E, 0x941F, 0x9420, 0x9421, 0x9422, - 0x9423, 0x9424, 0x9425, 0x9426, 0x9427, 0x9428, 0x9429, 0x942A, - 0x942B, 0x942C, 0x942D, 0x942E, 0x7EAD, 0x7EB0, 0x7EBE, 0x7EC0, - 0x7EC1, 0x7EC2, 0x7EC9, 0x7ECB, 0x7ECC, 0x7ED0, 0x7ED4, 0x7ED7, - 0x7EDB, 0x7EE0, 0x7EE1, 0x7EE8, 0x7EEB, 0x7EEE, 0x7EEF, 0x7EF1, - 0x7EF2, 0x7F0D, 0x7EF6, 0x7EFA, 0x7EFB, 0x7EFE, 0x7F01, 0x7F02, - 0x7F03, 0x7F07, 0x7F08, 0x7F0B, 0x7F0C, 0x7F0F, 0x7F11, 0x7F12, - 0x7F17, 0x7F19, 0x7F1C, 0x7F1B, 0x7F1F, 0x7F21, 0x7F22, 0x7F23, - 0x7F24, 0x7F25, 0x7F26, 0x7F27, 0x7F2A, 0x7F2B, 0x7F2C, 0x7F2D, - 0x7F2F, 0x7F30, 0x7F31, 0x7F32, 0x7F33, 0x7F35, 0x5E7A, 0x757F, - 0x5DDB, 0x753E, 0x9095, 0x738E, 0x7391, 0x73AE, 0x73A2, 0x739F, - 0x73CF, 0x73C2, 0x73D1, 0x73B7, 0x73B3, 0x73C0, 0x73C9, 0x73C8, - 0x73E5, 0x73D9, 0x987C, 0x740A, 0x73E9, 0x73E7, 0x73DE, 0x73BA, - 0x73F2, 0x740F, 0x742A, 0x745B, 0x7426, 0x7425, 0x7428, 0x7430, - 0x742E, 0x742C, 0x942F, 0x9430, 0x9431, 0x9432, 0x9433, 0x9434, - 0x9435, 0x9436, 0x9437, 0x9438, 0x9439, 0x943A, 0x943B, 0x943C, - 0x943D, 0x943F, 0x9440, 0x9441, 0x9442, 0x9443, 0x9444, 0x9445, - 0x9446, 0x9447, 0x9448, 0x9449, 0x944A, 0x944B, 0x944C, 0x944D, - 0x944E, 0x944F, 0x9450, 0x9451, 0x9452, 0x9453, 0x9454, 0x9455, - 0x9456, 0x9457, 0x9458, 0x9459, 0x945A, 0x945B, 0x945C, 0x945D, - 0x945E, 0x945F, 0x9460, 0x9461, 0x9462, 0x9463, 0x9464, 0x9465, - 0x9466, 0x9467, 0x9468, 0x9469, 0x946A, 0x946C, 0x946D, 0x946E, - 0x946F, 0x9470, 0x9471, 0x9472, 0x9473, 0x9474, 0x9475, 0x9476, - 0x9477, 0x9478, 0x9479, 0x947A, 0x947B, 0x947C, 0x947D, 0x947E, - 0x947F, 0x9480, 0x9481, 0x9482, 0x9483, 0x9484, 0x9491, 0x9496, - 0x9498, 0x94C7, 0x94CF, 0x94D3, 0x94D4, 0x94DA, 0x94E6, 0x94FB, - 0x951C, 0x9520, 0x741B, 0x741A, 0x7441, 0x745C, 0x7457, 0x7455, - 0x7459, 0x7477, 0x746D, 0x747E, 0x749C, 0x748E, 0x7480, 0x7481, - 0x7487, 0x748B, 0x749E, 0x74A8, 0x74A9, 0x7490, 0x74A7, 0x74D2, - 0x74BA, 0x97EA, 0x97EB, 0x97EC, 0x674C, 0x6753, 0x675E, 0x6748, - 0x6769, 0x67A5, 0x6787, 0x676A, 0x6773, 0x6798, 0x67A7, 0x6775, - 0x67A8, 0x679E, 0x67AD, 0x678B, 0x6777, 0x677C, 0x67F0, 0x6809, -plane 78 -at 0x00 - 0x67D8, 0x680A, 0x67E9, 0x67B0, 0x680C, 0x67D9, 0x67B5, 0x67DA, - 0x67B3, 0x67DD, 0x6800, 0x67C3, 0x67B8, 0x67E2, 0x680E, 0x67C1, - 0x67FD, 0x6832, 0x6833, 0x6860, 0x6861, 0x684E, 0x6862, 0x6844, - 0x6864, 0x6883, 0x681D, 0x6855, 0x6866, 0x6841, 0x6867, 0x6840, - 0x683E, 0x684A, 0x6849, 0x6829, 0x68B5, 0x688F, 0x6874, 0x6877, - 0x6893, 0x686B, 0x68C2, 0x696E, 0x68FC, 0x691F, 0x6920, 0x68F9, - 0x9527, 0x9533, 0x953D, 0x9543, 0x9548, 0x954B, 0x9555, 0x955A, - 0x9560, 0x956E, 0x9574, 0x9575, 0x9577, 0x9578, 0x9579, 0x957A, - 0x957B, 0x957C, 0x957D, 0x957E, 0x9580, 0x9581, 0x9582, 0x9583, - 0x9584, 0x9585, 0x9586, 0x9587, 0x9588, 0x9589, 0x958A, 0x958B, - 0x958C, 0x958D, 0x958E, 0x958F, 0x9590, 0x9591, 0x9592, 0x9593, - 0x9594, 0x9595, 0x9596, 0x9597, 0x9598, 0x9599, 0x959A, 0x959B, - 0x959C, 0x959D, 0x959E, 0x959F, 0x95A0, 0x95A1, 0x95A2, 0x95A3, - 0x95A4, 0x95A5, 0x95A6, 0x95A7, 0x95A8, 0x95A9, 0x95AA, 0x95AB, - 0x95AC, 0x95AD, 0x95AE, 0x95AF, 0x95B0, 0x95B1, 0x95B2, 0x95B3, - 0x95B4, 0x95B5, 0x95B6, 0x95B7, 0x95B8, 0x95B9, 0x95BA, 0x95BB, - 0x95BC, 0x95BD, 0x95BE, 0x95BF, 0x95C0, 0x95C1, 0x95C2, 0x95C3, - 0x95C4, 0x95C5, 0x95C6, 0x95C7, 0x95C8, 0x95C9, 0x95CA, 0x95CB, - 0x6924, 0x68F0, 0x690B, 0x6901, 0x6957, 0x68E3, 0x6910, 0x6971, - 0x6939, 0x6960, 0x6942, 0x695D, 0x6984, 0x696B, 0x6980, 0x6998, - 0x6978, 0x6934, 0x69CC, 0x6987, 0x6988, 0x69CE, 0x6989, 0x6966, - 0x6963, 0x6979, 0x699B, 0x69A7, 0x69BB, 0x69AB, 0x69AD, 0x69D4, - 0x69B1, 0x69C1, 0x69CA, 0x69DF, 0x6995, 0x69E0, 0x698D, 0x69FF, - 0x6A2F, 0x69ED, 0x6A17, 0x6A18, 0x6A65, 0x69F2, 0x6A44, 0x6A3E, - 0x6AA0, 0x6A50, 0x6A5B, 0x6A35, 0x6A8E, 0x6A79, 0x6A3D, 0x6A28, - 0x6A58, 0x6A7C, 0x6A91, 0x6A90, 0x6AA9, 0x6A97, 0x6AAB, 0x7337, - 0x7352, 0x6B81, 0x6B82, 0x6B87, 0x6B84, 0x6B92, 0x6B93, 0x6B8D, - 0x6B9A, 0x6B9B, 0x6BA1, 0x6BAA, 0x8F6B, 0x8F6D, 0x8F71, 0x8F72, - 0x8F73, 0x8F75, 0x8F76, 0x8F78, 0x8F77, 0x8F79, 0x8F7A, 0x8F7C, - 0x8F7E, 0x8F81, 0x8F82, 0x8F84, 0x8F87, 0x8F8B, 0x95CC, 0x95CD, - 0x95CE, 0x95CF, 0x95D0, 0x95D1, 0x95D2, 0x95D3, 0x95D4, 0x95D5, - 0x95D6, 0x95D7, 0x95D8, 0x95D9, 0x95DA, 0x95DB, 0x95DC, 0x95DD, -plane 79 -at 0x00 - 0x95DE, 0x95DF, 0x95E0, 0x95E1, 0x95E2, 0x95E3, 0x95E4, 0x95E5, - 0x95E6, 0x95E7, 0x95EC, 0x95FF, 0x9607, 0x9613, 0x9618, 0x961B, - 0x961E, 0x9620, 0x9623, 0x9624, 0x9625, 0x9626, 0x9627, 0x9628, - 0x9629, 0x962B, 0x962C, 0x962D, 0x962F, 0x9630, 0x9637, 0x9638, - 0x9639, 0x963A, 0x963E, 0x9641, 0x9643, 0x964A, 0x964E, 0x964F, - 0x9651, 0x9652, 0x9653, 0x9656, 0x9657, 0x9658, 0x9659, 0x965A, - 0x965C, 0x965D, 0x965E, 0x9660, 0x9663, 0x9665, 0x9666, 0x966B, - 0x966D, 0x966E, 0x966F, 0x9670, 0x9671, 0x9673, 0x9678, 0x9679, - 0x967A, 0x967B, 0x967C, 0x967D, 0x967E, 0x967F, 0x9680, 0x9681, - 0x9682, 0x9683, 0x9684, 0x9687, 0x9689, 0x968A, 0x8F8D, 0x8F8E, - 0x8F8F, 0x8F98, 0x8F9A, 0x8ECE, 0x620B, 0x6217, 0x621B, 0x621F, - 0x6222, 0x6221, 0x6225, 0x6224, 0x622C, 0x81E7, 0x74EF, 0x74F4, - 0x74FF, 0x750F, 0x7511, 0x7513, 0x6534, 0x65EE, 0x65EF, 0x65F0, - 0x660A, 0x6619, 0x6772, 0x6603, 0x6615, 0x6600, 0x7085, 0x66F7, - 0x661D, 0x6634, 0x6631, 0x6636, 0x6635, 0x8006, 0x665F, 0x6654, - 0x6641, 0x664F, 0x6656, 0x6661, 0x6657, 0x6677, 0x6684, 0x668C, - 0x66A7, 0x669D, 0x66BE, 0x66DB, 0x66DC, 0x66E6, 0x66E9, 0x8D32, - 0x8D33, 0x8D36, 0x8D3B, 0x8D3D, 0x8D40, 0x8D45, 0x8D46, 0x8D48, - 0x8D49, 0x8D47, 0x8D4D, 0x8D55, 0x8D59, 0x89C7, 0x89CA, 0x89CB, - 0x89CC, 0x89CE, 0x89CF, 0x89D0, 0x89D1, 0x726E, 0x729F, 0x725D, - 0x7266, 0x726F, 0x727E, 0x727F, 0x7284, 0x728B, 0x728D, 0x728F, - 0x7292, 0x6308, 0x6332, 0x63B0, 0x968C, 0x968E, 0x9691, 0x9692, - 0x9693, 0x9695, 0x9696, 0x969A, 0x969B, 0x969D, 0x969E, 0x969F, - 0x96A0, 0x96A1, 0x96A2, 0x96A3, 0x96A4, 0x96A5, 0x96A6, 0x96A8, - 0x96A9, 0x96AA, 0x96AB, 0x96AC, 0x96AD, 0x96AE, 0x96AF, 0x96B1, - 0x96B2, 0x96B4, 0x96B5, 0x96B7, 0x96B8, 0x96BA, 0x96BB, 0x96BF, - 0x96C2, 0x96C3, 0x96C8, 0x96CA, 0x96CB, 0x96D0, 0x96D1, 0x96D3, - 0x96D4, 0x96D6, 0x96D7, 0x96D8, 0x96D9, 0x96DA, 0x96DB, 0x96DC, - 0x96DD, 0x96DE, 0x96DF, 0x96E1, 0x96E2, 0x96E3, 0x96E4, 0x96E5, - 0x96E6, 0x96E7, 0x96EB, 0x96EC, 0x96ED, 0x96EE, 0x96F0, 0x96F1, - 0x96F2, 0x96F4, 0x96F5, 0x96F8, 0x96FA, 0x96FB, 0x96FC, 0x96FD, - 0x96FF, 0x9702, 0x9703, 0x9705, 0x970A, 0x970B, 0x970C, 0x9710, -plane 80 -at 0x00 - 0x9711, 0x9712, 0x9714, 0x9715, 0x9717, 0x9718, 0x9719, 0x971A, - 0x971B, 0x971D, 0x971F, 0x9720, 0x643F, 0x64D8, 0x8004, 0x6BEA, - 0x6BF3, 0x6BFD, 0x6BF5, 0x6BF9, 0x6C05, 0x6C07, 0x6C06, 0x6C0D, - 0x6C15, 0x6C18, 0x6C19, 0x6C1A, 0x6C21, 0x6C29, 0x6C24, 0x6C2A, - 0x6C32, 0x6535, 0x6555, 0x656B, 0x724D, 0x7252, 0x7256, 0x7230, - 0x8662, 0x5216, 0x809F, 0x809C, 0x8093, 0x80BC, 0x670A, 0x80BD, - 0x80B1, 0x80AB, 0x80AD, 0x80B4, 0x80B7, 0x80E7, 0x80E8, 0x80E9, - 0x80EA, 0x80DB, 0x80C2, 0x80C4, 0x80D9, 0x80CD, 0x80D7, 0x6710, - 0x80DD, 0x80EB, 0x80F1, 0x80F4, 0x80ED, 0x810D, 0x810E, 0x80F2, - 0x80FC, 0x6715, 0x8112, 0x8C5A, 0x8136, 0x811E, 0x812C, 0x8118, - 0x8132, 0x8148, 0x814C, 0x8153, 0x8174, 0x8159, 0x815A, 0x8171, - 0x8160, 0x8169, 0x817C, 0x817D, 0x816D, 0x8167, 0x584D, 0x5AB5, - 0x8188, 0x8182, 0x8191, 0x6ED5, 0x81A3, 0x81AA, 0x81CC, 0x6726, - 0x81CA, 0x81BB, 0x9721, 0x9722, 0x9723, 0x9724, 0x9725, 0x9726, - 0x9727, 0x9728, 0x9729, 0x972B, 0x972C, 0x972E, 0x972F, 0x9731, - 0x9733, 0x9734, 0x9735, 0x9736, 0x9737, 0x973A, 0x973B, 0x973C, - 0x973D, 0x973F, 0x9740, 0x9741, 0x9742, 0x9743, 0x9744, 0x9745, - 0x9746, 0x9747, 0x9748, 0x9749, 0x974A, 0x974B, 0x974C, 0x974D, - 0x974E, 0x974F, 0x9750, 0x9751, 0x9754, 0x9755, 0x9757, 0x9758, - 0x975A, 0x975C, 0x975D, 0x975F, 0x9763, 0x9764, 0x9766, 0x9767, - 0x9768, 0x976A, 0x976B, 0x976C, 0x976D, 0x976E, 0x976F, 0x9770, - 0x9771, 0x9772, 0x9775, 0x9777, 0x9778, 0x9779, 0x977A, 0x977B, - 0x977D, 0x977E, 0x977F, 0x9780, 0x9781, 0x9782, 0x9783, 0x9784, - 0x9786, 0x9787, 0x9788, 0x9789, 0x978A, 0x978C, 0x978E, 0x978F, - 0x9790, 0x9793, 0x9795, 0x9796, 0x9797, 0x9799, 0x979A, 0x979B, - 0x979C, 0x979D, 0x81C1, 0x81A6, 0x6B24, 0x6B37, 0x6B39, 0x6B43, - 0x6B46, 0x6B59, 0x98D1, 0x98D2, 0x98D3, 0x98D5, 0x98D9, 0x98DA, - 0x6BB3, 0x5F40, 0x6BC2, 0x89F3, 0x6590, 0x9F51, 0x6593, 0x65BC, - 0x65C6, 0x65C4, 0x65C3, 0x65CC, 0x65CE, 0x65D2, 0x65D6, 0x7080, - 0x709C, 0x7096, 0x709D, 0x70BB, 0x70C0, 0x70B7, 0x70AB, 0x70B1, - 0x70E8, 0x70CA, 0x7110, 0x7113, 0x7116, 0x712F, 0x7131, 0x7173, - 0x715C, 0x7168, 0x7145, 0x7172, 0x714A, 0x7178, 0x717A, 0x7198, -plane 81 -at 0x00 - 0x71B3, 0x71B5, 0x71A8, 0x71A0, 0x71E0, 0x71D4, 0x71E7, 0x71F9, - 0x721D, 0x7228, 0x706C, 0x7118, 0x7166, 0x71B9, 0x623E, 0x623D, - 0x6243, 0x6248, 0x6249, 0x793B, 0x7940, 0x7946, 0x7949, 0x795B, - 0x795C, 0x7953, 0x795A, 0x7962, 0x7957, 0x7960, 0x796F, 0x7967, - 0x797A, 0x7985, 0x798A, 0x799A, 0x79A7, 0x79B3, 0x5FD1, 0x5FD0, - 0x979E, 0x979F, 0x97A1, 0x97A2, 0x97A4, 0x97A5, 0x97A6, 0x97A7, - 0x97A8, 0x97A9, 0x97AA, 0x97AC, 0x97AE, 0x97B0, 0x97B1, 0x97B3, - 0x97B5, 0x97B6, 0x97B7, 0x97B8, 0x97B9, 0x97BA, 0x97BB, 0x97BC, - 0x97BD, 0x97BE, 0x97BF, 0x97C0, 0x97C1, 0x97C2, 0x97C3, 0x97C4, - 0x97C5, 0x97C6, 0x97C7, 0x97C8, 0x97C9, 0x97CA, 0x97CB, 0x97CC, - 0x97CD, 0x97CE, 0x97CF, 0x97D0, 0x97D1, 0x97D2, 0x97D3, 0x97D4, - 0x97D5, 0x97D6, 0x97D7, 0x97D8, 0x97D9, 0x97DA, 0x97DB, 0x97DC, - 0x97DD, 0x97DE, 0x97DF, 0x97E0, 0x97E1, 0x97E2, 0x97E3, 0x97E4, - 0x97E5, 0x97E8, 0x97EE, 0x97EF, 0x97F0, 0x97F1, 0x97F2, 0x97F4, - 0x97F7, 0x97F8, 0x97F9, 0x97FA, 0x97FB, 0x97FC, 0x97FD, 0x97FE, - 0x97FF, 0x9800, 0x9801, 0x9802, 0x9803, 0x9804, 0x9805, 0x9806, - 0x9807, 0x9808, 0x9809, 0x980A, 0x980B, 0x980C, 0x980D, 0x980E, - 0x603C, 0x605D, 0x605A, 0x6067, 0x6041, 0x6059, 0x6063, 0x60AB, - 0x6106, 0x610D, 0x615D, 0x61A9, 0x619D, 0x61CB, 0x61D1, 0x6206, - 0x8080, 0x807F, 0x6C93, 0x6CF6, 0x6DFC, 0x77F6, 0x77F8, 0x7800, - 0x7809, 0x7817, 0x7818, 0x7811, 0x65AB, 0x782D, 0x781C, 0x781D, - 0x7839, 0x783A, 0x783B, 0x781F, 0x783C, 0x7825, 0x782C, 0x7823, - 0x7829, 0x784E, 0x786D, 0x7856, 0x7857, 0x7826, 0x7850, 0x7847, - 0x784C, 0x786A, 0x789B, 0x7893, 0x789A, 0x7887, 0x789C, 0x78A1, - 0x78A3, 0x78B2, 0x78B9, 0x78A5, 0x78D4, 0x78D9, 0x78C9, 0x78EC, - 0x78F2, 0x7905, 0x78F4, 0x7913, 0x7924, 0x791E, 0x7934, 0x9F9B, - 0x9EF9, 0x9EFB, 0x9EFC, 0x76F1, 0x7704, 0x770D, 0x76F9, 0x7707, - 0x7708, 0x771A, 0x7722, 0x7719, 0x772D, 0x7726, 0x7735, 0x7738, - 0x7750, 0x7751, 0x7747, 0x7743, 0x775A, 0x7768, 0x980F, 0x9810, - 0x9811, 0x9812, 0x9813, 0x9814, 0x9815, 0x9816, 0x9817, 0x9818, - 0x9819, 0x981A, 0x981B, 0x981C, 0x981D, 0x981E, 0x981F, 0x9820, - 0x9821, 0x9822, 0x9823, 0x9824, 0x9825, 0x9826, 0x9827, 0x9828, -plane 82 -at 0x00 - 0x9829, 0x982A, 0x982B, 0x982C, 0x982D, 0x982E, 0x982F, 0x9830, - 0x9831, 0x9832, 0x9833, 0x9834, 0x9835, 0x9836, 0x9837, 0x9838, - 0x9839, 0x983A, 0x983B, 0x983C, 0x983D, 0x983E, 0x983F, 0x9840, - 0x9841, 0x9842, 0x9843, 0x9844, 0x9845, 0x9846, 0x9847, 0x9848, - 0x9849, 0x984A, 0x984B, 0x984C, 0x984D, 0x984E, 0x984F, 0x9850, - 0x9851, 0x9852, 0x9853, 0x9854, 0x9855, 0x9856, 0x9857, 0x9858, - 0x9859, 0x985A, 0x985B, 0x985C, 0x985D, 0x985E, 0x985F, 0x9860, - 0x9861, 0x9862, 0x9863, 0x9864, 0x9865, 0x9866, 0x9867, 0x9868, - 0x9869, 0x986A, 0x986B, 0x986C, 0x986D, 0x986E, 0x7762, 0x7765, - 0x777F, 0x778D, 0x777D, 0x7780, 0x778C, 0x7791, 0x779F, 0x77A0, - 0x77B0, 0x77B5, 0x77BD, 0x753A, 0x7540, 0x754E, 0x754B, 0x7548, - 0x755B, 0x7572, 0x7579, 0x7583, 0x7F58, 0x7F61, 0x7F5F, 0x8A48, - 0x7F68, 0x7F74, 0x7F71, 0x7F79, 0x7F81, 0x7F7E, 0x76CD, 0x76E5, - 0x8832, 0x9485, 0x9486, 0x9487, 0x948B, 0x948A, 0x948C, 0x948D, - 0x948F, 0x9490, 0x9494, 0x9497, 0x9495, 0x949A, 0x949B, 0x949C, - 0x94A3, 0x94A4, 0x94AB, 0x94AA, 0x94AD, 0x94AC, 0x94AF, 0x94B0, - 0x94B2, 0x94B4, 0x94B6, 0x94B7, 0x94B8, 0x94B9, 0x94BA, 0x94BC, - 0x94BD, 0x94BF, 0x94C4, 0x94C8, 0x94C9, 0x94CA, 0x94CB, 0x94CC, - 0x94CD, 0x94CE, 0x94D0, 0x94D1, 0x94D2, 0x94D5, 0x94D6, 0x94D7, - 0x94D9, 0x94D8, 0x94DB, 0x94DE, 0x94DF, 0x94E0, 0x94E2, 0x94E4, - 0x94E5, 0x94E7, 0x94E8, 0x94EA, 0x986F, 0x9870, 0x9871, 0x9872, - 0x9873, 0x9874, 0x988B, 0x988E, 0x9892, 0x9895, 0x9899, 0x98A3, - 0x98A8, 0x98A9, 0x98AA, 0x98AB, 0x98AC, 0x98AD, 0x98AE, 0x98AF, - 0x98B0, 0x98B1, 0x98B2, 0x98B3, 0x98B4, 0x98B5, 0x98B6, 0x98B7, - 0x98B8, 0x98B9, 0x98BA, 0x98BB, 0x98BC, 0x98BD, 0x98BE, 0x98BF, - 0x98C0, 0x98C1, 0x98C2, 0x98C3, 0x98C4, 0x98C5, 0x98C6, 0x98C7, - 0x98C8, 0x98C9, 0x98CA, 0x98CB, 0x98CC, 0x98CD, 0x98CF, 0x98D0, - 0x98D4, 0x98D6, 0x98D7, 0x98DB, 0x98DC, 0x98DD, 0x98E0, 0x98E1, - 0x98E2, 0x98E3, 0x98E4, 0x98E5, 0x98E6, 0x98E9, 0x98EA, 0x98EB, - 0x98EC, 0x98ED, 0x98EE, 0x98EF, 0x98F0, 0x98F1, 0x98F2, 0x98F3, - 0x98F4, 0x98F5, 0x98F6, 0x98F7, 0x98F8, 0x98F9, 0x98FA, 0x98FB, - 0x98FC, 0x98FD, 0x98FE, 0x98FF, 0x9900, 0x9901, 0x9902, 0x9903, -plane 83 -at 0x00 - 0x9904, 0x9905, 0x9906, 0x9907, 0x94E9, 0x94EB, 0x94EE, 0x94EF, - 0x94F3, 0x94F4, 0x94F5, 0x94F7, 0x94F9, 0x94FC, 0x94FD, 0x94FF, - 0x9503, 0x9502, 0x9506, 0x9507, 0x9509, 0x950A, 0x950D, 0x950E, - 0x950F, 0x9512, 0x9513, 0x9514, 0x9515, 0x9516, 0x9518, 0x951B, - 0x951D, 0x951E, 0x951F, 0x9522, 0x952A, 0x952B, 0x9529, 0x952C, - 0x9531, 0x9532, 0x9534, 0x9536, 0x9537, 0x9538, 0x953C, 0x953E, - 0x953F, 0x9542, 0x9535, 0x9544, 0x9545, 0x9546, 0x9549, 0x954C, - 0x954E, 0x954F, 0x9552, 0x9553, 0x9554, 0x9556, 0x9557, 0x9558, - 0x9559, 0x955B, 0x955E, 0x955F, 0x955D, 0x9561, 0x9562, 0x9564, - 0x9565, 0x9566, 0x9567, 0x9568, 0x9569, 0x956A, 0x956B, 0x956C, - 0x956F, 0x9571, 0x9572, 0x9573, 0x953A, 0x77E7, 0x77EC, 0x96C9, - 0x79D5, 0x79ED, 0x79E3, 0x79EB, 0x7A06, 0x5D47, 0x7A03, 0x7A02, - 0x7A1E, 0x7A14, 0x9908, 0x9909, 0x990A, 0x990B, 0x990C, 0x990E, - 0x990F, 0x9911, 0x9912, 0x9913, 0x9914, 0x9915, 0x9916, 0x9917, - 0x9918, 0x9919, 0x991A, 0x991B, 0x991C, 0x991D, 0x991E, 0x991F, - 0x9920, 0x9921, 0x9922, 0x9923, 0x9924, 0x9925, 0x9926, 0x9927, - 0x9928, 0x9929, 0x992A, 0x992B, 0x992C, 0x992D, 0x992F, 0x9930, - 0x9931, 0x9932, 0x9933, 0x9934, 0x9935, 0x9936, 0x9937, 0x9938, - 0x9939, 0x993A, 0x993B, 0x993C, 0x993D, 0x993E, 0x993F, 0x9940, - 0x9941, 0x9942, 0x9943, 0x9944, 0x9945, 0x9946, 0x9947, 0x9948, - 0x9949, 0x994A, 0x994B, 0x994C, 0x994D, 0x994E, 0x994F, 0x9950, - 0x9951, 0x9952, 0x9953, 0x9956, 0x9957, 0x9958, 0x9959, 0x995A, - 0x995B, 0x995C, 0x995D, 0x995E, 0x995F, 0x9960, 0x9961, 0x9962, - 0x9964, 0x9966, 0x9973, 0x9978, 0x9979, 0x997B, 0x997E, 0x9982, - 0x9983, 0x9989, 0x7A39, 0x7A37, 0x7A51, 0x9ECF, 0x99A5, 0x7A70, - 0x7688, 0x768E, 0x7693, 0x7699, 0x76A4, 0x74DE, 0x74E0, 0x752C, - 0x9E20, 0x9E22, 0x9E28, 0x9E29, 0x9E2A, 0x9E2B, 0x9E2C, 0x9E32, - 0x9E31, 0x9E36, 0x9E38, 0x9E37, 0x9E39, 0x9E3A, 0x9E3E, 0x9E41, - 0x9E42, 0x9E44, 0x9E46, 0x9E47, 0x9E48, 0x9E49, 0x9E4B, 0x9E4C, - 0x9E4E, 0x9E51, 0x9E55, 0x9E57, 0x9E5A, 0x9E5B, 0x9E5C, 0x9E5E, - 0x9E63, 0x9E66, 0x9E67, 0x9E68, 0x9E69, 0x9E6A, 0x9E6B, 0x9E6C, - 0x9E71, 0x9E6D, 0x9E73, 0x7592, 0x7594, 0x7596, 0x75A0, 0x759D, -plane 84 -at 0x00 - 0x75AC, 0x75A3, 0x75B3, 0x75B4, 0x75B8, 0x75C4, 0x75B1, 0x75B0, - 0x75C3, 0x75C2, 0x75D6, 0x75CD, 0x75E3, 0x75E8, 0x75E6, 0x75E4, - 0x75EB, 0x75E7, 0x7603, 0x75F1, 0x75FC, 0x75FF, 0x7610, 0x7600, - 0x7605, 0x760C, 0x7617, 0x760A, 0x7625, 0x7618, 0x7615, 0x7619, - 0x998C, 0x998E, 0x999A, 0x999B, 0x999C, 0x999D, 0x999E, 0x999F, - 0x99A0, 0x99A1, 0x99A2, 0x99A3, 0x99A4, 0x99A6, 0x99A7, 0x99A9, - 0x99AA, 0x99AB, 0x99AC, 0x99AD, 0x99AE, 0x99AF, 0x99B0, 0x99B1, - 0x99B2, 0x99B3, 0x99B4, 0x99B5, 0x99B6, 0x99B7, 0x99B8, 0x99B9, - 0x99BA, 0x99BB, 0x99BC, 0x99BD, 0x99BE, 0x99BF, 0x99C0, 0x99C1, - 0x99C2, 0x99C3, 0x99C4, 0x99C5, 0x99C6, 0x99C7, 0x99C8, 0x99C9, - 0x99CA, 0x99CB, 0x99CC, 0x99CD, 0x99CE, 0x99CF, 0x99D0, 0x99D1, - 0x99D2, 0x99D3, 0x99D4, 0x99D5, 0x99D6, 0x99D7, 0x99D8, 0x99D9, - 0x99DA, 0x99DB, 0x99DC, 0x99DD, 0x99DE, 0x99DF, 0x99E0, 0x99E1, - 0x99E2, 0x99E3, 0x99E4, 0x99E5, 0x99E6, 0x99E7, 0x99E8, 0x99E9, - 0x99EA, 0x99EB, 0x99EC, 0x99ED, 0x99EE, 0x99EF, 0x99F0, 0x99F1, - 0x99F2, 0x99F3, 0x99F4, 0x99F5, 0x99F6, 0x99F7, 0x99F8, 0x99F9, - 0x761B, 0x763C, 0x7622, 0x7620, 0x7640, 0x762D, 0x7630, 0x763F, - 0x7635, 0x7643, 0x763E, 0x7633, 0x764D, 0x765E, 0x7654, 0x765C, - 0x7656, 0x766B, 0x766F, 0x7FCA, 0x7AE6, 0x7A78, 0x7A79, 0x7A80, - 0x7A86, 0x7A88, 0x7A95, 0x7AA6, 0x7AA0, 0x7AAC, 0x7AA8, 0x7AAD, - 0x7AB3, 0x8864, 0x8869, 0x8872, 0x887D, 0x887F, 0x8882, 0x88A2, - 0x88C6, 0x88B7, 0x88BC, 0x88C9, 0x88E2, 0x88CE, 0x88E3, 0x88E5, - 0x88F1, 0x891A, 0x88FC, 0x88E8, 0x88FE, 0x88F0, 0x8921, 0x8919, - 0x8913, 0x891B, 0x890A, 0x8934, 0x892B, 0x8936, 0x8941, 0x8966, - 0x897B, 0x758B, 0x80E5, 0x76B2, 0x76B4, 0x77DC, 0x8012, 0x8014, - 0x8016, 0x801C, 0x8020, 0x8022, 0x8025, 0x8026, 0x8027, 0x8029, - 0x8028, 0x8031, 0x800B, 0x8035, 0x8043, 0x8046, 0x804D, 0x8052, - 0x8069, 0x8071, 0x8983, 0x9878, 0x9880, 0x9883, 0x99FA, 0x99FB, - 0x99FC, 0x99FD, 0x99FE, 0x99FF, 0x9A00, 0x9A01, 0x9A02, 0x9A03, - 0x9A04, 0x9A05, 0x9A06, 0x9A07, 0x9A08, 0x9A09, 0x9A0A, 0x9A0B, - 0x9A0C, 0x9A0D, 0x9A0E, 0x9A0F, 0x9A10, 0x9A11, 0x9A12, 0x9A13, - 0x9A14, 0x9A15, 0x9A16, 0x9A17, 0x9A18, 0x9A19, 0x9A1A, 0x9A1B, -plane 85 -at 0x00 - 0x9A1C, 0x9A1D, 0x9A1E, 0x9A1F, 0x9A20, 0x9A21, 0x9A22, 0x9A23, - 0x9A24, 0x9A25, 0x9A26, 0x9A27, 0x9A28, 0x9A29, 0x9A2A, 0x9A2B, - 0x9A2C, 0x9A2D, 0x9A2E, 0x9A2F, 0x9A30, 0x9A31, 0x9A32, 0x9A33, - 0x9A34, 0x9A35, 0x9A36, 0x9A37, 0x9A38, 0x9A39, 0x9A3A, 0x9A3B, - 0x9A3C, 0x9A3D, 0x9A3E, 0x9A3F, 0x9A40, 0x9A41, 0x9A42, 0x9A43, - 0x9A44, 0x9A45, 0x9A46, 0x9A47, 0x9A48, 0x9A49, 0x9A4A, 0x9A4B, - 0x9A4C, 0x9A4D, 0x9A4E, 0x9A4F, 0x9A50, 0x9A51, 0x9A52, 0x9A53, - 0x9A54, 0x9A55, 0x9A56, 0x9A57, 0x9A58, 0x9A59, 0x9889, 0x988C, - 0x988D, 0x988F, 0x9894, 0x989A, 0x989B, 0x989E, 0x989F, 0x98A1, - 0x98A2, 0x98A5, 0x98A6, 0x864D, 0x8654, 0x866C, 0x866E, 0x867F, - 0x867A, 0x867C, 0x867B, 0x86A8, 0x868D, 0x868B, 0x86AC, 0x869D, - 0x86A7, 0x86A3, 0x86AA, 0x8693, 0x86A9, 0x86B6, 0x86C4, 0x86B5, - 0x86CE, 0x86B0, 0x86BA, 0x86B1, 0x86AF, 0x86C9, 0x86CF, 0x86B4, - 0x86E9, 0x86F1, 0x86F2, 0x86ED, 0x86F3, 0x86D0, 0x8713, 0x86DE, - 0x86F4, 0x86DF, 0x86D8, 0x86D1, 0x8703, 0x8707, 0x86F8, 0x8708, - 0x870A, 0x870D, 0x8709, 0x8723, 0x873B, 0x871E, 0x8725, 0x872E, - 0x871A, 0x873E, 0x8748, 0x8734, 0x8731, 0x8729, 0x8737, 0x873F, - 0x8782, 0x8722, 0x877D, 0x877E, 0x877B, 0x8760, 0x8770, 0x874C, - 0x876E, 0x878B, 0x8753, 0x8763, 0x877C, 0x8764, 0x8759, 0x8765, - 0x8793, 0x87AF, 0x87A8, 0x87D2, 0x9A5A, 0x9A5B, 0x9A5C, 0x9A5D, - 0x9A5E, 0x9A5F, 0x9A60, 0x9A61, 0x9A62, 0x9A63, 0x9A64, 0x9A65, - 0x9A66, 0x9A67, 0x9A68, 0x9A69, 0x9A6A, 0x9A6B, 0x9A72, 0x9A83, - 0x9A89, 0x9A8D, 0x9A8E, 0x9A94, 0x9A95, 0x9A99, 0x9AA6, 0x9AA9, - 0x9AAA, 0x9AAB, 0x9AAC, 0x9AAD, 0x9AAE, 0x9AAF, 0x9AB2, 0x9AB3, - 0x9AB4, 0x9AB5, 0x9AB9, 0x9ABB, 0x9ABD, 0x9ABE, 0x9ABF, 0x9AC3, - 0x9AC4, 0x9AC6, 0x9AC7, 0x9AC8, 0x9AC9, 0x9ACA, 0x9ACD, 0x9ACE, - 0x9ACF, 0x9AD0, 0x9AD2, 0x9AD4, 0x9AD5, 0x9AD6, 0x9AD7, 0x9AD9, - 0x9ADA, 0x9ADB, 0x9ADC, 0x9ADD, 0x9ADE, 0x9AE0, 0x9AE2, 0x9AE3, - 0x9AE4, 0x9AE5, 0x9AE7, 0x9AE8, 0x9AE9, 0x9AEA, 0x9AEC, 0x9AEE, - 0x9AF0, 0x9AF1, 0x9AF2, 0x9AF3, 0x9AF4, 0x9AF5, 0x9AF6, 0x9AF7, - 0x9AF8, 0x9AFA, 0x9AFC, 0x9AFD, 0x9AFE, 0x9AFF, 0x9B00, 0x9B01, - 0x9B02, 0x9B04, 0x9B05, 0x9B06, 0x87C6, 0x8788, 0x8785, 0x87AD, -plane 86 -at 0x00 - 0x8797, 0x8783, 0x87AB, 0x87E5, 0x87AC, 0x87B5, 0x87B3, 0x87CB, - 0x87D3, 0x87BD, 0x87D1, 0x87C0, 0x87CA, 0x87DB, 0x87EA, 0x87E0, - 0x87EE, 0x8816, 0x8813, 0x87FE, 0x880A, 0x881B, 0x8821, 0x8839, - 0x883C, 0x7F36, 0x7F42, 0x7F44, 0x7F45, 0x8210, 0x7AFA, 0x7AFD, - 0x7B08, 0x7B03, 0x7B04, 0x7B15, 0x7B0A, 0x7B2B, 0x7B0F, 0x7B47, - 0x7B38, 0x7B2A, 0x7B19, 0x7B2E, 0x7B31, 0x7B20, 0x7B25, 0x7B24, - 0x7B33, 0x7B3E, 0x7B1E, 0x7B58, 0x7B5A, 0x7B45, 0x7B75, 0x7B4C, - 0x7B5D, 0x7B60, 0x7B6E, 0x7B7B, 0x7B62, 0x7B72, 0x7B71, 0x7B90, - 0x7BA6, 0x7BA7, 0x7BB8, 0x7BAC, 0x7B9D, 0x7BA8, 0x7B85, 0x7BAA, - 0x7B9C, 0x7BA2, 0x7BAB, 0x7BB4, 0x7BD1, 0x7BC1, 0x7BCC, 0x7BDD, - 0x7BDA, 0x7BE5, 0x7BE6, 0x7BEA, 0x7C0C, 0x7BFE, 0x7BFC, 0x7C0F, - 0x7C16, 0x7C0B, 0x9B07, 0x9B09, 0x9B0A, 0x9B0B, 0x9B0C, 0x9B0D, - 0x9B0E, 0x9B10, 0x9B11, 0x9B12, 0x9B14, 0x9B15, 0x9B16, 0x9B17, - 0x9B18, 0x9B19, 0x9B1A, 0x9B1B, 0x9B1C, 0x9B1D, 0x9B1E, 0x9B20, - 0x9B21, 0x9B22, 0x9B24, 0x9B25, 0x9B26, 0x9B27, 0x9B28, 0x9B29, - 0x9B2A, 0x9B2B, 0x9B2C, 0x9B2D, 0x9B2E, 0x9B30, 0x9B31, 0x9B33, - 0x9B34, 0x9B35, 0x9B36, 0x9B37, 0x9B38, 0x9B39, 0x9B3A, 0x9B3D, - 0x9B3E, 0x9B3F, 0x9B40, 0x9B46, 0x9B4A, 0x9B4B, 0x9B4C, 0x9B4E, - 0x9B50, 0x9B52, 0x9B53, 0x9B55, 0x9B56, 0x9B57, 0x9B58, 0x9B59, - 0x9B5A, 0x9B5B, 0x9B5C, 0x9B5D, 0x9B5E, 0x9B5F, 0x9B60, 0x9B61, - 0x9B62, 0x9B63, 0x9B64, 0x9B65, 0x9B66, 0x9B67, 0x9B68, 0x9B69, - 0x9B6A, 0x9B6B, 0x9B6C, 0x9B6D, 0x9B6E, 0x9B6F, 0x9B70, 0x9B71, - 0x9B72, 0x9B73, 0x9B74, 0x9B75, 0x9B76, 0x9B77, 0x9B78, 0x9B79, - 0x9B7A, 0x9B7B, 0x7C1F, 0x7C2A, 0x7C26, 0x7C38, 0x7C41, 0x7C40, - 0x81FE, 0x8201, 0x8202, 0x8204, 0x81EC, 0x8844, 0x8221, 0x8222, - 0x8223, 0x822D, 0x822F, 0x8228, 0x822B, 0x8238, 0x823B, 0x8233, - 0x8234, 0x823E, 0x8244, 0x8249, 0x824B, 0x824F, 0x825A, 0x825F, - 0x8268, 0x887E, 0x8885, 0x8888, 0x88D8, 0x88DF, 0x895E, 0x7F9D, - 0x7F9F, 0x7FA7, 0x7FAF, 0x7FB0, 0x7FB2, 0x7C7C, 0x6549, 0x7C91, - 0x7C9D, 0x7C9C, 0x7C9E, 0x7CA2, 0x7CB2, 0x7CBC, 0x7CBD, 0x7CC1, - 0x7CC7, 0x7CCC, 0x7CCD, 0x7CC8, 0x7CC5, 0x7CD7, 0x7CE8, 0x826E, - 0x66A8, 0x7FBF, 0x7FCE, 0x7FD5, 0x7FE5, 0x7FE1, 0x7FE6, 0x7FE9, -plane 87 -at 0x00 - 0x7FEE, 0x7FF3, 0x7CF8, 0x7D77, 0x7DA6, 0x7DAE, 0x7E47, 0x7E9B, - 0x9EB8, 0x9EB4, 0x8D73, 0x8D84, 0x8D94, 0x8D91, 0x8DB1, 0x8D67, - 0x8D6D, 0x8C47, 0x8C49, 0x914A, 0x9150, 0x914E, 0x914F, 0x9164, - 0x9B7C, 0x9B7D, 0x9B7E, 0x9B7F, 0x9B80, 0x9B81, 0x9B82, 0x9B83, - 0x9B84, 0x9B85, 0x9B86, 0x9B87, 0x9B88, 0x9B89, 0x9B8A, 0x9B8B, - 0x9B8C, 0x9B8D, 0x9B8E, 0x9B8F, 0x9B90, 0x9B91, 0x9B92, 0x9B93, - 0x9B94, 0x9B95, 0x9B96, 0x9B97, 0x9B98, 0x9B99, 0x9B9A, 0x9B9B, - 0x9B9C, 0x9B9D, 0x9B9E, 0x9B9F, 0x9BA0, 0x9BA1, 0x9BA2, 0x9BA3, - 0x9BA4, 0x9BA5, 0x9BA6, 0x9BA7, 0x9BA8, 0x9BA9, 0x9BAA, 0x9BAB, - 0x9BAC, 0x9BAD, 0x9BAE, 0x9BAF, 0x9BB0, 0x9BB1, 0x9BB2, 0x9BB3, - 0x9BB4, 0x9BB5, 0x9BB6, 0x9BB7, 0x9BB8, 0x9BB9, 0x9BBA, 0x9BBB, - 0x9BBC, 0x9BBD, 0x9BBE, 0x9BBF, 0x9BC0, 0x9BC1, 0x9BC2, 0x9BC3, - 0x9BC4, 0x9BC5, 0x9BC6, 0x9BC7, 0x9BC8, 0x9BC9, 0x9BCA, 0x9BCB, - 0x9BCC, 0x9BCD, 0x9BCE, 0x9BCF, 0x9BD0, 0x9BD1, 0x9BD2, 0x9BD3, - 0x9BD4, 0x9BD5, 0x9BD6, 0x9BD7, 0x9BD8, 0x9BD9, 0x9BDA, 0x9BDB, - 0x9162, 0x9161, 0x9170, 0x9169, 0x916F, 0x917D, 0x917E, 0x9172, - 0x9174, 0x9179, 0x918C, 0x9185, 0x9190, 0x918D, 0x9191, 0x91A2, - 0x91A3, 0x91AA, 0x91AD, 0x91AE, 0x91AF, 0x91B5, 0x91B4, 0x91BA, - 0x8C55, 0x9E7E, 0x8DB8, 0x8DEB, 0x8E05, 0x8E59, 0x8E69, 0x8DB5, - 0x8DBF, 0x8DBC, 0x8DBA, 0x8DC4, 0x8DD6, 0x8DD7, 0x8DDA, 0x8DDE, - 0x8DCE, 0x8DCF, 0x8DDB, 0x8DC6, 0x8DEC, 0x8DF7, 0x8DF8, 0x8DE3, - 0x8DF9, 0x8DFB, 0x8DE4, 0x8E09, 0x8DFD, 0x8E14, 0x8E1D, 0x8E1F, - 0x8E2C, 0x8E2E, 0x8E23, 0x8E2F, 0x8E3A, 0x8E40, 0x8E39, 0x8E35, - 0x8E3D, 0x8E31, 0x8E49, 0x8E41, 0x8E42, 0x8E51, 0x8E52, 0x8E4A, - 0x8E70, 0x8E76, 0x8E7C, 0x8E6F, 0x8E74, 0x8E85, 0x8E8F, 0x8E94, - 0x8E90, 0x8E9C, 0x8E9E, 0x8C78, 0x8C82, 0x8C8A, 0x8C85, 0x8C98, - 0x8C94, 0x659B, 0x89D6, 0x89DE, 0x89DA, 0x89DC, 0x9BDC, 0x9BDD, - 0x9BDE, 0x9BDF, 0x9BE0, 0x9BE1, 0x9BE2, 0x9BE3, 0x9BE4, 0x9BE5, - 0x9BE6, 0x9BE7, 0x9BE8, 0x9BE9, 0x9BEA, 0x9BEB, 0x9BEC, 0x9BED, - 0x9BEE, 0x9BEF, 0x9BF0, 0x9BF1, 0x9BF2, 0x9BF3, 0x9BF4, 0x9BF5, - 0x9BF6, 0x9BF7, 0x9BF8, 0x9BF9, 0x9BFA, 0x9BFB, 0x9BFC, 0x9BFD, - 0x9BFE, 0x9BFF, 0x9C00, 0x9C01, 0x9C02, 0x9C03, 0x9C04, 0x9C05, -plane 88 -at 0x00 - 0x9C06, 0x9C07, 0x9C08, 0x9C09, 0x9C0A, 0x9C0B, 0x9C0C, 0x9C0D, - 0x9C0E, 0x9C0F, 0x9C10, 0x9C11, 0x9C12, 0x9C13, 0x9C14, 0x9C15, - 0x9C16, 0x9C17, 0x9C18, 0x9C19, 0x9C1A, 0x9C1B, 0x9C1C, 0x9C1D, - 0x9C1E, 0x9C1F, 0x9C20, 0x9C21, 0x9C22, 0x9C23, 0x9C24, 0x9C25, - 0x9C26, 0x9C27, 0x9C28, 0x9C29, 0x9C2A, 0x9C2B, 0x9C2C, 0x9C2D, - 0x9C2E, 0x9C2F, 0x9C30, 0x9C31, 0x9C32, 0x9C33, 0x9C34, 0x9C35, - 0x9C36, 0x9C37, 0x9C38, 0x9C39, 0x9C3A, 0x9C3B, 0x89E5, 0x89EB, - 0x89EF, 0x8A3E, 0x8B26, 0x9753, 0x96E9, 0x96F3, 0x96EF, 0x9706, - 0x9701, 0x9708, 0x970F, 0x970E, 0x972A, 0x972D, 0x9730, 0x973E, - 0x9F80, 0x9F83, 0x9F85, 0x9F86, 0x9F87, 0x9F88, 0x9F89, 0x9F8A, - 0x9F8C, 0x9EFE, 0x9F0B, 0x9F0D, 0x96B9, 0x96BC, 0x96BD, 0x96CE, - 0x96D2, 0x77BF, 0x96E0, 0x928E, 0x92AE, 0x92C8, 0x933E, 0x936A, - 0x93CA, 0x938F, 0x943E, 0x946B, 0x9C7F, 0x9C82, 0x9C85, 0x9C86, - 0x9C87, 0x9C88, 0x7A23, 0x9C8B, 0x9C8E, 0x9C90, 0x9C91, 0x9C92, - 0x9C94, 0x9C95, 0x9C9A, 0x9C9B, 0x9C9E, 0x9C9F, 0x9CA0, 0x9CA1, - 0x9CA2, 0x9CA3, 0x9CA5, 0x9CA6, 0x9CA7, 0x9CA8, 0x9CA9, 0x9CAB, - 0x9CAD, 0x9CAE, 0x9CB0, 0x9CB1, 0x9CB2, 0x9CB3, 0x9CB4, 0x9CB5, - 0x9CB6, 0x9CB7, 0x9CBA, 0x9CBB, 0x9CBC, 0x9CBD, 0x9CC4, 0x9CC5, - 0x9CC6, 0x9CC7, 0x9CCA, 0x9CCB, 0x9C3C, 0x9C3D, 0x9C3E, 0x9C3F, - 0x9C40, 0x9C41, 0x9C42, 0x9C43, 0x9C44, 0x9C45, 0x9C46, 0x9C47, - 0x9C48, 0x9C49, 0x9C4A, 0x9C4B, 0x9C4C, 0x9C4D, 0x9C4E, 0x9C4F, - 0x9C50, 0x9C51, 0x9C52, 0x9C53, 0x9C54, 0x9C55, 0x9C56, 0x9C57, - 0x9C58, 0x9C59, 0x9C5A, 0x9C5B, 0x9C5C, 0x9C5D, 0x9C5E, 0x9C5F, - 0x9C60, 0x9C61, 0x9C62, 0x9C63, 0x9C64, 0x9C65, 0x9C66, 0x9C67, - 0x9C68, 0x9C69, 0x9C6A, 0x9C6B, 0x9C6C, 0x9C6D, 0x9C6E, 0x9C6F, - 0x9C70, 0x9C71, 0x9C72, 0x9C73, 0x9C74, 0x9C75, 0x9C76, 0x9C77, - 0x9C78, 0x9C79, 0x9C7A, 0x9C7B, 0x9C7D, 0x9C7E, 0x9C80, 0x9C83, - 0x9C84, 0x9C89, 0x9C8A, 0x9C8C, 0x9C8F, 0x9C93, 0x9C96, 0x9C97, - 0x9C98, 0x9C99, 0x9C9D, 0x9CAA, 0x9CAC, 0x9CAF, 0x9CB9, 0x9CBE, - 0x9CBF, 0x9CC0, 0x9CC1, 0x9CC2, 0x9CC8, 0x9CC9, 0x9CD1, 0x9CD2, - 0x9CDA, 0x9CDB, 0x9CE0, 0x9CE1, 0x9CCC, 0x9CCD, 0x9CCE, 0x9CCF, - 0x9CD0, 0x9CD3, 0x9CD4, 0x9CD5, 0x9CD7, 0x9CD8, 0x9CD9, 0x9CDC, -plane 89 -at 0x00 - 0x9CDD, 0x9CDF, 0x9CE2, 0x977C, 0x9785, 0x9791, 0x9792, 0x9794, - 0x97AF, 0x97AB, 0x97A3, 0x97B2, 0x97B4, 0x9AB1, 0x9AB0, 0x9AB7, - 0x9E58, 0x9AB6, 0x9ABA, 0x9ABC, 0x9AC1, 0x9AC0, 0x9AC5, 0x9AC2, - 0x9ACB, 0x9ACC, 0x9AD1, 0x9B45, 0x9B43, 0x9B47, 0x9B49, 0x9B48, - 0x9B4D, 0x9B51, 0x98E8, 0x990D, 0x992E, 0x9955, 0x9954, 0x9ADF, - 0x9AE1, 0x9AE6, 0x9AEF, 0x9AEB, 0x9AFB, 0x9AED, 0x9AF9, 0x9B08, - 0x9B0F, 0x9B13, 0x9B1F, 0x9B23, 0x9EBD, 0x9EBE, 0x7E3B, 0x9E82, - 0x9E87, 0x9E88, 0x9E8B, 0x9E92, 0x93D6, 0x9E9D, 0x9E9F, 0x9EDB, - 0x9EDC, 0x9EDD, 0x9EE0, 0x9EDF, 0x9EE2, 0x9EE9, 0x9EE7, 0x9EE5, - 0x9EEA, 0x9EEF, 0x9F22, 0x9F2C, 0x9F2F, 0x9F39, 0x9F37, 0x9F3D, - 0x9F3E, 0x9F44, 0x9CE3, 0x9CE4, 0x9CE5, 0x9CE6, 0x9CE7, 0x9CE8, - 0x9CE9, 0x9CEA, 0x9CEB, 0x9CEC, 0x9CED, 0x9CEE, 0x9CEF, 0x9CF0, - 0x9CF1, 0x9CF2, 0x9CF3, 0x9CF4, 0x9CF5, 0x9CF6, 0x9CF7, 0x9CF8, - 0x9CF9, 0x9CFA, 0x9CFB, 0x9CFC, 0x9CFD, 0x9CFE, 0x9CFF, 0x9D00, - 0x9D01, 0x9D02, 0x9D03, 0x9D04, 0x9D05, 0x9D06, 0x9D07, 0x9D08, - 0x9D09, 0x9D0A, 0x9D0B, 0x9D0C, 0x9D0D, 0x9D0E, 0x9D0F, 0x9D10, - 0x9D11, 0x9D12, 0x9D13, 0x9D14, 0x9D15, 0x9D16, 0x9D17, 0x9D18, - 0x9D19, 0x9D1A, 0x9D1B, 0x9D1C, 0x9D1D, 0x9D1E, 0x9D1F, 0x9D20, - 0x9D21, 0x9D22, 0x9D23, 0x9D24, 0x9D25, 0x9D26, 0x9D27, 0x9D28, - 0x9D29, 0x9D2A, 0x9D2B, 0x9D2C, 0x9D2D, 0x9D2E, 0x9D2F, 0x9D30, - 0x9D31, 0x9D32, 0x9D33, 0x9D34, 0x9D35, 0x9D36, 0x9D37, 0x9D38, - 0x9D39, 0x9D3A, 0x9D3B, 0x9D3C, 0x9D3D, 0x9D3E, 0x9D3F, 0x9D40, - 0x9D41, 0x9D42, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 90 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0x9D43, 0x9D44, 0x9D45, 0x9D46, 0x9D47, 0x9D48, 0x9D49, 0x9D4A, - 0x9D4B, 0x9D4C, 0x9D4D, 0x9D4E, 0x9D4F, 0x9D50, 0x9D51, 0x9D52, - 0x9D53, 0x9D54, 0x9D55, 0x9D56, 0x9D57, 0x9D58, 0x9D59, 0x9D5A, - 0x9D5B, 0x9D5C, 0x9D5D, 0x9D5E, 0x9D5F, 0x9D60, 0x9D61, 0x9D62, - 0x9D63, 0x9D64, 0x9D65, 0x9D66, 0x9D67, 0x9D68, 0x9D69, 0x9D6A, - 0x9D6B, 0x9D6C, 0x9D6D, 0x9D6E, 0x9D6F, 0x9D70, 0x9D71, 0x9D72, - 0x9D73, 0x9D74, 0x9D75, 0x9D76, 0x9D77, 0x9D78, 0x9D79, 0x9D7A, - 0x9D7B, 0x9D7C, 0x9D7D, 0x9D7E, 0x9D7F, 0x9D80, 0x9D81, 0x9D82, - 0x9D83, 0x9D84, 0x9D85, 0x9D86, 0x9D87, 0x9D88, 0x9D89, 0x9D8A, - 0x9D8B, 0x9D8C, 0x9D8D, 0x9D8E, 0x9D8F, 0x9D90, 0x9D91, 0x9D92, - 0x9D93, 0x9D94, 0x9D95, 0x9D96, 0x9D97, 0x9D98, 0x9D99, 0x9D9A, - 0x9D9B, 0x9D9C, 0x9D9D, 0x9D9E, 0x9D9F, 0x9DA0, 0x9DA1, 0x9DA2, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0x9DA3, 0x9DA4, - 0x9DA5, 0x9DA6, 0x9DA7, 0x9DA8, 0x9DA9, 0x9DAA, 0x9DAB, 0x9DAC, - 0x9DAD, 0x9DAE, 0x9DAF, 0x9DB0, 0x9DB1, 0x9DB2, 0x9DB3, 0x9DB4, - 0x9DB5, 0x9DB6, 0x9DB7, 0x9DB8, 0x9DB9, 0x9DBA, 0x9DBB, 0x9DBC, - 0x9DBD, 0x9DBE, 0x9DBF, 0x9DC0, 0x9DC1, 0x9DC2, 0x9DC3, 0x9DC4, - 0x9DC5, 0x9DC6, 0x9DC7, 0x9DC8, 0x9DC9, 0x9DCA, 0x9DCB, 0x9DCC, - 0x9DCD, 0x9DCE, 0x9DCF, 0x9DD0, 0x9DD1, 0x9DD2, 0x9DD3, 0x9DD4, -plane 91 -at 0x00 - 0x9DD5, 0x9DD6, 0x9DD7, 0x9DD8, 0x9DD9, 0x9DDA, 0x9DDB, 0x9DDC, - 0x9DDD, 0x9DDE, 0x9DDF, 0x9DE0, 0x9DE1, 0x9DE2, 0x9DE3, 0x9DE4, - 0x9DE5, 0x9DE6, 0x9DE7, 0x9DE8, 0x9DE9, 0x9DEA, 0x9DEB, 0x9DEC, - 0x9DED, 0x9DEE, 0x9DEF, 0x9DF0, 0x9DF1, 0x9DF2, 0x9DF3, 0x9DF4, - 0x9DF5, 0x9DF6, 0x9DF7, 0x9DF8, 0x9DF9, 0x9DFA, 0x9DFB, 0x9DFC, - 0x9DFD, 0x9DFE, 0x9DFF, 0x9E00, 0x9E01, 0x9E02, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x9E03, 0x9E04, 0x9E05, 0x9E06, - 0x9E07, 0x9E08, 0x9E09, 0x9E0A, 0x9E0B, 0x9E0C, 0x9E0D, 0x9E0E, - 0x9E0F, 0x9E10, 0x9E11, 0x9E12, 0x9E13, 0x9E14, 0x9E15, 0x9E16, - 0x9E17, 0x9E18, 0x9E19, 0x9E1A, 0x9E1B, 0x9E1C, 0x9E1D, 0x9E1E, - 0x9E24, 0x9E27, 0x9E2E, 0x9E30, 0x9E34, 0x9E3B, 0x9E3C, 0x9E40, - 0x9E4D, 0x9E50, 0x9E52, 0x9E53, 0x9E54, 0x9E56, 0x9E59, 0x9E5D, - 0x9E5F, 0x9E60, 0x9E61, 0x9E62, 0x9E65, 0x9E6E, 0x9E6F, 0x9E72, - 0x9E74, 0x9E75, 0x9E76, 0x9E77, 0x9E78, 0x9E79, 0x9E7A, 0x9E7B, - 0x9E7C, 0x9E7D, 0x9E80, 0x9E81, 0x9E83, 0x9E84, 0x9E85, 0x9E86, - 0x9E89, 0x9E8A, 0x9E8C, 0x9E8D, 0x9E8E, 0x9E8F, 0x9E90, 0x9E91, - 0x9E94, 0x9E95, 0x9E96, 0x9E97, 0x9E98, 0x9E99, 0x9E9A, 0x9E9B, - 0x9E9C, 0x9E9E, 0x9EA0, 0x9EA1, 0x9EA2, 0x9EA3, 0x9EA4, 0x9EA5, - 0x9EA7, 0x9EA8, 0x9EA9, 0x9EAA, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 92 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0x9EAB, 0x9EAC, 0x9EAD, 0x9EAE, 0x9EAF, 0x9EB0, - 0x9EB1, 0x9EB2, 0x9EB3, 0x9EB5, 0x9EB6, 0x9EB7, 0x9EB9, 0x9EBA, - 0x9EBC, 0x9EBF, 0x9EC0, 0x9EC1, 0x9EC2, 0x9EC3, 0x9EC5, 0x9EC6, - 0x9EC7, 0x9EC8, 0x9ECA, 0x9ECB, 0x9ECC, 0x9ED0, 0x9ED2, 0x9ED3, - 0x9ED5, 0x9ED6, 0x9ED7, 0x9ED9, 0x9EDA, 0x9EDE, 0x9EE1, 0x9EE3, - 0x9EE4, 0x9EE6, 0x9EE8, 0x9EEB, 0x9EEC, 0x9EED, 0x9EEE, 0x9EF0, - 0x9EF1, 0x9EF2, 0x9EF3, 0x9EF4, 0x9EF5, 0x9EF6, 0x9EF7, 0x9EF8, - 0x9EFA, 0x9EFD, 0x9EFF, 0x9F00, 0x9F01, 0x9F02, 0x9F03, 0x9F04, - 0x9F05, 0x9F06, 0x9F07, 0x9F08, 0x9F09, 0x9F0A, 0x9F0C, 0x9F0F, - 0x9F11, 0x9F12, 0x9F14, 0x9F15, 0x9F16, 0x9F18, 0x9F1A, 0x9F1B, - 0x9F1C, 0x9F1D, 0x9F1E, 0x9F1F, 0x9F21, 0x9F23, 0x9F24, 0x9F25, - 0x9F26, 0x9F27, 0x9F28, 0x9F29, 0x9F2A, 0x9F2B, 0x9F2D, 0x9F2E, - 0x9F30, 0x9F31, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane 93 -at 0x00 - 0, 0, 0, 0, 0, 0, 0, 0, - 0x9F32, 0x9F33, 0x9F34, 0x9F35, 0x9F36, 0x9F38, 0x9F3A, 0x9F3C, - 0x9F3F, 0x9F40, 0x9F41, 0x9F42, 0x9F43, 0x9F45, 0x9F46, 0x9F47, - 0x9F48, 0x9F49, 0x9F4A, 0x9F4B, 0x9F4C, 0x9F4D, 0x9F4E, 0x9F4F, - 0x9F52, 0x9F53, 0x9F54, 0x9F55, 0x9F56, 0x9F57, 0x9F58, 0x9F59, - 0x9F5A, 0x9F5B, 0x9F5C, 0x9F5D, 0x9F5E, 0x9F5F, 0x9F60, 0x9F61, - 0x9F62, 0x9F63, 0x9F64, 0x9F65, 0x9F66, 0x9F67, 0x9F68, 0x9F69, - 0x9F6A, 0x9F6B, 0x9F6C, 0x9F6D, 0x9F6E, 0x9F6F, 0x9F70, 0x9F71, - 0x9F72, 0x9F73, 0x9F74, 0x9F75, 0x9F76, 0x9F77, 0x9F78, 0x9F79, - 0x9F7A, 0x9F7B, 0x9F7C, 0x9F7D, 0x9F7E, 0x9F81, 0x9F82, 0x9F8D, - 0x9F8E, 0x9F8F, 0x9F90, 0x9F91, 0x9F92, 0x9F93, 0x9F94, 0x9F95, - 0x9F96, 0x9F97, 0x9F98, 0x9F9C, 0x9F9D, 0x9F9E, 0x9FA1, 0x9FA2, - 0x9FA3, 0x9FA4, 0x9FA5, 0xF92C, 0xF979, 0xF995, 0xF9E7, 0xF9F1, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0xFA0C, 0xFA0D, - 0xFA0E, 0xFA0F, 0xFA11, 0xFA13, 0xFA14, 0xFA18, 0xFA1F, 0xFA20, - 0xFA21, 0xFA23, 0xFA24, 0xFA27, 0xFA28, 0xFA29, 0xE815, 0xE816, - 0xE817, 0xE818, 0xE819, 0xE81A, 0xE81B, 0xE81C, 0xE81D, 0xE81E, - 0xE81F, 0xE820, 0xE821, 0xE822, 0xE823, 0xE824, 0xE825, 0xE826, - 0xE827, 0xE828, 0xE829, 0xE82A, 0xE82B, 0xE82C, 0xE82D, 0xE82E, - 0xE82F, 0xE830, 0xE831, 0xE832, 0xE833, 0xE834, 0xE835, 0xE836, - 0xE837, 0xE838, 0xE839, 0xE83A, 0xE83B, 0xE83C, 0xE83D, 0xE83E, -plane 94 -at 0x00 - 0xE83F, 0xE840, 0xE841, 0xE842, 0xE843, 0xE844, 0xE845, 0xE846, - 0xE847, 0xE848, 0xE849, 0xE84A, 0xE84B, 0xE84C, 0xE84D, 0xE84E, - 0xE84F, 0xE850, 0xE851, 0xE852, 0xE853, 0xE854, 0xE855, 0xE856, - 0xE857, 0xE858, 0xE859, 0xE85A, 0xE85B, 0xE85C, 0xE85D, 0xE85E, - 0xE85F, 0xE860, 0xE861, 0xE862, 0xE863, 0xE864, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Build/source/texk/ttf2pt1/chinese/mkrel b/Build/source/texk/ttf2pt1/chinese/mkrel deleted file mode 100644 index 1c82e185818..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/mkrel +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2000 -# Sergey A. Babkin. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@users.sourceforge.net) -# -# -# Script to create a release or shapshot archive. -# Also checks for very basic inconsistences. -# Expects that it would be run from the current directory of chinese-maps, -# that the ttf2pt1 directory with corresponding version is ../ttf2pt1 -# and that the parent directory is the place to create archives. -# Expects that the CVS environment variables are set properly. - -VER=`grep TTF2PT1_VERSION ../ttf2pt1/version.h | cut -d\" -f2` - -case "$1" in -snapshot) - echo "$VER" | egrep '^[0-9][0-9]*\.[0-9].*-CURRENT$' || { - echo "mkrel: version.h must contain *-CURRENT to create a snapshot" >&2 - exit 1 - } - snapdate=`date "+ %y %m %d " | sed 's/ \([0-9]\) / 0& /g;s/ //g'` - NEWVER=`echo "$VER" | sed "s/-CURRENT/-SNAP-$snapdate/"` - TAG="-D tomorrow" - ;; -release) - echo "$VER" | egrep '^[0-9][0-9]*\.[0-9][.0-9]*$' || { - echo "mkrel: version.h must not be -CURRENT to create a release" >&2 - exit 1 - } - NEWVER="$VER" - TAG=`echo "-r ttf2pt1-$VER" | sed \ - 's/\(-[0-9][0-9]*\.[0-9]\)$/&.0/;s/\./-/g'` - ;; -*) - echo "use: mkrel [snapshot|release]" >&2 - exit 1 - ;; -esac - -cd .. || { - echo "mkrel: can't cd to .." >&2 - exit 1 -} - -rm -f ttf2pt1-chinese-$NEWVER.tgz ttf2pt1-chinese-$NEWVER.zip -rm -rf ttf2pt1-chinese-$NEWVER - -echo "cvs -z9 export $TAG -d ttf2pt1-chinese-$NEWVER chinese-maps" -cvs -z9 export $TAG -d ttf2pt1-chinese-$NEWVER chinese-maps || { - echo "mkrel: unable to export from CVS" >&2 - echo "mkrel: check that the CVS tree is properly tagged" >&2 - exit 1 -} - - -tar czvf ttf2pt1-chinese-$NEWVER.tgz ttf2pt1-chinese-$NEWVER || { - echo "mkrel: can't create .tgz archive" >&2 - exit 1 -} - -zip -u -r ttf2pt1-chinese-$NEWVER.zip ttf2pt1-chinese-$NEWVER || { - echo "mkrel: can't create .zip archive" >&2 - exit 1 -} diff --git a/Build/source/texk/ttf2pt1/chinese/ubig5.map b/Build/source/texk/ttf2pt1/chinese/ubig5.map deleted file mode 100644 index bd6568213f4..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/ubig5.map +++ /dev/null @@ -1,2184 +0,0 @@ -# BIG5 --> Unicode conversion table: -# generated by Chen Xiangyang (chenxy@sun.ihep.ac.cn) -# -# it contains 13703 characters of BIG5 character set, it also contains -# some unused codes in order to make the array easy to use. -# Code range: first byte: 0xa1 -- 0xFE 94 -# second byte: 0x40 -- 0x7F 64 -# 0xA1 -- 0xFF 96 -# code points: 94 x 160 = 15040 -# -# Usage: -# -# unsigned short BIG5_code, unicode; -# int pos; -# if ((BIG5_code&0x00FF)<=0x7F) -# pos = ((BIG5_code>>8)-0xa1)*160 + ((BIG5_code&0x00FF)-0x40); -# else -# pos = ((BIG5_code>>8)-0xa1)*160 + ((BIG5_code&0x00FF)-0x60); -# unicode = big52uni[pos]; -# -# Converted to ttf2pt1 map format by Sergey Babkin -# -plane a1 -at 0x40 - 0x3000, 0xFF0C, 0x3001, 0x3002, 0xFF0E, 0x2022, 0xFF1B, 0xFF1A, - 0xFF1F, 0xFF01, 0xFE30, 0x2026, 0x2025, 0xFE50, 0xFF64, 0xFE52, - 0x00B7, 0xFE54, 0xFE55, 0xFE56, 0xFE57, 0xFF5C, 0x2013, 0xFE31, - 0x2014, 0xFE33, 0, 0xFE34, 0xFE4F, 0xFF08, 0xFF09, 0xFE35, - 0xFE36, 0xFF5B, 0xFF5D, 0xFE37, 0xFE38, 0x3014, 0x3015, 0xFE39, - 0xFE3A, 0x3010, 0x3011, 0xFE3B, 0xFE3C, 0x300A, 0x300B, 0xFE3D, - 0xFE3E, 0x3008, 0x3009, 0xFE3F, 0xFE40, 0x300C, 0x300D, 0xFE41, - 0xFE42, 0x300E, 0x300F, 0xFE43, 0xFE44, 0xFE59, 0xFE5A, 0, -at 0xA0 - 0, 0xFE5B, 0xFE5C, 0xFE5D, 0xFE5E, 0x2018, 0x2019, 0x201C, - 0x201D, 0x301D, 0x301E, 0x2035, 0x2032, 0xFF03, 0xFF06, 0xFF0A, - 0x203B, 0x00A7, 0x3003, 0x25CB, 0x25CF, 0x25B3, 0x25B2, 0x25CE, - 0x2606, 0x2605, 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25BD, 0x25BC, - 0x32A3, 0x2105, 0x203E, 0, 0xFF3F, 0, 0xFE49, 0xFE4A, - 0xFE4D, 0xFE4E, 0xFE4B, 0xFE4C, 0xFE5F, 0xFE60, 0xFE61, 0xFF0B, - 0xFF0D, 0x00D7, 0x00F7, 0x00B1, 0x221A, 0xFF1C, 0xFF1E, 0xFF1D, - 0x2266, 0x2267, 0x2260, 0x221E, 0x2252, 0x2261, 0xFE62, 0xFE63, - 0xFE64, 0xFE65, 0xFE66, 0x223C, 0x2229, 0x222A, 0x22A5, 0x2220, - 0x221F, 0x22BF, 0x33D2, 0x33D1, 0x222B, 0x222E, 0x2235, 0x2234, - 0x2640, 0x2642, 0x2641, 0x2609, 0x2191, 0x2193, 0x2190, 0x2192, - 0x2196, 0x2197, 0x2199, 0x2198, 0x2225, 0x2223, 0, 0, -plane a2 -at 0x40 - 0, 0xFF0F, 0xFF3C, 0xFF04, 0x00A5, 0x3012, 0x00A2, 0x00A3, - 0xFF05, 0xFF20, 0x2103, 0x2109, 0xFE69, 0xFE6A, 0xFE6B, 0x33D5, - 0x339C, 0x339D, 0x339E, 0x33CE, 0x33A1, 0x338E, 0x338F, 0x33C4, - 0x00B0, 0x5159, 0x515B, 0x515E, 0x515D, 0x5161, 0x5163, 0x55E7, - 0x74E9, 0x7CCE, 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, - 0x2587, 0x2588, 0x258F, 0x258E, 0x258D, 0x258C, 0x258B, 0x258A, - 0x2589, 0x253C, 0x2534, 0x252C, 0x2524, 0x251C, 0x2594, 0x2500, - 0x2502, 0x2595, 0x250C, 0x2510, 0x2514, 0x2518, 0x256D, 0, -at 0xA0 - 0, 0x256E, 0x2570, 0x256F, 0x2550, 0x255E, 0x256A, 0x2561, - 0x25E2, 0x25E3, 0x25E5, 0x25E4, 0x2571, 0x2572, 0x2573, 0xFF10, - 0xFF11, 0xFF12, 0xFF13, 0xFF14, 0xFF15, 0xFF16, 0xFF17, 0xFF18, - 0xFF19, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, - 0x2167, 0x2168, 0x2169, 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, - 0x3026, 0x3027, 0x3028, 0x3029, 0, 0x5344, 0, 0xFF21, - 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, - 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, - 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, - 0xFF3A, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, - 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, - 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0, -plane a3 -at 0x40 - 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0x0391, 0x0392, 0x0393, 0x0394, - 0x0395, 0x0396, 0x0397, 0x0398, 0x0399, 0x039A, 0x039B, 0x039C, - 0x039D, 0x039E, 0x039F, 0x03A0, 0x03A1, 0x03A3, 0x03A4, 0x03A5, - 0x03A6, 0x03A7, 0x03A8, 0x03A9, 0x03B1, 0x03B2, 0x03B3, 0x03B4, - 0x03B5, 0x03B6, 0x03B7, 0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, - 0x03BD, 0x03BE, 0x03BF, 0x03C0, 0x03C1, 0x03C3, 0x03C4, 0x03C5, - 0x03C6, 0x03C7, 0x03C8, 0x03C9, 0x3105, 0x3106, 0x3107, 0x3108, - 0x3109, 0x310A, 0x310B, 0x310C, 0x310D, 0x310E, 0x310F, 0, -at 0xA0 - 0, 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, - 0x3117, 0x3118, 0x3119, 0x311A, 0x311B, 0x311C, 0x311D, 0x311E, - 0x311F, 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, - 0x3127, 0x3128, 0x3129, 0x02D9, 0x02C9, 0x02CA, 0x02C7, 0x02CB, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a4 -at 0x40 - 0x4E00, 0x4E59, 0x4E01, 0x4E03, 0x4E43, 0x4E5D, 0x4E86, 0x4E8C, - 0x4EBA, 0x513F, 0x5165, 0x516B, 0x51E0, 0x5200, 0x5201, 0x529B, - 0x5315, 0x5341, 0x535C, 0x53C8, 0x4E09, 0x4E0B, 0x4E08, 0x4E0A, - 0x4E2B, 0x4E38, 0x51E1, 0x4E45, 0x4E48, 0x4E5F, 0x4E5E, 0x4E8E, - 0x4EA1, 0x5140, 0x5203, 0x52FA, 0x5343, 0x53C9, 0x53E3, 0x571F, - 0x58EB, 0x5915, 0x5927, 0x5973, 0x5B50, 0x5B51, 0x5B53, 0x5BF8, - 0x5C0F, 0x5C22, 0x5C38, 0x5C71, 0x5DDD, 0x5DE5, 0x5DF1, 0x5DF2, - 0x5DF3, 0x5DFE, 0x5E72, 0x5EFE, 0x5F0B, 0x5F13, 0x624D, 0, -at 0xA0 - 0, 0x4E11, 0x4E10, 0x4E0D, 0x4E2D, 0x4E30, 0x4E39, 0x4E4B, - 0x5C39, 0x4E88, 0x4E91, 0x4E95, 0x4E92, 0x4E94, 0x4EA2, 0x4EC1, - 0x4EC0, 0x4EC3, 0x4EC6, 0x4EC7, 0x4ECD, 0x4ECA, 0x4ECB, 0x4EC4, - 0x5143, 0x5141, 0x5167, 0x516D, 0x516E, 0x516C, 0x5197, 0x51F6, - 0x5206, 0x5207, 0x5208, 0x52FB, 0x52FE, 0x52FF, 0x5316, 0x5339, - 0x5348, 0x5347, 0x5345, 0x535E, 0x5384, 0x53CB, 0x53CA, 0x53CD, - 0x58EC, 0x5929, 0x592B, 0x592A, 0x592D, 0x5B54, 0x5C11, 0x5C24, - 0x5C3A, 0x5C6F, 0x5DF4, 0x5E7B, 0x5EFF, 0x5F14, 0x5F15, 0x5FC3, - 0x6208, 0x6236, 0x624B, 0x624E, 0x652F, 0x6587, 0x6597, 0x65A4, - 0x65B9, 0x65E5, 0x66F0, 0x6708, 0x6728, 0x6B20, 0x6B62, 0x6B79, - 0x6BCB, 0x6BD4, 0x6BDB, 0x6C0F, 0x6C34, 0x706B, 0x722A, 0x7236, - 0x723B, 0x7247, 0x7259, 0x725B, 0x72AC, 0x738B, 0x4E19, 0, -plane a5 -at 0x40 - 0x4E16, 0x4E15, 0x4E14, 0x4E18, 0x4E3B, 0x4E4D, 0x4E4F, 0x4E4E, - 0x4EE5, 0x4ED8, 0x4ED4, 0x4ED5, 0x4ED6, 0x4ED7, 0x4EE3, 0x4EE4, - 0x4ED9, 0x4EDE, 0x5145, 0x5144, 0x5189, 0x518A, 0x51AC, 0x51F9, - 0x51FA, 0x51F8, 0x520A, 0x52A0, 0x529F, 0x5305, 0x5306, 0x5317, - 0x531D, 0x4EDF, 0x534A, 0x5349, 0x5361, 0x5360, 0x536F, 0x536E, - 0x53BB, 0x53EF, 0x53E4, 0x53F3, 0x53EC, 0x53EE, 0x53E9, 0x53E8, - 0x53FC, 0x53F8, 0x53F5, 0x53EB, 0x53E6, 0x53EA, 0x53F2, 0x53F1, - 0x53F0, 0x53E5, 0x53ED, 0x53FB, 0x56DB, 0x56DA, 0x5916, 0, -at 0xA0 - 0, 0x592E, 0x5931, 0x5974, 0x5976, 0x5B55, 0x5B83, 0x5C3C, - 0x5DE8, 0x5DE7, 0x5DE6, 0x5E02, 0x5E03, 0x5E73, 0x5E7C, 0x5F01, - 0x5F18, 0x5F17, 0x5FC5, 0x620A, 0x6253, 0x6254, 0x6252, 0x6251, - 0x65A5, 0x65E6, 0x672E, 0x672C, 0x672A, 0x672B, 0x672D, 0x6B63, - 0x6BCD, 0x6C11, 0x6C10, 0x6C38, 0x6C41, 0x6C40, 0x6C3E, 0x72AF, - 0x7384, 0x7389, 0x74DC, 0x74E6, 0x7518, 0x751F, 0x7528, 0x7529, - 0x7530, 0x7531, 0x7532, 0x7533, 0x758B, 0x767D, 0x76AE, 0x76BF, - 0x76EE, 0x77DB, 0x77E2, 0x77F3, 0x793A, 0x79BE, 0x7A74, 0x7ACB, - 0x4E1E, 0x4E1F, 0x4E52, 0x4E53, 0x4E69, 0x4E99, 0x4EA4, 0x4EA6, - 0x4EA5, 0x4EFF, 0x4F09, 0x4F19, 0x4F0A, 0x4F15, 0x4F0D, 0x4F10, - 0x4F11, 0x4F0F, 0x4EF2, 0x4EF6, 0x4EFB, 0x4EF0, 0x4EF3, 0x4EFD, - 0x4F01, 0x4F0B, 0x5149, 0x5147, 0x5146, 0x5148, 0x5168, 0, -plane a6 -at 0x40 - 0x5171, 0x518D, 0x51B0, 0x5217, 0x5211, 0x5212, 0x520E, 0x5216, - 0x52A3, 0x5308, 0x5321, 0x5320, 0x5370, 0x5371, 0x5409, 0x540F, - 0x540C, 0x540A, 0x5410, 0x5401, 0x540B, 0x5404, 0x5411, 0x540D, - 0x5408, 0x5403, 0x540E, 0x5406, 0x5412, 0x56E0, 0x56DE, 0x56DD, - 0x5733, 0x5730, 0x5728, 0x572D, 0x572C, 0x572F, 0x5729, 0x5919, - 0x591A, 0x5937, 0x5938, 0x5984, 0x5978, 0x5983, 0x597D, 0x5979, - 0x5982, 0x5981, 0x5B57, 0x5B58, 0x5B87, 0x5B88, 0x5B85, 0x5B89, - 0x5BFA, 0x5C16, 0x5C79, 0x5DDE, 0x5E06, 0x5E76, 0x5E74, 0, -at 0xA0 - 0, 0x5F0F, 0x5F1B, 0x5FD9, 0x5FD6, 0x620E, 0x620C, 0x620D, - 0x6210, 0x6263, 0x625B, 0x6258, 0x6536, 0x65E9, 0x65E8, 0x65EC, - 0x65ED, 0x66F2, 0x66F3, 0x6709, 0x673D, 0x6734, 0x6731, 0x6735, - 0x6B21, 0x6B64, 0x6B7B, 0x6C16, 0x6C5D, 0x6C57, 0x6C59, 0x6C5F, - 0x6C60, 0x6C50, 0x6C55, 0x6C61, 0x6C5B, 0x6C4D, 0x6C4E, 0x7070, - 0x725F, 0x725D, 0x767E, 0x7AF9, 0x7C73, 0x7CF8, 0x7F36, 0x7F8A, - 0x7FBD, 0x8001, 0x8003, 0x800C, 0x8012, 0x8033, 0x807F, 0x8089, - 0x808B, 0x808C, 0x81E3, 0x81EA, 0x81F3, 0x81FC, 0x820C, 0x821B, - 0x821F, 0x826E, 0x8272, 0x827E, 0x866B, 0x8840, 0x884C, 0x8863, - 0x897F, 0x9621, 0x4E32, 0x4EA8, 0x4F4D, 0x4F4F, 0x4F47, 0x4F57, - 0x4F5E, 0x4F34, 0x4F5B, 0x4F55, 0x4F30, 0x4F50, 0x4F51, 0x4F3D, - 0x4F3A, 0x4F38, 0x4F43, 0x4F54, 0x4F3C, 0x4F46, 0x4F63, 0, -plane a7 -at 0x40 - 0x4F5C, 0x4F60, 0x4F2F, 0x4F4E, 0x4F36, 0x4F59, 0x4F5D, 0x4F48, - 0x4F5A, 0x514C, 0x514B, 0x514D, 0x5175, 0x51B6, 0x51B7, 0x5225, - 0x5224, 0x5229, 0x522A, 0x5228, 0x52AB, 0x52A9, 0x52AA, 0x52AC, - 0x5323, 0x5373, 0x5375, 0x541D, 0x542D, 0x541E, 0x543E, 0x5426, - 0x544E, 0x5427, 0x5446, 0x5443, 0x5433, 0x5448, 0x5442, 0x541B, - 0x5429, 0x544A, 0x5439, 0x543B, 0x5438, 0x542E, 0x5435, 0x5436, - 0x5420, 0x543C, 0x5440, 0x5431, 0x542B, 0x541F, 0x542C, 0x56EA, - 0x56F0, 0x56E4, 0x56EB, 0x574A, 0x5751, 0x5740, 0x574D, 0, -at 0xA0 - 0, 0x5747, 0x574E, 0x573E, 0x5750, 0x574F, 0x573B, 0x58EF, - 0x593E, 0x599D, 0x5992, 0x59A8, 0x599E, 0x59A3, 0x5999, 0x5996, - 0x598D, 0x59A4, 0x5993, 0x598A, 0x59A5, 0x5B5D, 0x5B5C, 0x5B5A, - 0x5B5B, 0x5B8C, 0x5B8B, 0x5B8F, 0x5C2C, 0x5C40, 0x5C41, 0x5C3F, - 0x5C3E, 0x5C90, 0x5C91, 0x5C94, 0x5C8C, 0x5DEB, 0x5E0C, 0x5E8F, - 0x5E87, 0x5E8A, 0x5EF7, 0x5F04, 0x5F1F, 0x5F64, 0x5F62, 0x5F77, - 0x5F79, 0x5FD8, 0x5FCC, 0x5FD7, 0x5FCD, 0x5FF1, 0x5FEB, 0x5FF8, - 0x5FEA, 0x6212, 0x6211, 0x6284, 0x6297, 0x6296, 0x6280, 0x6276, - 0x6289, 0x626D, 0x628A, 0x627C, 0x627E, 0x6279, 0x6273, 0x6292, - 0x626F, 0x6298, 0x626E, 0x6295, 0x6293, 0x6291, 0x6286, 0x6539, - 0x653B, 0x6538, 0x65F1, 0x66F4, 0x675F, 0x674E, 0x674F, 0x6750, - 0x6751, 0x675C, 0x6756, 0x675E, 0x6749, 0x6746, 0x6760, 0, -plane a8 -at 0x40 - 0x6753, 0x6757, 0x6B65, 0x6BCF, 0x6C42, 0x6C5E, 0x6C99, 0x6C81, - 0x6C88, 0x6C89, 0x6C85, 0x6C9B, 0x6C6A, 0x6C7A, 0x6C90, 0x6C70, - 0x6C8C, 0x6C68, 0x6C96, 0x6C92, 0x6C7D, 0x6C83, 0x6C72, 0x6C7E, - 0x6C74, 0x6C86, 0x6C76, 0x6C8D, 0x6C94, 0x6C98, 0x6C82, 0x7076, - 0x707C, 0x707D, 0x7078, 0x7262, 0x7261, 0x7260, 0x72C4, 0x72C2, - 0x7396, 0x752C, 0x752B, 0x7537, 0x7538, 0x7682, 0x76EF, 0x77E3, - 0x79C1, 0x79C0, 0x79BF, 0x7A76, 0x7CFB, 0x7F55, 0x8096, 0x8093, - 0x809D, 0x8098, 0x809B, 0x809A, 0x80B2, 0x826F, 0x8292, 0, -at 0xA0 - 0, 0x828B, 0x828D, 0x898B, 0x89D2, 0x8A00, 0x8C37, 0x8C46, - 0x8C55, 0x8C9D, 0x8D64, 0x8D70, 0x8DB3, 0x8EAB, 0x8ECA, 0x8F9B, - 0x8FB0, 0x8FC2, 0x8FC6, 0x8FC5, 0x8FC4, 0x5DE1, 0x9091, 0x90A2, - 0x90AA, 0x90A6, 0x90A3, 0x9149, 0x91C6, 0x91CC, 0x9632, 0x962E, - 0x9631, 0x962A, 0x962C, 0x4E26, 0x4E56, 0x4E73, 0x4E8B, 0x4E9B, - 0x4E9E, 0x4EAB, 0x4EAC, 0x4F6F, 0x4F9D, 0x4F8D, 0x4F73, 0x4F7F, - 0x4F6C, 0x4F9B, 0x4F8B, 0x4F86, 0x4F83, 0x4F70, 0x4F75, 0x4F88, - 0x4F69, 0x4F7B, 0x4F96, 0x4F7E, 0x4F8F, 0x4F91, 0x4F7A, 0x5154, - 0x5152, 0x5155, 0x5169, 0x5177, 0x5176, 0x5178, 0x51BD, 0x51FD, - 0x523B, 0x5238, 0x5237, 0x523A, 0x5230, 0x522E, 0x5236, 0x5241, - 0x52BE, 0x52BB, 0x5352, 0x5354, 0x5353, 0x5351, 0x5366, 0x5377, - 0x5378, 0x5379, 0x53D6, 0x53D4, 0x53D7, 0x5473, 0x5475, 0, -plane a9 -at 0x40 - 0x5496, 0x5478, 0x5495, 0x5480, 0x547B, 0x5477, 0x5484, 0x5492, - 0x5486, 0x547C, 0x5490, 0x5471, 0x5476, 0x548C, 0x549A, 0x5462, - 0x5468, 0x548B, 0x547D, 0x548E, 0x56FA, 0x5783, 0x5777, 0x576A, - 0x5769, 0x5761, 0x5766, 0x5764, 0x577C, 0x591C, 0x5949, 0x5947, - 0x5948, 0x5944, 0x5954, 0x59BE, 0x59BB, 0x59D4, 0x59B9, 0x59AE, - 0x59D1, 0x59C6, 0x59D0, 0x59CD, 0x59CB, 0x59D3, 0x59CA, 0x59AF, - 0x59B3, 0x59D2, 0x59C5, 0x5B5F, 0x5B64, 0x5B63, 0x5B97, 0x5B9A, - 0x5B98, 0x5B9C, 0x5B99, 0x5B9B, 0x5C1A, 0x5C48, 0x5C45, 0, -at 0xA0 - 0, 0x5C46, 0x5CB7, 0x5CA1, 0x5CB8, 0x5CA9, 0x5CAB, 0x5CB1, - 0x5CB3, 0x5E18, 0x5E1A, 0x5E16, 0x5E15, 0x5E1B, 0x5E11, 0x5E78, - 0x5E9A, 0x5E97, 0x5E9C, 0x5E95, 0x5E96, 0x5EF6, 0x5F26, 0x5F27, - 0x5F29, 0x5F80, 0x5F81, 0x5F7F, 0x5F7C, 0x5FDD, 0x5FE0, 0x5FFD, - 0x5FF5, 0x5FFF, 0x600F, 0x6014, 0x602F, 0x6035, 0x6016, 0x602A, - 0x6015, 0x6021, 0x6027, 0x6029, 0x602B, 0x601B, 0x6216, 0x6215, - 0x623F, 0x623E, 0x6240, 0x627F, 0x62C9, 0x62CC, 0x62C4, 0x62BF, - 0x62C2, 0x62B9, 0x62D2, 0x62DB, 0x62AB, 0x62D3, 0x62D4, 0x62CB, - 0x62C8, 0x62A8, 0x62BD, 0x62BC, 0x62D0, 0x62D9, 0x62C7, 0x62CD, - 0x62B5, 0x62DA, 0x62B1, 0x62D8, 0x62D6, 0x62D7, 0x62C6, 0x62AC, - 0x62CE, 0x653E, 0x65A7, 0x65BC, 0x65FA, 0x6614, 0x6613, 0x660C, - 0x6606, 0x6602, 0x660E, 0x6600, 0x660F, 0x6615, 0x660A, 0, -plane aa -at 0x40 - 0x6607, 0x670D, 0x670B, 0x676D, 0x678B, 0x6795, 0x6771, 0x679C, - 0x6773, 0x6777, 0x6787, 0x679D, 0x6797, 0x676F, 0x6770, 0x677F, - 0x6789, 0x677E, 0x6790, 0x6775, 0x679A, 0x6793, 0x677C, 0x676A, - 0x6772, 0x6B23, 0x6B66, 0x6B67, 0x6B7F, 0x6C13, 0x6C1B, 0x6CE3, - 0x6CE8, 0x6CF3, 0x6CB1, 0x6CCC, 0x6CE5, 0x6CB3, 0x6CBD, 0x6CBE, - 0x6CBC, 0x6CE2, 0x6CAB, 0x6CD5, 0x6CD3, 0x6CB8, 0x6CC4, 0x6CB9, - 0x6CC1, 0x6CAE, 0x6CD7, 0x6CC5, 0x6CF1, 0x6CBF, 0x6CBB, 0x6CE1, - 0x6CDB, 0x6CCA, 0x6CAC, 0x6CEF, 0x6CDC, 0x6CD6, 0x6CE0, 0, -at 0xA0 - 0, 0x7095, 0x708E, 0x7092, 0x708A, 0x7099, 0x722C, 0x722D, - 0x7238, 0x7248, 0x7267, 0x7269, 0x72C0, 0x72CE, 0x72D9, 0x72D7, - 0x72D0, 0x73A9, 0x73A8, 0x739F, 0x73AB, 0x73A5, 0x753D, 0x759D, - 0x7599, 0x759A, 0x7684, 0x76C2, 0x76F2, 0x76F4, 0x77E5, 0x77FD, - 0x793E, 0x7940, 0x7941, 0x79C9, 0x79C8, 0x7A7A, 0x7A79, 0x7AFA, - 0x7CFE, 0x7F54, 0x7F8C, 0x7F8B, 0x8005, 0x80BA, 0x80A5, 0x80A2, - 0x80B1, 0x80A1, 0x80AB, 0x80A9, 0x80B4, 0x80AA, 0x80AF, 0x81E5, - 0x81FE, 0x820D, 0x82B3, 0x829D, 0x8299, 0x82AD, 0x82BD, 0x829F, - 0x82B9, 0x82B1, 0x82AC, 0x82A5, 0x82AF, 0x82B8, 0x82A3, 0x82B0, - 0x82BE, 0x82B7, 0x864E, 0x8671, 0x521D, 0x8868, 0x8ECB, 0x8FCE, - 0x8FD4, 0x8FD1, 0x90B5, 0x90B8, 0x90B1, 0x90B6, 0x91C7, 0x91D1, - 0x9577, 0x9580, 0x961C, 0x9640, 0x963F, 0x963B, 0x9644, 0, -plane ab -at 0x40 - 0x9642, 0x96B9, 0x96E8, 0x9752, 0x975E, 0x4E9F, 0x4EAD, 0x4EAE, - 0x4FE1, 0x4FB5, 0x4FAF, 0x4FBF, 0x4FE0, 0x4FD1, 0x4FCF, 0x4FDD, - 0x4FC3, 0x4FB6, 0x4FD8, 0x4FDF, 0x4FCA, 0x4FD7, 0x4FAE, 0x4FD0, - 0x4FC4, 0x4FC2, 0x4FDA, 0x4FCE, 0x4FDE, 0x4FB7, 0x5157, 0x5192, - 0x5191, 0x51A0, 0x524E, 0x5243, 0x524A, 0x524D, 0x524C, 0x524B, - 0x5247, 0x52C7, 0x52C9, 0x52C3, 0x52C1, 0x530D, 0x5357, 0x537B, - 0x539A, 0x53DB, 0x54AC, 0x54C0, 0x54A8, 0x54CE, 0x54C9, 0x54B8, - 0x54A6, 0x54B3, 0x54C7, 0x54C2, 0x54BD, 0x54AA, 0x54C1, 0, -at 0xA0 - 0, 0x54C4, 0x54C8, 0x54AF, 0x54AB, 0x54B1, 0x54BB, 0x54A9, - 0x54A7, 0x54BF, 0x56FF, 0x5782, 0x578B, 0x57A0, 0x57A3, 0x57A2, - 0x57CE, 0x57AE, 0x5793, 0x5955, 0x5951, 0x594F, 0x594E, 0x5950, - 0x59DC, 0x59D8, 0x59FF, 0x59E3, 0x59E8, 0x5A03, 0x59E5, 0x59EA, - 0x59DA, 0x59E6, 0x5A01, 0x59FB, 0x5B69, 0x5BA3, 0x5BA6, 0x5BA4, - 0x5BA2, 0x5BA5, 0x5C01, 0x5C4E, 0x5C4F, 0x5C4D, 0x5C4B, 0x5CD9, - 0x5CD2, 0x5DF7, 0x5E1D, 0x5E25, 0x5E1F, 0x5E7D, 0x5EA0, 0x5EA6, - 0x5EFA, 0x5F08, 0x5F2D, 0x5F65, 0x5F88, 0x5F85, 0x5F8A, 0x5F8B, - 0x5F87, 0x5F8C, 0x5F89, 0x6012, 0x601D, 0x6020, 0x6025, 0x600E, - 0x6028, 0x604D, 0x6070, 0x6068, 0x6062, 0x6046, 0x6043, 0x606C, - 0x606B, 0x606A, 0x6064, 0x6241, 0x62DC, 0x6316, 0x6309, 0x62FC, - 0x62ED, 0x6301, 0x62EE, 0x62FD, 0x6307, 0x62F1, 0x62F7, 0, -plane ac -at 0x40 - 0x62EF, 0x62EC, 0x62FE, 0x62F4, 0x6311, 0x6302, 0x653F, 0x6545, - 0x65AB, 0x65BD, 0x65E2, 0x6625, 0x662D, 0x6620, 0x6627, 0x662F, - 0x661F, 0x6628, 0x6631, 0x6624, 0x66F7, 0x67FF, 0x67D3, 0x67F1, - 0x67D4, 0x67D0, 0x67EC, 0x67B6, 0x67AF, 0x67F5, 0x67E9, 0x67EF, - 0x67C4, 0x67D1, 0x67B4, 0x67DA, 0x67E5, 0x67B8, 0x67CF, 0x67DE, - 0x67F3, 0x67B0, 0x67D9, 0x67E2, 0x67DD, 0x67D2, 0x6B6A, 0x6B83, - 0x6B86, 0x6BB5, 0x6BD2, 0x6BD7, 0x6C1F, 0x6CC9, 0x6D0B, 0x6D32, - 0x6D2A, 0x6D41, 0x6D25, 0x6D0C, 0x6D31, 0x6D1E, 0x6D17, 0, -at 0xA0 - 0, 0x6D3B, 0x6D3D, 0x6D3E, 0x6D36, 0x6D1B, 0x6CF5, 0x6D39, - 0x6D27, 0x6D38, 0x6D29, 0x6D2E, 0x6D35, 0x6D0E, 0x6D2B, 0x70AB, - 0x70BA, 0x70B3, 0x70AC, 0x70AF, 0x70AD, 0x70B8, 0x70AE, 0x70A4, - 0x7230, 0x7272, 0x726F, 0x7274, 0x72E9, 0x72E0, 0x72E1, 0x73B7, - 0x73CA, 0x73BB, 0x73B2, 0x73CD, 0x73C0, 0x73B3, 0x751A, 0x752D, - 0x754F, 0x754C, 0x754E, 0x754B, 0x75AB, 0x75A4, 0x75A5, 0x75A2, - 0x75A3, 0x7678, 0x7686, 0x7687, 0x7688, 0x76C8, 0x76C6, 0x76C3, - 0x76C5, 0x7701, 0x76F9, 0x76F8, 0x7709, 0x770B, 0x76FE, 0x76FC, - 0x7707, 0x77DC, 0x7802, 0x7814, 0x780C, 0x780D, 0x7946, 0x7949, - 0x7948, 0x7947, 0x79B9, 0x79BA, 0x79D1, 0x79D2, 0x79CB, 0x7A7F, - 0x7A81, 0x7AFF, 0x7AFD, 0x7C7D, 0x7D02, 0x7D05, 0x7D00, 0x7D09, - 0x7D07, 0x7D04, 0x7D06, 0x7F38, 0x7F8E, 0x7FBF, 0x8004, 0, -plane ad -at 0x40 - 0x8010, 0x800D, 0x8011, 0x8036, 0x80D6, 0x80E5, 0x80DA, 0x80C3, - 0x80C4, 0x80CC, 0x80E1, 0x80DB, 0x80CE, 0x80DE, 0x80E4, 0x80DD, - 0x81F4, 0x8222, 0x82E7, 0x8303, 0x8305, 0x82E3, 0x82DB, 0x82E6, - 0x8304, 0x82E5, 0x8302, 0x8309, 0x82D2, 0x82D7, 0x82F1, 0x8301, - 0x82DC, 0x82D4, 0x82D1, 0x82DE, 0x82D3, 0x82DF, 0x82EF, 0x8306, - 0x8650, 0x8679, 0x867B, 0x867A, 0x884D, 0x886B, 0x8981, 0x89D4, - 0x8A08, 0x8A02, 0x8A03, 0x8C9E, 0x8CA0, 0x8D74, 0x8D73, 0x8DB4, - 0x8ECD, 0x8ECC, 0x8FF0, 0x8FE6, 0x8FE2, 0x8FEA, 0x8FE5, 0, -at 0xA0 - 0, 0x8FED, 0x8FEB, 0x8FE4, 0x8FE8, 0x90CA, 0x90CE, 0x90C1, - 0x90C3, 0x914B, 0x914A, 0x91CD, 0x9582, 0x9650, 0x964B, 0x964C, - 0x964D, 0x9762, 0x9769, 0x97CB, 0x97ED, 0x97F3, 0x9801, 0x98A8, - 0x98DB, 0x98DF, 0x9996, 0x9999, 0x4E58, 0x4EB3, 0x500C, 0x500D, - 0x5023, 0x4FEF, 0x5026, 0x5025, 0x4FF8, 0x5029, 0x5016, 0x5006, - 0x503C, 0x501F, 0x501A, 0x5012, 0x5011, 0x4FFA, 0x5000, 0x5014, - 0x5028, 0x4FF1, 0x5021, 0x500B, 0x5019, 0x5018, 0x4FF3, 0x4FEE, - 0x502D, 0x502A, 0x4FFE, 0x502B, 0x5009, 0x517C, 0x51A4, 0x51A5, - 0x51A2, 0x51CD, 0x51CC, 0x51C6, 0x51CB, 0x5256, 0x525C, 0x5254, - 0x525B, 0x525D, 0x532A, 0x537F, 0x539F, 0x539D, 0x53DF, 0x54E8, - 0x5510, 0x5501, 0x5537, 0x54FC, 0x54E5, 0x54F2, 0x5506, 0x54FA, - 0x5514, 0x54E9, 0x54ED, 0x54E1, 0x5509, 0x54EE, 0x54EA, 0, -plane ae -at 0x40 - 0x54E6, 0x5527, 0x5507, 0x54FD, 0x550F, 0x5703, 0x5704, 0x57C2, - 0x57D4, 0x57CB, 0x57C3, 0x5809, 0x590F, 0x5957, 0x5958, 0x595A, - 0x5A11, 0x5A18, 0x5A1C, 0x5A1F, 0x5A1B, 0x5A13, 0x59EC, 0x5A20, - 0x5A23, 0x5A29, 0x5A25, 0x5A0C, 0x5A09, 0x5B6B, 0x5C58, 0x5BB0, - 0x5BB3, 0x5BB6, 0x5BB4, 0x5BAE, 0x5BB5, 0x5BB9, 0x5BB8, 0x5C04, - 0x5C51, 0x5C55, 0x5C50, 0x5CED, 0x5CFD, 0x5CFB, 0x5CEA, 0x5CE8, - 0x5CF0, 0x5CF6, 0x5D01, 0x5CF4, 0x5DEE, 0x5E2D, 0x5E2B, 0x5EAB, - 0x5EAD, 0x5EA7, 0x5F31, 0x5F92, 0x5F91, 0x5F90, 0x6059, 0, -at 0xA0 - 0, 0x6063, 0x6065, 0x6050, 0x6055, 0x606D, 0x6069, 0x606F, - 0x6084, 0x609F, 0x609A, 0x608D, 0x6094, 0x608C, 0x6085, 0x6096, - 0x6247, 0x62F3, 0x6308, 0x62FF, 0x634E, 0x633E, 0x632F, 0x6355, - 0x6342, 0x6346, 0x634F, 0x6349, 0x633A, 0x6350, 0x633D, 0x632A, - 0x632B, 0x6328, 0x634D, 0x634C, 0x6548, 0x6549, 0x6599, 0x65C1, - 0x65C5, 0x6642, 0x6649, 0x664F, 0x6643, 0x6652, 0x664C, 0x6645, - 0x6641, 0x66F8, 0x6714, 0x6715, 0x6717, 0x6821, 0x6838, 0x6848, - 0x6846, 0x6853, 0x6839, 0x6842, 0x6854, 0x6829, 0x68B3, 0x6817, - 0x684C, 0x6851, 0x683D, 0x67F4, 0x6850, 0x6840, 0x683C, 0x6843, - 0x682A, 0x6845, 0x6813, 0x6818, 0x6841, 0x6B8A, 0x6B89, 0x6BB7, - 0x6C23, 0x6C27, 0x6C28, 0x6C26, 0x6C24, 0x6CF0, 0x6D6A, 0x6D95, - 0x6D88, 0x6D87, 0x6D66, 0x6D78, 0x6D77, 0x6D59, 0x6D93, 0, -plane af -at 0x40 - 0x6D6C, 0x6D89, 0x6D6E, 0x6D5A, 0x6D74, 0x6D69, 0x6D8C, 0x6D8A, - 0x6D79, 0x6D85, 0x6D65, 0x6D94, 0x70CA, 0x70D8, 0x70E4, 0x70D9, - 0x70C8, 0x70CF, 0x7239, 0x7279, 0x72FC, 0x72F9, 0x72FD, 0x72F8, - 0x72F7, 0x7386, 0x73ED, 0x7409, 0x73EE, 0x73E0, 0x73EA, 0x73DE, - 0x7554, 0x755D, 0x755C, 0x755A, 0x7559, 0x75BE, 0x75C5, 0x75C7, - 0x75B2, 0x75B3, 0x75BD, 0x75BC, 0x75B9, 0x75C2, 0x75B8, 0x768B, - 0x76B0, 0x76CA, 0x76CD, 0x76CE, 0x7729, 0x771F, 0x7720, 0x7728, - 0x77E9, 0x7830, 0x7827, 0x7838, 0x781D, 0x7834, 0x7837, 0, -at 0xA0 - 0, 0x7825, 0x782D, 0x7820, 0x781F, 0x7832, 0x7955, 0x7950, - 0x7960, 0x795F, 0x7956, 0x795E, 0x795D, 0x7957, 0x795A, 0x79E4, - 0x79E3, 0x79E7, 0x79DF, 0x79E6, 0x79E9, 0x79D8, 0x7A84, 0x7A88, - 0x7AD9, 0x7B06, 0x7B11, 0x7C89, 0x7D21, 0x7D17, 0x7D0B, 0x7D0A, - 0x7D20, 0x7D22, 0x7D14, 0x7D10, 0x7D15, 0x7D1A, 0x7D1C, 0x7D0D, - 0x7D19, 0x7D1B, 0x7F3A, 0x7F5F, 0x7F94, 0x7FC5, 0x7FC1, 0x8006, - 0x8018, 0x8015, 0x8019, 0x8017, 0x803D, 0x803F, 0x80F1, 0x8102, - 0x80F0, 0x8105, 0x80ED, 0x80F4, 0x8106, 0x80F8, 0x80F3, 0x8108, - 0x80FD, 0x810A, 0x80FC, 0x80EF, 0x81ED, 0x81EC, 0x8200, 0x8210, - 0x822A, 0x822B, 0x8228, 0x822C, 0x82BB, 0x832B, 0x8352, 0x8354, - 0x834A, 0x8338, 0x8350, 0x8349, 0x8335, 0x8334, 0x834F, 0x8332, - 0x8339, 0x8336, 0x8317, 0x8340, 0x8331, 0x8328, 0x8343, 0, -plane b0 -at 0x40 - 0x8654, 0x868A, 0x86AA, 0x8693, 0x86A4, 0x86A9, 0x868C, 0x86A3, - 0x869C, 0x8870, 0x8877, 0x8881, 0x8882, 0x887D, 0x8879, 0x8A18, - 0x8A10, 0x8A0E, 0x8A0C, 0x8A15, 0x8A0A, 0x8A17, 0x8A13, 0x8A16, - 0x8A0F, 0x8A11, 0x8C48, 0x8C7A, 0x8C79, 0x8CA1, 0x8CA2, 0x8D77, - 0x8EAC, 0x8ED2, 0x8ED4, 0x8ECF, 0x8FB1, 0x9001, 0x9006, 0x8FF7, - 0x9000, 0x8FFA, 0x8FF4, 0x9003, 0x8FFD, 0x9005, 0x8FF8, 0x9095, - 0x90E1, 0x90DD, 0x90E2, 0x9152, 0x914D, 0x914C, 0x91D8, 0x91DD, - 0x91D7, 0x91DC, 0x91D9, 0x9583, 0x9662, 0x9663, 0x9661, 0, -at 0xA0 - 0, 0x965B, 0x965D, 0x9664, 0x9658, 0x965E, 0x96BB, 0x98E2, - 0x99AC, 0x9AA8, 0x9AD8, 0x9B25, 0x9B32, 0x9B3C, 0x4E7E, 0x507A, - 0x507D, 0x505C, 0x5047, 0x5043, 0x504C, 0x505A, 0x5049, 0x5065, - 0x5076, 0x504E, 0x5055, 0x5075, 0x5074, 0x5077, 0x504F, 0x500F, - 0x506F, 0x506D, 0x515C, 0x5195, 0x51F0, 0x526A, 0x526F, 0x52D2, - 0x52D9, 0x52D8, 0x52D5, 0x5310, 0x530F, 0x5319, 0x533F, 0x5340, - 0x533E, 0x53C3, 0x66FC, 0x5546, 0x556A, 0x5566, 0x5544, 0x555E, - 0x5561, 0x5543, 0x554A, 0x5531, 0x5556, 0x554F, 0x5555, 0x552F, - 0x5564, 0x5538, 0x552E, 0x555C, 0x552C, 0x5563, 0x5533, 0x5541, - 0x5557, 0x5708, 0x570B, 0x5709, 0x57DF, 0x5805, 0x580A, 0x5806, - 0x57E0, 0x57E4, 0x57FA, 0x5802, 0x5835, 0x57F7, 0x57F9, 0x5920, - 0x5962, 0x5A36, 0x5A41, 0x5A49, 0x5A66, 0x5A6A, 0x5A40, 0, -plane b1 -at 0x40 - 0x5A3C, 0x5A62, 0x5A5A, 0x5A46, 0x5A4A, 0x5B70, 0x5BC7, 0x5BC5, - 0x5BC4, 0x5BC2, 0x5BBF, 0x5BC6, 0x5C09, 0x5C08, 0x5C07, 0x5C60, - 0x5C5C, 0x5C5D, 0x5D07, 0x5D06, 0x5D0E, 0x5D1B, 0x5D16, 0x5D22, - 0x5D11, 0x5D29, 0x5D14, 0x5D19, 0x5D24, 0x5D27, 0x5D17, 0x5DE2, - 0x5E38, 0x5E36, 0x5E33, 0x5E37, 0x5EB7, 0x5EB8, 0x5EB6, 0x5EB5, - 0x5EBE, 0x5F35, 0x5F37, 0x5F57, 0x5F6C, 0x5F69, 0x5F6B, 0x5F97, - 0x5F99, 0x5F9E, 0x5F98, 0x5FA1, 0x5FA0, 0x5F9C, 0x607F, 0x60A3, - 0x6089, 0x60A0, 0x60A8, 0x60CB, 0x60B4, 0x60E6, 0x60BD, 0, -at 0xA0 - 0, 0x60C5, 0x60BB, 0x60B5, 0x60DC, 0x60BC, 0x60D8, 0x60D5, - 0x60C6, 0x60DF, 0x60B8, 0x60DA, 0x60C7, 0x621A, 0x621B, 0x6248, - 0x63A0, 0x63A7, 0x6372, 0x6396, 0x63A2, 0x63A5, 0x6377, 0x6367, - 0x6398, 0x63AA, 0x6371, 0x63A9, 0x6389, 0x6383, 0x639B, 0x636B, - 0x63A8, 0x6384, 0x6388, 0x6399, 0x63A1, 0x63AC, 0x6392, 0x638F, - 0x6380, 0x637B, 0x6369, 0x6368, 0x637A, 0x655D, 0x6556, 0x6551, - 0x6559, 0x6557, 0x555F, 0x654F, 0x6558, 0x6555, 0x6554, 0x659C, - 0x659B, 0x65AC, 0x65CF, 0x65CB, 0x65CC, 0x65CE, 0x665D, 0x665A, - 0x6664, 0x6668, 0x6666, 0x665E, 0x66F9, 0x52D7, 0x671B, 0x6881, - 0x68AF, 0x68A2, 0x6893, 0x68B5, 0x687F, 0x6876, 0x68B1, 0x68A7, - 0x6897, 0x68B0, 0x6883, 0x68C4, 0x68AD, 0x6886, 0x6885, 0x6894, - 0x689D, 0x68A8, 0x689F, 0x68A1, 0x6882, 0x6B32, 0x6BBA, 0, -plane b2 -at 0x40 - 0x6BEB, 0x6BEC, 0x6C2B, 0x6D8E, 0x6DBC, 0x6DF3, 0x6DD9, 0x6DB2, - 0x6DE1, 0x6DCC, 0x6DE4, 0x6DFB, 0x6DFA, 0x6E05, 0x6DC7, 0x6DCB, - 0x6DAF, 0x6DD1, 0x6DAE, 0x6DDE, 0x6DF9, 0x6DB8, 0x6DF7, 0x6DF5, - 0x6DC5, 0x6DD2, 0x6E1A, 0x6DB5, 0x6DDA, 0x6DEB, 0x6DD8, 0x6DEA, - 0x6DF1, 0x6DEE, 0x6DE8, 0x6DC6, 0x6DC4, 0x6DAA, 0x6DEC, 0x6DBF, - 0x6DE6, 0x70F9, 0x7109, 0x710A, 0x70FD, 0x70EF, 0x723D, 0x727D, - 0x7281, 0x731C, 0x731B, 0x7316, 0x7313, 0x7319, 0x7387, 0x7405, - 0x740A, 0x7403, 0x7406, 0x73FE, 0x740D, 0x74E0, 0x74F6, 0, -at 0xA0 - 0, 0x74F7, 0x751C, 0x7522, 0x7565, 0x7566, 0x7562, 0x7570, - 0x758F, 0x75D4, 0x75D5, 0x75B5, 0x75CA, 0x75CD, 0x768E, 0x76D4, - 0x76D2, 0x76DB, 0x7737, 0x773E, 0x773C, 0x7736, 0x7738, 0x773A, - 0x786B, 0x7843, 0x784E, 0x7965, 0x7968, 0x796D, 0x79FB, 0x7A92, - 0x7A95, 0x7B20, 0x7B28, 0x7B1B, 0x7B2C, 0x7B26, 0x7B19, 0x7B1E, - 0x7B2E, 0x7C92, 0x7C97, 0x7C95, 0x7D46, 0x7D43, 0x7D71, 0x7D2E, - 0x7D39, 0x7D3C, 0x7D40, 0x7D30, 0x7D33, 0x7D44, 0x7D2F, 0x7D42, - 0x7D32, 0x7D31, 0x7F3D, 0x7F9E, 0x7F9A, 0x7FCC, 0x7FCE, 0x7FD2, - 0x801C, 0x804A, 0x8046, 0x812F, 0x8116, 0x8123, 0x812B, 0x8129, - 0x8130, 0x8124, 0x8202, 0x8235, 0x8237, 0x8236, 0x8239, 0x838E, - 0x839E, 0x8398, 0x8378, 0x83A2, 0x8396, 0x83BD, 0x83AB, 0x8392, - 0x838A, 0x8393, 0x8389, 0x83A0, 0x8377, 0x837B, 0x837C, 0, -plane b3 -at 0x40 - 0x8386, 0x83A7, 0x8655, 0x5F6A, 0x86C7, 0x86C0, 0x86B6, 0x86C4, - 0x86B5, 0x86C6, 0x86CB, 0x86B1, 0x86AF, 0x86C9, 0x8853, 0x889E, - 0x8888, 0x88AB, 0x8892, 0x8896, 0x888D, 0x888B, 0x8993, 0x898F, - 0x8A2A, 0x8A1D, 0x8A23, 0x8A25, 0x8A31, 0x8A2D, 0x8A1F, 0x8A1B, - 0x8A22, 0x8C49, 0x8C5A, 0x8CA9, 0x8CAC, 0x8CAB, 0x8CA8, 0x8CAA, - 0x8CA7, 0x8D67, 0x8D66, 0x8DBE, 0x8DBA, 0x8EDB, 0x8EDF, 0x9019, - 0x900D, 0x901A, 0x9017, 0x9023, 0x901F, 0x901D, 0x9010, 0x9015, - 0x901E, 0x9020, 0x900F, 0x9022, 0x9016, 0x901B, 0x9014, 0, -at 0xA0 - 0, 0x90E8, 0x90ED, 0x90FD, 0x9157, 0x91CE, 0x91F5, 0x91E6, - 0x91E3, 0x91E7, 0x91ED, 0x91E9, 0x9589, 0x966A, 0x9675, 0x9673, - 0x9678, 0x9670, 0x9674, 0x9676, 0x9677, 0x966C, 0x96C0, 0x96EA, - 0x96E9, 0x7AE0, 0x7ADF, 0x9802, 0x9803, 0x9B5A, 0x9CE5, 0x9E75, - 0x9E7F, 0x9EA5, 0x9EBB, 0x50A2, 0x508D, 0x5085, 0x5099, 0x5091, - 0x5080, 0x5096, 0x5098, 0x509A, 0x6700, 0x51F1, 0x5272, 0x5274, - 0x5275, 0x5269, 0x52DE, 0x52DD, 0x52DB, 0x535A, 0x53A5, 0x557B, - 0x5580, 0x55A7, 0x557C, 0x558A, 0x559D, 0x5598, 0x5582, 0x559C, - 0x55AA, 0x5594, 0x5587, 0x558B, 0x5583, 0x55B3, 0x55AE, 0x559F, - 0x553E, 0x55B2, 0x559A, 0x55BB, 0x55AC, 0x55B1, 0x557E, 0x5589, - 0x55AB, 0x5599, 0x570D, 0x582F, 0x582A, 0x5834, 0x5824, 0x5830, - 0x5831, 0x5821, 0x581D, 0x5820, 0x58F9, 0x58FA, 0x5960, 0, -plane b4 -at 0x40 - 0x5A77, 0x5A9A, 0x5A7F, 0x5A92, 0x5A9B, 0x5AA7, 0x5B73, 0x5B71, - 0x5BD2, 0x5BCC, 0x5BD3, 0x5BD0, 0x5C0A, 0x5C0B, 0x5C31, 0x5D4C, - 0x5D50, 0x5D34, 0x5D47, 0x5DFD, 0x5E45, 0x5E3D, 0x5E40, 0x5E43, - 0x5E7E, 0x5ECA, 0x5EC1, 0x5EC2, 0x5EC4, 0x5F3C, 0x5F6D, 0x5FA9, - 0x5FAA, 0x5FA8, 0x60D1, 0x60E1, 0x60B2, 0x60B6, 0x60E0, 0x611C, - 0x6123, 0x60FA, 0x6115, 0x60F0, 0x60FB, 0x60F4, 0x6168, 0x60F1, - 0x610E, 0x60F6, 0x6109, 0x6100, 0x6112, 0x621F, 0x6249, 0x63A3, - 0x638C, 0x63CF, 0x63C0, 0x63E9, 0x63C9, 0x63C6, 0x63CD, 0, -at 0xA0 - 0, 0x63D2, 0x63E3, 0x63D0, 0x63E1, 0x63D6, 0x63ED, 0x63EE, - 0x6376, 0x63F4, 0x63EA, 0x63DB, 0x6452, 0x63DA, 0x63F9, 0x655E, - 0x6566, 0x6562, 0x6563, 0x6591, 0x6590, 0x65AF, 0x666E, 0x6670, - 0x6674, 0x6676, 0x666F, 0x6691, 0x667A, 0x667E, 0x6677, 0x66FE, - 0x66FF, 0x671F, 0x671D, 0x68FA, 0x68D5, 0x68E0, 0x68D8, 0x68D7, - 0x6905, 0x68DF, 0x68F5, 0x68EE, 0x68E7, 0x68F9, 0x68D2, 0x68F2, - 0x68E3, 0x68CB, 0x68CD, 0x690D, 0x6912, 0x690E, 0x68C9, 0x68DA, - 0x696E, 0x68FB, 0x6B3E, 0x6B3A, 0x6B3D, 0x6B98, 0x6B96, 0x6BBC, - 0x6BEF, 0x6C2E, 0x6C2F, 0x6C2C, 0x6E2F, 0x6E38, 0x6E54, 0x6E21, - 0x6E32, 0x6E67, 0x6E4A, 0x6E20, 0x6E25, 0x6E23, 0x6E1B, 0x6E5B, - 0x6E58, 0x6E24, 0x6E56, 0x6E6E, 0x6E2D, 0x6E26, 0x6E6F, 0x6E34, - 0x6E4D, 0x6E3A, 0x6E2C, 0x6E43, 0x6E1D, 0x6E3E, 0x6ECB, 0, -plane b5 -at 0x40 - 0x6E89, 0x6E19, 0x6E4E, 0x6E63, 0x6E44, 0x6E72, 0x6E69, 0x6E5F, - 0x7119, 0x711A, 0x7126, 0x7130, 0x7121, 0x7136, 0x716E, 0x711C, - 0x724C, 0x7284, 0x7280, 0x7336, 0x7325, 0x7334, 0x7329, 0x743A, - 0x742A, 0x7433, 0x7422, 0x7425, 0x7435, 0x7436, 0x7434, 0x742F, - 0x741B, 0x7426, 0x7428, 0x7525, 0x7526, 0x756B, 0x756A, 0x75E2, - 0x75DB, 0x75E3, 0x75D9, 0x75D8, 0x75DE, 0x75E0, 0x767B, 0x767C, - 0x7696, 0x7693, 0x76B4, 0x76DC, 0x774F, 0x77ED, 0x785D, 0x786C, - 0x786F, 0x7A0D, 0x7A08, 0x7A0B, 0x7A05, 0x7A00, 0x7A98, 0, -at 0xA0 - 0, 0x7A97, 0x7A96, 0x7AE5, 0x7AE3, 0x7B49, 0x7B56, 0x7B46, - 0x7B50, 0x7B52, 0x7B54, 0x7B4D, 0x7B4B, 0x7B4F, 0x7B51, 0x7C9F, - 0x7CA5, 0x7D5E, 0x7D50, 0x7D68, 0x7D55, 0x7D2B, 0x7D6E, 0x7D72, - 0x7D61, 0x7D66, 0x7D62, 0x7D70, 0x7D73, 0x5584, 0x7FD4, 0x7FD5, - 0x800B, 0x8052, 0x8085, 0x8155, 0x8154, 0x814B, 0x8151, 0x814E, - 0x8139, 0x8146, 0x813E, 0x814C, 0x8153, 0x8174, 0x8212, 0x821C, - 0x83E9, 0x8403, 0x83F8, 0x840D, 0x83E0, 0x83C5, 0x840B, 0x83C1, - 0x83EF, 0x83F1, 0x83F4, 0x8457, 0x840A, 0x83F0, 0x840C, 0x83CC, - 0x83FD, 0x83F2, 0x83CA, 0x8438, 0x840E, 0x8404, 0x83DC, 0x8407, - 0x83D4, 0x83DF, 0x865B, 0x86DF, 0x86D9, 0x86ED, 0x86D4, 0x86DB, - 0x86E4, 0x86D0, 0x86DE, 0x8857, 0x88C1, 0x88C2, 0x88B1, 0x8983, - 0x8996, 0x8A3B, 0x8A60, 0x8A55, 0x8A5E, 0x8A3C, 0x8A41, 0, -plane b6 -at 0x40 - 0x8A54, 0x8A5B, 0x8A50, 0x8A46, 0x8A34, 0x8A3A, 0x8A36, 0x8A56, - 0x8C61, 0x8C82, 0x8CAF, 0x8CBC, 0x8CB3, 0x8CBD, 0x8CC1, 0x8CBB, - 0x8CC0, 0x8CB4, 0x8CB7, 0x8CB6, 0x8CBF, 0x8CB8, 0x8D8A, 0x8D85, - 0x8D81, 0x8DCE, 0x8DDD, 0x8DCB, 0x8DDA, 0x8DD1, 0x8DCC, 0x8DDB, - 0x8DC6, 0x8EFB, 0x8EF8, 0x8EFC, 0x8F9C, 0x902E, 0x9035, 0x9031, - 0x9038, 0x9032, 0x9036, 0x9102, 0x90F5, 0x9109, 0x90FE, 0x9163, - 0x9165, 0x91CF, 0x9214, 0x9215, 0x9223, 0x9209, 0x921E, 0x920D, - 0x9210, 0x9207, 0x9211, 0x9594, 0x958F, 0x958B, 0x9591, 0, -at 0xA0 - 0, 0x9593, 0x9592, 0x958E, 0x968A, 0x968E, 0x968B, 0x967D, - 0x9685, 0x9686, 0x968D, 0x9672, 0x9684, 0x96C1, 0x96C5, 0x96C4, - 0x96C6, 0x96C7, 0x96EF, 0x96F2, 0x97CC, 0x9805, 0x9806, 0x9808, - 0x98E7, 0x98EA, 0x98EF, 0x98E9, 0x98F2, 0x98ED, 0x99AE, 0x99AD, - 0x9EC3, 0x9ECD, 0x9ED1, 0x4E82, 0x50AD, 0x50B5, 0x50B2, 0x50B3, - 0x50C5, 0x50BE, 0x50AC, 0x50B7, 0x50BB, 0x50AF, 0x50C7, 0x527F, - 0x5277, 0x527D, 0x52DF, 0x52E6, 0x52E4, 0x52E2, 0x52E3, 0x532F, - 0x55DF, 0x55E8, 0x55D3, 0x55E6, 0x55CE, 0x55DC, 0x55C7, 0x55D1, - 0x55E3, 0x55E4, 0x55EF, 0x55DA, 0x55E1, 0x55C5, 0x55C6, 0x55E5, - 0x55C9, 0x5712, 0x5713, 0x585E, 0x5851, 0x5858, 0x5857, 0x585A, - 0x5854, 0x586B, 0x584C, 0x586D, 0x584A, 0x5862, 0x5852, 0x584B, - 0x5967, 0x5AC1, 0x5AC9, 0x5ACC, 0x5ABE, 0x5ABD, 0x5ABC, 0, -plane b7 -at 0x40 - 0x5AB3, 0x5AC2, 0x5AB2, 0x5D69, 0x5D6F, 0x5E4C, 0x5E79, 0x5EC9, - 0x5EC8, 0x5F12, 0x5F59, 0x5FAC, 0x5FAE, 0x611A, 0x610F, 0x6148, - 0x611F, 0x60F3, 0x611B, 0x60F9, 0x6101, 0x6108, 0x614E, 0x614C, - 0x6144, 0x614D, 0x613E, 0x6134, 0x6127, 0x610D, 0x6106, 0x6137, - 0x6221, 0x6222, 0x6413, 0x643E, 0x641E, 0x642A, 0x642D, 0x643D, - 0x642C, 0x640F, 0x641C, 0x6414, 0x640D, 0x6436, 0x6416, 0x6417, - 0x6406, 0x656C, 0x659F, 0x65B0, 0x6697, 0x6689, 0x6687, 0x6688, - 0x6696, 0x6684, 0x6698, 0x668D, 0x6703, 0x6994, 0x696D, 0, -at 0xA0 - 0, 0x695A, 0x6977, 0x6960, 0x6954, 0x6975, 0x6930, 0x6982, - 0x694A, 0x6968, 0x696B, 0x695E, 0x6953, 0x6979, 0x6986, 0x695D, - 0x6963, 0x695B, 0x6B47, 0x6B72, 0x6BC0, 0x6BBF, 0x6BD3, 0x6BFD, - 0x6EA2, 0x6EAF, 0x6ED3, 0x6EB6, 0x6EC2, 0x6E90, 0x6E9D, 0x6EC7, - 0x6EC5, 0x6EA5, 0x6E98, 0x6EBC, 0x6EBA, 0x6EAB, 0x6ED1, 0x6E96, - 0x6E9C, 0x6EC4, 0x6ED4, 0x6EAA, 0x6EA7, 0x6EB4, 0x714E, 0x7159, - 0x7169, 0x7164, 0x7149, 0x7167, 0x715C, 0x716C, 0x7166, 0x714C, - 0x7165, 0x715E, 0x7146, 0x7168, 0x7156, 0x723A, 0x7252, 0x7337, - 0x7345, 0x733F, 0x733E, 0x746F, 0x745A, 0x7455, 0x745F, 0x745E, - 0x7441, 0x743F, 0x7459, 0x745B, 0x745C, 0x7576, 0x7578, 0x7600, - 0x75F0, 0x7601, 0x75F2, 0x75F1, 0x75FA, 0x75FF, 0x75F4, 0x75F3, - 0x76DE, 0x76DF, 0x775B, 0x776B, 0x7766, 0x775E, 0x7763, 0, -plane b8 -at 0x40 - 0x7779, 0x776A, 0x776C, 0x775C, 0x7765, 0x7768, 0x7762, 0x77EE, - 0x788E, 0x78B0, 0x7897, 0x7898, 0x788C, 0x7889, 0x787C, 0x7891, - 0x7893, 0x787F, 0x797A, 0x797F, 0x7981, 0x842C, 0x79BD, 0x7A1C, - 0x7A1A, 0x7A20, 0x7A14, 0x7A1F, 0x7A1E, 0x7A9F, 0x7AA0, 0x7B77, - 0x7BC0, 0x7B60, 0x7B6E, 0x7B67, 0x7CB1, 0x7CB3, 0x7CB5, 0x7D93, - 0x7D79, 0x7D91, 0x7D81, 0x7D8F, 0x7D5B, 0x7F6E, 0x7F69, 0x7F6A, - 0x7F72, 0x7FA9, 0x7FA8, 0x7FA4, 0x8056, 0x8058, 0x8086, 0x8084, - 0x8171, 0x8170, 0x8178, 0x8165, 0x816E, 0x8173, 0x816B, 0, -at 0xA0 - 0, 0x8179, 0x817A, 0x8166, 0x8205, 0x8247, 0x8482, 0x8477, - 0x843D, 0x8431, 0x8475, 0x8466, 0x846B, 0x8449, 0x846C, 0x845B, - 0x843C, 0x8435, 0x8461, 0x8463, 0x8469, 0x846D, 0x8446, 0x865E, - 0x865C, 0x865F, 0x86F9, 0x8713, 0x8708, 0x8707, 0x8700, 0x86FE, - 0x86FB, 0x8702, 0x8703, 0x8706, 0x870A, 0x8859, 0x88DF, 0x88D4, - 0x88D9, 0x88DC, 0x88D8, 0x88DD, 0x88E1, 0x88CA, 0x88D5, 0x88D2, - 0x899C, 0x89E3, 0x8A6B, 0x8A72, 0x8A73, 0x8A66, 0x8A69, 0x8A70, - 0x8A87, 0x8A7C, 0x8A63, 0x8AA0, 0x8A71, 0x8A85, 0x8A6D, 0x8A62, - 0x8A6E, 0x8A6C, 0x8A79, 0x8A7B, 0x8A3E, 0x8A68, 0x8C62, 0x8C8A, - 0x8C89, 0x8CCA, 0x8CC7, 0x8CC8, 0x8CC4, 0x8CB2, 0x8CC3, 0x8CC2, - 0x8CC5, 0x8DE1, 0x8DDF, 0x8DE8, 0x8DEF, 0x8DF3, 0x8DFA, 0x8DEA, - 0x8DE4, 0x8DE6, 0x8EB2, 0x8F03, 0x8F09, 0x8EFE, 0x8F0A, 0, -plane b9 -at 0x40 - 0x8F9F, 0x8FB2, 0x904B, 0x904A, 0x9053, 0x9042, 0x9054, 0x903C, - 0x9055, 0x9050, 0x9047, 0x904F, 0x904E, 0x904D, 0x9051, 0x903E, - 0x9041, 0x9112, 0x9117, 0x916C, 0x916A, 0x9169, 0x91C9, 0x9237, - 0x9257, 0x9238, 0x923D, 0x9240, 0x923E, 0x925B, 0x924B, 0x9264, - 0x9251, 0x9234, 0x9249, 0x924D, 0x9245, 0x9239, 0x923F, 0x925A, - 0x9598, 0x9698, 0x9694, 0x9695, 0x96CD, 0x96CB, 0x96C9, 0x96CA, - 0x96F7, 0x96FB, 0x96F9, 0x96F6, 0x9756, 0x9774, 0x9776, 0x9810, - 0x9811, 0x9813, 0x980A, 0x9812, 0x980C, 0x98FC, 0x98F4, 0, -at 0xA0 - 0, 0x98FD, 0x98FE, 0x99B3, 0x99B1, 0x99B4, 0x9AE1, 0x9CE9, - 0x9E82, 0x9F0E, 0x9F13, 0x9F20, 0x50E7, 0x50EE, 0x50E5, 0x50D6, - 0x50ED, 0x50DA, 0x50D5, 0x50CF, 0x50D1, 0x50F1, 0x50CE, 0x50E9, - 0x5162, 0x51F3, 0x5283, 0x5282, 0x5331, 0x53AD, 0x55FE, 0x5600, - 0x561B, 0x5617, 0x55FD, 0x5614, 0x5606, 0x5609, 0x560D, 0x560E, - 0x55F7, 0x5616, 0x561F, 0x5608, 0x5610, 0x55F6, 0x5718, 0x5716, - 0x5875, 0x587E, 0x5883, 0x5893, 0x588A, 0x5879, 0x5885, 0x587D, - 0x58FD, 0x5925, 0x5922, 0x5924, 0x596A, 0x5969, 0x5AE1, 0x5AE6, - 0x5AE9, 0x5AD7, 0x5AD6, 0x5AD8, 0x5AE3, 0x5B75, 0x5BDE, 0x5BE7, - 0x5BE1, 0x5BE5, 0x5BE6, 0x5BE8, 0x5BE2, 0x5BE4, 0x5BDF, 0x5C0D, - 0x5C62, 0x5D84, 0x5D87, 0x5E5B, 0x5E63, 0x5E55, 0x5E57, 0x5E54, - 0x5ED3, 0x5ED6, 0x5F0A, 0x5F46, 0x5F70, 0x5FB9, 0x6147, 0, -plane ba -at 0x40 - 0x613F, 0x614B, 0x6177, 0x6162, 0x6163, 0x615F, 0x615A, 0x6158, - 0x6175, 0x622A, 0x6487, 0x6458, 0x6454, 0x64A4, 0x6478, 0x645F, - 0x647A, 0x6451, 0x6467, 0x6434, 0x646D, 0x647B, 0x6572, 0x65A1, - 0x65D7, 0x65D6, 0x66A2, 0x66A8, 0x669D, 0x699C, 0x69A8, 0x6995, - 0x69C1, 0x69AE, 0x69D3, 0x69CB, 0x699B, 0x69B7, 0x69BB, 0x69AB, - 0x69B4, 0x69D0, 0x69CD, 0x69AD, 0x69CC, 0x69A6, 0x69C3, 0x69A3, - 0x6B49, 0x6B4C, 0x6C33, 0x6F33, 0x6F14, 0x6EFE, 0x6F13, 0x6EF4, - 0x6F29, 0x6F3E, 0x6F20, 0x6F2C, 0x6F0F, 0x6F02, 0x6F22, 0, -at 0xA0 - 0, 0x6EFF, 0x6EEF, 0x6F06, 0x6F31, 0x6F38, 0x6F32, 0x6F23, - 0x6F15, 0x6F2B, 0x6F2F, 0x6F88, 0x6F2A, 0x6EEC, 0x6F01, 0x6EF2, - 0x6ECC, 0x6EF7, 0x7194, 0x7199, 0x717D, 0x718A, 0x7184, 0x7192, - 0x723E, 0x7292, 0x7296, 0x7344, 0x7350, 0x7464, 0x7463, 0x746A, - 0x7470, 0x746D, 0x7504, 0x7591, 0x7627, 0x760D, 0x760B, 0x7609, - 0x7613, 0x76E1, 0x76E3, 0x7784, 0x777D, 0x777F, 0x7761, 0x78C1, - 0x789F, 0x78A7, 0x78B3, 0x78A9, 0x78A3, 0x798E, 0x798F, 0x798D, - 0x7A2E, 0x7A31, 0x7AAA, 0x7AA9, 0x7AED, 0x7AEF, 0x7BA1, 0x7B95, - 0x7B8B, 0x7B75, 0x7B97, 0x7B9D, 0x7B94, 0x7B8F, 0x7BB8, 0x7B87, - 0x7B84, 0x7CB9, 0x7CBD, 0x7CBE, 0x7DBB, 0x7DB0, 0x7D9C, 0x7DBD, - 0x7DBE, 0x7DA0, 0x7DCA, 0x7DB4, 0x7DB2, 0x7DB1, 0x7DBA, 0x7DA2, - 0x7DBF, 0x7DB5, 0x7DB8, 0x7DAD, 0x7DD2, 0x7DC7, 0x7DAC, 0, -plane bb -at 0x40 - 0x7F70, 0x7FE0, 0x7FE1, 0x7FDF, 0x805E, 0x805A, 0x8087, 0x8150, - 0x8180, 0x818F, 0x8188, 0x818A, 0x817F, 0x8182, 0x81E7, 0x81FA, - 0x8207, 0x8214, 0x821E, 0x824B, 0x84C9, 0x84BF, 0x84C6, 0x84C4, - 0x8499, 0x849E, 0x84B2, 0x849C, 0x84CB, 0x84B8, 0x84C0, 0x84D3, - 0x8490, 0x84BC, 0x84D1, 0x84CA, 0x873F, 0x871C, 0x873B, 0x8722, - 0x8725, 0x8734, 0x8718, 0x8755, 0x8737, 0x8729, 0x88F3, 0x8902, - 0x88F4, 0x88F9, 0x88F8, 0x88FD, 0x88E8, 0x891A, 0x88EF, 0x8AA6, - 0x8A8C, 0x8A9E, 0x8AA3, 0x8A8D, 0x8AA1, 0x8A93, 0x8AA4, 0, -at 0xA0 - 0, 0x8AAA, 0x8AA5, 0x8AA8, 0x8A98, 0x8A91, 0x8A9A, 0x8AA7, - 0x8C6A, 0x8C8D, 0x8C8C, 0x8CD3, 0x8CD1, 0x8CD2, 0x8D6B, 0x8D99, - 0x8D95, 0x8DFC, 0x8F14, 0x8F12, 0x8F15, 0x8F13, 0x8FA3, 0x9060, - 0x9058, 0x905C, 0x9063, 0x9059, 0x905E, 0x9062, 0x905D, 0x905B, - 0x9119, 0x9118, 0x911E, 0x9175, 0x9178, 0x9177, 0x9174, 0x9278, - 0x9280, 0x9285, 0x9298, 0x9296, 0x927B, 0x9293, 0x929C, 0x92A8, - 0x927C, 0x9291, 0x95A1, 0x95A8, 0x95A9, 0x95A3, 0x95A5, 0x95A4, - 0x9699, 0x969C, 0x969B, 0x96CC, 0x96D2, 0x9700, 0x977C, 0x9785, - 0x97F6, 0x9817, 0x9818, 0x98AF, 0x98B1, 0x9903, 0x9905, 0x990C, - 0x9909, 0x99C1, 0x9AAF, 0x9AB0, 0x9AE6, 0x9B41, 0x9B42, 0x9CF4, - 0x9CF6, 0x9CF3, 0x9EBC, 0x9F3B, 0x9F4A, 0x5104, 0x5100, 0x50FB, - 0x50F5, 0x50F9, 0x5102, 0x5108, 0x5109, 0x5105, 0x51DC, 0, -plane bc -at 0x40 - 0x5287, 0x5288, 0x5289, 0x528D, 0x528A, 0x52F0, 0x53B2, 0x562E, - 0x563B, 0x5639, 0x5632, 0x563F, 0x5634, 0x5629, 0x5653, 0x564E, - 0x5657, 0x5674, 0x5636, 0x562F, 0x5630, 0x5880, 0x589F, 0x589E, - 0x58B3, 0x589C, 0x58AE, 0x58A9, 0x58A6, 0x596D, 0x5B09, 0x5AFB, - 0x5B0B, 0x5AF5, 0x5B0C, 0x5B08, 0x5BEE, 0x5BEC, 0x5BE9, 0x5BEB, - 0x5C64, 0x5C65, 0x5D9D, 0x5D94, 0x5E62, 0x5E5F, 0x5E61, 0x5EE2, - 0x5EDA, 0x5EDF, 0x5EDD, 0x5EE3, 0x5EE0, 0x5F48, 0x5F71, 0x5FB7, - 0x5FB5, 0x6176, 0x6167, 0x616E, 0x615D, 0x6155, 0x6182, 0, -at 0xA0 - 0, 0x617C, 0x6170, 0x616B, 0x617E, 0x61A7, 0x6190, 0x61AB, - 0x618E, 0x61AC, 0x619A, 0x61A4, 0x6194, 0x61AE, 0x622E, 0x6469, - 0x646F, 0x6479, 0x649E, 0x64B2, 0x6488, 0x6490, 0x64B0, 0x64A5, - 0x6493, 0x6495, 0x64A9, 0x6492, 0x64AE, 0x64AD, 0x64AB, 0x649A, - 0x64AC, 0x6499, 0x64A2, 0x64B3, 0x6575, 0x6577, 0x6578, 0x66AE, - 0x66AB, 0x66B4, 0x66B1, 0x6A23, 0x6A1F, 0x69E8, 0x6A01, 0x6A1E, - 0x6A19, 0x69FD, 0x6A21, 0x6A13, 0x6A0A, 0x69F3, 0x6A02, 0x6A05, - 0x69ED, 0x6A11, 0x6B50, 0x6B4E, 0x6BA4, 0x6BC5, 0x6BC6, 0x6F3F, - 0x6F7C, 0x6F84, 0x6F51, 0x6F66, 0x6F54, 0x6F86, 0x6F6D, 0x6F5B, - 0x6F78, 0x6F6E, 0x6F8E, 0x6F7A, 0x6F70, 0x6F64, 0x6F97, 0x6F58, - 0x6ED5, 0x6F6F, 0x6F60, 0x6F5F, 0x719F, 0x71AC, 0x71B1, 0x71A8, - 0x7256, 0x729B, 0x734E, 0x7357, 0x7469, 0x748B, 0x7483, 0, -plane bd -at 0x40 - 0x747E, 0x7480, 0x757F, 0x7620, 0x7629, 0x761F, 0x7624, 0x7626, - 0x7621, 0x7622, 0x769A, 0x76BA, 0x76E4, 0x778E, 0x7787, 0x778C, - 0x7791, 0x778B, 0x78CB, 0x78C5, 0x78BA, 0x78CA, 0x78BE, 0x78D5, - 0x78BC, 0x78D0, 0x7A3F, 0x7A3C, 0x7A40, 0x7A3D, 0x7A37, 0x7A3B, - 0x7AAF, 0x7AAE, 0x7BAD, 0x7BB1, 0x7BC4, 0x7BB4, 0x7BC6, 0x7BC7, - 0x7BC1, 0x7BA0, 0x7BCC, 0x7CCA, 0x7DE0, 0x7DF4, 0x7DEF, 0x7DFB, - 0x7DD8, 0x7DEC, 0x7DDD, 0x7DE8, 0x7DE3, 0x7DDA, 0x7DDE, 0x7DE9, - 0x7D9E, 0x7DD9, 0x7DF2, 0x7DF9, 0x7F75, 0x7F77, 0x7FAF, 0, -at 0xA0 - 0, 0x7FE9, 0x8026, 0x819B, 0x819C, 0x819D, 0x81A0, 0x819A, - 0x8198, 0x8517, 0x853D, 0x851A, 0x84EE, 0x852C, 0x852D, 0x8513, - 0x8511, 0x8523, 0x8521, 0x8514, 0x84EC, 0x8525, 0x84FF, 0x8506, - 0x8782, 0x8774, 0x8776, 0x8760, 0x8766, 0x8778, 0x8768, 0x8759, - 0x8757, 0x874C, 0x8753, 0x885B, 0x885D, 0x8910, 0x8907, 0x8912, - 0x8913, 0x8915, 0x890A, 0x8ABC, 0x8AD2, 0x8AC7, 0x8AC4, 0x8A95, - 0x8ACB, 0x8AF8, 0x8AB2, 0x8AC9, 0x8AC2, 0x8ABF, 0x8AB0, 0x8AD6, - 0x8ACD, 0x8AB6, 0x8AB9, 0x8ADB, 0x8C4C, 0x8C4E, 0x8C6C, 0x8CE0, - 0x8CDE, 0x8CE6, 0x8CE4, 0x8CEC, 0x8CED, 0x8CE2, 0x8CE3, 0x8CDC, - 0x8CEA, 0x8CE1, 0x8D6D, 0x8D9F, 0x8DA3, 0x8E2B, 0x8E10, 0x8E1D, - 0x8E22, 0x8E0F, 0x8E29, 0x8E1F, 0x8E21, 0x8E1E, 0x8EBA, 0x8F1D, - 0x8F1B, 0x8F1F, 0x8F29, 0x8F26, 0x8F2A, 0x8F1C, 0x8F1E, 0, -plane be -at 0x40 - 0x8F25, 0x9069, 0x906E, 0x9068, 0x906D, 0x9077, 0x9130, 0x912D, - 0x9127, 0x9131, 0x9187, 0x9189, 0x918B, 0x9183, 0x92C5, 0x92BB, - 0x92B7, 0x92EA, 0x92AC, 0x92E4, 0x92C1, 0x92B3, 0x92BC, 0x92D2, - 0x92C7, 0x92F0, 0x92B2, 0x95AD, 0x95B1, 0x9704, 0x9706, 0x9707, - 0x9709, 0x9760, 0x978D, 0x978B, 0x978F, 0x9821, 0x982B, 0x981C, - 0x98B3, 0x990A, 0x9913, 0x9912, 0x9918, 0x99DD, 0x99D0, 0x99DF, - 0x99DB, 0x99D1, 0x99D5, 0x99D2, 0x99D9, 0x9AB7, 0x9AEE, 0x9AEF, - 0x9B27, 0x9B45, 0x9B44, 0x9B77, 0x9B6F, 0x9D06, 0x9D09, 0, -at 0xA0 - 0, 0x9D03, 0x9EA9, 0x9EBE, 0x9ECE, 0x58A8, 0x9F52, 0x5112, - 0x5118, 0x5114, 0x5110, 0x5115, 0x5180, 0x51AA, 0x51DD, 0x5291, - 0x5293, 0x52F3, 0x5659, 0x566B, 0x5679, 0x5669, 0x5664, 0x5678, - 0x566A, 0x5668, 0x5665, 0x5671, 0x566F, 0x566C, 0x5662, 0x5676, - 0x58C1, 0x58BE, 0x58C7, 0x58C5, 0x596E, 0x5B1D, 0x5B34, 0x5B78, - 0x5BF0, 0x5C0E, 0x5F4A, 0x61B2, 0x6191, 0x61A9, 0x618A, 0x61CD, - 0x61B6, 0x61BE, 0x61CA, 0x61C8, 0x6230, 0x64C5, 0x64C1, 0x64CB, - 0x64BB, 0x64BC, 0x64DA, 0x64C4, 0x64C7, 0x64C2, 0x64CD, 0x64BF, - 0x64D2, 0x64D4, 0x64BE, 0x6574, 0x66C6, 0x66C9, 0x66B9, 0x66C4, - 0x66C7, 0x66B8, 0x6A3D, 0x6A38, 0x6A3A, 0x6A59, 0x6A6B, 0x6A58, - 0x6A39, 0x6A44, 0x6A62, 0x6A61, 0x6A4B, 0x6A47, 0x6A35, 0x6A5F, - 0x6A48, 0x6B59, 0x6B77, 0x6C05, 0x6FC2, 0x6FB1, 0x6FA1, 0, -plane bf -at 0x40 - 0x6FC3, 0x6FA4, 0x6FC1, 0x6FA7, 0x6FB3, 0x6FC0, 0x6FB9, 0x6FB6, - 0x6FA6, 0x6FA0, 0x6FB4, 0x71BE, 0x71C9, 0x71D0, 0x71D2, 0x71C8, - 0x71D5, 0x71B9, 0x71CE, 0x71D9, 0x71DC, 0x71C3, 0x71C4, 0x7368, - 0x749C, 0x74A3, 0x7498, 0x749F, 0x749E, 0x74E2, 0x750C, 0x750D, - 0x7634, 0x7638, 0x763A, 0x76E7, 0x76E5, 0x77A0, 0x779E, 0x779F, - 0x77A5, 0x78E8, 0x78DA, 0x78EC, 0x78E7, 0x79A6, 0x7A4D, 0x7A4E, - 0x7A46, 0x7A4C, 0x7A4B, 0x7ABA, 0x7BD9, 0x7C11, 0x7BC9, 0x7BE4, - 0x7BDB, 0x7BE1, 0x7BE9, 0x7BE6, 0x7CD5, 0x7CD6, 0x7E0A, 0, -at 0xA0 - 0, 0x7E11, 0x7E08, 0x7E1B, 0x7E23, 0x7E1E, 0x7E1D, 0x7E09, - 0x7E10, 0x7F79, 0x7FB2, 0x7FF0, 0x7FF1, 0x7FEE, 0x8028, 0x81B3, - 0x81A9, 0x81A8, 0x81FB, 0x8208, 0x8258, 0x8259, 0x854A, 0x8559, - 0x8548, 0x8568, 0x8569, 0x8543, 0x8549, 0x856D, 0x856A, 0x855E, - 0x8783, 0x879F, 0x879E, 0x87A2, 0x878D, 0x8861, 0x892A, 0x8932, - 0x8925, 0x892B, 0x8921, 0x89AA, 0x89A6, 0x8AE6, 0x8AFA, 0x8AEB, - 0x8AF1, 0x8B00, 0x8ADC, 0x8AE7, 0x8AEE, 0x8AFE, 0x8B01, 0x8B02, - 0x8AF7, 0x8AED, 0x8AF3, 0x8AF6, 0x8AFC, 0x8C6B, 0x8C6D, 0x8C93, - 0x8CF4, 0x8E44, 0x8E31, 0x8E34, 0x8E42, 0x8E39, 0x8E35, 0x8F3B, - 0x8F2F, 0x8F38, 0x8F33, 0x8FA8, 0x8FA6, 0x9075, 0x9074, 0x9078, - 0x9072, 0x907C, 0x907A, 0x9134, 0x9192, 0x9320, 0x9336, 0x92F8, - 0x9333, 0x932F, 0x9322, 0x92FC, 0x932B, 0x9304, 0x931A, 0, -plane c0 -at 0x40 - 0x9310, 0x9326, 0x9321, 0x9315, 0x932E, 0x9319, 0x95BB, 0x96A7, - 0x96A8, 0x96AA, 0x96D5, 0x970E, 0x9711, 0x9716, 0x970D, 0x9713, - 0x970F, 0x975B, 0x975C, 0x9766, 0x9798, 0x9830, 0x9838, 0x983B, - 0x9837, 0x982D, 0x9839, 0x9824, 0x9910, 0x9928, 0x991E, 0x991B, - 0x9921, 0x991A, 0x99ED, 0x99E2, 0x99F1, 0x9AB8, 0x9ABC, 0x9AFB, - 0x9AED, 0x9B28, 0x9B91, 0x9D15, 0x9D23, 0x9D26, 0x9D28, 0x9D12, - 0x9D1B, 0x9ED8, 0x9ED4, 0x9F8D, 0x9F9C, 0x512A, 0x511F, 0x5121, - 0x5132, 0x52F5, 0x568E, 0x5680, 0x5690, 0x5685, 0x5687, 0, -at 0xA0 - 0, 0x568F, 0x58D5, 0x58D3, 0x58D1, 0x58CE, 0x5B30, 0x5B2A, - 0x5B24, 0x5B7A, 0x5C37, 0x5C68, 0x5DBC, 0x5DBA, 0x5DBD, 0x5DB8, - 0x5E6B, 0x5F4C, 0x5FBD, 0x61C9, 0x61C2, 0x61C7, 0x61E6, 0x61CB, - 0x6232, 0x6234, 0x64CE, 0x64CA, 0x64D8, 0x64E0, 0x64F0, 0x64E6, - 0x64EC, 0x64F1, 0x64E2, 0x64ED, 0x6582, 0x6583, 0x66D9, 0x66D6, - 0x6A80, 0x6A94, 0x6A84, 0x6AA2, 0x6A9C, 0x6ADB, 0x6AA3, 0x6A7E, - 0x6A97, 0x6A90, 0x6AA0, 0x6B5C, 0x6BAE, 0x6BDA, 0x6C08, 0x6FD8, - 0x6FF1, 0x6FDF, 0x6FE0, 0x6FDB, 0x6FE4, 0x6FEB, 0x6FEF, 0x6F80, - 0x6FEC, 0x6FE1, 0x6FE9, 0x6FD5, 0x6FEE, 0x6FF0, 0x71E7, 0x71DF, - 0x71EE, 0x71E6, 0x71E5, 0x71ED, 0x71EC, 0x71F4, 0x71E0, 0x7235, - 0x7246, 0x7370, 0x7372, 0x74A9, 0x74B0, 0x74A6, 0x74A8, 0x7646, - 0x7642, 0x764C, 0x76EA, 0x77B3, 0x77AA, 0x77B0, 0x77AC, 0, -plane c1 -at 0x40 - 0x77A7, 0x77AD, 0x77EF, 0x78F7, 0x78FA, 0x78F4, 0x78EF, 0x7901, - 0x79A7, 0x79AA, 0x7A57, 0x7ABF, 0x7C07, 0x7C0D, 0x7BFE, 0x7BF7, - 0x7C0C, 0x7BE0, 0x7CE0, 0x7CDC, 0x7CDE, 0x7CE2, 0x7CDF, 0x7CD9, - 0x7CDD, 0x7E2E, 0x7E3E, 0x7E46, 0x7E37, 0x7E32, 0x7E43, 0x7E2B, - 0x7E3D, 0x7E31, 0x7E45, 0x7E41, 0x7E34, 0x7E39, 0x7E48, 0x7E35, - 0x7E3F, 0x7E2F, 0x7F44, 0x7FF3, 0x7FFC, 0x8071, 0x8072, 0x8070, - 0x806F, 0x8073, 0x81C6, 0x81C3, 0x81BA, 0x81C2, 0x81C0, 0x81BF, - 0x81BD, 0x81C9, 0x81BE, 0x81E8, 0x8209, 0x8271, 0x85AA, 0, -at 0xA0 - 0, 0x8584, 0x857E, 0x859C, 0x8591, 0x8594, 0x85AF, 0x859B, - 0x8587, 0x85A8, 0x858A, 0x8667, 0x87C0, 0x87D1, 0x87B3, 0x87D2, - 0x87C6, 0x87AB, 0x87BB, 0x87BA, 0x87C8, 0x87CB, 0x893B, 0x8936, - 0x8944, 0x8938, 0x893D, 0x89AC, 0x8B0E, 0x8B17, 0x8B19, 0x8B1B, - 0x8B0A, 0x8B20, 0x8B1D, 0x8B04, 0x8B10, 0x8C41, 0x8C3F, 0x8C73, - 0x8CFA, 0x8CFD, 0x8CFC, 0x8CF8, 0x8CFB, 0x8DA8, 0x8E49, 0x8E4B, - 0x8E48, 0x8E4A, 0x8F44, 0x8F3E, 0x8F42, 0x8F45, 0x8F3F, 0x907F, - 0x907D, 0x9084, 0x9081, 0x9082, 0x9080, 0x9139, 0x91A3, 0x919E, - 0x919C, 0x934D, 0x9382, 0x9328, 0x9375, 0x934A, 0x9365, 0x934B, - 0x9318, 0x937E, 0x936C, 0x935B, 0x9370, 0x935A, 0x9354, 0x95CA, - 0x95CB, 0x95CC, 0x95C8, 0x95C6, 0x96B1, 0x96B8, 0x96D6, 0x971C, - 0x971E, 0x97A0, 0x97D3, 0x9846, 0x98B6, 0x9935, 0x9A01, 0, -plane c2 -at 0x40 - 0x99FF, 0x9BAE, 0x9BAB, 0x9BAA, 0x9BAD, 0x9D3B, 0x9D3F, 0x9E8B, - 0x9ECF, 0x9EDE, 0x9EDC, 0x9EDD, 0x9EDB, 0x9F3E, 0x9F4B, 0x53E2, - 0x5695, 0x56AE, 0x58D9, 0x58D8, 0x5B38, 0x5F5D, 0x61E3, 0x6233, - 0x64F4, 0x64F2, 0x64FE, 0x6506, 0x64FA, 0x64FB, 0x64F7, 0x65B7, - 0x66DC, 0x6726, 0x6AB3, 0x6AAC, 0x6AC3, 0x6ABB, 0x6AB8, 0x6AC2, - 0x6AAE, 0x6AAF, 0x6B5F, 0x6B78, 0x6BAF, 0x7009, 0x700B, 0x6FFE, - 0x7006, 0x6FFA, 0x7011, 0x700F, 0x71FB, 0x71FC, 0x71FE, 0x71F8, - 0x7377, 0x7375, 0x74A7, 0x74BF, 0x7515, 0x7656, 0x7658, 0, -at 0xA0 - 0, 0x7652, 0x77BD, 0x77BF, 0x77BB, 0x77BC, 0x790E, 0x79AE, - 0x7A61, 0x7A62, 0x7A60, 0x7AC4, 0x7AC5, 0x7C2B, 0x7C27, 0x7C2A, - 0x7C1E, 0x7C23, 0x7C21, 0x7CE7, 0x7E54, 0x7E55, 0x7E5E, 0x7E5A, - 0x7E61, 0x7E52, 0x7E59, 0x7F48, 0x7FF9, 0x7FFB, 0x8077, 0x8076, - 0x81CD, 0x81CF, 0x820A, 0x85CF, 0x85A9, 0x85CD, 0x85D0, 0x85C9, - 0x85B0, 0x85BA, 0x85B9, 0x85A6, 0x87EF, 0x87EC, 0x87F2, 0x87E0, - 0x8986, 0x89B2, 0x89F4, 0x8B28, 0x8B39, 0x8B2C, 0x8B2B, 0x8C50, - 0x8D05, 0x8E59, 0x8E63, 0x8E66, 0x8E64, 0x8E5F, 0x8E55, 0x8EC0, - 0x8F49, 0x8F4D, 0x9087, 0x9083, 0x9088, 0x91AB, 0x91AC, 0x91D0, - 0x9394, 0x938A, 0x9396, 0x93A2, 0x93B3, 0x93AE, 0x93AC, 0x93B0, - 0x9398, 0x939A, 0x9397, 0x95D4, 0x95D6, 0x95D0, 0x95D5, 0x96E2, - 0x96DC, 0x96D9, 0x96DB, 0x96DE, 0x9724, 0x97A3, 0x97A6, 0, -plane c3 -at 0x40 - 0x97AD, 0x97F9, 0x984D, 0x984F, 0x984C, 0x984E, 0x9853, 0x98BA, - 0x993E, 0x993F, 0x993D, 0x992E, 0x99A5, 0x9A0E, 0x9AC1, 0x9B03, - 0x9B06, 0x9B4F, 0x9B4E, 0x9B4D, 0x9BCA, 0x9BC9, 0x9BFD, 0x9BC8, - 0x9BC0, 0x9D51, 0x9D5D, 0x9D60, 0x9EE0, 0x9F15, 0x9F2C, 0x5133, - 0x56A5, 0x58DE, 0x58DF, 0x58E2, 0x5BF5, 0x9F90, 0x5EEC, 0x61F2, - 0x61F7, 0x61F6, 0x61F5, 0x6500, 0x650F, 0x66E0, 0x66DD, 0x6AE5, - 0x6ADD, 0x6ADA, 0x6AD3, 0x701B, 0x701F, 0x7028, 0x701A, 0x701D, - 0x7015, 0x7018, 0x7206, 0x720D, 0x7258, 0x72A2, 0x7378, 0, -at 0xA0 - 0, 0x737A, 0x74BD, 0x74CA, 0x74E3, 0x7587, 0x7586, 0x765F, - 0x7661, 0x77C7, 0x7919, 0x79B1, 0x7A6B, 0x7A69, 0x7C3E, 0x7C3F, - 0x7C38, 0x7C3D, 0x7C37, 0x7C40, 0x7E6B, 0x7E6D, 0x7E79, 0x7E69, - 0x7E6A, 0x7F85, 0x7E73, 0x7FB6, 0x7FB9, 0x7FB8, 0x81D8, 0x85E9, - 0x85DD, 0x85EA, 0x85D5, 0x85E4, 0x85E5, 0x85F7, 0x87FB, 0x8805, - 0x880D, 0x87F9, 0x87FE, 0x8960, 0x895F, 0x8956, 0x895E, 0x8B41, - 0x8B5C, 0x8B58, 0x8B49, 0x8B5A, 0x8B4E, 0x8B4F, 0x8B46, 0x8B59, - 0x8D08, 0x8D0A, 0x8E7C, 0x8E72, 0x8E87, 0x8E76, 0x8E6C, 0x8E7A, - 0x8E74, 0x8F54, 0x8F4E, 0x8FAD, 0x908A, 0x908B, 0x91B1, 0x91AE, - 0x93E1, 0x93D1, 0x93DF, 0x93C3, 0x93C8, 0x93DC, 0x93DD, 0x93D6, - 0x93E2, 0x93CD, 0x93D8, 0x93E4, 0x93D7, 0x93E8, 0x95DC, 0x96B4, - 0x96E3, 0x972A, 0x9727, 0x9761, 0x97DC, 0x97FB, 0x985E, 0, -plane c4 -at 0x40 - 0x9858, 0x985B, 0x98BC, 0x9945, 0x9949, 0x9A16, 0x9A19, 0x9B0D, - 0x9BE8, 0x9BE7, 0x9BD6, 0x9BDB, 0x9D89, 0x9D61, 0x9D72, 0x9D6A, - 0x9D6C, 0x9E92, 0x9E97, 0x9E93, 0x9EB4, 0x52F8, 0x56A8, 0x56B7, - 0x56B6, 0x56B4, 0x56BC, 0x58E4, 0x5B40, 0x5B43, 0x5B7D, 0x5BF6, - 0x5DC9, 0x61F8, 0x61FA, 0x6518, 0x6514, 0x6519, 0x66E6, 0x6727, - 0x6AEC, 0x703E, 0x7030, 0x7032, 0x7210, 0x737B, 0x74CF, 0x7662, - 0x7665, 0x7926, 0x792A, 0x792C, 0x792B, 0x7AC7, 0x7AF6, 0x7C4C, - 0x7C43, 0x7C4D, 0x7CEF, 0x7CF0, 0x8FAE, 0x7E7D, 0x7E7C, 0, -at 0xA0 - 0, 0x7E82, 0x7F4C, 0x8000, 0x81DA, 0x8266, 0x85FB, 0x85F9, - 0x8611, 0x85FA, 0x8606, 0x860B, 0x8607, 0x860A, 0x8814, 0x8815, - 0x8964, 0x89BA, 0x89F8, 0x8B70, 0x8B6C, 0x8B66, 0x8B6F, 0x8B5F, - 0x8B6B, 0x8D0F, 0x8D0D, 0x8E89, 0x8E81, 0x8E85, 0x8E82, 0x91B4, - 0x91CB, 0x9418, 0x9403, 0x93FD, 0x95E1, 0x9730, 0x98C4, 0x9952, - 0x9951, 0x99A8, 0x9A2B, 0x9A30, 0x9A37, 0x9A35, 0x9C13, 0x9C0D, - 0x9E79, 0x9EB5, 0x9EE8, 0x9F2F, 0x9F5F, 0x9F63, 0x9F61, 0x5137, - 0x5138, 0x56C1, 0x56C0, 0x56C2, 0x5914, 0x5C6C, 0x5DCD, 0x61FC, - 0x61FE, 0x651D, 0x651C, 0x6595, 0x66E9, 0x6AFB, 0x6B04, 0x6AFA, - 0x6BB2, 0x704C, 0x721B, 0x72A7, 0x74D6, 0x74D4, 0x7669, 0x77D3, - 0x7C50, 0x7E8F, 0x7E8C, 0x7FBC, 0x8617, 0x862D, 0x861A, 0x8823, - 0x8822, 0x8821, 0x881F, 0x896A, 0x896C, 0x89BD, 0x8B74, 0, -plane c5 -at 0x40 - 0x8B77, 0x8B7D, 0x8D13, 0x8E8A, 0x8E8D, 0x8E8B, 0x8F5F, 0x8FAF, - 0x91BA, 0x942E, 0x9433, 0x9435, 0x943A, 0x9438, 0x9432, 0x942B, - 0x95E2, 0x9738, 0x9739, 0x9732, 0x97FF, 0x9867, 0x9865, 0x9957, - 0x9A45, 0x9A43, 0x9A40, 0x9A3E, 0x9ACF, 0x9B54, 0x9B51, 0x9C2D, - 0x9C25, 0x9DAF, 0x9DB4, 0x9DC2, 0x9DB8, 0x9E9D, 0x9EEF, 0x9F19, - 0x9F5C, 0x9F66, 0x9F67, 0x513C, 0x513B, 0x56C8, 0x56CA, 0x56C9, - 0x5B7F, 0x5DD4, 0x5DD2, 0x5F4E, 0x61FF, 0x6524, 0x6B0A, 0x6B61, - 0x7051, 0x7058, 0x7380, 0x74E4, 0x758A, 0x766E, 0x766C, 0, -at 0xA0 - 0, 0x79B3, 0x7C60, 0x7C5F, 0x807E, 0x807D, 0x81DF, 0x8972, - 0x896F, 0x89FC, 0x8B80, 0x8D16, 0x8D17, 0x8E91, 0x8E93, 0x8F61, - 0x9148, 0x9444, 0x9451, 0x9452, 0x973D, 0x973E, 0x97C3, 0x97C1, - 0x986B, 0x9955, 0x9A55, 0x9A4D, 0x9AD2, 0x9B1A, 0x9C49, 0x9C31, - 0x9C3E, 0x9C3B, 0x9DD3, 0x9DD7, 0x9F34, 0x9F6C, 0x9F6A, 0x9F94, - 0x56CC, 0x5DD6, 0x6200, 0x6523, 0x652B, 0x652A, 0x66EC, 0x6B10, - 0x74DA, 0x7ACA, 0x7C64, 0x7C63, 0x7C65, 0x7E93, 0x7E96, 0x7E94, - 0x81E2, 0x8638, 0x863F, 0x8831, 0x8B8A, 0x9090, 0x908F, 0x9463, - 0x9460, 0x9464, 0x9768, 0x986F, 0x995C, 0x9A5A, 0x9A5B, 0x9A57, - 0x9AD3, 0x9AD4, 0x9AD1, 0x9C54, 0x9C57, 0x9C56, 0x9DE5, 0x9E9F, - 0x9EF4, 0x56D1, 0x58E9, 0x652C, 0x705E, 0x7671, 0x7672, 0x77D7, - 0x7F50, 0x7F88, 0x8836, 0x8839, 0x8862, 0x8B93, 0x8B92, 0, -plane c6 -at 0x40 - 0x8B96, 0x8277, 0x8D1B, 0x91C0, 0x946A, 0x9742, 0x9748, 0x9744, - 0x97C6, 0x9870, 0x9A5F, 0x9B22, 0x9B58, 0x9C5F, 0x9DF9, 0x9DFA, - 0x9E7C, 0x9E7D, 0x9F07, 0x9F77, 0x9F72, 0x5EF3, 0x6B16, 0x7063, - 0x7C6C, 0x7C6E, 0x883B, 0x89C0, 0x8EA1, 0x91C1, 0x9472, 0x9470, - 0x9871, 0x995E, 0x9AD6, 0x9B23, 0x9ECC, 0x7064, 0x77DA, 0x8B9A, - 0x9477, 0x97C9, 0x9A62, 0x9A65, 0x7E9C, 0x8B9C, 0x8EAA, 0x91C5, - 0x947D, 0x947E, 0x947C, 0x9C77, 0x9C78, 0x9EF7, 0x8C54, 0x947F, - 0x9E1A, 0x7228, 0x9A6A, 0x9B31, 0x9E1B, 0x9E1E, 0x7C72, 0, -at 0xA0 - 0, 0x30FE, 0x309D, 0x309E, 0x3005, 0x3041, 0x3042, 0x3043, - 0x3044, 0x3045, 0x3046, 0x3047, 0x3048, 0x3049, 0x304A, 0x304B, - 0x304C, 0x304D, 0x304E, 0x304F, 0x3050, 0x3051, 0x3052, 0x3053, - 0x3054, 0x3055, 0x3056, 0x3057, 0x3058, 0x3059, 0x305A, 0x305B, - 0x305C, 0x305D, 0x305E, 0x305F, 0x3060, 0x3061, 0x3062, 0x3063, - 0x3064, 0x3065, 0x3066, 0x3067, 0x3068, 0x3069, 0x306A, 0x306B, - 0x306C, 0x306D, 0x306E, 0x306F, 0x3070, 0x3071, 0x3072, 0x3073, - 0x3074, 0x3075, 0x3076, 0x3077, 0x3078, 0x3079, 0x307A, 0x307B, - 0x307C, 0x307D, 0x307E, 0x307F, 0x3080, 0x3081, 0x3082, 0x3083, - 0x3084, 0x3085, 0x3086, 0x3087, 0x3088, 0x3089, 0x308A, 0x308B, - 0x308C, 0x308D, 0x308E, 0x308F, 0x3090, 0x3091, 0x3092, 0x3093, - 0x30A1, 0x30A2, 0x30A3, 0x30A4, 0x30A5, 0x30A6, 0x30A7, 0, -plane c7 -at 0x40 - 0x30A8, 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, - 0x30B0, 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, - 0x30B8, 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, - 0x30C0, 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, - 0x30C8, 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, - 0x30D0, 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, - 0x30D8, 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, - 0x30E0, 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0, -at 0xA0 - 0, 0x30E7, 0x30E8, 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, - 0x30EE, 0x30EF, 0x30F0, 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, - 0x30F6, 0x0414, 0x0415, 0x0401, 0x0416, 0x0417, 0x0418, 0x0419, - 0x041A, 0x041B, 0x041C, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, - 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F, - 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, 0x0436, - 0x0437, 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, - 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, - 0x0447, 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, - 0x044F, 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, - 0x2467, 0x2468, 0x2469, 0x2474, 0x2475, 0x2476, 0x2477, 0x2478, - 0x2479, 0x247A, 0x247B, 0x247C, 0x247D, 0, 0, 0, -plane c8 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -at 0xA0 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane c9 -at 0x40 - 0x4E42, 0x4E5C, 0x51F5, 0x531A, 0x5382, 0x4E07, 0x4E0C, 0x4E47, - 0x4E8D, 0x56D7, 0xFA0C, 0x5C6E, 0x5F73, 0x4E0F, 0x5187, 0x4E0E, - 0x4E2E, 0x4E93, 0x4EC2, 0x4EC9, 0x4EC8, 0x5198, 0x52FC, 0x536C, - 0x53B9, 0x5720, 0x5903, 0x592C, 0x5C10, 0x5DFF, 0x65E1, 0x6BB3, - 0x6BCC, 0x6C14, 0x723F, 0x4E31, 0x4E3C, 0x4EE8, 0x4EDC, 0x4EE9, - 0x4EE1, 0x4EDD, 0x4EDA, 0x520C, 0x531C, 0x534C, 0x5722, 0x5723, - 0x5917, 0x592F, 0x5B81, 0x5B84, 0x5C12, 0x5C3B, 0x5C74, 0x5C73, - 0x5E04, 0x5E80, 0x5E82, 0x5FC9, 0x6209, 0x6250, 0x6C15, 0, -at 0xA0 - 0, 0x6C36, 0x6C43, 0x6C3F, 0x6C3B, 0x72AE, 0x72B0, 0x738A, - 0x79B8, 0x808A, 0x961E, 0x4F0E, 0x4F18, 0x4F2C, 0x4EF5, 0x4F14, - 0x4EF1, 0x4F00, 0x4EF7, 0x4F08, 0x4F1D, 0x4F02, 0x4F05, 0x4F22, - 0x4F13, 0x4F04, 0x4EF4, 0x4F12, 0x51B1, 0x5213, 0x5209, 0x5210, - 0x52A6, 0x5322, 0x531F, 0x534D, 0x538A, 0x5407, 0x56E1, 0x56DF, - 0x572E, 0x572A, 0x5734, 0x593C, 0x5980, 0x597C, 0x5985, 0x597B, - 0x597E, 0x5977, 0x597F, 0x5B56, 0x5C15, 0x5C25, 0x5C7C, 0x5C7A, - 0x5C7B, 0x5C7E, 0x5DDF, 0x5E75, 0x5E84, 0x5F02, 0x5F1A, 0x5F74, - 0x5FD5, 0x5FD4, 0x5FCF, 0x625C, 0x625E, 0x6264, 0x6261, 0x6266, - 0x6262, 0x6259, 0x6260, 0x625A, 0x6265, 0x65EF, 0x65EE, 0x673E, - 0x6739, 0x6738, 0x673B, 0x673A, 0x673F, 0x673C, 0x6733, 0x6C18, - 0x6C46, 0x6C52, 0x6C5C, 0x6C4F, 0x6C4A, 0x6C54, 0x6C4B, 0, -plane ca -at 0x40 - 0x6C4C, 0x7071, 0x725E, 0x72B4, 0x72B5, 0x738E, 0x752A, 0x767F, - 0x7A75, 0x7F51, 0x8278, 0x827C, 0x8280, 0x827D, 0x827F, 0x864D, - 0x897E, 0x9099, 0x9097, 0x9098, 0x909B, 0x9094, 0x9622, 0x9624, - 0x9620, 0x9623, 0x4F56, 0x4F3B, 0x4F62, 0x4F49, 0x4F53, 0x4F64, - 0x4F3E, 0x4F67, 0x4F52, 0x4F5F, 0x4F41, 0x4F58, 0x4F2D, 0x4F33, - 0x4F3F, 0x4F61, 0x518F, 0x51B9, 0x521C, 0x521E, 0x5221, 0x52AD, - 0x52AE, 0x5309, 0x5363, 0x5372, 0x538E, 0x538F, 0x5430, 0x5437, - 0x542A, 0x5454, 0x5445, 0x5419, 0x541C, 0x5425, 0x5418, 0, -at 0xA0 - 0, 0x543D, 0x544F, 0x5441, 0x5428, 0x5424, 0x5447, 0x56EE, - 0x56E7, 0x56E5, 0x5741, 0x5745, 0x574C, 0x5749, 0x574B, 0x5752, - 0x5906, 0x5940, 0x59A6, 0x5998, 0x59A0, 0x5997, 0x598E, 0x59A2, - 0x5990, 0x598F, 0x59A7, 0x59A1, 0x5B8E, 0x5B92, 0x5C28, 0x5C2A, - 0x5C8D, 0x5C8F, 0x5C88, 0x5C8B, 0x5C89, 0x5C92, 0x5C8A, 0x5C86, - 0x5C93, 0x5C95, 0x5DE0, 0x5E0A, 0x5E0E, 0x5E8B, 0x5E89, 0x5E8C, - 0x5E88, 0x5E8D, 0x5F05, 0x5F1D, 0x5F78, 0x5F76, 0x5FD2, 0x5FD1, - 0x5FD0, 0x5FED, 0x5FE8, 0x5FEE, 0x5FF3, 0x5FE1, 0x5FE4, 0x5FE3, - 0x5FFA, 0x5FEF, 0x5FF7, 0x5FFB, 0x6000, 0x5FF4, 0x623A, 0x6283, - 0x628C, 0x628E, 0x628F, 0x6294, 0x6287, 0x6271, 0x627B, 0x627A, - 0x6270, 0x6281, 0x6288, 0x6277, 0x627D, 0x6272, 0x6274, 0x6537, - 0x65F0, 0x65F4, 0x65F3, 0x65F2, 0x65F5, 0x6745, 0x6747, 0, -plane cb -at 0x40 - 0x6759, 0x6755, 0x674C, 0x6748, 0x675D, 0x674D, 0x675A, 0x674B, - 0x6BD0, 0x6C19, 0x6C1A, 0x6C78, 0x6C67, 0x6C6B, 0x6C84, 0x6C8B, - 0x6C8F, 0x6C71, 0x6C6F, 0x6C69, 0x6C9A, 0x6C6D, 0x6C87, 0x6C95, - 0x6C9C, 0x6C66, 0x6C73, 0x6C65, 0x6C7B, 0x6C8E, 0x7074, 0x707A, - 0x7263, 0x72BF, 0x72BD, 0x72C3, 0x72C6, 0x72C1, 0x72BA, 0x72C5, - 0x7395, 0x7397, 0x7393, 0x7394, 0x7392, 0x753A, 0x7539, 0x7594, - 0x7595, 0x7681, 0x793D, 0x8034, 0x8095, 0x8099, 0x8090, 0x8092, - 0x809C, 0x8290, 0x828F, 0x8285, 0x828E, 0x8291, 0x8293, 0, -at 0xA0 - 0, 0x828A, 0x8283, 0x8284, 0x8C78, 0x8FC9, 0x8FBF, 0x909F, - 0x90A1, 0x90A5, 0x909E, 0x90A7, 0x90A0, 0x9630, 0x9628, 0x962F, - 0x962D, 0x4E33, 0x4F98, 0x4F7C, 0x4F85, 0x4F7D, 0x4F80, 0x4F87, - 0x4F76, 0x4F74, 0x4F89, 0x4F84, 0x4F77, 0x4F4C, 0x4F97, 0x4F6A, - 0x4F9A, 0x4F79, 0x4F81, 0x4F78, 0x4F90, 0x4F9C, 0x4F94, 0x4F9E, - 0x4F92, 0x4F82, 0x4F95, 0x4F6B, 0x4F6E, 0x519E, 0x51BC, 0x51BE, - 0x5235, 0x5232, 0x5233, 0x5246, 0x5231, 0x52BC, 0x530A, 0x530B, - 0x533C, 0x5392, 0x5394, 0x5487, 0x547F, 0x5481, 0x5491, 0x5482, - 0x5488, 0x546B, 0x547A, 0x547E, 0x5465, 0x546C, 0x5474, 0x5466, - 0x548D, 0x546F, 0x5461, 0x5460, 0x5498, 0x5463, 0x5467, 0x5464, - 0x56F7, 0x56F9, 0x576F, 0x5772, 0x576D, 0x576B, 0x5771, 0x5770, - 0x5776, 0x5780, 0x5775, 0x577B, 0x5773, 0x5774, 0x5762, 0, -plane cc -at 0x40 - 0x5768, 0x577D, 0x590C, 0x5945, 0x59B5, 0x59BA, 0x59CF, 0x59CE, - 0x59B2, 0x59CC, 0x59C1, 0x59B6, 0x59BC, 0x59C3, 0x59D6, 0x59B1, - 0x59BD, 0x59C0, 0x59C8, 0x59B4, 0x59C7, 0x5B62, 0x5B65, 0x5B93, - 0x5B95, 0x5C44, 0x5C47, 0x5CAE, 0x5CA4, 0x5CA0, 0x5CB5, 0x5CAF, - 0x5CA8, 0x5CAC, 0x5C9F, 0x5CA3, 0x5CAD, 0x5CA2, 0x5CAA, 0x5CA7, - 0x5C9D, 0x5CA5, 0x5CB6, 0x5CB0, 0x5CA6, 0x5E17, 0x5E14, 0x5E19, - 0x5F28, 0x5F22, 0x5F23, 0x5F24, 0x5F54, 0x5F82, 0x5F7E, 0x5F7D, - 0x5FDE, 0x5FE5, 0x602D, 0x6026, 0x6019, 0x6032, 0x600B, 0, -at 0xA0 - 0, 0x6034, 0x600A, 0x6017, 0x6033, 0x601A, 0x601E, 0x602C, - 0x6022, 0x600D, 0x6010, 0x602E, 0x6013, 0x6011, 0x600C, 0x6009, - 0x601C, 0x6214, 0x623D, 0x62AD, 0x62B4, 0x62D1, 0x62BE, 0x62AA, - 0x62B6, 0x62CA, 0x62AE, 0x62B3, 0x62AF, 0x62BB, 0x62A9, 0x62B0, - 0x62B8, 0x653D, 0x65A8, 0x65BB, 0x6609, 0x65FC, 0x6604, 0x6612, - 0x6608, 0x65FB, 0x6603, 0x660B, 0x660D, 0x6605, 0x65FD, 0x6611, - 0x6610, 0x66F6, 0x670A, 0x6785, 0x676C, 0x678E, 0x6792, 0x6776, - 0x677B, 0x6798, 0x6786, 0x6784, 0x6774, 0x678D, 0x678C, 0x677A, - 0x679F, 0x6791, 0x6799, 0x6783, 0x677D, 0x6781, 0x6778, 0x6779, - 0x6794, 0x6B25, 0x6B80, 0x6B7E, 0x6BDE, 0x6C1D, 0x6C93, 0x6CEC, - 0x6CEB, 0x6CEE, 0x6CD9, 0x6CB6, 0x6CD4, 0x6CAD, 0x6CE7, 0x6CB7, - 0x6CD0, 0x6CC2, 0x6CBA, 0x6CC3, 0x6CC6, 0x6CED, 0x6CF2, 0, -plane cd -at 0x40 - 0x6CD2, 0x6CDD, 0x6CB4, 0x6C8A, 0x6C9D, 0x6C80, 0x6CDE, 0x6CC0, - 0x6D30, 0x6CCD, 0x6CC7, 0x6CB0, 0x6CF9, 0x6CCF, 0x6CE9, 0x6CD1, - 0x7094, 0x7098, 0x7085, 0x7093, 0x7086, 0x7084, 0x7091, 0x7096, - 0x7082, 0x709A, 0x7083, 0x726A, 0x72D6, 0x72CB, 0x72D8, 0x72C9, - 0x72DC, 0x72D2, 0x72D4, 0x72DA, 0x72CC, 0x72D1, 0x73A4, 0x73A1, - 0x73AD, 0x73A6, 0x73A2, 0x73A0, 0x73AC, 0x739D, 0x74DD, 0x74E8, - 0x753F, 0x7540, 0x753E, 0x758C, 0x7598, 0x76AF, 0x76F3, 0x76F1, - 0x76F0, 0x76F5, 0x77F8, 0x77FC, 0x77F9, 0x77FB, 0x77FA, 0, -at 0xA0 - 0, 0x77F7, 0x7942, 0x793F, 0x79C5, 0x7A78, 0x7A7B, 0x7AFB, - 0x7C75, 0x7CFD, 0x8035, 0x808F, 0x80AE, 0x80A3, 0x80B8, 0x80B5, - 0x80AD, 0x8220, 0x82A0, 0x82C0, 0x82AB, 0x829A, 0x8298, 0x829B, - 0x82B5, 0x82A7, 0x82AE, 0x82BC, 0x829E, 0x82BA, 0x82B4, 0x82A8, - 0x82A1, 0x82A9, 0x82C2, 0x82A4, 0x82C3, 0x82B6, 0x82A2, 0x8670, - 0x866F, 0x866D, 0x866E, 0x8C56, 0x8FD2, 0x8FCB, 0x8FD3, 0x8FCD, - 0x8FD6, 0x8FD5, 0x8FD7, 0x90B2, 0x90B4, 0x90AF, 0x90B3, 0x90B0, - 0x9639, 0x963D, 0x963C, 0x963A, 0x9643, 0x4FCD, 0x4FC5, 0x4FD3, - 0x4FB2, 0x4FC9, 0x4FCB, 0x4FC1, 0x4FD4, 0x4FDC, 0x4FD9, 0x4FBB, - 0x4FB3, 0x4FDB, 0x4FC7, 0x4FD6, 0x4FBA, 0x4FC0, 0x4FB9, 0x4FEC, - 0x5244, 0x5249, 0x52C0, 0x52C2, 0x533D, 0x537C, 0x5397, 0x5396, - 0x5399, 0x5398, 0x54BA, 0x54A1, 0x54AD, 0x54A5, 0x54CF, 0, -plane ce -at 0x40 - 0x54C3, 0x830D, 0x54B7, 0x54AE, 0x54D6, 0x54B6, 0x54C5, 0x54C6, - 0x54A0, 0x5470, 0x54BC, 0x54A2, 0x54BE, 0x5472, 0x54DE, 0x54B0, - 0x57B5, 0x579E, 0x579F, 0x57A4, 0x578C, 0x5797, 0x579D, 0x579B, - 0x5794, 0x5798, 0x578F, 0x5799, 0x57A5, 0x579A, 0x5795, 0x58F4, - 0x590D, 0x5953, 0x59E1, 0x59DE, 0x59EE, 0x5A00, 0x59F1, 0x59DD, - 0x59FA, 0x59FD, 0x59FC, 0x59F6, 0x59E4, 0x59F2, 0x59F7, 0x59DB, - 0x59E9, 0x59F3, 0x59F5, 0x59E0, 0x59FE, 0x59F4, 0x59ED, 0x5BA8, - 0x5C4C, 0x5CD0, 0x5CD8, 0x5CCC, 0x5CD7, 0x5CCB, 0x5CDB, 0, -at 0xA0 - 0, 0x5CDE, 0x5CDA, 0x5CC9, 0x5CC7, 0x5CCA, 0x5CD6, 0x5CD3, - 0x5CD4, 0x5CCF, 0x5CC8, 0x5CC6, 0x5CCE, 0x5CDF, 0x5CF8, 0x5DF9, - 0x5E21, 0x5E22, 0x5E23, 0x5E20, 0x5E24, 0x5EB0, 0x5EA4, 0x5EA2, - 0x5E9B, 0x5EA3, 0x5EA5, 0x5F07, 0x5F2E, 0x5F56, 0x5F86, 0x6037, - 0x6039, 0x6054, 0x6072, 0x605E, 0x6045, 0x6053, 0x6047, 0x6049, - 0x605B, 0x604C, 0x6040, 0x6042, 0x605F, 0x6024, 0x6044, 0x6058, - 0x6066, 0x606E, 0x6242, 0x6243, 0x62CF, 0x630D, 0x630B, 0x62F5, - 0x630E, 0x6303, 0x62EB, 0x62F9, 0x630F, 0x630C, 0x62F8, 0x62F6, - 0x6300, 0x6313, 0x6314, 0x62FA, 0x6315, 0x62FB, 0x62F0, 0x6541, - 0x6543, 0x65AA, 0x65BF, 0x6636, 0x6621, 0x6632, 0x6635, 0x661C, - 0x6626, 0x6622, 0x6633, 0x662B, 0x663A, 0x661D, 0x6634, 0x6639, - 0x662E, 0x670F, 0x6710, 0x67C1, 0x67F2, 0x67C8, 0x67BA, 0, -plane cf -at 0x40 - 0x67DC, 0x67BB, 0x67F8, 0x67D8, 0x67C0, 0x67B7, 0x67C5, 0x67EB, - 0x67E4, 0x67DF, 0x67B5, 0x67CD, 0x67B3, 0x67F7, 0x67F6, 0x67EE, - 0x67E3, 0x67C2, 0x67B9, 0x67CE, 0x67E7, 0x67F0, 0x67B2, 0x67FC, - 0x67C6, 0x67ED, 0x67CC, 0x67AE, 0x67E6, 0x67DB, 0x67FA, 0x67C9, - 0x67CA, 0x67C3, 0x67EA, 0x67CB, 0x6B28, 0x6B82, 0x6B84, 0x6BB6, - 0x6BD6, 0x6BD8, 0x6BE0, 0x6C20, 0x6C21, 0x6D28, 0x6D34, 0x6D2D, - 0x6D1F, 0x6D3C, 0x6D3F, 0x6D12, 0x6D0A, 0x6CDA, 0x6D33, 0x6D04, - 0x6D19, 0x6D3A, 0x6D1A, 0x6D11, 0x6D00, 0x6D1D, 0x6D42, 0, -at 0xA0 - 0, 0x6D01, 0x6D18, 0x6D37, 0x6D03, 0x6D0F, 0x6D40, 0x6D07, - 0x6D20, 0x6D2C, 0x6D08, 0x6D22, 0x6D09, 0x6D10, 0x70B7, 0x709F, - 0x70BE, 0x70B1, 0x70B0, 0x70A1, 0x70B4, 0x70B5, 0x70A9, 0x7241, - 0x7249, 0x724A, 0x726C, 0x7270, 0x7273, 0x726E, 0x72CA, 0x72E4, - 0x72E8, 0x72EB, 0x72DF, 0x72EA, 0x72E6, 0x72E3, 0x7385, 0x73CC, - 0x73C2, 0x73C8, 0x73C5, 0x73B9, 0x73B6, 0x73B5, 0x73B4, 0x73EB, - 0x73BF, 0x73C7, 0x73BE, 0x73C3, 0x73C6, 0x73B8, 0x73CB, 0x74EC, - 0x74EE, 0x752E, 0x7547, 0x7548, 0x75A7, 0x75AA, 0x7679, 0x76C4, - 0x7708, 0x7703, 0x7704, 0x7705, 0x770A, 0x76F7, 0x76FB, 0x76FA, - 0x77E7, 0x77E8, 0x7806, 0x7811, 0x7812, 0x7805, 0x7810, 0x780F, - 0x780E, 0x7809, 0x7803, 0x7813, 0x794A, 0x794C, 0x794B, 0x7945, - 0x7944, 0x79D5, 0x79CD, 0x79CF, 0x79D6, 0x79CE, 0x7A80, 0, -plane d0 -at 0x40 - 0x7A7E, 0x7AD1, 0x7B00, 0x7B01, 0x7C7A, 0x7C78, 0x7C79, 0x7C7F, - 0x7C80, 0x7C81, 0x7D03, 0x7D08, 0x7D01, 0x7F58, 0x7F91, 0x7F8D, - 0x7FBE, 0x8007, 0x800E, 0x800F, 0x8014, 0x8037, 0x80D8, 0x80C7, - 0x80E0, 0x80D1, 0x80C8, 0x80C2, 0x80D0, 0x80C5, 0x80E3, 0x80D9, - 0x80DC, 0x80CA, 0x80D5, 0x80C9, 0x80CF, 0x80D7, 0x80E6, 0x80CD, - 0x81FF, 0x8221, 0x8294, 0x82D9, 0x82FE, 0x82F9, 0x8307, 0x82E8, - 0x8300, 0x82D5, 0x833A, 0x82EB, 0x82D6, 0x82F4, 0x82EC, 0x82E1, - 0x82F2, 0x82F5, 0x830C, 0x82FB, 0x82F6, 0x82F0, 0x82EA, 0, -at 0xA0 - 0, 0x82E4, 0x82E0, 0x82FA, 0x82F3, 0x82ED, 0x8677, 0x8674, - 0x867C, 0x8673, 0x8841, 0x884E, 0x8867, 0x886A, 0x8869, 0x89D3, - 0x8A04, 0x8A07, 0x8D72, 0x8FE3, 0x8FE1, 0x8FEE, 0x8FE0, 0x90F1, - 0x90BD, 0x90BF, 0x90D5, 0x90C5, 0x90BE, 0x90C7, 0x90CB, 0x90C8, - 0x91D4, 0x91D3, 0x9654, 0x964F, 0x9651, 0x9653, 0x964A, 0x964E, - 0x501E, 0x5005, 0x5007, 0x5013, 0x5022, 0x5030, 0x501B, 0x4FF5, - 0x4FF4, 0x5033, 0x5037, 0x502C, 0x4FF6, 0x4FF7, 0x5017, 0x501C, - 0x5020, 0x5027, 0x5035, 0x502F, 0x5031, 0x500E, 0x515A, 0x5194, - 0x5193, 0x51CA, 0x51C4, 0x51C5, 0x51C8, 0x51CE, 0x5261, 0x525A, - 0x5252, 0x525E, 0x525F, 0x5255, 0x5262, 0x52CD, 0x530E, 0x539E, - 0x5526, 0x54E2, 0x5517, 0x5512, 0x54E7, 0x54F3, 0x54E4, 0x551A, - 0x54FF, 0x5504, 0x5508, 0x54EB, 0x5511, 0x5505, 0x54F1, 0, -plane d1 -at 0x40 - 0x550A, 0x54FB, 0x54F7, 0x54F8, 0x54E0, 0x550E, 0x5503, 0x550B, - 0x5701, 0x5702, 0x57CC, 0x5832, 0x57D5, 0x57D2, 0x57BA, 0x57C6, - 0x57BD, 0x57BC, 0x57B8, 0x57B6, 0x57BF, 0x57C7, 0x57D0, 0x57B9, - 0x57C1, 0x590E, 0x594A, 0x5A19, 0x5A16, 0x5A2D, 0x5A2E, 0x5A15, - 0x5A0F, 0x5A17, 0x5A0A, 0x5A1E, 0x5A33, 0x5B6C, 0x5BA7, 0x5BAD, - 0x5BAC, 0x5C03, 0x5C56, 0x5C54, 0x5CEC, 0x5CFF, 0x5CEE, 0x5CF1, - 0x5CF7, 0x5D00, 0x5CF9, 0x5E29, 0x5E28, 0x5EA8, 0x5EAE, 0x5EAA, - 0x5EAC, 0x5F33, 0x5F30, 0x5F67, 0x605D, 0x605A, 0x6067, 0, -at 0xA0 - 0, 0x6041, 0x60A2, 0x6088, 0x6080, 0x6092, 0x6081, 0x609D, - 0x6083, 0x6095, 0x609B, 0x6097, 0x6087, 0x609C, 0x608E, 0x6219, - 0x6246, 0x62F2, 0x6310, 0x6356, 0x632C, 0x6344, 0x6345, 0x6336, - 0x6343, 0x63E4, 0x6339, 0x634B, 0x634A, 0x633C, 0x6329, 0x6341, - 0x6334, 0x6358, 0x6354, 0x6359, 0x632D, 0x6347, 0x6333, 0x635A, - 0x6351, 0x6338, 0x6357, 0x6340, 0x6348, 0x654A, 0x6546, 0x65C6, - 0x65C3, 0x65C4, 0x65C2, 0x664A, 0x665F, 0x6647, 0x6651, 0x6712, - 0x6713, 0x681F, 0x681A, 0x6849, 0x6832, 0x6833, 0x683B, 0x684B, - 0x684F, 0x6816, 0x6831, 0x681C, 0x6835, 0x682B, 0x682D, 0x682F, - 0x684E, 0x6844, 0x6834, 0x681D, 0x6812, 0x6814, 0x6826, 0x6828, - 0x682E, 0x684D, 0x683A, 0x6825, 0x6820, 0x6B2C, 0x6B2F, 0x6B2D, - 0x6B31, 0x6B34, 0x6B6D, 0x8082, 0x6B88, 0x6BE6, 0x6BE4, 0, -plane d2 -at 0x40 - 0x6BE8, 0x6BE3, 0x6BE2, 0x6BE7, 0x6C25, 0x6D7A, 0x6D63, 0x6D64, - 0x6D76, 0x6D0D, 0x6D61, 0x6D92, 0x6D58, 0x6D62, 0x6D6D, 0x6D6F, - 0x6D91, 0x6D8D, 0x6DEF, 0x6D7F, 0x6D86, 0x6D5E, 0x6D67, 0x6D60, - 0x6D97, 0x6D70, 0x6D7C, 0x6D5F, 0x6D82, 0x6D98, 0x6D2F, 0x6D68, - 0x6D8B, 0x6D7E, 0x6D80, 0x6D84, 0x6D16, 0x6D83, 0x6D7B, 0x6D7D, - 0x6D75, 0x6D90, 0x70DC, 0x70D3, 0x70D1, 0x70DD, 0x70CB, 0x7F39, - 0x70E2, 0x70D7, 0x70D2, 0x70DE, 0x70E0, 0x70D4, 0x70CD, 0x70C5, - 0x70C6, 0x70C7, 0x70DA, 0x70CE, 0x70E1, 0x7242, 0x7278, 0, -at 0xA0 - 0, 0x7277, 0x7276, 0x7300, 0x72FA, 0x72F4, 0x72FE, 0x72F6, - 0x72F3, 0x72FB, 0x7301, 0x73D3, 0x73D9, 0x73E5, 0x73D6, 0x73BC, - 0x73E7, 0x73E3, 0x73E9, 0x73DC, 0x73D2, 0x73DB, 0x73D4, 0x73DD, - 0x73DA, 0x73D7, 0x73D8, 0x73E8, 0x74DE, 0x74DF, 0x74F4, 0x74F5, - 0x7521, 0x755B, 0x755F, 0x75B0, 0x75C1, 0x75BB, 0x75C4, 0x75C0, - 0x75BF, 0x75B6, 0x75BA, 0x768A, 0x76C9, 0x771D, 0x771B, 0x7710, - 0x7713, 0x7712, 0x7723, 0x7711, 0x7715, 0x7719, 0x771A, 0x7722, - 0x7727, 0x7823, 0x782C, 0x7822, 0x7835, 0x782F, 0x7828, 0x782E, - 0x782B, 0x7821, 0x7829, 0x7833, 0x782A, 0x7831, 0x7954, 0x795B, - 0x794F, 0x795C, 0x7953, 0x7952, 0x7951, 0x79EB, 0x79EC, 0x79E0, - 0x79EE, 0x79ED, 0x79EA, 0x79DC, 0x79DE, 0x79DD, 0x7A86, 0x7A89, - 0x7A85, 0x7A8B, 0x7A8C, 0x7A8A, 0x7A87, 0x7AD8, 0x7B10, 0, -plane d3 -at 0x40 - 0x7B04, 0x7B13, 0x7B05, 0x7B0F, 0x7B08, 0x7B0A, 0x7B0E, 0x7B09, - 0x7B12, 0x7C84, 0x7C91, 0x7C8A, 0x7C8C, 0x7C88, 0x7C8D, 0x7C85, - 0x7D1E, 0x7D1D, 0x7D11, 0x7D0E, 0x7D18, 0x7D16, 0x7D13, 0x7D1F, - 0x7D12, 0x7D0F, 0x7D0C, 0x7F5C, 0x7F61, 0x7F5E, 0x7F60, 0x7F5D, - 0x7F5B, 0x7F96, 0x7F92, 0x7FC3, 0x7FC2, 0x7FC0, 0x8016, 0x803E, - 0x8039, 0x80FA, 0x80F2, 0x80F9, 0x80F5, 0x8101, 0x80FB, 0x8100, - 0x8201, 0x822F, 0x8225, 0x8333, 0x832D, 0x8344, 0x8319, 0x8351, - 0x8325, 0x8356, 0x833F, 0x8341, 0x8326, 0x831C, 0x8322, 0, -at 0xA0 - 0, 0x8342, 0x834E, 0x831B, 0x832A, 0x8308, 0x833C, 0x834D, - 0x8316, 0x8324, 0x8320, 0x8337, 0x832F, 0x8329, 0x8347, 0x8345, - 0x834C, 0x8353, 0x831E, 0x832C, 0x834B, 0x8327, 0x8348, 0x8653, - 0x8652, 0x86A2, 0x86A8, 0x8696, 0x868D, 0x8691, 0x869E, 0x8687, - 0x8697, 0x8686, 0x868B, 0x869A, 0x8685, 0x86A5, 0x8699, 0x86A1, - 0x86A7, 0x8695, 0x8698, 0x868E, 0x869D, 0x8690, 0x8694, 0x8843, - 0x8844, 0x886D, 0x8875, 0x8876, 0x8872, 0x8880, 0x8871, 0x887F, - 0x886F, 0x8883, 0x887E, 0x8874, 0x887C, 0x8A12, 0x8C47, 0x8C57, - 0x8C7B, 0x8CA4, 0x8CA3, 0x8D76, 0x8D78, 0x8DB5, 0x8DB7, 0x8DB6, - 0x8ED1, 0x8ED3, 0x8FFE, 0x8FF5, 0x9002, 0x8FFF, 0x8FFB, 0x9004, - 0x8FFC, 0x8FF6, 0x90D6, 0x90E0, 0x90D9, 0x90DA, 0x90E3, 0x90DF, - 0x90E5, 0x90D8, 0x90DB, 0x90D7, 0x90DC, 0x90E4, 0x9150, 0, -plane d4 -at 0x40 - 0x914E, 0x914F, 0x91D5, 0x91E2, 0x91DA, 0x965C, 0x965F, 0x96BC, - 0x98E3, 0x9ADF, 0x9B2F, 0x4E7F, 0x5070, 0x506A, 0x5061, 0x505E, - 0x5060, 0x5053, 0x504B, 0x505D, 0x5072, 0x5048, 0x504D, 0x5041, - 0x505B, 0x504A, 0x5062, 0x5015, 0x5045, 0x505F, 0x5069, 0x506B, - 0x5063, 0x5064, 0x5046, 0x5040, 0x506E, 0x5073, 0x5057, 0x5051, - 0x51D0, 0x526B, 0x526D, 0x526C, 0x526E, 0x52D6, 0x52D3, 0x532D, - 0x539C, 0x5575, 0x5576, 0x553C, 0x554D, 0x5550, 0x5534, 0x552A, - 0x5551, 0x5562, 0x5536, 0x5535, 0x5530, 0x5552, 0x5545, 0, -at 0xA0 - 0, 0x550C, 0x5532, 0x5565, 0x554E, 0x5539, 0x5548, 0x552D, - 0x553B, 0x5540, 0x554B, 0x570A, 0x5707, 0x57FB, 0x5814, 0x57E2, - 0x57F6, 0x57DC, 0x57F4, 0x5800, 0x57ED, 0x57FD, 0x5808, 0x57F8, - 0x580B, 0x57F3, 0x57CF, 0x5807, 0x57EE, 0x57E3, 0x57F2, 0x57E5, - 0x57EC, 0x57E1, 0x580E, 0x57FC, 0x5810, 0x57E7, 0x5801, 0x580C, - 0x57F1, 0x57E9, 0x57F0, 0x580D, 0x5804, 0x595C, 0x5A60, 0x5A58, - 0x5A55, 0x5A67, 0x5A5E, 0x5A38, 0x5A35, 0x5A6D, 0x5A50, 0x5A5F, - 0x5A65, 0x5A6C, 0x5A53, 0x5A64, 0x5A57, 0x5A43, 0x5A5D, 0x5A52, - 0x5A44, 0x5A5B, 0x5A48, 0x5A8E, 0x5A3E, 0x5A4D, 0x5A39, 0x5A4C, - 0x5A70, 0x5A69, 0x5A47, 0x5A51, 0x5A56, 0x5A42, 0x5A5C, 0x5B72, - 0x5B6E, 0x5BC1, 0x5BC0, 0x5C59, 0x5D1E, 0x5D0B, 0x5D1D, 0x5D1A, - 0x5D20, 0x5D0C, 0x5D28, 0x5D0D, 0x5D26, 0x5D25, 0x5D0F, 0, -plane d5 -at 0x40 - 0x5D30, 0x5D12, 0x5D23, 0x5D1F, 0x5D2E, 0x5E3E, 0x5E34, 0x5EB1, - 0x5EB4, 0x5EB9, 0x5EB2, 0x5EB3, 0x5F36, 0x5F38, 0x5F9B, 0x5F96, - 0x5F9F, 0x608A, 0x6090, 0x6086, 0x60BE, 0x60B0, 0x60BA, 0x60D3, - 0x60D4, 0x60CF, 0x60E4, 0x60D9, 0x60DD, 0x60C8, 0x60B1, 0x60DB, - 0x60B7, 0x60CA, 0x60BF, 0x60C3, 0x60CD, 0x60C0, 0x6332, 0x6365, - 0x638A, 0x6382, 0x637D, 0x63BD, 0x639E, 0x63AD, 0x639D, 0x6397, - 0x63AB, 0x638E, 0x636F, 0x6387, 0x6390, 0x636E, 0x63AF, 0x6375, - 0x639C, 0x636D, 0x63AE, 0x637C, 0x63A4, 0x633B, 0x639F, 0, -at 0xA0 - 0, 0x6378, 0x6385, 0x6381, 0x6391, 0x638D, 0x6370, 0x6553, - 0x65CD, 0x6665, 0x6661, 0x665B, 0x6659, 0x665C, 0x6662, 0x6718, - 0x6879, 0x6887, 0x6890, 0x689C, 0x686D, 0x686E, 0x68AE, 0x68AB, - 0x6956, 0x686F, 0x68A3, 0x68AC, 0x68A9, 0x6875, 0x6874, 0x68B2, - 0x688F, 0x6877, 0x6892, 0x687C, 0x686B, 0x6872, 0x68AA, 0x6880, - 0x6871, 0x687E, 0x689B, 0x6896, 0x688B, 0x68A0, 0x6889, 0x68A4, - 0x6878, 0x687B, 0x6891, 0x688C, 0x688A, 0x687D, 0x6B36, 0x6B33, - 0x6B37, 0x6B38, 0x6B91, 0x6B8F, 0x6B8D, 0x6B8E, 0x6B8C, 0x6C2A, - 0x6DC0, 0x6DAB, 0x6DB4, 0x6DB3, 0x6E74, 0x6DAC, 0x6DE9, 0x6DE2, - 0x6DB7, 0x6DF6, 0x6DD4, 0x6E00, 0x6DC8, 0x6DE0, 0x6DDF, 0x6DD6, - 0x6DBE, 0x6DE5, 0x6DDC, 0x6DDD, 0x6DDB, 0x6DF4, 0x6DCA, 0x6DBD, - 0x6DED, 0x6DF0, 0x6DBA, 0x6DD5, 0x6DC2, 0x6DCF, 0x6DC9, 0, -plane d6 -at 0x40 - 0x6DD0, 0x6DF2, 0x6DD3, 0x6DFD, 0x6DD7, 0x6DCD, 0x6DE3, 0x6DBB, - 0x70FA, 0x710D, 0x70F7, 0x7117, 0x70F4, 0x710C, 0x70F0, 0x7104, - 0x70F3, 0x7110, 0x70FC, 0x70FF, 0x7106, 0x7113, 0x7100, 0x70F8, - 0x70F6, 0x710B, 0x7102, 0x710E, 0x727E, 0x727B, 0x727C, 0x727F, - 0x731D, 0x7317, 0x7307, 0x7311, 0x7318, 0x730A, 0x7308, 0x72FF, - 0x730F, 0x731E, 0x7388, 0x73F6, 0x73F8, 0x73F5, 0x7404, 0x7401, - 0x73FD, 0x7407, 0x7400, 0x73FA, 0x73FC, 0x73FF, 0x740C, 0x740B, - 0x73F4, 0x7408, 0x7564, 0x7563, 0x75CE, 0x75D2, 0x75CF, 0, -at 0xA0 - 0, 0x75CB, 0x75CC, 0x75D1, 0x75D0, 0x768F, 0x7689, 0x76D3, - 0x7739, 0x772F, 0x772D, 0x7731, 0x7732, 0x7734, 0x7733, 0x773D, - 0x7725, 0x773B, 0x7735, 0x7848, 0x7852, 0x7849, 0x784D, 0x784A, - 0x784C, 0x7826, 0x7845, 0x7850, 0x7964, 0x7967, 0x7969, 0x796A, - 0x7963, 0x796B, 0x7961, 0x79BB, 0x79FA, 0x79F8, 0x79F6, 0x79F7, - 0x7A8F, 0x7A94, 0x7A90, 0x7B35, 0x7B47, 0x7B34, 0x7B25, 0x7B30, - 0x7B22, 0x7B24, 0x7B33, 0x7B18, 0x7B2A, 0x7B1D, 0x7B31, 0x7B2B, - 0x7B2D, 0x7B2F, 0x7B32, 0x7B38, 0x7B1A, 0x7B23, 0x7C94, 0x7C98, - 0x7C96, 0x7CA3, 0x7D35, 0x7D3D, 0x7D38, 0x7D36, 0x7D3A, 0x7D45, - 0x7D2C, 0x7D29, 0x7D41, 0x7D47, 0x7D3E, 0x7D3F, 0x7D4A, 0x7D3B, - 0x7D28, 0x7F63, 0x7F95, 0x7F9C, 0x7F9D, 0x7F9B, 0x7FCA, 0x7FCB, - 0x7FCD, 0x7FD0, 0x7FD1, 0x7FC7, 0x7FCF, 0x7FC9, 0x801F, 0, -plane d7 -at 0x40 - 0x801E, 0x801B, 0x8047, 0x8043, 0x8048, 0x8118, 0x8125, 0x8119, - 0x811B, 0x812D, 0x811F, 0x812C, 0x811E, 0x8121, 0x8115, 0x8127, - 0x811D, 0x8122, 0x8211, 0x8238, 0x8233, 0x823A, 0x8234, 0x8232, - 0x8274, 0x8390, 0x83A3, 0x83A8, 0x838D, 0x837A, 0x8373, 0x83A4, - 0x8374, 0x838F, 0x8381, 0x8395, 0x8399, 0x8375, 0x8394, 0x83A9, - 0x837D, 0x8383, 0x838C, 0x839D, 0x839B, 0x83AA, 0x838B, 0x837E, - 0x83A5, 0x83AF, 0x8388, 0x8397, 0x83B0, 0x837F, 0x83A6, 0x8387, - 0x83AE, 0x8376, 0x839A, 0x8659, 0x8656, 0x86BF, 0x86B7, 0, -at 0xA0 - 0, 0x86C2, 0x86C1, 0x86C5, 0x86BA, 0x86B0, 0x86C8, 0x86B9, - 0x86B3, 0x86B8, 0x86CC, 0x86B4, 0x86BB, 0x86BC, 0x86C3, 0x86BD, - 0x86BE, 0x8852, 0x8889, 0x8895, 0x88A8, 0x88A2, 0x88AA, 0x889A, - 0x8891, 0x88A1, 0x889F, 0x8898, 0x88A7, 0x8899, 0x889B, 0x8897, - 0x88A4, 0x88AC, 0x888C, 0x8893, 0x888E, 0x8982, 0x89D6, 0x89D9, - 0x89D5, 0x8A30, 0x8A27, 0x8A2C, 0x8A1E, 0x8C39, 0x8C3B, 0x8C5C, - 0x8C5D, 0x8C7D, 0x8CA5, 0x8D7D, 0x8D7B, 0x8D79, 0x8DBC, 0x8DC2, - 0x8DB9, 0x8DBF, 0x8DC1, 0x8ED8, 0x8EDE, 0x8EDD, 0x8EDC, 0x8ED7, - 0x8EE0, 0x8EE1, 0x9024, 0x900B, 0x9011, 0x901C, 0x900C, 0x9021, - 0x90EF, 0x90EA, 0x90F0, 0x90F4, 0x90F2, 0x90F3, 0x90D4, 0x90EB, - 0x90EC, 0x90E9, 0x9156, 0x9158, 0x915A, 0x9153, 0x9155, 0x91EC, - 0x91F4, 0x91F1, 0x91F3, 0x91F8, 0x91E4, 0x91F9, 0x91EA, 0, -plane d8 -at 0x40 - 0x91EB, 0x91F7, 0x91E8, 0x91EE, 0x957A, 0x9586, 0x9588, 0x967C, - 0x966D, 0x966B, 0x9671, 0x966F, 0x96BF, 0x976A, 0x9804, 0x98E5, - 0x9997, 0x509B, 0x5095, 0x5094, 0x509E, 0x508B, 0x50A3, 0x5083, - 0x508C, 0x508E, 0x509D, 0x5068, 0x509C, 0x5092, 0x5082, 0x5087, - 0x515F, 0x51D4, 0x5312, 0x5311, 0x53A4, 0x53A7, 0x5591, 0x55A8, - 0x55A5, 0x55AD, 0x5577, 0x5645, 0x55A2, 0x5593, 0x5588, 0x558F, - 0x55B5, 0x5581, 0x55A3, 0x5592, 0x55A4, 0x557D, 0x558C, 0x55A6, - 0x557F, 0x5595, 0x55A1, 0x558E, 0x570C, 0x5829, 0x5837, 0, -at 0xA0 - 0, 0x5819, 0x581E, 0x5827, 0x5823, 0x5828, 0x57F5, 0x5848, - 0x5825, 0x581C, 0x581B, 0x5833, 0x583F, 0x5836, 0x582E, 0x5839, - 0x5838, 0x582D, 0x582C, 0x583B, 0x5961, 0x5AAF, 0x5A94, 0x5A9F, - 0x5A7A, 0x5AA2, 0x5A9E, 0x5A78, 0x5AA6, 0x5A7C, 0x5AA5, 0x5AAC, - 0x5A95, 0x5AAE, 0x5A37, 0x5A84, 0x5A8A, 0x5A97, 0x5A83, 0x5A8B, - 0x5AA9, 0x5A7B, 0x5A7D, 0x5A8C, 0x5A9C, 0x5A8F, 0x5A93, 0x5A9D, - 0x5BEA, 0x5BCD, 0x5BCB, 0x5BD4, 0x5BD1, 0x5BCA, 0x5BCE, 0x5C0C, - 0x5C30, 0x5D37, 0x5D43, 0x5D6B, 0x5D41, 0x5D4B, 0x5D3F, 0x5D35, - 0x5D51, 0x5D4E, 0x5D55, 0x5D33, 0x5D3A, 0x5D52, 0x5D3D, 0x5D31, - 0x5D59, 0x5D42, 0x5D39, 0x5D49, 0x5D38, 0x5D3C, 0x5D32, 0x5D36, - 0x5D40, 0x5D45, 0x5E44, 0x5E41, 0x5F58, 0x5FA6, 0x5FA5, 0x5FAB, - 0x60C9, 0x60B9, 0x60CC, 0x60E2, 0x60CE, 0x60C4, 0x6114, 0, -plane d9 -at 0x40 - 0x60F2, 0x610A, 0x6116, 0x6105, 0x60F5, 0x6113, 0x60F8, 0x60FC, - 0x60FE, 0x60C1, 0x6103, 0x6118, 0x611D, 0x6110, 0x60FF, 0x6104, - 0x610B, 0x624A, 0x6394, 0x63B1, 0x63B0, 0x63CE, 0x63E5, 0x63E8, - 0x63EF, 0x63C3, 0x649D, 0x63F3, 0x63CA, 0x63E0, 0x63F6, 0x63D5, - 0x63F2, 0x63F5, 0x6461, 0x63DF, 0x63BE, 0x63DD, 0x63DC, 0x63C4, - 0x63D8, 0x63D3, 0x63C2, 0x63C7, 0x63CC, 0x63CB, 0x63C8, 0x63F0, - 0x63D7, 0x63D9, 0x6532, 0x6567, 0x656A, 0x6564, 0x655C, 0x6568, - 0x6565, 0x658C, 0x659D, 0x659E, 0x65AE, 0x65D0, 0x65D2, 0, -at 0xA0 - 0, 0x667C, 0x666C, 0x667B, 0x6680, 0x6671, 0x6679, 0x666A, - 0x6672, 0x6701, 0x690C, 0x68D3, 0x6904, 0x68DC, 0x692A, 0x68EC, - 0x68EA, 0x68F1, 0x690F, 0x68D6, 0x68F7, 0x68EB, 0x68E4, 0x68F6, - 0x6913, 0x6910, 0x68F3, 0x68E1, 0x6907, 0x68CC, 0x6908, 0x6970, - 0x68B4, 0x6911, 0x68EF, 0x68C6, 0x6914, 0x68F8, 0x68D0, 0x68FD, - 0x68FC, 0x68E8, 0x690B, 0x690A, 0x6917, 0x68CE, 0x68C8, 0x68DD, - 0x68DE, 0x68E6, 0x68F4, 0x68D1, 0x6906, 0x68D4, 0x68E9, 0x6915, - 0x6925, 0x68C7, 0x6B39, 0x6B3B, 0x6B3F, 0x6B3C, 0x6B94, 0x6B97, - 0x6B99, 0x6B95, 0x6BBD, 0x6BF0, 0x6BF2, 0x6BF3, 0x6C30, 0x6DFC, - 0x6E46, 0x6E47, 0x6E1F, 0x6E49, 0x6E88, 0x6E3C, 0x6E3D, 0x6E45, - 0x6E62, 0x6E2B, 0x6E3F, 0x6E41, 0x6E5D, 0x6E73, 0x6E1C, 0x6E33, - 0x6E4B, 0x6E40, 0x6E51, 0x6E3B, 0x6E03, 0x6E2E, 0x6E5E, 0, -plane da -at 0x40 - 0x6E68, 0x6E5C, 0x6E61, 0x6E31, 0x6E28, 0x6E60, 0x6E71, 0x6E6B, - 0x6E39, 0x6E22, 0x6E30, 0x6E53, 0x6E65, 0x6E27, 0x6E78, 0x6E64, - 0x6E77, 0x6E55, 0x6E79, 0x6E52, 0x6E66, 0x6E35, 0x6E36, 0x6E5A, - 0x7120, 0x711E, 0x712F, 0x70FB, 0x712E, 0x7131, 0x7123, 0x7125, - 0x7122, 0x7132, 0x711F, 0x7128, 0x713A, 0x711B, 0x724B, 0x725A, - 0x7288, 0x7289, 0x7286, 0x7285, 0x728B, 0x7312, 0x730B, 0x7330, - 0x7322, 0x7331, 0x7333, 0x7327, 0x7332, 0x732D, 0x7326, 0x7323, - 0x7335, 0x730C, 0x742E, 0x742C, 0x7430, 0x742B, 0x7416, 0, -at 0xA0 - 0, 0x741A, 0x7421, 0x742D, 0x7431, 0x7424, 0x7423, 0x741D, - 0x7429, 0x7420, 0x7432, 0x74FB, 0x752F, 0x756F, 0x756C, 0x75E7, - 0x75DA, 0x75E1, 0x75E6, 0x75DD, 0x75DF, 0x75E4, 0x75D7, 0x7695, - 0x7692, 0x76DA, 0x7746, 0x7747, 0x7744, 0x774D, 0x7745, 0x774A, - 0x774E, 0x774B, 0x774C, 0x77DE, 0x77EC, 0x7860, 0x7864, 0x7865, - 0x785C, 0x786D, 0x7871, 0x786A, 0x786E, 0x7870, 0x7869, 0x7868, - 0x785E, 0x7862, 0x7974, 0x7973, 0x7972, 0x7970, 0x7A02, 0x7A0A, - 0x7A03, 0x7A0C, 0x7A04, 0x7A99, 0x7AE6, 0x7AE4, 0x7B4A, 0x7B3B, - 0x7B44, 0x7B48, 0x7B4C, 0x7B4E, 0x7B40, 0x7B58, 0x7B45, 0x7CA2, - 0x7C9E, 0x7CA8, 0x7CA1, 0x7D58, 0x7D6F, 0x7D63, 0x7D53, 0x7D56, - 0x7D67, 0x7D6A, 0x7D4F, 0x7D6D, 0x7D5C, 0x7D6B, 0x7D52, 0x7D54, - 0x7D69, 0x7D51, 0x7D5F, 0x7D4E, 0x7F3E, 0x7F3F, 0x7F65, 0, -plane db -at 0x40 - 0x7F66, 0x7FA2, 0x7FA0, 0x7FA1, 0x7FD7, 0x8051, 0x804F, 0x8050, - 0x80FE, 0x80D4, 0x8143, 0x814A, 0x8152, 0x814F, 0x8147, 0x813D, - 0x814D, 0x813A, 0x81E6, 0x81EE, 0x81F7, 0x81F8, 0x81F9, 0x8204, - 0x823C, 0x823D, 0x823F, 0x8275, 0x833B, 0x83CF, 0x83F9, 0x8423, - 0x83C0, 0x83E8, 0x8412, 0x83E7, 0x83E4, 0x83FC, 0x83F6, 0x8410, - 0x83C6, 0x83C8, 0x83EB, 0x83E3, 0x83BF, 0x8401, 0x83DD, 0x83E5, - 0x83D8, 0x83FF, 0x83E1, 0x83CB, 0x83CE, 0x83D6, 0x83F5, 0x83C9, - 0x8409, 0x840F, 0x83DE, 0x8411, 0x8406, 0x83C2, 0x83F3, 0, -at 0xA0 - 0, 0x83D5, 0x83FA, 0x83C7, 0x83D1, 0x83EA, 0x8413, 0x83C3, - 0x83EC, 0x83EE, 0x83C4, 0x83FB, 0x83D7, 0x83E2, 0x841B, 0x83DB, - 0x83FE, 0x86D8, 0x86E2, 0x86E6, 0x86D3, 0x86E3, 0x86DA, 0x86EA, - 0x86DD, 0x86EB, 0x86DC, 0x86EC, 0x86E9, 0x86D7, 0x86E8, 0x86D1, - 0x8848, 0x8856, 0x8855, 0x88BA, 0x88D7, 0x88B9, 0x88B8, 0x88C0, - 0x88BE, 0x88B6, 0x88BC, 0x88B7, 0x88BD, 0x88B2, 0x8901, 0x88C9, - 0x8995, 0x8998, 0x8997, 0x89DD, 0x89DA, 0x89DB, 0x8A4E, 0x8A4D, - 0x8A39, 0x8A59, 0x8A40, 0x8A57, 0x8A58, 0x8A44, 0x8A45, 0x8A52, - 0x8A48, 0x8A51, 0x8A4A, 0x8A4C, 0x8A4F, 0x8C5F, 0x8C81, 0x8C80, - 0x8CBA, 0x8CBE, 0x8CB0, 0x8CB9, 0x8CB5, 0x8D84, 0x8D80, 0x8D89, - 0x8DD8, 0x8DD3, 0x8DCD, 0x8DC7, 0x8DD6, 0x8DDC, 0x8DCF, 0x8DD5, - 0x8DD9, 0x8DC8, 0x8DD7, 0x8DC5, 0x8EEF, 0x8EF7, 0x8EFA, 0, -plane dc -at 0x40 - 0x8EF9, 0x8EE6, 0x8EEE, 0x8EE5, 0x8EF5, 0x8EE7, 0x8EE8, 0x8EF6, - 0x8EEB, 0x8EF1, 0x8EEC, 0x8EF4, 0x8EE9, 0x902D, 0x9034, 0x902F, - 0x9106, 0x912C, 0x9104, 0x90FF, 0x90FC, 0x9108, 0x90F9, 0x90FB, - 0x9101, 0x9100, 0x9107, 0x9105, 0x9103, 0x9161, 0x9164, 0x915F, - 0x9162, 0x9160, 0x9201, 0x920A, 0x9225, 0x9203, 0x921A, 0x9226, - 0x920F, 0x920C, 0x9200, 0x9212, 0x91FF, 0x91FD, 0x9206, 0x9204, - 0x9227, 0x9202, 0x921C, 0x9224, 0x9219, 0x9217, 0x9205, 0x9216, - 0x957B, 0x958D, 0x958C, 0x9590, 0x9687, 0x967E, 0x9688, 0, -at 0xA0 - 0, 0x9689, 0x9683, 0x9680, 0x96C2, 0x96C8, 0x96C3, 0x96F1, - 0x96F0, 0x976C, 0x9770, 0x976E, 0x9807, 0x98A9, 0x98EB, 0x9CE6, - 0x9EF9, 0x4E83, 0x4E84, 0x4EB6, 0x50BD, 0x50BF, 0x50C6, 0x50AE, - 0x50C4, 0x50CA, 0x50B4, 0x50C8, 0x50C2, 0x50B0, 0x50C1, 0x50BA, - 0x50B1, 0x50CB, 0x50C9, 0x50B6, 0x50B8, 0x51D7, 0x527A, 0x5278, - 0x527B, 0x527C, 0x55C3, 0x55DB, 0x55CC, 0x55D0, 0x55CB, 0x55CA, - 0x55DD, 0x55C0, 0x55D4, 0x55C4, 0x55E9, 0x55BF, 0x55D2, 0x558D, - 0x55CF, 0x55D5, 0x55E2, 0x55D6, 0x55C8, 0x55F2, 0x55CD, 0x55D9, - 0x55C2, 0x5714, 0x5853, 0x5868, 0x5864, 0x584F, 0x584D, 0x5849, - 0x586F, 0x5855, 0x584E, 0x585D, 0x5859, 0x5865, 0x585B, 0x583D, - 0x5863, 0x5871, 0x58FC, 0x5AC7, 0x5AC4, 0x5ACB, 0x5ABA, 0x5AB8, - 0x5AB1, 0x5AB5, 0x5AB0, 0x5ABF, 0x5AC8, 0x5ABB, 0x5AC6, 0, -plane dd -at 0x40 - 0x5AB7, 0x5AC0, 0x5ACA, 0x5AB4, 0x5AB6, 0x5ACD, 0x5AB9, 0x5A90, - 0x5BD6, 0x5BD8, 0x5BD9, 0x5C1F, 0x5C33, 0x5D71, 0x5D63, 0x5D4A, - 0x5D65, 0x5D72, 0x5D6C, 0x5D5E, 0x5D68, 0x5D67, 0x5D62, 0x5DF0, - 0x5E4F, 0x5E4E, 0x5E4A, 0x5E4D, 0x5E4B, 0x5EC5, 0x5ECC, 0x5EC6, - 0x5ECB, 0x5EC7, 0x5F40, 0x5FAF, 0x5FAD, 0x60F7, 0x6149, 0x614A, - 0x612B, 0x6145, 0x6136, 0x6132, 0x612E, 0x6146, 0x612F, 0x614F, - 0x6129, 0x6140, 0x6220, 0x9168, 0x6223, 0x6225, 0x6224, 0x63C5, - 0x63F1, 0x63EB, 0x6410, 0x6412, 0x6409, 0x6420, 0x6424, 0, -at 0xA0 - 0, 0x6433, 0x6443, 0x641F, 0x6415, 0x6418, 0x6439, 0x6437, - 0x6422, 0x6423, 0x640C, 0x6426, 0x6430, 0x6428, 0x6441, 0x6435, - 0x642F, 0x640A, 0x641A, 0x6440, 0x6425, 0x6427, 0x640B, 0x63E7, - 0x641B, 0x642E, 0x6421, 0x640E, 0x656F, 0x6592, 0x65D3, 0x6686, - 0x668C, 0x6695, 0x6690, 0x668B, 0x668A, 0x6699, 0x6694, 0x6678, - 0x6720, 0x6966, 0x695F, 0x6938, 0x694E, 0x6962, 0x6971, 0x693F, - 0x6945, 0x696A, 0x6939, 0x6942, 0x6957, 0x6959, 0x697A, 0x6948, - 0x6949, 0x6935, 0x696C, 0x6933, 0x693D, 0x6965, 0x68F0, 0x6978, - 0x6934, 0x6969, 0x6940, 0x696F, 0x6944, 0x6976, 0x6958, 0x6941, - 0x6974, 0x694C, 0x693B, 0x694B, 0x6937, 0x695C, 0x694F, 0x6951, - 0x6932, 0x6952, 0x692F, 0x697B, 0x693C, 0x6B46, 0x6B45, 0x6B43, - 0x6B42, 0x6B48, 0x6B41, 0x6B9B, 0xFA0D, 0x6BFB, 0x6BFC, 0, -plane de -at 0x40 - 0x6BF9, 0x6BF7, 0x6BF8, 0x6E9B, 0x6ED6, 0x6EC8, 0x6E8F, 0x6EC0, - 0x6E9F, 0x6E93, 0x6E94, 0x6EA0, 0x6EB1, 0x6EB9, 0x6EC6, 0x6ED2, - 0x6EBD, 0x6EC1, 0x6E9E, 0x6EC9, 0x6EB7, 0x6EB0, 0x6ECD, 0x6EA6, - 0x6ECF, 0x6EB2, 0x6EBE, 0x6EC3, 0x6EDC, 0x6ED8, 0x6E99, 0x6E92, - 0x6E8E, 0x6E8D, 0x6EA4, 0x6EA1, 0x6EBF, 0x6EB3, 0x6ED0, 0x6ECA, - 0x6E97, 0x6EAE, 0x6EA3, 0x7147, 0x7154, 0x7152, 0x7163, 0x7160, - 0x7141, 0x715D, 0x7162, 0x7172, 0x7178, 0x716A, 0x7161, 0x7142, - 0x7158, 0x7143, 0x714B, 0x7170, 0x715F, 0x7150, 0x7153, 0, -at 0xA0 - 0, 0x7144, 0x714D, 0x715A, 0x724F, 0x728D, 0x728C, 0x7291, - 0x7290, 0x728E, 0x733C, 0x7342, 0x733B, 0x733A, 0x7340, 0x734A, - 0x7349, 0x7444, 0x744A, 0x744B, 0x7452, 0x7451, 0x7457, 0x7440, - 0x744F, 0x7450, 0x744E, 0x7442, 0x7446, 0x744D, 0x7454, 0x74E1, - 0x74FF, 0x74FE, 0x74FD, 0x751D, 0x7579, 0x7577, 0x6983, 0x75EF, - 0x760F, 0x7603, 0x75F7, 0x75FE, 0x75FC, 0x75F9, 0x75F8, 0x7610, - 0x75FB, 0x75F6, 0x75ED, 0x75F5, 0x75FD, 0x7699, 0x76B5, 0x76DD, - 0x7755, 0x775F, 0x7760, 0x7752, 0x7756, 0x775A, 0x7769, 0x7767, - 0x7754, 0x7759, 0x776D, 0x77E0, 0x7887, 0x789A, 0x7894, 0x788F, - 0x7884, 0x7895, 0x7885, 0x7886, 0x78A1, 0x7883, 0x7879, 0x7899, - 0x7880, 0x7896, 0x787B, 0x797C, 0x7982, 0x797D, 0x7979, 0x7A11, - 0x7A18, 0x7A19, 0x7A12, 0x7A17, 0x7A15, 0x7A22, 0x7A13, 0, -plane df -at 0x40 - 0x7A1B, 0x7A10, 0x7AA3, 0x7AA2, 0x7A9E, 0x7AEB, 0x7B66, 0x7B64, - 0x7B6D, 0x7B74, 0x7B69, 0x7B72, 0x7B65, 0x7B73, 0x7B71, 0x7B70, - 0x7B61, 0x7B78, 0x7B76, 0x7B63, 0x7CB2, 0x7CB4, 0x7CAF, 0x7D88, - 0x7D86, 0x7D80, 0x7D8D, 0x7D7F, 0x7D85, 0x7D7A, 0x7D8E, 0x7D7B, - 0x7D83, 0x7D7C, 0x7D8C, 0x7D94, 0x7D84, 0x7D7D, 0x7D92, 0x7F6D, - 0x7F6B, 0x7F67, 0x7F68, 0x7F6C, 0x7FA6, 0x7FA5, 0x7FA7, 0x7FDB, - 0x7FDC, 0x8021, 0x8164, 0x8160, 0x8177, 0x815C, 0x8169, 0x815B, - 0x8162, 0x8172, 0x6721, 0x815E, 0x8176, 0x8167, 0x816F, 0, -at 0xA0 - 0, 0x8144, 0x8161, 0x821D, 0x8249, 0x8244, 0x8240, 0x8242, - 0x8245, 0x84F1, 0x843F, 0x8456, 0x8476, 0x8479, 0x848F, 0x848D, - 0x8465, 0x8451, 0x8440, 0x8486, 0x8467, 0x8430, 0x844D, 0x847D, - 0x845A, 0x8459, 0x8474, 0x8473, 0x845D, 0x8507, 0x845E, 0x8437, - 0x843A, 0x8434, 0x847A, 0x8443, 0x8478, 0x8432, 0x8445, 0x8429, - 0x83D9, 0x844B, 0x842F, 0x8442, 0x842D, 0x845F, 0x8470, 0x8439, - 0x844E, 0x844C, 0x8452, 0x846F, 0x84C5, 0x848E, 0x843B, 0x8447, - 0x8436, 0x8433, 0x8468, 0x847E, 0x8444, 0x842B, 0x8460, 0x8454, - 0x846E, 0x8450, 0x870B, 0x8704, 0x86F7, 0x870C, 0x86FA, 0x86D6, - 0x86F5, 0x874D, 0x86F8, 0x870E, 0x8709, 0x8701, 0x86F6, 0x870D, - 0x8705, 0x88D6, 0x88CB, 0x88CD, 0x88CE, 0x88DE, 0x88DB, 0x88DA, - 0x88CC, 0x88D0, 0x8985, 0x899B, 0x89DF, 0x89E5, 0x89E4, 0, -plane e0 -at 0x40 - 0x89E1, 0x89E0, 0x89E2, 0x89DC, 0x89E6, 0x8A76, 0x8A86, 0x8A7F, - 0x8A61, 0x8A3F, 0x8A77, 0x8A82, 0x8A84, 0x8A75, 0x8A83, 0x8A81, - 0x8A74, 0x8A7A, 0x8C3C, 0x8C4B, 0x8C4A, 0x8C65, 0x8C64, 0x8C66, - 0x8C86, 0x8C84, 0x8C85, 0x8CCC, 0x8D68, 0x8D69, 0x8D91, 0x8D8C, - 0x8D8E, 0x8D8F, 0x8D8D, 0x8D93, 0x8D94, 0x8D90, 0x8D92, 0x8DF0, - 0x8DE0, 0x8DEC, 0x8DF1, 0x8DEE, 0x8DD0, 0x8DE9, 0x8DE3, 0x8DE2, - 0x8DE7, 0x8DF2, 0x8DEB, 0x8DF4, 0x8F06, 0x8EFF, 0x8F01, 0x8F00, - 0x8F05, 0x8F07, 0x8F08, 0x8F02, 0x8F0B, 0x9052, 0x903F, 0, -at 0xA0 - 0, 0x9044, 0x9049, 0x903D, 0x9110, 0x910D, 0x910F, 0x9111, - 0x9116, 0x9114, 0x910B, 0x910E, 0x916E, 0x916F, 0x9248, 0x9252, - 0x9230, 0x923A, 0x9266, 0x9233, 0x9265, 0x925E, 0x9283, 0x922E, - 0x924A, 0x9246, 0x926D, 0x926C, 0x924F, 0x9260, 0x9267, 0x926F, - 0x9236, 0x9261, 0x9270, 0x9231, 0x9254, 0x9263, 0x9250, 0x9272, - 0x924E, 0x9253, 0x924C, 0x9256, 0x9232, 0x959F, 0x959C, 0x959E, - 0x959B, 0x9692, 0x9693, 0x9691, 0x9697, 0x96CE, 0x96FA, 0x96FD, - 0x96F8, 0x96F5, 0x9773, 0x9777, 0x9778, 0x9772, 0x980F, 0x980D, - 0x980E, 0x98AC, 0x98F6, 0x98F9, 0x99AF, 0x99B2, 0x99B0, 0x99B5, - 0x9AAD, 0x9AAB, 0x9B5B, 0x9CEA, 0x9CED, 0x9CE7, 0x9E80, 0x9EFD, - 0x50E6, 0x50D4, 0x50D7, 0x50E8, 0x50F3, 0x50DB, 0x50EA, 0x50DD, - 0x50E4, 0x50D3, 0x50EC, 0x50F0, 0x50EF, 0x50E3, 0x50E0, 0, -plane e1 -at 0x40 - 0x51D8, 0x5280, 0x5281, 0x52E9, 0x52EB, 0x5330, 0x53AC, 0x5627, - 0x5615, 0x560C, 0x5612, 0x55FC, 0x560F, 0x561C, 0x5601, 0x5613, - 0x5602, 0x55FA, 0x561D, 0x5604, 0x55FF, 0x55F9, 0x5889, 0x587C, - 0x5890, 0x5898, 0x5886, 0x5881, 0x587F, 0x5874, 0x588B, 0x587A, - 0x5887, 0x5891, 0x588E, 0x5876, 0x5882, 0x5888, 0x587B, 0x5894, - 0x588F, 0x58FE, 0x596B, 0x5ADC, 0x5AEE, 0x5AE5, 0x5AD5, 0x5AEA, - 0x5ADA, 0x5AED, 0x5AEB, 0x5AF3, 0x5AE2, 0x5AE0, 0x5ADB, 0x5AEC, - 0x5ADE, 0x5ADD, 0x5AD9, 0x5AE8, 0x5ADF, 0x5B77, 0x5BE0, 0, -at 0xA0 - 0, 0x5BE3, 0x5C63, 0x5D82, 0x5D80, 0x5D7D, 0x5D86, 0x5D7A, - 0x5D81, 0x5D77, 0x5D8A, 0x5D89, 0x5D88, 0x5D7E, 0x5D7C, 0x5D8D, - 0x5D79, 0x5D7F, 0x5E58, 0x5E59, 0x5E53, 0x5ED8, 0x5ED1, 0x5ED7, - 0x5ECE, 0x5EDC, 0x5ED5, 0x5ED9, 0x5ED2, 0x5ED4, 0x5F44, 0x5F43, - 0x5F6F, 0x5FB6, 0x612C, 0x6128, 0x6141, 0x615E, 0x6171, 0x6173, - 0x6152, 0x6153, 0x6172, 0x616C, 0x6180, 0x6174, 0x6154, 0x617A, - 0x615B, 0x6165, 0x613B, 0x616A, 0x6161, 0x6156, 0x6229, 0x6227, - 0x622B, 0x642B, 0x644D, 0x645B, 0x645D, 0x6474, 0x6476, 0x6472, - 0x6473, 0x647D, 0x6475, 0x6466, 0x64A6, 0x644E, 0x6482, 0x645E, - 0x645C, 0x644B, 0x6453, 0x6460, 0x6450, 0x647F, 0x643F, 0x646C, - 0x646B, 0x6459, 0x6465, 0x6477, 0x6573, 0x65A0, 0x66A1, 0x66A0, - 0x669F, 0x6705, 0x6704, 0x6722, 0x69B1, 0x69B6, 0x69C9, 0, -plane e2 -at 0x40 - 0x69A0, 0x69CE, 0x6996, 0x69B0, 0x69AC, 0x69BC, 0x6991, 0x6999, - 0x698E, 0x69A7, 0x698D, 0x69A9, 0x69BE, 0x69AF, 0x69BF, 0x69C4, - 0x69BD, 0x69A4, 0x69D4, 0x69B9, 0x69CA, 0x699A, 0x69CF, 0x69B3, - 0x6993, 0x69AA, 0x69A1, 0x699E, 0x69D9, 0x6997, 0x6990, 0x69C2, - 0x69B5, 0x69A5, 0x69C6, 0x6B4A, 0x6B4D, 0x6B4B, 0x6B9E, 0x6B9F, - 0x6BA0, 0x6BC3, 0x6BC4, 0x6BFE, 0x6ECE, 0x6EF5, 0x6EF1, 0x6F03, - 0x6F25, 0x6EF8, 0x6F37, 0x6EFB, 0x6F2E, 0x6F09, 0x6F4E, 0x6F19, - 0x6F1A, 0x6F27, 0x6F18, 0x6F3B, 0x6F12, 0x6EED, 0x6F0A, 0, -at 0xA0 - 0, 0x6F36, 0x6F73, 0x6EF9, 0x6EEE, 0x6F2D, 0x6F40, 0x6F30, - 0x6F3C, 0x6F35, 0x6EEB, 0x6F07, 0x6F0E, 0x6F43, 0x6F05, 0x6EFD, - 0x6EF6, 0x6F39, 0x6F1C, 0x6EFC, 0x6F3A, 0x6F1F, 0x6F0D, 0x6F1E, - 0x6F08, 0x6F21, 0x7187, 0x7190, 0x7189, 0x7180, 0x7185, 0x7182, - 0x718F, 0x717B, 0x7186, 0x7181, 0x7197, 0x7244, 0x7253, 0x7297, - 0x7295, 0x7293, 0x7343, 0x734D, 0x7351, 0x734C, 0x7462, 0x7473, - 0x7471, 0x7475, 0x7472, 0x7467, 0x746E, 0x7500, 0x7502, 0x7503, - 0x757D, 0x7590, 0x7616, 0x7608, 0x760C, 0x7615, 0x7611, 0x760A, - 0x7614, 0x76B8, 0x7781, 0x777C, 0x7785, 0x7782, 0x776E, 0x7780, - 0x776F, 0x777E, 0x7783, 0x78B2, 0x78AA, 0x78B4, 0x78AD, 0x78A8, - 0x787E, 0x78AB, 0x789E, 0x78A5, 0x78A0, 0x78AC, 0x78A2, 0x78A4, - 0x7998, 0x798A, 0x798B, 0x7996, 0x7995, 0x7994, 0x7993, 0, -plane e3 -at 0x40 - 0x7997, 0x7988, 0x7992, 0x7990, 0x7A2B, 0x7A4A, 0x7A30, 0x7A2F, - 0x7A28, 0x7A26, 0x7AA8, 0x7AAB, 0x7AAC, 0x7AEE, 0x7B88, 0x7B9C, - 0x7B8A, 0x7B91, 0x7B90, 0x7B96, 0x7B8D, 0x7B8C, 0x7B9B, 0x7B8E, - 0x7B85, 0x7B98, 0x5284, 0x7B99, 0x7BA4, 0x7B82, 0x7CBB, 0x7CBF, - 0x7CBC, 0x7CBA, 0x7DA7, 0x7DB7, 0x7DC2, 0x7DA3, 0x7DAA, 0x7DC1, - 0x7DC0, 0x7DC5, 0x7D9D, 0x7DCE, 0x7DC4, 0x7DC6, 0x7DCB, 0x7DCC, - 0x7DAF, 0x7DB9, 0x7D96, 0x7DBC, 0x7D9F, 0x7DA6, 0x7DAE, 0x7DA9, - 0x7DA1, 0x7DC9, 0x7F73, 0x7FE2, 0x7FE3, 0x7FE5, 0x7FDE, 0, -at 0xA0 - 0, 0x8024, 0x805D, 0x805C, 0x8189, 0x8186, 0x8183, 0x8187, - 0x818D, 0x818C, 0x818B, 0x8215, 0x8497, 0x84A4, 0x84A1, 0x849F, - 0x84BA, 0x84CE, 0x84C2, 0x84AC, 0x84AE, 0x84AB, 0x84B9, 0x84B4, - 0x84C1, 0x84CD, 0x84AA, 0x849A, 0x84B1, 0x84D0, 0x849D, 0x84A7, - 0x84BB, 0x84A2, 0x8494, 0x84C7, 0x84CC, 0x849B, 0x84A9, 0x84AF, - 0x84A8, 0x84D6, 0x8498, 0x84B6, 0x84CF, 0x84A0, 0x84D7, 0x84D4, - 0x84D2, 0x84DB, 0x84B0, 0x8491, 0x8661, 0x8733, 0x8723, 0x8728, - 0x876B, 0x8740, 0x872E, 0x871E, 0x8721, 0x8719, 0x871B, 0x8743, - 0x872C, 0x8741, 0x873E, 0x8746, 0x8720, 0x8732, 0x872A, 0x872D, - 0x873C, 0x8712, 0x873A, 0x8731, 0x8735, 0x8742, 0x8726, 0x8727, - 0x8738, 0x8724, 0x871A, 0x8730, 0x8711, 0x88F7, 0x88E7, 0x88F1, - 0x88F2, 0x88FA, 0x88FE, 0x88EE, 0x88FC, 0x88F6, 0x88FB, 0, -plane e4 -at 0x40 - 0x88F0, 0x88EC, 0x88EB, 0x899D, 0x89A1, 0x899F, 0x899E, 0x89E9, - 0x89EB, 0x89E8, 0x8AAB, 0x8A99, 0x8A8B, 0x8A92, 0x8A8F, 0x8A96, - 0x8C3D, 0x8C68, 0x8C69, 0x8CD5, 0x8CCF, 0x8CD7, 0x8D96, 0x8E09, - 0x8E02, 0x8DFF, 0x8E0D, 0x8DFD, 0x8E0A, 0x8E03, 0x8E07, 0x8E06, - 0x8E05, 0x8DFE, 0x8E00, 0x8E04, 0x8F10, 0x8F11, 0x8F0E, 0x8F0D, - 0x9123, 0x911C, 0x9120, 0x9122, 0x911F, 0x911D, 0x911A, 0x9124, - 0x9121, 0x911B, 0x917A, 0x9172, 0x9179, 0x9173, 0x92A5, 0x92A4, - 0x9276, 0x929B, 0x927A, 0x92A0, 0x9294, 0x92AA, 0x928D, 0, -at 0xA0 - 0, 0x92A6, 0x929A, 0x92AB, 0x9279, 0x9297, 0x927F, 0x92A3, - 0x92EE, 0x928E, 0x9282, 0x9295, 0x92A2, 0x927D, 0x9288, 0x92A1, - 0x928A, 0x9286, 0x928C, 0x9299, 0x92A7, 0x927E, 0x9287, 0x92A9, - 0x929D, 0x928B, 0x922D, 0x969E, 0x96A1, 0x96FF, 0x9758, 0x977D, - 0x977A, 0x977E, 0x9783, 0x9780, 0x9782, 0x977B, 0x9784, 0x9781, - 0x977F, 0x97CE, 0x97CD, 0x9816, 0x98AD, 0x98AE, 0x9902, 0x9900, - 0x9907, 0x999D, 0x999C, 0x99C3, 0x99B9, 0x99BB, 0x99BA, 0x99C2, - 0x99BD, 0x99C7, 0x9AB1, 0x9AE3, 0x9AE7, 0x9B3E, 0x9B3F, 0x9B60, - 0x9B61, 0x9B5F, 0x9CF1, 0x9CF2, 0x9CF5, 0x9EA7, 0x50FF, 0x5103, - 0x5130, 0x50F8, 0x5106, 0x5107, 0x50F6, 0x50FE, 0x510B, 0x510C, - 0x50FD, 0x510A, 0x528B, 0x528C, 0x52F1, 0x52EF, 0x5648, 0x5642, - 0x564C, 0x5635, 0x5641, 0x564A, 0x5649, 0x5646, 0x5658, 0, -plane e5 -at 0x40 - 0x565A, 0x5640, 0x5633, 0x563D, 0x562C, 0x563E, 0x5638, 0x562A, - 0x563A, 0x571A, 0x58AB, 0x589D, 0x58B1, 0x58A0, 0x58A3, 0x58AF, - 0x58AC, 0x58A5, 0x58A1, 0x58FF, 0x5AFF, 0x5AF4, 0x5AFD, 0x5AF7, - 0x5AF6, 0x5B03, 0x5AF8, 0x5B02, 0x5AF9, 0x5B01, 0x5B07, 0x5B05, - 0x5B0F, 0x5C67, 0x5D99, 0x5D97, 0x5D9F, 0x5D92, 0x5DA2, 0x5D93, - 0x5D95, 0x5DA0, 0x5D9C, 0x5DA1, 0x5D9A, 0x5D9E, 0x5E69, 0x5E5D, - 0x5E60, 0x5E5C, 0x7DF3, 0x5EDB, 0x5EDE, 0x5EE1, 0x5F49, 0x5FB2, - 0x618B, 0x6183, 0x6179, 0x61B1, 0x61B0, 0x61A2, 0x6189, 0, -at 0xA0 - 0, 0x619B, 0x6193, 0x61AF, 0x61AD, 0x619F, 0x6192, 0x61AA, - 0x61A1, 0x618D, 0x6166, 0x61B3, 0x622D, 0x646E, 0x6470, 0x6496, - 0x64A0, 0x6485, 0x6497, 0x649C, 0x648F, 0x648B, 0x648A, 0x648C, - 0x64A3, 0x649F, 0x6468, 0x64B1, 0x6498, 0x6576, 0x657A, 0x6579, - 0x657B, 0x65B2, 0x65B3, 0x66B5, 0x66B0, 0x66A9, 0x66B2, 0x66B7, - 0x66AA, 0x66AF, 0x6A00, 0x6A06, 0x6A17, 0x69E5, 0x69F8, 0x6A15, - 0x69F1, 0x69E4, 0x6A20, 0x69FF, 0x69EC, 0x69E2, 0x6A1B, 0x6A1D, - 0x69FE, 0x6A27, 0x69F2, 0x69EE, 0x6A14, 0x69F7, 0x69E7, 0x6A40, - 0x6A08, 0x69E6, 0x69FB, 0x6A0D, 0x69FC, 0x69EB, 0x6A09, 0x6A04, - 0x6A18, 0x6A25, 0x6A0F, 0x69F6, 0x6A26, 0x6A07, 0x69F4, 0x6A16, - 0x6B51, 0x6BA5, 0x6BA3, 0x6BA2, 0x6BA6, 0x6C01, 0x6C00, 0x6BFF, - 0x6C02, 0x6F41, 0x6F26, 0x6F7E, 0x6F87, 0x6FC6, 0x6F92, 0, -plane e6 -at 0x40 - 0x6F8D, 0x6F89, 0x6F8C, 0x6F62, 0x6F4F, 0x6F85, 0x6F5A, 0x6F96, - 0x6F76, 0x6F6C, 0x6F82, 0x6F55, 0x6F72, 0x6F52, 0x6F50, 0x6F57, - 0x6F94, 0x6F93, 0x6F5D, 0x6F00, 0x6F61, 0x6F6B, 0x6F7D, 0x6F67, - 0x6F90, 0x6F53, 0x6F8B, 0x6F69, 0x6F7F, 0x6F95, 0x6F63, 0x6F77, - 0x6F6A, 0x6F7B, 0x71B2, 0x71AF, 0x719B, 0x71B0, 0x71A0, 0x719A, - 0x71A9, 0x71B5, 0x719D, 0x71A5, 0x719E, 0x71A4, 0x71A1, 0x71AA, - 0x719C, 0x71A7, 0x71B3, 0x7298, 0x729A, 0x7358, 0x7352, 0x735E, - 0x735F, 0x7360, 0x735D, 0x735B, 0x7361, 0x735A, 0x7359, 0, -at 0xA0 - 0, 0x7362, 0x7487, 0x7489, 0x748A, 0x7486, 0x7481, 0x747D, - 0x7485, 0x7488, 0x747C, 0x7479, 0x7508, 0x7507, 0x757E, 0x7625, - 0x761E, 0x7619, 0x761D, 0x761C, 0x7623, 0x761A, 0x7628, 0x761B, - 0x769C, 0x769D, 0x769E, 0x769B, 0x778D, 0x778F, 0x7789, 0x7788, - 0x78CD, 0x78BB, 0x78CF, 0x78CC, 0x78D1, 0x78CE, 0x78D4, 0x78C8, - 0x78C3, 0x78C4, 0x78C9, 0x799A, 0x79A1, 0x79A0, 0x799C, 0x79A2, - 0x799B, 0x6B76, 0x7A39, 0x7AB2, 0x7AB4, 0x7AB3, 0x7BB7, 0x7BCB, - 0x7BBE, 0x7BAC, 0x7BCE, 0x7BAF, 0x7BB9, 0x7BCA, 0x7BB5, 0x7CC5, - 0x7CC8, 0x7CCC, 0x7CCB, 0x7DF7, 0x7DDB, 0x7DEA, 0x7DE7, 0x7DD7, - 0x7DE1, 0x7E03, 0x7DFA, 0x7DE6, 0x7DF6, 0x7DF1, 0x7DF0, 0x7DEE, - 0x7DDF, 0x7F76, 0x7FAC, 0x7FB0, 0x7FAD, 0x7FED, 0x7FEB, 0x7FEA, - 0x7FEC, 0x7FE6, 0x7FE8, 0x8064, 0x8067, 0x81A3, 0x819F, 0, -plane e7 -at 0x40 - 0x819E, 0x8195, 0x81A2, 0x8199, 0x8197, 0x8216, 0x824F, 0x8253, - 0x8252, 0x8250, 0x824E, 0x8251, 0x8524, 0x853B, 0x850F, 0x8500, - 0x8529, 0x850E, 0x8509, 0x850D, 0x851F, 0x850A, 0x8527, 0x851C, - 0x84FB, 0x852B, 0x84FA, 0x8508, 0x850C, 0x84F4, 0x852A, 0x84F2, - 0x8515, 0x84F7, 0x84EB, 0x84F3, 0x84FC, 0x8512, 0x84EA, 0x84E9, - 0x8516, 0x84FE, 0x8528, 0x851D, 0x852E, 0x8502, 0x84FD, 0x851E, - 0x84F6, 0x8531, 0x8526, 0x84E7, 0x84E8, 0x84F0, 0x84EF, 0x84F9, - 0x8518, 0x8520, 0x8530, 0x850B, 0x8519, 0x852F, 0x8662, 0, -at 0xA0 - 0, 0x8756, 0x8763, 0x8764, 0x8777, 0x87E1, 0x8773, 0x8758, - 0x8754, 0x875B, 0x8752, 0x8761, 0x875A, 0x8751, 0x875E, 0x876D, - 0x876A, 0x8750, 0x874E, 0x875F, 0x875D, 0x876F, 0x876C, 0x877A, - 0x876E, 0x875C, 0x8765, 0x874F, 0x877B, 0x8775, 0x8762, 0x8767, - 0x8769, 0x885A, 0x8905, 0x890C, 0x8914, 0x890B, 0x8917, 0x8918, - 0x8919, 0x8906, 0x8916, 0x8911, 0x890E, 0x8909, 0x89A2, 0x89A4, - 0x89A3, 0x89ED, 0x89F0, 0x89EC, 0x8ACF, 0x8AC6, 0x8AB8, 0x8AD3, - 0x8AD1, 0x8AD4, 0x8AD5, 0x8ABB, 0x8AD7, 0x8ABE, 0x8AC0, 0x8AC5, - 0x8AD8, 0x8AC3, 0x8ABA, 0x8ABD, 0x8AD9, 0x8C3E, 0x8C4D, 0x8C8F, - 0x8CE5, 0x8CDF, 0x8CD9, 0x8CE8, 0x8CDA, 0x8CDD, 0x8CE7, 0x8DA0, - 0x8D9C, 0x8DA1, 0x8D9B, 0x8E20, 0x8E23, 0x8E25, 0x8E24, 0x8E2E, - 0x8E15, 0x8E1B, 0x8E16, 0x8E11, 0x8E19, 0x8E26, 0x8E27, 0, -plane e8 -at 0x40 - 0x8E14, 0x8E12, 0x8E18, 0x8E13, 0x8E1C, 0x8E17, 0x8E1A, 0x8F2C, - 0x8F24, 0x8F18, 0x8F1A, 0x8F20, 0x8F23, 0x8F16, 0x8F17, 0x9073, - 0x9070, 0x906F, 0x9067, 0x906B, 0x912F, 0x912B, 0x9129, 0x912A, - 0x9132, 0x9126, 0x912E, 0x9185, 0x9186, 0x918A, 0x9181, 0x9182, - 0x9184, 0x9180, 0x92D0, 0x92C3, 0x92C4, 0x92C0, 0x92D9, 0x92B6, - 0x92CF, 0x92F1, 0x92DF, 0x92D8, 0x92E9, 0x92D7, 0x92DD, 0x92CC, - 0x92EF, 0x92C2, 0x92E8, 0x92CA, 0x92C8, 0x92CE, 0x92E6, 0x92CD, - 0x92D5, 0x92C9, 0x92E0, 0x92DE, 0x92E7, 0x92D1, 0x92D3, 0, -at 0xA0 - 0, 0x92B5, 0x92E1, 0x92C6, 0x92B4, 0x957C, 0x95AC, 0x95AB, - 0x95AE, 0x95B0, 0x96A4, 0x96A2, 0x96D3, 0x9705, 0x9708, 0x9702, - 0x975A, 0x978A, 0x978E, 0x9788, 0x97D0, 0x97CF, 0x981E, 0x981D, - 0x9826, 0x9829, 0x9828, 0x9820, 0x981B, 0x9827, 0x98B2, 0x9908, - 0x98FA, 0x9911, 0x9914, 0x9916, 0x9917, 0x9915, 0x99DC, 0x99CD, - 0x99CF, 0x99D3, 0x99D4, 0x99CE, 0x99C9, 0x99D6, 0x99D8, 0x99CB, - 0x99D7, 0x99CC, 0x9AB3, 0x9AEC, 0x9AEB, 0x9AF3, 0x9AF2, 0x9AF1, - 0x9B46, 0x9B43, 0x9B67, 0x9B74, 0x9B71, 0x9B66, 0x9B76, 0x9B75, - 0x9B70, 0x9B68, 0x9B64, 0x9B6C, 0x9CFC, 0x9CFA, 0x9CFD, 0x9CFF, - 0x9CF7, 0x9D07, 0x9D00, 0x9CF9, 0x9CFB, 0x9D08, 0x9D05, 0x9D04, - 0x9E83, 0x9ED3, 0x9F0F, 0x9F10, 0x511C, 0x5113, 0x5117, 0x511A, - 0x5111, 0x51DE, 0x5334, 0x53E1, 0x5670, 0x5660, 0x566E, 0, -plane e9 -at 0x40 - 0x5673, 0x5666, 0x5663, 0x566D, 0x5672, 0x565E, 0x5677, 0x571C, - 0x571B, 0x58C8, 0x58BD, 0x58C9, 0x58BF, 0x58BA, 0x58C2, 0x58BC, - 0x58C6, 0x5B17, 0x5B19, 0x5B1B, 0x5B21, 0x5B14, 0x5B13, 0x5B10, - 0x5B16, 0x5B28, 0x5B1A, 0x5B20, 0x5B1E, 0x5BEF, 0x5DAC, 0x5DB1, - 0x5DA9, 0x5DA7, 0x5DB5, 0x5DB0, 0x5DAE, 0x5DAA, 0x5DA8, 0x5DB2, - 0x5DAD, 0x5DAF, 0x5DB4, 0x5E67, 0x5E68, 0x5E66, 0x5E6F, 0x5EE9, - 0x5EE7, 0x5EE6, 0x5EE8, 0x5EE5, 0x5F4B, 0x5FBC, 0x619D, 0x61A8, - 0x6196, 0x61C5, 0x61B4, 0x61C6, 0x61C1, 0x61CC, 0x61BA, 0, -at 0xA0 - 0, 0x61BF, 0x61B8, 0x618C, 0x64D7, 0x64D6, 0x64D0, 0x64CF, - 0x64C9, 0x64BD, 0x6489, 0x64C3, 0x64DB, 0x64F3, 0x64D9, 0x6533, - 0x657F, 0x657C, 0x65A2, 0x66C8, 0x66BE, 0x66C0, 0x66CA, 0x66CB, - 0x66CF, 0x66BD, 0x66BB, 0x66BA, 0x66CC, 0x6723, 0x6A34, 0x6A66, - 0x6A49, 0x6A67, 0x6A32, 0x6A68, 0x6A3E, 0x6A5D, 0x6A6D, 0x6A76, - 0x6A5B, 0x6A51, 0x6A28, 0x6A5A, 0x6A3B, 0x6A3F, 0x6A41, 0x6A6A, - 0x6A64, 0x6A50, 0x6A4F, 0x6A54, 0x6A6F, 0x6A69, 0x6A60, 0x6A3C, - 0x6A5E, 0x6A56, 0x6A55, 0x6A4D, 0x6A4E, 0x6A46, 0x6B55, 0x6B54, - 0x6B56, 0x6BA7, 0x6BAA, 0x6BAB, 0x6BC8, 0x6BC7, 0x6C04, 0x6C03, - 0x6C06, 0x6FAD, 0x6FCB, 0x6FA3, 0x6FC7, 0x6FBC, 0x6FCE, 0x6FC8, - 0x6F5E, 0x6FC4, 0x6FBD, 0x6F9E, 0x6FCA, 0x6FA8, 0x7004, 0x6FA5, - 0x6FAE, 0x6FBA, 0x6FAC, 0x6FAA, 0x6FCF, 0x6FBF, 0x6FB8, 0, -plane ea -at 0x40 - 0x6FA2, 0x6FC9, 0x6FAB, 0x6FCD, 0x6FAF, 0x6FB2, 0x6FB0, 0x71C5, - 0x71C2, 0x71BF, 0x71B8, 0x71D6, 0x71C0, 0x71C1, 0x71CB, 0x71D4, - 0x71CA, 0x71C7, 0x71CF, 0x71BD, 0x71D8, 0x71BC, 0x71C6, 0x71DA, - 0x71DB, 0x729D, 0x729E, 0x7369, 0x7366, 0x7367, 0x736C, 0x7365, - 0x736B, 0x736A, 0x747F, 0x749A, 0x74A0, 0x7494, 0x7492, 0x7495, - 0x74A1, 0x750B, 0x7580, 0x762F, 0x762D, 0x7631, 0x763D, 0x7633, - 0x763C, 0x7635, 0x7632, 0x7630, 0x76BB, 0x76E6, 0x779A, 0x779D, - 0x77A1, 0x779C, 0x779B, 0x77A2, 0x77A3, 0x7795, 0x7799, 0, -at 0xA0 - 0, 0x7797, 0x78DD, 0x78E9, 0x78E5, 0x78EA, 0x78DE, 0x78E3, - 0x78DB, 0x78E1, 0x78E2, 0x78ED, 0x78DF, 0x78E0, 0x79A4, 0x7A44, - 0x7A48, 0x7A47, 0x7AB6, 0x7AB8, 0x7AB5, 0x7AB1, 0x7AB7, 0x7BDE, - 0x7BE3, 0x7BE7, 0x7BDD, 0x7BD5, 0x7BE5, 0x7BDA, 0x7BE8, 0x7BF9, - 0x7BD4, 0x7BEA, 0x7BE2, 0x7BDC, 0x7BEB, 0x7BD8, 0x7BDF, 0x7CD2, - 0x7CD4, 0x7CD7, 0x7CD0, 0x7CD1, 0x7E12, 0x7E21, 0x7E17, 0x7E0C, - 0x7E1F, 0x7E20, 0x7E13, 0x7E0E, 0x7E1C, 0x7E15, 0x7E1A, 0x7E22, - 0x7E0B, 0x7E0F, 0x7E16, 0x7E0D, 0x7E14, 0x7E25, 0x7E24, 0x7F43, - 0x7F7B, 0x7F7C, 0x7F7A, 0x7FB1, 0x7FEF, 0x802A, 0x8029, 0x806C, - 0x81B1, 0x81A6, 0x81AE, 0x81B9, 0x81B5, 0x81AB, 0x81B0, 0x81AC, - 0x81B4, 0x81B2, 0x81B7, 0x81A7, 0x81F2, 0x8255, 0x8256, 0x8257, - 0x8556, 0x8545, 0x856B, 0x854D, 0x8553, 0x8561, 0x8558, 0, -plane eb -at 0x40 - 0x8540, 0x8546, 0x8564, 0x8541, 0x8562, 0x8544, 0x8551, 0x8547, - 0x8563, 0x853E, 0x855B, 0x8571, 0x854E, 0x856E, 0x8575, 0x8555, - 0x8567, 0x8560, 0x858C, 0x8566, 0x855D, 0x8554, 0x8565, 0x856C, - 0x8663, 0x8665, 0x8664, 0x879B, 0x878F, 0x8797, 0x8793, 0x8792, - 0x8788, 0x8781, 0x8796, 0x8798, 0x8779, 0x8787, 0x87A3, 0x8785, - 0x8790, 0x8791, 0x879D, 0x8784, 0x8794, 0x879C, 0x879A, 0x8789, - 0x891E, 0x8926, 0x8930, 0x892D, 0x892E, 0x8927, 0x8931, 0x8922, - 0x8929, 0x8923, 0x892F, 0x892C, 0x891F, 0x89F1, 0x8AE0, 0, -at 0xA0 - 0, 0x8AE2, 0x8AF2, 0x8AF4, 0x8AF5, 0x8ADD, 0x8B14, 0x8AE4, - 0x8ADF, 0x8AF0, 0x8AC8, 0x8ADE, 0x8AE1, 0x8AE8, 0x8AFF, 0x8AEF, - 0x8AFB, 0x8C91, 0x8C92, 0x8C90, 0x8CF5, 0x8CEE, 0x8CF1, 0x8CF0, - 0x8CF3, 0x8D6C, 0x8D6E, 0x8DA5, 0x8DA7, 0x8E33, 0x8E3E, 0x8E38, - 0x8E40, 0x8E45, 0x8E36, 0x8E3C, 0x8E3D, 0x8E41, 0x8E30, 0x8E3F, - 0x8EBD, 0x8F36, 0x8F2E, 0x8F35, 0x8F32, 0x8F39, 0x8F37, 0x8F34, - 0x9076, 0x9079, 0x907B, 0x9086, 0x90FA, 0x9133, 0x9135, 0x9136, - 0x9193, 0x9190, 0x9191, 0x918D, 0x918F, 0x9327, 0x931E, 0x9308, - 0x931F, 0x9306, 0x930F, 0x937A, 0x9338, 0x933C, 0x931B, 0x9323, - 0x9312, 0x9301, 0x9346, 0x932D, 0x930E, 0x930D, 0x92CB, 0x931D, - 0x92FA, 0x9325, 0x9313, 0x92F9, 0x92F7, 0x9334, 0x9302, 0x9324, - 0x92FF, 0x9329, 0x9339, 0x9335, 0x932A, 0x9314, 0x930C, 0, -plane ec -at 0x40 - 0x930B, 0x92FE, 0x9309, 0x9300, 0x92FB, 0x9316, 0x95BC, 0x95CD, - 0x95BE, 0x95B9, 0x95BA, 0x95B6, 0x95BF, 0x95B5, 0x95BD, 0x96A9, - 0x96D4, 0x970B, 0x9712, 0x9710, 0x9799, 0x9797, 0x9794, 0x97F0, - 0x97F8, 0x9835, 0x982F, 0x9832, 0x9924, 0x991F, 0x9927, 0x9929, - 0x999E, 0x99EE, 0x99EC, 0x99E5, 0x99E4, 0x99F0, 0x99E3, 0x99EA, - 0x99E9, 0x99E7, 0x9AB9, 0x9ABF, 0x9AB4, 0x9ABB, 0x9AF6, 0x9AFA, - 0x9AF9, 0x9AF7, 0x9B33, 0x9B80, 0x9B85, 0x9B87, 0x9B7C, 0x9B7E, - 0x9B7B, 0x9B82, 0x9B93, 0x9B92, 0x9B90, 0x9B7A, 0x9B95, 0, -at 0xA0 - 0, 0x9B7D, 0x9B88, 0x9D25, 0x9D17, 0x9D20, 0x9D1E, 0x9D14, - 0x9D29, 0x9D1D, 0x9D18, 0x9D22, 0x9D10, 0x9D19, 0x9D1F, 0x9E88, - 0x9E86, 0x9E87, 0x9EAE, 0x9EAD, 0x9ED5, 0x9ED6, 0x9EFA, 0x9F12, - 0x9F3D, 0x5126, 0x5125, 0x5122, 0x5124, 0x5120, 0x5129, 0x52F4, - 0x5693, 0x568C, 0x568D, 0x5686, 0x5684, 0x5683, 0x567E, 0x5682, - 0x567F, 0x5681, 0x58D6, 0x58D4, 0x58CF, 0x58D2, 0x5B2D, 0x5B25, - 0x5B32, 0x5B23, 0x5B2C, 0x5B27, 0x5B26, 0x5B2F, 0x5B2E, 0x5B7B, - 0x5BF1, 0x5BF2, 0x5DB7, 0x5E6C, 0x5E6A, 0x5FBE, 0x5FBB, 0x61C3, - 0x61B5, 0x61BC, 0x61E7, 0x61E0, 0x61E5, 0x61E4, 0x61E8, 0x61DE, - 0x64EF, 0x64E9, 0x64E3, 0x64EB, 0x64E4, 0x64E8, 0x6581, 0x6580, - 0x65B6, 0x65DA, 0x66D2, 0x6A8D, 0x6A96, 0x6A81, 0x6AA5, 0x6A89, - 0x6A9F, 0x6A9B, 0x6AA1, 0x6A9E, 0x6A87, 0x6A93, 0x6A8E, 0, -plane ed -at 0x40 - 0x6A95, 0x6A83, 0x6AA8, 0x6AA4, 0x6A91, 0x6A7F, 0x6AA6, 0x6A9A, - 0x6A85, 0x6A8C, 0x6A92, 0x6B5B, 0x6BAD, 0x6C09, 0x6FCC, 0x6FA9, - 0x6FF4, 0x6FD4, 0x6FE3, 0x6FDC, 0x6FED, 0x6FE7, 0x6FE6, 0x6FDE, - 0x6FF2, 0x6FDD, 0x6FE2, 0x6FE8, 0x71E1, 0x71F1, 0x71E8, 0x71F2, - 0x71E4, 0x71F0, 0x71E2, 0x7373, 0x736E, 0x736F, 0x7497, 0x74B2, - 0x74AB, 0x7490, 0x74AA, 0x74AD, 0x74B1, 0x74A5, 0x74AF, 0x7510, - 0x7511, 0x7512, 0x750F, 0x7584, 0x7643, 0x7648, 0x7649, 0x7647, - 0x76A4, 0x76E9, 0x77B5, 0x77AB, 0x77B2, 0x77B7, 0x77B6, 0, -at 0xA0 - 0, 0x77B4, 0x77B1, 0x77A8, 0x77F0, 0x78F3, 0x78FD, 0x7902, - 0x78FB, 0x78FC, 0x78F2, 0x7905, 0x78F9, 0x78FE, 0x7904, 0x79AB, - 0x79A8, 0x7A5C, 0x7A5B, 0x7A56, 0x7A58, 0x7A54, 0x7A5A, 0x7ABE, - 0x7AC0, 0x7AC1, 0x7C05, 0x7C0F, 0x7BF2, 0x7C00, 0x7BFF, 0x7BFB, - 0x7C0E, 0x7BF4, 0x7C0B, 0x7BF3, 0x7C02, 0x7C09, 0x7C03, 0x7C01, - 0x7BF8, 0x7BFD, 0x7C06, 0x7BF0, 0x7BF1, 0x7C10, 0x7C0A, 0x7CE8, - 0x7E2D, 0x7E3C, 0x7E42, 0x7E33, 0x9848, 0x7E38, 0x7E2A, 0x7E49, - 0x7E40, 0x7E47, 0x7E29, 0x7E4C, 0x7E30, 0x7E3B, 0x7E36, 0x7E44, - 0x7E3A, 0x7F45, 0x7F7F, 0x7F7E, 0x7F7D, 0x7FF4, 0x7FF2, 0x802C, - 0x81BB, 0x81C4, 0x81CC, 0x81CA, 0x81C5, 0x81C7, 0x81BC, 0x81E9, - 0x825B, 0x825A, 0x825C, 0x8583, 0x8580, 0x858F, 0x85A7, 0x8595, - 0x85A0, 0x858B, 0x85A3, 0x857B, 0x85A4, 0x859A, 0x859E, 0, -plane ee -at 0x40 - 0x8577, 0x857C, 0x8589, 0x85A1, 0x857A, 0x8578, 0x8557, 0x858E, - 0x8596, 0x8586, 0x858D, 0x8599, 0x859D, 0x8581, 0x85A2, 0x8582, - 0x8588, 0x8585, 0x8579, 0x8576, 0x8598, 0x8590, 0x859F, 0x8668, - 0x87BE, 0x87AA, 0x87AD, 0x87C5, 0x87B0, 0x87AC, 0x87B9, 0x87B5, - 0x87BC, 0x87AE, 0x87C9, 0x87C3, 0x87C2, 0x87CC, 0x87B7, 0x87AF, - 0x87C4, 0x87CA, 0x87B4, 0x87B6, 0x87BF, 0x87B8, 0x87BD, 0x87DE, - 0x87B2, 0x8935, 0x8933, 0x893C, 0x893E, 0x8941, 0x8952, 0x8937, - 0x8942, 0x89AD, 0x89AF, 0x89AE, 0x89F2, 0x89F3, 0x8B1E, 0, -at 0xA0 - 0, 0x8B18, 0x8B16, 0x8B11, 0x8B05, 0x8B0B, 0x8B22, 0x8B0F, - 0x8B12, 0x8B15, 0x8B07, 0x8B0D, 0x8B08, 0x8B06, 0x8B1C, 0x8B13, - 0x8B1A, 0x8C4F, 0x8C70, 0x8C72, 0x8C71, 0x8C6F, 0x8C95, 0x8C94, - 0x8CF9, 0x8D6F, 0x8E4E, 0x8E4D, 0x8E53, 0x8E50, 0x8E4C, 0x8E47, - 0x8F43, 0x8F40, 0x9085, 0x907E, 0x9138, 0x919A, 0x91A2, 0x919B, - 0x9199, 0x919F, 0x91A1, 0x919D, 0x91A0, 0x93A1, 0x9383, 0x93AF, - 0x9364, 0x9356, 0x9347, 0x937C, 0x9358, 0x935C, 0x9376, 0x9349, - 0x9350, 0x9351, 0x9360, 0x936D, 0x938F, 0x934C, 0x936A, 0x9379, - 0x9357, 0x9355, 0x9352, 0x934F, 0x9371, 0x9377, 0x937B, 0x9361, - 0x935E, 0x9363, 0x9367, 0x9380, 0x934E, 0x9359, 0x95C7, 0x95C0, - 0x95C9, 0x95C3, 0x95C5, 0x95B7, 0x96AE, 0x96B0, 0x96AC, 0x9720, - 0x971F, 0x9718, 0x971D, 0x9719, 0x979A, 0x97A1, 0x979C, 0, -plane ef -at 0x40 - 0x979E, 0x979D, 0x97D5, 0x97D4, 0x97F1, 0x9841, 0x9844, 0x984A, - 0x9849, 0x9845, 0x9843, 0x9925, 0x992B, 0x992C, 0x992A, 0x9933, - 0x9932, 0x992F, 0x992D, 0x9931, 0x9930, 0x9998, 0x99A3, 0x99A1, - 0x9A02, 0x99FA, 0x99F4, 0x99F7, 0x99F9, 0x99F8, 0x99F6, 0x99FB, - 0x99FD, 0x99FE, 0x99FC, 0x9A03, 0x9ABE, 0x9AFE, 0x9AFD, 0x9B01, - 0x9AFC, 0x9B48, 0x9B9A, 0x9BA8, 0x9B9E, 0x9B9B, 0x9BA6, 0x9BA1, - 0x9BA5, 0x9BA4, 0x9B86, 0x9BA2, 0x9BA0, 0x9BAF, 0x9D33, 0x9D41, - 0x9D67, 0x9D36, 0x9D2E, 0x9D2F, 0x9D31, 0x9D38, 0x9D30, 0, -at 0xA0 - 0, 0x9D45, 0x9D42, 0x9D43, 0x9D3E, 0x9D37, 0x9D40, 0x9D3D, - 0x7FF5, 0x9D2D, 0x9E8A, 0x9E89, 0x9E8D, 0x9EB0, 0x9EC8, 0x9EDA, - 0x9EFB, 0x9EFF, 0x9F24, 0x9F23, 0x9F22, 0x9F54, 0x9FA0, 0x5131, - 0x512D, 0x512E, 0x5698, 0x569C, 0x5697, 0x569A, 0x569D, 0x5699, - 0x5970, 0x5B3C, 0x5C69, 0x5C6A, 0x5DC0, 0x5E6D, 0x5E6E, 0x61D8, - 0x61DF, 0x61ED, 0x61EE, 0x61F1, 0x61EA, 0x61F0, 0x61EB, 0x61D6, - 0x61E9, 0x64FF, 0x6504, 0x64FD, 0x64F8, 0x6501, 0x6503, 0x64FC, - 0x6594, 0x65DB, 0x66DA, 0x66DB, 0x66D8, 0x6AC5, 0x6AB9, 0x6ABD, - 0x6AE1, 0x6AC6, 0x6ABA, 0x6AB6, 0x6AB7, 0x6AC7, 0x6AB4, 0x6AAD, - 0x6B5E, 0x6BC9, 0x6C0B, 0x7007, 0x700C, 0x700D, 0x7001, 0x7005, - 0x7014, 0x700E, 0x6FFF, 0x7000, 0x6FFB, 0x7026, 0x6FFC, 0x6FF7, - 0x700A, 0x7201, 0x71FF, 0x71F9, 0x7203, 0x71FD, 0x7376, 0, -plane f0 -at 0x40 - 0x74B8, 0x74C0, 0x74B5, 0x74C1, 0x74BE, 0x74B6, 0x74BB, 0x74C2, - 0x7514, 0x7513, 0x765C, 0x7664, 0x7659, 0x7650, 0x7653, 0x7657, - 0x765A, 0x76A6, 0x76BD, 0x76EC, 0x77C2, 0x77BA, 0x78FF, 0x790C, - 0x7913, 0x7914, 0x7909, 0x7910, 0x7912, 0x7911, 0x79AD, 0x79AC, - 0x7A5F, 0x7C1C, 0x7C29, 0x7C19, 0x7C20, 0x7C1F, 0x7C2D, 0x7C1D, - 0x7C26, 0x7C28, 0x7C22, 0x7C25, 0x7C30, 0x7E5C, 0x7E50, 0x7E56, - 0x7E63, 0x7E58, 0x7E62, 0x7E5F, 0x7E51, 0x7E60, 0x7E57, 0x7E53, - 0x7FB5, 0x7FB3, 0x7FF7, 0x7FF8, 0x8075, 0x81D1, 0x81D2, 0, -at 0xA0 - 0, 0x81D0, 0x825F, 0x825E, 0x85B4, 0x85C6, 0x85C0, 0x85C3, - 0x85C2, 0x85B3, 0x85B5, 0x85BD, 0x85C7, 0x85C4, 0x85BF, 0x85CB, - 0x85CE, 0x85C8, 0x85C5, 0x85B1, 0x85B6, 0x85D2, 0x8624, 0x85B8, - 0x85B7, 0x85BE, 0x8669, 0x87E7, 0x87E6, 0x87E2, 0x87DB, 0x87EB, - 0x87EA, 0x87E5, 0x87DF, 0x87F3, 0x87E4, 0x87D4, 0x87DC, 0x87D3, - 0x87ED, 0x87D8, 0x87E3, 0x87A4, 0x87D7, 0x87D9, 0x8801, 0x87F4, - 0x87E8, 0x87DD, 0x8953, 0x894B, 0x894F, 0x894C, 0x8946, 0x8950, - 0x8951, 0x8949, 0x8B2A, 0x8B27, 0x8B23, 0x8B33, 0x8B30, 0x8B35, - 0x8B47, 0x8B2F, 0x8B3C, 0x8B3E, 0x8B31, 0x8B25, 0x8B37, 0x8B26, - 0x8B36, 0x8B2E, 0x8B24, 0x8B3B, 0x8B3D, 0x8B3A, 0x8C42, 0x8C75, - 0x8C99, 0x8C98, 0x8C97, 0x8CFE, 0x8D04, 0x8D02, 0x8D00, 0x8E5C, - 0x8E62, 0x8E60, 0x8E57, 0x8E56, 0x8E5E, 0x8E65, 0x8E67, 0, -plane f1 -at 0x40 - 0x8E5B, 0x8E5A, 0x8E61, 0x8E5D, 0x8E69, 0x8E54, 0x8F46, 0x8F47, - 0x8F48, 0x8F4B, 0x9128, 0x913A, 0x913B, 0x913E, 0x91A8, 0x91A5, - 0x91A7, 0x91AF, 0x91AA, 0x93B5, 0x938C, 0x9392, 0x93B7, 0x939B, - 0x939D, 0x9389, 0x93A7, 0x938E, 0x93AA, 0x939E, 0x93A6, 0x9395, - 0x9388, 0x9399, 0x939F, 0x938D, 0x93B1, 0x9391, 0x93B2, 0x93A4, - 0x93A8, 0x93B4, 0x93A3, 0x93A5, 0x95D2, 0x95D3, 0x95D1, 0x96B3, - 0x96D7, 0x96DA, 0x5DC2, 0x96DF, 0x96D8, 0x96DD, 0x9723, 0x9722, - 0x9725, 0x97AC, 0x97AE, 0x97A8, 0x97AB, 0x97A4, 0x97AA, 0, -at 0xA0 - 0, 0x97A2, 0x97A5, 0x97D7, 0x97D9, 0x97D6, 0x97D8, 0x97FA, - 0x9850, 0x9851, 0x9852, 0x98B8, 0x9941, 0x993C, 0x993A, 0x9A0F, - 0x9A0B, 0x9A09, 0x9A0D, 0x9A04, 0x9A11, 0x9A0A, 0x9A05, 0x9A07, - 0x9A06, 0x9AC0, 0x9ADC, 0x9B08, 0x9B04, 0x9B05, 0x9B29, 0x9B35, - 0x9B4A, 0x9B4C, 0x9B4B, 0x9BC7, 0x9BC6, 0x9BC3, 0x9BBF, 0x9BC1, - 0x9BB5, 0x9BB8, 0x9BD3, 0x9BB6, 0x9BC4, 0x9BB9, 0x9BBD, 0x9D5C, - 0x9D53, 0x9D4F, 0x9D4A, 0x9D5B, 0x9D4B, 0x9D59, 0x9D56, 0x9D4C, - 0x9D57, 0x9D52, 0x9D54, 0x9D5F, 0x9D58, 0x9D5A, 0x9E8E, 0x9E8C, - 0x9EDF, 0x9F01, 0x9F00, 0x9F16, 0x9F25, 0x9F2B, 0x9F2A, 0x9F29, - 0x9F28, 0x9F4C, 0x9F55, 0x5134, 0x5135, 0x5296, 0x52F7, 0x53B4, - 0x56AB, 0x56AD, 0x56A6, 0x56A7, 0x56AA, 0x56AC, 0x58DA, 0x58DD, - 0x58DB, 0x5912, 0x5B3D, 0x5B3E, 0x5B3F, 0x5DC3, 0x5E70, 0, -plane f2 -at 0x40 - 0x5FBF, 0x61FB, 0x6507, 0x6510, 0x650D, 0x6509, 0x650C, 0x650E, - 0x6584, 0x65DE, 0x65DD, 0x66DE, 0x6AE7, 0x6AE0, 0x6ACC, 0x6AD1, - 0x6AD9, 0x6ACB, 0x6ADF, 0x6ADC, 0x6AD0, 0x6AEB, 0x6ACF, 0x6ACD, - 0x6ADE, 0x6B60, 0x6BB0, 0x6C0C, 0x7019, 0x7027, 0x7020, 0x7016, - 0x702B, 0x7021, 0x7022, 0x7023, 0x7029, 0x7017, 0x7024, 0x701C, - 0x702A, 0x720C, 0x720A, 0x7207, 0x7202, 0x7205, 0x72A5, 0x72A6, - 0x72A4, 0x72A3, 0x72A1, 0x74CB, 0x74C5, 0x74B7, 0x74C3, 0x7516, - 0x7660, 0x77C9, 0x77CA, 0x77C4, 0x77F1, 0x791D, 0x791B, 0, -at 0xA0 - 0, 0x7921, 0x791C, 0x7917, 0x791E, 0x79B0, 0x7A67, 0x7A68, - 0x7C33, 0x7C3C, 0x7C39, 0x7C2C, 0x7C3B, 0x7CEC, 0x7CEA, 0x7E76, - 0x7E75, 0x7E78, 0x7E70, 0x7E77, 0x7E6F, 0x7E7A, 0x7E72, 0x7E74, - 0x7E68, 0x7F4B, 0x7F4A, 0x7F83, 0x7F86, 0x7FB7, 0x7FFD, 0x7FFE, - 0x8078, 0x81D7, 0x81D5, 0x8264, 0x8261, 0x8263, 0x85EB, 0x85F1, - 0x85ED, 0x85D9, 0x85E1, 0x85E8, 0x85DA, 0x85D7, 0x85EC, 0x85F2, - 0x85F8, 0x85D8, 0x85DF, 0x85E3, 0x85DC, 0x85D1, 0x85F0, 0x85E6, - 0x85EF, 0x85DE, 0x85E2, 0x8800, 0x87FA, 0x8803, 0x87F6, 0x87F7, - 0x8809, 0x880C, 0x880B, 0x8806, 0x87FC, 0x8808, 0x87FF, 0x880A, - 0x8802, 0x8962, 0x895A, 0x895B, 0x8957, 0x8961, 0x895C, 0x8958, - 0x895D, 0x8959, 0x8988, 0x89B7, 0x89B6, 0x89F6, 0x8B50, 0x8B48, - 0x8B4A, 0x8B40, 0x8B53, 0x8B56, 0x8B54, 0x8B4B, 0x8B55, 0, -plane f3 -at 0x40 - 0x8B51, 0x8B42, 0x8B52, 0x8B57, 0x8C43, 0x8C77, 0x8C76, 0x8C9A, - 0x8D06, 0x8D07, 0x8D09, 0x8DAC, 0x8DAA, 0x8DAD, 0x8DAB, 0x8E6D, - 0x8E78, 0x8E73, 0x8E6A, 0x8E6F, 0x8E7B, 0x8EC2, 0x8F52, 0x8F51, - 0x8F4F, 0x8F50, 0x8F53, 0x8FB4, 0x9140, 0x913F, 0x91B0, 0x91AD, - 0x93DE, 0x93C7, 0x93CF, 0x93C2, 0x93DA, 0x93D0, 0x93F9, 0x93EC, - 0x93CC, 0x93D9, 0x93A9, 0x93E6, 0x93CA, 0x93D4, 0x93EE, 0x93E3, - 0x93D5, 0x93C4, 0x93CE, 0x93C0, 0x93D2, 0x93E7, 0x957D, 0x95DA, - 0x95DB, 0x96E1, 0x9729, 0x972B, 0x972C, 0x9728, 0x9726, 0, -at 0xA0 - 0, 0x97B3, 0x97B7, 0x97B6, 0x97DD, 0x97DE, 0x97DF, 0x985C, - 0x9859, 0x985D, 0x9857, 0x98BF, 0x98BD, 0x98BB, 0x98BE, 0x9948, - 0x9947, 0x9943, 0x99A6, 0x99A7, 0x9A1A, 0x9A15, 0x9A25, 0x9A1D, - 0x9A24, 0x9A1B, 0x9A22, 0x9A20, 0x9A27, 0x9A23, 0x9A1E, 0x9A1C, - 0x9A14, 0x9AC2, 0x9B0B, 0x9B0A, 0x9B0E, 0x9B0C, 0x9B37, 0x9BEA, - 0x9BEB, 0x9BE0, 0x9BDE, 0x9BE4, 0x9BE6, 0x9BE2, 0x9BF0, 0x9BD4, - 0x9BD7, 0x9BEC, 0x9BDC, 0x9BD9, 0x9BE5, 0x9BD5, 0x9BE1, 0x9BDA, - 0x9D77, 0x9D81, 0x9D8A, 0x9D84, 0x9D88, 0x9D71, 0x9D80, 0x9D78, - 0x9D86, 0x9D8B, 0x9D8C, 0x9D7D, 0x9D6B, 0x9D74, 0x9D75, 0x9D70, - 0x9D69, 0x9D85, 0x9D73, 0x9D7B, 0x9D82, 0x9D6F, 0x9D79, 0x9D7F, - 0x9D87, 0x9D68, 0x9E94, 0x9E91, 0x9EC0, 0x9EFC, 0x9F2D, 0x9F40, - 0x9F41, 0x9F4D, 0x9F56, 0x9F57, 0x9F58, 0x5337, 0x56B2, 0, -plane f4 -at 0x40 - 0x56B5, 0x56B3, 0x58E3, 0x5B45, 0x5DC6, 0x5DC7, 0x5EEE, 0x5EEF, - 0x5FC0, 0x5FC1, 0x61F9, 0x6517, 0x6516, 0x6515, 0x6513, 0x65DF, - 0x66E8, 0x66E3, 0x66E4, 0x6AF3, 0x6AF0, 0x6AEA, 0x6AE8, 0x6AF9, - 0x6AF1, 0x6AEE, 0x6AEF, 0x703C, 0x7035, 0x702F, 0x7037, 0x7034, - 0x7031, 0x7042, 0x7038, 0x703F, 0x703A, 0x7039, 0x7040, 0x703B, - 0x7033, 0x7041, 0x7213, 0x7214, 0x72A8, 0x737D, 0x737C, 0x74BA, - 0x76AB, 0x76AA, 0x76BE, 0x76ED, 0x77CC, 0x77CE, 0x77CF, 0x77CD, - 0x77F2, 0x7925, 0x7923, 0x7927, 0x7928, 0x7924, 0x7929, 0, -at 0xA0 - 0, 0x79B2, 0x7A6E, 0x7A6C, 0x7A6D, 0x7AF7, 0x7C49, 0x7C48, - 0x7C4A, 0x7C47, 0x7C45, 0x7CEE, 0x7E7B, 0x7E7E, 0x7E81, 0x7E80, - 0x7FBA, 0x7FFF, 0x8079, 0x81DB, 0x81D9, 0x820B, 0x8268, 0x8269, - 0x8622, 0x85FF, 0x8601, 0x85FE, 0x861B, 0x8600, 0x85F6, 0x8604, - 0x8609, 0x8605, 0x860C, 0x85FD, 0x8819, 0x8810, 0x8811, 0x8817, - 0x8813, 0x8816, 0x8963, 0x8966, 0x89B9, 0x89F7, 0x8B60, 0x8B6A, - 0x8B5D, 0x8B68, 0x8B63, 0x8B65, 0x8B67, 0x8B6D, 0x8DAE, 0x8E86, - 0x8E88, 0x8E84, 0x8F59, 0x8F56, 0x8F57, 0x8F55, 0x8F58, 0x8F5A, - 0x908D, 0x9143, 0x9141, 0x91B7, 0x91B5, 0x91B2, 0x91B3, 0x940B, - 0x9413, 0x93FB, 0x9420, 0x940F, 0x9414, 0x93FE, 0x9415, 0x9410, - 0x9428, 0x9419, 0x940D, 0x93F5, 0x9400, 0x93F7, 0x9407, 0x940E, - 0x9416, 0x9412, 0x93FA, 0x9409, 0x93F8, 0x940A, 0x93FF, 0, -plane f5 -at 0x40 - 0x93FC, 0x940C, 0x93F6, 0x9411, 0x9406, 0x95DE, 0x95E0, 0x95DF, - 0x972E, 0x972F, 0x97B9, 0x97BB, 0x97FD, 0x97FE, 0x9860, 0x9862, - 0x9863, 0x985F, 0x98C1, 0x98C2, 0x9950, 0x994E, 0x9959, 0x994C, - 0x994B, 0x9953, 0x9A32, 0x9A34, 0x9A31, 0x9A2C, 0x9A2A, 0x9A36, - 0x9A29, 0x9A2E, 0x9A38, 0x9A2D, 0x9AC7, 0x9ACA, 0x9AC6, 0x9B10, - 0x9B12, 0x9B11, 0x9C0B, 0x9C08, 0x9BF7, 0x9C05, 0x9C12, 0x9BF8, - 0x9C40, 0x9C07, 0x9C0E, 0x9C06, 0x9C17, 0x9C14, 0x9C09, 0x9D9F, - 0x9D99, 0x9DA4, 0x9D9D, 0x9D92, 0x9D98, 0x9D90, 0x9D9B, 0, -at 0xA0 - 0, 0x9DA0, 0x9D94, 0x9D9C, 0x9DAA, 0x9D97, 0x9DA1, 0x9D9A, - 0x9DA2, 0x9DA8, 0x9D9E, 0x9DA3, 0x9DBF, 0x9DA9, 0x9D96, 0x9DA6, - 0x9DA7, 0x9E99, 0x9E9B, 0x9E9A, 0x9EE5, 0x9EE4, 0x9EE7, 0x9EE6, - 0x9F30, 0x9F2E, 0x9F5B, 0x9F60, 0x9F5E, 0x9F5D, 0x9F59, 0x9F91, - 0x513A, 0x5139, 0x5298, 0x5297, 0x56C3, 0x56BD, 0x56BE, 0x5B48, - 0x5B47, 0x5DCB, 0x5DCF, 0x5EF1, 0x61FD, 0x651B, 0x6B02, 0x6AFC, - 0x6B03, 0x6AF8, 0x6B00, 0x7043, 0x7044, 0x704A, 0x7048, 0x7049, - 0x7045, 0x7046, 0x721D, 0x721A, 0x7219, 0x737E, 0x7517, 0x766A, - 0x77D0, 0x792D, 0x7931, 0x792F, 0x7C54, 0x7C53, 0x7CF2, 0x7E8A, - 0x7E87, 0x7E88, 0x7E8B, 0x7E86, 0x7E8D, 0x7F4D, 0x7FBB, 0x8030, - 0x81DD, 0x8618, 0x862A, 0x8626, 0x861F, 0x8623, 0x861C, 0x8619, - 0x8627, 0x862E, 0x8621, 0x8620, 0x8629, 0x861E, 0x8625, 0, -plane f6 -at 0x40 - 0x8829, 0x881D, 0x881B, 0x8820, 0x8824, 0x881C, 0x882B, 0x884A, - 0x896D, 0x8969, 0x896E, 0x896B, 0x89FA, 0x8B79, 0x8B78, 0x8B45, - 0x8B7A, 0x8B7B, 0x8D10, 0x8D14, 0x8DAF, 0x8E8E, 0x8E8C, 0x8F5E, - 0x8F5B, 0x8F5D, 0x9146, 0x9144, 0x9145, 0x91B9, 0x943F, 0x943B, - 0x9436, 0x9429, 0x943D, 0x943C, 0x9430, 0x9439, 0x942A, 0x9437, - 0x942C, 0x9440, 0x9431, 0x95E5, 0x95E4, 0x95E3, 0x9735, 0x973A, - 0x97BF, 0x97E1, 0x9864, 0x98C9, 0x98C6, 0x98C0, 0x9958, 0x9956, - 0x9A39, 0x9A3D, 0x9A46, 0x9A44, 0x9A42, 0x9A41, 0x9A3A, 0, -at 0xA0 - 0, 0x9A3F, 0x9ACD, 0x9B15, 0x9B17, 0x9B18, 0x9B16, 0x9B3A, - 0x9B52, 0x9C2B, 0x9C1D, 0x9C1C, 0x9C2C, 0x9C23, 0x9C28, 0x9C29, - 0x9C24, 0x9C21, 0x9DB7, 0x9DB6, 0x9DBC, 0x9DC1, 0x9DC7, 0x9DCA, - 0x9DCF, 0x9DBE, 0x9DC5, 0x9DC3, 0x9DBB, 0x9DB5, 0x9DCE, 0x9DB9, - 0x9DBA, 0x9DAC, 0x9DC8, 0x9DB1, 0x9DAD, 0x9DCC, 0x9DB3, 0x9DCD, - 0x9DB2, 0x9E7A, 0x9E9C, 0x9EEB, 0x9EEE, 0x9EED, 0x9F1B, 0x9F18, - 0x9F1A, 0x9F31, 0x9F4E, 0x9F65, 0x9F64, 0x9F92, 0x4EB9, 0x56C6, - 0x56C5, 0x56CB, 0x5971, 0x5B4B, 0x5B4C, 0x5DD5, 0x5DD1, 0x5EF2, - 0x6521, 0x6520, 0x6526, 0x6522, 0x6B0B, 0x6B08, 0x6B09, 0x6C0D, - 0x7055, 0x7056, 0x7057, 0x7052, 0x721E, 0x721F, 0x72A9, 0x737F, - 0x74D8, 0x74D5, 0x74D9, 0x74D7, 0x766D, 0x76AD, 0x7935, 0x79B4, - 0x7A70, 0x7A71, 0x7C57, 0x7C5C, 0x7C59, 0x7C5B, 0x7C5A, 0, -plane f7 -at 0x40 - 0x7CF4, 0x7CF1, 0x7E91, 0x7F4F, 0x7F87, 0x81DE, 0x826B, 0x8634, - 0x8635, 0x8633, 0x862C, 0x8632, 0x8636, 0x882C, 0x8828, 0x8826, - 0x882A, 0x8825, 0x8971, 0x89BF, 0x89BE, 0x89FB, 0x8B7E, 0x8B84, - 0x8B82, 0x8B86, 0x8B85, 0x8B7F, 0x8D15, 0x8E95, 0x8E94, 0x8E9A, - 0x8E92, 0x8E90, 0x8E96, 0x8E97, 0x8F60, 0x8F62, 0x9147, 0x944C, - 0x9450, 0x944A, 0x944B, 0x944F, 0x9447, 0x9445, 0x9448, 0x9449, - 0x9446, 0x973F, 0x97E3, 0x986A, 0x9869, 0x98CB, 0x9954, 0x995B, - 0x9A4E, 0x9A53, 0x9A54, 0x9A4C, 0x9A4F, 0x9A48, 0x9A4A, 0, -at 0xA0 - 0, 0x9A49, 0x9A52, 0x9A50, 0x9AD0, 0x9B19, 0x9B2B, 0x9B3B, - 0x9B56, 0x9B55, 0x9C46, 0x9C48, 0x9C3F, 0x9C44, 0x9C39, 0x9C33, - 0x9C41, 0x9C3C, 0x9C37, 0x9C34, 0x9C32, 0x9C3D, 0x9C36, 0x9DDB, - 0x9DD2, 0x9DDE, 0x9DDA, 0x9DCB, 0x9DD0, 0x9DDC, 0x9DD1, 0x9DDF, - 0x9DE9, 0x9DD9, 0x9DD8, 0x9DD6, 0x9DF5, 0x9DD5, 0x9DDD, 0x9EB6, - 0x9EF0, 0x9F35, 0x9F33, 0x9F32, 0x9F42, 0x9F6B, 0x9F95, 0x9FA2, - 0x513D, 0x5299, 0x58E8, 0x58E7, 0x5972, 0x5B4D, 0x5DD8, 0x882F, - 0x5F4F, 0x6201, 0x6203, 0x6204, 0x6529, 0x6525, 0x6596, 0x66EB, - 0x6B11, 0x6B12, 0x6B0F, 0x6BCA, 0x705B, 0x705A, 0x7222, 0x7382, - 0x7381, 0x7383, 0x7670, 0x77D4, 0x7C67, 0x7C66, 0x7E95, 0x826C, - 0x863A, 0x8640, 0x8639, 0x863C, 0x8631, 0x863B, 0x863E, 0x8830, - 0x8832, 0x882E, 0x8833, 0x8976, 0x8974, 0x8973, 0x89FE, 0, -plane f8 -at 0x40 - 0x8B8C, 0x8B8E, 0x8B8B, 0x8B88, 0x8C45, 0x8D19, 0x8E98, 0x8F64, - 0x8F63, 0x91BC, 0x9462, 0x9455, 0x945D, 0x9457, 0x945E, 0x97C4, - 0x97C5, 0x9800, 0x9A56, 0x9A59, 0x9B1E, 0x9B1F, 0x9B20, 0x9C52, - 0x9C58, 0x9C50, 0x9C4A, 0x9C4D, 0x9C4B, 0x9C55, 0x9C59, 0x9C4C, - 0x9C4E, 0x9DFB, 0x9DF7, 0x9DEF, 0x9DE3, 0x9DEB, 0x9DF8, 0x9DE4, - 0x9DF6, 0x9DE1, 0x9DEE, 0x9DE6, 0x9DF2, 0x9DF0, 0x9DE2, 0x9DEC, - 0x9DF4, 0x9DF3, 0x9DE8, 0x9DED, 0x9EC2, 0x9ED0, 0x9EF2, 0x9EF3, - 0x9F06, 0x9F1C, 0x9F38, 0x9F37, 0x9F36, 0x9F43, 0x9F4F, 0, -at 0xA0 - 0, 0x9F71, 0x9F70, 0x9F6E, 0x9F6F, 0x56D3, 0x56CD, 0x5B4E, - 0x5C6D, 0x652D, 0x66ED, 0x66EE, 0x6B13, 0x705F, 0x7061, 0x705D, - 0x7060, 0x7223, 0x74DB, 0x74E5, 0x77D5, 0x7938, 0x79B7, 0x79B6, - 0x7C6A, 0x7E97, 0x7F89, 0x826D, 0x8643, 0x8838, 0x8837, 0x8835, - 0x884B, 0x8B94, 0x8B95, 0x8E9E, 0x8E9F, 0x8EA0, 0x8E9D, 0x91BE, - 0x91BD, 0x91C2, 0x946B, 0x9468, 0x9469, 0x96E5, 0x9746, 0x9743, - 0x9747, 0x97C7, 0x97E5, 0x9A5E, 0x9AD5, 0x9B59, 0x9C63, 0x9C67, - 0x9C66, 0x9C62, 0x9C5E, 0x9C60, 0x9E02, 0x9DFE, 0x9E07, 0x9E03, - 0x9E06, 0x9E05, 0x9E00, 0x9E01, 0x9E09, 0x9DFF, 0x9DFD, 0x9E04, - 0x9EA0, 0x9F1E, 0x9F46, 0x9F74, 0x9F75, 0x9F76, 0x56D4, 0x652E, - 0x65B8, 0x6B18, 0x6B19, 0x6B17, 0x6B1A, 0x7062, 0x7226, 0x72AA, - 0x77D8, 0x77D9, 0x7939, 0x7C69, 0x7C6B, 0x7CF6, 0x7E9A, 0, -plane f9 -at 0x40 - 0x7E98, 0x7E9B, 0x7E99, 0x81E0, 0x81E1, 0x8646, 0x8647, 0x8648, - 0x8979, 0x897A, 0x897C, 0x897B, 0x89FF, 0x8B98, 0x8B99, 0x8EA5, - 0x8EA4, 0x8EA3, 0x946E, 0x946D, 0x946F, 0x9471, 0x9473, 0x9749, - 0x9872, 0x995F, 0x9C68, 0x9C6E, 0x9C6D, 0x9E0B, 0x9E0D, 0x9E10, - 0x9E0F, 0x9E12, 0x9E11, 0x9EA1, 0x9EF5, 0x9F09, 0x9F47, 0x9F78, - 0x9F7B, 0x9F7A, 0x9F79, 0x571E, 0x7066, 0x7C6F, 0x883C, 0x8DB2, - 0x8EA6, 0x91C3, 0x9474, 0x9478, 0x9476, 0x9475, 0x9A60, 0x9C74, - 0x9C73, 0x9C71, 0x9C75, 0x9E14, 0x9E13, 0x9EF6, 0x9F0A, 0, -at 0xA0 - 0, 0x9FA4, 0x7068, 0x7065, 0x7CF7, 0x866A, 0x883E, 0x883D, - 0x883F, 0x8B9E, 0x8C9C, 0x8EA9, 0x8EC9, 0x974B, 0x9873, 0x9874, - 0x98CC, 0x9961, 0x99AB, 0x9A64, 0x9A66, 0x9A67, 0x9B24, 0x9E15, - 0x9E17, 0x9F48, 0x6207, 0x6B1E, 0x7227, 0x864C, 0x8EA8, 0x9482, - 0x9480, 0x9481, 0x9A69, 0x9A68, 0x9B2E, 0x9E19, 0x7229, 0x864B, - 0x8B9F, 0x9483, 0x9C79, 0x9EB7, 0x7675, 0x9A6B, 0x9C7A, 0x9E1D, - 0x7069, 0x706A, 0x9EA4, 0x9F7E, 0x9F49, 0x9F98, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fa -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -at 0xA0 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fb -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -at 0xA0 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fc -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -at 0xA0 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fd -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -at 0xA0 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fe -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -at 0xA0 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Build/source/texk/ttf2pt1/chinese/ugb.map b/Build/source/texk/ttf2pt1/chinese/ugb.map deleted file mode 100644 index 2f59ac1e4f9..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/ugb.map +++ /dev/null @@ -1,1236 +0,0 @@ -# -# GB 2312-80 -# - -plane a1 -at 0xa0 - 0, 0x3000, 0x3001, 0x3002, 0x00B7, 0x02C9, 0x02C7, 0x00A8, - 0x3003, 0x3005, 0x2015, 0xFF5E, 0x2016, 0x2026, 0x2018, 0x2019, - 0x201C, 0x201D, 0x3014, 0x3015, 0x3008, 0x3009, 0x300A, 0x300B, - 0x300C, 0x300D, 0x300E, 0x300F, 0x3016, 0x3017, 0x3010, 0x3011, - 0x00B1, 0x00D7, 0x00F7, 0x2236, 0x2227, 0x2228, 0x2211, 0x220F, - 0x222A, 0x2229, 0x2208, 0x2237, 0x221A, 0x22A5, 0x2225, 0x2220, - 0x2312, 0x2299, 0x222B, 0x222E, 0x2261, 0x224C, 0x2248, 0x223D, - 0x221D, 0x2260, 0x226E, 0x226F, 0x2264, 0x2265, 0x221E, 0x2235, - 0x2234, 0x2642, 0x2640, 0x00B0, 0x2032, 0x2033, 0x2103, 0xFF04, - 0x00A4, 0xFFE0, 0xFFE1, 0x2030, 0x00A7, 0x2116, 0x2606, 0x2605, - 0x25CB, 0x25CF, 0x25CE, 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25B3, - 0x25B2, 0x203B, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0, -plane a2 -at 0xa0 - 0, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, - 0x2177, 0x2178, 0x2179, 0, 0, 0, 0, 0, - 0, 0x2488, 0x2489, 0x248A, 0x248B, 0x248C, 0x248D, 0x248E, - 0x248F, 0x2490, 0x2491, 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, - 0x2497, 0x2498, 0x2499, 0x249A, 0x249B, 0x2474, 0x2475, 0x2476, - 0x2477, 0x2478, 0x2479, 0x247A, 0x247B, 0x247C, 0x247D, 0x247E, - 0x247F, 0x2480, 0x2481, 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, - 0x2487, 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, - 0x2467, 0x2468, 0x2469, 0, 0, 0x3220, 0x3221, 0x3222, - 0x3223, 0x3224, 0x3225, 0x3226, 0x3227, 0x3228, 0x3229, 0, - 0, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, - 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0, 0, 0, -plane a3 -at 0xa0 - 0, 0xFF01, 0xFF02, 0xFF03, 0xFFE5, 0xFF05, 0xFF06, 0xFF07, - 0xFF08, 0xFF09, 0xFF0A, 0xFF0B, 0xFF0C, 0xFF0D, 0xFF0E, 0xFF0F, - 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, 0xFF15, 0xFF16, 0xFF17, - 0xFF18, 0xFF19, 0xFF1A, 0xFF1B, 0xFF1C, 0xFF1D, 0xFF1E, 0xFF1F, - 0xFF20, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, - 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, - 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, - 0xFF38, 0xFF39, 0xFF3A, 0xFF3B, 0xFF3C, 0xFF3D, 0xFF3E, 0xFF3F, - 0xFF40, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, - 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, - 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, - 0xFF58, 0xFF59, 0xFF5A, 0xFF5B, 0xFF5C, 0xFF5D, 0xFFE3, 0, -plane a4 -at 0xa0 - 0, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, - 0x3048, 0x3049, 0x304A, 0x304B, 0x304C, 0x304D, 0x304E, 0x304F, - 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, - 0x3058, 0x3059, 0x305A, 0x305B, 0x305C, 0x305D, 0x305E, 0x305F, - 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, - 0x3068, 0x3069, 0x306A, 0x306B, 0x306C, 0x306D, 0x306E, 0x306F, - 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, - 0x3078, 0x3079, 0x307A, 0x307B, 0x307C, 0x307D, 0x307E, 0x307F, - 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, - 0x3088, 0x3089, 0x308A, 0x308B, 0x308C, 0x308D, 0x308E, 0x308F, - 0x3090, 0x3091, 0x3092, 0x3093, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a5 -at 0xa0 - 0, 0x30A1, 0x30A2, 0x30A3, 0x30A4, 0x30A5, 0x30A6, 0x30A7, - 0x30A8, 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, - 0x30B0, 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, - 0x30B8, 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, - 0x30C0, 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, - 0x30C8, 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, - 0x30D0, 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, - 0x30D8, 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, - 0x30E0, 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0x30E7, - 0x30E8, 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EE, 0x30EF, - 0x30F0, 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, 0x30F6, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a6 -at 0xa0 - 0, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, - 0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, - 0x03A0, 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, - 0x03A9, 0, 0, 0, 0, 0, 0, 0, - 0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, - 0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, - 0x03C0, 0x03C1, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, - 0x03C9, 0, 0, 0, 0, 0, 0, 0, - 0xFE35, 0xFE36, 0xFE39, 0xFE3A, 0xFE3F, 0xFE40, 0xFE3D, 0xFE3E, - 0xFE41, 0xFE42, 0xFE43, 0xFE44, 0, 0, 0xFE3B, 0xFE3C, - 0xFE37, 0xFE38, 0xFE31, 0, 0xFE33, 0xFE34, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a7 -at 0xa0 - 0, 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, - 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, - 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, - 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, - 0x042E, 0x042F, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, - 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, - 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, - 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, - 0x044E, 0x044F, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a8 -at 0xa0 - 0, 0x0101, 0x00E1, 0x01CE, 0x00E0, 0x0113, 0x00E9, 0x011B, - 0x00E8, 0x012B, 0x00ED, 0x01D0, 0x00EC, 0x014D, 0x00F3, 0x01D2, - 0x00F2, 0x016B, 0x00FA, 0x01D4, 0x00F9, 0x01D6, 0x01D8, 0x01DA, - 0x01DC, 0x00FC, 0x00EA, 0x0251, 0xE7C7, 0x0144, 0x0148, 0xE7C8, - 0x0261, 0, 0, 0, 0, 0x3105, 0x3106, 0x3107, - 0x3108, 0x3109, 0x310A, 0x310B, 0x310C, 0x310D, 0x310E, 0x310F, - 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, 0x3117, - 0x3118, 0x3119, 0x311A, 0x311B, 0x311C, 0x311D, 0x311E, 0x311F, - 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, 0x3127, - 0x3128, 0x3129, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a9 -at 0xa0 - 0, 0, 0, 0, 0x2500, 0x2501, 0x2502, 0x2503, - 0x2504, 0x2505, 0x2506, 0x2507, 0x2508, 0x2509, 0x250A, 0x250B, - 0x250C, 0x250D, 0x250E, 0x250F, 0x2510, 0x2511, 0x2512, 0x2513, - 0x2514, 0x2515, 0x2516, 0x2517, 0x2518, 0x2519, 0x251A, 0x251B, - 0x251C, 0x251D, 0x251E, 0x251F, 0x2520, 0x2521, 0x2522, 0x2523, - 0x2524, 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252A, 0x252B, - 0x252C, 0x252D, 0x252E, 0x252F, 0x2530, 0x2531, 0x2532, 0x2533, - 0x2534, 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253A, 0x253B, - 0x253C, 0x253D, 0x253E, 0x253F, 0x2540, 0x2541, 0x2542, 0x2543, - 0x2544, 0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254A, 0x254B, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane b0 -at 0xa0 - 0, 0x554A, 0x963F, 0x57C3, 0x6328, 0x54CE, 0x5509, 0x54C0, - 0x7691, 0x764C, 0x853C, 0x77EE, 0x827E, 0x788D, 0x7231, 0x9698, - 0x978D, 0x6C28, 0x5B89, 0x4FFA, 0x6309, 0x6697, 0x5CB8, 0x80FA, - 0x6848, 0x80AE, 0x6602, 0x76CE, 0x51F9, 0x6556, 0x71AC, 0x7FF1, - 0x8884, 0x50B2, 0x5965, 0x61CA, 0x6FB3, 0x82AD, 0x634C, 0x6252, - 0x53ED, 0x5427, 0x7B06, 0x516B, 0x75A4, 0x5DF4, 0x62D4, 0x8DCB, - 0x9776, 0x628A, 0x8019, 0x575D, 0x9738, 0x7F62, 0x7238, 0x767D, - 0x67CF, 0x767E, 0x6446, 0x4F70, 0x8D25, 0x62DC, 0x7A17, 0x6591, - 0x73ED, 0x642C, 0x6273, 0x822C, 0x9881, 0x677F, 0x7248, 0x626E, - 0x62CC, 0x4F34, 0x74E3, 0x534A, 0x529E, 0x7ECA, 0x90A6, 0x5E2E, - 0x6886, 0x699C, 0x8180, 0x7ED1, 0x68D2, 0x78C5, 0x868C, 0x9551, - 0x508D, 0x8C24, 0x82DE, 0x80DE, 0x5305, 0x8912, 0x5265, 0, -plane b1 -at 0xa0 - 0x775C, 0x8584, 0x96F9, 0x4FDD, 0x5821, 0x9971, 0x5B9D, 0x62B1, - 0x62A5, 0x66B4, 0x8C79, 0x9C8D, 0x7206, 0x676F, 0x7891, 0x60B2, - 0x5351, 0x5317, 0x8F88, 0x80CC, 0x8D1D, 0x94A1, 0x500D, 0x72C8, - 0x5907, 0x60EB, 0x7119, 0x88AB, 0x5954, 0x82EF, 0x672C, 0x7B28, - 0x5D29, 0x7EF7, 0x752D, 0x6CF5, 0x8E66, 0x8FF8, 0x903C, 0x9F3B, - 0x6BD4, 0x9119, 0x7B14, 0x5F7C, 0x78A7, 0x84D6, 0x853D, 0x6BD5, - 0x6BD9, 0x6BD6, 0x5E01, 0x5E87, 0x75F9, 0x95ED, 0x655D, 0x5F0A, - 0x5FC5, 0x8F9F, 0x58C1, 0x81C2, 0x907F, 0x965B, 0x97AD, 0x8FB9, - 0x7F16, 0x8D2C, 0x6241, 0x4FBF, 0x53D8, 0x535E, 0x8FA8, 0x8FA9, - 0x8FAB, 0x904D, 0x6807, 0x5F6A, 0x8198, 0x8868, 0x9CD6, 0x618B, - 0x522B, 0x762A, 0x5F6C, 0x658C, 0x6FD2, 0x6EE8, 0x5BBE, 0x6448, - 0x5175, 0x51B0, 0x67C4, 0x4E19, 0x79C9, 0x997C, 0x70B3, 0, -plane b2 -at 0xa0 - 0x77E4, 0x75C5, 0x5E76, 0x73BB, 0x83E0, 0x64AD, 0x62E8, 0x94B5, - 0x6CE2, 0x535A, 0x52C3, 0x640F, 0x94C2, 0x7B94, 0x4F2F, 0x5E1B, - 0x8236, 0x8116, 0x818A, 0x6E24, 0x6CCA, 0x9A73, 0x6355, 0x535C, - 0x54FA, 0x8865, 0x57E0, 0x4E0D, 0x5E03, 0x6B65, 0x7C3F, 0x90E8, - 0x6016, 0x64E6, 0x731C, 0x88C1, 0x6750, 0x624D, 0x8D22, 0x776C, - 0x8E29, 0x91C7, 0x5F69, 0x83DC, 0x8521, 0x9910, 0x53C2, 0x8695, - 0x6B8B, 0x60ED, 0x60E8, 0x707F, 0x82CD, 0x8231, 0x4ED3, 0x6CA7, - 0x85CF, 0x64CD, 0x7CD9, 0x69FD, 0x66F9, 0x8349, 0x5395, 0x7B56, - 0x4FA7, 0x518C, 0x6D4B, 0x5C42, 0x8E6D, 0x63D2, 0x53C9, 0x832C, - 0x8336, 0x67E5, 0x78B4, 0x643D, 0x5BDF, 0x5C94, 0x5DEE, 0x8BE7, - 0x62C6, 0x67F4, 0x8C7A, 0x6400, 0x63BA, 0x8749, 0x998B, 0x8C17, - 0x7F20, 0x94F2, 0x4EA7, 0x9610, 0x98A4, 0x660C, 0x7316, 0, -plane b3 -at 0xa0 - 0x7883, 0x573A, 0x5C1D, 0x5E38, 0x957F, 0x507F, 0x80A0, 0x5382, - 0x655E, 0x7545, 0x5531, 0x5021, 0x8D85, 0x6284, 0x949E, 0x671D, - 0x5632, 0x6F6E, 0x5DE2, 0x5435, 0x7092, 0x8F66, 0x626F, 0x64A4, - 0x63A3, 0x5F7B, 0x6F88, 0x90F4, 0x81E3, 0x8FB0, 0x5C18, 0x6668, - 0x5FF1, 0x6C89, 0x9648, 0x8D81, 0x886C, 0x6491, 0x79F0, 0x57CE, - 0x6A59, 0x6210, 0x5448, 0x4E58, 0x7A0B, 0x60E9, 0x6F84, 0x8BDA, - 0x627F, 0x901E, 0x9A8B, 0x79E4, 0x5403, 0x75F4, 0x6301, 0x5319, - 0x6C60, 0x8FDF, 0x5F1B, 0x9A70, 0x803B, 0x9F7F, 0x4F88, 0x5C3A, - 0x8D64, 0x7FC5, 0x65A5, 0x70BD, 0x5145, 0x51B2, 0x866B, 0x5D07, - 0x5BA0, 0x62BD, 0x916C, 0x7574, 0x8E0C, 0x7A20, 0x6101, 0x7B79, - 0x4EC7, 0x7EF8, 0x7785, 0x4E11, 0x81ED, 0x521D, 0x51FA, 0x6A71, - 0x53A8, 0x8E87, 0x9504, 0x96CF, 0x6EC1, 0x9664, 0x695A, 0, -plane b4 -at 0xa0 - 0x790C, 0x7840, 0x50A8, 0x77D7, 0x6410, 0x89E6, 0x5904, 0x63E3, - 0x5DDD, 0x7A7F, 0x693D, 0x4F20, 0x8239, 0x5598, 0x4E32, 0x75AE, - 0x7A97, 0x5E62, 0x5E8A, 0x95EF, 0x521B, 0x5439, 0x708A, 0x6376, - 0x9524, 0x5782, 0x6625, 0x693F, 0x9187, 0x5507, 0x6DF3, 0x7EAF, - 0x8822, 0x6233, 0x7EF0, 0x75B5, 0x8328, 0x78C1, 0x96CC, 0x8F9E, - 0x6148, 0x74F7, 0x8BCD, 0x6B64, 0x523A, 0x8D50, 0x6B21, 0x806A, - 0x8471, 0x56F1, 0x5306, 0x4ECE, 0x4E1B, 0x51D1, 0x7C97, 0x918B, - 0x7C07, 0x4FC3, 0x8E7F, 0x7BE1, 0x7A9C, 0x6467, 0x5D14, 0x50AC, - 0x8106, 0x7601, 0x7CB9, 0x6DEC, 0x7FE0, 0x6751, 0x5B58, 0x5BF8, - 0x78CB, 0x64AE, 0x6413, 0x63AA, 0x632B, 0x9519, 0x642D, 0x8FBE, - 0x7B54, 0x7629, 0x6253, 0x5927, 0x5446, 0x6B79, 0x50A3, 0x6234, - 0x5E26, 0x6B86, 0x4EE3, 0x8D37, 0x888B, 0x5F85, 0x902E, 0, -plane b5 -at 0xa0 - 0x7992, 0x6020, 0x803D, 0x62C5, 0x4E39, 0x5355, 0x90F8, 0x63B8, - 0x80C6, 0x65E6, 0x6C2E, 0x4F46, 0x60EE, 0x6DE1, 0x8BDE, 0x5F39, - 0x86CB, 0x5F53, 0x6321, 0x515A, 0x8361, 0x6863, 0x5200, 0x6363, - 0x8E48, 0x5012, 0x5C9B, 0x7977, 0x5BFC, 0x5230, 0x7A3B, 0x60BC, - 0x9053, 0x76D7, 0x5FB7, 0x5F97, 0x7684, 0x8E6C, 0x706F, 0x767B, - 0x7B49, 0x77AA, 0x51F3, 0x9093, 0x5824, 0x4F4E, 0x6EF4, 0x8FEA, - 0x654C, 0x7B1B, 0x72C4, 0x6DA4, 0x7FDF, 0x5AE1, 0x62B5, 0x5E95, - 0x5730, 0x8482, 0x7B2C, 0x5E1D, 0x5F1F, 0x9012, 0x7F14, 0x98A0, - 0x6382, 0x6EC7, 0x7898, 0x70B9, 0x5178, 0x975B, 0x57AB, 0x7535, - 0x4F43, 0x7538, 0x5E97, 0x60E6, 0x5960, 0x6DC0, 0x6BBF, 0x7889, - 0x53FC, 0x96D5, 0x51CB, 0x5201, 0x6389, 0x540A, 0x9493, 0x8C03, - 0x8DCC, 0x7239, 0x789F, 0x8776, 0x8FED, 0x8C0D, 0x53E0, 0, -plane b6 -at 0xa0 - 0x7A1C, 0x4E01, 0x76EF, 0x53EE, 0x9489, 0x9876, 0x9F0E, 0x952D, - 0x5B9A, 0x8BA2, 0x4E22, 0x4E1C, 0x51AC, 0x8463, 0x61C2, 0x52A8, - 0x680B, 0x4F97, 0x606B, 0x51BB, 0x6D1E, 0x515C, 0x6296, 0x6597, - 0x9661, 0x8C46, 0x9017, 0x75D8, 0x90FD, 0x7763, 0x6BD2, 0x728A, - 0x72EC, 0x8BFB, 0x5835, 0x7779, 0x8D4C, 0x675C, 0x9540, 0x809A, - 0x5EA6, 0x6E21, 0x5992, 0x7AEF, 0x77ED, 0x953B, 0x6BB5, 0x65AD, - 0x7F0E, 0x5806, 0x5151, 0x961F, 0x5BF9, 0x58A9, 0x5428, 0x8E72, - 0x6566, 0x987F, 0x56E4, 0x949D, 0x76FE, 0x9041, 0x6387, 0x54C6, - 0x591A, 0x593A, 0x579B, 0x8EB2, 0x6735, 0x8DFA, 0x8235, 0x5241, - 0x60F0, 0x5815, 0x86FE, 0x5CE8, 0x9E45, 0x4FC4, 0x989D, 0x8BB9, - 0x5A25, 0x6076, 0x5384, 0x627C, 0x904F, 0x9102, 0x997F, 0x6069, - 0x800C, 0x513F, 0x8033, 0x5C14, 0x9975, 0x6D31, 0x4E8C, 0, -plane b7 -at 0xa0 - 0x7AA2, 0x8D30, 0x53D1, 0x7F5A, 0x7B4F, 0x4F10, 0x4E4F, 0x9600, - 0x6CD5, 0x73D0, 0x85E9, 0x5E06, 0x756A, 0x7FFB, 0x6A0A, 0x77FE, - 0x9492, 0x7E41, 0x51E1, 0x70E6, 0x53CD, 0x8FD4, 0x8303, 0x8D29, - 0x72AF, 0x996D, 0x6CDB, 0x574A, 0x82B3, 0x65B9, 0x80AA, 0x623F, - 0x9632, 0x59A8, 0x4EFF, 0x8BBF, 0x7EBA, 0x653E, 0x83F2, 0x975E, - 0x5561, 0x98DE, 0x80A5, 0x532A, 0x8BFD, 0x5420, 0x80BA, 0x5E9F, - 0x6CB8, 0x8D39, 0x82AC, 0x915A, 0x5429, 0x6C1B, 0x5206, 0x7EB7, - 0x575F, 0x711A, 0x6C7E, 0x7C89, 0x594B, 0x4EFD, 0x5FFF, 0x6124, - 0x7CAA, 0x4E30, 0x5C01, 0x67AB, 0x8702, 0x5CF0, 0x950B, 0x98CE, - 0x75AF, 0x70FD, 0x9022, 0x51AF, 0x7F1D, 0x8BBD, 0x5949, 0x51E4, - 0x4F5B, 0x5426, 0x592B, 0x6577, 0x80A4, 0x5B75, 0x6276, 0x62C2, - 0x8F90, 0x5E45, 0x6C1F, 0x7B26, 0x4F0F, 0x4FD8, 0x670D, 0, -plane b8 -at 0xa0 - 0x7B2D, 0x6D6E, 0x6DAA, 0x798F, 0x88B1, 0x5F17, 0x752B, 0x629A, - 0x8F85, 0x4FEF, 0x91DC, 0x65A7, 0x812F, 0x8151, 0x5E9C, 0x8150, - 0x8D74, 0x526F, 0x8986, 0x8D4B, 0x590D, 0x5085, 0x4ED8, 0x961C, - 0x7236, 0x8179, 0x8D1F, 0x5BCC, 0x8BA3, 0x9644, 0x5987, 0x7F1A, - 0x5490, 0x5676, 0x560E, 0x8BE5, 0x6539, 0x6982, 0x9499, 0x76D6, - 0x6E89, 0x5E72, 0x7518, 0x6746, 0x67D1, 0x7AFF, 0x809D, 0x8D76, - 0x611F, 0x79C6, 0x6562, 0x8D63, 0x5188, 0x521A, 0x94A2, 0x7F38, - 0x809B, 0x7EB2, 0x5C97, 0x6E2F, 0x6760, 0x7BD9, 0x768B, 0x9AD8, - 0x818F, 0x7F94, 0x7CD5, 0x641E, 0x9550, 0x7A3F, 0x544A, 0x54E5, - 0x6B4C, 0x6401, 0x6208, 0x9E3D, 0x80F3, 0x7599, 0x5272, 0x9769, - 0x845B, 0x683C, 0x86E4, 0x9601, 0x9694, 0x94EC, 0x4E2A, 0x5404, - 0x7ED9, 0x6839, 0x8DDF, 0x8015, 0x66F4, 0x5E9A, 0x7FB9, 0, -plane b9 -at 0xa0 - 0x7BC4, 0x57C2, 0x803F, 0x6897, 0x5DE5, 0x653B, 0x529F, 0x606D, - 0x9F9A, 0x4F9B, 0x8EAC, 0x516C, 0x5BAB, 0x5F13, 0x5DE9, 0x6C5E, - 0x62F1, 0x8D21, 0x5171, 0x94A9, 0x52FE, 0x6C9F, 0x82DF, 0x72D7, - 0x57A2, 0x6784, 0x8D2D, 0x591F, 0x8F9C, 0x83C7, 0x5495, 0x7B8D, - 0x4F30, 0x6CBD, 0x5B64, 0x59D1, 0x9F13, 0x53E4, 0x86CA, 0x9AA8, - 0x8C37, 0x80A1, 0x6545, 0x987E, 0x56FA, 0x96C7, 0x522E, 0x74DC, - 0x5250, 0x5BE1, 0x6302, 0x8902, 0x4E56, 0x62D0, 0x602A, 0x68FA, - 0x5173, 0x5B98, 0x51A0, 0x89C2, 0x7BA1, 0x9986, 0x7F50, 0x60EF, - 0x704C, 0x8D2F, 0x5149, 0x5E7F, 0x901B, 0x7470, 0x89C4, 0x572D, - 0x7845, 0x5F52, 0x9F9F, 0x95FA, 0x8F68, 0x9B3C, 0x8BE1, 0x7678, - 0x6842, 0x67DC, 0x8DEA, 0x8D35, 0x523D, 0x8F8A, 0x6EDA, 0x68CD, - 0x9505, 0x90ED, 0x56FD, 0x679C, 0x88F9, 0x8FC7, 0x54C8, 0, -plane ba -at 0xa0 - 0x7C42, 0x9AB8, 0x5B69, 0x6D77, 0x6C26, 0x4EA5, 0x5BB3, 0x9A87, - 0x9163, 0x61A8, 0x90AF, 0x97E9, 0x542B, 0x6DB5, 0x5BD2, 0x51FD, - 0x558A, 0x7F55, 0x7FF0, 0x64BC, 0x634D, 0x65F1, 0x61BE, 0x608D, - 0x710A, 0x6C57, 0x6C49, 0x592F, 0x676D, 0x822A, 0x58D5, 0x568E, - 0x8C6A, 0x6BEB, 0x90DD, 0x597D, 0x8017, 0x53F7, 0x6D69, 0x5475, - 0x559D, 0x8377, 0x83CF, 0x6838, 0x79BE, 0x548C, 0x4F55, 0x5408, - 0x76D2, 0x8C89, 0x9602, 0x6CB3, 0x6DB8, 0x8D6B, 0x8910, 0x9E64, - 0x8D3A, 0x563F, 0x9ED1, 0x75D5, 0x5F88, 0x72E0, 0x6068, 0x54FC, - 0x4EA8, 0x6A2A, 0x8861, 0x6052, 0x8F70, 0x54C4, 0x70D8, 0x8679, - 0x9E3F, 0x6D2A, 0x5B8F, 0x5F18, 0x7EA2, 0x5589, 0x4FAF, 0x7334, - 0x543C, 0x539A, 0x5019, 0x540E, 0x547C, 0x4E4E, 0x5FFD, 0x745A, - 0x58F6, 0x846B, 0x80E1, 0x8774, 0x72D0, 0x7CCA, 0x6E56, 0, -plane bb -at 0xa0 - 0x7CBB, 0x5F27, 0x864E, 0x552C, 0x62A4, 0x4E92, 0x6CAA, 0x6237, - 0x82B1, 0x54D7, 0x534E, 0x733E, 0x6ED1, 0x753B, 0x5212, 0x5316, - 0x8BDD, 0x69D0, 0x5F8A, 0x6000, 0x6DEE, 0x574F, 0x6B22, 0x73AF, - 0x6853, 0x8FD8, 0x7F13, 0x6362, 0x60A3, 0x5524, 0x75EA, 0x8C62, - 0x7115, 0x6DA3, 0x5BA6, 0x5E7B, 0x8352, 0x614C, 0x9EC4, 0x78FA, - 0x8757, 0x7C27, 0x7687, 0x51F0, 0x60F6, 0x714C, 0x6643, 0x5E4C, - 0x604D, 0x8C0E, 0x7070, 0x6325, 0x8F89, 0x5FBD, 0x6062, 0x86D4, - 0x56DE, 0x6BC1, 0x6094, 0x6167, 0x5349, 0x60E0, 0x6666, 0x8D3F, - 0x79FD, 0x4F1A, 0x70E9, 0x6C47, 0x8BB3, 0x8BF2, 0x7ED8, 0x8364, - 0x660F, 0x5A5A, 0x9B42, 0x6D51, 0x6DF7, 0x8C41, 0x6D3B, 0x4F19, - 0x706B, 0x83B7, 0x6216, 0x60D1, 0x970D, 0x8D27, 0x7978, 0x51FB, - 0x573E, 0x57FA, 0x673A, 0x7578, 0x7A3D, 0x79EF, 0x7B95, 0, -plane bc -at 0xa0 - 0x7D36, 0x808C, 0x9965, 0x8FF9, 0x6FC0, 0x8BA5, 0x9E21, 0x59EC, - 0x7EE9, 0x7F09, 0x5409, 0x6781, 0x68D8, 0x8F91, 0x7C4D, 0x96C6, - 0x53CA, 0x6025, 0x75BE, 0x6C72, 0x5373, 0x5AC9, 0x7EA7, 0x6324, - 0x51E0, 0x810A, 0x5DF1, 0x84DF, 0x6280, 0x5180, 0x5B63, 0x4F0E, - 0x796D, 0x5242, 0x60B8, 0x6D4E, 0x5BC4, 0x5BC2, 0x8BA1, 0x8BB0, - 0x65E2, 0x5FCC, 0x9645, 0x5993, 0x7EE7, 0x7EAA, 0x5609, 0x67B7, - 0x5939, 0x4F73, 0x5BB6, 0x52A0, 0x835A, 0x988A, 0x8D3E, 0x7532, - 0x94BE, 0x5047, 0x7A3C, 0x4EF7, 0x67B6, 0x9A7E, 0x5AC1, 0x6B7C, - 0x76D1, 0x575A, 0x5C16, 0x7B3A, 0x95F4, 0x714E, 0x517C, 0x80A9, - 0x8270, 0x5978, 0x7F04, 0x8327, 0x68C0, 0x67EC, 0x78B1, 0x7877, - 0x62E3, 0x6361, 0x7B80, 0x4FED, 0x526A, 0x51CF, 0x8350, 0x69DB, - 0x9274, 0x8DF5, 0x8D31, 0x89C1, 0x952E, 0x7BAD, 0x4EF6, 0, -plane bd -at 0xa0 - 0x7D98, 0x5065, 0x8230, 0x5251, 0x996F, 0x6E10, 0x6E85, 0x6DA7, - 0x5EFA, 0x50F5, 0x59DC, 0x5C06, 0x6D46, 0x6C5F, 0x7586, 0x848B, - 0x6868, 0x5956, 0x8BB2, 0x5320, 0x9171, 0x964D, 0x8549, 0x6912, - 0x7901, 0x7126, 0x80F6, 0x4EA4, 0x90CA, 0x6D47, 0x9A84, 0x5A07, - 0x56BC, 0x6405, 0x94F0, 0x77EB, 0x4FA5, 0x811A, 0x72E1, 0x89D2, - 0x997A, 0x7F34, 0x7EDE, 0x527F, 0x6559, 0x9175, 0x8F7F, 0x8F83, - 0x53EB, 0x7A96, 0x63ED, 0x63A5, 0x7686, 0x79F8, 0x8857, 0x9636, - 0x622A, 0x52AB, 0x8282, 0x6854, 0x6770, 0x6377, 0x776B, 0x7AED, - 0x6D01, 0x7ED3, 0x89E3, 0x59D0, 0x6212, 0x85C9, 0x82A5, 0x754C, - 0x501F, 0x4ECB, 0x75A5, 0x8BEB, 0x5C4A, 0x5DFE, 0x7B4B, 0x65A4, - 0x91D1, 0x4ECA, 0x6D25, 0x895F, 0x7D27, 0x9526, 0x4EC5, 0x8C28, - 0x8FDB, 0x9773, 0x664B, 0x7981, 0x8FD1, 0x70EC, 0x6D78, 0, -plane be -at 0xa0 - 0x7DFA, 0x5C3D, 0x52B2, 0x8346, 0x5162, 0x830E, 0x775B, 0x6676, - 0x9CB8, 0x4EAC, 0x60CA, 0x7CBE, 0x7CB3, 0x7ECF, 0x4E95, 0x8B66, - 0x666F, 0x9888, 0x9759, 0x5883, 0x656C, 0x955C, 0x5F84, 0x75C9, - 0x9756, 0x7ADF, 0x7ADE, 0x51C0, 0x70AF, 0x7A98, 0x63EA, 0x7A76, - 0x7EA0, 0x7396, 0x97ED, 0x4E45, 0x7078, 0x4E5D, 0x9152, 0x53A9, - 0x6551, 0x65E7, 0x81FC, 0x8205, 0x548E, 0x5C31, 0x759A, 0x97A0, - 0x62D8, 0x72D9, 0x75BD, 0x5C45, 0x9A79, 0x83CA, 0x5C40, 0x5480, - 0x77E9, 0x4E3E, 0x6CAE, 0x805A, 0x62D2, 0x636E, 0x5DE8, 0x5177, - 0x8DDD, 0x8E1E, 0x952F, 0x4FF1, 0x53E5, 0x60E7, 0x70AC, 0x5267, - 0x6350, 0x9E43, 0x5A1F, 0x5026, 0x7737, 0x5377, 0x7EE2, 0x6485, - 0x652B, 0x6289, 0x6398, 0x5014, 0x7235, 0x89C9, 0x51B3, 0x8BC0, - 0x7EDD, 0x5747, 0x83CC, 0x94A7, 0x519B, 0x541B, 0x5CFB, 0, -plane bf -at 0xa0 - 0x7E5D, 0x4FCA, 0x7AE3, 0x6D5A, 0x90E1, 0x9A8F, 0x5580, 0x5496, - 0x5361, 0x54AF, 0x5F00, 0x63E9, 0x6977, 0x51EF, 0x6168, 0x520A, - 0x582A, 0x52D8, 0x574E, 0x780D, 0x770B, 0x5EB7, 0x6177, 0x7CE0, - 0x625B, 0x6297, 0x4EA2, 0x7095, 0x8003, 0x62F7, 0x70E4, 0x9760, - 0x5777, 0x82DB, 0x67EF, 0x68F5, 0x78D5, 0x9897, 0x79D1, 0x58F3, - 0x54B3, 0x53EF, 0x6E34, 0x514B, 0x523B, 0x5BA2, 0x8BFE, 0x80AF, - 0x5543, 0x57A6, 0x6073, 0x5751, 0x542D, 0x7A7A, 0x6050, 0x5B54, - 0x63A7, 0x62A0, 0x53E3, 0x6263, 0x5BC7, 0x67AF, 0x54ED, 0x7A9F, - 0x82E6, 0x9177, 0x5E93, 0x88E4, 0x5938, 0x57AE, 0x630E, 0x8DE8, - 0x80EF, 0x5757, 0x7B77, 0x4FA9, 0x5FEB, 0x5BBD, 0x6B3E, 0x5321, - 0x7B50, 0x72C2, 0x6846, 0x77FF, 0x7736, 0x65F7, 0x51B5, 0x4E8F, - 0x76D4, 0x5CBF, 0x7AA5, 0x8475, 0x594E, 0x9B41, 0x5080, 0, -plane c0 -at 0xa0 - 0x7F53, 0x9988, 0x6127, 0x6E83, 0x5764, 0x6606, 0x6346, 0x56F0, - 0x62EC, 0x6269, 0x5ED3, 0x9614, 0x5783, 0x62C9, 0x5587, 0x8721, - 0x814A, 0x8FA3, 0x5566, 0x83B1, 0x6765, 0x8D56, 0x84DD, 0x5A6A, - 0x680F, 0x62E6, 0x7BEE, 0x9611, 0x5170, 0x6F9C, 0x8C30, 0x63FD, - 0x89C8, 0x61D2, 0x7F06, 0x70C2, 0x6EE5, 0x7405, 0x6994, 0x72FC, - 0x5ECA, 0x90CE, 0x6717, 0x6D6A, 0x635E, 0x52B3, 0x7262, 0x8001, - 0x4F6C, 0x59E5, 0x916A, 0x70D9, 0x6D9D, 0x52D2, 0x4E50, 0x96F7, - 0x956D, 0x857E, 0x78CA, 0x7D2F, 0x5121, 0x5792, 0x64C2, 0x808B, - 0x7C7B, 0x6CEA, 0x68F1, 0x695E, 0x51B7, 0x5398, 0x68A8, 0x7281, - 0x9ECE, 0x7BF1, 0x72F8, 0x79BB, 0x6F13, 0x7406, 0x674E, 0x91CC, - 0x9CA4, 0x793C, 0x8389, 0x8354, 0x540F, 0x6817, 0x4E3D, 0x5389, - 0x52B1, 0x783E, 0x5386, 0x5229, 0x5088, 0x4F8B, 0x4FD0, 0, -plane c1 -at 0xa0 - 0x7FE3, 0x75E2, 0x7ACB, 0x7C92, 0x6CA5, 0x96B6, 0x529B, 0x7483, - 0x54E9, 0x4FE9, 0x8054, 0x83B2, 0x8FDE, 0x9570, 0x5EC9, 0x601C, - 0x6D9F, 0x5E18, 0x655B, 0x8138, 0x94FE, 0x604B, 0x70BC, 0x7EC3, - 0x7CAE, 0x51C9, 0x6881, 0x7CB1, 0x826F, 0x4E24, 0x8F86, 0x91CF, - 0x667E, 0x4EAE, 0x8C05, 0x64A9, 0x804A, 0x50DA, 0x7597, 0x71CE, - 0x5BE5, 0x8FBD, 0x6F66, 0x4E86, 0x6482, 0x9563, 0x5ED6, 0x6599, - 0x5217, 0x88C2, 0x70C8, 0x52A3, 0x730E, 0x7433, 0x6797, 0x78F7, - 0x9716, 0x4E34, 0x90BB, 0x9CDE, 0x6DCB, 0x51DB, 0x8D41, 0x541D, - 0x62CE, 0x73B2, 0x83F1, 0x96F6, 0x9F84, 0x94C3, 0x4F36, 0x7F9A, - 0x51CC, 0x7075, 0x9675, 0x5CAD, 0x9886, 0x53E6, 0x4EE4, 0x6E9C, - 0x7409, 0x69B4, 0x786B, 0x998F, 0x7559, 0x5218, 0x7624, 0x6D41, - 0x67F3, 0x516D, 0x9F99, 0x804B, 0x5499, 0x7B3C, 0x7ABF, 0, -plane c2 -at 0xa0 - 0x807D, 0x9686, 0x5784, 0x62E2, 0x9647, 0x697C, 0x5A04, 0x6402, - 0x7BD3, 0x6F0F, 0x964B, 0x82A6, 0x5362, 0x9885, 0x5E90, 0x7089, - 0x63B3, 0x5364, 0x864F, 0x9C81, 0x9E93, 0x788C, 0x9732, 0x8DEF, - 0x8D42, 0x9E7F, 0x6F5E, 0x7984, 0x5F55, 0x9646, 0x622E, 0x9A74, - 0x5415, 0x94DD, 0x4FA3, 0x65C5, 0x5C65, 0x5C61, 0x7F15, 0x8651, - 0x6C2F, 0x5F8B, 0x7387, 0x6EE4, 0x7EFF, 0x5CE6, 0x631B, 0x5B6A, - 0x6EE6, 0x5375, 0x4E71, 0x63A0, 0x7565, 0x62A1, 0x8F6E, 0x4F26, - 0x4ED1, 0x6CA6, 0x7EB6, 0x8BBA, 0x841D, 0x87BA, 0x7F57, 0x903B, - 0x9523, 0x7BA9, 0x9AA1, 0x88F8, 0x843D, 0x6D1B, 0x9A86, 0x7EDC, - 0x5988, 0x9EBB, 0x739B, 0x7801, 0x8682, 0x9A6C, 0x9A82, 0x561B, - 0x5417, 0x57CB, 0x4E70, 0x9EA6, 0x5356, 0x8FC8, 0x8109, 0x7792, - 0x9992, 0x86EE, 0x6EE1, 0x8513, 0x66FC, 0x6162, 0x6F2B, 0, -plane c3 -at 0xa0 - 0x813F, 0x8C29, 0x8292, 0x832B, 0x76F2, 0x6C13, 0x5FD9, 0x83BD, - 0x732B, 0x8305, 0x951A, 0x6BDB, 0x77DB, 0x94C6, 0x536F, 0x8302, - 0x5192, 0x5E3D, 0x8C8C, 0x8D38, 0x4E48, 0x73AB, 0x679A, 0x6885, - 0x9176, 0x9709, 0x7164, 0x6CA1, 0x7709, 0x5A92, 0x9541, 0x6BCF, - 0x7F8E, 0x6627, 0x5BD0, 0x59B9, 0x5A9A, 0x95E8, 0x95F7, 0x4EEC, - 0x840C, 0x8499, 0x6AAC, 0x76DF, 0x9530, 0x731B, 0x68A6, 0x5B5F, - 0x772F, 0x919A, 0x9761, 0x7CDC, 0x8FF7, 0x8C1C, 0x5F25, 0x7C73, - 0x79D8, 0x89C5, 0x6CCC, 0x871C, 0x5BC6, 0x5E42, 0x68C9, 0x7720, - 0x7EF5, 0x5195, 0x514D, 0x52C9, 0x5A29, 0x7F05, 0x9762, 0x82D7, - 0x63CF, 0x7784, 0x85D0, 0x79D2, 0x6E3A, 0x5E99, 0x5999, 0x8511, - 0x706D, 0x6C11, 0x62BF, 0x76BF, 0x654F, 0x60AF, 0x95FD, 0x660E, - 0x879F, 0x9E23, 0x94ED, 0x540D, 0x547D, 0x8C2C, 0x6478, 0, -plane c4 -at 0xa0 - 0x81D3, 0x6479, 0x8611, 0x6A21, 0x819C, 0x78E8, 0x6469, 0x9B54, - 0x62B9, 0x672B, 0x83AB, 0x58A8, 0x9ED8, 0x6CAB, 0x6F20, 0x5BDE, - 0x964C, 0x8C0B, 0x725F, 0x67D0, 0x62C7, 0x7261, 0x4EA9, 0x59C6, - 0x6BCD, 0x5893, 0x66AE, 0x5E55, 0x52DF, 0x6155, 0x6728, 0x76EE, - 0x7766, 0x7267, 0x7A46, 0x62FF, 0x54EA, 0x5450, 0x94A0, 0x90A3, - 0x5A1C, 0x7EB3, 0x6C16, 0x4E43, 0x5976, 0x8010, 0x5948, 0x5357, - 0x7537, 0x96BE, 0x56CA, 0x6320, 0x8111, 0x607C, 0x95F9, 0x6DD6, - 0x5462, 0x9981, 0x5185, 0x5AE9, 0x80FD, 0x59AE, 0x9713, 0x502A, - 0x6CE5, 0x5C3C, 0x62DF, 0x4F60, 0x533F, 0x817B, 0x9006, 0x6EBA, - 0x852B, 0x62C8, 0x5E74, 0x78BE, 0x64B5, 0x637B, 0x5FF5, 0x5A18, - 0x917F, 0x9E1F, 0x5C3F, 0x634F, 0x8042, 0x5B7D, 0x556E, 0x954A, - 0x954D, 0x6D85, 0x60A8, 0x67E0, 0x72DE, 0x51DD, 0x5B81, 0, -plane c5 -at 0xa0 - 0x8269, 0x62E7, 0x6CDE, 0x725B, 0x626D, 0x94AE, 0x7EBD, 0x8113, - 0x6D53, 0x519C, 0x5F04, 0x5974, 0x52AA, 0x6012, 0x5973, 0x6696, - 0x8650, 0x759F, 0x632A, 0x61E6, 0x7CEF, 0x8BFA, 0x54E6, 0x6B27, - 0x9E25, 0x6BB4, 0x85D5, 0x5455, 0x5076, 0x6CA4, 0x556A, 0x8DB4, - 0x722C, 0x5E15, 0x6015, 0x7436, 0x62CD, 0x6392, 0x724C, 0x5F98, - 0x6E43, 0x6D3E, 0x6500, 0x6F58, 0x76D8, 0x78D0, 0x76FC, 0x7554, - 0x5224, 0x53DB, 0x4E53, 0x5E9E, 0x65C1, 0x802A, 0x80D6, 0x629B, - 0x5486, 0x5228, 0x70AE, 0x888D, 0x8DD1, 0x6CE1, 0x5478, 0x80DA, - 0x57F9, 0x88F4, 0x8D54, 0x966A, 0x914D, 0x4F69, 0x6C9B, 0x55B7, - 0x76C6, 0x7830, 0x62A8, 0x70F9, 0x6F8E, 0x5F6D, 0x84EC, 0x68DA, - 0x787C, 0x7BF7, 0x81A8, 0x670B, 0x9E4F, 0x6367, 0x78B0, 0x576F, - 0x7812, 0x9739, 0x6279, 0x62AB, 0x5288, 0x7435, 0x6BD7, 0, -plane c6 -at 0xa0 - 0x833D, 0x5564, 0x813E, 0x75B2, 0x76AE, 0x5339, 0x75DE, 0x50FB, - 0x5C41, 0x8B6C, 0x7BC7, 0x504F, 0x7247, 0x9A97, 0x98D8, 0x6F02, - 0x74E2, 0x7968, 0x6487, 0x77A5, 0x62FC, 0x9891, 0x8D2B, 0x54C1, - 0x8058, 0x4E52, 0x576A, 0x82F9, 0x840D, 0x5E73, 0x51ED, 0x74F6, - 0x8BC4, 0x5C4F, 0x5761, 0x6CFC, 0x9887, 0x5A46, 0x7834, 0x9B44, - 0x8FEB, 0x7C95, 0x5256, 0x6251, 0x94FA, 0x4EC6, 0x8386, 0x8461, - 0x83E9, 0x84B2, 0x57D4, 0x6734, 0x5703, 0x666E, 0x6D66, 0x8C31, - 0x66DD, 0x7011, 0x671F, 0x6B3A, 0x6816, 0x621A, 0x59BB, 0x4E03, - 0x51C4, 0x6F06, 0x67D2, 0x6C8F, 0x5176, 0x68CB, 0x5947, 0x6B67, - 0x7566, 0x5D0E, 0x8110, 0x9F50, 0x65D7, 0x7948, 0x7941, 0x9A91, - 0x8D77, 0x5C82, 0x4E5E, 0x4F01, 0x542F, 0x5951, 0x780C, 0x5668, - 0x6C14, 0x8FC4, 0x5F03, 0x6C7D, 0x6CE3, 0x8BAB, 0x6390, 0, -plane c7 -at 0xa0 - 0x83ED, 0x6070, 0x6D3D, 0x7275, 0x6266, 0x948E, 0x94C5, 0x5343, - 0x8FC1, 0x7B7E, 0x4EDF, 0x8C26, 0x4E7E, 0x9ED4, 0x94B1, 0x94B3, - 0x524D, 0x6F5C, 0x9063, 0x6D45, 0x8C34, 0x5811, 0x5D4C, 0x6B20, - 0x6B49, 0x67AA, 0x545B, 0x8154, 0x7F8C, 0x5899, 0x8537, 0x5F3A, - 0x62A2, 0x6A47, 0x9539, 0x6572, 0x6084, 0x6865, 0x77A7, 0x4E54, - 0x4FA8, 0x5DE7, 0x9798, 0x64AC, 0x7FD8, 0x5CED, 0x4FCF, 0x7A8D, - 0x5207, 0x8304, 0x4E14, 0x602F, 0x7A83, 0x94A6, 0x4FB5, 0x4EB2, - 0x79E6, 0x7434, 0x52E4, 0x82B9, 0x64D2, 0x79BD, 0x5BDD, 0x6C81, - 0x9752, 0x8F7B, 0x6C22, 0x503E, 0x537F, 0x6E05, 0x64CE, 0x6674, - 0x6C30, 0x60C5, 0x9877, 0x8BF7, 0x5E86, 0x743C, 0x7A77, 0x79CB, - 0x4E18, 0x90B1, 0x7403, 0x6C42, 0x56DA, 0x914B, 0x6CC5, 0x8D8B, - 0x533A, 0x86C6, 0x66F2, 0x8EAF, 0x5C48, 0x9A71, 0x6E20, 0, -plane c8 -at 0xa0 - 0x847C, 0x53D6, 0x5A36, 0x9F8B, 0x8DA3, 0x53BB, 0x5708, 0x98A7, - 0x6743, 0x919B, 0x6CC9, 0x5168, 0x75CA, 0x62F3, 0x72AC, 0x5238, - 0x529D, 0x7F3A, 0x7094, 0x7638, 0x5374, 0x9E4A, 0x69B7, 0x786E, - 0x96C0, 0x88D9, 0x7FA4, 0x7136, 0x71C3, 0x5189, 0x67D3, 0x74E4, - 0x58E4, 0x6518, 0x56B7, 0x8BA9, 0x9976, 0x6270, 0x7ED5, 0x60F9, - 0x70ED, 0x58EC, 0x4EC1, 0x4EBA, 0x5FCD, 0x97E7, 0x4EFB, 0x8BA4, - 0x5203, 0x598A, 0x7EAB, 0x6254, 0x4ECD, 0x65E5, 0x620E, 0x8338, - 0x84C9, 0x8363, 0x878D, 0x7194, 0x6EB6, 0x5BB9, 0x7ED2, 0x5197, - 0x63C9, 0x67D4, 0x8089, 0x8339, 0x8815, 0x5112, 0x5B7A, 0x5982, - 0x8FB1, 0x4E73, 0x6C5D, 0x5165, 0x8925, 0x8F6F, 0x962E, 0x854A, - 0x745E, 0x9510, 0x95F0, 0x6DA6, 0x82E5, 0x5F31, 0x6492, 0x6D12, - 0x8428, 0x816E, 0x9CC3, 0x585E, 0x8D5B, 0x4E09, 0x53C1, 0, -plane c9 -at 0xa0 - 0x8502, 0x4F1E, 0x6563, 0x6851, 0x55D3, 0x4E27, 0x6414, 0x9A9A, - 0x626B, 0x5AC2, 0x745F, 0x8272, 0x6DA9, 0x68EE, 0x50E7, 0x838E, - 0x7802, 0x6740, 0x5239, 0x6C99, 0x7EB1, 0x50BB, 0x5565, 0x715E, - 0x7B5B, 0x6652, 0x73CA, 0x82EB, 0x6749, 0x5C71, 0x5220, 0x717D, - 0x886B, 0x95EA, 0x9655, 0x64C5, 0x8D61, 0x81B3, 0x5584, 0x6C55, - 0x6247, 0x7F2E, 0x5892, 0x4F24, 0x5546, 0x8D4F, 0x664C, 0x4E0A, - 0x5C1A, 0x88F3, 0x68A2, 0x634E, 0x7A0D, 0x70E7, 0x828D, 0x52FA, - 0x97F6, 0x5C11, 0x54E8, 0x90B5, 0x7ECD, 0x5962, 0x8D4A, 0x86C7, - 0x820C, 0x820D, 0x8D66, 0x6444, 0x5C04, 0x6151, 0x6D89, 0x793E, - 0x8BBE, 0x7837, 0x7533, 0x547B, 0x4F38, 0x8EAB, 0x6DF1, 0x5A20, - 0x7EC5, 0x795E, 0x6C88, 0x5BA1, 0x5A76, 0x751A, 0x80BE, 0x614E, - 0x6E17, 0x58F0, 0x751F, 0x7525, 0x7272, 0x5347, 0x7EF3, 0, -plane ca -at 0xa0 - 0x8581, 0x7701, 0x76DB, 0x5269, 0x80DC, 0x5723, 0x5E08, 0x5931, - 0x72EE, 0x65BD, 0x6E7F, 0x8BD7, 0x5C38, 0x8671, 0x5341, 0x77F3, - 0x62FE, 0x65F6, 0x4EC0, 0x98DF, 0x8680, 0x5B9E, 0x8BC6, 0x53F2, - 0x77E2, 0x4F7F, 0x5C4E, 0x9A76, 0x59CB, 0x5F0F, 0x793A, 0x58EB, - 0x4E16, 0x67FF, 0x4E8B, 0x62ED, 0x8A93, 0x901D, 0x52BF, 0x662F, - 0x55DC, 0x566C, 0x9002, 0x4ED5, 0x4F8D, 0x91CA, 0x9970, 0x6C0F, - 0x5E02, 0x6043, 0x5BA4, 0x89C6, 0x8BD5, 0x6536, 0x624B, 0x9996, - 0x5B88, 0x5BFF, 0x6388, 0x552E, 0x53D7, 0x7626, 0x517D, 0x852C, - 0x67A2, 0x68B3, 0x6B8A, 0x6292, 0x8F93, 0x53D4, 0x8212, 0x6DD1, - 0x758F, 0x4E66, 0x8D4E, 0x5B70, 0x719F, 0x85AF, 0x6691, 0x66D9, - 0x7F72, 0x8700, 0x9ECD, 0x9F20, 0x5C5E, 0x672F, 0x8FF0, 0x6811, - 0x675F, 0x620D, 0x7AD6, 0x5885, 0x5EB6, 0x6570, 0x6F31, 0, -plane cb -at 0xa0 - 0x85F8, 0x6055, 0x5237, 0x800D, 0x6454, 0x8870, 0x7529, 0x5E05, - 0x6813, 0x62F4, 0x971C, 0x53CC, 0x723D, 0x8C01, 0x6C34, 0x7761, - 0x7A0E, 0x542E, 0x77AC, 0x987A, 0x821C, 0x8BF4, 0x7855, 0x6714, - 0x70C1, 0x65AF, 0x6495, 0x5636, 0x601D, 0x79C1, 0x53F8, 0x4E1D, - 0x6B7B, 0x8086, 0x5BFA, 0x55E3, 0x56DB, 0x4F3A, 0x4F3C, 0x9972, - 0x5DF3, 0x677E, 0x8038, 0x6002, 0x9882, 0x9001, 0x5B8B, 0x8BBC, - 0x8BF5, 0x641C, 0x8258, 0x64DE, 0x55FD, 0x82CF, 0x9165, 0x4FD7, - 0x7D20, 0x901F, 0x7C9F, 0x50F3, 0x5851, 0x6EAF, 0x5BBF, 0x8BC9, - 0x8083, 0x9178, 0x849C, 0x7B97, 0x867D, 0x968B, 0x968F, 0x7EE5, - 0x9AD3, 0x788E, 0x5C81, 0x7A57, 0x9042, 0x96A7, 0x795F, 0x5B59, - 0x635F, 0x7B0B, 0x84D1, 0x68AD, 0x5506, 0x7F29, 0x7410, 0x7D22, - 0x9501, 0x6240, 0x584C, 0x4ED6, 0x5B83, 0x5979, 0x5854, 0, -plane cc -at 0xa0 - 0x866A, 0x736D, 0x631E, 0x8E4B, 0x8E0F, 0x80CE, 0x82D4, 0x62AC, - 0x53F0, 0x6CF0, 0x915E, 0x592A, 0x6001, 0x6C70, 0x574D, 0x644A, - 0x8D2A, 0x762B, 0x6EE9, 0x575B, 0x6A80, 0x75F0, 0x6F6D, 0x8C2D, - 0x8C08, 0x5766, 0x6BEF, 0x8892, 0x78B3, 0x63A2, 0x53F9, 0x70AD, - 0x6C64, 0x5858, 0x642A, 0x5802, 0x68E0, 0x819B, 0x5510, 0x7CD6, - 0x5018, 0x8EBA, 0x6DCC, 0x8D9F, 0x70EB, 0x638F, 0x6D9B, 0x6ED4, - 0x7EE6, 0x8404, 0x6843, 0x9003, 0x6DD8, 0x9676, 0x8BA8, 0x5957, - 0x7279, 0x85E4, 0x817E, 0x75BC, 0x8A8A, 0x68AF, 0x5254, 0x8E22, - 0x9511, 0x63D0, 0x9898, 0x8E44, 0x557C, 0x4F53, 0x66FF, 0x568F, - 0x60D5, 0x6D95, 0x5243, 0x5C49, 0x5929, 0x6DFB, 0x586B, 0x7530, - 0x751C, 0x606C, 0x8214, 0x8146, 0x6311, 0x6761, 0x8FE2, 0x773A, - 0x8DF3, 0x8D34, 0x94C1, 0x5E16, 0x5385, 0x542C, 0x70C3, 0, -plane cd -at 0xa0 - 0x8716, 0x6C40, 0x5EF7, 0x505C, 0x4EAD, 0x5EAD, 0x633A, 0x8247, - 0x901A, 0x6850, 0x916E, 0x77B3, 0x540C, 0x94DC, 0x5F64, 0x7AE5, - 0x6876, 0x6345, 0x7B52, 0x7EDF, 0x75DB, 0x5077, 0x6295, 0x5934, - 0x900F, 0x51F8, 0x79C3, 0x7A81, 0x56FE, 0x5F92, 0x9014, 0x6D82, - 0x5C60, 0x571F, 0x5410, 0x5154, 0x6E4D, 0x56E2, 0x63A8, 0x9893, - 0x817F, 0x8715, 0x892A, 0x9000, 0x541E, 0x5C6F, 0x81C0, 0x62D6, - 0x6258, 0x8131, 0x9E35, 0x9640, 0x9A6E, 0x9A7C, 0x692D, 0x59A5, - 0x62D3, 0x553E, 0x6316, 0x54C7, 0x86D9, 0x6D3C, 0x5A03, 0x74E6, - 0x889C, 0x6B6A, 0x5916, 0x8C4C, 0x5F2F, 0x6E7E, 0x73A9, 0x987D, - 0x4E38, 0x70F7, 0x5B8C, 0x7897, 0x633D, 0x665A, 0x7696, 0x60CB, - 0x5B9B, 0x5A49, 0x4E07, 0x8155, 0x6C6A, 0x738B, 0x4EA1, 0x6789, - 0x7F51, 0x5F80, 0x65FA, 0x671B, 0x5FD8, 0x5984, 0x5A01, 0, -plane ce -at 0xa0 - 0x87A4, 0x5DCD, 0x5FAE, 0x5371, 0x97E6, 0x8FDD, 0x6845, 0x56F4, - 0x552F, 0x60DF, 0x4E3A, 0x6F4D, 0x7EF4, 0x82C7, 0x840E, 0x59D4, - 0x4F1F, 0x4F2A, 0x5C3E, 0x7EAC, 0x672A, 0x851A, 0x5473, 0x754F, - 0x80C3, 0x5582, 0x9B4F, 0x4F4D, 0x6E2D, 0x8C13, 0x5C09, 0x6170, - 0x536B, 0x761F, 0x6E29, 0x868A, 0x6587, 0x95FB, 0x7EB9, 0x543B, - 0x7A33, 0x7D0A, 0x95EE, 0x55E1, 0x7FC1, 0x74EE, 0x631D, 0x8717, - 0x6DA1, 0x7A9D, 0x6211, 0x65A1, 0x5367, 0x63E1, 0x6C83, 0x5DEB, - 0x545C, 0x94A8, 0x4E4C, 0x6C61, 0x8BEC, 0x5C4B, 0x65E0, 0x829C, - 0x68A7, 0x543E, 0x5434, 0x6BCB, 0x6B66, 0x4E94, 0x6342, 0x5348, - 0x821E, 0x4F0D, 0x4FAE, 0x575E, 0x620A, 0x96FE, 0x6664, 0x7269, - 0x52FF, 0x52A1, 0x609F, 0x8BEF, 0x6614, 0x7199, 0x6790, 0x897F, - 0x7852, 0x77FD, 0x6670, 0x563B, 0x5438, 0x9521, 0x727A, 0, -plane cf -at 0xa0 - 0x8823, 0x7A00, 0x606F, 0x5E0C, 0x6089, 0x819D, 0x5915, 0x60DC, - 0x7184, 0x70EF, 0x6EAA, 0x6C50, 0x7280, 0x6A84, 0x88AD, 0x5E2D, - 0x4E60, 0x5AB3, 0x559C, 0x94E3, 0x6D17, 0x7CFB, 0x9699, 0x620F, - 0x7EC6, 0x778E, 0x867E, 0x5323, 0x971E, 0x8F96, 0x6687, 0x5CE1, - 0x4FA0, 0x72ED, 0x4E0B, 0x53A6, 0x590F, 0x5413, 0x6380, 0x9528, - 0x5148, 0x4ED9, 0x9C9C, 0x7EA4, 0x54B8, 0x8D24, 0x8854, 0x8237, - 0x95F2, 0x6D8E, 0x5F26, 0x5ACC, 0x663E, 0x9669, 0x73B0, 0x732E, - 0x53BF, 0x817A, 0x9985, 0x7FA1, 0x5BAA, 0x9677, 0x9650, 0x7EBF, - 0x76F8, 0x53A2, 0x9576, 0x9999, 0x7BB1, 0x8944, 0x6E58, 0x4E61, - 0x7FD4, 0x7965, 0x8BE6, 0x60F3, 0x54CD, 0x4EAB, 0x9879, 0x5DF7, - 0x6A61, 0x50CF, 0x5411, 0x8C61, 0x8427, 0x785D, 0x9704, 0x524A, - 0x54EE, 0x56A3, 0x9500, 0x6D88, 0x5BB5, 0x6DC6, 0x6653, 0, -plane d0 -at 0xa0 - 0x88AA, 0x5C0F, 0x5B5D, 0x6821, 0x8096, 0x5578, 0x7B11, 0x6548, - 0x6954, 0x4E9B, 0x6B47, 0x874E, 0x978B, 0x534F, 0x631F, 0x643A, - 0x90AA, 0x659C, 0x80C1, 0x8C10, 0x5199, 0x68B0, 0x5378, 0x87F9, - 0x61C8, 0x6CC4, 0x6CFB, 0x8C22, 0x5C51, 0x85AA, 0x82AF, 0x950C, - 0x6B23, 0x8F9B, 0x65B0, 0x5FFB, 0x5FC3, 0x4FE1, 0x8845, 0x661F, - 0x8165, 0x7329, 0x60FA, 0x5174, 0x5211, 0x578B, 0x5F62, 0x90A2, - 0x884C, 0x9192, 0x5E78, 0x674F, 0x6027, 0x59D3, 0x5144, 0x51F6, - 0x80F8, 0x5308, 0x6C79, 0x96C4, 0x718A, 0x4F11, 0x4FEE, 0x7F9E, - 0x673D, 0x55C5, 0x9508, 0x79C0, 0x8896, 0x7EE3, 0x589F, 0x620C, - 0x9700, 0x865A, 0x5618, 0x987B, 0x5F90, 0x8BB8, 0x84C4, 0x9157, - 0x53D9, 0x65ED, 0x5E8F, 0x755C, 0x6064, 0x7D6E, 0x5A7F, 0x7EEA, - 0x7EED, 0x8F69, 0x55A7, 0x5BA3, 0x60AC, 0x65CB, 0x7384, 0, -plane d1 -at 0xa0 - 0x8937, 0x9009, 0x7663, 0x7729, 0x7EDA, 0x9774, 0x859B, 0x5B66, - 0x7A74, 0x96EA, 0x8840, 0x52CB, 0x718F, 0x5FAA, 0x65EC, 0x8BE2, - 0x5BFB, 0x9A6F, 0x5DE1, 0x6B89, 0x6C5B, 0x8BAD, 0x8BAF, 0x900A, - 0x8FC5, 0x538B, 0x62BC, 0x9E26, 0x9E2D, 0x5440, 0x4E2B, 0x82BD, - 0x7259, 0x869C, 0x5D16, 0x8859, 0x6DAF, 0x96C5, 0x54D1, 0x4E9A, - 0x8BB6, 0x7109, 0x54BD, 0x9609, 0x70DF, 0x6DF9, 0x76D0, 0x4E25, - 0x7814, 0x8712, 0x5CA9, 0x5EF6, 0x8A00, 0x989C, 0x960E, 0x708E, - 0x6CBF, 0x5944, 0x63A9, 0x773C, 0x884D, 0x6F14, 0x8273, 0x5830, - 0x71D5, 0x538C, 0x781A, 0x96C1, 0x5501, 0x5F66, 0x7130, 0x5BB4, - 0x8C1A, 0x9A8C, 0x6B83, 0x592E, 0x9E2F, 0x79E7, 0x6768, 0x626C, - 0x4F6F, 0x75A1, 0x7F8A, 0x6D0B, 0x9633, 0x6C27, 0x4EF0, 0x75D2, - 0x517B, 0x6837, 0x6F3E, 0x9080, 0x8170, 0x5996, 0x7476, 0, -plane d2 -at 0xa0 - 0x89A1, 0x6447, 0x5C27, 0x9065, 0x7A91, 0x8C23, 0x59DA, 0x54AC, - 0x8200, 0x836F, 0x8981, 0x8000, 0x6930, 0x564E, 0x8036, 0x7237, - 0x91CE, 0x51B6, 0x4E5F, 0x9875, 0x6396, 0x4E1A, 0x53F6, 0x66F3, - 0x814B, 0x591C, 0x6DB2, 0x4E00, 0x58F9, 0x533B, 0x63D6, 0x94F1, - 0x4F9D, 0x4F0A, 0x8863, 0x9890, 0x5937, 0x9057, 0x79FB, 0x4EEA, - 0x80F0, 0x7591, 0x6C82, 0x5B9C, 0x59E8, 0x5F5D, 0x6905, 0x8681, - 0x501A, 0x5DF2, 0x4E59, 0x77E3, 0x4EE5, 0x827A, 0x6291, 0x6613, - 0x9091, 0x5C79, 0x4EBF, 0x5F79, 0x81C6, 0x9038, 0x8084, 0x75AB, - 0x4EA6, 0x88D4, 0x610F, 0x6BC5, 0x5FC6, 0x4E49, 0x76CA, 0x6EA2, - 0x8BE3, 0x8BAE, 0x8C0A, 0x8BD1, 0x5F02, 0x7FFC, 0x7FCC, 0x7ECE, - 0x8335, 0x836B, 0x56E0, 0x6BB7, 0x97F3, 0x9634, 0x59FB, 0x541F, - 0x94F6, 0x6DEB, 0x5BC5, 0x996E, 0x5C39, 0x5F15, 0x9690, 0, -plane d3 -at 0xa0 - 0x8A1D, 0x5370, 0x82F1, 0x6A31, 0x5A74, 0x9E70, 0x5E94, 0x7F28, - 0x83B9, 0x8424, 0x8425, 0x8367, 0x8747, 0x8FCE, 0x8D62, 0x76C8, - 0x5F71, 0x9896, 0x786C, 0x6620, 0x54DF, 0x62E5, 0x4F63, 0x81C3, - 0x75C8, 0x5EB8, 0x96CD, 0x8E0A, 0x86F9, 0x548F, 0x6CF3, 0x6D8C, - 0x6C38, 0x607F, 0x52C7, 0x7528, 0x5E7D, 0x4F18, 0x60A0, 0x5FE7, - 0x5C24, 0x7531, 0x90AE, 0x94C0, 0x72B9, 0x6CB9, 0x6E38, 0x9149, - 0x6709, 0x53CB, 0x53F3, 0x4F51, 0x91C9, 0x8BF1, 0x53C8, 0x5E7C, - 0x8FC2, 0x6DE4, 0x4E8E, 0x76C2, 0x6986, 0x865E, 0x611A, 0x8206, - 0x4F59, 0x4FDE, 0x903E, 0x9C7C, 0x6109, 0x6E1D, 0x6E14, 0x9685, - 0x4E88, 0x5A31, 0x96E8, 0x4E0E, 0x5C7F, 0x79B9, 0x5B87, 0x8BED, - 0x7FBD, 0x7389, 0x57DF, 0x828B, 0x90C1, 0x5401, 0x9047, 0x55BB, - 0x5CEA, 0x5FA1, 0x6108, 0x6B32, 0x72F1, 0x80B2, 0x8A89, 0, -plane d4 -at 0xa0 - 0x8A80, 0x6D74, 0x5BD3, 0x88D5, 0x9884, 0x8C6B, 0x9A6D, 0x9E33, - 0x6E0A, 0x51A4, 0x5143, 0x57A3, 0x8881, 0x539F, 0x63F4, 0x8F95, - 0x56ED, 0x5458, 0x5706, 0x733F, 0x6E90, 0x7F18, 0x8FDC, 0x82D1, - 0x613F, 0x6028, 0x9662, 0x66F0, 0x7EA6, 0x8D8A, 0x8DC3, 0x94A5, - 0x5CB3, 0x7CA4, 0x6708, 0x60A6, 0x9605, 0x8018, 0x4E91, 0x90E7, - 0x5300, 0x9668, 0x5141, 0x8FD0, 0x8574, 0x915D, 0x6655, 0x97F5, - 0x5B55, 0x531D, 0x7838, 0x6742, 0x683D, 0x54C9, 0x707E, 0x5BB0, - 0x8F7D, 0x518D, 0x5728, 0x54B1, 0x6512, 0x6682, 0x8D5E, 0x8D43, - 0x810F, 0x846C, 0x906D, 0x7CDF, 0x51FF, 0x85FB, 0x67A3, 0x65E9, - 0x6FA1, 0x86A4, 0x8E81, 0x566A, 0x9020, 0x7682, 0x7076, 0x71E5, - 0x8D23, 0x62E9, 0x5219, 0x6CFD, 0x8D3C, 0x600E, 0x589E, 0x618E, - 0x66FE, 0x8D60, 0x624E, 0x55B3, 0x6E23, 0x672D, 0x8F67, 0, -plane d5 -at 0xa0 - 0x8AE3, 0x94E1, 0x95F8, 0x7728, 0x6805, 0x69A8, 0x548B, 0x4E4D, - 0x70B8, 0x8BC8, 0x6458, 0x658B, 0x5B85, 0x7A84, 0x503A, 0x5BE8, - 0x77BB, 0x6BE1, 0x8A79, 0x7C98, 0x6CBE, 0x76CF, 0x65A9, 0x8F97, - 0x5D2D, 0x5C55, 0x8638, 0x6808, 0x5360, 0x6218, 0x7AD9, 0x6E5B, - 0x7EFD, 0x6A1F, 0x7AE0, 0x5F70, 0x6F33, 0x5F20, 0x638C, 0x6DA8, - 0x6756, 0x4E08, 0x5E10, 0x8D26, 0x4ED7, 0x80C0, 0x7634, 0x969C, - 0x62DB, 0x662D, 0x627E, 0x6CBC, 0x8D75, 0x7167, 0x7F69, 0x5146, - 0x8087, 0x53EC, 0x906E, 0x6298, 0x54F2, 0x86F0, 0x8F99, 0x8005, - 0x9517, 0x8517, 0x8FD9, 0x6D59, 0x73CD, 0x659F, 0x771F, 0x7504, - 0x7827, 0x81FB, 0x8D1E, 0x9488, 0x4FA6, 0x6795, 0x75B9, 0x8BCA, - 0x9707, 0x632F, 0x9547, 0x9635, 0x84B8, 0x6323, 0x7741, 0x5F81, - 0x72F0, 0x4E89, 0x6014, 0x6574, 0x62EF, 0x6B63, 0x653F, 0, -plane d6 -at 0xa0 - 0x8B45, 0x5E27, 0x75C7, 0x90D1, 0x8BC1, 0x829D, 0x679D, 0x652F, - 0x5431, 0x8718, 0x77E5, 0x80A2, 0x8102, 0x6C41, 0x4E4B, 0x7EC7, - 0x804C, 0x76F4, 0x690D, 0x6B96, 0x6267, 0x503C, 0x4F84, 0x5740, - 0x6307, 0x6B62, 0x8DBE, 0x53EA, 0x65E8, 0x7EB8, 0x5FD7, 0x631A, - 0x63B7, 0x81F3, 0x81F4, 0x7F6E, 0x5E1C, 0x5CD9, 0x5236, 0x667A, - 0x79E9, 0x7A1A, 0x8D28, 0x7099, 0x75D4, 0x6EDE, 0x6CBB, 0x7A92, - 0x4E2D, 0x76C5, 0x5FE0, 0x949F, 0x8877, 0x7EC8, 0x79CD, 0x80BF, - 0x91CD, 0x4EF2, 0x4F17, 0x821F, 0x5468, 0x5DDE, 0x6D32, 0x8BCC, - 0x7CA5, 0x8F74, 0x8098, 0x5E1A, 0x5492, 0x76B1, 0x5B99, 0x663C, - 0x9AA4, 0x73E0, 0x682A, 0x86DB, 0x6731, 0x732A, 0x8BF8, 0x8BDB, - 0x9010, 0x7AF9, 0x70DB, 0x716E, 0x62C4, 0x77A9, 0x5631, 0x4E3B, - 0x8457, 0x67F1, 0x52A9, 0x86C0, 0x8D2E, 0x94F8, 0x7B51, 0, -plane d7 -at 0xa0 - 0x8C1E, 0x4F4F, 0x6CE8, 0x795D, 0x9A7B, 0x6293, 0x722A, 0x62FD, - 0x4E13, 0x7816, 0x8F6C, 0x64B0, 0x8D5A, 0x7BC6, 0x6869, 0x5E84, - 0x88C5, 0x5986, 0x649E, 0x58EE, 0x72B6, 0x690E, 0x9525, 0x8FFD, - 0x8D58, 0x5760, 0x7F00, 0x8C06, 0x51C6, 0x6349, 0x62D9, 0x5353, - 0x684C, 0x7422, 0x8301, 0x914C, 0x5544, 0x7740, 0x707C, 0x6D4A, - 0x5179, 0x54A8, 0x8D44, 0x59FF, 0x6ECB, 0x6DC4, 0x5B5C, 0x7D2B, - 0x4ED4, 0x7C7D, 0x6ED3, 0x5B50, 0x81EA, 0x6E0D, 0x5B57, 0x9B03, - 0x68D5, 0x8E2A, 0x5B97, 0x7EFC, 0x603B, 0x7EB5, 0x90B9, 0x8D70, - 0x594F, 0x63CD, 0x79DF, 0x8DB3, 0x5352, 0x65CF, 0x7956, 0x8BC5, - 0x963B, 0x7EC4, 0x94BB, 0x7E82, 0x5634, 0x9189, 0x6700, 0x7F6A, - 0x5C0A, 0x9075, 0x6628, 0x5DE6, 0x4F50, 0x67DE, 0x505A, 0x4F5C, - 0x5750, 0x5EA7, 0, 0, 0, 0, 0, 0, -plane d8 -at 0xa0 - 0x8CAD, 0x4E8D, 0x4E0C, 0x5140, 0x4E10, 0x5EFF, 0x5345, 0x4E15, - 0x4E98, 0x4E1E, 0x9B32, 0x5B6C, 0x5669, 0x4E28, 0x79BA, 0x4E3F, - 0x5315, 0x4E47, 0x592D, 0x723B, 0x536E, 0x6C10, 0x56DF, 0x80E4, - 0x9997, 0x6BD3, 0x777E, 0x9F17, 0x4E36, 0x4E9F, 0x9F10, 0x4E5C, - 0x4E69, 0x4E93, 0x8288, 0x5B5B, 0x556C, 0x560F, 0x4EC4, 0x538D, - 0x539D, 0x53A3, 0x53A5, 0x53AE, 0x9765, 0x8D5D, 0x531A, 0x53F5, - 0x5326, 0x532E, 0x533E, 0x8D5C, 0x5366, 0x5363, 0x5202, 0x5208, - 0x520E, 0x522D, 0x5233, 0x523F, 0x5240, 0x524C, 0x525E, 0x5261, - 0x525C, 0x84AF, 0x527D, 0x5282, 0x5281, 0x5290, 0x5293, 0x5182, - 0x7F54, 0x4EBB, 0x4EC3, 0x4EC9, 0x4EC2, 0x4EE8, 0x4EE1, 0x4EEB, - 0x4EDE, 0x4F1B, 0x4EF3, 0x4F22, 0x4F64, 0x4EF5, 0x4F25, 0x4F27, - 0x4F09, 0x4F2B, 0x4F5E, 0x4F67, 0x6538, 0x4F5A, 0x4F5D, 0, -plane d9 -at 0xa0 - 0x8D0D, 0x4F5F, 0x4F57, 0x4F32, 0x4F3D, 0x4F76, 0x4F74, 0x4F91, - 0x4F89, 0x4F83, 0x4F8F, 0x4F7E, 0x4F7B, 0x4FAA, 0x4F7C, 0x4FAC, - 0x4F94, 0x4FE6, 0x4FE8, 0x4FEA, 0x4FC5, 0x4FDA, 0x4FE3, 0x4FDC, - 0x4FD1, 0x4FDF, 0x4FF8, 0x5029, 0x504C, 0x4FF3, 0x502C, 0x500F, - 0x502E, 0x502D, 0x4FFE, 0x501C, 0x500C, 0x5025, 0x5028, 0x507E, - 0x5043, 0x5055, 0x5048, 0x504E, 0x506C, 0x507B, 0x50A5, 0x50A7, - 0x50A9, 0x50BA, 0x50D6, 0x5106, 0x50ED, 0x50EC, 0x50E6, 0x50EE, - 0x5107, 0x510B, 0x4EDD, 0x6C3D, 0x4F58, 0x4F65, 0x4FCE, 0x9FA0, - 0x6C46, 0x7C74, 0x516E, 0x5DFD, 0x9EC9, 0x9998, 0x5181, 0x5914, - 0x52F9, 0x530D, 0x8A07, 0x5310, 0x51EB, 0x5919, 0x5155, 0x4EA0, - 0x5156, 0x4EB3, 0x886E, 0x88A4, 0x4EB5, 0x8114, 0x88D2, 0x7980, - 0x5B34, 0x8803, 0x7FB8, 0x51AB, 0x51B1, 0x51BD, 0x51BC, 0, -plane da -at 0xa0 - 0x8DD4, 0x51C7, 0x5196, 0x51A2, 0x51A5, 0x8BA0, 0x8BA6, 0x8BA7, - 0x8BAA, 0x8BB4, 0x8BB5, 0x8BB7, 0x8BC2, 0x8BC3, 0x8BCB, 0x8BCF, - 0x8BCE, 0x8BD2, 0x8BD3, 0x8BD4, 0x8BD6, 0x8BD8, 0x8BD9, 0x8BDC, - 0x8BDF, 0x8BE0, 0x8BE4, 0x8BE8, 0x8BE9, 0x8BEE, 0x8BF0, 0x8BF3, - 0x8BF6, 0x8BF9, 0x8BFC, 0x8BFF, 0x8C00, 0x8C02, 0x8C04, 0x8C07, - 0x8C0C, 0x8C0F, 0x8C11, 0x8C12, 0x8C14, 0x8C15, 0x8C16, 0x8C19, - 0x8C1B, 0x8C18, 0x8C1D, 0x8C1F, 0x8C20, 0x8C21, 0x8C25, 0x8C27, - 0x8C2A, 0x8C2B, 0x8C2E, 0x8C2F, 0x8C32, 0x8C33, 0x8C35, 0x8C36, - 0x5369, 0x537A, 0x961D, 0x9622, 0x9621, 0x9631, 0x962A, 0x963D, - 0x963C, 0x9642, 0x9649, 0x9654, 0x965F, 0x9667, 0x966C, 0x9672, - 0x9674, 0x9688, 0x968D, 0x9697, 0x96B0, 0x9097, 0x909B, 0x909D, - 0x9099, 0x90AC, 0x90A1, 0x90B4, 0x90B3, 0x90B6, 0x90BA, 0, -plane db -at 0xa0 - 0x8E71, 0x90B8, 0x90B0, 0x90CF, 0x90C5, 0x90BE, 0x90D0, 0x90C4, - 0x90C7, 0x90D3, 0x90E6, 0x90E2, 0x90DC, 0x90D7, 0x90DB, 0x90EB, - 0x90EF, 0x90FE, 0x9104, 0x9122, 0x911E, 0x9123, 0x9131, 0x912F, - 0x9139, 0x9143, 0x9146, 0x520D, 0x5942, 0x52A2, 0x52AC, 0x52AD, - 0x52BE, 0x54FF, 0x52D0, 0x52D6, 0x52F0, 0x53DF, 0x71EE, 0x77CD, - 0x5EF4, 0x51F5, 0x51FC, 0x9B2F, 0x53B6, 0x5F01, 0x755A, 0x5DEF, - 0x574C, 0x57A9, 0x57A1, 0x587E, 0x58BC, 0x58C5, 0x58D1, 0x5729, - 0x572C, 0x572A, 0x5733, 0x5739, 0x572E, 0x572F, 0x575C, 0x573B, - 0x5742, 0x5769, 0x5785, 0x576B, 0x5786, 0x577C, 0x577B, 0x5768, - 0x576D, 0x5776, 0x5773, 0x57AD, 0x57A4, 0x578C, 0x57B2, 0x57CF, - 0x57A7, 0x57B4, 0x5793, 0x57A0, 0x57D5, 0x57D8, 0x57DA, 0x57D9, - 0x57D2, 0x57B8, 0x57F4, 0x57EF, 0x57F8, 0x57E4, 0x57DD, 0, -plane dc -at 0xa0 - 0x8EE4, 0x580B, 0x580D, 0x57FD, 0x57ED, 0x5800, 0x581E, 0x5819, - 0x5844, 0x5820, 0x5865, 0x586C, 0x5881, 0x5889, 0x589A, 0x5880, - 0x99A8, 0x9F19, 0x61FF, 0x8279, 0x827D, 0x827F, 0x828F, 0x828A, - 0x82A8, 0x8284, 0x828E, 0x8291, 0x8297, 0x8299, 0x82AB, 0x82B8, - 0x82BE, 0x82B0, 0x82C8, 0x82CA, 0x82E3, 0x8298, 0x82B7, 0x82AE, - 0x82CB, 0x82CC, 0x82C1, 0x82A9, 0x82B4, 0x82A1, 0x82AA, 0x829F, - 0x82C4, 0x82CE, 0x82A4, 0x82E1, 0x8309, 0x82F7, 0x82E4, 0x830F, - 0x8307, 0x82DC, 0x82F4, 0x82D2, 0x82D8, 0x830C, 0x82FB, 0x82D3, - 0x8311, 0x831A, 0x8306, 0x8314, 0x8315, 0x82E0, 0x82D5, 0x831C, - 0x8351, 0x835B, 0x835C, 0x8308, 0x8392, 0x833C, 0x8334, 0x8331, - 0x839B, 0x835E, 0x832F, 0x834F, 0x8347, 0x8343, 0x835F, 0x8340, - 0x8317, 0x8360, 0x832D, 0x833A, 0x8333, 0x8366, 0x8365, 0, -plane dd -at 0xa0 - 0x8F44, 0x8368, 0x831B, 0x8369, 0x836C, 0x836A, 0x836D, 0x836E, - 0x83B0, 0x8378, 0x83B3, 0x83B4, 0x83A0, 0x83AA, 0x8393, 0x839C, - 0x8385, 0x837C, 0x83B6, 0x83A9, 0x837D, 0x83B8, 0x837B, 0x8398, - 0x839E, 0x83A8, 0x83BA, 0x83BC, 0x83C1, 0x8401, 0x83E5, 0x83D8, - 0x5807, 0x8418, 0x840B, 0x83DD, 0x83FD, 0x83D6, 0x841C, 0x8438, - 0x8411, 0x8406, 0x83D4, 0x83DF, 0x840F, 0x8403, 0x83F8, 0x83F9, - 0x83EA, 0x83C5, 0x83C0, 0x8426, 0x83F0, 0x83E1, 0x845C, 0x8451, - 0x845A, 0x8459, 0x8473, 0x8487, 0x8488, 0x847A, 0x8489, 0x8478, - 0x843C, 0x8446, 0x8469, 0x8476, 0x848C, 0x848E, 0x8431, 0x846D, - 0x84C1, 0x84CD, 0x84D0, 0x84E6, 0x84BD, 0x84D3, 0x84CA, 0x84BF, - 0x84BA, 0x84E0, 0x84A1, 0x84B9, 0x84B4, 0x8497, 0x84E5, 0x84E3, - 0x850C, 0x750D, 0x8538, 0x84F0, 0x8539, 0x851F, 0x853A, 0, -plane de -at 0xa0 - 0x9018, 0x8556, 0x853B, 0x84FF, 0x84FC, 0x8559, 0x8548, 0x8568, - 0x8564, 0x855E, 0x857A, 0x77A2, 0x8543, 0x8572, 0x857B, 0x85A4, - 0x85A8, 0x8587, 0x858F, 0x8579, 0x85AE, 0x859C, 0x8585, 0x85B9, - 0x85B7, 0x85B0, 0x85D3, 0x85C1, 0x85DC, 0x85FF, 0x8627, 0x8605, - 0x8629, 0x8616, 0x863C, 0x5EFE, 0x5F08, 0x593C, 0x5941, 0x8037, - 0x5955, 0x595A, 0x5958, 0x530F, 0x5C22, 0x5C25, 0x5C2C, 0x5C34, - 0x624C, 0x626A, 0x629F, 0x62BB, 0x62CA, 0x62DA, 0x62D7, 0x62EE, - 0x6322, 0x62F6, 0x6339, 0x634B, 0x6343, 0x63AD, 0x63F6, 0x6371, - 0x637A, 0x638E, 0x63B4, 0x636D, 0x63AC, 0x638A, 0x6369, 0x63AE, - 0x63BC, 0x63F2, 0x63F8, 0x63E0, 0x63FF, 0x63C4, 0x63DE, 0x63CE, - 0x6452, 0x63C6, 0x63BE, 0x6445, 0x6441, 0x640B, 0x641B, 0x6420, - 0x640C, 0x6426, 0x6421, 0x645E, 0x6484, 0x646D, 0x6496, 0, -plane df -at 0xa0 - 0x90C0, 0x647A, 0x64B7, 0x64B8, 0x6499, 0x64BA, 0x64C0, 0x64D0, - 0x64D7, 0x64E4, 0x64E2, 0x6509, 0x6525, 0x652E, 0x5F0B, 0x5FD2, - 0x7519, 0x5F11, 0x535F, 0x53F1, 0x53FD, 0x53E9, 0x53E8, 0x53FB, - 0x5412, 0x5416, 0x5406, 0x544B, 0x5452, 0x5453, 0x5454, 0x5456, - 0x5443, 0x5421, 0x5457, 0x5459, 0x5423, 0x5432, 0x5482, 0x5494, - 0x5477, 0x5471, 0x5464, 0x549A, 0x549B, 0x5484, 0x5476, 0x5466, - 0x549D, 0x54D0, 0x54AD, 0x54C2, 0x54B4, 0x54D2, 0x54A7, 0x54A6, - 0x54D3, 0x54D4, 0x5472, 0x54A3, 0x54D5, 0x54BB, 0x54BF, 0x54CC, - 0x54D9, 0x54DA, 0x54DC, 0x54A9, 0x54AA, 0x54A4, 0x54DD, 0x54CF, - 0x54DE, 0x551B, 0x54E7, 0x5520, 0x54FD, 0x5514, 0x54F3, 0x5522, - 0x5523, 0x550F, 0x5511, 0x5527, 0x552A, 0x5567, 0x558F, 0x55B5, - 0x5549, 0x556D, 0x5541, 0x5555, 0x553F, 0x5550, 0x553C, 0, -plane e0 -at 0xa0 - 0x9144, 0x5537, 0x5556, 0x5575, 0x5576, 0x5577, 0x5533, 0x5530, - 0x555C, 0x558B, 0x55D2, 0x5583, 0x55B1, 0x55B9, 0x5588, 0x5581, - 0x559F, 0x557E, 0x55D6, 0x5591, 0x557B, 0x55DF, 0x55BD, 0x55BE, - 0x5594, 0x5599, 0x55EA, 0x55F7, 0x55C9, 0x561F, 0x55D1, 0x55EB, - 0x55EC, 0x55D4, 0x55E6, 0x55DD, 0x55C4, 0x55EF, 0x55E5, 0x55F2, - 0x55F3, 0x55CC, 0x55CD, 0x55E8, 0x55F5, 0x55E4, 0x8F94, 0x561E, - 0x5608, 0x560C, 0x5601, 0x5624, 0x5623, 0x55FE, 0x5600, 0x5627, - 0x562D, 0x5658, 0x5639, 0x5657, 0x562C, 0x564D, 0x5662, 0x5659, - 0x565C, 0x564C, 0x5654, 0x5686, 0x5664, 0x5671, 0x566B, 0x567B, - 0x567C, 0x5685, 0x5693, 0x56AF, 0x56D4, 0x56D7, 0x56DD, 0x56E1, - 0x56F5, 0x56EB, 0x56F9, 0x56FF, 0x5704, 0x570A, 0x5709, 0x571C, - 0x5E0F, 0x5E19, 0x5E14, 0x5E11, 0x5E31, 0x5E3B, 0x5E3C, 0, -plane e1 -at 0xa0 - 0x91E5, 0x5E37, 0x5E44, 0x5E54, 0x5E5B, 0x5E5E, 0x5E61, 0x5C8C, - 0x5C7A, 0x5C8D, 0x5C90, 0x5C96, 0x5C88, 0x5C98, 0x5C99, 0x5C91, - 0x5C9A, 0x5C9C, 0x5CB5, 0x5CA2, 0x5CBD, 0x5CAC, 0x5CAB, 0x5CB1, - 0x5CA3, 0x5CC1, 0x5CB7, 0x5CC4, 0x5CD2, 0x5CE4, 0x5CCB, 0x5CE5, - 0x5D02, 0x5D03, 0x5D27, 0x5D26, 0x5D2E, 0x5D24, 0x5D1E, 0x5D06, - 0x5D1B, 0x5D58, 0x5D3E, 0x5D34, 0x5D3D, 0x5D6C, 0x5D5B, 0x5D6F, - 0x5D5D, 0x5D6B, 0x5D4B, 0x5D4A, 0x5D69, 0x5D74, 0x5D82, 0x5D99, - 0x5D9D, 0x8C73, 0x5DB7, 0x5DC5, 0x5F73, 0x5F77, 0x5F82, 0x5F87, - 0x5F89, 0x5F8C, 0x5F95, 0x5F99, 0x5F9C, 0x5FA8, 0x5FAD, 0x5FB5, - 0x5FBC, 0x8862, 0x5F61, 0x72AD, 0x72B0, 0x72B4, 0x72B7, 0x72B8, - 0x72C3, 0x72C1, 0x72CE, 0x72CD, 0x72D2, 0x72E8, 0x72EF, 0x72E9, - 0x72F2, 0x72F4, 0x72F7, 0x7301, 0x72F3, 0x7303, 0x72FA, 0, -plane e2 -at 0xa0 - 0x9245, 0x72FB, 0x7317, 0x7313, 0x7321, 0x730A, 0x731E, 0x731D, - 0x7315, 0x7322, 0x7339, 0x7325, 0x732C, 0x7338, 0x7331, 0x7350, - 0x734D, 0x7357, 0x7360, 0x736C, 0x736F, 0x737E, 0x821B, 0x5925, - 0x98E7, 0x5924, 0x5902, 0x9963, 0x9967, 0x9968, 0x9969, 0x996A, - 0x996B, 0x996C, 0x9974, 0x9977, 0x997D, 0x9980, 0x9984, 0x9987, - 0x998A, 0x998D, 0x9990, 0x9991, 0x9993, 0x9994, 0x9995, 0x5E80, - 0x5E91, 0x5E8B, 0x5E96, 0x5EA5, 0x5EA0, 0x5EB9, 0x5EB5, 0x5EBE, - 0x5EB3, 0x8D53, 0x5ED2, 0x5ED1, 0x5EDB, 0x5EE8, 0x5EEA, 0x81BA, - 0x5FC4, 0x5FC9, 0x5FD6, 0x5FCF, 0x6003, 0x5FEE, 0x6004, 0x5FE1, - 0x5FE4, 0x5FFE, 0x6005, 0x6006, 0x5FEA, 0x5FED, 0x5FF8, 0x6019, - 0x6035, 0x6026, 0x601B, 0x600F, 0x600D, 0x6029, 0x602B, 0x600A, - 0x603F, 0x6021, 0x6078, 0x6079, 0x607B, 0x607A, 0x6042, 0, -plane e3 -at 0xa0 - 0x92A7, 0x606A, 0x607D, 0x6096, 0x609A, 0x60AD, 0x609D, 0x6083, - 0x6092, 0x608C, 0x609B, 0x60EC, 0x60BB, 0x60B1, 0x60DD, 0x60D8, - 0x60C6, 0x60DA, 0x60B4, 0x6120, 0x6126, 0x6115, 0x6123, 0x60F4, - 0x6100, 0x610E, 0x612B, 0x614A, 0x6175, 0x61AC, 0x6194, 0x61A7, - 0x61B7, 0x61D4, 0x61F5, 0x5FDD, 0x96B3, 0x95E9, 0x95EB, 0x95F1, - 0x95F3, 0x95F5, 0x95F6, 0x95FC, 0x95FE, 0x9603, 0x9604, 0x9606, - 0x9608, 0x960A, 0x960B, 0x960C, 0x960D, 0x960F, 0x9612, 0x9615, - 0x9616, 0x9617, 0x9619, 0x961A, 0x4E2C, 0x723F, 0x6215, 0x6C35, - 0x6C54, 0x6C5C, 0x6C4A, 0x6CA3, 0x6C85, 0x6C90, 0x6C94, 0x6C8C, - 0x6C68, 0x6C69, 0x6C74, 0x6C76, 0x6C86, 0x6CA9, 0x6CD0, 0x6CD4, - 0x6CAD, 0x6CF7, 0x6CF8, 0x6CF1, 0x6CD7, 0x6CB2, 0x6CE0, 0x6CD6, - 0x6CFA, 0x6CEB, 0x6CEE, 0x6CB1, 0x6CD3, 0x6CEF, 0x6CFE, 0, -plane e4 -at 0xa0 - 0x9309, 0x6D39, 0x6D27, 0x6D0C, 0x6D43, 0x6D48, 0x6D07, 0x6D04, - 0x6D19, 0x6D0E, 0x6D2B, 0x6D4D, 0x6D2E, 0x6D35, 0x6D1A, 0x6D4F, - 0x6D52, 0x6D54, 0x6D33, 0x6D91, 0x6D6F, 0x6D9E, 0x6DA0, 0x6D5E, - 0x6D93, 0x6D94, 0x6D5C, 0x6D60, 0x6D7C, 0x6D63, 0x6E1A, 0x6DC7, - 0x6DC5, 0x6DDE, 0x6E0E, 0x6DBF, 0x6DE0, 0x6E11, 0x6DE6, 0x6DDD, - 0x6DD9, 0x6E16, 0x6DAB, 0x6E0C, 0x6DAE, 0x6E2B, 0x6E6E, 0x6E4E, - 0x6E6B, 0x6EB2, 0x6E5F, 0x6E86, 0x6E53, 0x6E54, 0x6E32, 0x6E25, - 0x6E44, 0x6EDF, 0x6EB1, 0x6E98, 0x6EE0, 0x6F2D, 0x6EE2, 0x6EA5, - 0x6EA7, 0x6EBD, 0x6EBB, 0x6EB7, 0x6ED7, 0x6EB4, 0x6ECF, 0x6E8F, - 0x6EC2, 0x6E9F, 0x6F62, 0x6F46, 0x6F47, 0x6F24, 0x6F15, 0x6EF9, - 0x6F2F, 0x6F36, 0x6F4B, 0x6F74, 0x6F2A, 0x6F09, 0x6F29, 0x6F89, - 0x6F8D, 0x6F8C, 0x6F78, 0x6F72, 0x6F7C, 0x6F7A, 0x6FD1, 0, -plane e5 -at 0xa0 - 0x936B, 0x6FC9, 0x6FA7, 0x6FB9, 0x6FB6, 0x6FC2, 0x6FE1, 0x6FEE, - 0x6FDE, 0x6FE0, 0x6FEF, 0x701A, 0x7023, 0x701B, 0x7039, 0x7035, - 0x704F, 0x705E, 0x5B80, 0x5B84, 0x5B95, 0x5B93, 0x5BA5, 0x5BB8, - 0x752F, 0x9A9E, 0x6434, 0x5BE4, 0x5BEE, 0x8930, 0x5BF0, 0x8E47, - 0x8B07, 0x8FB6, 0x8FD3, 0x8FD5, 0x8FE5, 0x8FEE, 0x8FE4, 0x8FE9, - 0x8FE6, 0x8FF3, 0x8FE8, 0x9005, 0x9004, 0x900B, 0x9026, 0x9011, - 0x900D, 0x9016, 0x9021, 0x9035, 0x9036, 0x902D, 0x902F, 0x9044, - 0x9051, 0x9052, 0x9050, 0x9068, 0x9058, 0x9062, 0x905B, 0x66B9, - 0x9074, 0x907D, 0x9082, 0x9088, 0x9083, 0x908B, 0x5F50, 0x5F57, - 0x5F56, 0x5F58, 0x5C3B, 0x54AB, 0x5C50, 0x5C59, 0x5B71, 0x5C63, - 0x5C66, 0x7FBC, 0x5F2A, 0x5F29, 0x5F2D, 0x8274, 0x5F3C, 0x9B3B, - 0x5C6E, 0x5981, 0x5983, 0x598D, 0x59A9, 0x59AA, 0x59A3, 0, -plane e6 -at 0xa0 - 0x93CD, 0x5997, 0x59CA, 0x59AB, 0x599E, 0x59A4, 0x59D2, 0x59B2, - 0x59AF, 0x59D7, 0x59BE, 0x5A05, 0x5A06, 0x59DD, 0x5A08, 0x59E3, - 0x59D8, 0x59F9, 0x5A0C, 0x5A09, 0x5A32, 0x5A34, 0x5A11, 0x5A23, - 0x5A13, 0x5A40, 0x5A67, 0x5A4A, 0x5A55, 0x5A3C, 0x5A62, 0x5A75, - 0x80EC, 0x5AAA, 0x5A9B, 0x5A77, 0x5A7A, 0x5ABE, 0x5AEB, 0x5AB2, - 0x5AD2, 0x5AD4, 0x5AB8, 0x5AE0, 0x5AE3, 0x5AF1, 0x5AD6, 0x5AE6, - 0x5AD8, 0x5ADC, 0x5B09, 0x5B17, 0x5B16, 0x5B32, 0x5B37, 0x5B40, - 0x5C15, 0x5C1C, 0x5B5A, 0x5B65, 0x5B73, 0x5B51, 0x5B53, 0x5B62, - 0x9A75, 0x9A77, 0x9A78, 0x9A7A, 0x9A7F, 0x9A7D, 0x9A80, 0x9A81, - 0x9A85, 0x9A88, 0x9A8A, 0x9A90, 0x9A92, 0x9A93, 0x9A96, 0x9A98, - 0x9A9B, 0x9A9C, 0x9A9D, 0x9A9F, 0x9AA0, 0x9AA2, 0x9AA3, 0x9AA5, - 0x9AA7, 0x7E9F, 0x7EA1, 0x7EA3, 0x7EA5, 0x7EA8, 0x7EA9, 0, -plane e7 -at 0xa0 - 0x942E, 0x7EAD, 0x7EB0, 0x7EBE, 0x7EC0, 0x7EC1, 0x7EC2, 0x7EC9, - 0x7ECB, 0x7ECC, 0x7ED0, 0x7ED4, 0x7ED7, 0x7EDB, 0x7EE0, 0x7EE1, - 0x7EE8, 0x7EEB, 0x7EEE, 0x7EEF, 0x7EF1, 0x7EF2, 0x7F0D, 0x7EF6, - 0x7EFA, 0x7EFB, 0x7EFE, 0x7F01, 0x7F02, 0x7F03, 0x7F07, 0x7F08, - 0x7F0B, 0x7F0C, 0x7F0F, 0x7F11, 0x7F12, 0x7F17, 0x7F19, 0x7F1C, - 0x7F1B, 0x7F1F, 0x7F21, 0x7F22, 0x7F23, 0x7F24, 0x7F25, 0x7F26, - 0x7F27, 0x7F2A, 0x7F2B, 0x7F2C, 0x7F2D, 0x7F2F, 0x7F30, 0x7F31, - 0x7F32, 0x7F33, 0x7F35, 0x5E7A, 0x757F, 0x5DDB, 0x753E, 0x9095, - 0x738E, 0x7391, 0x73AE, 0x73A2, 0x739F, 0x73CF, 0x73C2, 0x73D1, - 0x73B7, 0x73B3, 0x73C0, 0x73C9, 0x73C8, 0x73E5, 0x73D9, 0x987C, - 0x740A, 0x73E9, 0x73E7, 0x73DE, 0x73BA, 0x73F2, 0x740F, 0x742A, - 0x745B, 0x7426, 0x7425, 0x7428, 0x7430, 0x742E, 0x742C, 0, -plane e8 -at 0xa0 - 0x9520, 0x741B, 0x741A, 0x7441, 0x745C, 0x7457, 0x7455, 0x7459, - 0x7477, 0x746D, 0x747E, 0x749C, 0x748E, 0x7480, 0x7481, 0x7487, - 0x748B, 0x749E, 0x74A8, 0x74A9, 0x7490, 0x74A7, 0x74D2, 0x74BA, - 0x97EA, 0x97EB, 0x97EC, 0x674C, 0x6753, 0x675E, 0x6748, 0x6769, - 0x67A5, 0x6787, 0x676A, 0x6773, 0x6798, 0x67A7, 0x6775, 0x67A8, - 0x679E, 0x67AD, 0x678B, 0x6777, 0x677C, 0x67F0, 0x6809, 0x67D8, - 0x680A, 0x67E9, 0x67B0, 0x680C, 0x67D9, 0x67B5, 0x67DA, 0x67B3, - 0x67DD, 0x6800, 0x67C3, 0x67B8, 0x67E2, 0x680E, 0x67C1, 0x67FD, - 0x6832, 0x6833, 0x6860, 0x6861, 0x684E, 0x6862, 0x6844, 0x6864, - 0x6883, 0x681D, 0x6855, 0x6866, 0x6841, 0x6867, 0x6840, 0x683E, - 0x684A, 0x6849, 0x6829, 0x68B5, 0x688F, 0x6874, 0x6877, 0x6893, - 0x686B, 0x68C2, 0x696E, 0x68FC, 0x691F, 0x6920, 0x68F9, 0, -plane e9 -at 0xa0 - 0x95CB, 0x6924, 0x68F0, 0x690B, 0x6901, 0x6957, 0x68E3, 0x6910, - 0x6971, 0x6939, 0x6960, 0x6942, 0x695D, 0x6984, 0x696B, 0x6980, - 0x6998, 0x6978, 0x6934, 0x69CC, 0x6987, 0x6988, 0x69CE, 0x6989, - 0x6966, 0x6963, 0x6979, 0x699B, 0x69A7, 0x69BB, 0x69AB, 0x69AD, - 0x69D4, 0x69B1, 0x69C1, 0x69CA, 0x69DF, 0x6995, 0x69E0, 0x698D, - 0x69FF, 0x6A2F, 0x69ED, 0x6A17, 0x6A18, 0x6A65, 0x69F2, 0x6A44, - 0x6A3E, 0x6AA0, 0x6A50, 0x6A5B, 0x6A35, 0x6A8E, 0x6A79, 0x6A3D, - 0x6A28, 0x6A58, 0x6A7C, 0x6A91, 0x6A90, 0x6AA9, 0x6A97, 0x6AAB, - 0x7337, 0x7352, 0x6B81, 0x6B82, 0x6B87, 0x6B84, 0x6B92, 0x6B93, - 0x6B8D, 0x6B9A, 0x6B9B, 0x6BA1, 0x6BAA, 0x8F6B, 0x8F6D, 0x8F71, - 0x8F72, 0x8F73, 0x8F75, 0x8F76, 0x8F78, 0x8F77, 0x8F79, 0x8F7A, - 0x8F7C, 0x8F7E, 0x8F81, 0x8F82, 0x8F84, 0x8F87, 0x8F8B, 0, -plane ea -at 0xa0 - 0x968A, 0x8F8D, 0x8F8E, 0x8F8F, 0x8F98, 0x8F9A, 0x8ECE, 0x620B, - 0x6217, 0x621B, 0x621F, 0x6222, 0x6221, 0x6225, 0x6224, 0x622C, - 0x81E7, 0x74EF, 0x74F4, 0x74FF, 0x750F, 0x7511, 0x7513, 0x6534, - 0x65EE, 0x65EF, 0x65F0, 0x660A, 0x6619, 0x6772, 0x6603, 0x6615, - 0x6600, 0x7085, 0x66F7, 0x661D, 0x6634, 0x6631, 0x6636, 0x6635, - 0x8006, 0x665F, 0x6654, 0x6641, 0x664F, 0x6656, 0x6661, 0x6657, - 0x6677, 0x6684, 0x668C, 0x66A7, 0x669D, 0x66BE, 0x66DB, 0x66DC, - 0x66E6, 0x66E9, 0x8D32, 0x8D33, 0x8D36, 0x8D3B, 0x8D3D, 0x8D40, - 0x8D45, 0x8D46, 0x8D48, 0x8D49, 0x8D47, 0x8D4D, 0x8D55, 0x8D59, - 0x89C7, 0x89CA, 0x89CB, 0x89CC, 0x89CE, 0x89CF, 0x89D0, 0x89D1, - 0x726E, 0x729F, 0x725D, 0x7266, 0x726F, 0x727E, 0x727F, 0x7284, - 0x728B, 0x728D, 0x728F, 0x7292, 0x6308, 0x6332, 0x63B0, 0, -plane eb -at 0xa0 - 0x9720, 0x643F, 0x64D8, 0x8004, 0x6BEA, 0x6BF3, 0x6BFD, 0x6BF5, - 0x6BF9, 0x6C05, 0x6C07, 0x6C06, 0x6C0D, 0x6C15, 0x6C18, 0x6C19, - 0x6C1A, 0x6C21, 0x6C29, 0x6C24, 0x6C2A, 0x6C32, 0x6535, 0x6555, - 0x656B, 0x724D, 0x7252, 0x7256, 0x7230, 0x8662, 0x5216, 0x809F, - 0x809C, 0x8093, 0x80BC, 0x670A, 0x80BD, 0x80B1, 0x80AB, 0x80AD, - 0x80B4, 0x80B7, 0x80E7, 0x80E8, 0x80E9, 0x80EA, 0x80DB, 0x80C2, - 0x80C4, 0x80D9, 0x80CD, 0x80D7, 0x6710, 0x80DD, 0x80EB, 0x80F1, - 0x80F4, 0x80ED, 0x810D, 0x810E, 0x80F2, 0x80FC, 0x6715, 0x8112, - 0x8C5A, 0x8136, 0x811E, 0x812C, 0x8118, 0x8132, 0x8148, 0x814C, - 0x8153, 0x8174, 0x8159, 0x815A, 0x8171, 0x8160, 0x8169, 0x817C, - 0x817D, 0x816D, 0x8167, 0x584D, 0x5AB5, 0x8188, 0x8182, 0x8191, - 0x6ED5, 0x81A3, 0x81AA, 0x81CC, 0x6726, 0x81CA, 0x81BB, 0, -plane ec -at 0xa0 - 0x979D, 0x81C1, 0x81A6, 0x6B24, 0x6B37, 0x6B39, 0x6B43, 0x6B46, - 0x6B59, 0x98D1, 0x98D2, 0x98D3, 0x98D5, 0x98D9, 0x98DA, 0x6BB3, - 0x5F40, 0x6BC2, 0x89F3, 0x6590, 0x9F51, 0x6593, 0x65BC, 0x65C6, - 0x65C4, 0x65C3, 0x65CC, 0x65CE, 0x65D2, 0x65D6, 0x7080, 0x709C, - 0x7096, 0x709D, 0x70BB, 0x70C0, 0x70B7, 0x70AB, 0x70B1, 0x70E8, - 0x70CA, 0x7110, 0x7113, 0x7116, 0x712F, 0x7131, 0x7173, 0x715C, - 0x7168, 0x7145, 0x7172, 0x714A, 0x7178, 0x717A, 0x7198, 0x71B3, - 0x71B5, 0x71A8, 0x71A0, 0x71E0, 0x71D4, 0x71E7, 0x71F9, 0x721D, - 0x7228, 0x706C, 0x7118, 0x7166, 0x71B9, 0x623E, 0x623D, 0x6243, - 0x6248, 0x6249, 0x793B, 0x7940, 0x7946, 0x7949, 0x795B, 0x795C, - 0x7953, 0x795A, 0x7962, 0x7957, 0x7960, 0x796F, 0x7967, 0x797A, - 0x7985, 0x798A, 0x799A, 0x79A7, 0x79B3, 0x5FD1, 0x5FD0, 0, -plane ed -at 0xa0 - 0x980E, 0x603C, 0x605D, 0x605A, 0x6067, 0x6041, 0x6059, 0x6063, - 0x60AB, 0x6106, 0x610D, 0x615D, 0x61A9, 0x619D, 0x61CB, 0x61D1, - 0x6206, 0x8080, 0x807F, 0x6C93, 0x6CF6, 0x6DFC, 0x77F6, 0x77F8, - 0x7800, 0x7809, 0x7817, 0x7818, 0x7811, 0x65AB, 0x782D, 0x781C, - 0x781D, 0x7839, 0x783A, 0x783B, 0x781F, 0x783C, 0x7825, 0x782C, - 0x7823, 0x7829, 0x784E, 0x786D, 0x7856, 0x7857, 0x7826, 0x7850, - 0x7847, 0x784C, 0x786A, 0x789B, 0x7893, 0x789A, 0x7887, 0x789C, - 0x78A1, 0x78A3, 0x78B2, 0x78B9, 0x78A5, 0x78D4, 0x78D9, 0x78C9, - 0x78EC, 0x78F2, 0x7905, 0x78F4, 0x7913, 0x7924, 0x791E, 0x7934, - 0x9F9B, 0x9EF9, 0x9EFB, 0x9EFC, 0x76F1, 0x7704, 0x770D, 0x76F9, - 0x7707, 0x7708, 0x771A, 0x7722, 0x7719, 0x772D, 0x7726, 0x7735, - 0x7738, 0x7750, 0x7751, 0x7747, 0x7743, 0x775A, 0x7768, 0, -plane ee -at 0xa0 - 0x986E, 0x7762, 0x7765, 0x777F, 0x778D, 0x777D, 0x7780, 0x778C, - 0x7791, 0x779F, 0x77A0, 0x77B0, 0x77B5, 0x77BD, 0x753A, 0x7540, - 0x754E, 0x754B, 0x7548, 0x755B, 0x7572, 0x7579, 0x7583, 0x7F58, - 0x7F61, 0x7F5F, 0x8A48, 0x7F68, 0x7F74, 0x7F71, 0x7F79, 0x7F81, - 0x7F7E, 0x76CD, 0x76E5, 0x8832, 0x9485, 0x9486, 0x9487, 0x948B, - 0x948A, 0x948C, 0x948D, 0x948F, 0x9490, 0x9494, 0x9497, 0x9495, - 0x949A, 0x949B, 0x949C, 0x94A3, 0x94A4, 0x94AB, 0x94AA, 0x94AD, - 0x94AC, 0x94AF, 0x94B0, 0x94B2, 0x94B4, 0x94B6, 0x94B7, 0x94B8, - 0x94B9, 0x94BA, 0x94BC, 0x94BD, 0x94BF, 0x94C4, 0x94C8, 0x94C9, - 0x94CA, 0x94CB, 0x94CC, 0x94CD, 0x94CE, 0x94D0, 0x94D1, 0x94D2, - 0x94D5, 0x94D6, 0x94D7, 0x94D9, 0x94D8, 0x94DB, 0x94DE, 0x94DF, - 0x94E0, 0x94E2, 0x94E4, 0x94E5, 0x94E7, 0x94E8, 0x94EA, 0, -plane ef -at 0xa0 - 0x9907, 0x94E9, 0x94EB, 0x94EE, 0x94EF, 0x94F3, 0x94F4, 0x94F5, - 0x94F7, 0x94F9, 0x94FC, 0x94FD, 0x94FF, 0x9503, 0x9502, 0x9506, - 0x9507, 0x9509, 0x950A, 0x950D, 0x950E, 0x950F, 0x9512, 0x9513, - 0x9514, 0x9515, 0x9516, 0x9518, 0x951B, 0x951D, 0x951E, 0x951F, - 0x9522, 0x952A, 0x952B, 0x9529, 0x952C, 0x9531, 0x9532, 0x9534, - 0x9536, 0x9537, 0x9538, 0x953C, 0x953E, 0x953F, 0x9542, 0x9535, - 0x9544, 0x9545, 0x9546, 0x9549, 0x954C, 0x954E, 0x954F, 0x9552, - 0x9553, 0x9554, 0x9556, 0x9557, 0x9558, 0x9559, 0x955B, 0x955E, - 0x955F, 0x955D, 0x9561, 0x9562, 0x9564, 0x9565, 0x9566, 0x9567, - 0x9568, 0x9569, 0x956A, 0x956B, 0x956C, 0x956F, 0x9571, 0x9572, - 0x9573, 0x953A, 0x77E7, 0x77EC, 0x96C9, 0x79D5, 0x79ED, 0x79E3, - 0x79EB, 0x7A06, 0x5D47, 0x7A03, 0x7A02, 0x7A1E, 0x7A14, 0, -plane f0 -at 0xa0 - 0x9989, 0x7A39, 0x7A37, 0x7A51, 0x9ECF, 0x99A5, 0x7A70, 0x7688, - 0x768E, 0x7693, 0x7699, 0x76A4, 0x74DE, 0x74E0, 0x752C, 0x9E20, - 0x9E22, 0x9E28, 0x9E29, 0x9E2A, 0x9E2B, 0x9E2C, 0x9E32, 0x9E31, - 0x9E36, 0x9E38, 0x9E37, 0x9E39, 0x9E3A, 0x9E3E, 0x9E41, 0x9E42, - 0x9E44, 0x9E46, 0x9E47, 0x9E48, 0x9E49, 0x9E4B, 0x9E4C, 0x9E4E, - 0x9E51, 0x9E55, 0x9E57, 0x9E5A, 0x9E5B, 0x9E5C, 0x9E5E, 0x9E63, - 0x9E66, 0x9E67, 0x9E68, 0x9E69, 0x9E6A, 0x9E6B, 0x9E6C, 0x9E71, - 0x9E6D, 0x9E73, 0x7592, 0x7594, 0x7596, 0x75A0, 0x759D, 0x75AC, - 0x75A3, 0x75B3, 0x75B4, 0x75B8, 0x75C4, 0x75B1, 0x75B0, 0x75C3, - 0x75C2, 0x75D6, 0x75CD, 0x75E3, 0x75E8, 0x75E6, 0x75E4, 0x75EB, - 0x75E7, 0x7603, 0x75F1, 0x75FC, 0x75FF, 0x7610, 0x7600, 0x7605, - 0x760C, 0x7617, 0x760A, 0x7625, 0x7618, 0x7615, 0x7619, 0, -plane f1 -at 0xa0 - 0x99F9, 0x761B, 0x763C, 0x7622, 0x7620, 0x7640, 0x762D, 0x7630, - 0x763F, 0x7635, 0x7643, 0x763E, 0x7633, 0x764D, 0x765E, 0x7654, - 0x765C, 0x7656, 0x766B, 0x766F, 0x7FCA, 0x7AE6, 0x7A78, 0x7A79, - 0x7A80, 0x7A86, 0x7A88, 0x7A95, 0x7AA6, 0x7AA0, 0x7AAC, 0x7AA8, - 0x7AAD, 0x7AB3, 0x8864, 0x8869, 0x8872, 0x887D, 0x887F, 0x8882, - 0x88A2, 0x88C6, 0x88B7, 0x88BC, 0x88C9, 0x88E2, 0x88CE, 0x88E3, - 0x88E5, 0x88F1, 0x891A, 0x88FC, 0x88E8, 0x88FE, 0x88F0, 0x8921, - 0x8919, 0x8913, 0x891B, 0x890A, 0x8934, 0x892B, 0x8936, 0x8941, - 0x8966, 0x897B, 0x758B, 0x80E5, 0x76B2, 0x76B4, 0x77DC, 0x8012, - 0x8014, 0x8016, 0x801C, 0x8020, 0x8022, 0x8025, 0x8026, 0x8027, - 0x8029, 0x8028, 0x8031, 0x800B, 0x8035, 0x8043, 0x8046, 0x804D, - 0x8052, 0x8069, 0x8071, 0x8983, 0x9878, 0x9880, 0x9883, 0, -plane f2 -at 0xa0 - 0x9A59, 0x9889, 0x988C, 0x988D, 0x988F, 0x9894, 0x989A, 0x989B, - 0x989E, 0x989F, 0x98A1, 0x98A2, 0x98A5, 0x98A6, 0x864D, 0x8654, - 0x866C, 0x866E, 0x867F, 0x867A, 0x867C, 0x867B, 0x86A8, 0x868D, - 0x868B, 0x86AC, 0x869D, 0x86A7, 0x86A3, 0x86AA, 0x8693, 0x86A9, - 0x86B6, 0x86C4, 0x86B5, 0x86CE, 0x86B0, 0x86BA, 0x86B1, 0x86AF, - 0x86C9, 0x86CF, 0x86B4, 0x86E9, 0x86F1, 0x86F2, 0x86ED, 0x86F3, - 0x86D0, 0x8713, 0x86DE, 0x86F4, 0x86DF, 0x86D8, 0x86D1, 0x8703, - 0x8707, 0x86F8, 0x8708, 0x870A, 0x870D, 0x8709, 0x8723, 0x873B, - 0x871E, 0x8725, 0x872E, 0x871A, 0x873E, 0x8748, 0x8734, 0x8731, - 0x8729, 0x8737, 0x873F, 0x8782, 0x8722, 0x877D, 0x877E, 0x877B, - 0x8760, 0x8770, 0x874C, 0x876E, 0x878B, 0x8753, 0x8763, 0x877C, - 0x8764, 0x8759, 0x8765, 0x8793, 0x87AF, 0x87A8, 0x87D2, 0, -plane f3 -at 0xa0 - 0x9B06, 0x87C6, 0x8788, 0x8785, 0x87AD, 0x8797, 0x8783, 0x87AB, - 0x87E5, 0x87AC, 0x87B5, 0x87B3, 0x87CB, 0x87D3, 0x87BD, 0x87D1, - 0x87C0, 0x87CA, 0x87DB, 0x87EA, 0x87E0, 0x87EE, 0x8816, 0x8813, - 0x87FE, 0x880A, 0x881B, 0x8821, 0x8839, 0x883C, 0x7F36, 0x7F42, - 0x7F44, 0x7F45, 0x8210, 0x7AFA, 0x7AFD, 0x7B08, 0x7B03, 0x7B04, - 0x7B15, 0x7B0A, 0x7B2B, 0x7B0F, 0x7B47, 0x7B38, 0x7B2A, 0x7B19, - 0x7B2E, 0x7B31, 0x7B20, 0x7B25, 0x7B24, 0x7B33, 0x7B3E, 0x7B1E, - 0x7B58, 0x7B5A, 0x7B45, 0x7B75, 0x7B4C, 0x7B5D, 0x7B60, 0x7B6E, - 0x7B7B, 0x7B62, 0x7B72, 0x7B71, 0x7B90, 0x7BA6, 0x7BA7, 0x7BB8, - 0x7BAC, 0x7B9D, 0x7BA8, 0x7B85, 0x7BAA, 0x7B9C, 0x7BA2, 0x7BAB, - 0x7BB4, 0x7BD1, 0x7BC1, 0x7BCC, 0x7BDD, 0x7BDA, 0x7BE5, 0x7BE6, - 0x7BEA, 0x7C0C, 0x7BFE, 0x7BFC, 0x7C0F, 0x7C16, 0x7C0B, 0, -plane f4 -at 0xa0 - 0x9B7B, 0x7C1F, 0x7C2A, 0x7C26, 0x7C38, 0x7C41, 0x7C40, 0x81FE, - 0x8201, 0x8202, 0x8204, 0x81EC, 0x8844, 0x8221, 0x8222, 0x8223, - 0x822D, 0x822F, 0x8228, 0x822B, 0x8238, 0x823B, 0x8233, 0x8234, - 0x823E, 0x8244, 0x8249, 0x824B, 0x824F, 0x825A, 0x825F, 0x8268, - 0x887E, 0x8885, 0x8888, 0x88D8, 0x88DF, 0x895E, 0x7F9D, 0x7F9F, - 0x7FA7, 0x7FAF, 0x7FB0, 0x7FB2, 0x7C7C, 0x6549, 0x7C91, 0x7C9D, - 0x7C9C, 0x7C9E, 0x7CA2, 0x7CB2, 0x7CBC, 0x7CBD, 0x7CC1, 0x7CC7, - 0x7CCC, 0x7CCD, 0x7CC8, 0x7CC5, 0x7CD7, 0x7CE8, 0x826E, 0x66A8, - 0x7FBF, 0x7FCE, 0x7FD5, 0x7FE5, 0x7FE1, 0x7FE6, 0x7FE9, 0x7FEE, - 0x7FF3, 0x7CF8, 0x7D77, 0x7DA6, 0x7DAE, 0x7E47, 0x7E9B, 0x9EB8, - 0x9EB4, 0x8D73, 0x8D84, 0x8D94, 0x8D91, 0x8DB1, 0x8D67, 0x8D6D, - 0x8C47, 0x8C49, 0x914A, 0x9150, 0x914E, 0x914F, 0x9164, 0, -plane f5 -at 0xa0 - 0x9BDB, 0x9162, 0x9161, 0x9170, 0x9169, 0x916F, 0x917D, 0x917E, - 0x9172, 0x9174, 0x9179, 0x918C, 0x9185, 0x9190, 0x918D, 0x9191, - 0x91A2, 0x91A3, 0x91AA, 0x91AD, 0x91AE, 0x91AF, 0x91B5, 0x91B4, - 0x91BA, 0x8C55, 0x9E7E, 0x8DB8, 0x8DEB, 0x8E05, 0x8E59, 0x8E69, - 0x8DB5, 0x8DBF, 0x8DBC, 0x8DBA, 0x8DC4, 0x8DD6, 0x8DD7, 0x8DDA, - 0x8DDE, 0x8DCE, 0x8DCF, 0x8DDB, 0x8DC6, 0x8DEC, 0x8DF7, 0x8DF8, - 0x8DE3, 0x8DF9, 0x8DFB, 0x8DE4, 0x8E09, 0x8DFD, 0x8E14, 0x8E1D, - 0x8E1F, 0x8E2C, 0x8E2E, 0x8E23, 0x8E2F, 0x8E3A, 0x8E40, 0x8E39, - 0x8E35, 0x8E3D, 0x8E31, 0x8E49, 0x8E41, 0x8E42, 0x8E51, 0x8E52, - 0x8E4A, 0x8E70, 0x8E76, 0x8E7C, 0x8E6F, 0x8E74, 0x8E85, 0x8E8F, - 0x8E94, 0x8E90, 0x8E9C, 0x8E9E, 0x8C78, 0x8C82, 0x8C8A, 0x8C85, - 0x8C98, 0x8C94, 0x659B, 0x89D6, 0x89DE, 0x89DA, 0x89DC, 0, -plane f6 -at 0xa0 - 0x9C3B, 0x89E5, 0x89EB, 0x89EF, 0x8A3E, 0x8B26, 0x9753, 0x96E9, - 0x96F3, 0x96EF, 0x9706, 0x9701, 0x9708, 0x970F, 0x970E, 0x972A, - 0x972D, 0x9730, 0x973E, 0x9F80, 0x9F83, 0x9F85, 0x9F86, 0x9F87, - 0x9F88, 0x9F89, 0x9F8A, 0x9F8C, 0x9EFE, 0x9F0B, 0x9F0D, 0x96B9, - 0x96BC, 0x96BD, 0x96CE, 0x96D2, 0x77BF, 0x96E0, 0x928E, 0x92AE, - 0x92C8, 0x933E, 0x936A, 0x93CA, 0x938F, 0x943E, 0x946B, 0x9C7F, - 0x9C82, 0x9C85, 0x9C86, 0x9C87, 0x9C88, 0x7A23, 0x9C8B, 0x9C8E, - 0x9C90, 0x9C91, 0x9C92, 0x9C94, 0x9C95, 0x9C9A, 0x9C9B, 0x9C9E, - 0x9C9F, 0x9CA0, 0x9CA1, 0x9CA2, 0x9CA3, 0x9CA5, 0x9CA6, 0x9CA7, - 0x9CA8, 0x9CA9, 0x9CAB, 0x9CAD, 0x9CAE, 0x9CB0, 0x9CB1, 0x9CB2, - 0x9CB3, 0x9CB4, 0x9CB5, 0x9CB6, 0x9CB7, 0x9CBA, 0x9CBB, 0x9CBC, - 0x9CBD, 0x9CC4, 0x9CC5, 0x9CC6, 0x9CC7, 0x9CCA, 0x9CCB, 0, -plane f7 -at 0xa0 - 0x9CE1, 0x9CCC, 0x9CCD, 0x9CCE, 0x9CCF, 0x9CD0, 0x9CD3, 0x9CD4, - 0x9CD5, 0x9CD7, 0x9CD8, 0x9CD9, 0x9CDC, 0x9CDD, 0x9CDF, 0x9CE2, - 0x977C, 0x9785, 0x9791, 0x9792, 0x9794, 0x97AF, 0x97AB, 0x97A3, - 0x97B2, 0x97B4, 0x9AB1, 0x9AB0, 0x9AB7, 0x9E58, 0x9AB6, 0x9ABA, - 0x9ABC, 0x9AC1, 0x9AC0, 0x9AC5, 0x9AC2, 0x9ACB, 0x9ACC, 0x9AD1, - 0x9B45, 0x9B43, 0x9B47, 0x9B49, 0x9B48, 0x9B4D, 0x9B51, 0x98E8, - 0x990D, 0x992E, 0x9955, 0x9954, 0x9ADF, 0x9AE1, 0x9AE6, 0x9AEF, - 0x9AEB, 0x9AFB, 0x9AED, 0x9AF9, 0x9B08, 0x9B0F, 0x9B13, 0x9B1F, - 0x9B23, 0x9EBD, 0x9EBE, 0x7E3B, 0x9E82, 0x9E87, 0x9E88, 0x9E8B, - 0x9E92, 0x93D6, 0x9E9D, 0x9E9F, 0x9EDB, 0x9EDC, 0x9EDD, 0x9EE0, - 0x9EDF, 0x9EE2, 0x9EE9, 0x9EE7, 0x9EE5, 0x9EEA, 0x9EEF, 0x9F22, - 0x9F2C, 0x9F2F, 0x9F39, 0x9F37, 0x9F3D, 0x9F3E, 0x9F44, 0, -plane f8 -at 0xa0 - 0x9D42, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane f9 -at 0xa0 - 0x9DA2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fa -at 0xa0 - 0x9E02, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fb -at 0xa0 - 0x9EAA, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fc -at 0xa0 - 0x9F31, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fd -at 0xa0 - 0xF9F1, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fe -at 0xa0 - 0xE864, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Build/source/texk/ttf2pt1/chinese/ugbk.map b/Build/source/texk/ttf2pt1/chinese/ugbk.map deleted file mode 100644 index 3d4370e6b18..00000000000 --- a/Build/source/texk/ttf2pt1/chinese/ugbk.map +++ /dev/null @@ -1,3295 +0,0 @@ -# GBK --> Unicode conversion table: -# generated by Chen Xiangyang (chenxy@sun.ihep.ac.cn) -# -# it contains all 21886 characters of GBK character set, it also contains -# some unused codes in order to make the array easy to use. -# Code range: first byte: 0x81 -- 0xFE 126 -# second byte: 0x40 -- 0xFF 192 -# code points: 126 x 192 = 24192 -# -# Usage: -# -# unsigned short GBK_code, unicode; -# int pos; -# pos = ((GBK_code>>8)-0x81)*192 + ((GBK_Code&0x00FF)-0x40); -# unicode = gbk2uni[pos]; -# -# Converted to ttf2pt1 map format by Sergey Babkin -# - -plane 81 -at 0x40 - 0x4E02, 0x4E04, 0x4E05, 0x4E06, 0x4E0F, 0x4E12, 0x4E17, 0x4E1F, - 0x4E20, 0x4E21, 0x4E23, 0x4E26, 0x4E29, 0x4E2E, 0x4E2F, 0x4E31, - 0x4E33, 0x4E35, 0x4E37, 0x4E3C, 0x4E40, 0x4E41, 0x4E42, 0x4E44, - 0x4E46, 0x4E4A, 0x4E51, 0x4E55, 0x4E57, 0x4E5A, 0x4E5B, 0x4E62, - 0x4E63, 0x4E64, 0x4E65, 0x4E67, 0x4E68, 0x4E6A, 0x4E6B, 0x4E6C, - 0x4E6D, 0x4E6E, 0x4E6F, 0x4E72, 0x4E74, 0x4E75, 0x4E76, 0x4E77, - 0x4E78, 0x4E79, 0x4E7A, 0x4E7B, 0x4E7C, 0x4E7D, 0x4E7F, 0x4E80, - 0x4E81, 0x4E82, 0x4E83, 0x4E84, 0x4E85, 0x4E87, 0x4E8A, 0, - 0x4E90, 0x4E96, 0x4E97, 0x4E99, 0x4E9C, 0x4E9D, 0x4E9E, 0x4EA3, - 0x4EAA, 0x4EAF, 0x4EB0, 0x4EB1, 0x4EB4, 0x4EB6, 0x4EB7, 0x4EB8, - 0x4EB9, 0x4EBC, 0x4EBD, 0x4EBE, 0x4EC8, 0x4ECC, 0x4ECF, 0x4ED0, - 0x4ED2, 0x4EDA, 0x4EDB, 0x4EDC, 0x4EE0, 0x4EE2, 0x4EE6, 0x4EE7, - 0x4EE9, 0x4EED, 0x4EEE, 0x4EEF, 0x4EF1, 0x4EF4, 0x4EF8, 0x4EF9, - 0x4EFA, 0x4EFC, 0x4EFE, 0x4F00, 0x4F02, 0x4F03, 0x4F04, 0x4F05, - 0x4F06, 0x4F07, 0x4F08, 0x4F0B, 0x4F0C, 0x4F12, 0x4F13, 0x4F14, - 0x4F15, 0x4F16, 0x4F1C, 0x4F1D, 0x4F21, 0x4F23, 0x4F28, 0x4F29, - 0x4F2C, 0x4F2D, 0x4F2E, 0x4F31, 0x4F33, 0x4F35, 0x4F37, 0x4F39, - 0x4F3B, 0x4F3E, 0x4F3F, 0x4F40, 0x4F41, 0x4F42, 0x4F44, 0x4F45, - 0x4F47, 0x4F48, 0x4F49, 0x4F4A, 0x4F4B, 0x4F4C, 0x4F52, 0x4F54, - 0x4F56, 0x4F61, 0x4F62, 0x4F66, 0x4F68, 0x4F6A, 0x4F6B, 0x4F6D, - 0x4F6E, 0x4F71, 0x4F72, 0x4F75, 0x4F77, 0x4F78, 0x4F79, 0x4F7A, - 0x4F7D, 0x4F80, 0x4F81, 0x4F82, 0x4F85, 0x4F86, 0x4F87, 0x4F8A, - 0x4F8C, 0x4F8E, 0x4F90, 0x4F92, 0x4F93, 0x4F95, 0x4F96, 0x4F98, - 0x4F99, 0x4F9A, 0x4F9C, 0x4F9E, 0x4F9F, 0x4FA1, 0x4FA2, 0, -plane 82 -at 0x40 - 0x4FA4, 0x4FAB, 0x4FAD, 0x4FB0, 0x4FB1, 0x4FB2, 0x4FB3, 0x4FB4, - 0x4FB6, 0x4FB7, 0x4FB8, 0x4FB9, 0x4FBA, 0x4FBB, 0x4FBC, 0x4FBD, - 0x4FBE, 0x4FC0, 0x4FC1, 0x4FC2, 0x4FC6, 0x4FC7, 0x4FC8, 0x4FC9, - 0x4FCB, 0x4FCC, 0x4FCD, 0x4FD2, 0x4FD3, 0x4FD4, 0x4FD5, 0x4FD6, - 0x4FD9, 0x4FDB, 0x4FE0, 0x4FE2, 0x4FE4, 0x4FE5, 0x4FE7, 0x4FEB, - 0x4FEC, 0x4FF0, 0x4FF2, 0x4FF4, 0x4FF5, 0x4FF6, 0x4FF7, 0x4FF9, - 0x4FFB, 0x4FFC, 0x4FFD, 0x4FFF, 0x5000, 0x5001, 0x5002, 0x5003, - 0x5004, 0x5005, 0x5006, 0x5007, 0x5008, 0x5009, 0x500A, 0, - 0x500B, 0x500E, 0x5010, 0x5011, 0x5013, 0x5015, 0x5016, 0x5017, - 0x501B, 0x501D, 0x501E, 0x5020, 0x5022, 0x5023, 0x5024, 0x5027, - 0x502B, 0x502F, 0x5030, 0x5031, 0x5032, 0x5033, 0x5034, 0x5035, - 0x5036, 0x5037, 0x5038, 0x5039, 0x503B, 0x503D, 0x503F, 0x5040, - 0x5041, 0x5042, 0x5044, 0x5045, 0x5046, 0x5049, 0x504A, 0x504B, - 0x504D, 0x5050, 0x5051, 0x5052, 0x5053, 0x5054, 0x5056, 0x5057, - 0x5058, 0x5059, 0x505B, 0x505D, 0x505E, 0x505F, 0x5060, 0x5061, - 0x5062, 0x5063, 0x5064, 0x5066, 0x5067, 0x5068, 0x5069, 0x506A, - 0x506B, 0x506D, 0x506E, 0x506F, 0x5070, 0x5071, 0x5072, 0x5073, - 0x5074, 0x5075, 0x5078, 0x5079, 0x507A, 0x507C, 0x507D, 0x5081, - 0x5082, 0x5083, 0x5084, 0x5086, 0x5087, 0x5089, 0x508A, 0x508B, - 0x508C, 0x508E, 0x508F, 0x5090, 0x5091, 0x5092, 0x5093, 0x5094, - 0x5095, 0x5096, 0x5097, 0x5098, 0x5099, 0x509A, 0x509B, 0x509C, - 0x509D, 0x509E, 0x509F, 0x50A0, 0x50A1, 0x50A2, 0x50A4, 0x50A6, - 0x50AA, 0x50AB, 0x50AD, 0x50AE, 0x50AF, 0x50B0, 0x50B1, 0x50B3, - 0x50B4, 0x50B5, 0x50B6, 0x50B7, 0x50B8, 0x50B9, 0x50BC, 0, -plane 83 -at 0x40 - 0x50BD, 0x50BE, 0x50BF, 0x50C0, 0x50C1, 0x50C2, 0x50C3, 0x50C4, - 0x50C5, 0x50C6, 0x50C7, 0x50C8, 0x50C9, 0x50CA, 0x50CB, 0x50CC, - 0x50CD, 0x50CE, 0x50D0, 0x50D1, 0x50D2, 0x50D3, 0x50D4, 0x50D5, - 0x50D7, 0x50D8, 0x50D9, 0x50DB, 0x50DC, 0x50DD, 0x50DE, 0x50DF, - 0x50E0, 0x50E1, 0x50E2, 0x50E3, 0x50E4, 0x50E5, 0x50E8, 0x50E9, - 0x50EA, 0x50EB, 0x50EF, 0x50F0, 0x50F1, 0x50F2, 0x50F4, 0x50F6, - 0x50F7, 0x50F8, 0x50F9, 0x50FA, 0x50FC, 0x50FD, 0x50FE, 0x50FF, - 0x5100, 0x5101, 0x5102, 0x5103, 0x5104, 0x5105, 0x5108, 0, - 0x5109, 0x510A, 0x510C, 0x510D, 0x510E, 0x510F, 0x5110, 0x5111, - 0x5113, 0x5114, 0x5115, 0x5116, 0x5117, 0x5118, 0x5119, 0x511A, - 0x511B, 0x511C, 0x511D, 0x511E, 0x511F, 0x5120, 0x5122, 0x5123, - 0x5124, 0x5125, 0x5126, 0x5127, 0x5128, 0x5129, 0x512A, 0x512B, - 0x512C, 0x512D, 0x512E, 0x512F, 0x5130, 0x5131, 0x5132, 0x5133, - 0x5134, 0x5135, 0x5136, 0x5137, 0x5138, 0x5139, 0x513A, 0x513B, - 0x513C, 0x513D, 0x513E, 0x5142, 0x5147, 0x514A, 0x514C, 0x514E, - 0x514F, 0x5150, 0x5152, 0x5153, 0x5157, 0x5158, 0x5159, 0x515B, - 0x515D, 0x515E, 0x515F, 0x5160, 0x5161, 0x5163, 0x5164, 0x5166, - 0x5167, 0x5169, 0x516A, 0x516F, 0x5172, 0x517A, 0x517E, 0x517F, - 0x5183, 0x5184, 0x5186, 0x5187, 0x518A, 0x518B, 0x518E, 0x518F, - 0x5190, 0x5191, 0x5193, 0x5194, 0x5198, 0x519A, 0x519D, 0x519E, - 0x519F, 0x51A1, 0x51A3, 0x51A6, 0x51A7, 0x51A8, 0x51A9, 0x51AA, - 0x51AD, 0x51AE, 0x51B4, 0x51B8, 0x51B9, 0x51BA, 0x51BE, 0x51BF, - 0x51C1, 0x51C2, 0x51C3, 0x51C5, 0x51C8, 0x51CA, 0x51CD, 0x51CE, - 0x51D0, 0x51D2, 0x51D3, 0x51D4, 0x51D5, 0x51D6, 0x51D7, 0, -plane 84 -at 0x40 - 0x51D8, 0x51D9, 0x51DA, 0x51DC, 0x51DE, 0x51DF, 0x51E2, 0x51E3, - 0x51E5, 0x51E6, 0x51E7, 0x51E8, 0x51E9, 0x51EA, 0x51EC, 0x51EE, - 0x51F1, 0x51F2, 0x51F4, 0x51F7, 0x51FE, 0x5204, 0x5205, 0x5209, - 0x520B, 0x520C, 0x520F, 0x5210, 0x5213, 0x5214, 0x5215, 0x521C, - 0x521E, 0x521F, 0x5221, 0x5222, 0x5223, 0x5225, 0x5226, 0x5227, - 0x522A, 0x522C, 0x522F, 0x5231, 0x5232, 0x5234, 0x5235, 0x523C, - 0x523E, 0x5244, 0x5245, 0x5246, 0x5247, 0x5248, 0x5249, 0x524B, - 0x524E, 0x524F, 0x5252, 0x5253, 0x5255, 0x5257, 0x5258, 0, - 0x5259, 0x525A, 0x525B, 0x525D, 0x525F, 0x5260, 0x5262, 0x5263, - 0x5264, 0x5266, 0x5268, 0x526B, 0x526C, 0x526D, 0x526E, 0x5270, - 0x5271, 0x5273, 0x5274, 0x5275, 0x5276, 0x5277, 0x5278, 0x5279, - 0x527A, 0x527B, 0x527C, 0x527E, 0x5280, 0x5283, 0x5284, 0x5285, - 0x5286, 0x5287, 0x5289, 0x528A, 0x528B, 0x528C, 0x528D, 0x528E, - 0x528F, 0x5291, 0x5292, 0x5294, 0x5295, 0x5296, 0x5297, 0x5298, - 0x5299, 0x529A, 0x529C, 0x52A4, 0x52A5, 0x52A6, 0x52A7, 0x52AE, - 0x52AF, 0x52B0, 0x52B4, 0x52B5, 0x52B6, 0x52B7, 0x52B8, 0x52B9, - 0x52BA, 0x52BB, 0x52BC, 0x52BD, 0x52C0, 0x52C1, 0x52C2, 0x52C4, - 0x52C5, 0x52C6, 0x52C8, 0x52CA, 0x52CC, 0x52CD, 0x52CE, 0x52CF, - 0x52D1, 0x52D3, 0x52D4, 0x52D5, 0x52D7, 0x52D9, 0x52DA, 0x52DB, - 0x52DC, 0x52DD, 0x52DE, 0x52E0, 0x52E1, 0x52E2, 0x52E3, 0x52E5, - 0x52E6, 0x52E7, 0x52E8, 0x52E9, 0x52EA, 0x52EB, 0x52EC, 0x52ED, - 0x52EE, 0x52EF, 0x52F1, 0x52F2, 0x52F3, 0x52F4, 0x52F5, 0x52F6, - 0x52F7, 0x52F8, 0x52FB, 0x52FC, 0x52FD, 0x5301, 0x5302, 0x5303, - 0x5304, 0x5307, 0x5309, 0x530A, 0x530B, 0x530C, 0x530E, 0, -plane 85 -at 0x40 - 0x5311, 0x5312, 0x5313, 0x5314, 0x5318, 0x531B, 0x531C, 0x531E, - 0x531F, 0x5322, 0x5324, 0x5325, 0x5327, 0x5328, 0x5329, 0x532B, - 0x532C, 0x532D, 0x532F, 0x5330, 0x5331, 0x5332, 0x5333, 0x5334, - 0x5335, 0x5336, 0x5337, 0x5338, 0x533C, 0x533D, 0x5340, 0x5342, - 0x5344, 0x5346, 0x534B, 0x534C, 0x534D, 0x5350, 0x5354, 0x5358, - 0x5359, 0x535B, 0x535D, 0x5365, 0x5368, 0x536A, 0x536C, 0x536D, - 0x5372, 0x5376, 0x5379, 0x537B, 0x537C, 0x537D, 0x537E, 0x5380, - 0x5381, 0x5383, 0x5387, 0x5388, 0x538A, 0x538E, 0x538F, 0, - 0x5390, 0x5391, 0x5392, 0x5393, 0x5394, 0x5396, 0x5397, 0x5399, - 0x539B, 0x539C, 0x539E, 0x53A0, 0x53A1, 0x53A4, 0x53A7, 0x53AA, - 0x53AB, 0x53AC, 0x53AD, 0x53AF, 0x53B0, 0x53B1, 0x53B2, 0x53B3, - 0x53B4, 0x53B5, 0x53B7, 0x53B8, 0x53B9, 0x53BA, 0x53BC, 0x53BD, - 0x53BE, 0x53C0, 0x53C3, 0x53C4, 0x53C5, 0x53C6, 0x53C7, 0x53CE, - 0x53CF, 0x53D0, 0x53D2, 0x53D3, 0x53D5, 0x53DA, 0x53DC, 0x53DD, - 0x53DE, 0x53E1, 0x53E2, 0x53E7, 0x53F4, 0x53FA, 0x53FE, 0x53FF, - 0x5400, 0x5402, 0x5405, 0x5407, 0x540B, 0x5414, 0x5418, 0x5419, - 0x541A, 0x541C, 0x5422, 0x5424, 0x5425, 0x542A, 0x5430, 0x5433, - 0x5436, 0x5437, 0x543A, 0x543D, 0x543F, 0x5441, 0x5442, 0x5444, - 0x5445, 0x5447, 0x5449, 0x544C, 0x544D, 0x544E, 0x544F, 0x5451, - 0x545A, 0x545D, 0x545E, 0x545F, 0x5460, 0x5461, 0x5463, 0x5465, - 0x5467, 0x5469, 0x546A, 0x546B, 0x546C, 0x546D, 0x546E, 0x546F, - 0x5470, 0x5474, 0x5479, 0x547A, 0x547E, 0x547F, 0x5481, 0x5483, - 0x5485, 0x5487, 0x5488, 0x5489, 0x548A, 0x548D, 0x5491, 0x5493, - 0x5497, 0x5498, 0x549C, 0x549E, 0x549F, 0x54A0, 0x54A1, 0, -plane 86 -at 0x40 - 0x54A2, 0x54A5, 0x54AE, 0x54B0, 0x54B2, 0x54B5, 0x54B6, 0x54B7, - 0x54B9, 0x54BA, 0x54BC, 0x54BE, 0x54C3, 0x54C5, 0x54CA, 0x54CB, - 0x54D6, 0x54D8, 0x54DB, 0x54E0, 0x54E1, 0x54E2, 0x54E3, 0x54E4, - 0x54EB, 0x54EC, 0x54EF, 0x54F0, 0x54F1, 0x54F4, 0x54F5, 0x54F6, - 0x54F7, 0x54F8, 0x54F9, 0x54FB, 0x54FE, 0x5500, 0x5502, 0x5503, - 0x5504, 0x5505, 0x5508, 0x550A, 0x550B, 0x550C, 0x550D, 0x550E, - 0x5512, 0x5513, 0x5515, 0x5516, 0x5517, 0x5518, 0x5519, 0x551A, - 0x551C, 0x551D, 0x551E, 0x551F, 0x5521, 0x5525, 0x5526, 0, - 0x5528, 0x5529, 0x552B, 0x552D, 0x5532, 0x5534, 0x5535, 0x5536, - 0x5538, 0x5539, 0x553A, 0x553B, 0x553D, 0x5540, 0x5542, 0x5545, - 0x5547, 0x5548, 0x554B, 0x554C, 0x554D, 0x554E, 0x554F, 0x5551, - 0x5552, 0x5553, 0x5554, 0x5557, 0x5558, 0x5559, 0x555A, 0x555B, - 0x555D, 0x555E, 0x555F, 0x5560, 0x5562, 0x5563, 0x5568, 0x5569, - 0x556B, 0x556F, 0x5570, 0x5571, 0x5572, 0x5573, 0x5574, 0x5579, - 0x557A, 0x557D, 0x557F, 0x5585, 0x5586, 0x558C, 0x558D, 0x558E, - 0x5590, 0x5592, 0x5593, 0x5595, 0x5596, 0x5597, 0x559A, 0x559B, - 0x559E, 0x55A0, 0x55A1, 0x55A2, 0x55A3, 0x55A4, 0x55A5, 0x55A6, - 0x55A8, 0x55A9, 0x55AA, 0x55AB, 0x55AC, 0x55AD, 0x55AE, 0x55AF, - 0x55B0, 0x55B2, 0x55B4, 0x55B6, 0x55B8, 0x55BA, 0x55BC, 0x55BF, - 0x55C0, 0x55C1, 0x55C2, 0x55C3, 0x55C6, 0x55C7, 0x55C8, 0x55CA, - 0x55CB, 0x55CE, 0x55CF, 0x55D0, 0x55D5, 0x55D7, 0x55D8, 0x55D9, - 0x55DA, 0x55DB, 0x55DE, 0x55E0, 0x55E2, 0x55E7, 0x55E9, 0x55ED, - 0x55EE, 0x55F0, 0x55F1, 0x55F4, 0x55F6, 0x55F8, 0x55F9, 0x55FA, - 0x55FB, 0x55FC, 0x55FF, 0x5602, 0x5603, 0x5604, 0x5605, 0, -plane 87 -at 0x40 - 0x5606, 0x5607, 0x560A, 0x560B, 0x560D, 0x5610, 0x5611, 0x5612, - 0x5613, 0x5614, 0x5615, 0x5616, 0x5617, 0x5619, 0x561A, 0x561C, - 0x561D, 0x5620, 0x5621, 0x5622, 0x5625, 0x5626, 0x5628, 0x5629, - 0x562A, 0x562B, 0x562E, 0x562F, 0x5630, 0x5633, 0x5635, 0x5637, - 0x5638, 0x563A, 0x563C, 0x563D, 0x563E, 0x5640, 0x5641, 0x5642, - 0x5643, 0x5644, 0x5645, 0x5646, 0x5647, 0x5648, 0x5649, 0x564A, - 0x564B, 0x564F, 0x5650, 0x5651, 0x5652, 0x5653, 0x5655, 0x5656, - 0x565A, 0x565B, 0x565D, 0x565E, 0x565F, 0x5660, 0x5661, 0, - 0x5663, 0x5665, 0x5666, 0x5667, 0x566D, 0x566E, 0x566F, 0x5670, - 0x5672, 0x5673, 0x5674, 0x5675, 0x5677, 0x5678, 0x5679, 0x567A, - 0x567D, 0x567E, 0x567F, 0x5680, 0x5681, 0x5682, 0x5683, 0x5684, - 0x5687, 0x5688, 0x5689, 0x568A, 0x568B, 0x568C, 0x568D, 0x5690, - 0x5691, 0x5692, 0x5694, 0x5695, 0x5696, 0x5697, 0x5698, 0x5699, - 0x569A, 0x569B, 0x569C, 0x569D, 0x569E, 0x569F, 0x56A0, 0x56A1, - 0x56A2, 0x56A4, 0x56A5, 0x56A6, 0x56A7, 0x56A8, 0x56A9, 0x56AA, - 0x56AB, 0x56AC, 0x56AD, 0x56AE, 0x56B0, 0x56B1, 0x56B2, 0x56B3, - 0x56B4, 0x56B5, 0x56B6, 0x56B8, 0x56B9, 0x56BA, 0x56BB, 0x56BD, - 0x56BE, 0x56BF, 0x56C0, 0x56C1, 0x56C2, 0x56C3, 0x56C4, 0x56C5, - 0x56C6, 0x56C7, 0x56C8, 0x56C9, 0x56CB, 0x56CC, 0x56CD, 0x56CE, - 0x56CF, 0x56D0, 0x56D1, 0x56D2, 0x56D3, 0x56D5, 0x56D6, 0x56D8, - 0x56D9, 0x56DC, 0x56E3, 0x56E5, 0x56E6, 0x56E7, 0x56E8, 0x56E9, - 0x56EA, 0x56EC, 0x56EE, 0x56EF, 0x56F2, 0x56F3, 0x56F6, 0x56F7, - 0x56F8, 0x56FB, 0x56FC, 0x5700, 0x5701, 0x5702, 0x5705, 0x5707, - 0x570B, 0x570C, 0x570D, 0x570E, 0x570F, 0x5710, 0x5711, 0, -plane 88 -at 0x40 - 0x5712, 0x5713, 0x5714, 0x5715, 0x5716, 0x5717, 0x5718, 0x5719, - 0x571A, 0x571B, 0x571D, 0x571E, 0x5720, 0x5721, 0x5722, 0x5724, - 0x5725, 0x5726, 0x5727, 0x572B, 0x5731, 0x5732, 0x5734, 0x5735, - 0x5736, 0x5737, 0x5738, 0x573C, 0x573D, 0x573F, 0x5741, 0x5743, - 0x5744, 0x5745, 0x5746, 0x5748, 0x5749, 0x574B, 0x5752, 0x5753, - 0x5754, 0x5755, 0x5756, 0x5758, 0x5759, 0x5762, 0x5763, 0x5765, - 0x5767, 0x576C, 0x576E, 0x5770, 0x5771, 0x5772, 0x5774, 0x5775, - 0x5778, 0x5779, 0x577A, 0x577D, 0x577E, 0x577F, 0x5780, 0, - 0x5781, 0x5787, 0x5788, 0x5789, 0x578A, 0x578D, 0x578E, 0x578F, - 0x5790, 0x5791, 0x5794, 0x5795, 0x5796, 0x5797, 0x5798, 0x5799, - 0x579A, 0x579C, 0x579D, 0x579E, 0x579F, 0x57A5, 0x57A8, 0x57AA, - 0x57AC, 0x57AF, 0x57B0, 0x57B1, 0x57B3, 0x57B5, 0x57B6, 0x57B7, - 0x57B9, 0x57BA, 0x57BB, 0x57BC, 0x57BD, 0x57BE, 0x57BF, 0x57C0, - 0x57C1, 0x57C4, 0x57C5, 0x57C6, 0x57C7, 0x57C8, 0x57C9, 0x57CA, - 0x57CC, 0x57CD, 0x57D0, 0x57D1, 0x57D3, 0x57D6, 0x57D7, 0x57DB, - 0x57DC, 0x57DE, 0x57E1, 0x57E2, 0x57E3, 0x57E5, 0x57E6, 0x57E7, - 0x57E8, 0x57E9, 0x57EA, 0x57EB, 0x57EC, 0x57EE, 0x57F0, 0x57F1, - 0x57F2, 0x57F3, 0x57F5, 0x57F6, 0x57F7, 0x57FB, 0x57FC, 0x57FE, - 0x57FF, 0x5801, 0x5803, 0x5804, 0x5805, 0x5808, 0x5809, 0x580A, - 0x580C, 0x580E, 0x580F, 0x5810, 0x5812, 0x5813, 0x5814, 0x5816, - 0x5817, 0x5818, 0x581A, 0x581B, 0x581C, 0x581D, 0x581F, 0x5822, - 0x5823, 0x5825, 0x5826, 0x5827, 0x5828, 0x5829, 0x582B, 0x582C, - 0x582D, 0x582E, 0x582F, 0x5831, 0x5832, 0x5833, 0x5834, 0x5836, - 0x5837, 0x5838, 0x5839, 0x583A, 0x583B, 0x583C, 0x583D, 0, -plane 89 -at 0x40 - 0x583E, 0x583F, 0x5840, 0x5841, 0x5842, 0x5843, 0x5845, 0x5846, - 0x5847, 0x5848, 0x5849, 0x584A, 0x584B, 0x584E, 0x584F, 0x5850, - 0x5852, 0x5853, 0x5855, 0x5856, 0x5857, 0x5859, 0x585A, 0x585B, - 0x585C, 0x585D, 0x585F, 0x5860, 0x5861, 0x5862, 0x5863, 0x5864, - 0x5866, 0x5867, 0x5868, 0x5869, 0x586A, 0x586D, 0x586E, 0x586F, - 0x5870, 0x5871, 0x5872, 0x5873, 0x5874, 0x5875, 0x5876, 0x5877, - 0x5878, 0x5879, 0x587A, 0x587B, 0x587C, 0x587D, 0x587F, 0x5882, - 0x5884, 0x5886, 0x5887, 0x5888, 0x588A, 0x588B, 0x588C, 0, - 0x588D, 0x588E, 0x588F, 0x5890, 0x5891, 0x5894, 0x5895, 0x5896, - 0x5897, 0x5898, 0x589B, 0x589C, 0x589D, 0x58A0, 0x58A1, 0x58A2, - 0x58A3, 0x58A4, 0x58A5, 0x58A6, 0x58A7, 0x58AA, 0x58AB, 0x58AC, - 0x58AD, 0x58AE, 0x58AF, 0x58B0, 0x58B1, 0x58B2, 0x58B3, 0x58B4, - 0x58B5, 0x58B6, 0x58B7, 0x58B8, 0x58B9, 0x58BA, 0x58BB, 0x58BD, - 0x58BE, 0x58BF, 0x58C0, 0x58C2, 0x58C3, 0x58C4, 0x58C6, 0x58C7, - 0x58C8, 0x58C9, 0x58CA, 0x58CB, 0x58CC, 0x58CD, 0x58CE, 0x58CF, - 0x58D0, 0x58D2, 0x58D3, 0x58D4, 0x58D6, 0x58D7, 0x58D8, 0x58D9, - 0x58DA, 0x58DB, 0x58DC, 0x58DD, 0x58DE, 0x58DF, 0x58E0, 0x58E1, - 0x58E2, 0x58E3, 0x58E5, 0x58E6, 0x58E7, 0x58E8, 0x58E9, 0x58EA, - 0x58ED, 0x58EF, 0x58F1, 0x58F2, 0x58F4, 0x58F5, 0x58F7, 0x58F8, - 0x58FA, 0x58FB, 0x58FC, 0x58FD, 0x58FE, 0x58FF, 0x5900, 0x5901, - 0x5903, 0x5905, 0x5906, 0x5908, 0x5909, 0x590A, 0x590B, 0x590C, - 0x590E, 0x5910, 0x5911, 0x5912, 0x5913, 0x5917, 0x5918, 0x591B, - 0x591D, 0x591E, 0x5920, 0x5921, 0x5922, 0x5923, 0x5926, 0x5928, - 0x592C, 0x5930, 0x5932, 0x5933, 0x5935, 0x5936, 0x593B, 0, -plane 8a -at 0x40 - 0x593D, 0x593E, 0x593F, 0x5940, 0x5943, 0x5945, 0x5946, 0x594A, - 0x594C, 0x594D, 0x5950, 0x5952, 0x5953, 0x5959, 0x595B, 0x595C, - 0x595D, 0x595E, 0x595F, 0x5961, 0x5963, 0x5964, 0x5966, 0x5967, - 0x5968, 0x5969, 0x596A, 0x596B, 0x596C, 0x596D, 0x596E, 0x596F, - 0x5970, 0x5971, 0x5972, 0x5975, 0x5977, 0x597A, 0x597B, 0x597C, - 0x597E, 0x597F, 0x5980, 0x5985, 0x5989, 0x598B, 0x598C, 0x598E, - 0x598F, 0x5990, 0x5991, 0x5994, 0x5995, 0x5998, 0x599A, 0x599B, - 0x599C, 0x599D, 0x599F, 0x59A0, 0x59A1, 0x59A2, 0x59A6, 0, - 0x59A7, 0x59AC, 0x59AD, 0x59B0, 0x59B1, 0x59B3, 0x59B4, 0x59B5, - 0x59B6, 0x59B7, 0x59B8, 0x59BA, 0x59BC, 0x59BD, 0x59BF, 0x59C0, - 0x59C1, 0x59C2, 0x59C3, 0x59C4, 0x59C5, 0x59C7, 0x59C8, 0x59C9, - 0x59CC, 0x59CD, 0x59CE, 0x59CF, 0x59D5, 0x59D6, 0x59D9, 0x59DB, - 0x59DE, 0x59DF, 0x59E0, 0x59E1, 0x59E2, 0x59E4, 0x59E6, 0x59E7, - 0x59E9, 0x59EA, 0x59EB, 0x59ED, 0x59EE, 0x59EF, 0x59F0, 0x59F1, - 0x59F2, 0x59F3, 0x59F4, 0x59F5, 0x59F6, 0x59F7, 0x59F8, 0x59FA, - 0x59FC, 0x59FD, 0x59FE, 0x5A00, 0x5A02, 0x5A0A, 0x5A0B, 0x5A0D, - 0x5A0E, 0x5A0F, 0x5A10, 0x5A12, 0x5A14, 0x5A15, 0x5A16, 0x5A17, - 0x5A19, 0x5A1A, 0x5A1B, 0x5A1D, 0x5A1E, 0x5A21, 0x5A22, 0x5A24, - 0x5A26, 0x5A27, 0x5A28, 0x5A2A, 0x5A2B, 0x5A2C, 0x5A2D, 0x5A2E, - 0x5A2F, 0x5A30, 0x5A33, 0x5A35, 0x5A37, 0x5A38, 0x5A39, 0x5A3A, - 0x5A3B, 0x5A3D, 0x5A3E, 0x5A3F, 0x5A41, 0x5A42, 0x5A43, 0x5A44, - 0x5A45, 0x5A47, 0x5A48, 0x5A4B, 0x5A4C, 0x5A4D, 0x5A4E, 0x5A4F, - 0x5A50, 0x5A51, 0x5A52, 0x5A53, 0x5A54, 0x5A56, 0x5A57, 0x5A58, - 0x5A59, 0x5A5B, 0x5A5C, 0x5A5D, 0x5A5E, 0x5A5F, 0x5A60, 0, -plane 8b -at 0x40 - 0x5A61, 0x5A63, 0x5A64, 0x5A65, 0x5A66, 0x5A68, 0x5A69, 0x5A6B, - 0x5A6C, 0x5A6D, 0x5A6E, 0x5A6F, 0x5A70, 0x5A71, 0x5A72, 0x5A73, - 0x5A78, 0x5A79, 0x5A7B, 0x5A7C, 0x5A7D, 0x5A7E, 0x5A80, 0x5A81, - 0x5A82, 0x5A83, 0x5A84, 0x5A85, 0x5A86, 0x5A87, 0x5A88, 0x5A89, - 0x5A8A, 0x5A8B, 0x5A8C, 0x5A8D, 0x5A8E, 0x5A8F, 0x5A90, 0x5A91, - 0x5A93, 0x5A94, 0x5A95, 0x5A96, 0x5A97, 0x5A98, 0x5A99, 0x5A9C, - 0x5A9D, 0x5A9E, 0x5A9F, 0x5AA0, 0x5AA1, 0x5AA2, 0x5AA3, 0x5AA4, - 0x5AA5, 0x5AA6, 0x5AA7, 0x5AA8, 0x5AA9, 0x5AAB, 0x5AAC, 0, - 0x5AAD, 0x5AAE, 0x5AAF, 0x5AB0, 0x5AB1, 0x5AB4, 0x5AB6, 0x5AB7, - 0x5AB9, 0x5ABA, 0x5ABB, 0x5ABC, 0x5ABD, 0x5ABF, 0x5AC0, 0x5AC3, - 0x5AC4, 0x5AC5, 0x5AC6, 0x5AC7, 0x5AC8, 0x5ACA, 0x5ACB, 0x5ACD, - 0x5ACE, 0x5ACF, 0x5AD0, 0x5AD1, 0x5AD3, 0x5AD5, 0x5AD7, 0x5AD9, - 0x5ADA, 0x5ADB, 0x5ADD, 0x5ADE, 0x5ADF, 0x5AE2, 0x5AE4, 0x5AE5, - 0x5AE7, 0x5AE8, 0x5AEA, 0x5AEC, 0x5AED, 0x5AEE, 0x5AEF, 0x5AF0, - 0x5AF2, 0x5AF3, 0x5AF4, 0x5AF5, 0x5AF6, 0x5AF7, 0x5AF8, 0x5AF9, - 0x5AFA, 0x5AFB, 0x5AFC, 0x5AFD, 0x5AFE, 0x5AFF, 0x5B00, 0x5B01, - 0x5B02, 0x5B03, 0x5B04, 0x5B05, 0x5B06, 0x5B07, 0x5B08, 0x5B0A, - 0x5B0B, 0x5B0C, 0x5B0D, 0x5B0E, 0x5B0F, 0x5B10, 0x5B11, 0x5B12, - 0x5B13, 0x5B14, 0x5B15, 0x5B18, 0x5B19, 0x5B1A, 0x5B1B, 0x5B1C, - 0x5B1D, 0x5B1E, 0x5B1F, 0x5B20, 0x5B21, 0x5B22, 0x5B23, 0x5B24, - 0x5B25, 0x5B26, 0x5B27, 0x5B28, 0x5B29, 0x5B2A, 0x5B2B, 0x5B2C, - 0x5B2D, 0x5B2E, 0x5B2F, 0x5B30, 0x5B31, 0x5B33, 0x5B35, 0x5B36, - 0x5B38, 0x5B39, 0x5B3A, 0x5B3B, 0x5B3C, 0x5B3D, 0x5B3E, 0x5B3F, - 0x5B41, 0x5B42, 0x5B43, 0x5B44, 0x5B45, 0x5B46, 0x5B47, 0, -plane 8c -at 0x40 - 0x5B48, 0x5B49, 0x5B4A, 0x5B4B, 0x5B4C, 0x5B4D, 0x5B4E, 0x5B4F, - 0x5B52, 0x5B56, 0x5B5E, 0x5B60, 0x5B61, 0x5B67, 0x5B68, 0x5B6B, - 0x5B6D, 0x5B6E, 0x5B6F, 0x5B72, 0x5B74, 0x5B76, 0x5B77, 0x5B78, - 0x5B79, 0x5B7B, 0x5B7C, 0x5B7E, 0x5B7F, 0x5B82, 0x5B86, 0x5B8A, - 0x5B8D, 0x5B8E, 0x5B90, 0x5B91, 0x5B92, 0x5B94, 0x5B96, 0x5B9F, - 0x5BA7, 0x5BA8, 0x5BA9, 0x5BAC, 0x5BAD, 0x5BAE, 0x5BAF, 0x5BB1, - 0x5BB2, 0x5BB7, 0x5BBA, 0x5BBB, 0x5BBC, 0x5BC0, 0x5BC1, 0x5BC3, - 0x5BC8, 0x5BC9, 0x5BCA, 0x5BCB, 0x5BCD, 0x5BCE, 0x5BCF, 0, - 0x5BD1, 0x5BD4, 0x5BD5, 0x5BD6, 0x5BD7, 0x5BD8, 0x5BD9, 0x5BDA, - 0x5BDB, 0x5BDC, 0x5BE0, 0x5BE2, 0x5BE3, 0x5BE6, 0x5BE7, 0x5BE9, - 0x5BEA, 0x5BEB, 0x5BEC, 0x5BED, 0x5BEF, 0x5BF1, 0x5BF2, 0x5BF3, - 0x5BF4, 0x5BF5, 0x5BF6, 0x5BF7, 0x5BFD, 0x5BFE, 0x5C00, 0x5C02, - 0x5C03, 0x5C05, 0x5C07, 0x5C08, 0x5C0B, 0x5C0C, 0x5C0D, 0x5C0E, - 0x5C10, 0x5C12, 0x5C13, 0x5C17, 0x5C19, 0x5C1B, 0x5C1E, 0x5C1F, - 0x5C20, 0x5C21, 0x5C23, 0x5C26, 0x5C28, 0x5C29, 0x5C2A, 0x5C2B, - 0x5C2D, 0x5C2E, 0x5C2F, 0x5C30, 0x5C32, 0x5C33, 0x5C35, 0x5C36, - 0x5C37, 0x5C43, 0x5C44, 0x5C46, 0x5C47, 0x5C4C, 0x5C4D, 0x5C52, - 0x5C53, 0x5C54, 0x5C56, 0x5C57, 0x5C58, 0x5C5A, 0x5C5B, 0x5C5C, - 0x5C5D, 0x5C5F, 0x5C62, 0x5C64, 0x5C67, 0x5C68, 0x5C69, 0x5C6A, - 0x5C6B, 0x5C6C, 0x5C6D, 0x5C70, 0x5C72, 0x5C73, 0x5C74, 0x5C75, - 0x5C76, 0x5C77, 0x5C78, 0x5C7B, 0x5C7C, 0x5C7D, 0x5C7E, 0x5C80, - 0x5C83, 0x5C84, 0x5C85, 0x5C86, 0x5C87, 0x5C89, 0x5C8A, 0x5C8B, - 0x5C8E, 0x5C8F, 0x5C92, 0x5C93, 0x5C95, 0x5C9D, 0x5C9E, 0x5C9F, - 0x5CA0, 0x5CA1, 0x5CA4, 0x5CA5, 0x5CA6, 0x5CA7, 0x5CA8, 0, -plane 8d -at 0x40 - 0x5CAA, 0x5CAE, 0x5CAF, 0x5CB0, 0x5CB2, 0x5CB4, 0x5CB6, 0x5CB9, - 0x5CBA, 0x5CBB, 0x5CBC, 0x5CBE, 0x5CC0, 0x5CC2, 0x5CC3, 0x5CC5, - 0x5CC6, 0x5CC7, 0x5CC8, 0x5CC9, 0x5CCA, 0x5CCC, 0x5CCD, 0x5CCE, - 0x5CCF, 0x5CD0, 0x5CD1, 0x5CD3, 0x5CD4, 0x5CD5, 0x5CD6, 0x5CD7, - 0x5CD8, 0x5CDA, 0x5CDB, 0x5CDC, 0x5CDD, 0x5CDE, 0x5CDF, 0x5CE0, - 0x5CE2, 0x5CE3, 0x5CE7, 0x5CE9, 0x5CEB, 0x5CEC, 0x5CEE, 0x5CEF, - 0x5CF1, 0x5CF2, 0x5CF3, 0x5CF4, 0x5CF5, 0x5CF6, 0x5CF7, 0x5CF8, - 0x5CF9, 0x5CFA, 0x5CFC, 0x5CFD, 0x5CFE, 0x5CFF, 0x5D00, 0, - 0x5D01, 0x5D04, 0x5D05, 0x5D08, 0x5D09, 0x5D0A, 0x5D0B, 0x5D0C, - 0x5D0D, 0x5D0F, 0x5D10, 0x5D11, 0x5D12, 0x5D13, 0x5D15, 0x5D17, - 0x5D18, 0x5D19, 0x5D1A, 0x5D1C, 0x5D1D, 0x5D1F, 0x5D20, 0x5D21, - 0x5D22, 0x5D23, 0x5D25, 0x5D28, 0x5D2A, 0x5D2B, 0x5D2C, 0x5D2F, - 0x5D30, 0x5D31, 0x5D32, 0x5D33, 0x5D35, 0x5D36, 0x5D37, 0x5D38, - 0x5D39, 0x5D3A, 0x5D3B, 0x5D3C, 0x5D3F, 0x5D40, 0x5D41, 0x5D42, - 0x5D43, 0x5D44, 0x5D45, 0x5D46, 0x5D48, 0x5D49, 0x5D4D, 0x5D4E, - 0x5D4F, 0x5D50, 0x5D51, 0x5D52, 0x5D53, 0x5D54, 0x5D55, 0x5D56, - 0x5D57, 0x5D59, 0x5D5A, 0x5D5C, 0x5D5E, 0x5D5F, 0x5D60, 0x5D61, - 0x5D62, 0x5D63, 0x5D64, 0x5D65, 0x5D66, 0x5D67, 0x5D68, 0x5D6A, - 0x5D6D, 0x5D6E, 0x5D70, 0x5D71, 0x5D72, 0x5D73, 0x5D75, 0x5D76, - 0x5D77, 0x5D78, 0x5D79, 0x5D7A, 0x5D7B, 0x5D7C, 0x5D7D, 0x5D7E, - 0x5D7F, 0x5D80, 0x5D81, 0x5D83, 0x5D84, 0x5D85, 0x5D86, 0x5D87, - 0x5D88, 0x5D89, 0x5D8A, 0x5D8B, 0x5D8C, 0x5D8D, 0x5D8E, 0x5D8F, - 0x5D90, 0x5D91, 0x5D92, 0x5D93, 0x5D94, 0x5D95, 0x5D96, 0x5D97, - 0x5D98, 0x5D9A, 0x5D9B, 0x5D9C, 0x5D9E, 0x5D9F, 0x5DA0, 0, -plane 8e -at 0x40 - 0x5DA1, 0x5DA2, 0x5DA3, 0x5DA4, 0x5DA5, 0x5DA6, 0x5DA7, 0x5DA8, - 0x5DA9, 0x5DAA, 0x5DAB, 0x5DAC, 0x5DAD, 0x5DAE, 0x5DAF, 0x5DB0, - 0x5DB1, 0x5DB2, 0x5DB3, 0x5DB4, 0x5DB5, 0x5DB6, 0x5DB8, 0x5DB9, - 0x5DBA, 0x5DBB, 0x5DBC, 0x5DBD, 0x5DBE, 0x5DBF, 0x5DC0, 0x5DC1, - 0x5DC2, 0x5DC3, 0x5DC4, 0x5DC6, 0x5DC7, 0x5DC8, 0x5DC9, 0x5DCA, - 0x5DCB, 0x5DCC, 0x5DCE, 0x5DCF, 0x5DD0, 0x5DD1, 0x5DD2, 0x5DD3, - 0x5DD4, 0x5DD5, 0x5DD6, 0x5DD7, 0x5DD8, 0x5DD9, 0x5DDA, 0x5DDC, - 0x5DDF, 0x5DE0, 0x5DE3, 0x5DE4, 0x5DEA, 0x5DEC, 0x5DED, 0, - 0x5DF0, 0x5DF5, 0x5DF6, 0x5DF8, 0x5DF9, 0x5DFA, 0x5DFB, 0x5DFC, - 0x5DFF, 0x5E00, 0x5E04, 0x5E07, 0x5E09, 0x5E0A, 0x5E0B, 0x5E0D, - 0x5E0E, 0x5E12, 0x5E13, 0x5E17, 0x5E1E, 0x5E1F, 0x5E20, 0x5E21, - 0x5E22, 0x5E23, 0x5E24, 0x5E25, 0x5E28, 0x5E29, 0x5E2A, 0x5E2B, - 0x5E2C, 0x5E2F, 0x5E30, 0x5E32, 0x5E33, 0x5E34, 0x5E35, 0x5E36, - 0x5E39, 0x5E3A, 0x5E3E, 0x5E3F, 0x5E40, 0x5E41, 0x5E43, 0x5E46, - 0x5E47, 0x5E48, 0x5E49, 0x5E4A, 0x5E4B, 0x5E4D, 0x5E4E, 0x5E4F, - 0x5E50, 0x5E51, 0x5E52, 0x5E53, 0x5E56, 0x5E57, 0x5E58, 0x5E59, - 0x5E5A, 0x5E5C, 0x5E5D, 0x5E5F, 0x5E60, 0x5E63, 0x5E64, 0x5E65, - 0x5E66, 0x5E67, 0x5E68, 0x5E69, 0x5E6A, 0x5E6B, 0x5E6C, 0x5E6D, - 0x5E6E, 0x5E6F, 0x5E70, 0x5E71, 0x5E75, 0x5E77, 0x5E79, 0x5E7E, - 0x5E81, 0x5E82, 0x5E83, 0x5E85, 0x5E88, 0x5E89, 0x5E8C, 0x5E8D, - 0x5E8E, 0x5E92, 0x5E98, 0x5E9B, 0x5E9D, 0x5EA1, 0x5EA2, 0x5EA3, - 0x5EA4, 0x5EA8, 0x5EA9, 0x5EAA, 0x5EAB, 0x5EAC, 0x5EAE, 0x5EAF, - 0x5EB0, 0x5EB1, 0x5EB2, 0x5EB4, 0x5EBA, 0x5EBB, 0x5EBC, 0x5EBD, - 0x5EBF, 0x5EC0, 0x5EC1, 0x5EC2, 0x5EC3, 0x5EC4, 0x5EC5, 0, -plane 8f -at 0x40 - 0x5EC6, 0x5EC7, 0x5EC8, 0x5ECB, 0x5ECC, 0x5ECD, 0x5ECE, 0x5ECF, - 0x5ED0, 0x5ED4, 0x5ED5, 0x5ED7, 0x5ED8, 0x5ED9, 0x5EDA, 0x5EDC, - 0x5EDD, 0x5EDE, 0x5EDF, 0x5EE0, 0x5EE1, 0x5EE2, 0x5EE3, 0x5EE4, - 0x5EE5, 0x5EE6, 0x5EE7, 0x5EE9, 0x5EEB, 0x5EEC, 0x5EED, 0x5EEE, - 0x5EEF, 0x5EF0, 0x5EF1, 0x5EF2, 0x5EF3, 0x5EF5, 0x5EF8, 0x5EF9, - 0x5EFB, 0x5EFC, 0x5EFD, 0x5F05, 0x5F06, 0x5F07, 0x5F09, 0x5F0C, - 0x5F0D, 0x5F0E, 0x5F10, 0x5F12, 0x5F14, 0x5F16, 0x5F19, 0x5F1A, - 0x5F1C, 0x5F1D, 0x5F1E, 0x5F21, 0x5F22, 0x5F23, 0x5F24, 0, - 0x5F28, 0x5F2B, 0x5F2C, 0x5F2E, 0x5F30, 0x5F32, 0x5F33, 0x5F34, - 0x5F35, 0x5F36, 0x5F37, 0x5F38, 0x5F3B, 0x5F3D, 0x5F3E, 0x5F3F, - 0x5F41, 0x5F42, 0x5F43, 0x5F44, 0x5F45, 0x5F46, 0x5F47, 0x5F48, - 0x5F49, 0x5F4A, 0x5F4B, 0x5F4C, 0x5F4D, 0x5F4E, 0x5F4F, 0x5F51, - 0x5F54, 0x5F59, 0x5F5A, 0x5F5B, 0x5F5C, 0x5F5E, 0x5F5F, 0x5F60, - 0x5F63, 0x5F65, 0x5F67, 0x5F68, 0x5F6B, 0x5F6E, 0x5F6F, 0x5F72, - 0x5F74, 0x5F75, 0x5F76, 0x5F78, 0x5F7A, 0x5F7D, 0x5F7E, 0x5F7F, - 0x5F83, 0x5F86, 0x5F8D, 0x5F8E, 0x5F8F, 0x5F91, 0x5F93, 0x5F94, - 0x5F96, 0x5F9A, 0x5F9B, 0x5F9D, 0x5F9E, 0x5F9F, 0x5FA0, 0x5FA2, - 0x5FA3, 0x5FA4, 0x5FA5, 0x5FA6, 0x5FA7, 0x5FA9, 0x5FAB, 0x5FAC, - 0x5FAF, 0x5FB0, 0x5FB1, 0x5FB2, 0x5FB3, 0x5FB4, 0x5FB6, 0x5FB8, - 0x5FB9, 0x5FBA, 0x5FBB, 0x5FBE, 0x5FBF, 0x5FC0, 0x5FC1, 0x5FC2, - 0x5FC7, 0x5FC8, 0x5FCA, 0x5FCB, 0x5FCE, 0x5FD3, 0x5FD4, 0x5FD5, - 0x5FDA, 0x5FDB, 0x5FDC, 0x5FDE, 0x5FDF, 0x5FE2, 0x5FE3, 0x5FE5, - 0x5FE6, 0x5FE8, 0x5FE9, 0x5FEC, 0x5FEF, 0x5FF0, 0x5FF2, 0x5FF3, - 0x5FF4, 0x5FF6, 0x5FF7, 0x5FF9, 0x5FFA, 0x5FFC, 0x6007, 0, -plane 90 -at 0x40 - 0x6008, 0x6009, 0x600B, 0x600C, 0x6010, 0x6011, 0x6013, 0x6017, - 0x6018, 0x601A, 0x601E, 0x601F, 0x6022, 0x6023, 0x6024, 0x602C, - 0x602D, 0x602E, 0x6030, 0x6031, 0x6032, 0x6033, 0x6034, 0x6036, - 0x6037, 0x6038, 0x6039, 0x603A, 0x603D, 0x603E, 0x6040, 0x6044, - 0x6045, 0x6046, 0x6047, 0x6048, 0x6049, 0x604A, 0x604C, 0x604E, - 0x604F, 0x6051, 0x6053, 0x6054, 0x6056, 0x6057, 0x6058, 0x605B, - 0x605C, 0x605E, 0x605F, 0x6060, 0x6061, 0x6065, 0x6066, 0x606E, - 0x6071, 0x6072, 0x6074, 0x6075, 0x6077, 0x607E, 0x6080, 0, - 0x6081, 0x6082, 0x6085, 0x6086, 0x6087, 0x6088, 0x608A, 0x608B, - 0x608E, 0x608F, 0x6090, 0x6091, 0x6093, 0x6095, 0x6097, 0x6098, - 0x6099, 0x609C, 0x609E, 0x60A1, 0x60A2, 0x60A4, 0x60A5, 0x60A7, - 0x60A9, 0x60AA, 0x60AE, 0x60B0, 0x60B3, 0x60B5, 0x60B6, 0x60B7, - 0x60B9, 0x60BA, 0x60BD, 0x60BE, 0x60BF, 0x60C0, 0x60C1, 0x60C2, - 0x60C3, 0x60C4, 0x60C7, 0x60C8, 0x60C9, 0x60CC, 0x60CD, 0x60CE, - 0x60CF, 0x60D0, 0x60D2, 0x60D3, 0x60D4, 0x60D6, 0x60D7, 0x60D9, - 0x60DB, 0x60DE, 0x60E1, 0x60E2, 0x60E3, 0x60E4, 0x60E5, 0x60EA, - 0x60F1, 0x60F2, 0x60F5, 0x60F7, 0x60F8, 0x60FB, 0x60FC, 0x60FD, - 0x60FE, 0x60FF, 0x6102, 0x6103, 0x6104, 0x6105, 0x6107, 0x610A, - 0x610B, 0x610C, 0x6110, 0x6111, 0x6112, 0x6113, 0x6114, 0x6116, - 0x6117, 0x6118, 0x6119, 0x611B, 0x611C, 0x611D, 0x611E, 0x6121, - 0x6122, 0x6125, 0x6128, 0x6129, 0x612A, 0x612C, 0x612D, 0x612E, - 0x612F, 0x6130, 0x6131, 0x6132, 0x6133, 0x6134, 0x6135, 0x6136, - 0x6137, 0x6138, 0x6139, 0x613A, 0x613B, 0x613C, 0x613D, 0x613E, - 0x6140, 0x6141, 0x6142, 0x6143, 0x6144, 0x6145, 0x6146, 0, -plane 91 -at 0x40 - 0x6147, 0x6149, 0x614B, 0x614D, 0x614F, 0x6150, 0x6152, 0x6153, - 0x6154, 0x6156, 0x6157, 0x6158, 0x6159, 0x615A, 0x615B, 0x615C, - 0x615E, 0x615F, 0x6160, 0x6161, 0x6163, 0x6164, 0x6165, 0x6166, - 0x6169, 0x616A, 0x616B, 0x616C, 0x616D, 0x616E, 0x616F, 0x6171, - 0x6172, 0x6173, 0x6174, 0x6176, 0x6178, 0x6179, 0x617A, 0x617B, - 0x617C, 0x617D, 0x617E, 0x617F, 0x6180, 0x6181, 0x6182, 0x6183, - 0x6184, 0x6185, 0x6186, 0x6187, 0x6188, 0x6189, 0x618A, 0x618C, - 0x618D, 0x618F, 0x6190, 0x6191, 0x6192, 0x6193, 0x6195, 0, - 0x6196, 0x6197, 0x6198, 0x6199, 0x619A, 0x619B, 0x619C, 0x619E, - 0x619F, 0x61A0, 0x61A1, 0x61A2, 0x61A3, 0x61A4, 0x61A5, 0x61A6, - 0x61AA, 0x61AB, 0x61AD, 0x61AE, 0x61AF, 0x61B0, 0x61B1, 0x61B2, - 0x61B3, 0x61B4, 0x61B5, 0x61B6, 0x61B8, 0x61B9, 0x61BA, 0x61BB, - 0x61BC, 0x61BD, 0x61BF, 0x61C0, 0x61C1, 0x61C3, 0x61C4, 0x61C5, - 0x61C6, 0x61C7, 0x61C9, 0x61CC, 0x61CD, 0x61CE, 0x61CF, 0x61D0, - 0x61D3, 0x61D5, 0x61D6, 0x61D7, 0x61D8, 0x61D9, 0x61DA, 0x61DB, - 0x61DC, 0x61DD, 0x61DE, 0x61DF, 0x61E0, 0x61E1, 0x61E2, 0x61E3, - 0x61E4, 0x61E5, 0x61E7, 0x61E8, 0x61E9, 0x61EA, 0x61EB, 0x61EC, - 0x61ED, 0x61EE, 0x61EF, 0x61F0, 0x61F1, 0x61F2, 0x61F3, 0x61F4, - 0x61F6, 0x61F7, 0x61F8, 0x61F9, 0x61FA, 0x61FB, 0x61FC, 0x61FD, - 0x61FE, 0x6200, 0x6201, 0x6202, 0x6203, 0x6204, 0x6205, 0x6207, - 0x6209, 0x6213, 0x6214, 0x6219, 0x621C, 0x621D, 0x621E, 0x6220, - 0x6223, 0x6226, 0x6227, 0x6228, 0x6229, 0x622B, 0x622D, 0x622F, - 0x6230, 0x6231, 0x6232, 0x6235, 0x6236, 0x6238, 0x6239, 0x623A, - 0x623B, 0x623C, 0x6242, 0x6244, 0x6245, 0x6246, 0x624A, 0, -plane 92 -at 0x40 - 0x624F, 0x6250, 0x6255, 0x6256, 0x6257, 0x6259, 0x625A, 0x625C, - 0x625D, 0x625E, 0x625F, 0x6260, 0x6261, 0x6262, 0x6264, 0x6265, - 0x6268, 0x6271, 0x6272, 0x6274, 0x6275, 0x6277, 0x6278, 0x627A, - 0x627B, 0x627D, 0x6281, 0x6282, 0x6283, 0x6285, 0x6286, 0x6287, - 0x6288, 0x628B, 0x628C, 0x628D, 0x628E, 0x628F, 0x6290, 0x6294, - 0x6299, 0x629C, 0x629D, 0x629E, 0x62A3, 0x62A6, 0x62A7, 0x62A9, - 0x62AA, 0x62AD, 0x62AE, 0x62AF, 0x62B0, 0x62B2, 0x62B3, 0x62B4, - 0x62B6, 0x62B7, 0x62B8, 0x62BA, 0x62BE, 0x62C0, 0x62C1, 0, - 0x62C3, 0x62CB, 0x62CF, 0x62D1, 0x62D5, 0x62DD, 0x62DE, 0x62E0, - 0x62E1, 0x62E4, 0x62EA, 0x62EB, 0x62F0, 0x62F2, 0x62F5, 0x62F8, - 0x62F9, 0x62FA, 0x62FB, 0x6300, 0x6303, 0x6304, 0x6305, 0x6306, - 0x630A, 0x630B, 0x630C, 0x630D, 0x630F, 0x6310, 0x6312, 0x6313, - 0x6314, 0x6315, 0x6317, 0x6318, 0x6319, 0x631C, 0x6326, 0x6327, - 0x6329, 0x632C, 0x632D, 0x632E, 0x6330, 0x6331, 0x6333, 0x6334, - 0x6335, 0x6336, 0x6337, 0x6338, 0x633B, 0x633C, 0x633E, 0x633F, - 0x6340, 0x6341, 0x6344, 0x6347, 0x6348, 0x634A, 0x6351, 0x6352, - 0x6353, 0x6354, 0x6356, 0x6357, 0x6358, 0x6359, 0x635A, 0x635B, - 0x635C, 0x635D, 0x6360, 0x6364, 0x6365, 0x6366, 0x6368, 0x636A, - 0x636B, 0x636C, 0x636F, 0x6370, 0x6372, 0x6373, 0x6374, 0x6375, - 0x6378, 0x6379, 0x637C, 0x637D, 0x637E, 0x637F, 0x6381, 0x6383, - 0x6384, 0x6385, 0x6386, 0x638B, 0x638D, 0x6391, 0x6393, 0x6394, - 0x6395, 0x6397, 0x6399, 0x639A, 0x639B, 0x639C, 0x639D, 0x639E, - 0x639F, 0x63A1, 0x63A4, 0x63A6, 0x63AB, 0x63AF, 0x63B1, 0x63B2, - 0x63B5, 0x63B6, 0x63B9, 0x63BB, 0x63BD, 0x63BF, 0x63C0, 0, -plane 93 -at 0x40 - 0x63C1, 0x63C2, 0x63C3, 0x63C5, 0x63C7, 0x63C8, 0x63CA, 0x63CB, - 0x63CC, 0x63D1, 0x63D3, 0x63D4, 0x63D5, 0x63D7, 0x63D8, 0x63D9, - 0x63DA, 0x63DB, 0x63DC, 0x63DD, 0x63DF, 0x63E2, 0x63E4, 0x63E5, - 0x63E6, 0x63E7, 0x63E8, 0x63EB, 0x63EC, 0x63EE, 0x63EF, 0x63F0, - 0x63F1, 0x63F3, 0x63F5, 0x63F7, 0x63F9, 0x63FA, 0x63FB, 0x63FC, - 0x63FE, 0x6403, 0x6404, 0x6406, 0x6407, 0x6408, 0x6409, 0x640A, - 0x640D, 0x640E, 0x6411, 0x6412, 0x6415, 0x6416, 0x6417, 0x6418, - 0x6419, 0x641A, 0x641D, 0x641F, 0x6422, 0x6423, 0x6424, 0, - 0x6425, 0x6427, 0x6428, 0x6429, 0x642B, 0x642E, 0x642F, 0x6430, - 0x6431, 0x6432, 0x6433, 0x6435, 0x6436, 0x6437, 0x6438, 0x6439, - 0x643B, 0x643C, 0x643E, 0x6440, 0x6442, 0x6443, 0x6449, 0x644B, - 0x644C, 0x644D, 0x644E, 0x644F, 0x6450, 0x6451, 0x6453, 0x6455, - 0x6456, 0x6457, 0x6459, 0x645A, 0x645B, 0x645C, 0x645D, 0x645F, - 0x6460, 0x6461, 0x6462, 0x6463, 0x6464, 0x6465, 0x6466, 0x6468, - 0x646A, 0x646B, 0x646C, 0x646E, 0x646F, 0x6470, 0x6471, 0x6472, - 0x6473, 0x6474, 0x6475, 0x6476, 0x6477, 0x647B, 0x647C, 0x647D, - 0x647E, 0x647F, 0x6480, 0x6481, 0x6483, 0x6486, 0x6488, 0x6489, - 0x648A, 0x648B, 0x648C, 0x648D, 0x648E, 0x648F, 0x6490, 0x6493, - 0x6494, 0x6497, 0x6498, 0x649A, 0x649B, 0x649C, 0x649D, 0x649F, - 0x64A0, 0x64A1, 0x64A2, 0x64A3, 0x64A5, 0x64A6, 0x64A7, 0x64A8, - 0x64AA, 0x64AB, 0x64AF, 0x64B1, 0x64B2, 0x64B3, 0x64B4, 0x64B6, - 0x64B9, 0x64BB, 0x64BD, 0x64BE, 0x64BF, 0x64C1, 0x64C3, 0x64C4, - 0x64C6, 0x64C7, 0x64C8, 0x64C9, 0x64CA, 0x64CB, 0x64CC, 0x64CF, - 0x64D1, 0x64D3, 0x64D4, 0x64D5, 0x64D6, 0x64D9, 0x64DA, 0, -plane 94 -at 0x40 - 0x64DB, 0x64DC, 0x64DD, 0x64DF, 0x64E0, 0x64E1, 0x64E3, 0x64E5, - 0x64E7, 0x64E8, 0x64E9, 0x64EA, 0x64EB, 0x64EC, 0x64ED, 0x64EE, - 0x64EF, 0x64F0, 0x64F1, 0x64F2, 0x64F3, 0x64F4, 0x64F5, 0x64F6, - 0x64F7, 0x64F8, 0x64F9, 0x64FA, 0x64FB, 0x64FC, 0x64FD, 0x64FE, - 0x64FF, 0x6501, 0x6502, 0x6503, 0x6504, 0x6505, 0x6506, 0x6507, - 0x6508, 0x650A, 0x650B, 0x650C, 0x650D, 0x650E, 0x650F, 0x6510, - 0x6511, 0x6513, 0x6514, 0x6515, 0x6516, 0x6517, 0x6519, 0x651A, - 0x651B, 0x651C, 0x651D, 0x651E, 0x651F, 0x6520, 0x6521, 0, - 0x6522, 0x6523, 0x6524, 0x6526, 0x6527, 0x6528, 0x6529, 0x652A, - 0x652C, 0x652D, 0x6530, 0x6531, 0x6532, 0x6533, 0x6537, 0x653A, - 0x653C, 0x653D, 0x6540, 0x6541, 0x6542, 0x6543, 0x6544, 0x6546, - 0x6547, 0x654A, 0x654B, 0x654D, 0x654E, 0x6550, 0x6552, 0x6553, - 0x6554, 0x6557, 0x6558, 0x655A, 0x655C, 0x655F, 0x6560, 0x6561, - 0x6564, 0x6565, 0x6567, 0x6568, 0x6569, 0x656A, 0x656D, 0x656E, - 0x656F, 0x6571, 0x6573, 0x6575, 0x6576, 0x6578, 0x6579, 0x657A, - 0x657B, 0x657C, 0x657D, 0x657E, 0x657F, 0x6580, 0x6581, 0x6582, - 0x6583, 0x6584, 0x6585, 0x6586, 0x6588, 0x6589, 0x658A, 0x658D, - 0x658E, 0x658F, 0x6592, 0x6594, 0x6595, 0x6596, 0x6598, 0x659A, - 0x659D, 0x659E, 0x65A0, 0x65A2, 0x65A3, 0x65A6, 0x65A8, 0x65AA, - 0x65AC, 0x65AE, 0x65B1, 0x65B2, 0x65B3, 0x65B4, 0x65B5, 0x65B6, - 0x65B7, 0x65B8, 0x65BA, 0x65BB, 0x65BE, 0x65BF, 0x65C0, 0x65C2, - 0x65C7, 0x65C8, 0x65C9, 0x65CA, 0x65CD, 0x65D0, 0x65D1, 0x65D3, - 0x65D4, 0x65D5, 0x65D8, 0x65D9, 0x65DA, 0x65DB, 0x65DC, 0x65DD, - 0x65DE, 0x65DF, 0x65E1, 0x65E3, 0x65E4, 0x65EA, 0x65EB, 0, -plane 95 -at 0x40 - 0x65F2, 0x65F3, 0x65F4, 0x65F5, 0x65F8, 0x65F9, 0x65FB, 0x65FC, - 0x65FD, 0x65FE, 0x65FF, 0x6601, 0x6604, 0x6605, 0x6607, 0x6608, - 0x6609, 0x660B, 0x660D, 0x6610, 0x6611, 0x6612, 0x6616, 0x6617, - 0x6618, 0x661A, 0x661B, 0x661C, 0x661E, 0x6621, 0x6622, 0x6623, - 0x6624, 0x6626, 0x6629, 0x662A, 0x662B, 0x662C, 0x662E, 0x6630, - 0x6632, 0x6633, 0x6637, 0x6638, 0x6639, 0x663A, 0x663B, 0x663D, - 0x663F, 0x6640, 0x6642, 0x6644, 0x6645, 0x6646, 0x6647, 0x6648, - 0x6649, 0x664A, 0x664D, 0x664E, 0x6650, 0x6651, 0x6658, 0, - 0x6659, 0x665B, 0x665C, 0x665D, 0x665E, 0x6660, 0x6662, 0x6663, - 0x6665, 0x6667, 0x6669, 0x666A, 0x666B, 0x666C, 0x666D, 0x6671, - 0x6672, 0x6673, 0x6675, 0x6678, 0x6679, 0x667B, 0x667C, 0x667D, - 0x667F, 0x6680, 0x6681, 0x6683, 0x6685, 0x6686, 0x6688, 0x6689, - 0x668A, 0x668B, 0x668D, 0x668E, 0x668F, 0x6690, 0x6692, 0x6693, - 0x6694, 0x6695, 0x6698, 0x6699, 0x669A, 0x669B, 0x669C, 0x669E, - 0x669F, 0x66A0, 0x66A1, 0x66A2, 0x66A3, 0x66A4, 0x66A5, 0x66A6, - 0x66A9, 0x66AA, 0x66AB, 0x66AC, 0x66AD, 0x66AF, 0x66B0, 0x66B1, - 0x66B2, 0x66B3, 0x66B5, 0x66B6, 0x66B7, 0x66B8, 0x66BA, 0x66BB, - 0x66BC, 0x66BD, 0x66BF, 0x66C0, 0x66C1, 0x66C2, 0x66C3, 0x66C4, - 0x66C5, 0x66C6, 0x66C7, 0x66C8, 0x66C9, 0x66CA, 0x66CB, 0x66CC, - 0x66CD, 0x66CE, 0x66CF, 0x66D0, 0x66D1, 0x66D2, 0x66D3, 0x66D4, - 0x66D5, 0x66D6, 0x66D7, 0x66D8, 0x66DA, 0x66DE, 0x66DF, 0x66E0, - 0x66E1, 0x66E2, 0x66E3, 0x66E4, 0x66E5, 0x66E7, 0x66E8, 0x66EA, - 0x66EB, 0x66EC, 0x66ED, 0x66EE, 0x66EF, 0x66F1, 0x66F5, 0x66F6, - 0x66F8, 0x66FA, 0x66FB, 0x66FD, 0x6701, 0x6702, 0x6703, 0, -plane 96 -at 0x40 - 0x6704, 0x6705, 0x6706, 0x6707, 0x670C, 0x670E, 0x670F, 0x6711, - 0x6712, 0x6713, 0x6716, 0x6718, 0x6719, 0x671A, 0x671C, 0x671E, - 0x6720, 0x6721, 0x6722, 0x6723, 0x6724, 0x6725, 0x6727, 0x6729, - 0x672E, 0x6730, 0x6732, 0x6733, 0x6736, 0x6737, 0x6738, 0x6739, - 0x673B, 0x673C, 0x673E, 0x673F, 0x6741, 0x6744, 0x6745, 0x6747, - 0x674A, 0x674B, 0x674D, 0x6752, 0x6754, 0x6755, 0x6757, 0x6758, - 0x6759, 0x675A, 0x675B, 0x675D, 0x6762, 0x6763, 0x6764, 0x6766, - 0x6767, 0x676B, 0x676C, 0x676E, 0x6771, 0x6774, 0x6776, 0, - 0x6778, 0x6779, 0x677A, 0x677B, 0x677D, 0x6780, 0x6782, 0x6783, - 0x6785, 0x6786, 0x6788, 0x678A, 0x678C, 0x678D, 0x678E, 0x678F, - 0x6791, 0x6792, 0x6793, 0x6794, 0x6796, 0x6799, 0x679B, 0x679F, - 0x67A0, 0x67A1, 0x67A4, 0x67A6, 0x67A9, 0x67AC, 0x67AE, 0x67B1, - 0x67B2, 0x67B4, 0x67B9, 0x67BA, 0x67BB, 0x67BC, 0x67BD, 0x67BE, - 0x67BF, 0x67C0, 0x67C2, 0x67C5, 0x67C6, 0x67C7, 0x67C8, 0x67C9, - 0x67CA, 0x67CB, 0x67CC, 0x67CD, 0x67CE, 0x67D5, 0x67D6, 0x67D7, - 0x67DB, 0x67DF, 0x67E1, 0x67E3, 0x67E4, 0x67E6, 0x67E7, 0x67E8, - 0x67EA, 0x67EB, 0x67ED, 0x67EE, 0x67F2, 0x67F5, 0x67F6, 0x67F7, - 0x67F8, 0x67F9, 0x67FA, 0x67FB, 0x67FC, 0x67FE, 0x6801, 0x6802, - 0x6803, 0x6804, 0x6806, 0x680D, 0x6810, 0x6812, 0x6814, 0x6815, - 0x6818, 0x6819, 0x681A, 0x681B, 0x681C, 0x681E, 0x681F, 0x6820, - 0x6822, 0x6823, 0x6824, 0x6825, 0x6826, 0x6827, 0x6828, 0x682B, - 0x682C, 0x682D, 0x682E, 0x682F, 0x6830, 0x6831, 0x6834, 0x6835, - 0x6836, 0x683A, 0x683B, 0x683F, 0x6847, 0x684B, 0x684D, 0x684F, - 0x6852, 0x6856, 0x6857, 0x6858, 0x6859, 0x685A, 0x685B, 0, -plane 97 -at 0x40 - 0x685C, 0x685D, 0x685E, 0x685F, 0x686A, 0x686C, 0x686D, 0x686E, - 0x686F, 0x6870, 0x6871, 0x6872, 0x6873, 0x6875, 0x6878, 0x6879, - 0x687A, 0x687B, 0x687C, 0x687D, 0x687E, 0x687F, 0x6880, 0x6882, - 0x6884, 0x6887, 0x6888, 0x6889, 0x688A, 0x688B, 0x688C, 0x688D, - 0x688E, 0x6890, 0x6891, 0x6892, 0x6894, 0x6895, 0x6896, 0x6898, - 0x6899, 0x689A, 0x689B, 0x689C, 0x689D, 0x689E, 0x689F, 0x68A0, - 0x68A1, 0x68A3, 0x68A4, 0x68A5, 0x68A9, 0x68AA, 0x68AB, 0x68AC, - 0x68AE, 0x68B1, 0x68B2, 0x68B4, 0x68B6, 0x68B7, 0x68B8, 0, - 0x68B9, 0x68BA, 0x68BB, 0x68BC, 0x68BD, 0x68BE, 0x68BF, 0x68C1, - 0x68C3, 0x68C4, 0x68C5, 0x68C6, 0x68C7, 0x68C8, 0x68CA, 0x68CC, - 0x68CE, 0x68CF, 0x68D0, 0x68D1, 0x68D3, 0x68D4, 0x68D6, 0x68D7, - 0x68D9, 0x68DB, 0x68DC, 0x68DD, 0x68DE, 0x68DF, 0x68E1, 0x68E2, - 0x68E4, 0x68E5, 0x68E6, 0x68E7, 0x68E8, 0x68E9, 0x68EA, 0x68EB, - 0x68EC, 0x68ED, 0x68EF, 0x68F2, 0x68F3, 0x68F4, 0x68F6, 0x68F7, - 0x68F8, 0x68FB, 0x68FD, 0x68FE, 0x68FF, 0x6900, 0x6902, 0x6903, - 0x6904, 0x6906, 0x6907, 0x6908, 0x6909, 0x690A, 0x690C, 0x690F, - 0x6911, 0x6913, 0x6914, 0x6915, 0x6916, 0x6917, 0x6918, 0x6919, - 0x691A, 0x691B, 0x691C, 0x691D, 0x691E, 0x6921, 0x6922, 0x6923, - 0x6925, 0x6926, 0x6927, 0x6928, 0x6929, 0x692A, 0x692B, 0x692C, - 0x692E, 0x692F, 0x6931, 0x6932, 0x6933, 0x6935, 0x6936, 0x6937, - 0x6938, 0x693A, 0x693B, 0x693C, 0x693E, 0x6940, 0x6941, 0x6943, - 0x6944, 0x6945, 0x6946, 0x6947, 0x6948, 0x6949, 0x694A, 0x694B, - 0x694C, 0x694D, 0x694E, 0x694F, 0x6950, 0x6951, 0x6952, 0x6953, - 0x6955, 0x6956, 0x6958, 0x6959, 0x695B, 0x695C, 0x695F, 0, -plane 98 -at 0x40 - 0x6961, 0x6962, 0x6964, 0x6965, 0x6967, 0x6968, 0x6969, 0x696A, - 0x696C, 0x696D, 0x696F, 0x6970, 0x6972, 0x6973, 0x6974, 0x6975, - 0x6976, 0x697A, 0x697B, 0x697D, 0x697E, 0x697F, 0x6981, 0x6983, - 0x6985, 0x698A, 0x698B, 0x698C, 0x698E, 0x698F, 0x6990, 0x6991, - 0x6992, 0x6993, 0x6996, 0x6997, 0x6999, 0x699A, 0x699D, 0x699E, - 0x699F, 0x69A0, 0x69A1, 0x69A2, 0x69A3, 0x69A4, 0x69A5, 0x69A6, - 0x69A9, 0x69AA, 0x69AC, 0x69AE, 0x69AF, 0x69B0, 0x69B2, 0x69B3, - 0x69B5, 0x69B6, 0x69B8, 0x69B9, 0x69BA, 0x69BC, 0x69BD, 0, - 0x69BE, 0x69BF, 0x69C0, 0x69C2, 0x69C3, 0x69C4, 0x69C5, 0x69C6, - 0x69C7, 0x69C8, 0x69C9, 0x69CB, 0x69CD, 0x69CF, 0x69D1, 0x69D2, - 0x69D3, 0x69D5, 0x69D6, 0x69D7, 0x69D8, 0x69D9, 0x69DA, 0x69DC, - 0x69DD, 0x69DE, 0x69E1, 0x69E2, 0x69E3, 0x69E4, 0x69E5, 0x69E6, - 0x69E7, 0x69E8, 0x69E9, 0x69EA, 0x69EB, 0x69EC, 0x69EE, 0x69EF, - 0x69F0, 0x69F1, 0x69F3, 0x69F4, 0x69F5, 0x69F6, 0x69F7, 0x69F8, - 0x69F9, 0x69FA, 0x69FB, 0x69FC, 0x69FE, 0x6A00, 0x6A01, 0x6A02, - 0x6A03, 0x6A04, 0x6A05, 0x6A06, 0x6A07, 0x6A08, 0x6A09, 0x6A0B, - 0x6A0C, 0x6A0D, 0x6A0E, 0x6A0F, 0x6A10, 0x6A11, 0x6A12, 0x6A13, - 0x6A14, 0x6A15, 0x6A16, 0x6A19, 0x6A1A, 0x6A1B, 0x6A1C, 0x6A1D, - 0x6A1E, 0x6A20, 0x6A22, 0x6A23, 0x6A24, 0x6A25, 0x6A26, 0x6A27, - 0x6A29, 0x6A2B, 0x6A2C, 0x6A2D, 0x6A2E, 0x6A30, 0x6A32, 0x6A33, - 0x6A34, 0x6A36, 0x6A37, 0x6A38, 0x6A39, 0x6A3A, 0x6A3B, 0x6A3C, - 0x6A3F, 0x6A40, 0x6A41, 0x6A42, 0x6A43, 0x6A45, 0x6A46, 0x6A48, - 0x6A49, 0x6A4A, 0x6A4B, 0x6A4C, 0x6A4D, 0x6A4E, 0x6A4F, 0x6A51, - 0x6A52, 0x6A53, 0x6A54, 0x6A55, 0x6A56, 0x6A57, 0x6A5A, 0, -plane 99 -at 0x40 - 0x6A5C, 0x6A5D, 0x6A5E, 0x6A5F, 0x6A60, 0x6A62, 0x6A63, 0x6A64, - 0x6A66, 0x6A67, 0x6A68, 0x6A69, 0x6A6A, 0x6A6B, 0x6A6C, 0x6A6D, - 0x6A6E, 0x6A6F, 0x6A70, 0x6A72, 0x6A73, 0x6A74, 0x6A75, 0x6A76, - 0x6A77, 0x6A78, 0x6A7A, 0x6A7B, 0x6A7D, 0x6A7E, 0x6A7F, 0x6A81, - 0x6A82, 0x6A83, 0x6A85, 0x6A86, 0x6A87, 0x6A88, 0x6A89, 0x6A8A, - 0x6A8B, 0x6A8C, 0x6A8D, 0x6A8F, 0x6A92, 0x6A93, 0x6A94, 0x6A95, - 0x6A96, 0x6A98, 0x6A99, 0x6A9A, 0x6A9B, 0x6A9C, 0x6A9D, 0x6A9E, - 0x6A9F, 0x6AA1, 0x6AA2, 0x6AA3, 0x6AA4, 0x6AA5, 0x6AA6, 0, - 0x6AA7, 0x6AA8, 0x6AAA, 0x6AAD, 0x6AAE, 0x6AAF, 0x6AB0, 0x6AB1, - 0x6AB2, 0x6AB3, 0x6AB4, 0x6AB5, 0x6AB6, 0x6AB7, 0x6AB8, 0x6AB9, - 0x6ABA, 0x6ABB, 0x6ABC, 0x6ABD, 0x6ABE, 0x6ABF, 0x6AC0, 0x6AC1, - 0x6AC2, 0x6AC3, 0x6AC4, 0x6AC5, 0x6AC6, 0x6AC7, 0x6AC8, 0x6AC9, - 0x6ACA, 0x6ACB, 0x6ACC, 0x6ACD, 0x6ACE, 0x6ACF, 0x6AD0, 0x6AD1, - 0x6AD2, 0x6AD3, 0x6AD4, 0x6AD5, 0x6AD6, 0x6AD7, 0x6AD8, 0x6AD9, - 0x6ADA, 0x6ADB, 0x6ADC, 0x6ADD, 0x6ADE, 0x6ADF, 0x6AE0, 0x6AE1, - 0x6AE2, 0x6AE3, 0x6AE4, 0x6AE5, 0x6AE6, 0x6AE7, 0x6AE8, 0x6AE9, - 0x6AEA, 0x6AEB, 0x6AEC, 0x6AED, 0x6AEE, 0x6AEF, 0x6AF0, 0x6AF1, - 0x6AF2, 0x6AF3, 0x6AF4, 0x6AF5, 0x6AF6, 0x6AF7, 0x6AF8, 0x6AF9, - 0x6AFA, 0x6AFB, 0x6AFC, 0x6AFD, 0x6AFE, 0x6AFF, 0x6B00, 0x6B01, - 0x6B02, 0x6B03, 0x6B04, 0x6B05, 0x6B06, 0x6B07, 0x6B08, 0x6B09, - 0x6B0A, 0x6B0B, 0x6B0C, 0x6B0D, 0x6B0E, 0x6B0F, 0x6B10, 0x6B11, - 0x6B12, 0x6B13, 0x6B14, 0x6B15, 0x6B16, 0x6B17, 0x6B18, 0x6B19, - 0x6B1A, 0x6B1B, 0x6B1C, 0x6B1D, 0x6B1E, 0x6B1F, 0x6B25, 0x6B26, - 0x6B28, 0x6B29, 0x6B2A, 0x6B2B, 0x6B2C, 0x6B2D, 0x6B2E, 0, -plane 9a -at 0x40 - 0x6B2F, 0x6B30, 0x6B31, 0x6B33, 0x6B34, 0x6B35, 0x6B36, 0x6B38, - 0x6B3B, 0x6B3C, 0x6B3D, 0x6B3F, 0x6B40, 0x6B41, 0x6B42, 0x6B44, - 0x6B45, 0x6B48, 0x6B4A, 0x6B4B, 0x6B4D, 0x6B4E, 0x6B4F, 0x6B50, - 0x6B51, 0x6B52, 0x6B53, 0x6B54, 0x6B55, 0x6B56, 0x6B57, 0x6B58, - 0x6B5A, 0x6B5B, 0x6B5C, 0x6B5D, 0x6B5E, 0x6B5F, 0x6B60, 0x6B61, - 0x6B68, 0x6B69, 0x6B6B, 0x6B6C, 0x6B6D, 0x6B6E, 0x6B6F, 0x6B70, - 0x6B71, 0x6B72, 0x6B73, 0x6B74, 0x6B75, 0x6B76, 0x6B77, 0x6B78, - 0x6B7A, 0x6B7D, 0x6B7E, 0x6B7F, 0x6B80, 0x6B85, 0x6B88, 0, - 0x6B8C, 0x6B8E, 0x6B8F, 0x6B90, 0x6B91, 0x6B94, 0x6B95, 0x6B97, - 0x6B98, 0x6B99, 0x6B9C, 0x6B9D, 0x6B9E, 0x6B9F, 0x6BA0, 0x6BA2, - 0x6BA3, 0x6BA4, 0x6BA5, 0x6BA6, 0x6BA7, 0x6BA8, 0x6BA9, 0x6BAB, - 0x6BAC, 0x6BAD, 0x6BAE, 0x6BAF, 0x6BB0, 0x6BB1, 0x6BB2, 0x6BB6, - 0x6BB8, 0x6BB9, 0x6BBA, 0x6BBB, 0x6BBC, 0x6BBD, 0x6BBE, 0x6BC0, - 0x6BC3, 0x6BC4, 0x6BC6, 0x6BC7, 0x6BC8, 0x6BC9, 0x6BCA, 0x6BCC, - 0x6BCE, 0x6BD0, 0x6BD1, 0x6BD8, 0x6BDA, 0x6BDC, 0x6BDD, 0x6BDE, - 0x6BDF, 0x6BE0, 0x6BE2, 0x6BE3, 0x6BE4, 0x6BE5, 0x6BE6, 0x6BE7, - 0x6BE8, 0x6BE9, 0x6BEC, 0x6BED, 0x6BEE, 0x6BF0, 0x6BF1, 0x6BF2, - 0x6BF4, 0x6BF6, 0x6BF7, 0x6BF8, 0x6BFA, 0x6BFB, 0x6BFC, 0x6BFE, - 0x6BFF, 0x6C00, 0x6C01, 0x6C02, 0x6C03, 0x6C04, 0x6C08, 0x6C09, - 0x6C0A, 0x6C0B, 0x6C0C, 0x6C0E, 0x6C12, 0x6C17, 0x6C1C, 0x6C1D, - 0x6C1E, 0x6C20, 0x6C23, 0x6C25, 0x6C2B, 0x6C2C, 0x6C2D, 0x6C31, - 0x6C33, 0x6C36, 0x6C37, 0x6C39, 0x6C3A, 0x6C3B, 0x6C3C, 0x6C3E, - 0x6C3F, 0x6C43, 0x6C44, 0x6C45, 0x6C48, 0x6C4B, 0x6C4C, 0x6C4D, - 0x6C4E, 0x6C4F, 0x6C51, 0x6C52, 0x6C53, 0x6C56, 0x6C58, 0, -plane 9b -at 0x40 - 0x6C59, 0x6C5A, 0x6C62, 0x6C63, 0x6C65, 0x6C66, 0x6C67, 0x6C6B, - 0x6C6C, 0x6C6D, 0x6C6E, 0x6C6F, 0x6C71, 0x6C73, 0x6C75, 0x6C77, - 0x6C78, 0x6C7A, 0x6C7B, 0x6C7C, 0x6C7F, 0x6C80, 0x6C84, 0x6C87, - 0x6C8A, 0x6C8B, 0x6C8D, 0x6C8E, 0x6C91, 0x6C92, 0x6C95, 0x6C96, - 0x6C97, 0x6C98, 0x6C9A, 0x6C9C, 0x6C9D, 0x6C9E, 0x6CA0, 0x6CA2, - 0x6CA8, 0x6CAC, 0x6CAF, 0x6CB0, 0x6CB4, 0x6CB5, 0x6CB6, 0x6CB7, - 0x6CBA, 0x6CC0, 0x6CC1, 0x6CC2, 0x6CC3, 0x6CC6, 0x6CC7, 0x6CC8, - 0x6CCB, 0x6CCD, 0x6CCE, 0x6CCF, 0x6CD1, 0x6CD2, 0x6CD8, 0, - 0x6CD9, 0x6CDA, 0x6CDC, 0x6CDD, 0x6CDF, 0x6CE4, 0x6CE6, 0x6CE7, - 0x6CE9, 0x6CEC, 0x6CED, 0x6CF2, 0x6CF4, 0x6CF9, 0x6CFF, 0x6D00, - 0x6D02, 0x6D03, 0x6D05, 0x6D06, 0x6D08, 0x6D09, 0x6D0A, 0x6D0D, - 0x6D0F, 0x6D10, 0x6D11, 0x6D13, 0x6D14, 0x6D15, 0x6D16, 0x6D18, - 0x6D1C, 0x6D1D, 0x6D1F, 0x6D20, 0x6D21, 0x6D22, 0x6D23, 0x6D24, - 0x6D26, 0x6D28, 0x6D29, 0x6D2C, 0x6D2D, 0x6D2F, 0x6D30, 0x6D34, - 0x6D36, 0x6D37, 0x6D38, 0x6D3A, 0x6D3F, 0x6D40, 0x6D42, 0x6D44, - 0x6D49, 0x6D4C, 0x6D50, 0x6D55, 0x6D56, 0x6D57, 0x6D58, 0x6D5B, - 0x6D5D, 0x6D5F, 0x6D61, 0x6D62, 0x6D64, 0x6D65, 0x6D67, 0x6D68, - 0x6D6B, 0x6D6C, 0x6D6D, 0x6D70, 0x6D71, 0x6D72, 0x6D73, 0x6D75, - 0x6D76, 0x6D79, 0x6D7A, 0x6D7B, 0x6D7D, 0x6D7E, 0x6D7F, 0x6D80, - 0x6D81, 0x6D83, 0x6D84, 0x6D86, 0x6D87, 0x6D8A, 0x6D8B, 0x6D8D, - 0x6D8F, 0x6D90, 0x6D92, 0x6D96, 0x6D97, 0x6D98, 0x6D99, 0x6D9A, - 0x6D9C, 0x6DA2, 0x6DA5, 0x6DAC, 0x6DAD, 0x6DB0, 0x6DB1, 0x6DB3, - 0x6DB4, 0x6DB6, 0x6DB7, 0x6DB9, 0x6DBA, 0x6DBB, 0x6DBC, 0x6DBD, - 0x6DBE, 0x6DC1, 0x6DC2, 0x6DC3, 0x6DC8, 0x6DC9, 0x6DCA, 0, -plane 9c -at 0x40 - 0x6DCD, 0x6DCE, 0x6DCF, 0x6DD0, 0x6DD2, 0x6DD3, 0x6DD4, 0x6DD5, - 0x6DD7, 0x6DDA, 0x6DDB, 0x6DDC, 0x6DDF, 0x6DE2, 0x6DE3, 0x6DE5, - 0x6DE7, 0x6DE8, 0x6DE9, 0x6DEA, 0x6DED, 0x6DEF, 0x6DF0, 0x6DF2, - 0x6DF4, 0x6DF5, 0x6DF6, 0x6DF8, 0x6DFA, 0x6DFD, 0x6DFE, 0x6DFF, - 0x6E00, 0x6E01, 0x6E02, 0x6E03, 0x6E04, 0x6E06, 0x6E07, 0x6E08, - 0x6E09, 0x6E0B, 0x6E0F, 0x6E12, 0x6E13, 0x6E15, 0x6E18, 0x6E19, - 0x6E1B, 0x6E1C, 0x6E1E, 0x6E1F, 0x6E22, 0x6E26, 0x6E27, 0x6E28, - 0x6E2A, 0x6E2C, 0x6E2E, 0x6E30, 0x6E31, 0x6E33, 0x6E35, 0, - 0x6E36, 0x6E37, 0x6E39, 0x6E3B, 0x6E3C, 0x6E3D, 0x6E3E, 0x6E3F, - 0x6E40, 0x6E41, 0x6E42, 0x6E45, 0x6E46, 0x6E47, 0x6E48, 0x6E49, - 0x6E4A, 0x6E4B, 0x6E4C, 0x6E4F, 0x6E50, 0x6E51, 0x6E52, 0x6E55, - 0x6E57, 0x6E59, 0x6E5A, 0x6E5C, 0x6E5D, 0x6E5E, 0x6E60, 0x6E61, - 0x6E62, 0x6E63, 0x6E64, 0x6E65, 0x6E66, 0x6E67, 0x6E68, 0x6E69, - 0x6E6A, 0x6E6C, 0x6E6D, 0x6E6F, 0x6E70, 0x6E71, 0x6E72, 0x6E73, - 0x6E74, 0x6E75, 0x6E76, 0x6E77, 0x6E78, 0x6E79, 0x6E7A, 0x6E7B, - 0x6E7C, 0x6E7D, 0x6E80, 0x6E81, 0x6E82, 0x6E84, 0x6E87, 0x6E88, - 0x6E8A, 0x6E8B, 0x6E8C, 0x6E8D, 0x6E8E, 0x6E91, 0x6E92, 0x6E93, - 0x6E94, 0x6E95, 0x6E96, 0x6E97, 0x6E99, 0x6E9A, 0x6E9B, 0x6E9D, - 0x6E9E, 0x6EA0, 0x6EA1, 0x6EA3, 0x6EA4, 0x6EA6, 0x6EA8, 0x6EA9, - 0x6EAB, 0x6EAC, 0x6EAD, 0x6EAE, 0x6EB0, 0x6EB3, 0x6EB5, 0x6EB8, - 0x6EB9, 0x6EBC, 0x6EBE, 0x6EBF, 0x6EC0, 0x6EC3, 0x6EC4, 0x6EC5, - 0x6EC6, 0x6EC8, 0x6EC9, 0x6ECA, 0x6ECC, 0x6ECD, 0x6ECE, 0x6ED0, - 0x6ED2, 0x6ED6, 0x6ED8, 0x6ED9, 0x6EDB, 0x6EDC, 0x6EDD, 0x6EE3, - 0x6EE7, 0x6EEA, 0x6EEB, 0x6EEC, 0x6EED, 0x6EEE, 0x6EEF, 0, -plane 9d -at 0x40 - 0x6EF0, 0x6EF1, 0x6EF2, 0x6EF3, 0x6EF5, 0x6EF6, 0x6EF7, 0x6EF8, - 0x6EFA, 0x6EFB, 0x6EFC, 0x6EFD, 0x6EFE, 0x6EFF, 0x6F00, 0x6F01, - 0x6F03, 0x6F04, 0x6F05, 0x6F07, 0x6F08, 0x6F0A, 0x6F0B, 0x6F0C, - 0x6F0D, 0x6F0E, 0x6F10, 0x6F11, 0x6F12, 0x6F16, 0x6F17, 0x6F18, - 0x6F19, 0x6F1A, 0x6F1B, 0x6F1C, 0x6F1D, 0x6F1E, 0x6F1F, 0x6F21, - 0x6F22, 0x6F23, 0x6F25, 0x6F26, 0x6F27, 0x6F28, 0x6F2C, 0x6F2E, - 0x6F30, 0x6F32, 0x6F34, 0x6F35, 0x6F37, 0x6F38, 0x6F39, 0x6F3A, - 0x6F3B, 0x6F3C, 0x6F3D, 0x6F3F, 0x6F40, 0x6F41, 0x6F42, 0, - 0x6F43, 0x6F44, 0x6F45, 0x6F48, 0x6F49, 0x6F4A, 0x6F4C, 0x6F4E, - 0x6F4F, 0x6F50, 0x6F51, 0x6F52, 0x6F53, 0x6F54, 0x6F55, 0x6F56, - 0x6F57, 0x6F59, 0x6F5A, 0x6F5B, 0x6F5D, 0x6F5F, 0x6F60, 0x6F61, - 0x6F63, 0x6F64, 0x6F65, 0x6F67, 0x6F68, 0x6F69, 0x6F6A, 0x6F6B, - 0x6F6C, 0x6F6F, 0x6F70, 0x6F71, 0x6F73, 0x6F75, 0x6F76, 0x6F77, - 0x6F79, 0x6F7B, 0x6F7D, 0x6F7E, 0x6F7F, 0x6F80, 0x6F81, 0x6F82, - 0x6F83, 0x6F85, 0x6F86, 0x6F87, 0x6F8A, 0x6F8B, 0x6F8F, 0x6F90, - 0x6F91, 0x6F92, 0x6F93, 0x6F94, 0x6F95, 0x6F96, 0x6F97, 0x6F98, - 0x6F99, 0x6F9A, 0x6F9B, 0x6F9D, 0x6F9E, 0x6F9F, 0x6FA0, 0x6FA2, - 0x6FA3, 0x6FA4, 0x6FA5, 0x6FA6, 0x6FA8, 0x6FA9, 0x6FAA, 0x6FAB, - 0x6FAC, 0x6FAD, 0x6FAE, 0x6FAF, 0x6FB0, 0x6FB1, 0x6FB2, 0x6FB4, - 0x6FB5, 0x6FB7, 0x6FB8, 0x6FBA, 0x6FBB, 0x6FBC, 0x6FBD, 0x6FBE, - 0x6FBF, 0x6FC1, 0x6FC3, 0x6FC4, 0x6FC5, 0x6FC6, 0x6FC7, 0x6FC8, - 0x6FCA, 0x6FCB, 0x6FCC, 0x6FCD, 0x6FCE, 0x6FCF, 0x6FD0, 0x6FD3, - 0x6FD4, 0x6FD5, 0x6FD6, 0x6FD7, 0x6FD8, 0x6FD9, 0x6FDA, 0x6FDB, - 0x6FDC, 0x6FDD, 0x6FDF, 0x6FE2, 0x6FE3, 0x6FE4, 0x6FE5, 0, -plane 9e -at 0x40 - 0x6FE6, 0x6FE7, 0x6FE8, 0x6FE9, 0x6FEA, 0x6FEB, 0x6FEC, 0x6FED, - 0x6FF0, 0x6FF1, 0x6FF2, 0x6FF3, 0x6FF4, 0x6FF5, 0x6FF6, 0x6FF7, - 0x6FF8, 0x6FF9, 0x6FFA, 0x6FFB, 0x6FFC, 0x6FFD, 0x6FFE, 0x6FFF, - 0x7000, 0x7001, 0x7002, 0x7003, 0x7004, 0x7005, 0x7006, 0x7007, - 0x7008, 0x7009, 0x700A, 0x700B, 0x700C, 0x700D, 0x700E, 0x700F, - 0x7010, 0x7012, 0x7013, 0x7014, 0x7015, 0x7016, 0x7017, 0x7018, - 0x7019, 0x701C, 0x701D, 0x701E, 0x701F, 0x7020, 0x7021, 0x7022, - 0x7024, 0x7025, 0x7026, 0x7027, 0x7028, 0x7029, 0x702A, 0, - 0x702B, 0x702C, 0x702D, 0x702E, 0x702F, 0x7030, 0x7031, 0x7032, - 0x7033, 0x7034, 0x7036, 0x7037, 0x7038, 0x703A, 0x703B, 0x703C, - 0x703D, 0x703E, 0x703F, 0x7040, 0x7041, 0x7042, 0x7043, 0x7044, - 0x7045, 0x7046, 0x7047, 0x7048, 0x7049, 0x704A, 0x704B, 0x704D, - 0x704E, 0x7050, 0x7051, 0x7052, 0x7053, 0x7054, 0x7055, 0x7056, - 0x7057, 0x7058, 0x7059, 0x705A, 0x705B, 0x705C, 0x705D, 0x705F, - 0x7060, 0x7061, 0x7062, 0x7063, 0x7064, 0x7065, 0x7066, 0x7067, - 0x7068, 0x7069, 0x706A, 0x706E, 0x7071, 0x7072, 0x7073, 0x7074, - 0x7077, 0x7079, 0x707A, 0x707B, 0x707D, 0x7081, 0x7082, 0x7083, - 0x7084, 0x7086, 0x7087, 0x7088, 0x708B, 0x708C, 0x708D, 0x708F, - 0x7090, 0x7091, 0x7093, 0x7097, 0x7098, 0x709A, 0x709B, 0x709E, - 0x709F, 0x70A0, 0x70A1, 0x70A2, 0x70A3, 0x70A4, 0x70A5, 0x70A6, - 0x70A7, 0x70A8, 0x70A9, 0x70AA, 0x70B0, 0x70B2, 0x70B4, 0x70B5, - 0x70B6, 0x70BA, 0x70BE, 0x70BF, 0x70C4, 0x70C5, 0x70C6, 0x70C7, - 0x70C9, 0x70CB, 0x70CC, 0x70CD, 0x70CE, 0x70CF, 0x70D0, 0x70D1, - 0x70D2, 0x70D3, 0x70D4, 0x70D5, 0x70D6, 0x70D7, 0x70DA, 0, -plane 9f -at 0x40 - 0x70DC, 0x70DD, 0x70DE, 0x70E0, 0x70E1, 0x70E2, 0x70E3, 0x70E5, - 0x70EA, 0x70EE, 0x70F0, 0x70F1, 0x70F2, 0x70F3, 0x70F4, 0x70F5, - 0x70F6, 0x70F8, 0x70FA, 0x70FB, 0x70FC, 0x70FE, 0x70FF, 0x7100, - 0x7101, 0x7102, 0x7103, 0x7104, 0x7105, 0x7106, 0x7107, 0x7108, - 0x710B, 0x710C, 0x710D, 0x710E, 0x710F, 0x7111, 0x7112, 0x7114, - 0x7117, 0x711B, 0x711C, 0x711D, 0x711E, 0x711F, 0x7120, 0x7121, - 0x7122, 0x7123, 0x7124, 0x7125, 0x7127, 0x7128, 0x7129, 0x712A, - 0x712B, 0x712C, 0x712D, 0x712E, 0x7132, 0x7133, 0x7134, 0, - 0x7135, 0x7137, 0x7138, 0x7139, 0x713A, 0x713B, 0x713C, 0x713D, - 0x713E, 0x713F, 0x7140, 0x7141, 0x7142, 0x7143, 0x7144, 0x7146, - 0x7147, 0x7148, 0x7149, 0x714B, 0x714D, 0x714F, 0x7150, 0x7151, - 0x7152, 0x7153, 0x7154, 0x7155, 0x7156, 0x7157, 0x7158, 0x7159, - 0x715A, 0x715B, 0x715D, 0x715F, 0x7160, 0x7161, 0x7162, 0x7163, - 0x7165, 0x7169, 0x716A, 0x716B, 0x716C, 0x716D, 0x716F, 0x7170, - 0x7171, 0x7174, 0x7175, 0x7176, 0x7177, 0x7179, 0x717B, 0x717C, - 0x717E, 0x717F, 0x7180, 0x7181, 0x7182, 0x7183, 0x7185, 0x7186, - 0x7187, 0x7188, 0x7189, 0x718B, 0x718C, 0x718D, 0x718E, 0x7190, - 0x7191, 0x7192, 0x7193, 0x7195, 0x7196, 0x7197, 0x719A, 0x719B, - 0x719C, 0x719D, 0x719E, 0x71A1, 0x71A2, 0x71A3, 0x71A4, 0x71A5, - 0x71A6, 0x71A7, 0x71A9, 0x71AA, 0x71AB, 0x71AD, 0x71AE, 0x71AF, - 0x71B0, 0x71B1, 0x71B2, 0x71B4, 0x71B6, 0x71B7, 0x71B8, 0x71BA, - 0x71BB, 0x71BC, 0x71BD, 0x71BE, 0x71BF, 0x71C0, 0x71C1, 0x71C2, - 0x71C4, 0x71C5, 0x71C6, 0x71C7, 0x71C8, 0x71C9, 0x71CA, 0x71CB, - 0x71CC, 0x71CD, 0x71CF, 0x71D0, 0x71D1, 0x71D2, 0x71D3, 0, -plane a0 -at 0x40 - 0x71D6, 0x71D7, 0x71D8, 0x71D9, 0x71DA, 0x71DB, 0x71DC, 0x71DD, - 0x71DE, 0x71DF, 0x71E1, 0x71E2, 0x71E3, 0x71E4, 0x71E6, 0x71E8, - 0x71E9, 0x71EA, 0x71EB, 0x71EC, 0x71ED, 0x71EF, 0x71F0, 0x71F1, - 0x71F2, 0x71F3, 0x71F4, 0x71F5, 0x71F6, 0x71F7, 0x71F8, 0x71FA, - 0x71FB, 0x71FC, 0x71FD, 0x71FE, 0x71FF, 0x7200, 0x7201, 0x7202, - 0x7203, 0x7204, 0x7205, 0x7207, 0x7208, 0x7209, 0x720A, 0x720B, - 0x720C, 0x720D, 0x720E, 0x720F, 0x7210, 0x7211, 0x7212, 0x7213, - 0x7214, 0x7215, 0x7216, 0x7217, 0x7218, 0x7219, 0x721A, 0, - 0x721B, 0x721C, 0x721E, 0x721F, 0x7220, 0x7221, 0x7222, 0x7223, - 0x7224, 0x7225, 0x7226, 0x7227, 0x7229, 0x722B, 0x722D, 0x722E, - 0x722F, 0x7232, 0x7233, 0x7234, 0x723A, 0x723C, 0x723E, 0x7240, - 0x7241, 0x7242, 0x7243, 0x7244, 0x7245, 0x7246, 0x7249, 0x724A, - 0x724B, 0x724E, 0x724F, 0x7250, 0x7251, 0x7253, 0x7254, 0x7255, - 0x7257, 0x7258, 0x725A, 0x725C, 0x725E, 0x7260, 0x7263, 0x7264, - 0x7265, 0x7268, 0x726A, 0x726B, 0x726C, 0x726D, 0x7270, 0x7271, - 0x7273, 0x7274, 0x7276, 0x7277, 0x7278, 0x727B, 0x727C, 0x727D, - 0x7282, 0x7283, 0x7285, 0x7286, 0x7287, 0x7288, 0x7289, 0x728C, - 0x728E, 0x7290, 0x7291, 0x7293, 0x7294, 0x7295, 0x7296, 0x7297, - 0x7298, 0x7299, 0x729A, 0x729B, 0x729C, 0x729D, 0x729E, 0x72A0, - 0x72A1, 0x72A2, 0x72A3, 0x72A4, 0x72A5, 0x72A6, 0x72A7, 0x72A8, - 0x72A9, 0x72AA, 0x72AB, 0x72AE, 0x72B1, 0x72B2, 0x72B3, 0x72B5, - 0x72BA, 0x72BB, 0x72BC, 0x72BD, 0x72BE, 0x72BF, 0x72C0, 0x72C5, - 0x72C6, 0x72C7, 0x72C9, 0x72CA, 0x72CB, 0x72CC, 0x72CF, 0x72D1, - 0x72D3, 0x72D4, 0x72D5, 0x72D6, 0x72D8, 0x72DA, 0x72DB, 0, -plane a1 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x3000, 0x3001, 0x3002, 0x00B7, 0x02C9, 0x02C7, 0x00A8, - 0x3003, 0x3005, 0x2015, 0xFF5E, 0x2016, 0x2026, 0x2018, 0x2019, - 0x201C, 0x201D, 0x3014, 0x3015, 0x3008, 0x3009, 0x300A, 0x300B, - 0x300C, 0x300D, 0x300E, 0x300F, 0x3016, 0x3017, 0x3010, 0x3011, - 0x00B1, 0x00D7, 0x00F7, 0x2236, 0x2227, 0x2228, 0x2211, 0x220F, - 0x222A, 0x2229, 0x2208, 0x2237, 0x221A, 0x22A5, 0x2225, 0x2220, - 0x2312, 0x2299, 0x222B, 0x222E, 0x2261, 0x224C, 0x2248, 0x223D, - 0x221D, 0x2260, 0x226E, 0x226F, 0x2264, 0x2265, 0x221E, 0x2235, - 0x2234, 0x2642, 0x2640, 0x00B0, 0x2032, 0x2033, 0x2103, 0xFF04, - 0x00A4, 0xFFE0, 0xFFE1, 0x2030, 0x00A7, 0x2116, 0x2606, 0x2605, - 0x25CB, 0x25CF, 0x25CE, 0x25C7, 0x25C6, 0x25A1, 0x25A0, 0x25B3, - 0x25B2, 0x203B, 0x2192, 0x2190, 0x2191, 0x2193, 0x3013, 0, -plane a2 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, - 0x2177, 0x2178, 0x2179, 0, 0, 0, 0, 0, - 0, 0x2488, 0x2489, 0x248A, 0x248B, 0x248C, 0x248D, 0x248E, - 0x248F, 0x2490, 0x2491, 0x2492, 0x2493, 0x2494, 0x2495, 0x2496, - 0x2497, 0x2498, 0x2499, 0x249A, 0x249B, 0x2474, 0x2475, 0x2476, - 0x2477, 0x2478, 0x2479, 0x247A, 0x247B, 0x247C, 0x247D, 0x247E, - 0x247F, 0x2480, 0x2481, 0x2482, 0x2483, 0x2484, 0x2485, 0x2486, - 0x2487, 0x2460, 0x2461, 0x2462, 0x2463, 0x2464, 0x2465, 0x2466, - 0x2467, 0x2468, 0x2469, 0, 0, 0x3220, 0x3221, 0x3222, - 0x3223, 0x3224, 0x3225, 0x3226, 0x3227, 0x3228, 0x3229, 0, - 0, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, - 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0, 0, 0, -plane a3 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0xFF01, 0xFF02, 0xFF03, 0xFFE5, 0xFF05, 0xFF06, 0xFF07, - 0xFF08, 0xFF09, 0xFF0A, 0xFF0B, 0xFF0C, 0xFF0D, 0xFF0E, 0xFF0F, - 0xFF10, 0xFF11, 0xFF12, 0xFF13, 0xFF14, 0xFF15, 0xFF16, 0xFF17, - 0xFF18, 0xFF19, 0xFF1A, 0xFF1B, 0xFF1C, 0xFF1D, 0xFF1E, 0xFF1F, - 0xFF20, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, - 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, - 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, - 0xFF38, 0xFF39, 0xFF3A, 0xFF3B, 0xFF3C, 0xFF3D, 0xFF3E, 0xFF3F, - 0xFF40, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, - 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, - 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, - 0xFF58, 0xFF59, 0xFF5A, 0xFF5B, 0xFF5C, 0xFF5D, 0xFFE3, 0, -plane a4 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x3041, 0x3042, 0x3043, 0x3044, 0x3045, 0x3046, 0x3047, - 0x3048, 0x3049, 0x304A, 0x304B, 0x304C, 0x304D, 0x304E, 0x304F, - 0x3050, 0x3051, 0x3052, 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, - 0x3058, 0x3059, 0x305A, 0x305B, 0x305C, 0x305D, 0x305E, 0x305F, - 0x3060, 0x3061, 0x3062, 0x3063, 0x3064, 0x3065, 0x3066, 0x3067, - 0x3068, 0x3069, 0x306A, 0x306B, 0x306C, 0x306D, 0x306E, 0x306F, - 0x3070, 0x3071, 0x3072, 0x3073, 0x3074, 0x3075, 0x3076, 0x3077, - 0x3078, 0x3079, 0x307A, 0x307B, 0x307C, 0x307D, 0x307E, 0x307F, - 0x3080, 0x3081, 0x3082, 0x3083, 0x3084, 0x3085, 0x3086, 0x3087, - 0x3088, 0x3089, 0x308A, 0x308B, 0x308C, 0x308D, 0x308E, 0x308F, - 0x3090, 0x3091, 0x3092, 0x3093, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a5 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x30A1, 0x30A2, 0x30A3, 0x30A4, 0x30A5, 0x30A6, 0x30A7, - 0x30A8, 0x30A9, 0x30AA, 0x30AB, 0x30AC, 0x30AD, 0x30AE, 0x30AF, - 0x30B0, 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6, 0x30B7, - 0x30B8, 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE, 0x30BF, - 0x30C0, 0x30C1, 0x30C2, 0x30C3, 0x30C4, 0x30C5, 0x30C6, 0x30C7, - 0x30C8, 0x30C9, 0x30CA, 0x30CB, 0x30CC, 0x30CD, 0x30CE, 0x30CF, - 0x30D0, 0x30D1, 0x30D2, 0x30D3, 0x30D4, 0x30D5, 0x30D6, 0x30D7, - 0x30D8, 0x30D9, 0x30DA, 0x30DB, 0x30DC, 0x30DD, 0x30DE, 0x30DF, - 0x30E0, 0x30E1, 0x30E2, 0x30E3, 0x30E4, 0x30E5, 0x30E6, 0x30E7, - 0x30E8, 0x30E9, 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EE, 0x30EF, - 0x30F0, 0x30F1, 0x30F2, 0x30F3, 0x30F4, 0x30F5, 0x30F6, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a6 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, - 0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, - 0x03A0, 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, - 0x03A9, 0, 0, 0, 0, 0, 0, 0, - 0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, - 0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, - 0x03C0, 0x03C1, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8, - 0x03C9, 0, 0, 0, 0, 0, 0, 0, - 0xFE35, 0xFE36, 0xFE39, 0xFE3A, 0xFE3F, 0xFE40, 0xFE3D, 0xFE3E, - 0xFE41, 0xFE42, 0xFE43, 0xFE44, 0, 0, 0xFE3B, 0xFE3C, - 0xFE37, 0xFE38, 0xFE31, 0, 0xFE33, 0xFE34, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a7 -at 0x40 - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0401, - 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, - 0x041E, 0x041F, 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, - 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, - 0x042E, 0x042F, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0451, - 0x0436, 0x0437, 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, - 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, - 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, - 0x044E, 0x044F, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a8 -at 0x40 - 0x02CA, 0x02CB, 0x02D9, 0x2013, 0x2014, 0x2025, 0x2035, 0x2105, - 0x2109, 0x2196, 0x2197, 0x2198, 0x2199, 0x2215, 0x221F, 0x2223, - 0x2252, 0x2266, 0x2267, 0x22BF, 0x2550, 0x2551, 0x2552, 0x2553, - 0x2554, 0x2555, 0x2556, 0x2557, 0x2558, 0x2559, 0x255A, 0x255B, - 0x255C, 0x255D, 0x255E, 0x255F, 0x2560, 0x2561, 0x2562, 0x2563, - 0x2564, 0x2565, 0x2566, 0x2567, 0x2568, 0x2569, 0x256A, 0x256B, - 0x256C, 0x256D, 0x256E, 0x256F, 0x2570, 0x2571, 0x2572, 0x2573, - 0x2581, 0x2582, 0x2583, 0x2584, 0x2585, 0x2586, 0x2587, 0, - 0x2588, 0x2589, 0x258A, 0x258B, 0x258C, 0x258D, 0x258E, 0x258F, - 0x2593, 0x2594, 0x2595, 0x25BC, 0x25BD, 0x25E2, 0x25E3, 0x25E4, - 0x25E5, 0x2609, 0x2295, 0x3012, 0x301D, 0x301E, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0x0101, 0x00E1, 0x01CE, 0x00E0, 0x0113, 0x00E9, 0x011B, - 0x00E8, 0x012B, 0x00ED, 0x01D0, 0x00EC, 0x014D, 0x00F3, 0x01D2, - 0x00F2, 0x016B, 0x00FA, 0x01D4, 0x00F9, 0x01D6, 0x01D8, 0x01DA, - 0x01DC, 0x00FC, 0x00EA, 0x0251, 0xE7C7, 0x0144, 0x0148, 0xE7C8, - 0x0261, 0, 0, 0, 0, 0x3105, 0x3106, 0x3107, - 0x3108, 0x3109, 0x310A, 0x310B, 0x310C, 0x310D, 0x310E, 0x310F, - 0x3110, 0x3111, 0x3112, 0x3113, 0x3114, 0x3115, 0x3116, 0x3117, - 0x3118, 0x3119, 0x311A, 0x311B, 0x311C, 0x311D, 0x311E, 0x311F, - 0x3120, 0x3121, 0x3122, 0x3123, 0x3124, 0x3125, 0x3126, 0x3127, - 0x3128, 0x3129, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane a9 -at 0x40 - 0x3021, 0x3022, 0x3023, 0x3024, 0x3025, 0x3026, 0x3027, 0x3028, - 0x3029, 0x32A3, 0x338E, 0x338F, 0x339C, 0x339D, 0x339E, 0x33A1, - 0x33C4, 0x33CE, 0x33D1, 0x33D2, 0x33D5, 0xFE30, 0xFFE2, 0xFFE4, - 0, 0x2121, 0x3231, 0, 0x2010, 0, 0, 0, - 0x30FC, 0x309B, 0x309C, 0x30FD, 0x30FE, 0x3006, 0x309D, 0x309E, - 0xFE49, 0xFE4A, 0xFE4B, 0xFE4C, 0xFE4D, 0xFE4E, 0xFE4F, 0xFE50, - 0xFE51, 0xFE52, 0xFE54, 0xFE55, 0xFE56, 0xFE57, 0xFE59, 0xFE5A, - 0xFE5B, 0xFE5C, 0xFE5D, 0xFE5E, 0xFE5F, 0xFE60, 0xFE61, 0, - 0xFE62, 0xFE63, 0xFE64, 0xFE65, 0xFE66, 0xFE68, 0xFE69, 0xFE6A, - 0xFE6B, 0xE7E7, 0xE7E8, 0xE7E9, 0xE7EA, 0xE7EB, 0xE7EC, 0xE7ED, - 0xE7EE, 0xE7EF, 0xE7F0, 0xE7F1, 0xE7F2, 0xE7F3, 0x3007, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0x2500, 0x2501, 0x2502, 0x2503, - 0x2504, 0x2505, 0x2506, 0x2507, 0x2508, 0x2509, 0x250A, 0x250B, - 0x250C, 0x250D, 0x250E, 0x250F, 0x2510, 0x2511, 0x2512, 0x2513, - 0x2514, 0x2515, 0x2516, 0x2517, 0x2518, 0x2519, 0x251A, 0x251B, - 0x251C, 0x251D, 0x251E, 0x251F, 0x2520, 0x2521, 0x2522, 0x2523, - 0x2524, 0x2525, 0x2526, 0x2527, 0x2528, 0x2529, 0x252A, 0x252B, - 0x252C, 0x252D, 0x252E, 0x252F, 0x2530, 0x2531, 0x2532, 0x2533, - 0x2534, 0x2535, 0x2536, 0x2537, 0x2538, 0x2539, 0x253A, 0x253B, - 0x253C, 0x253D, 0x253E, 0x253F, 0x2540, 0x2541, 0x2542, 0x2543, - 0x2544, 0x2545, 0x2546, 0x2547, 0x2548, 0x2549, 0x254A, 0x254B, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane aa -at 0x40 - 0x72DC, 0x72DD, 0x72DF, 0x72E2, 0x72E3, 0x72E4, 0x72E5, 0x72E6, - 0x72E7, 0x72EA, 0x72EB, 0x72F5, 0x72F6, 0x72F9, 0x72FD, 0x72FE, - 0x72FF, 0x7300, 0x7302, 0x7304, 0x7305, 0x7306, 0x7307, 0x7308, - 0x7309, 0x730B, 0x730C, 0x730D, 0x730F, 0x7310, 0x7311, 0x7312, - 0x7314, 0x7318, 0x7319, 0x731A, 0x731F, 0x7320, 0x7323, 0x7324, - 0x7326, 0x7327, 0x7328, 0x732D, 0x732F, 0x7330, 0x7332, 0x7333, - 0x7335, 0x7336, 0x733A, 0x733B, 0x733C, 0x733D, 0x7340, 0x7341, - 0x7342, 0x7343, 0x7344, 0x7345, 0x7346, 0x7347, 0x7348, 0, - 0x7349, 0x734A, 0x734B, 0x734C, 0x734E, 0x734F, 0x7351, 0x7353, - 0x7354, 0x7355, 0x7356, 0x7358, 0x7359, 0x735A, 0x735B, 0x735C, - 0x735D, 0x735E, 0x735F, 0x7361, 0x7362, 0x7363, 0x7364, 0x7365, - 0x7366, 0x7367, 0x7368, 0x7369, 0x736A, 0x736B, 0x736E, 0x7370, - 0x7371, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane ab -at 0x40 - 0x7372, 0x7373, 0x7374, 0x7375, 0x7376, 0x7377, 0x7378, 0x7379, - 0x737A, 0x737B, 0x737C, 0x737D, 0x737F, 0x7380, 0x7381, 0x7382, - 0x7383, 0x7385, 0x7386, 0x7388, 0x738A, 0x738C, 0x738D, 0x738F, - 0x7390, 0x7392, 0x7393, 0x7394, 0x7395, 0x7397, 0x7398, 0x7399, - 0x739A, 0x739C, 0x739D, 0x739E, 0x73A0, 0x73A1, 0x73A3, 0x73A4, - 0x73A5, 0x73A6, 0x73A7, 0x73A8, 0x73AA, 0x73AC, 0x73AD, 0x73B1, - 0x73B4, 0x73B5, 0x73B6, 0x73B8, 0x73B9, 0x73BC, 0x73BD, 0x73BE, - 0x73BF, 0x73C1, 0x73C3, 0x73C4, 0x73C5, 0x73C6, 0x73C7, 0, - 0x73CB, 0x73CC, 0x73CE, 0x73D2, 0x73D3, 0x73D4, 0x73D5, 0x73D6, - 0x73D7, 0x73D8, 0x73DA, 0x73DB, 0x73DC, 0x73DD, 0x73DF, 0x73E1, - 0x73E2, 0x73E3, 0x73E4, 0x73E6, 0x73E8, 0x73EA, 0x73EB, 0x73EC, - 0x73EE, 0x73EF, 0x73F0, 0x73F1, 0x73F3, 0x73F4, 0x73F5, 0x73F6, - 0x73F7, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane ac -at 0x40 - 0x73F8, 0x73F9, 0x73FA, 0x73FB, 0x73FC, 0x73FD, 0x73FE, 0x73FF, - 0x7400, 0x7401, 0x7402, 0x7404, 0x7407, 0x7408, 0x740B, 0x740C, - 0x740D, 0x740E, 0x7411, 0x7412, 0x7413, 0x7414, 0x7415, 0x7416, - 0x7417, 0x7418, 0x7419, 0x741C, 0x741D, 0x741E, 0x741F, 0x7420, - 0x7421, 0x7423, 0x7424, 0x7427, 0x7429, 0x742B, 0x742D, 0x742F, - 0x7431, 0x7432, 0x7437, 0x7438, 0x7439, 0x743A, 0x743B, 0x743D, - 0x743E, 0x743F, 0x7440, 0x7442, 0x7443, 0x7444, 0x7445, 0x7446, - 0x7447, 0x7448, 0x7449, 0x744A, 0x744B, 0x744C, 0x744D, 0, - 0x744E, 0x744F, 0x7450, 0x7451, 0x7452, 0x7453, 0x7454, 0x7456, - 0x7458, 0x745D, 0x7460, 0x7461, 0x7462, 0x7463, 0x7464, 0x7465, - 0x7466, 0x7467, 0x7468, 0x7469, 0x746A, 0x746B, 0x746C, 0x746E, - 0x746F, 0x7471, 0x7472, 0x7473, 0x7474, 0x7475, 0x7478, 0x7479, - 0x747A, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane ad -at 0x40 - 0x747B, 0x747C, 0x747D, 0x747F, 0x7482, 0x7484, 0x7485, 0x7486, - 0x7488, 0x7489, 0x748A, 0x748C, 0x748D, 0x748F, 0x7491, 0x7492, - 0x7493, 0x7494, 0x7495, 0x7496, 0x7497, 0x7498, 0x7499, 0x749A, - 0x749B, 0x749D, 0x749F, 0x74A0, 0x74A1, 0x74A2, 0x74A3, 0x74A4, - 0x74A5, 0x74A6, 0x74AA, 0x74AB, 0x74AC, 0x74AD, 0x74AE, 0x74AF, - 0x74B0, 0x74B1, 0x74B2, 0x74B3, 0x74B4, 0x74B5, 0x74B6, 0x74B7, - 0x74B8, 0x74B9, 0x74BB, 0x74BC, 0x74BD, 0x74BE, 0x74BF, 0x74C0, - 0x74C1, 0x74C2, 0x74C3, 0x74C4, 0x74C5, 0x74C6, 0x74C7, 0, - 0x74C8, 0x74C9, 0x74CA, 0x74CB, 0x74CC, 0x74CD, 0x74CE, 0x74CF, - 0x74D0, 0x74D1, 0x74D3, 0x74D4, 0x74D5, 0x74D6, 0x74D7, 0x74D8, - 0x74D9, 0x74DA, 0x74DB, 0x74DD, 0x74DF, 0x74E1, 0x74E5, 0x74E7, - 0x74E8, 0x74E9, 0x74EA, 0x74EB, 0x74EC, 0x74ED, 0x74F0, 0x74F1, - 0x74F2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane ae -at 0x40 - 0x74F3, 0x74F5, 0x74F8, 0x74F9, 0x74FA, 0x74FB, 0x74FC, 0x74FD, - 0x74FE, 0x7500, 0x7501, 0x7502, 0x7503, 0x7505, 0x7506, 0x7507, - 0x7508, 0x7509, 0x750A, 0x750B, 0x750C, 0x750E, 0x7510, 0x7512, - 0x7514, 0x7515, 0x7516, 0x7517, 0x751B, 0x751D, 0x751E, 0x7520, - 0x7521, 0x7522, 0x7523, 0x7524, 0x7526, 0x7527, 0x752A, 0x752E, - 0x7534, 0x7536, 0x7539, 0x753C, 0x753D, 0x753F, 0x7541, 0x7542, - 0x7543, 0x7544, 0x7546, 0x7547, 0x7549, 0x754A, 0x754D, 0x7550, - 0x7551, 0x7552, 0x7553, 0x7555, 0x7556, 0x7557, 0x7558, 0, - 0x755D, 0x755E, 0x755F, 0x7560, 0x7561, 0x7562, 0x7563, 0x7564, - 0x7567, 0x7568, 0x7569, 0x756B, 0x756C, 0x756D, 0x756E, 0x756F, - 0x7570, 0x7571, 0x7573, 0x7575, 0x7576, 0x7577, 0x757A, 0x757B, - 0x757C, 0x757D, 0x757E, 0x7580, 0x7581, 0x7582, 0x7584, 0x7585, - 0x7587, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane af -at 0x40 - 0x7588, 0x7589, 0x758A, 0x758C, 0x758D, 0x758E, 0x7590, 0x7593, - 0x7595, 0x7598, 0x759B, 0x759C, 0x759E, 0x75A2, 0x75A6, 0x75A7, - 0x75A8, 0x75A9, 0x75AA, 0x75AD, 0x75B6, 0x75B7, 0x75BA, 0x75BB, - 0x75BF, 0x75C0, 0x75C1, 0x75C6, 0x75CB, 0x75CC, 0x75CE, 0x75CF, - 0x75D0, 0x75D1, 0x75D3, 0x75D7, 0x75D9, 0x75DA, 0x75DC, 0x75DD, - 0x75DF, 0x75E0, 0x75E1, 0x75E5, 0x75E9, 0x75EC, 0x75ED, 0x75EE, - 0x75EF, 0x75F2, 0x75F3, 0x75F5, 0x75F6, 0x75F7, 0x75F8, 0x75FA, - 0x75FB, 0x75FD, 0x75FE, 0x7602, 0x7604, 0x7606, 0x7607, 0, - 0x7608, 0x7609, 0x760B, 0x760D, 0x760E, 0x760F, 0x7611, 0x7612, - 0x7613, 0x7614, 0x7616, 0x761A, 0x761C, 0x761D, 0x761E, 0x7621, - 0x7623, 0x7627, 0x7628, 0x762C, 0x762E, 0x762F, 0x7631, 0x7632, - 0x7636, 0x7637, 0x7639, 0x763A, 0x763B, 0x763D, 0x7641, 0x7642, - 0x7644, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane b0 -at 0x40 - 0x7645, 0x7646, 0x7647, 0x7648, 0x7649, 0x764A, 0x764B, 0x764E, - 0x764F, 0x7650, 0x7651, 0x7652, 0x7653, 0x7655, 0x7657, 0x7658, - 0x7659, 0x765A, 0x765B, 0x765D, 0x765F, 0x7660, 0x7661, 0x7662, - 0x7664, 0x7665, 0x7666, 0x7667, 0x7668, 0x7669, 0x766A, 0x766C, - 0x766D, 0x766E, 0x7670, 0x7671, 0x7672, 0x7673, 0x7674, 0x7675, - 0x7676, 0x7677, 0x7679, 0x767A, 0x767C, 0x767F, 0x7680, 0x7681, - 0x7683, 0x7685, 0x7689, 0x768A, 0x768C, 0x768D, 0x768F, 0x7690, - 0x7692, 0x7694, 0x7695, 0x7697, 0x7698, 0x769A, 0x769B, 0, - 0x769C, 0x769D, 0x769E, 0x769F, 0x76A0, 0x76A1, 0x76A2, 0x76A3, - 0x76A5, 0x76A6, 0x76A7, 0x76A8, 0x76A9, 0x76AA, 0x76AB, 0x76AC, - 0x76AD, 0x76AF, 0x76B0, 0x76B3, 0x76B5, 0x76B6, 0x76B7, 0x76B8, - 0x76B9, 0x76BA, 0x76BB, 0x76BC, 0x76BD, 0x76BE, 0x76C0, 0x76C1, - 0x76C3, 0x554A, 0x963F, 0x57C3, 0x6328, 0x54CE, 0x5509, 0x54C0, - 0x7691, 0x764C, 0x853C, 0x77EE, 0x827E, 0x788D, 0x7231, 0x9698, - 0x978D, 0x6C28, 0x5B89, 0x4FFA, 0x6309, 0x6697, 0x5CB8, 0x80FA, - 0x6848, 0x80AE, 0x6602, 0x76CE, 0x51F9, 0x6556, 0x71AC, 0x7FF1, - 0x8884, 0x50B2, 0x5965, 0x61CA, 0x6FB3, 0x82AD, 0x634C, 0x6252, - 0x53ED, 0x5427, 0x7B06, 0x516B, 0x75A4, 0x5DF4, 0x62D4, 0x8DCB, - 0x9776, 0x628A, 0x8019, 0x575D, 0x9738, 0x7F62, 0x7238, 0x767D, - 0x67CF, 0x767E, 0x6446, 0x4F70, 0x8D25, 0x62DC, 0x7A17, 0x6591, - 0x73ED, 0x642C, 0x6273, 0x822C, 0x9881, 0x677F, 0x7248, 0x626E, - 0x62CC, 0x4F34, 0x74E3, 0x534A, 0x529E, 0x7ECA, 0x90A6, 0x5E2E, - 0x6886, 0x699C, 0x8180, 0x7ED1, 0x68D2, 0x78C5, 0x868C, 0x9551, - 0x508D, 0x8C24, 0x82DE, 0x80DE, 0x5305, 0x8912, 0x5265, 0, -plane b1 -at 0x40 - 0x76C4, 0x76C7, 0x76C9, 0x76CB, 0x76CC, 0x76D3, 0x76D5, 0x76D9, - 0x76DA, 0x76DC, 0x76DD, 0x76DE, 0x76E0, 0x76E1, 0x76E2, 0x76E3, - 0x76E4, 0x76E6, 0x76E7, 0x76E8, 0x76E9, 0x76EA, 0x76EB, 0x76EC, - 0x76ED, 0x76F0, 0x76F3, 0x76F5, 0x76F6, 0x76F7, 0x76FA, 0x76FB, - 0x76FD, 0x76FF, 0x7700, 0x7702, 0x7703, 0x7705, 0x7706, 0x770A, - 0x770C, 0x770E, 0x770F, 0x7710, 0x7711, 0x7712, 0x7713, 0x7714, - 0x7715, 0x7716, 0x7717, 0x7718, 0x771B, 0x771C, 0x771D, 0x771E, - 0x7721, 0x7723, 0x7724, 0x7725, 0x7727, 0x772A, 0x772B, 0, - 0x772C, 0x772E, 0x7730, 0x7731, 0x7732, 0x7733, 0x7734, 0x7739, - 0x773B, 0x773D, 0x773E, 0x773F, 0x7742, 0x7744, 0x7745, 0x7746, - 0x7748, 0x7749, 0x774A, 0x774B, 0x774C, 0x774D, 0x774E, 0x774F, - 0x7752, 0x7753, 0x7754, 0x7755, 0x7756, 0x7757, 0x7758, 0x7759, - 0x775C, 0x8584, 0x96F9, 0x4FDD, 0x5821, 0x9971, 0x5B9D, 0x62B1, - 0x62A5, 0x66B4, 0x8C79, 0x9C8D, 0x7206, 0x676F, 0x7891, 0x60B2, - 0x5351, 0x5317, 0x8F88, 0x80CC, 0x8D1D, 0x94A1, 0x500D, 0x72C8, - 0x5907, 0x60EB, 0x7119, 0x88AB, 0x5954, 0x82EF, 0x672C, 0x7B28, - 0x5D29, 0x7EF7, 0x752D, 0x6CF5, 0x8E66, 0x8FF8, 0x903C, 0x9F3B, - 0x6BD4, 0x9119, 0x7B14, 0x5F7C, 0x78A7, 0x84D6, 0x853D, 0x6BD5, - 0x6BD9, 0x6BD6, 0x5E01, 0x5E87, 0x75F9, 0x95ED, 0x655D, 0x5F0A, - 0x5FC5, 0x8F9F, 0x58C1, 0x81C2, 0x907F, 0x965B, 0x97AD, 0x8FB9, - 0x7F16, 0x8D2C, 0x6241, 0x4FBF, 0x53D8, 0x535E, 0x8FA8, 0x8FA9, - 0x8FAB, 0x904D, 0x6807, 0x5F6A, 0x8198, 0x8868, 0x9CD6, 0x618B, - 0x522B, 0x762A, 0x5F6C, 0x658C, 0x6FD2, 0x6EE8, 0x5BBE, 0x6448, - 0x5175, 0x51B0, 0x67C4, 0x4E19, 0x79C9, 0x997C, 0x70B3, 0, -plane b2 -at 0x40 - 0x775D, 0x775E, 0x775F, 0x7760, 0x7764, 0x7767, 0x7769, 0x776A, - 0x776D, 0x776E, 0x776F, 0x7770, 0x7771, 0x7772, 0x7773, 0x7774, - 0x7775, 0x7776, 0x7777, 0x7778, 0x777A, 0x777B, 0x777C, 0x7781, - 0x7782, 0x7783, 0x7786, 0x7787, 0x7788, 0x7789, 0x778A, 0x778B, - 0x778F, 0x7790, 0x7793, 0x7794, 0x7795, 0x7796, 0x7797, 0x7798, - 0x7799, 0x779A, 0x779B, 0x779C, 0x779D, 0x779E, 0x77A1, 0x77A3, - 0x77A4, 0x77A6, 0x77A8, 0x77AB, 0x77AD, 0x77AE, 0x77AF, 0x77B1, - 0x77B2, 0x77B4, 0x77B6, 0x77B7, 0x77B8, 0x77B9, 0x77BA, 0, - 0x77BC, 0x77BE, 0x77C0, 0x77C1, 0x77C2, 0x77C3, 0x77C4, 0x77C5, - 0x77C6, 0x77C7, 0x77C8, 0x77C9, 0x77CA, 0x77CB, 0x77CC, 0x77CE, - 0x77CF, 0x77D0, 0x77D1, 0x77D2, 0x77D3, 0x77D4, 0x77D5, 0x77D6, - 0x77D8, 0x77D9, 0x77DA, 0x77DD, 0x77DE, 0x77DF, 0x77E0, 0x77E1, - 0x77E4, 0x75C5, 0x5E76, 0x73BB, 0x83E0, 0x64AD, 0x62E8, 0x94B5, - 0x6CE2, 0x535A, 0x52C3, 0x640F, 0x94C2, 0x7B94, 0x4F2F, 0x5E1B, - 0x8236, 0x8116, 0x818A, 0x6E24, 0x6CCA, 0x9A73, 0x6355, 0x535C, - 0x54FA, 0x8865, 0x57E0, 0x4E0D, 0x5E03, 0x6B65, 0x7C3F, 0x90E8, - 0x6016, 0x64E6, 0x731C, 0x88C1, 0x6750, 0x624D, 0x8D22, 0x776C, - 0x8E29, 0x91C7, 0x5F69, 0x83DC, 0x8521, 0x9910, 0x53C2, 0x8695, - 0x6B8B, 0x60ED, 0x60E8, 0x707F, 0x82CD, 0x8231, 0x4ED3, 0x6CA7, - 0x85CF, 0x64CD, 0x7CD9, 0x69FD, 0x66F9, 0x8349, 0x5395, 0x7B56, - 0x4FA7, 0x518C, 0x6D4B, 0x5C42, 0x8E6D, 0x63D2, 0x53C9, 0x832C, - 0x8336, 0x67E5, 0x78B4, 0x643D, 0x5BDF, 0x5C94, 0x5DEE, 0x8BE7, - 0x62C6, 0x67F4, 0x8C7A, 0x6400, 0x63BA, 0x8749, 0x998B, 0x8C17, - 0x7F20, 0x94F2, 0x4EA7, 0x9610, 0x98A4, 0x660C, 0x7316, 0, -plane b3 -at 0x40 - 0x77E6, 0x77E8, 0x77EA, 0x77EF, 0x77F0, 0x77F1, 0x77F2, 0x77F4, - 0x77F5, 0x77F7, 0x77F9, 0x77FA, 0x77FB, 0x77FC, 0x7803, 0x7804, - 0x7805, 0x7806, 0x7807, 0x7808, 0x780A, 0x780B, 0x780E, 0x780F, - 0x7810, 0x7813, 0x7815, 0x7819, 0x781B, 0x781E, 0x7820, 0x7821, - 0x7822, 0x7824, 0x7828, 0x782A, 0x782B, 0x782E, 0x782F, 0x7831, - 0x7832, 0x7833, 0x7835, 0x7836, 0x783D, 0x783F, 0x7841, 0x7842, - 0x7843, 0x7844, 0x7846, 0x7848, 0x7849, 0x784A, 0x784B, 0x784D, - 0x784F, 0x7851, 0x7853, 0x7854, 0x7858, 0x7859, 0x785A, 0, - 0x785B, 0x785C, 0x785E, 0x785F, 0x7860, 0x7861, 0x7862, 0x7863, - 0x7864, 0x7865, 0x7866, 0x7867, 0x7868, 0x7869, 0x786F, 0x7870, - 0x7871, 0x7872, 0x7873, 0x7874, 0x7875, 0x7876, 0x7878, 0x7879, - 0x787A, 0x787B, 0x787D, 0x787E, 0x787F, 0x7880, 0x7881, 0x7882, - 0x7883, 0x573A, 0x5C1D, 0x5E38, 0x957F, 0x507F, 0x80A0, 0x5382, - 0x655E, 0x7545, 0x5531, 0x5021, 0x8D85, 0x6284, 0x949E, 0x671D, - 0x5632, 0x6F6E, 0x5DE2, 0x5435, 0x7092, 0x8F66, 0x626F, 0x64A4, - 0x63A3, 0x5F7B, 0x6F88, 0x90F4, 0x81E3, 0x8FB0, 0x5C18, 0x6668, - 0x5FF1, 0x6C89, 0x9648, 0x8D81, 0x886C, 0x6491, 0x79F0, 0x57CE, - 0x6A59, 0x6210, 0x5448, 0x4E58, 0x7A0B, 0x60E9, 0x6F84, 0x8BDA, - 0x627F, 0x901E, 0x9A8B, 0x79E4, 0x5403, 0x75F4, 0x6301, 0x5319, - 0x6C60, 0x8FDF, 0x5F1B, 0x9A70, 0x803B, 0x9F7F, 0x4F88, 0x5C3A, - 0x8D64, 0x7FC5, 0x65A5, 0x70BD, 0x5145, 0x51B2, 0x866B, 0x5D07, - 0x5BA0, 0x62BD, 0x916C, 0x7574, 0x8E0C, 0x7A20, 0x6101, 0x7B79, - 0x4EC7, 0x7EF8, 0x7785, 0x4E11, 0x81ED, 0x521D, 0x51FA, 0x6A71, - 0x53A8, 0x8E87, 0x9504, 0x96CF, 0x6EC1, 0x9664, 0x695A, 0, -plane b4 -at 0x40 - 0x7884, 0x7885, 0x7886, 0x7888, 0x788A, 0x788B, 0x788F, 0x7890, - 0x7892, 0x7894, 0x7895, 0x7896, 0x7899, 0x789D, 0x789E, 0x78A0, - 0x78A2, 0x78A4, 0x78A6, 0x78A8, 0x78A9, 0x78AA, 0x78AB, 0x78AC, - 0x78AD, 0x78AE, 0x78AF, 0x78B5, 0x78B6, 0x78B7, 0x78B8, 0x78BA, - 0x78BB, 0x78BC, 0x78BD, 0x78BF, 0x78C0, 0x78C2, 0x78C3, 0x78C4, - 0x78C6, 0x78C7, 0x78C8, 0x78CC, 0x78CD, 0x78CE, 0x78CF, 0x78D1, - 0x78D2, 0x78D3, 0x78D6, 0x78D7, 0x78D8, 0x78DA, 0x78DB, 0x78DC, - 0x78DD, 0x78DE, 0x78DF, 0x78E0, 0x78E1, 0x78E2, 0x78E3, 0, - 0x78E4, 0x78E5, 0x78E6, 0x78E7, 0x78E9, 0x78EA, 0x78EB, 0x78ED, - 0x78EE, 0x78EF, 0x78F0, 0x78F1, 0x78F3, 0x78F5, 0x78F6, 0x78F8, - 0x78F9, 0x78FB, 0x78FC, 0x78FD, 0x78FE, 0x78FF, 0x7900, 0x7902, - 0x7903, 0x7904, 0x7906, 0x7907, 0x7908, 0x7909, 0x790A, 0x790B, - 0x790C, 0x7840, 0x50A8, 0x77D7, 0x6410, 0x89E6, 0x5904, 0x63E3, - 0x5DDD, 0x7A7F, 0x693D, 0x4F20, 0x8239, 0x5598, 0x4E32, 0x75AE, - 0x7A97, 0x5E62, 0x5E8A, 0x95EF, 0x521B, 0x5439, 0x708A, 0x6376, - 0x9524, 0x5782, 0x6625, 0x693F, 0x9187, 0x5507, 0x6DF3, 0x7EAF, - 0x8822, 0x6233, 0x7EF0, 0x75B5, 0x8328, 0x78C1, 0x96CC, 0x8F9E, - 0x6148, 0x74F7, 0x8BCD, 0x6B64, 0x523A, 0x8D50, 0x6B21, 0x806A, - 0x8471, 0x56F1, 0x5306, 0x4ECE, 0x4E1B, 0x51D1, 0x7C97, 0x918B, - 0x7C07, 0x4FC3, 0x8E7F, 0x7BE1, 0x7A9C, 0x6467, 0x5D14, 0x50AC, - 0x8106, 0x7601, 0x7CB9, 0x6DEC, 0x7FE0, 0x6751, 0x5B58, 0x5BF8, - 0x78CB, 0x64AE, 0x6413, 0x63AA, 0x632B, 0x9519, 0x642D, 0x8FBE, - 0x7B54, 0x7629, 0x6253, 0x5927, 0x5446, 0x6B79, 0x50A3, 0x6234, - 0x5E26, 0x6B86, 0x4EE3, 0x8D37, 0x888B, 0x5F85, 0x902E, 0, -plane b5 -at 0x40 - 0x790D, 0x790E, 0x790F, 0x7910, 0x7911, 0x7912, 0x7914, 0x7915, - 0x7916, 0x7917, 0x7918, 0x7919, 0x791A, 0x791B, 0x791C, 0x791D, - 0x791F, 0x7920, 0x7921, 0x7922, 0x7923, 0x7925, 0x7926, 0x7927, - 0x7928, 0x7929, 0x792A, 0x792B, 0x792C, 0x792D, 0x792E, 0x792F, - 0x7930, 0x7931, 0x7932, 0x7933, 0x7935, 0x7936, 0x7937, 0x7938, - 0x7939, 0x793D, 0x793F, 0x7942, 0x7943, 0x7944, 0x7945, 0x7947, - 0x794A, 0x794B, 0x794C, 0x794D, 0x794E, 0x794F, 0x7950, 0x7951, - 0x7952, 0x7954, 0x7955, 0x7958, 0x7959, 0x7961, 0x7963, 0, - 0x7964, 0x7966, 0x7969, 0x796A, 0x796B, 0x796C, 0x796E, 0x7970, - 0x7971, 0x7972, 0x7973, 0x7974, 0x7975, 0x7976, 0x7979, 0x797B, - 0x797C, 0x797D, 0x797E, 0x797F, 0x7982, 0x7983, 0x7986, 0x7987, - 0x7988, 0x7989, 0x798B, 0x798C, 0x798D, 0x798E, 0x7990, 0x7991, - 0x7992, 0x6020, 0x803D, 0x62C5, 0x4E39, 0x5355, 0x90F8, 0x63B8, - 0x80C6, 0x65E6, 0x6C2E, 0x4F46, 0x60EE, 0x6DE1, 0x8BDE, 0x5F39, - 0x86CB, 0x5F53, 0x6321, 0x515A, 0x8361, 0x6863, 0x5200, 0x6363, - 0x8E48, 0x5012, 0x5C9B, 0x7977, 0x5BFC, 0x5230, 0x7A3B, 0x60BC, - 0x9053, 0x76D7, 0x5FB7, 0x5F97, 0x7684, 0x8E6C, 0x706F, 0x767B, - 0x7B49, 0x77AA, 0x51F3, 0x9093, 0x5824, 0x4F4E, 0x6EF4, 0x8FEA, - 0x654C, 0x7B1B, 0x72C4, 0x6DA4, 0x7FDF, 0x5AE1, 0x62B5, 0x5E95, - 0x5730, 0x8482, 0x7B2C, 0x5E1D, 0x5F1F, 0x9012, 0x7F14, 0x98A0, - 0x6382, 0x6EC7, 0x7898, 0x70B9, 0x5178, 0x975B, 0x57AB, 0x7535, - 0x4F43, 0x7538, 0x5E97, 0x60E6, 0x5960, 0x6DC0, 0x6BBF, 0x7889, - 0x53FC, 0x96D5, 0x51CB, 0x5201, 0x6389, 0x540A, 0x9493, 0x8C03, - 0x8DCC, 0x7239, 0x789F, 0x8776, 0x8FED, 0x8C0D, 0x53E0, 0, -plane b6 -at 0x40 - 0x7993, 0x7994, 0x7995, 0x7996, 0x7997, 0x7998, 0x7999, 0x799B, - 0x799C, 0x799D, 0x799E, 0x799F, 0x79A0, 0x79A1, 0x79A2, 0x79A3, - 0x79A4, 0x79A5, 0x79A6, 0x79A8, 0x79A9, 0x79AA, 0x79AB, 0x79AC, - 0x79AD, 0x79AE, 0x79AF, 0x79B0, 0x79B1, 0x79B2, 0x79B4, 0x79B5, - 0x79B6, 0x79B7, 0x79B8, 0x79BC, 0x79BF, 0x79C2, 0x79C4, 0x79C5, - 0x79C7, 0x79C8, 0x79CA, 0x79CC, 0x79CE, 0x79CF, 0x79D0, 0x79D3, - 0x79D4, 0x79D6, 0x79D7, 0x79D9, 0x79DA, 0x79DB, 0x79DC, 0x79DD, - 0x79DE, 0x79E0, 0x79E1, 0x79E2, 0x79E5, 0x79E8, 0x79EA, 0, - 0x79EC, 0x79EE, 0x79F1, 0x79F2, 0x79F3, 0x79F4, 0x79F5, 0x79F6, - 0x79F7, 0x79F9, 0x79FA, 0x79FC, 0x79FE, 0x79FF, 0x7A01, 0x7A04, - 0x7A05, 0x7A07, 0x7A08, 0x7A09, 0x7A0A, 0x7A0C, 0x7A0F, 0x7A10, - 0x7A11, 0x7A12, 0x7A13, 0x7A15, 0x7A16, 0x7A18, 0x7A19, 0x7A1B, - 0x7A1C, 0x4E01, 0x76EF, 0x53EE, 0x9489, 0x9876, 0x9F0E, 0x952D, - 0x5B9A, 0x8BA2, 0x4E22, 0x4E1C, 0x51AC, 0x8463, 0x61C2, 0x52A8, - 0x680B, 0x4F97, 0x606B, 0x51BB, 0x6D1E, 0x515C, 0x6296, 0x6597, - 0x9661, 0x8C46, 0x9017, 0x75D8, 0x90FD, 0x7763, 0x6BD2, 0x728A, - 0x72EC, 0x8BFB, 0x5835, 0x7779, 0x8D4C, 0x675C, 0x9540, 0x809A, - 0x5EA6, 0x6E21, 0x5992, 0x7AEF, 0x77ED, 0x953B, 0x6BB5, 0x65AD, - 0x7F0E, 0x5806, 0x5151, 0x961F, 0x5BF9, 0x58A9, 0x5428, 0x8E72, - 0x6566, 0x987F, 0x56E4, 0x949D, 0x76FE, 0x9041, 0x6387, 0x54C6, - 0x591A, 0x593A, 0x579B, 0x8EB2, 0x6735, 0x8DFA, 0x8235, 0x5241, - 0x60F0, 0x5815, 0x86FE, 0x5CE8, 0x9E45, 0x4FC4, 0x989D, 0x8BB9, - 0x5A25, 0x6076, 0x5384, 0x627C, 0x904F, 0x9102, 0x997F, 0x6069, - 0x800C, 0x513F, 0x8033, 0x5C14, 0x9975, 0x6D31, 0x4E8C, 0, -plane b7 -at 0x40 - 0x7A1D, 0x7A1F, 0x7A21, 0x7A22, 0x7A24, 0x7A25, 0x7A26, 0x7A27, - 0x7A28, 0x7A29, 0x7A2A, 0x7A2B, 0x7A2C, 0x7A2D, 0x7A2E, 0x7A2F, - 0x7A30, 0x7A31, 0x7A32, 0x7A34, 0x7A35, 0x7A36, 0x7A38, 0x7A3A, - 0x7A3E, 0x7A40, 0x7A41, 0x7A42, 0x7A43, 0x7A44, 0x7A45, 0x7A47, - 0x7A48, 0x7A49, 0x7A4A, 0x7A4B, 0x7A4C, 0x7A4D, 0x7A4E, 0x7A4F, - 0x7A50, 0x7A52, 0x7A53, 0x7A54, 0x7A55, 0x7A56, 0x7A58, 0x7A59, - 0x7A5A, 0x7A5B, 0x7A5C, 0x7A5D, 0x7A5E, 0x7A5F, 0x7A60, 0x7A61, - 0x7A62, 0x7A63, 0x7A64, 0x7A65, 0x7A66, 0x7A67, 0x7A68, 0, - 0x7A69, 0x7A6A, 0x7A6B, 0x7A6C, 0x7A6D, 0x7A6E, 0x7A6F, 0x7A71, - 0x7A72, 0x7A73, 0x7A75, 0x7A7B, 0x7A7C, 0x7A7D, 0x7A7E, 0x7A82, - 0x7A85, 0x7A87, 0x7A89, 0x7A8A, 0x7A8B, 0x7A8C, 0x7A8E, 0x7A8F, - 0x7A90, 0x7A93, 0x7A94, 0x7A99, 0x7A9A, 0x7A9B, 0x7A9E, 0x7AA1, - 0x7AA2, 0x8D30, 0x53D1, 0x7F5A, 0x7B4F, 0x4F10, 0x4E4F, 0x9600, - 0x6CD5, 0x73D0, 0x85E9, 0x5E06, 0x756A, 0x7FFB, 0x6A0A, 0x77FE, - 0x9492, 0x7E41, 0x51E1, 0x70E6, 0x53CD, 0x8FD4, 0x8303, 0x8D29, - 0x72AF, 0x996D, 0x6CDB, 0x574A, 0x82B3, 0x65B9, 0x80AA, 0x623F, - 0x9632, 0x59A8, 0x4EFF, 0x8BBF, 0x7EBA, 0x653E, 0x83F2, 0x975E, - 0x5561, 0x98DE, 0x80A5, 0x532A, 0x8BFD, 0x5420, 0x80BA, 0x5E9F, - 0x6CB8, 0x8D39, 0x82AC, 0x915A, 0x5429, 0x6C1B, 0x5206, 0x7EB7, - 0x575F, 0x711A, 0x6C7E, 0x7C89, 0x594B, 0x4EFD, 0x5FFF, 0x6124, - 0x7CAA, 0x4E30, 0x5C01, 0x67AB, 0x8702, 0x5CF0, 0x950B, 0x98CE, - 0x75AF, 0x70FD, 0x9022, 0x51AF, 0x7F1D, 0x8BBD, 0x5949, 0x51E4, - 0x4F5B, 0x5426, 0x592B, 0x6577, 0x80A4, 0x5B75, 0x6276, 0x62C2, - 0x8F90, 0x5E45, 0x6C1F, 0x7B26, 0x4F0F, 0x4FD8, 0x670D, 0, -plane b8 -at 0x40 - 0x7AA3, 0x7AA4, 0x7AA7, 0x7AA9, 0x7AAA, 0x7AAB, 0x7AAE, 0x7AAF, - 0x7AB0, 0x7AB1, 0x7AB2, 0x7AB4, 0x7AB5, 0x7AB6, 0x7AB7, 0x7AB8, - 0x7AB9, 0x7ABA, 0x7ABB, 0x7ABC, 0x7ABD, 0x7ABE, 0x7AC0, 0x7AC1, - 0x7AC2, 0x7AC3, 0x7AC4, 0x7AC5, 0x7AC6, 0x7AC7, 0x7AC8, 0x7AC9, - 0x7ACA, 0x7ACC, 0x7ACD, 0x7ACE, 0x7ACF, 0x7AD0, 0x7AD1, 0x7AD2, - 0x7AD3, 0x7AD4, 0x7AD5, 0x7AD7, 0x7AD8, 0x7ADA, 0x7ADB, 0x7ADC, - 0x7ADD, 0x7AE1, 0x7AE2, 0x7AE4, 0x7AE7, 0x7AE8, 0x7AE9, 0x7AEA, - 0x7AEB, 0x7AEC, 0x7AEE, 0x7AF0, 0x7AF1, 0x7AF2, 0x7AF3, 0, - 0x7AF4, 0x7AF5, 0x7AF6, 0x7AF7, 0x7AF8, 0x7AFB, 0x7AFC, 0x7AFE, - 0x7B00, 0x7B01, 0x7B02, 0x7B05, 0x7B07, 0x7B09, 0x7B0C, 0x7B0D, - 0x7B0E, 0x7B10, 0x7B12, 0x7B13, 0x7B16, 0x7B17, 0x7B18, 0x7B1A, - 0x7B1C, 0x7B1D, 0x7B1F, 0x7B21, 0x7B22, 0x7B23, 0x7B27, 0x7B29, - 0x7B2D, 0x6D6E, 0x6DAA, 0x798F, 0x88B1, 0x5F17, 0x752B, 0x629A, - 0x8F85, 0x4FEF, 0x91DC, 0x65A7, 0x812F, 0x8151, 0x5E9C, 0x8150, - 0x8D74, 0x526F, 0x8986, 0x8D4B, 0x590D, 0x5085, 0x4ED8, 0x961C, - 0x7236, 0x8179, 0x8D1F, 0x5BCC, 0x8BA3, 0x9644, 0x5987, 0x7F1A, - 0x5490, 0x5676, 0x560E, 0x8BE5, 0x6539, 0x6982, 0x9499, 0x76D6, - 0x6E89, 0x5E72, 0x7518, 0x6746, 0x67D1, 0x7AFF, 0x809D, 0x8D76, - 0x611F, 0x79C6, 0x6562, 0x8D63, 0x5188, 0x521A, 0x94A2, 0x7F38, - 0x809B, 0x7EB2, 0x5C97, 0x6E2F, 0x6760, 0x7BD9, 0x768B, 0x9AD8, - 0x818F, 0x7F94, 0x7CD5, 0x641E, 0x9550, 0x7A3F, 0x544A, 0x54E5, - 0x6B4C, 0x6401, 0x6208, 0x9E3D, 0x80F3, 0x7599, 0x5272, 0x9769, - 0x845B, 0x683C, 0x86E4, 0x9601, 0x9694, 0x94EC, 0x4E2A, 0x5404, - 0x7ED9, 0x6839, 0x8DDF, 0x8015, 0x66F4, 0x5E9A, 0x7FB9, 0, -plane b9 -at 0x40 - 0x7B2F, 0x7B30, 0x7B32, 0x7B34, 0x7B35, 0x7B36, 0x7B37, 0x7B39, - 0x7B3B, 0x7B3D, 0x7B3F, 0x7B40, 0x7B41, 0x7B42, 0x7B43, 0x7B44, - 0x7B46, 0x7B48, 0x7B4A, 0x7B4D, 0x7B4E, 0x7B53, 0x7B55, 0x7B57, - 0x7B59, 0x7B5C, 0x7B5E, 0x7B5F, 0x7B61, 0x7B63, 0x7B64, 0x7B65, - 0x7B66, 0x7B67, 0x7B68, 0x7B69, 0x7B6A, 0x7B6B, 0x7B6C, 0x7B6D, - 0x7B6F, 0x7B70, 0x7B73, 0x7B74, 0x7B76, 0x7B78, 0x7B7A, 0x7B7C, - 0x7B7D, 0x7B7F, 0x7B81, 0x7B82, 0x7B83, 0x7B84, 0x7B86, 0x7B87, - 0x7B88, 0x7B89, 0x7B8A, 0x7B8B, 0x7B8C, 0x7B8E, 0x7B8F, 0, - 0x7B91, 0x7B92, 0x7B93, 0x7B96, 0x7B98, 0x7B99, 0x7B9A, 0x7B9B, - 0x7B9E, 0x7B9F, 0x7BA0, 0x7BA3, 0x7BA4, 0x7BA5, 0x7BAE, 0x7BAF, - 0x7BB0, 0x7BB2, 0x7BB3, 0x7BB5, 0x7BB6, 0x7BB7, 0x7BB9, 0x7BBA, - 0x7BBB, 0x7BBC, 0x7BBD, 0x7BBE, 0x7BBF, 0x7BC0, 0x7BC2, 0x7BC3, - 0x7BC4, 0x57C2, 0x803F, 0x6897, 0x5DE5, 0x653B, 0x529F, 0x606D, - 0x9F9A, 0x4F9B, 0x8EAC, 0x516C, 0x5BAB, 0x5F13, 0x5DE9, 0x6C5E, - 0x62F1, 0x8D21, 0x5171, 0x94A9, 0x52FE, 0x6C9F, 0x82DF, 0x72D7, - 0x57A2, 0x6784, 0x8D2D, 0x591F, 0x8F9C, 0x83C7, 0x5495, 0x7B8D, - 0x4F30, 0x6CBD, 0x5B64, 0x59D1, 0x9F13, 0x53E4, 0x86CA, 0x9AA8, - 0x8C37, 0x80A1, 0x6545, 0x987E, 0x56FA, 0x96C7, 0x522E, 0x74DC, - 0x5250, 0x5BE1, 0x6302, 0x8902, 0x4E56, 0x62D0, 0x602A, 0x68FA, - 0x5173, 0x5B98, 0x51A0, 0x89C2, 0x7BA1, 0x9986, 0x7F50, 0x60EF, - 0x704C, 0x8D2F, 0x5149, 0x5E7F, 0x901B, 0x7470, 0x89C4, 0x572D, - 0x7845, 0x5F52, 0x9F9F, 0x95FA, 0x8F68, 0x9B3C, 0x8BE1, 0x7678, - 0x6842, 0x67DC, 0x8DEA, 0x8D35, 0x523D, 0x8F8A, 0x6EDA, 0x68CD, - 0x9505, 0x90ED, 0x56FD, 0x679C, 0x88F9, 0x8FC7, 0x54C8, 0, -plane ba -at 0x40 - 0x7BC5, 0x7BC8, 0x7BC9, 0x7BCA, 0x7BCB, 0x7BCD, 0x7BCE, 0x7BCF, - 0x7BD0, 0x7BD2, 0x7BD4, 0x7BD5, 0x7BD6, 0x7BD7, 0x7BD8, 0x7BDB, - 0x7BDC, 0x7BDE, 0x7BDF, 0x7BE0, 0x7BE2, 0x7BE3, 0x7BE4, 0x7BE7, - 0x7BE8, 0x7BE9, 0x7BEB, 0x7BEC, 0x7BED, 0x7BEF, 0x7BF0, 0x7BF2, - 0x7BF3, 0x7BF4, 0x7BF5, 0x7BF6, 0x7BF8, 0x7BF9, 0x7BFA, 0x7BFB, - 0x7BFD, 0x7BFF, 0x7C00, 0x7C01, 0x7C02, 0x7C03, 0x7C04, 0x7C05, - 0x7C06, 0x7C08, 0x7C09, 0x7C0A, 0x7C0D, 0x7C0E, 0x7C10, 0x7C11, - 0x7C12, 0x7C13, 0x7C14, 0x7C15, 0x7C17, 0x7C18, 0x7C19, 0, - 0x7C1A, 0x7C1B, 0x7C1C, 0x7C1D, 0x7C1E, 0x7C20, 0x7C21, 0x7C22, - 0x7C23, 0x7C24, 0x7C25, 0x7C28, 0x7C29, 0x7C2B, 0x7C2C, 0x7C2D, - 0x7C2E, 0x7C2F, 0x7C30, 0x7C31, 0x7C32, 0x7C33, 0x7C34, 0x7C35, - 0x7C36, 0x7C37, 0x7C39, 0x7C3A, 0x7C3B, 0x7C3C, 0x7C3D, 0x7C3E, - 0x7C42, 0x9AB8, 0x5B69, 0x6D77, 0x6C26, 0x4EA5, 0x5BB3, 0x9A87, - 0x9163, 0x61A8, 0x90AF, 0x97E9, 0x542B, 0x6DB5, 0x5BD2, 0x51FD, - 0x558A, 0x7F55, 0x7FF0, 0x64BC, 0x634D, 0x65F1, 0x61BE, 0x608D, - 0x710A, 0x6C57, 0x6C49, 0x592F, 0x676D, 0x822A, 0x58D5, 0x568E, - 0x8C6A, 0x6BEB, 0x90DD, 0x597D, 0x8017, 0x53F7, 0x6D69, 0x5475, - 0x559D, 0x8377, 0x83CF, 0x6838, 0x79BE, 0x548C, 0x4F55, 0x5408, - 0x76D2, 0x8C89, 0x9602, 0x6CB3, 0x6DB8, 0x8D6B, 0x8910, 0x9E64, - 0x8D3A, 0x563F, 0x9ED1, 0x75D5, 0x5F88, 0x72E0, 0x6068, 0x54FC, - 0x4EA8, 0x6A2A, 0x8861, 0x6052, 0x8F70, 0x54C4, 0x70D8, 0x8679, - 0x9E3F, 0x6D2A, 0x5B8F, 0x5F18, 0x7EA2, 0x5589, 0x4FAF, 0x7334, - 0x543C, 0x539A, 0x5019, 0x540E, 0x547C, 0x4E4E, 0x5FFD, 0x745A, - 0x58F6, 0x846B, 0x80E1, 0x8774, 0x72D0, 0x7CCA, 0x6E56, 0, -plane bb -at 0x40 - 0x7C43, 0x7C44, 0x7C45, 0x7C46, 0x7C47, 0x7C48, 0x7C49, 0x7C4A, - 0x7C4B, 0x7C4C, 0x7C4E, 0x7C4F, 0x7C50, 0x7C51, 0x7C52, 0x7C53, - 0x7C54, 0x7C55, 0x7C56, 0x7C57, 0x7C58, 0x7C59, 0x7C5A, 0x7C5B, - 0x7C5C, 0x7C5D, 0x7C5E, 0x7C5F, 0x7C60, 0x7C61, 0x7C62, 0x7C63, - 0x7C64, 0x7C65, 0x7C66, 0x7C67, 0x7C68, 0x7C69, 0x7C6A, 0x7C6B, - 0x7C6C, 0x7C6D, 0x7C6E, 0x7C6F, 0x7C70, 0x7C71, 0x7C72, 0x7C75, - 0x7C76, 0x7C77, 0x7C78, 0x7C79, 0x7C7A, 0x7C7E, 0x7C7F, 0x7C80, - 0x7C81, 0x7C82, 0x7C83, 0x7C84, 0x7C85, 0x7C86, 0x7C87, 0, - 0x7C88, 0x7C8A, 0x7C8B, 0x7C8C, 0x7C8D, 0x7C8E, 0x7C8F, 0x7C90, - 0x7C93, 0x7C94, 0x7C96, 0x7C99, 0x7C9A, 0x7C9B, 0x7CA0, 0x7CA1, - 0x7CA3, 0x7CA6, 0x7CA7, 0x7CA8, 0x7CA9, 0x7CAB, 0x7CAC, 0x7CAD, - 0x7CAF, 0x7CB0, 0x7CB4, 0x7CB5, 0x7CB6, 0x7CB7, 0x7CB8, 0x7CBA, - 0x7CBB, 0x5F27, 0x864E, 0x552C, 0x62A4, 0x4E92, 0x6CAA, 0x6237, - 0x82B1, 0x54D7, 0x534E, 0x733E, 0x6ED1, 0x753B, 0x5212, 0x5316, - 0x8BDD, 0x69D0, 0x5F8A, 0x6000, 0x6DEE, 0x574F, 0x6B22, 0x73AF, - 0x6853, 0x8FD8, 0x7F13, 0x6362, 0x60A3, 0x5524, 0x75EA, 0x8C62, - 0x7115, 0x6DA3, 0x5BA6, 0x5E7B, 0x8352, 0x614C, 0x9EC4, 0x78FA, - 0x8757, 0x7C27, 0x7687, 0x51F0, 0x60F6, 0x714C, 0x6643, 0x5E4C, - 0x604D, 0x8C0E, 0x7070, 0x6325, 0x8F89, 0x5FBD, 0x6062, 0x86D4, - 0x56DE, 0x6BC1, 0x6094, 0x6167, 0x5349, 0x60E0, 0x6666, 0x8D3F, - 0x79FD, 0x4F1A, 0x70E9, 0x6C47, 0x8BB3, 0x8BF2, 0x7ED8, 0x8364, - 0x660F, 0x5A5A, 0x9B42, 0x6D51, 0x6DF7, 0x8C41, 0x6D3B, 0x4F19, - 0x706B, 0x83B7, 0x6216, 0x60D1, 0x970D, 0x8D27, 0x7978, 0x51FB, - 0x573E, 0x57FA, 0x673A, 0x7578, 0x7A3D, 0x79EF, 0x7B95, 0, -plane bc -at 0x40 - 0x7CBF, 0x7CC0, 0x7CC2, 0x7CC3, 0x7CC4, 0x7CC6, 0x7CC9, 0x7CCB, - 0x7CCE, 0x7CCF, 0x7CD0, 0x7CD1, 0x7CD2, 0x7CD3, 0x7CD4, 0x7CD8, - 0x7CDA, 0x7CDB, 0x7CDD, 0x7CDE, 0x7CE1, 0x7CE2, 0x7CE3, 0x7CE4, - 0x7CE5, 0x7CE6, 0x7CE7, 0x7CE9, 0x7CEA, 0x7CEB, 0x7CEC, 0x7CED, - 0x7CEE, 0x7CF0, 0x7CF1, 0x7CF2, 0x7CF3, 0x7CF4, 0x7CF5, 0x7CF6, - 0x7CF7, 0x7CF9, 0x7CFA, 0x7CFC, 0x7CFD, 0x7CFE, 0x7CFF, 0x7D00, - 0x7D01, 0x7D02, 0x7D03, 0x7D04, 0x7D05, 0x7D06, 0x7D07, 0x7D08, - 0x7D09, 0x7D0B, 0x7D0C, 0x7D0D, 0x7D0E, 0x7D0F, 0x7D10, 0, - 0x7D11, 0x7D12, 0x7D13, 0x7D14, 0x7D15, 0x7D16, 0x7D17, 0x7D18, - 0x7D19, 0x7D1A, 0x7D1B, 0x7D1C, 0x7D1D, 0x7D1E, 0x7D1F, 0x7D21, - 0x7D23, 0x7D24, 0x7D25, 0x7D26, 0x7D28, 0x7D29, 0x7D2A, 0x7D2C, - 0x7D2D, 0x7D2E, 0x7D30, 0x7D31, 0x7D32, 0x7D33, 0x7D34, 0x7D35, - 0x7D36, 0x808C, 0x9965, 0x8FF9, 0x6FC0, 0x8BA5, 0x9E21, 0x59EC, - 0x7EE9, 0x7F09, 0x5409, 0x6781, 0x68D8, 0x8F91, 0x7C4D, 0x96C6, - 0x53CA, 0x6025, 0x75BE, 0x6C72, 0x5373, 0x5AC9, 0x7EA7, 0x6324, - 0x51E0, 0x810A, 0x5DF1, 0x84DF, 0x6280, 0x5180, 0x5B63, 0x4F0E, - 0x796D, 0x5242, 0x60B8, 0x6D4E, 0x5BC4, 0x5BC2, 0x8BA1, 0x8BB0, - 0x65E2, 0x5FCC, 0x9645, 0x5993, 0x7EE7, 0x7EAA, 0x5609, 0x67B7, - 0x5939, 0x4F73, 0x5BB6, 0x52A0, 0x835A, 0x988A, 0x8D3E, 0x7532, - 0x94BE, 0x5047, 0x7A3C, 0x4EF7, 0x67B6, 0x9A7E, 0x5AC1, 0x6B7C, - 0x76D1, 0x575A, 0x5C16, 0x7B3A, 0x95F4, 0x714E, 0x517C, 0x80A9, - 0x8270, 0x5978, 0x7F04, 0x8327, 0x68C0, 0x67EC, 0x78B1, 0x7877, - 0x62E3, 0x6361, 0x7B80, 0x4FED, 0x526A, 0x51CF, 0x8350, 0x69DB, - 0x9274, 0x8DF5, 0x8D31, 0x89C1, 0x952E, 0x7BAD, 0x4EF6, 0, -plane bd -at 0x40 - 0x7D37, 0x7D38, 0x7D39, 0x7D3A, 0x7D3B, 0x7D3C, 0x7D3D, 0x7D3E, - 0x7D3F, 0x7D40, 0x7D41, 0x7D42, 0x7D43, 0x7D44, 0x7D45, 0x7D46, - 0x7D47, 0x7D48, 0x7D49, 0x7D4A, 0x7D4B, 0x7D4C, 0x7D4D, 0x7D4E, - 0x7D4F, 0x7D50, 0x7D51, 0x7D52, 0x7D53, 0x7D54, 0x7D55, 0x7D56, - 0x7D57, 0x7D58, 0x7D59, 0x7D5A, 0x7D5B, 0x7D5C, 0x7D5D, 0x7D5E, - 0x7D5F, 0x7D60, 0x7D61, 0x7D62, 0x7D63, 0x7D64, 0x7D65, 0x7D66, - 0x7D67, 0x7D68, 0x7D69, 0x7D6A, 0x7D6B, 0x7D6C, 0x7D6D, 0x7D6F, - 0x7D70, 0x7D71, 0x7D72, 0x7D73, 0x7D74, 0x7D75, 0x7D76, 0, - 0x7D78, 0x7D79, 0x7D7A, 0x7D7B, 0x7D7C, 0x7D7D, 0x7D7E, 0x7D7F, - 0x7D80, 0x7D81, 0x7D82, 0x7D83, 0x7D84, 0x7D85, 0x7D86, 0x7D87, - 0x7D88, 0x7D89, 0x7D8A, 0x7D8B, 0x7D8C, 0x7D8D, 0x7D8E, 0x7D8F, - 0x7D90, 0x7D91, 0x7D92, 0x7D93, 0x7D94, 0x7D95, 0x7D96, 0x7D97, - 0x7D98, 0x5065, 0x8230, 0x5251, 0x996F, 0x6E10, 0x6E85, 0x6DA7, - 0x5EFA, 0x50F5, 0x59DC, 0x5C06, 0x6D46, 0x6C5F, 0x7586, 0x848B, - 0x6868, 0x5956, 0x8BB2, 0x5320, 0x9171, 0x964D, 0x8549, 0x6912, - 0x7901, 0x7126, 0x80F6, 0x4EA4, 0x90CA, 0x6D47, 0x9A84, 0x5A07, - 0x56BC, 0x6405, 0x94F0, 0x77EB, 0x4FA5, 0x811A, 0x72E1, 0x89D2, - 0x997A, 0x7F34, 0x7EDE, 0x527F, 0x6559, 0x9175, 0x8F7F, 0x8F83, - 0x53EB, 0x7A96, 0x63ED, 0x63A5, 0x7686, 0x79F8, 0x8857, 0x9636, - 0x622A, 0x52AB, 0x8282, 0x6854, 0x6770, 0x6377, 0x776B, 0x7AED, - 0x6D01, 0x7ED3, 0x89E3, 0x59D0, 0x6212, 0x85C9, 0x82A5, 0x754C, - 0x501F, 0x4ECB, 0x75A5, 0x8BEB, 0x5C4A, 0x5DFE, 0x7B4B, 0x65A4, - 0x91D1, 0x4ECA, 0x6D25, 0x895F, 0x7D27, 0x9526, 0x4EC5, 0x8C28, - 0x8FDB, 0x9773, 0x664B, 0x7981, 0x8FD1, 0x70EC, 0x6D78, 0, -plane be -at 0x40 - 0x7D99, 0x7D9A, 0x7D9B, 0x7D9C, 0x7D9D, 0x7D9E, 0x7D9F, 0x7DA0, - 0x7DA1, 0x7DA2, 0x7DA3, 0x7DA4, 0x7DA5, 0x7DA7, 0x7DA8, 0x7DA9, - 0x7DAA, 0x7DAB, 0x7DAC, 0x7DAD, 0x7DAF, 0x7DB0, 0x7DB1, 0x7DB2, - 0x7DB3, 0x7DB4, 0x7DB5, 0x7DB6, 0x7DB7, 0x7DB8, 0x7DB9, 0x7DBA, - 0x7DBB, 0x7DBC, 0x7DBD, 0x7DBE, 0x7DBF, 0x7DC0, 0x7DC1, 0x7DC2, - 0x7DC3, 0x7DC4, 0x7DC5, 0x7DC6, 0x7DC7, 0x7DC8, 0x7DC9, 0x7DCA, - 0x7DCB, 0x7DCC, 0x7DCD, 0x7DCE, 0x7DCF, 0x7DD0, 0x7DD1, 0x7DD2, - 0x7DD3, 0x7DD4, 0x7DD5, 0x7DD6, 0x7DD7, 0x7DD8, 0x7DD9, 0, - 0x7DDA, 0x7DDB, 0x7DDC, 0x7DDD, 0x7DDE, 0x7DDF, 0x7DE0, 0x7DE1, - 0x7DE2, 0x7DE3, 0x7DE4, 0x7DE5, 0x7DE6, 0x7DE7, 0x7DE8, 0x7DE9, - 0x7DEA, 0x7DEB, 0x7DEC, 0x7DED, 0x7DEE, 0x7DEF, 0x7DF0, 0x7DF1, - 0x7DF2, 0x7DF3, 0x7DF4, 0x7DF5, 0x7DF6, 0x7DF7, 0x7DF8, 0x7DF9, - 0x7DFA, 0x5C3D, 0x52B2, 0x8346, 0x5162, 0x830E, 0x775B, 0x6676, - 0x9CB8, 0x4EAC, 0x60CA, 0x7CBE, 0x7CB3, 0x7ECF, 0x4E95, 0x8B66, - 0x666F, 0x9888, 0x9759, 0x5883, 0x656C, 0x955C, 0x5F84, 0x75C9, - 0x9756, 0x7ADF, 0x7ADE, 0x51C0, 0x70AF, 0x7A98, 0x63EA, 0x7A76, - 0x7EA0, 0x7396, 0x97ED, 0x4E45, 0x7078, 0x4E5D, 0x9152, 0x53A9, - 0x6551, 0x65E7, 0x81FC, 0x8205, 0x548E, 0x5C31, 0x759A, 0x97A0, - 0x62D8, 0x72D9, 0x75BD, 0x5C45, 0x9A79, 0x83CA, 0x5C40, 0x5480, - 0x77E9, 0x4E3E, 0x6CAE, 0x805A, 0x62D2, 0x636E, 0x5DE8, 0x5177, - 0x8DDD, 0x8E1E, 0x952F, 0x4FF1, 0x53E5, 0x60E7, 0x70AC, 0x5267, - 0x6350, 0x9E43, 0x5A1F, 0x5026, 0x7737, 0x5377, 0x7EE2, 0x6485, - 0x652B, 0x6289, 0x6398, 0x5014, 0x7235, 0x89C9, 0x51B3, 0x8BC0, - 0x7EDD, 0x5747, 0x83CC, 0x94A7, 0x519B, 0x541B, 0x5CFB, 0, -plane bf -at 0x40 - 0x7DFB, 0x7DFC, 0x7DFD, 0x7DFE, 0x7DFF, 0x7E00, 0x7E01, 0x7E02, - 0x7E03, 0x7E04, 0x7E05, 0x7E06, 0x7E07, 0x7E08, 0x7E09, 0x7E0A, - 0x7E0B, 0x7E0C, 0x7E0D, 0x7E0E, 0x7E0F, 0x7E10, 0x7E11, 0x7E12, - 0x7E13, 0x7E14, 0x7E15, 0x7E16, 0x7E17, 0x7E18, 0x7E19, 0x7E1A, - 0x7E1B, 0x7E1C, 0x7E1D, 0x7E1E, 0x7E1F, 0x7E20, 0x7E21, 0x7E22, - 0x7E23, 0x7E24, 0x7E25, 0x7E26, 0x7E27, 0x7E28, 0x7E29, 0x7E2A, - 0x7E2B, 0x7E2C, 0x7E2D, 0x7E2E, 0x7E2F, 0x7E30, 0x7E31, 0x7E32, - 0x7E33, 0x7E34, 0x7E35, 0x7E36, 0x7E37, 0x7E38, 0x7E39, 0, - 0x7E3A, 0x7E3C, 0x7E3D, 0x7E3E, 0x7E3F, 0x7E40, 0x7E42, 0x7E43, - 0x7E44, 0x7E45, 0x7E46, 0x7E48, 0x7E49, 0x7E4A, 0x7E4B, 0x7E4C, - 0x7E4D, 0x7E4E, 0x7E4F, 0x7E50, 0x7E51, 0x7E52, 0x7E53, 0x7E54, - 0x7E55, 0x7E56, 0x7E57, 0x7E58, 0x7E59, 0x7E5A, 0x7E5B, 0x7E5C, - 0x7E5D, 0x4FCA, 0x7AE3, 0x6D5A, 0x90E1, 0x9A8F, 0x5580, 0x5496, - 0x5361, 0x54AF, 0x5F00, 0x63E9, 0x6977, 0x51EF, 0x6168, 0x520A, - 0x582A, 0x52D8, 0x574E, 0x780D, 0x770B, 0x5EB7, 0x6177, 0x7CE0, - 0x625B, 0x6297, 0x4EA2, 0x7095, 0x8003, 0x62F7, 0x70E4, 0x9760, - 0x5777, 0x82DB, 0x67EF, 0x68F5, 0x78D5, 0x9897, 0x79D1, 0x58F3, - 0x54B3, 0x53EF, 0x6E34, 0x514B, 0x523B, 0x5BA2, 0x8BFE, 0x80AF, - 0x5543, 0x57A6, 0x6073, 0x5751, 0x542D, 0x7A7A, 0x6050, 0x5B54, - 0x63A7, 0x62A0, 0x53E3, 0x6263, 0x5BC7, 0x67AF, 0x54ED, 0x7A9F, - 0x82E6, 0x9177, 0x5E93, 0x88E4, 0x5938, 0x57AE, 0x630E, 0x8DE8, - 0x80EF, 0x5757, 0x7B77, 0x4FA9, 0x5FEB, 0x5BBD, 0x6B3E, 0x5321, - 0x7B50, 0x72C2, 0x6846, 0x77FF, 0x7736, 0x65F7, 0x51B5, 0x4E8F, - 0x76D4, 0x5CBF, 0x7AA5, 0x8475, 0x594E, 0x9B41, 0x5080, 0, -plane c0 -at 0x40 - 0x7E5E, 0x7E5F, 0x7E60, 0x7E61, 0x7E62, 0x7E63, 0x7E64, 0x7E65, - 0x7E66, 0x7E67, 0x7E68, 0x7E69, 0x7E6A, 0x7E6B, 0x7E6C, 0x7E6D, - 0x7E6E, 0x7E6F, 0x7E70, 0x7E71, 0x7E72, 0x7E73, 0x7E74, 0x7E75, - 0x7E76, 0x7E77, 0x7E78, 0x7E79, 0x7E7A, 0x7E7B, 0x7E7C, 0x7E7D, - 0x7E7E, 0x7E7F, 0x7E80, 0x7E81, 0x7E83, 0x7E84, 0x7E85, 0x7E86, - 0x7E87, 0x7E88, 0x7E89, 0x7E8A, 0x7E8B, 0x7E8C, 0x7E8D, 0x7E8E, - 0x7E8F, 0x7E90, 0x7E91, 0x7E92, 0x7E93, 0x7E94, 0x7E95, 0x7E96, - 0x7E97, 0x7E98, 0x7E99, 0x7E9A, 0x7E9C, 0x7E9D, 0x7E9E, 0, - 0x7EAE, 0x7EB4, 0x7EBB, 0x7EBC, 0x7ED6, 0x7EE4, 0x7EEC, 0x7EF9, - 0x7F0A, 0x7F10, 0x7F1E, 0x7F37, 0x7F39, 0x7F3B, 0x7F3C, 0x7F3D, - 0x7F3E, 0x7F3F, 0x7F40, 0x7F41, 0x7F43, 0x7F46, 0x7F47, 0x7F48, - 0x7F49, 0x7F4A, 0x7F4B, 0x7F4C, 0x7F4D, 0x7F4E, 0x7F4F, 0x7F52, - 0x7F53, 0x9988, 0x6127, 0x6E83, 0x5764, 0x6606, 0x6346, 0x56F0, - 0x62EC, 0x6269, 0x5ED3, 0x9614, 0x5783, 0x62C9, 0x5587, 0x8721, - 0x814A, 0x8FA3, 0x5566, 0x83B1, 0x6765, 0x8D56, 0x84DD, 0x5A6A, - 0x680F, 0x62E6, 0x7BEE, 0x9611, 0x5170, 0x6F9C, 0x8C30, 0x63FD, - 0x89C8, 0x61D2, 0x7F06, 0x70C2, 0x6EE5, 0x7405, 0x6994, 0x72FC, - 0x5ECA, 0x90CE, 0x6717, 0x6D6A, 0x635E, 0x52B3, 0x7262, 0x8001, - 0x4F6C, 0x59E5, 0x916A, 0x70D9, 0x6D9D, 0x52D2, 0x4E50, 0x96F7, - 0x956D, 0x857E, 0x78CA, 0x7D2F, 0x5121, 0x5792, 0x64C2, 0x808B, - 0x7C7B, 0x6CEA, 0x68F1, 0x695E, 0x51B7, 0x5398, 0x68A8, 0x7281, - 0x9ECE, 0x7BF1, 0x72F8, 0x79BB, 0x6F13, 0x7406, 0x674E, 0x91CC, - 0x9CA4, 0x793C, 0x8389, 0x8354, 0x540F, 0x6817, 0x4E3D, 0x5389, - 0x52B1, 0x783E, 0x5386, 0x5229, 0x5088, 0x4F8B, 0x4FD0, 0, -plane c1 -at 0x40 - 0x7F56, 0x7F59, 0x7F5B, 0x7F5C, 0x7F5D, 0x7F5E, 0x7F60, 0x7F63, - 0x7F64, 0x7F65, 0x7F66, 0x7F67, 0x7F6B, 0x7F6C, 0x7F6D, 0x7F6F, - 0x7F70, 0x7F73, 0x7F75, 0x7F76, 0x7F77, 0x7F78, 0x7F7A, 0x7F7B, - 0x7F7C, 0x7F7D, 0x7F7F, 0x7F80, 0x7F82, 0x7F83, 0x7F84, 0x7F85, - 0x7F86, 0x7F87, 0x7F88, 0x7F89, 0x7F8B, 0x7F8D, 0x7F8F, 0x7F90, - 0x7F91, 0x7F92, 0x7F93, 0x7F95, 0x7F96, 0x7F97, 0x7F98, 0x7F99, - 0x7F9B, 0x7F9C, 0x7FA0, 0x7FA2, 0x7FA3, 0x7FA5, 0x7FA6, 0x7FA8, - 0x7FA9, 0x7FAA, 0x7FAB, 0x7FAC, 0x7FAD, 0x7FAE, 0x7FB1, 0, - 0x7FB3, 0x7FB4, 0x7FB5, 0x7FB6, 0x7FB7, 0x7FBA, 0x7FBB, 0x7FBE, - 0x7FC0, 0x7FC2, 0x7FC3, 0x7FC4, 0x7FC6, 0x7FC7, 0x7FC8, 0x7FC9, - 0x7FCB, 0x7FCD, 0x7FCF, 0x7FD0, 0x7FD1, 0x7FD2, 0x7FD3, 0x7FD6, - 0x7FD7, 0x7FD9, 0x7FDA, 0x7FDB, 0x7FDC, 0x7FDD, 0x7FDE, 0x7FE2, - 0x7FE3, 0x75E2, 0x7ACB, 0x7C92, 0x6CA5, 0x96B6, 0x529B, 0x7483, - 0x54E9, 0x4FE9, 0x8054, 0x83B2, 0x8FDE, 0x9570, 0x5EC9, 0x601C, - 0x6D9F, 0x5E18, 0x655B, 0x8138, 0x94FE, 0x604B, 0x70BC, 0x7EC3, - 0x7CAE, 0x51C9, 0x6881, 0x7CB1, 0x826F, 0x4E24, 0x8F86, 0x91CF, - 0x667E, 0x4EAE, 0x8C05, 0x64A9, 0x804A, 0x50DA, 0x7597, 0x71CE, - 0x5BE5, 0x8FBD, 0x6F66, 0x4E86, 0x6482, 0x9563, 0x5ED6, 0x6599, - 0x5217, 0x88C2, 0x70C8, 0x52A3, 0x730E, 0x7433, 0x6797, 0x78F7, - 0x9716, 0x4E34, 0x90BB, 0x9CDE, 0x6DCB, 0x51DB, 0x8D41, 0x541D, - 0x62CE, 0x73B2, 0x83F1, 0x96F6, 0x9F84, 0x94C3, 0x4F36, 0x7F9A, - 0x51CC, 0x7075, 0x9675, 0x5CAD, 0x9886, 0x53E6, 0x4EE4, 0x6E9C, - 0x7409, 0x69B4, 0x786B, 0x998F, 0x7559, 0x5218, 0x7624, 0x6D41, - 0x67F3, 0x516D, 0x9F99, 0x804B, 0x5499, 0x7B3C, 0x7ABF, 0, -plane c2 -at 0x40 - 0x7FE4, 0x7FE7, 0x7FE8, 0x7FEA, 0x7FEB, 0x7FEC, 0x7FED, 0x7FEF, - 0x7FF2, 0x7FF4, 0x7FF5, 0x7FF6, 0x7FF7, 0x7FF8, 0x7FF9, 0x7FFA, - 0x7FFD, 0x7FFE, 0x7FFF, 0x8002, 0x8007, 0x8008, 0x8009, 0x800A, - 0x800E, 0x800F, 0x8011, 0x8013, 0x801A, 0x801B, 0x801D, 0x801E, - 0x801F, 0x8021, 0x8023, 0x8024, 0x802B, 0x802C, 0x802D, 0x802E, - 0x802F, 0x8030, 0x8032, 0x8034, 0x8039, 0x803A, 0x803C, 0x803E, - 0x8040, 0x8041, 0x8044, 0x8045, 0x8047, 0x8048, 0x8049, 0x804E, - 0x804F, 0x8050, 0x8051, 0x8053, 0x8055, 0x8056, 0x8057, 0, - 0x8059, 0x805B, 0x805C, 0x805D, 0x805E, 0x805F, 0x8060, 0x8061, - 0x8062, 0x8063, 0x8064, 0x8065, 0x8066, 0x8067, 0x8068, 0x806B, - 0x806C, 0x806D, 0x806E, 0x806F, 0x8070, 0x8072, 0x8073, 0x8074, - 0x8075, 0x8076, 0x8077, 0x8078, 0x8079, 0x807A, 0x807B, 0x807C, - 0x807D, 0x9686, 0x5784, 0x62E2, 0x9647, 0x697C, 0x5A04, 0x6402, - 0x7BD3, 0x6F0F, 0x964B, 0x82A6, 0x5362, 0x9885, 0x5E90, 0x7089, - 0x63B3, 0x5364, 0x864F, 0x9C81, 0x9E93, 0x788C, 0x9732, 0x8DEF, - 0x8D42, 0x9E7F, 0x6F5E, 0x7984, 0x5F55, 0x9646, 0x622E, 0x9A74, - 0x5415, 0x94DD, 0x4FA3, 0x65C5, 0x5C65, 0x5C61, 0x7F15, 0x8651, - 0x6C2F, 0x5F8B, 0x7387, 0x6EE4, 0x7EFF, 0x5CE6, 0x631B, 0x5B6A, - 0x6EE6, 0x5375, 0x4E71, 0x63A0, 0x7565, 0x62A1, 0x8F6E, 0x4F26, - 0x4ED1, 0x6CA6, 0x7EB6, 0x8BBA, 0x841D, 0x87BA, 0x7F57, 0x903B, - 0x9523, 0x7BA9, 0x9AA1, 0x88F8, 0x843D, 0x6D1B, 0x9A86, 0x7EDC, - 0x5988, 0x9EBB, 0x739B, 0x7801, 0x8682, 0x9A6C, 0x9A82, 0x561B, - 0x5417, 0x57CB, 0x4E70, 0x9EA6, 0x5356, 0x8FC8, 0x8109, 0x7792, - 0x9992, 0x86EE, 0x6EE1, 0x8513, 0x66FC, 0x6162, 0x6F2B, 0, -plane c3 -at 0x40 - 0x807E, 0x8081, 0x8082, 0x8085, 0x8088, 0x808A, 0x808D, 0x808E, - 0x808F, 0x8090, 0x8091, 0x8092, 0x8094, 0x8095, 0x8097, 0x8099, - 0x809E, 0x80A3, 0x80A6, 0x80A7, 0x80A8, 0x80AC, 0x80B0, 0x80B3, - 0x80B5, 0x80B6, 0x80B8, 0x80B9, 0x80BB, 0x80C5, 0x80C7, 0x80C8, - 0x80C9, 0x80CA, 0x80CB, 0x80CF, 0x80D0, 0x80D1, 0x80D2, 0x80D3, - 0x80D4, 0x80D5, 0x80D8, 0x80DF, 0x80E0, 0x80E2, 0x80E3, 0x80E6, - 0x80EE, 0x80F5, 0x80F7, 0x80F9, 0x80FB, 0x80FE, 0x80FF, 0x8100, - 0x8101, 0x8103, 0x8104, 0x8105, 0x8107, 0x8108, 0x810B, 0, - 0x810C, 0x8115, 0x8117, 0x8119, 0x811B, 0x811C, 0x811D, 0x811F, - 0x8120, 0x8121, 0x8122, 0x8123, 0x8124, 0x8125, 0x8126, 0x8127, - 0x8128, 0x8129, 0x812A, 0x812B, 0x812D, 0x812E, 0x8130, 0x8133, - 0x8134, 0x8135, 0x8137, 0x8139, 0x813A, 0x813B, 0x813C, 0x813D, - 0x813F, 0x8C29, 0x8292, 0x832B, 0x76F2, 0x6C13, 0x5FD9, 0x83BD, - 0x732B, 0x8305, 0x951A, 0x6BDB, 0x77DB, 0x94C6, 0x536F, 0x8302, - 0x5192, 0x5E3D, 0x8C8C, 0x8D38, 0x4E48, 0x73AB, 0x679A, 0x6885, - 0x9176, 0x9709, 0x7164, 0x6CA1, 0x7709, 0x5A92, 0x9541, 0x6BCF, - 0x7F8E, 0x6627, 0x5BD0, 0x59B9, 0x5A9A, 0x95E8, 0x95F7, 0x4EEC, - 0x840C, 0x8499, 0x6AAC, 0x76DF, 0x9530, 0x731B, 0x68A6, 0x5B5F, - 0x772F, 0x919A, 0x9761, 0x7CDC, 0x8FF7, 0x8C1C, 0x5F25, 0x7C73, - 0x79D8, 0x89C5, 0x6CCC, 0x871C, 0x5BC6, 0x5E42, 0x68C9, 0x7720, - 0x7EF5, 0x5195, 0x514D, 0x52C9, 0x5A29, 0x7F05, 0x9762, 0x82D7, - 0x63CF, 0x7784, 0x85D0, 0x79D2, 0x6E3A, 0x5E99, 0x5999, 0x8511, - 0x706D, 0x6C11, 0x62BF, 0x76BF, 0x654F, 0x60AF, 0x95FD, 0x660E, - 0x879F, 0x9E23, 0x94ED, 0x540D, 0x547D, 0x8C2C, 0x6478, 0, -plane c4 -at 0x40 - 0x8140, 0x8141, 0x8142, 0x8143, 0x8144, 0x8145, 0x8147, 0x8149, - 0x814D, 0x814E, 0x814F, 0x8152, 0x8156, 0x8157, 0x8158, 0x815B, - 0x815C, 0x815D, 0x815E, 0x815F, 0x8161, 0x8162, 0x8163, 0x8164, - 0x8166, 0x8168, 0x816A, 0x816B, 0x816C, 0x816F, 0x8172, 0x8173, - 0x8175, 0x8176, 0x8177, 0x8178, 0x8181, 0x8183, 0x8184, 0x8185, - 0x8186, 0x8187, 0x8189, 0x818B, 0x818C, 0x818D, 0x818E, 0x8190, - 0x8192, 0x8193, 0x8194, 0x8195, 0x8196, 0x8197, 0x8199, 0x819A, - 0x819E, 0x819F, 0x81A0, 0x81A1, 0x81A2, 0x81A4, 0x81A5, 0, - 0x81A7, 0x81A9, 0x81AB, 0x81AC, 0x81AD, 0x81AE, 0x81AF, 0x81B0, - 0x81B1, 0x81B2, 0x81B4, 0x81B5, 0x81B6, 0x81B7, 0x81B8, 0x81B9, - 0x81BC, 0x81BD, 0x81BE, 0x81BF, 0x81C4, 0x81C5, 0x81C7, 0x81C8, - 0x81C9, 0x81CB, 0x81CD, 0x81CE, 0x81CF, 0x81D0, 0x81D1, 0x81D2, - 0x81D3, 0x6479, 0x8611, 0x6A21, 0x819C, 0x78E8, 0x6469, 0x9B54, - 0x62B9, 0x672B, 0x83AB, 0x58A8, 0x9ED8, 0x6CAB, 0x6F20, 0x5BDE, - 0x964C, 0x8C0B, 0x725F, 0x67D0, 0x62C7, 0x7261, 0x4EA9, 0x59C6, - 0x6BCD, 0x5893, 0x66AE, 0x5E55, 0x52DF, 0x6155, 0x6728, 0x76EE, - 0x7766, 0x7267, 0x7A46, 0x62FF, 0x54EA, 0x5450, 0x94A0, 0x90A3, - 0x5A1C, 0x7EB3, 0x6C16, 0x4E43, 0x5976, 0x8010, 0x5948, 0x5357, - 0x7537, 0x96BE, 0x56CA, 0x6320, 0x8111, 0x607C, 0x95F9, 0x6DD6, - 0x5462, 0x9981, 0x5185, 0x5AE9, 0x80FD, 0x59AE, 0x9713, 0x502A, - 0x6CE5, 0x5C3C, 0x62DF, 0x4F60, 0x533F, 0x817B, 0x9006, 0x6EBA, - 0x852B, 0x62C8, 0x5E74, 0x78BE, 0x64B5, 0x637B, 0x5FF5, 0x5A18, - 0x917F, 0x9E1F, 0x5C3F, 0x634F, 0x8042, 0x5B7D, 0x556E, 0x954A, - 0x954D, 0x6D85, 0x60A8, 0x67E0, 0x72DE, 0x51DD, 0x5B81, 0, -plane c5 -at 0x40 - 0x81D4, 0x81D5, 0x81D6, 0x81D7, 0x81D8, 0x81D9, 0x81DA, 0x81DB, - 0x81DC, 0x81DD, 0x81DE, 0x81DF, 0x81E0, 0x81E1, 0x81E2, 0x81E4, - 0x81E5, 0x81E6, 0x81E8, 0x81E9, 0x81EB, 0x81EE, 0x81EF, 0x81F0, - 0x81F1, 0x81F2, 0x81F5, 0x81F6, 0x81F7, 0x81F8, 0x81F9, 0x81FA, - 0x81FD, 0x81FF, 0x8203, 0x8207, 0x8208, 0x8209, 0x820A, 0x820B, - 0x820E, 0x820F, 0x8211, 0x8213, 0x8215, 0x8216, 0x8217, 0x8218, - 0x8219, 0x821A, 0x821D, 0x8220, 0x8224, 0x8225, 0x8226, 0x8227, - 0x8229, 0x822E, 0x8232, 0x823A, 0x823C, 0x823D, 0x823F, 0, - 0x8240, 0x8241, 0x8242, 0x8243, 0x8245, 0x8246, 0x8248, 0x824A, - 0x824C, 0x824D, 0x824E, 0x8250, 0x8251, 0x8252, 0x8253, 0x8254, - 0x8255, 0x8256, 0x8257, 0x8259, 0x825B, 0x825C, 0x825D, 0x825E, - 0x8260, 0x8261, 0x8262, 0x8263, 0x8264, 0x8265, 0x8266, 0x8267, - 0x8269, 0x62E7, 0x6CDE, 0x725B, 0x626D, 0x94AE, 0x7EBD, 0x8113, - 0x6D53, 0x519C, 0x5F04, 0x5974, 0x52AA, 0x6012, 0x5973, 0x6696, - 0x8650, 0x759F, 0x632A, 0x61E6, 0x7CEF, 0x8BFA, 0x54E6, 0x6B27, - 0x9E25, 0x6BB4, 0x85D5, 0x5455, 0x5076, 0x6CA4, 0x556A, 0x8DB4, - 0x722C, 0x5E15, 0x6015, 0x7436, 0x62CD, 0x6392, 0x724C, 0x5F98, - 0x6E43, 0x6D3E, 0x6500, 0x6F58, 0x76D8, 0x78D0, 0x76FC, 0x7554, - 0x5224, 0x53DB, 0x4E53, 0x5E9E, 0x65C1, 0x802A, 0x80D6, 0x629B, - 0x5486, 0x5228, 0x70AE, 0x888D, 0x8DD1, 0x6CE1, 0x5478, 0x80DA, - 0x57F9, 0x88F4, 0x8D54, 0x966A, 0x914D, 0x4F69, 0x6C9B, 0x55B7, - 0x76C6, 0x7830, 0x62A8, 0x70F9, 0x6F8E, 0x5F6D, 0x84EC, 0x68DA, - 0x787C, 0x7BF7, 0x81A8, 0x670B, 0x9E4F, 0x6367, 0x78B0, 0x576F, - 0x7812, 0x9739, 0x6279, 0x62AB, 0x5288, 0x7435, 0x6BD7, 0, -plane c6 -at 0x40 - 0x826A, 0x826B, 0x826C, 0x826D, 0x8271, 0x8275, 0x8276, 0x8277, - 0x8278, 0x827B, 0x827C, 0x8280, 0x8281, 0x8283, 0x8285, 0x8286, - 0x8287, 0x8289, 0x828C, 0x8290, 0x8293, 0x8294, 0x8295, 0x8296, - 0x829A, 0x829B, 0x829E, 0x82A0, 0x82A2, 0x82A3, 0x82A7, 0x82B2, - 0x82B5, 0x82B6, 0x82BA, 0x82BB, 0x82BC, 0x82BF, 0x82C0, 0x82C2, - 0x82C3, 0x82C5, 0x82C6, 0x82C9, 0x82D0, 0x82D6, 0x82D9, 0x82DA, - 0x82DD, 0x82E2, 0x82E7, 0x82E8, 0x82E9, 0x82EA, 0x82EC, 0x82ED, - 0x82EE, 0x82F0, 0x82F2, 0x82F3, 0x82F5, 0x82F6, 0x82F8, 0, - 0x82FA, 0x82FC, 0x82FD, 0x82FE, 0x82FF, 0x8300, 0x830A, 0x830B, - 0x830D, 0x8310, 0x8312, 0x8313, 0x8316, 0x8318, 0x8319, 0x831D, - 0x831E, 0x831F, 0x8320, 0x8321, 0x8322, 0x8323, 0x8324, 0x8325, - 0x8326, 0x8329, 0x832A, 0x832E, 0x8330, 0x8332, 0x8337, 0x833B, - 0x833D, 0x5564, 0x813E, 0x75B2, 0x76AE, 0x5339, 0x75DE, 0x50FB, - 0x5C41, 0x8B6C, 0x7BC7, 0x504F, 0x7247, 0x9A97, 0x98D8, 0x6F02, - 0x74E2, 0x7968, 0x6487, 0x77A5, 0x62FC, 0x9891, 0x8D2B, 0x54C1, - 0x8058, 0x4E52, 0x576A, 0x82F9, 0x840D, 0x5E73, 0x51ED, 0x74F6, - 0x8BC4, 0x5C4F, 0x5761, 0x6CFC, 0x9887, 0x5A46, 0x7834, 0x9B44, - 0x8FEB, 0x7C95, 0x5256, 0x6251, 0x94FA, 0x4EC6, 0x8386, 0x8461, - 0x83E9, 0x84B2, 0x57D4, 0x6734, 0x5703, 0x666E, 0x6D66, 0x8C31, - 0x66DD, 0x7011, 0x671F, 0x6B3A, 0x6816, 0x621A, 0x59BB, 0x4E03, - 0x51C4, 0x6F06, 0x67D2, 0x6C8F, 0x5176, 0x68CB, 0x5947, 0x6B67, - 0x7566, 0x5D0E, 0x8110, 0x9F50, 0x65D7, 0x7948, 0x7941, 0x9A91, - 0x8D77, 0x5C82, 0x4E5E, 0x4F01, 0x542F, 0x5951, 0x780C, 0x5668, - 0x6C14, 0x8FC4, 0x5F03, 0x6C7D, 0x6CE3, 0x8BAB, 0x6390, 0, -plane c7 -at 0x40 - 0x833E, 0x833F, 0x8341, 0x8342, 0x8344, 0x8345, 0x8348, 0x834A, - 0x834B, 0x834C, 0x834D, 0x834E, 0x8353, 0x8355, 0x8356, 0x8357, - 0x8358, 0x8359, 0x835D, 0x8362, 0x8370, 0x8371, 0x8372, 0x8373, - 0x8374, 0x8375, 0x8376, 0x8379, 0x837A, 0x837E, 0x837F, 0x8380, - 0x8381, 0x8382, 0x8383, 0x8384, 0x8387, 0x8388, 0x838A, 0x838B, - 0x838C, 0x838D, 0x838F, 0x8390, 0x8391, 0x8394, 0x8395, 0x8396, - 0x8397, 0x8399, 0x839A, 0x839D, 0x839F, 0x83A1, 0x83A2, 0x83A3, - 0x83A4, 0x83A5, 0x83A6, 0x83A7, 0x83AC, 0x83AD, 0x83AE, 0, - 0x83AF, 0x83B5, 0x83BB, 0x83BE, 0x83BF, 0x83C2, 0x83C3, 0x83C4, - 0x83C6, 0x83C8, 0x83C9, 0x83CB, 0x83CD, 0x83CE, 0x83D0, 0x83D1, - 0x83D2, 0x83D3, 0x83D5, 0x83D7, 0x83D9, 0x83DA, 0x83DB, 0x83DE, - 0x83E2, 0x83E3, 0x83E4, 0x83E6, 0x83E7, 0x83E8, 0x83EB, 0x83EC, - 0x83ED, 0x6070, 0x6D3D, 0x7275, 0x6266, 0x948E, 0x94C5, 0x5343, - 0x8FC1, 0x7B7E, 0x4EDF, 0x8C26, 0x4E7E, 0x9ED4, 0x94B1, 0x94B3, - 0x524D, 0x6F5C, 0x9063, 0x6D45, 0x8C34, 0x5811, 0x5D4C, 0x6B20, - 0x6B49, 0x67AA, 0x545B, 0x8154, 0x7F8C, 0x5899, 0x8537, 0x5F3A, - 0x62A2, 0x6A47, 0x9539, 0x6572, 0x6084, 0x6865, 0x77A7, 0x4E54, - 0x4FA8, 0x5DE7, 0x9798, 0x64AC, 0x7FD8, 0x5CED, 0x4FCF, 0x7A8D, - 0x5207, 0x8304, 0x4E14, 0x602F, 0x7A83, 0x94A6, 0x4FB5, 0x4EB2, - 0x79E6, 0x7434, 0x52E4, 0x82B9, 0x64D2, 0x79BD, 0x5BDD, 0x6C81, - 0x9752, 0x8F7B, 0x6C22, 0x503E, 0x537F, 0x6E05, 0x64CE, 0x6674, - 0x6C30, 0x60C5, 0x9877, 0x8BF7, 0x5E86, 0x743C, 0x7A77, 0x79CB, - 0x4E18, 0x90B1, 0x7403, 0x6C42, 0x56DA, 0x914B, 0x6CC5, 0x8D8B, - 0x533A, 0x86C6, 0x66F2, 0x8EAF, 0x5C48, 0x9A71, 0x6E20, 0, -plane c8 -at 0x40 - 0x83EE, 0x83EF, 0x83F3, 0x83F4, 0x83F5, 0x83F6, 0x83F7, 0x83FA, - 0x83FB, 0x83FC, 0x83FE, 0x83FF, 0x8400, 0x8402, 0x8405, 0x8407, - 0x8408, 0x8409, 0x840A, 0x8410, 0x8412, 0x8413, 0x8414, 0x8415, - 0x8416, 0x8417, 0x8419, 0x841A, 0x841B, 0x841E, 0x841F, 0x8420, - 0x8421, 0x8422, 0x8423, 0x8429, 0x842A, 0x842B, 0x842C, 0x842D, - 0x842E, 0x842F, 0x8430, 0x8432, 0x8433, 0x8434, 0x8435, 0x8436, - 0x8437, 0x8439, 0x843A, 0x843B, 0x843E, 0x843F, 0x8440, 0x8441, - 0x8442, 0x8443, 0x8444, 0x8445, 0x8447, 0x8448, 0x8449, 0, - 0x844A, 0x844B, 0x844C, 0x844D, 0x844E, 0x844F, 0x8450, 0x8452, - 0x8453, 0x8454, 0x8455, 0x8456, 0x8458, 0x845D, 0x845E, 0x845F, - 0x8460, 0x8462, 0x8464, 0x8465, 0x8466, 0x8467, 0x8468, 0x846A, - 0x846E, 0x846F, 0x8470, 0x8472, 0x8474, 0x8477, 0x8479, 0x847B, - 0x847C, 0x53D6, 0x5A36, 0x9F8B, 0x8DA3, 0x53BB, 0x5708, 0x98A7, - 0x6743, 0x919B, 0x6CC9, 0x5168, 0x75CA, 0x62F3, 0x72AC, 0x5238, - 0x529D, 0x7F3A, 0x7094, 0x7638, 0x5374, 0x9E4A, 0x69B7, 0x786E, - 0x96C0, 0x88D9, 0x7FA4, 0x7136, 0x71C3, 0x5189, 0x67D3, 0x74E4, - 0x58E4, 0x6518, 0x56B7, 0x8BA9, 0x9976, 0x6270, 0x7ED5, 0x60F9, - 0x70ED, 0x58EC, 0x4EC1, 0x4EBA, 0x5FCD, 0x97E7, 0x4EFB, 0x8BA4, - 0x5203, 0x598A, 0x7EAB, 0x6254, 0x4ECD, 0x65E5, 0x620E, 0x8338, - 0x84C9, 0x8363, 0x878D, 0x7194, 0x6EB6, 0x5BB9, 0x7ED2, 0x5197, - 0x63C9, 0x67D4, 0x8089, 0x8339, 0x8815, 0x5112, 0x5B7A, 0x5982, - 0x8FB1, 0x4E73, 0x6C5D, 0x5165, 0x8925, 0x8F6F, 0x962E, 0x854A, - 0x745E, 0x9510, 0x95F0, 0x6DA6, 0x82E5, 0x5F31, 0x6492, 0x6D12, - 0x8428, 0x816E, 0x9CC3, 0x585E, 0x8D5B, 0x4E09, 0x53C1, 0, -plane c9 -at 0x40 - 0x847D, 0x847E, 0x847F, 0x8480, 0x8481, 0x8483, 0x8484, 0x8485, - 0x8486, 0x848A, 0x848D, 0x848F, 0x8490, 0x8491, 0x8492, 0x8493, - 0x8494, 0x8495, 0x8496, 0x8498, 0x849A, 0x849B, 0x849D, 0x849E, - 0x849F, 0x84A0, 0x84A2, 0x84A3, 0x84A4, 0x84A5, 0x84A6, 0x84A7, - 0x84A8, 0x84A9, 0x84AA, 0x84AB, 0x84AC, 0x84AD, 0x84AE, 0x84B0, - 0x84B1, 0x84B3, 0x84B5, 0x84B6, 0x84B7, 0x84BB, 0x84BC, 0x84BE, - 0x84C0, 0x84C2, 0x84C3, 0x84C5, 0x84C6, 0x84C7, 0x84C8, 0x84CB, - 0x84CC, 0x84CE, 0x84CF, 0x84D2, 0x84D4, 0x84D5, 0x84D7, 0, - 0x84D8, 0x84D9, 0x84DA, 0x84DB, 0x84DC, 0x84DE, 0x84E1, 0x84E2, - 0x84E4, 0x84E7, 0x84E8, 0x84E9, 0x84EA, 0x84EB, 0x84ED, 0x84EE, - 0x84EF, 0x84F1, 0x84F2, 0x84F3, 0x84F4, 0x84F5, 0x84F6, 0x84F7, - 0x84F8, 0x84F9, 0x84FA, 0x84FB, 0x84FD, 0x84FE, 0x8500, 0x8501, - 0x8502, 0x4F1E, 0x6563, 0x6851, 0x55D3, 0x4E27, 0x6414, 0x9A9A, - 0x626B, 0x5AC2, 0x745F, 0x8272, 0x6DA9, 0x68EE, 0x50E7, 0x838E, - 0x7802, 0x6740, 0x5239, 0x6C99, 0x7EB1, 0x50BB, 0x5565, 0x715E, - 0x7B5B, 0x6652, 0x73CA, 0x82EB, 0x6749, 0x5C71, 0x5220, 0x717D, - 0x886B, 0x95EA, 0x9655, 0x64C5, 0x8D61, 0x81B3, 0x5584, 0x6C55, - 0x6247, 0x7F2E, 0x5892, 0x4F24, 0x5546, 0x8D4F, 0x664C, 0x4E0A, - 0x5C1A, 0x88F3, 0x68A2, 0x634E, 0x7A0D, 0x70E7, 0x828D, 0x52FA, - 0x97F6, 0x5C11, 0x54E8, 0x90B5, 0x7ECD, 0x5962, 0x8D4A, 0x86C7, - 0x820C, 0x820D, 0x8D66, 0x6444, 0x5C04, 0x6151, 0x6D89, 0x793E, - 0x8BBE, 0x7837, 0x7533, 0x547B, 0x4F38, 0x8EAB, 0x6DF1, 0x5A20, - 0x7EC5, 0x795E, 0x6C88, 0x5BA1, 0x5A76, 0x751A, 0x80BE, 0x614E, - 0x6E17, 0x58F0, 0x751F, 0x7525, 0x7272, 0x5347, 0x7EF3, 0, -plane ca -at 0x40 - 0x8503, 0x8504, 0x8505, 0x8506, 0x8507, 0x8508, 0x8509, 0x850A, - 0x850B, 0x850D, 0x850E, 0x850F, 0x8510, 0x8512, 0x8514, 0x8515, - 0x8516, 0x8518, 0x8519, 0x851B, 0x851C, 0x851D, 0x851E, 0x8520, - 0x8522, 0x8523, 0x8524, 0x8525, 0x8526, 0x8527, 0x8528, 0x8529, - 0x852A, 0x852D, 0x852E, 0x852F, 0x8530, 0x8531, 0x8532, 0x8533, - 0x8534, 0x8535, 0x8536, 0x853E, 0x853F, 0x8540, 0x8541, 0x8542, - 0x8544, 0x8545, 0x8546, 0x8547, 0x854B, 0x854C, 0x854D, 0x854E, - 0x854F, 0x8550, 0x8551, 0x8552, 0x8553, 0x8554, 0x8555, 0, - 0x8557, 0x8558, 0x855A, 0x855B, 0x855C, 0x855D, 0x855F, 0x8560, - 0x8561, 0x8562, 0x8563, 0x8565, 0x8566, 0x8567, 0x8569, 0x856A, - 0x856B, 0x856C, 0x856D, 0x856E, 0x856F, 0x8570, 0x8571, 0x8573, - 0x8575, 0x8576, 0x8577, 0x8578, 0x857C, 0x857D, 0x857F, 0x8580, - 0x8581, 0x7701, 0x76DB, 0x5269, 0x80DC, 0x5723, 0x5E08, 0x5931, - 0x72EE, 0x65BD, 0x6E7F, 0x8BD7, 0x5C38, 0x8671, 0x5341, 0x77F3, - 0x62FE, 0x65F6, 0x4EC0, 0x98DF, 0x8680, 0x5B9E, 0x8BC6, 0x53F2, - 0x77E2, 0x4F7F, 0x5C4E, 0x9A76, 0x59CB, 0x5F0F, 0x793A, 0x58EB, - 0x4E16, 0x67FF, 0x4E8B, 0x62ED, 0x8A93, 0x901D, 0x52BF, 0x662F, - 0x55DC, 0x566C, 0x9002, 0x4ED5, 0x4F8D, 0x91CA, 0x9970, 0x6C0F, - 0x5E02, 0x6043, 0x5BA4, 0x89C6, 0x8BD5, 0x6536, 0x624B, 0x9996, - 0x5B88, 0x5BFF, 0x6388, 0x552E, 0x53D7, 0x7626, 0x517D, 0x852C, - 0x67A2, 0x68B3, 0x6B8A, 0x6292, 0x8F93, 0x53D4, 0x8212, 0x6DD1, - 0x758F, 0x4E66, 0x8D4E, 0x5B70, 0x719F, 0x85AF, 0x6691, 0x66D9, - 0x7F72, 0x8700, 0x9ECD, 0x9F20, 0x5C5E, 0x672F, 0x8FF0, 0x6811, - 0x675F, 0x620D, 0x7AD6, 0x5885, 0x5EB6, 0x6570, 0x6F31, 0, -plane cb -at 0x40 - 0x8582, 0x8583, 0x8586, 0x8588, 0x8589, 0x858A, 0x858B, 0x858C, - 0x858D, 0x858E, 0x8590, 0x8591, 0x8592, 0x8593, 0x8594, 0x8595, - 0x8596, 0x8597, 0x8598, 0x8599, 0x859A, 0x859D, 0x859E, 0x859F, - 0x85A0, 0x85A1, 0x85A2, 0x85A3, 0x85A5, 0x85A6, 0x85A7, 0x85A9, - 0x85AB, 0x85AC, 0x85AD, 0x85B1, 0x85B2, 0x85B3, 0x85B4, 0x85B5, - 0x85B6, 0x85B8, 0x85BA, 0x85BB, 0x85BC, 0x85BD, 0x85BE, 0x85BF, - 0x85C0, 0x85C2, 0x85C3, 0x85C4, 0x85C5, 0x85C6, 0x85C7, 0x85C8, - 0x85CA, 0x85CB, 0x85CC, 0x85CD, 0x85CE, 0x85D1, 0x85D2, 0, - 0x85D4, 0x85D6, 0x85D7, 0x85D8, 0x85D9, 0x85DA, 0x85DB, 0x85DD, - 0x85DE, 0x85DF, 0x85E0, 0x85E1, 0x85E2, 0x85E3, 0x85E5, 0x85E6, - 0x85E7, 0x85E8, 0x85EA, 0x85EB, 0x85EC, 0x85ED, 0x85EE, 0x85EF, - 0x85F0, 0x85F1, 0x85F2, 0x85F3, 0x85F4, 0x85F5, 0x85F6, 0x85F7, - 0x85F8, 0x6055, 0x5237, 0x800D, 0x6454, 0x8870, 0x7529, 0x5E05, - 0x6813, 0x62F4, 0x971C, 0x53CC, 0x723D, 0x8C01, 0x6C34, 0x7761, - 0x7A0E, 0x542E, 0x77AC, 0x987A, 0x821C, 0x8BF4, 0x7855, 0x6714, - 0x70C1, 0x65AF, 0x6495, 0x5636, 0x601D, 0x79C1, 0x53F8, 0x4E1D, - 0x6B7B, 0x8086, 0x5BFA, 0x55E3, 0x56DB, 0x4F3A, 0x4F3C, 0x9972, - 0x5DF3, 0x677E, 0x8038, 0x6002, 0x9882, 0x9001, 0x5B8B, 0x8BBC, - 0x8BF5, 0x641C, 0x8258, 0x64DE, 0x55FD, 0x82CF, 0x9165, 0x4FD7, - 0x7D20, 0x901F, 0x7C9F, 0x50F3, 0x5851, 0x6EAF, 0x5BBF, 0x8BC9, - 0x8083, 0x9178, 0x849C, 0x7B97, 0x867D, 0x968B, 0x968F, 0x7EE5, - 0x9AD3, 0x788E, 0x5C81, 0x7A57, 0x9042, 0x96A7, 0x795F, 0x5B59, - 0x635F, 0x7B0B, 0x84D1, 0x68AD, 0x5506, 0x7F29, 0x7410, 0x7D22, - 0x9501, 0x6240, 0x584C, 0x4ED6, 0x5B83, 0x5979, 0x5854, 0, -plane cc -at 0x40 - 0x85F9, 0x85FA, 0x85FC, 0x85FD, 0x85FE, 0x8600, 0x8601, 0x8602, - 0x8603, 0x8604, 0x8606, 0x8607, 0x8608, 0x8609, 0x860A, 0x860B, - 0x860C, 0x860D, 0x860E, 0x860F, 0x8610, 0x8612, 0x8613, 0x8614, - 0x8615, 0x8617, 0x8618, 0x8619, 0x861A, 0x861B, 0x861C, 0x861D, - 0x861E, 0x861F, 0x8620, 0x8621, 0x8622, 0x8623, 0x8624, 0x8625, - 0x8626, 0x8628, 0x862A, 0x862B, 0x862C, 0x862D, 0x862E, 0x862F, - 0x8630, 0x8631, 0x8632, 0x8633, 0x8634, 0x8635, 0x8636, 0x8637, - 0x8639, 0x863A, 0x863B, 0x863D, 0x863E, 0x863F, 0x8640, 0, - 0x8641, 0x8642, 0x8643, 0x8644, 0x8645, 0x8646, 0x8647, 0x8648, - 0x8649, 0x864A, 0x864B, 0x864C, 0x8652, 0x8653, 0x8655, 0x8656, - 0x8657, 0x8658, 0x8659, 0x865B, 0x865C, 0x865D, 0x865F, 0x8660, - 0x8661, 0x8663, 0x8664, 0x8665, 0x8666, 0x8667, 0x8668, 0x8669, - 0x866A, 0x736D, 0x631E, 0x8E4B, 0x8E0F, 0x80CE, 0x82D4, 0x62AC, - 0x53F0, 0x6CF0, 0x915E, 0x592A, 0x6001, 0x6C70, 0x574D, 0x644A, - 0x8D2A, 0x762B, 0x6EE9, 0x575B, 0x6A80, 0x75F0, 0x6F6D, 0x8C2D, - 0x8C08, 0x5766, 0x6BEF, 0x8892, 0x78B3, 0x63A2, 0x53F9, 0x70AD, - 0x6C64, 0x5858, 0x642A, 0x5802, 0x68E0, 0x819B, 0x5510, 0x7CD6, - 0x5018, 0x8EBA, 0x6DCC, 0x8D9F, 0x70EB, 0x638F, 0x6D9B, 0x6ED4, - 0x7EE6, 0x8404, 0x6843, 0x9003, 0x6DD8, 0x9676, 0x8BA8, 0x5957, - 0x7279, 0x85E4, 0x817E, 0x75BC, 0x8A8A, 0x68AF, 0x5254, 0x8E22, - 0x9511, 0x63D0, 0x9898, 0x8E44, 0x557C, 0x4F53, 0x66FF, 0x568F, - 0x60D5, 0x6D95, 0x5243, 0x5C49, 0x5929, 0x6DFB, 0x586B, 0x7530, - 0x751C, 0x606C, 0x8214, 0x8146, 0x6311, 0x6761, 0x8FE2, 0x773A, - 0x8DF3, 0x8D34, 0x94C1, 0x5E16, 0x5385, 0x542C, 0x70C3, 0, -plane cd -at 0x40 - 0x866D, 0x866F, 0x8670, 0x8672, 0x8673, 0x8674, 0x8675, 0x8676, - 0x8677, 0x8678, 0x8683, 0x8684, 0x8685, 0x8686, 0x8687, 0x8688, - 0x8689, 0x868E, 0x868F, 0x8690, 0x8691, 0x8692, 0x8694, 0x8696, - 0x8697, 0x8698, 0x8699, 0x869A, 0x869B, 0x869E, 0x869F, 0x86A0, - 0x86A1, 0x86A2, 0x86A5, 0x86A6, 0x86AB, 0x86AD, 0x86AE, 0x86B2, - 0x86B3, 0x86B7, 0x86B8, 0x86B9, 0x86BB, 0x86BC, 0x86BD, 0x86BE, - 0x86BF, 0x86C1, 0x86C2, 0x86C3, 0x86C5, 0x86C8, 0x86CC, 0x86CD, - 0x86D2, 0x86D3, 0x86D5, 0x86D6, 0x86D7, 0x86DA, 0x86DC, 0, - 0x86DD, 0x86E0, 0x86E1, 0x86E2, 0x86E3, 0x86E5, 0x86E6, 0x86E7, - 0x86E8, 0x86EA, 0x86EB, 0x86EC, 0x86EF, 0x86F5, 0x86F6, 0x86F7, - 0x86FA, 0x86FB, 0x86FC, 0x86FD, 0x86FF, 0x8701, 0x8704, 0x8705, - 0x8706, 0x870B, 0x870C, 0x870E, 0x870F, 0x8710, 0x8711, 0x8714, - 0x8716, 0x6C40, 0x5EF7, 0x505C, 0x4EAD, 0x5EAD, 0x633A, 0x8247, - 0x901A, 0x6850, 0x916E, 0x77B3, 0x540C, 0x94DC, 0x5F64, 0x7AE5, - 0x6876, 0x6345, 0x7B52, 0x7EDF, 0x75DB, 0x5077, 0x6295, 0x5934, - 0x900F, 0x51F8, 0x79C3, 0x7A81, 0x56FE, 0x5F92, 0x9014, 0x6D82, - 0x5C60, 0x571F, 0x5410, 0x5154, 0x6E4D, 0x56E2, 0x63A8, 0x9893, - 0x817F, 0x8715, 0x892A, 0x9000, 0x541E, 0x5C6F, 0x81C0, 0x62D6, - 0x6258, 0x8131, 0x9E35, 0x9640, 0x9A6E, 0x9A7C, 0x692D, 0x59A5, - 0x62D3, 0x553E, 0x6316, 0x54C7, 0x86D9, 0x6D3C, 0x5A03, 0x74E6, - 0x889C, 0x6B6A, 0x5916, 0x8C4C, 0x5F2F, 0x6E7E, 0x73A9, 0x987D, - 0x4E38, 0x70F7, 0x5B8C, 0x7897, 0x633D, 0x665A, 0x7696, 0x60CB, - 0x5B9B, 0x5A49, 0x4E07, 0x8155, 0x6C6A, 0x738B, 0x4EA1, 0x6789, - 0x7F51, 0x5F80, 0x65FA, 0x671B, 0x5FD8, 0x5984, 0x5A01, 0, -plane ce -at 0x40 - 0x8719, 0x871B, 0x871D, 0x871F, 0x8720, 0x8724, 0x8726, 0x8727, - 0x8728, 0x872A, 0x872B, 0x872C, 0x872D, 0x872F, 0x8730, 0x8732, - 0x8733, 0x8735, 0x8736, 0x8738, 0x8739, 0x873A, 0x873C, 0x873D, - 0x8740, 0x8741, 0x8742, 0x8743, 0x8744, 0x8745, 0x8746, 0x874A, - 0x874B, 0x874D, 0x874F, 0x8750, 0x8751, 0x8752, 0x8754, 0x8755, - 0x8756, 0x8758, 0x875A, 0x875B, 0x875C, 0x875D, 0x875E, 0x875F, - 0x8761, 0x8762, 0x8766, 0x8767, 0x8768, 0x8769, 0x876A, 0x876B, - 0x876C, 0x876D, 0x876F, 0x8771, 0x8772, 0x8773, 0x8775, 0, - 0x8777, 0x8778, 0x8779, 0x877A, 0x877F, 0x8780, 0x8781, 0x8784, - 0x8786, 0x8787, 0x8789, 0x878A, 0x878C, 0x878E, 0x878F, 0x8790, - 0x8791, 0x8792, 0x8794, 0x8795, 0x8796, 0x8798, 0x8799, 0x879A, - 0x879B, 0x879C, 0x879D, 0x879E, 0x87A0, 0x87A1, 0x87A2, 0x87A3, - 0x87A4, 0x5DCD, 0x5FAE, 0x5371, 0x97E6, 0x8FDD, 0x6845, 0x56F4, - 0x552F, 0x60DF, 0x4E3A, 0x6F4D, 0x7EF4, 0x82C7, 0x840E, 0x59D4, - 0x4F1F, 0x4F2A, 0x5C3E, 0x7EAC, 0x672A, 0x851A, 0x5473, 0x754F, - 0x80C3, 0x5582, 0x9B4F, 0x4F4D, 0x6E2D, 0x8C13, 0x5C09, 0x6170, - 0x536B, 0x761F, 0x6E29, 0x868A, 0x6587, 0x95FB, 0x7EB9, 0x543B, - 0x7A33, 0x7D0A, 0x95EE, 0x55E1, 0x7FC1, 0x74EE, 0x631D, 0x8717, - 0x6DA1, 0x7A9D, 0x6211, 0x65A1, 0x5367, 0x63E1, 0x6C83, 0x5DEB, - 0x545C, 0x94A8, 0x4E4C, 0x6C61, 0x8BEC, 0x5C4B, 0x65E0, 0x829C, - 0x68A7, 0x543E, 0x5434, 0x6BCB, 0x6B66, 0x4E94, 0x6342, 0x5348, - 0x821E, 0x4F0D, 0x4FAE, 0x575E, 0x620A, 0x96FE, 0x6664, 0x7269, - 0x52FF, 0x52A1, 0x609F, 0x8BEF, 0x6614, 0x7199, 0x6790, 0x897F, - 0x7852, 0x77FD, 0x6670, 0x563B, 0x5438, 0x9521, 0x727A, 0, -plane cf -at 0x40 - 0x87A5, 0x87A6, 0x87A7, 0x87A9, 0x87AA, 0x87AE, 0x87B0, 0x87B1, - 0x87B2, 0x87B4, 0x87B6, 0x87B7, 0x87B8, 0x87B9, 0x87BB, 0x87BC, - 0x87BE, 0x87BF, 0x87C1, 0x87C2, 0x87C3, 0x87C4, 0x87C5, 0x87C7, - 0x87C8, 0x87C9, 0x87CC, 0x87CD, 0x87CE, 0x87CF, 0x87D0, 0x87D4, - 0x87D5, 0x87D6, 0x87D7, 0x87D8, 0x87D9, 0x87DA, 0x87DC, 0x87DD, - 0x87DE, 0x87DF, 0x87E1, 0x87E2, 0x87E3, 0x87E4, 0x87E6, 0x87E7, - 0x87E8, 0x87E9, 0x87EB, 0x87EC, 0x87ED, 0x87EF, 0x87F0, 0x87F1, - 0x87F2, 0x87F3, 0x87F4, 0x87F5, 0x87F6, 0x87F7, 0x87F8, 0, - 0x87FA, 0x87FB, 0x87FC, 0x87FD, 0x87FF, 0x8800, 0x8801, 0x8802, - 0x8804, 0x8805, 0x8806, 0x8807, 0x8808, 0x8809, 0x880B, 0x880C, - 0x880D, 0x880E, 0x880F, 0x8810, 0x8811, 0x8812, 0x8814, 0x8817, - 0x8818, 0x8819, 0x881A, 0x881C, 0x881D, 0x881E, 0x881F, 0x8820, - 0x8823, 0x7A00, 0x606F, 0x5E0C, 0x6089, 0x819D, 0x5915, 0x60DC, - 0x7184, 0x70EF, 0x6EAA, 0x6C50, 0x7280, 0x6A84, 0x88AD, 0x5E2D, - 0x4E60, 0x5AB3, 0x559C, 0x94E3, 0x6D17, 0x7CFB, 0x9699, 0x620F, - 0x7EC6, 0x778E, 0x867E, 0x5323, 0x971E, 0x8F96, 0x6687, 0x5CE1, - 0x4FA0, 0x72ED, 0x4E0B, 0x53A6, 0x590F, 0x5413, 0x6380, 0x9528, - 0x5148, 0x4ED9, 0x9C9C, 0x7EA4, 0x54B8, 0x8D24, 0x8854, 0x8237, - 0x95F2, 0x6D8E, 0x5F26, 0x5ACC, 0x663E, 0x9669, 0x73B0, 0x732E, - 0x53BF, 0x817A, 0x9985, 0x7FA1, 0x5BAA, 0x9677, 0x9650, 0x7EBF, - 0x76F8, 0x53A2, 0x9576, 0x9999, 0x7BB1, 0x8944, 0x6E58, 0x4E61, - 0x7FD4, 0x7965, 0x8BE6, 0x60F3, 0x54CD, 0x4EAB, 0x9879, 0x5DF7, - 0x6A61, 0x50CF, 0x5411, 0x8C61, 0x8427, 0x785D, 0x9704, 0x524A, - 0x54EE, 0x56A3, 0x9500, 0x6D88, 0x5BB5, 0x6DC6, 0x6653, 0, -plane d0 -at 0x40 - 0x8824, 0x8825, 0x8826, 0x8827, 0x8828, 0x8829, 0x882A, 0x882B, - 0x882C, 0x882D, 0x882E, 0x882F, 0x8830, 0x8831, 0x8833, 0x8834, - 0x8835, 0x8836, 0x8837, 0x8838, 0x883A, 0x883B, 0x883D, 0x883E, - 0x883F, 0x8841, 0x8842, 0x8843, 0x8846, 0x8847, 0x8848, 0x8849, - 0x884A, 0x884B, 0x884E, 0x884F, 0x8850, 0x8851, 0x8852, 0x8853, - 0x8855, 0x8856, 0x8858, 0x885A, 0x885B, 0x885C, 0x885D, 0x885E, - 0x885F, 0x8860, 0x8866, 0x8867, 0x886A, 0x886D, 0x886F, 0x8871, - 0x8873, 0x8874, 0x8875, 0x8876, 0x8878, 0x8879, 0x887A, 0, - 0x887B, 0x887C, 0x8880, 0x8883, 0x8886, 0x8887, 0x8889, 0x888A, - 0x888C, 0x888E, 0x888F, 0x8890, 0x8891, 0x8893, 0x8894, 0x8895, - 0x8897, 0x8898, 0x8899, 0x889A, 0x889B, 0x889D, 0x889E, 0x889F, - 0x88A0, 0x88A1, 0x88A3, 0x88A5, 0x88A6, 0x88A7, 0x88A8, 0x88A9, - 0x88AA, 0x5C0F, 0x5B5D, 0x6821, 0x8096, 0x5578, 0x7B11, 0x6548, - 0x6954, 0x4E9B, 0x6B47, 0x874E, 0x978B, 0x534F, 0x631F, 0x643A, - 0x90AA, 0x659C, 0x80C1, 0x8C10, 0x5199, 0x68B0, 0x5378, 0x87F9, - 0x61C8, 0x6CC4, 0x6CFB, 0x8C22, 0x5C51, 0x85AA, 0x82AF, 0x950C, - 0x6B23, 0x8F9B, 0x65B0, 0x5FFB, 0x5FC3, 0x4FE1, 0x8845, 0x661F, - 0x8165, 0x7329, 0x60FA, 0x5174, 0x5211, 0x578B, 0x5F62, 0x90A2, - 0x884C, 0x9192, 0x5E78, 0x674F, 0x6027, 0x59D3, 0x5144, 0x51F6, - 0x80F8, 0x5308, 0x6C79, 0x96C4, 0x718A, 0x4F11, 0x4FEE, 0x7F9E, - 0x673D, 0x55C5, 0x9508, 0x79C0, 0x8896, 0x7EE3, 0x589F, 0x620C, - 0x9700, 0x865A, 0x5618, 0x987B, 0x5F90, 0x8BB8, 0x84C4, 0x9157, - 0x53D9, 0x65ED, 0x5E8F, 0x755C, 0x6064, 0x7D6E, 0x5A7F, 0x7EEA, - 0x7EED, 0x8F69, 0x55A7, 0x5BA3, 0x60AC, 0x65CB, 0x7384, 0, -plane d1 -at 0x40 - 0x88AC, 0x88AE, 0x88AF, 0x88B0, 0x88B2, 0x88B3, 0x88B4, 0x88B5, - 0x88B6, 0x88B8, 0x88B9, 0x88BA, 0x88BB, 0x88BD, 0x88BE, 0x88BF, - 0x88C0, 0x88C3, 0x88C4, 0x88C7, 0x88C8, 0x88CA, 0x88CB, 0x88CC, - 0x88CD, 0x88CF, 0x88D0, 0x88D1, 0x88D3, 0x88D6, 0x88D7, 0x88DA, - 0x88DB, 0x88DC, 0x88DD, 0x88DE, 0x88E0, 0x88E1, 0x88E6, 0x88E7, - 0x88E9, 0x88EA, 0x88EB, 0x88EC, 0x88ED, 0x88EE, 0x88EF, 0x88F2, - 0x88F5, 0x88F6, 0x88F7, 0x88FA, 0x88FB, 0x88FD, 0x88FF, 0x8900, - 0x8901, 0x8903, 0x8904, 0x8905, 0x8906, 0x8907, 0x8908, 0, - 0x8909, 0x890B, 0x890C, 0x890D, 0x890E, 0x890F, 0x8911, 0x8914, - 0x8915, 0x8916, 0x8917, 0x8918, 0x891C, 0x891D, 0x891E, 0x891F, - 0x8920, 0x8922, 0x8923, 0x8924, 0x8926, 0x8927, 0x8928, 0x8929, - 0x892C, 0x892D, 0x892E, 0x892F, 0x8931, 0x8932, 0x8933, 0x8935, - 0x8937, 0x9009, 0x7663, 0x7729, 0x7EDA, 0x9774, 0x859B, 0x5B66, - 0x7A74, 0x96EA, 0x8840, 0x52CB, 0x718F, 0x5FAA, 0x65EC, 0x8BE2, - 0x5BFB, 0x9A6F, 0x5DE1, 0x6B89, 0x6C5B, 0x8BAD, 0x8BAF, 0x900A, - 0x8FC5, 0x538B, 0x62BC, 0x9E26, 0x9E2D, 0x5440, 0x4E2B, 0x82BD, - 0x7259, 0x869C, 0x5D16, 0x8859, 0x6DAF, 0x96C5, 0x54D1, 0x4E9A, - 0x8BB6, 0x7109, 0x54BD, 0x9609, 0x70DF, 0x6DF9, 0x76D0, 0x4E25, - 0x7814, 0x8712, 0x5CA9, 0x5EF6, 0x8A00, 0x989C, 0x960E, 0x708E, - 0x6CBF, 0x5944, 0x63A9, 0x773C, 0x884D, 0x6F14, 0x8273, 0x5830, - 0x71D5, 0x538C, 0x781A, 0x96C1, 0x5501, 0x5F66, 0x7130, 0x5BB4, - 0x8C1A, 0x9A8C, 0x6B83, 0x592E, 0x9E2F, 0x79E7, 0x6768, 0x626C, - 0x4F6F, 0x75A1, 0x7F8A, 0x6D0B, 0x9633, 0x6C27, 0x4EF0, 0x75D2, - 0x517B, 0x6837, 0x6F3E, 0x9080, 0x8170, 0x5996, 0x7476, 0, -plane d2 -at 0x40 - 0x8938, 0x8939, 0x893A, 0x893B, 0x893C, 0x893D, 0x893E, 0x893F, - 0x8940, 0x8942, 0x8943, 0x8945, 0x8946, 0x8947, 0x8948, 0x8949, - 0x894A, 0x894B, 0x894C, 0x894D, 0x894E, 0x894F, 0x8950, 0x8951, - 0x8952, 0x8953, 0x8954, 0x8955, 0x8956, 0x8957, 0x8958, 0x8959, - 0x895A, 0x895B, 0x895C, 0x895D, 0x8960, 0x8961, 0x8962, 0x8963, - 0x8964, 0x8965, 0x8967, 0x8968, 0x8969, 0x896A, 0x896B, 0x896C, - 0x896D, 0x896E, 0x896F, 0x8970, 0x8971, 0x8972, 0x8973, 0x8974, - 0x8975, 0x8976, 0x8977, 0x8978, 0x8979, 0x897A, 0x897C, 0, - 0x897D, 0x897E, 0x8980, 0x8982, 0x8984, 0x8985, 0x8987, 0x8988, - 0x8989, 0x898A, 0x898B, 0x898C, 0x898D, 0x898E, 0x898F, 0x8990, - 0x8991, 0x8992, 0x8993, 0x8994, 0x8995, 0x8996, 0x8997, 0x8998, - 0x8999, 0x899A, 0x899B, 0x899C, 0x899D, 0x899E, 0x899F, 0x89A0, - 0x89A1, 0x6447, 0x5C27, 0x9065, 0x7A91, 0x8C23, 0x59DA, 0x54AC, - 0x8200, 0x836F, 0x8981, 0x8000, 0x6930, 0x564E, 0x8036, 0x7237, - 0x91CE, 0x51B6, 0x4E5F, 0x9875, 0x6396, 0x4E1A, 0x53F6, 0x66F3, - 0x814B, 0x591C, 0x6DB2, 0x4E00, 0x58F9, 0x533B, 0x63D6, 0x94F1, - 0x4F9D, 0x4F0A, 0x8863, 0x9890, 0x5937, 0x9057, 0x79FB, 0x4EEA, - 0x80F0, 0x7591, 0x6C82, 0x5B9C, 0x59E8, 0x5F5D, 0x6905, 0x8681, - 0x501A, 0x5DF2, 0x4E59, 0x77E3, 0x4EE5, 0x827A, 0x6291, 0x6613, - 0x9091, 0x5C79, 0x4EBF, 0x5F79, 0x81C6, 0x9038, 0x8084, 0x75AB, - 0x4EA6, 0x88D4, 0x610F, 0x6BC5, 0x5FC6, 0x4E49, 0x76CA, 0x6EA2, - 0x8BE3, 0x8BAE, 0x8C0A, 0x8BD1, 0x5F02, 0x7FFC, 0x7FCC, 0x7ECE, - 0x8335, 0x836B, 0x56E0, 0x6BB7, 0x97F3, 0x9634, 0x59FB, 0x541F, - 0x94F6, 0x6DEB, 0x5BC5, 0x996E, 0x5C39, 0x5F15, 0x9690, 0, -plane d3 -at 0x40 - 0x89A2, 0x89A3, 0x89A4, 0x89A5, 0x89A6, 0x89A7, 0x89A8, 0x89A9, - 0x89AA, 0x89AB, 0x89AC, 0x89AD, 0x89AE, 0x89AF, 0x89B0, 0x89B1, - 0x89B2, 0x89B3, 0x89B4, 0x89B5, 0x89B6, 0x89B7, 0x89B8, 0x89B9, - 0x89BA, 0x89BB, 0x89BC, 0x89BD, 0x89BE, 0x89BF, 0x89C0, 0x89C3, - 0x89CD, 0x89D3, 0x89D4, 0x89D5, 0x89D7, 0x89D8, 0x89D9, 0x89DB, - 0x89DD, 0x89DF, 0x89E0, 0x89E1, 0x89E2, 0x89E4, 0x89E7, 0x89E8, - 0x89E9, 0x89EA, 0x89EC, 0x89ED, 0x89EE, 0x89F0, 0x89F1, 0x89F2, - 0x89F4, 0x89F5, 0x89F6, 0x89F7, 0x89F8, 0x89F9, 0x89FA, 0, - 0x89FB, 0x89FC, 0x89FD, 0x89FE, 0x89FF, 0x8A01, 0x8A02, 0x8A03, - 0x8A04, 0x8A05, 0x8A06, 0x8A08, 0x8A09, 0x8A0A, 0x8A0B, 0x8A0C, - 0x8A0D, 0x8A0E, 0x8A0F, 0x8A10, 0x8A11, 0x8A12, 0x8A13, 0x8A14, - 0x8A15, 0x8A16, 0x8A17, 0x8A18, 0x8A19, 0x8A1A, 0x8A1B, 0x8A1C, - 0x8A1D, 0x5370, 0x82F1, 0x6A31, 0x5A74, 0x9E70, 0x5E94, 0x7F28, - 0x83B9, 0x8424, 0x8425, 0x8367, 0x8747, 0x8FCE, 0x8D62, 0x76C8, - 0x5F71, 0x9896, 0x786C, 0x6620, 0x54DF, 0x62E5, 0x4F63, 0x81C3, - 0x75C8, 0x5EB8, 0x96CD, 0x8E0A, 0x86F9, 0x548F, 0x6CF3, 0x6D8C, - 0x6C38, 0x607F, 0x52C7, 0x7528, 0x5E7D, 0x4F18, 0x60A0, 0x5FE7, - 0x5C24, 0x7531, 0x90AE, 0x94C0, 0x72B9, 0x6CB9, 0x6E38, 0x9149, - 0x6709, 0x53CB, 0x53F3, 0x4F51, 0x91C9, 0x8BF1, 0x53C8, 0x5E7C, - 0x8FC2, 0x6DE4, 0x4E8E, 0x76C2, 0x6986, 0x865E, 0x611A, 0x8206, - 0x4F59, 0x4FDE, 0x903E, 0x9C7C, 0x6109, 0x6E1D, 0x6E14, 0x9685, - 0x4E88, 0x5A31, 0x96E8, 0x4E0E, 0x5C7F, 0x79B9, 0x5B87, 0x8BED, - 0x7FBD, 0x7389, 0x57DF, 0x828B, 0x90C1, 0x5401, 0x9047, 0x55BB, - 0x5CEA, 0x5FA1, 0x6108, 0x6B32, 0x72F1, 0x80B2, 0x8A89, 0, -plane d4 -at 0x40 - 0x8A1E, 0x8A1F, 0x8A20, 0x8A21, 0x8A22, 0x8A23, 0x8A24, 0x8A25, - 0x8A26, 0x8A27, 0x8A28, 0x8A29, 0x8A2A, 0x8A2B, 0x8A2C, 0x8A2D, - 0x8A2E, 0x8A2F, 0x8A30, 0x8A31, 0x8A32, 0x8A33, 0x8A34, 0x8A35, - 0x8A36, 0x8A37, 0x8A38, 0x8A39, 0x8A3A, 0x8A3B, 0x8A3C, 0x8A3D, - 0x8A3F, 0x8A40, 0x8A41, 0x8A42, 0x8A43, 0x8A44, 0x8A45, 0x8A46, - 0x8A47, 0x8A49, 0x8A4A, 0x8A4B, 0x8A4C, 0x8A4D, 0x8A4E, 0x8A4F, - 0x8A50, 0x8A51, 0x8A52, 0x8A53, 0x8A54, 0x8A55, 0x8A56, 0x8A57, - 0x8A58, 0x8A59, 0x8A5A, 0x8A5B, 0x8A5C, 0x8A5D, 0x8A5E, 0, - 0x8A5F, 0x8A60, 0x8A61, 0x8A62, 0x8A63, 0x8A64, 0x8A65, 0x8A66, - 0x8A67, 0x8A68, 0x8A69, 0x8A6A, 0x8A6B, 0x8A6C, 0x8A6D, 0x8A6E, - 0x8A6F, 0x8A70, 0x8A71, 0x8A72, 0x8A73, 0x8A74, 0x8A75, 0x8A76, - 0x8A77, 0x8A78, 0x8A7A, 0x8A7B, 0x8A7C, 0x8A7D, 0x8A7E, 0x8A7F, - 0x8A80, 0x6D74, 0x5BD3, 0x88D5, 0x9884, 0x8C6B, 0x9A6D, 0x9E33, - 0x6E0A, 0x51A4, 0x5143, 0x57A3, 0x8881, 0x539F, 0x63F4, 0x8F95, - 0x56ED, 0x5458, 0x5706, 0x733F, 0x6E90, 0x7F18, 0x8FDC, 0x82D1, - 0x613F, 0x6028, 0x9662, 0x66F0, 0x7EA6, 0x8D8A, 0x8DC3, 0x94A5, - 0x5CB3, 0x7CA4, 0x6708, 0x60A6, 0x9605, 0x8018, 0x4E91, 0x90E7, - 0x5300, 0x9668, 0x5141, 0x8FD0, 0x8574, 0x915D, 0x6655, 0x97F5, - 0x5B55, 0x531D, 0x7838, 0x6742, 0x683D, 0x54C9, 0x707E, 0x5BB0, - 0x8F7D, 0x518D, 0x5728, 0x54B1, 0x6512, 0x6682, 0x8D5E, 0x8D43, - 0x810F, 0x846C, 0x906D, 0x7CDF, 0x51FF, 0x85FB, 0x67A3, 0x65E9, - 0x6FA1, 0x86A4, 0x8E81, 0x566A, 0x9020, 0x7682, 0x7076, 0x71E5, - 0x8D23, 0x62E9, 0x5219, 0x6CFD, 0x8D3C, 0x600E, 0x589E, 0x618E, - 0x66FE, 0x8D60, 0x624E, 0x55B3, 0x6E23, 0x672D, 0x8F67, 0, -plane d5 -at 0x40 - 0x8A81, 0x8A82, 0x8A83, 0x8A84, 0x8A85, 0x8A86, 0x8A87, 0x8A88, - 0x8A8B, 0x8A8C, 0x8A8D, 0x8A8E, 0x8A8F, 0x8A90, 0x8A91, 0x8A92, - 0x8A94, 0x8A95, 0x8A96, 0x8A97, 0x8A98, 0x8A99, 0x8A9A, 0x8A9B, - 0x8A9C, 0x8A9D, 0x8A9E, 0x8A9F, 0x8AA0, 0x8AA1, 0x8AA2, 0x8AA3, - 0x8AA4, 0x8AA5, 0x8AA6, 0x8AA7, 0x8AA8, 0x8AA9, 0x8AAA, 0x8AAB, - 0x8AAC, 0x8AAD, 0x8AAE, 0x8AAF, 0x8AB0, 0x8AB1, 0x8AB2, 0x8AB3, - 0x8AB4, 0x8AB5, 0x8AB6, 0x8AB7, 0x8AB8, 0x8AB9, 0x8ABA, 0x8ABB, - 0x8ABC, 0x8ABD, 0x8ABE, 0x8ABF, 0x8AC0, 0x8AC1, 0x8AC2, 0, - 0x8AC3, 0x8AC4, 0x8AC5, 0x8AC6, 0x8AC7, 0x8AC8, 0x8AC9, 0x8ACA, - 0x8ACB, 0x8ACC, 0x8ACD, 0x8ACE, 0x8ACF, 0x8AD0, 0x8AD1, 0x8AD2, - 0x8AD3, 0x8AD4, 0x8AD5, 0x8AD6, 0x8AD7, 0x8AD8, 0x8AD9, 0x8ADA, - 0x8ADB, 0x8ADC, 0x8ADD, 0x8ADE, 0x8ADF, 0x8AE0, 0x8AE1, 0x8AE2, - 0x8AE3, 0x94E1, 0x95F8, 0x7728, 0x6805, 0x69A8, 0x548B, 0x4E4D, - 0x70B8, 0x8BC8, 0x6458, 0x658B, 0x5B85, 0x7A84, 0x503A, 0x5BE8, - 0x77BB, 0x6BE1, 0x8A79, 0x7C98, 0x6CBE, 0x76CF, 0x65A9, 0x8F97, - 0x5D2D, 0x5C55, 0x8638, 0x6808, 0x5360, 0x6218, 0x7AD9, 0x6E5B, - 0x7EFD, 0x6A1F, 0x7AE0, 0x5F70, 0x6F33, 0x5F20, 0x638C, 0x6DA8, - 0x6756, 0x4E08, 0x5E10, 0x8D26, 0x4ED7, 0x80C0, 0x7634, 0x969C, - 0x62DB, 0x662D, 0x627E, 0x6CBC, 0x8D75, 0x7167, 0x7F69, 0x5146, - 0x8087, 0x53EC, 0x906E, 0x6298, 0x54F2, 0x86F0, 0x8F99, 0x8005, - 0x9517, 0x8517, 0x8FD9, 0x6D59, 0x73CD, 0x659F, 0x771F, 0x7504, - 0x7827, 0x81FB, 0x8D1E, 0x9488, 0x4FA6, 0x6795, 0x75B9, 0x8BCA, - 0x9707, 0x632F, 0x9547, 0x9635, 0x84B8, 0x6323, 0x7741, 0x5F81, - 0x72F0, 0x4E89, 0x6014, 0x6574, 0x62EF, 0x6B63, 0x653F, 0, -plane d6 -at 0x40 - 0x8AE4, 0x8AE5, 0x8AE6, 0x8AE7, 0x8AE8, 0x8AE9, 0x8AEA, 0x8AEB, - 0x8AEC, 0x8AED, 0x8AEE, 0x8AEF, 0x8AF0, 0x8AF1, 0x8AF2, 0x8AF3, - 0x8AF4, 0x8AF5, 0x8AF6, 0x8AF7, 0x8AF8, 0x8AF9, 0x8AFA, 0x8AFB, - 0x8AFC, 0x8AFD, 0x8AFE, 0x8AFF, 0x8B00, 0x8B01, 0x8B02, 0x8B03, - 0x8B04, 0x8B05, 0x8B06, 0x8B08, 0x8B09, 0x8B0A, 0x8B0B, 0x8B0C, - 0x8B0D, 0x8B0E, 0x8B0F, 0x8B10, 0x8B11, 0x8B12, 0x8B13, 0x8B14, - 0x8B15, 0x8B16, 0x8B17, 0x8B18, 0x8B19, 0x8B1A, 0x8B1B, 0x8B1C, - 0x8B1D, 0x8B1E, 0x8B1F, 0x8B20, 0x8B21, 0x8B22, 0x8B23, 0, - 0x8B24, 0x8B25, 0x8B27, 0x8B28, 0x8B29, 0x8B2A, 0x8B2B, 0x8B2C, - 0x8B2D, 0x8B2E, 0x8B2F, 0x8B30, 0x8B31, 0x8B32, 0x8B33, 0x8B34, - 0x8B35, 0x8B36, 0x8B37, 0x8B38, 0x8B39, 0x8B3A, 0x8B3B, 0x8B3C, - 0x8B3D, 0x8B3E, 0x8B3F, 0x8B40, 0x8B41, 0x8B42, 0x8B43, 0x8B44, - 0x8B45, 0x5E27, 0x75C7, 0x90D1, 0x8BC1, 0x829D, 0x679D, 0x652F, - 0x5431, 0x8718, 0x77E5, 0x80A2, 0x8102, 0x6C41, 0x4E4B, 0x7EC7, - 0x804C, 0x76F4, 0x690D, 0x6B96, 0x6267, 0x503C, 0x4F84, 0x5740, - 0x6307, 0x6B62, 0x8DBE, 0x53EA, 0x65E8, 0x7EB8, 0x5FD7, 0x631A, - 0x63B7, 0x81F3, 0x81F4, 0x7F6E, 0x5E1C, 0x5CD9, 0x5236, 0x667A, - 0x79E9, 0x7A1A, 0x8D28, 0x7099, 0x75D4, 0x6EDE, 0x6CBB, 0x7A92, - 0x4E2D, 0x76C5, 0x5FE0, 0x949F, 0x8877, 0x7EC8, 0x79CD, 0x80BF, - 0x91CD, 0x4EF2, 0x4F17, 0x821F, 0x5468, 0x5DDE, 0x6D32, 0x8BCC, - 0x7CA5, 0x8F74, 0x8098, 0x5E1A, 0x5492, 0x76B1, 0x5B99, 0x663C, - 0x9AA4, 0x73E0, 0x682A, 0x86DB, 0x6731, 0x732A, 0x8BF8, 0x8BDB, - 0x9010, 0x7AF9, 0x70DB, 0x716E, 0x62C4, 0x77A9, 0x5631, 0x4E3B, - 0x8457, 0x67F1, 0x52A9, 0x86C0, 0x8D2E, 0x94F8, 0x7B51, 0, -plane d7 -at 0x40 - 0x8B46, 0x8B47, 0x8B48, 0x8B49, 0x8B4A, 0x8B4B, 0x8B4C, 0x8B4D, - 0x8B4E, 0x8B4F, 0x8B50, 0x8B51, 0x8B52, 0x8B53, 0x8B54, 0x8B55, - 0x8B56, 0x8B57, 0x8B58, 0x8B59, 0x8B5A, 0x8B5B, 0x8B5C, 0x8B5D, - 0x8B5E, 0x8B5F, 0x8B60, 0x8B61, 0x8B62, 0x8B63, 0x8B64, 0x8B65, - 0x8B67, 0x8B68, 0x8B69, 0x8B6A, 0x8B6B, 0x8B6D, 0x8B6E, 0x8B6F, - 0x8B70, 0x8B71, 0x8B72, 0x8B73, 0x8B74, 0x8B75, 0x8B76, 0x8B77, - 0x8B78, 0x8B79, 0x8B7A, 0x8B7B, 0x8B7C, 0x8B7D, 0x8B7E, 0x8B7F, - 0x8B80, 0x8B81, 0x8B82, 0x8B83, 0x8B84, 0x8B85, 0x8B86, 0, - 0x8B87, 0x8B88, 0x8B89, 0x8B8A, 0x8B8B, 0x8B8C, 0x8B8D, 0x8B8E, - 0x8B8F, 0x8B90, 0x8B91, 0x8B92, 0x8B93, 0x8B94, 0x8B95, 0x8B96, - 0x8B97, 0x8B98, 0x8B99, 0x8B9A, 0x8B9B, 0x8B9C, 0x8B9D, 0x8B9E, - 0x8B9F, 0x8BAC, 0x8BB1, 0x8BBB, 0x8BC7, 0x8BD0, 0x8BEA, 0x8C09, - 0x8C1E, 0x4F4F, 0x6CE8, 0x795D, 0x9A7B, 0x6293, 0x722A, 0x62FD, - 0x4E13, 0x7816, 0x8F6C, 0x64B0, 0x8D5A, 0x7BC6, 0x6869, 0x5E84, - 0x88C5, 0x5986, 0x649E, 0x58EE, 0x72B6, 0x690E, 0x9525, 0x8FFD, - 0x8D58, 0x5760, 0x7F00, 0x8C06, 0x51C6, 0x6349, 0x62D9, 0x5353, - 0x684C, 0x7422, 0x8301, 0x914C, 0x5544, 0x7740, 0x707C, 0x6D4A, - 0x5179, 0x54A8, 0x8D44, 0x59FF, 0x6ECB, 0x6DC4, 0x5B5C, 0x7D2B, - 0x4ED4, 0x7C7D, 0x6ED3, 0x5B50, 0x81EA, 0x6E0D, 0x5B57, 0x9B03, - 0x68D5, 0x8E2A, 0x5B97, 0x7EFC, 0x603B, 0x7EB5, 0x90B9, 0x8D70, - 0x594F, 0x63CD, 0x79DF, 0x8DB3, 0x5352, 0x65CF, 0x7956, 0x8BC5, - 0x963B, 0x7EC4, 0x94BB, 0x7E82, 0x5634, 0x9189, 0x6700, 0x7F6A, - 0x5C0A, 0x9075, 0x6628, 0x5DE6, 0x4F50, 0x67DE, 0x505A, 0x4F5C, - 0x5750, 0x5EA7, 0, 0, 0, 0, 0, 0, -plane d8 -at 0x40 - 0x8C38, 0x8C39, 0x8C3A, 0x8C3B, 0x8C3C, 0x8C3D, 0x8C3E, 0x8C3F, - 0x8C40, 0x8C42, 0x8C43, 0x8C44, 0x8C45, 0x8C48, 0x8C4A, 0x8C4B, - 0x8C4D, 0x8C4E, 0x8C4F, 0x8C50, 0x8C51, 0x8C52, 0x8C53, 0x8C54, - 0x8C56, 0x8C57, 0x8C58, 0x8C59, 0x8C5B, 0x8C5C, 0x8C5D, 0x8C5E, - 0x8C5F, 0x8C60, 0x8C63, 0x8C64, 0x8C65, 0x8C66, 0x8C67, 0x8C68, - 0x8C69, 0x8C6C, 0x8C6D, 0x8C6E, 0x8C6F, 0x8C70, 0x8C71, 0x8C72, - 0x8C74, 0x8C75, 0x8C76, 0x8C77, 0x8C7B, 0x8C7C, 0x8C7D, 0x8C7E, - 0x8C7F, 0x8C80, 0x8C81, 0x8C83, 0x8C84, 0x8C86, 0x8C87, 0, - 0x8C88, 0x8C8B, 0x8C8D, 0x8C8E, 0x8C8F, 0x8C90, 0x8C91, 0x8C92, - 0x8C93, 0x8C95, 0x8C96, 0x8C97, 0x8C99, 0x8C9A, 0x8C9B, 0x8C9C, - 0x8C9D, 0x8C9E, 0x8C9F, 0x8CA0, 0x8CA1, 0x8CA2, 0x8CA3, 0x8CA4, - 0x8CA5, 0x8CA6, 0x8CA7, 0x8CA8, 0x8CA9, 0x8CAA, 0x8CAB, 0x8CAC, - 0x8CAD, 0x4E8D, 0x4E0C, 0x5140, 0x4E10, 0x5EFF, 0x5345, 0x4E15, - 0x4E98, 0x4E1E, 0x9B32, 0x5B6C, 0x5669, 0x4E28, 0x79BA, 0x4E3F, - 0x5315, 0x4E47, 0x592D, 0x723B, 0x536E, 0x6C10, 0x56DF, 0x80E4, - 0x9997, 0x6BD3, 0x777E, 0x9F17, 0x4E36, 0x4E9F, 0x9F10, 0x4E5C, - 0x4E69, 0x4E93, 0x8288, 0x5B5B, 0x556C, 0x560F, 0x4EC4, 0x538D, - 0x539D, 0x53A3, 0x53A5, 0x53AE, 0x9765, 0x8D5D, 0x531A, 0x53F5, - 0x5326, 0x532E, 0x533E, 0x8D5C, 0x5366, 0x5363, 0x5202, 0x5208, - 0x520E, 0x522D, 0x5233, 0x523F, 0x5240, 0x524C, 0x525E, 0x5261, - 0x525C, 0x84AF, 0x527D, 0x5282, 0x5281, 0x5290, 0x5293, 0x5182, - 0x7F54, 0x4EBB, 0x4EC3, 0x4EC9, 0x4EC2, 0x4EE8, 0x4EE1, 0x4EEB, - 0x4EDE, 0x4F1B, 0x4EF3, 0x4F22, 0x4F64, 0x4EF5, 0x4F25, 0x4F27, - 0x4F09, 0x4F2B, 0x4F5E, 0x4F67, 0x6538, 0x4F5A, 0x4F5D, 0, -plane d9 -at 0x40 - 0x8CAE, 0x8CAF, 0x8CB0, 0x8CB1, 0x8CB2, 0x8CB3, 0x8CB4, 0x8CB5, - 0x8CB6, 0x8CB7, 0x8CB8, 0x8CB9, 0x8CBA, 0x8CBB, 0x8CBC, 0x8CBD, - 0x8CBE, 0x8CBF, 0x8CC0, 0x8CC1, 0x8CC2, 0x8CC3, 0x8CC4, 0x8CC5, - 0x8CC6, 0x8CC7, 0x8CC8, 0x8CC9, 0x8CCA, 0x8CCB, 0x8CCC, 0x8CCD, - 0x8CCE, 0x8CCF, 0x8CD0, 0x8CD1, 0x8CD2, 0x8CD3, 0x8CD4, 0x8CD5, - 0x8CD6, 0x8CD7, 0x8CD8, 0x8CD9, 0x8CDA, 0x8CDB, 0x8CDC, 0x8CDD, - 0x8CDE, 0x8CDF, 0x8CE0, 0x8CE1, 0x8CE2, 0x8CE3, 0x8CE4, 0x8CE5, - 0x8CE6, 0x8CE7, 0x8CE8, 0x8CE9, 0x8CEA, 0x8CEB, 0x8CEC, 0, - 0x8CED, 0x8CEE, 0x8CEF, 0x8CF0, 0x8CF1, 0x8CF2, 0x8CF3, 0x8CF4, - 0x8CF5, 0x8CF6, 0x8CF7, 0x8CF8, 0x8CF9, 0x8CFA, 0x8CFB, 0x8CFC, - 0x8CFD, 0x8CFE, 0x8CFF, 0x8D00, 0x8D01, 0x8D02, 0x8D03, 0x8D04, - 0x8D05, 0x8D06, 0x8D07, 0x8D08, 0x8D09, 0x8D0A, 0x8D0B, 0x8D0C, - 0x8D0D, 0x4F5F, 0x4F57, 0x4F32, 0x4F3D, 0x4F76, 0x4F74, 0x4F91, - 0x4F89, 0x4F83, 0x4F8F, 0x4F7E, 0x4F7B, 0x4FAA, 0x4F7C, 0x4FAC, - 0x4F94, 0x4FE6, 0x4FE8, 0x4FEA, 0x4FC5, 0x4FDA, 0x4FE3, 0x4FDC, - 0x4FD1, 0x4FDF, 0x4FF8, 0x5029, 0x504C, 0x4FF3, 0x502C, 0x500F, - 0x502E, 0x502D, 0x4FFE, 0x501C, 0x500C, 0x5025, 0x5028, 0x507E, - 0x5043, 0x5055, 0x5048, 0x504E, 0x506C, 0x507B, 0x50A5, 0x50A7, - 0x50A9, 0x50BA, 0x50D6, 0x5106, 0x50ED, 0x50EC, 0x50E6, 0x50EE, - 0x5107, 0x510B, 0x4EDD, 0x6C3D, 0x4F58, 0x4F65, 0x4FCE, 0x9FA0, - 0x6C46, 0x7C74, 0x516E, 0x5DFD, 0x9EC9, 0x9998, 0x5181, 0x5914, - 0x52F9, 0x530D, 0x8A07, 0x5310, 0x51EB, 0x5919, 0x5155, 0x4EA0, - 0x5156, 0x4EB3, 0x886E, 0x88A4, 0x4EB5, 0x8114, 0x88D2, 0x7980, - 0x5B34, 0x8803, 0x7FB8, 0x51AB, 0x51B1, 0x51BD, 0x51BC, 0, -plane da -at 0x40 - 0x8D0E, 0x8D0F, 0x8D10, 0x8D11, 0x8D12, 0x8D13, 0x8D14, 0x8D15, - 0x8D16, 0x8D17, 0x8D18, 0x8D19, 0x8D1A, 0x8D1B, 0x8D1C, 0x8D20, - 0x8D51, 0x8D52, 0x8D57, 0x8D5F, 0x8D65, 0x8D68, 0x8D69, 0x8D6A, - 0x8D6C, 0x8D6E, 0x8D6F, 0x8D71, 0x8D72, 0x8D78, 0x8D79, 0x8D7A, - 0x8D7B, 0x8D7C, 0x8D7D, 0x8D7E, 0x8D7F, 0x8D80, 0x8D82, 0x8D83, - 0x8D86, 0x8D87, 0x8D88, 0x8D89, 0x8D8C, 0x8D8D, 0x8D8E, 0x8D8F, - 0x8D90, 0x8D92, 0x8D93, 0x8D95, 0x8D96, 0x8D97, 0x8D98, 0x8D99, - 0x8D9A, 0x8D9B, 0x8D9C, 0x8D9D, 0x8D9E, 0x8DA0, 0x8DA1, 0, - 0x8DA2, 0x8DA4, 0x8DA5, 0x8DA6, 0x8DA7, 0x8DA8, 0x8DA9, 0x8DAA, - 0x8DAB, 0x8DAC, 0x8DAD, 0x8DAE, 0x8DAF, 0x8DB0, 0x8DB2, 0x8DB6, - 0x8DB7, 0x8DB9, 0x8DBB, 0x8DBD, 0x8DC0, 0x8DC1, 0x8DC2, 0x8DC5, - 0x8DC7, 0x8DC8, 0x8DC9, 0x8DCA, 0x8DCD, 0x8DD0, 0x8DD2, 0x8DD3, - 0x8DD4, 0x51C7, 0x5196, 0x51A2, 0x51A5, 0x8BA0, 0x8BA6, 0x8BA7, - 0x8BAA, 0x8BB4, 0x8BB5, 0x8BB7, 0x8BC2, 0x8BC3, 0x8BCB, 0x8BCF, - 0x8BCE, 0x8BD2, 0x8BD3, 0x8BD4, 0x8BD6, 0x8BD8, 0x8BD9, 0x8BDC, - 0x8BDF, 0x8BE0, 0x8BE4, 0x8BE8, 0x8BE9, 0x8BEE, 0x8BF0, 0x8BF3, - 0x8BF6, 0x8BF9, 0x8BFC, 0x8BFF, 0x8C00, 0x8C02, 0x8C04, 0x8C07, - 0x8C0C, 0x8C0F, 0x8C11, 0x8C12, 0x8C14, 0x8C15, 0x8C16, 0x8C19, - 0x8C1B, 0x8C18, 0x8C1D, 0x8C1F, 0x8C20, 0x8C21, 0x8C25, 0x8C27, - 0x8C2A, 0x8C2B, 0x8C2E, 0x8C2F, 0x8C32, 0x8C33, 0x8C35, 0x8C36, - 0x5369, 0x537A, 0x961D, 0x9622, 0x9621, 0x9631, 0x962A, 0x963D, - 0x963C, 0x9642, 0x9649, 0x9654, 0x965F, 0x9667, 0x966C, 0x9672, - 0x9674, 0x9688, 0x968D, 0x9697, 0x96B0, 0x9097, 0x909B, 0x909D, - 0x9099, 0x90AC, 0x90A1, 0x90B4, 0x90B3, 0x90B6, 0x90BA, 0, -plane db -at 0x40 - 0x8DD5, 0x8DD8, 0x8DD9, 0x8DDC, 0x8DE0, 0x8DE1, 0x8DE2, 0x8DE5, - 0x8DE6, 0x8DE7, 0x8DE9, 0x8DED, 0x8DEE, 0x8DF0, 0x8DF1, 0x8DF2, - 0x8DF4, 0x8DF6, 0x8DFC, 0x8DFE, 0x8DFF, 0x8E00, 0x8E01, 0x8E02, - 0x8E03, 0x8E04, 0x8E06, 0x8E07, 0x8E08, 0x8E0B, 0x8E0D, 0x8E0E, - 0x8E10, 0x8E11, 0x8E12, 0x8E13, 0x8E15, 0x8E16, 0x8E17, 0x8E18, - 0x8E19, 0x8E1A, 0x8E1B, 0x8E1C, 0x8E20, 0x8E21, 0x8E24, 0x8E25, - 0x8E26, 0x8E27, 0x8E28, 0x8E2B, 0x8E2D, 0x8E30, 0x8E32, 0x8E33, - 0x8E34, 0x8E36, 0x8E37, 0x8E38, 0x8E3B, 0x8E3C, 0x8E3E, 0, - 0x8E3F, 0x8E43, 0x8E45, 0x8E46, 0x8E4C, 0x8E4D, 0x8E4E, 0x8E4F, - 0x8E50, 0x8E53, 0x8E54, 0x8E55, 0x8E56, 0x8E57, 0x8E58, 0x8E5A, - 0x8E5B, 0x8E5C, 0x8E5D, 0x8E5E, 0x8E5F, 0x8E60, 0x8E61, 0x8E62, - 0x8E63, 0x8E64, 0x8E65, 0x8E67, 0x8E68, 0x8E6A, 0x8E6B, 0x8E6E, - 0x8E71, 0x90B8, 0x90B0, 0x90CF, 0x90C5, 0x90BE, 0x90D0, 0x90C4, - 0x90C7, 0x90D3, 0x90E6, 0x90E2, 0x90DC, 0x90D7, 0x90DB, 0x90EB, - 0x90EF, 0x90FE, 0x9104, 0x9122, 0x911E, 0x9123, 0x9131, 0x912F, - 0x9139, 0x9143, 0x9146, 0x520D, 0x5942, 0x52A2, 0x52AC, 0x52AD, - 0x52BE, 0x54FF, 0x52D0, 0x52D6, 0x52F0, 0x53DF, 0x71EE, 0x77CD, - 0x5EF4, 0x51F5, 0x51FC, 0x9B2F, 0x53B6, 0x5F01, 0x755A, 0x5DEF, - 0x574C, 0x57A9, 0x57A1, 0x587E, 0x58BC, 0x58C5, 0x58D1, 0x5729, - 0x572C, 0x572A, 0x5733, 0x5739, 0x572E, 0x572F, 0x575C, 0x573B, - 0x5742, 0x5769, 0x5785, 0x576B, 0x5786, 0x577C, 0x577B, 0x5768, - 0x576D, 0x5776, 0x5773, 0x57AD, 0x57A4, 0x578C, 0x57B2, 0x57CF, - 0x57A7, 0x57B4, 0x5793, 0x57A0, 0x57D5, 0x57D8, 0x57DA, 0x57D9, - 0x57D2, 0x57B8, 0x57F4, 0x57EF, 0x57F8, 0x57E4, 0x57DD, 0, -plane dc -at 0x40 - 0x8E73, 0x8E75, 0x8E77, 0x8E78, 0x8E79, 0x8E7A, 0x8E7B, 0x8E7D, - 0x8E7E, 0x8E80, 0x8E82, 0x8E83, 0x8E84, 0x8E86, 0x8E88, 0x8E89, - 0x8E8A, 0x8E8B, 0x8E8C, 0x8E8D, 0x8E8E, 0x8E91, 0x8E92, 0x8E93, - 0x8E95, 0x8E96, 0x8E97, 0x8E98, 0x8E99, 0x8E9A, 0x8E9B, 0x8E9D, - 0x8E9F, 0x8EA0, 0x8EA1, 0x8EA2, 0x8EA3, 0x8EA4, 0x8EA5, 0x8EA6, - 0x8EA7, 0x8EA8, 0x8EA9, 0x8EAA, 0x8EAD, 0x8EAE, 0x8EB0, 0x8EB1, - 0x8EB3, 0x8EB4, 0x8EB5, 0x8EB6, 0x8EB7, 0x8EB8, 0x8EB9, 0x8EBB, - 0x8EBC, 0x8EBD, 0x8EBE, 0x8EBF, 0x8EC0, 0x8EC1, 0x8EC2, 0, - 0x8EC3, 0x8EC4, 0x8EC5, 0x8EC6, 0x8EC7, 0x8EC8, 0x8EC9, 0x8ECA, - 0x8ECB, 0x8ECC, 0x8ECD, 0x8ECF, 0x8ED0, 0x8ED1, 0x8ED2, 0x8ED3, - 0x8ED4, 0x8ED5, 0x8ED6, 0x8ED7, 0x8ED8, 0x8ED9, 0x8EDA, 0x8EDB, - 0x8EDC, 0x8EDD, 0x8EDE, 0x8EDF, 0x8EE0, 0x8EE1, 0x8EE2, 0x8EE3, - 0x8EE4, 0x580B, 0x580D, 0x57FD, 0x57ED, 0x5800, 0x581E, 0x5819, - 0x5844, 0x5820, 0x5865, 0x586C, 0x5881, 0x5889, 0x589A, 0x5880, - 0x99A8, 0x9F19, 0x61FF, 0x8279, 0x827D, 0x827F, 0x828F, 0x828A, - 0x82A8, 0x8284, 0x828E, 0x8291, 0x8297, 0x8299, 0x82AB, 0x82B8, - 0x82BE, 0x82B0, 0x82C8, 0x82CA, 0x82E3, 0x8298, 0x82B7, 0x82AE, - 0x82CB, 0x82CC, 0x82C1, 0x82A9, 0x82B4, 0x82A1, 0x82AA, 0x829F, - 0x82C4, 0x82CE, 0x82A4, 0x82E1, 0x8309, 0x82F7, 0x82E4, 0x830F, - 0x8307, 0x82DC, 0x82F4, 0x82D2, 0x82D8, 0x830C, 0x82FB, 0x82D3, - 0x8311, 0x831A, 0x8306, 0x8314, 0x8315, 0x82E0, 0x82D5, 0x831C, - 0x8351, 0x835B, 0x835C, 0x8308, 0x8392, 0x833C, 0x8334, 0x8331, - 0x839B, 0x835E, 0x832F, 0x834F, 0x8347, 0x8343, 0x835F, 0x8340, - 0x8317, 0x8360, 0x832D, 0x833A, 0x8333, 0x8366, 0x8365, 0, -plane dd -at 0x40 - 0x8EE5, 0x8EE6, 0x8EE7, 0x8EE8, 0x8EE9, 0x8EEA, 0x8EEB, 0x8EEC, - 0x8EED, 0x8EEE, 0x8EEF, 0x8EF0, 0x8EF1, 0x8EF2, 0x8EF3, 0x8EF4, - 0x8EF5, 0x8EF6, 0x8EF7, 0x8EF8, 0x8EF9, 0x8EFA, 0x8EFB, 0x8EFC, - 0x8EFD, 0x8EFE, 0x8EFF, 0x8F00, 0x8F01, 0x8F02, 0x8F03, 0x8F04, - 0x8F05, 0x8F06, 0x8F07, 0x8F08, 0x8F09, 0x8F0A, 0x8F0B, 0x8F0C, - 0x8F0D, 0x8F0E, 0x8F0F, 0x8F10, 0x8F11, 0x8F12, 0x8F13, 0x8F14, - 0x8F15, 0x8F16, 0x8F17, 0x8F18, 0x8F19, 0x8F1A, 0x8F1B, 0x8F1C, - 0x8F1D, 0x8F1E, 0x8F1F, 0x8F20, 0x8F21, 0x8F22, 0x8F23, 0, - 0x8F24, 0x8F25, 0x8F26, 0x8F27, 0x8F28, 0x8F29, 0x8F2A, 0x8F2B, - 0x8F2C, 0x8F2D, 0x8F2E, 0x8F2F, 0x8F30, 0x8F31, 0x8F32, 0x8F33, - 0x8F34, 0x8F35, 0x8F36, 0x8F37, 0x8F38, 0x8F39, 0x8F3A, 0x8F3B, - 0x8F3C, 0x8F3D, 0x8F3E, 0x8F3F, 0x8F40, 0x8F41, 0x8F42, 0x8F43, - 0x8F44, 0x8368, 0x831B, 0x8369, 0x836C, 0x836A, 0x836D, 0x836E, - 0x83B0, 0x8378, 0x83B3, 0x83B4, 0x83A0, 0x83AA, 0x8393, 0x839C, - 0x8385, 0x837C, 0x83B6, 0x83A9, 0x837D, 0x83B8, 0x837B, 0x8398, - 0x839E, 0x83A8, 0x83BA, 0x83BC, 0x83C1, 0x8401, 0x83E5, 0x83D8, - 0x5807, 0x8418, 0x840B, 0x83DD, 0x83FD, 0x83D6, 0x841C, 0x8438, - 0x8411, 0x8406, 0x83D4, 0x83DF, 0x840F, 0x8403, 0x83F8, 0x83F9, - 0x83EA, 0x83C5, 0x83C0, 0x8426, 0x83F0, 0x83E1, 0x845C, 0x8451, - 0x845A, 0x8459, 0x8473, 0x8487, 0x8488, 0x847A, 0x8489, 0x8478, - 0x843C, 0x8446, 0x8469, 0x8476, 0x848C, 0x848E, 0x8431, 0x846D, - 0x84C1, 0x84CD, 0x84D0, 0x84E6, 0x84BD, 0x84D3, 0x84CA, 0x84BF, - 0x84BA, 0x84E0, 0x84A1, 0x84B9, 0x84B4, 0x8497, 0x84E5, 0x84E3, - 0x850C, 0x750D, 0x8538, 0x84F0, 0x8539, 0x851F, 0x853A, 0, -plane de -at 0x40 - 0x8F45, 0x8F46, 0x8F47, 0x8F48, 0x8F49, 0x8F4A, 0x8F4B, 0x8F4C, - 0x8F4D, 0x8F4E, 0x8F4F, 0x8F50, 0x8F51, 0x8F52, 0x8F53, 0x8F54, - 0x8F55, 0x8F56, 0x8F57, 0x8F58, 0x8F59, 0x8F5A, 0x8F5B, 0x8F5C, - 0x8F5D, 0x8F5E, 0x8F5F, 0x8F60, 0x8F61, 0x8F62, 0x8F63, 0x8F64, - 0x8F65, 0x8F6A, 0x8F80, 0x8F8C, 0x8F92, 0x8F9D, 0x8FA0, 0x8FA1, - 0x8FA2, 0x8FA4, 0x8FA5, 0x8FA6, 0x8FA7, 0x8FAA, 0x8FAC, 0x8FAD, - 0x8FAE, 0x8FAF, 0x8FB2, 0x8FB3, 0x8FB4, 0x8FB5, 0x8FB7, 0x8FB8, - 0x8FBA, 0x8FBB, 0x8FBC, 0x8FBF, 0x8FC0, 0x8FC3, 0x8FC6, 0, - 0x8FC9, 0x8FCA, 0x8FCB, 0x8FCC, 0x8FCD, 0x8FCF, 0x8FD2, 0x8FD6, - 0x8FD7, 0x8FDA, 0x8FE0, 0x8FE1, 0x8FE3, 0x8FE7, 0x8FEC, 0x8FEF, - 0x8FF1, 0x8FF2, 0x8FF4, 0x8FF5, 0x8FF6, 0x8FFA, 0x8FFB, 0x8FFC, - 0x8FFE, 0x8FFF, 0x9007, 0x9008, 0x900C, 0x900E, 0x9013, 0x9015, - 0x9018, 0x8556, 0x853B, 0x84FF, 0x84FC, 0x8559, 0x8548, 0x8568, - 0x8564, 0x855E, 0x857A, 0x77A2, 0x8543, 0x8572, 0x857B, 0x85A4, - 0x85A8, 0x8587, 0x858F, 0x8579, 0x85AE, 0x859C, 0x8585, 0x85B9, - 0x85B7, 0x85B0, 0x85D3, 0x85C1, 0x85DC, 0x85FF, 0x8627, 0x8605, - 0x8629, 0x8616, 0x863C, 0x5EFE, 0x5F08, 0x593C, 0x5941, 0x8037, - 0x5955, 0x595A, 0x5958, 0x530F, 0x5C22, 0x5C25, 0x5C2C, 0x5C34, - 0x624C, 0x626A, 0x629F, 0x62BB, 0x62CA, 0x62DA, 0x62D7, 0x62EE, - 0x6322, 0x62F6, 0x6339, 0x634B, 0x6343, 0x63AD, 0x63F6, 0x6371, - 0x637A, 0x638E, 0x63B4, 0x636D, 0x63AC, 0x638A, 0x6369, 0x63AE, - 0x63BC, 0x63F2, 0x63F8, 0x63E0, 0x63FF, 0x63C4, 0x63DE, 0x63CE, - 0x6452, 0x63C6, 0x63BE, 0x6445, 0x6441, 0x640B, 0x641B, 0x6420, - 0x640C, 0x6426, 0x6421, 0x645E, 0x6484, 0x646D, 0x6496, 0, -plane df -at 0x40 - 0x9019, 0x901C, 0x9023, 0x9024, 0x9025, 0x9027, 0x9028, 0x9029, - 0x902A, 0x902B, 0x902C, 0x9030, 0x9031, 0x9032, 0x9033, 0x9034, - 0x9037, 0x9039, 0x903A, 0x903D, 0x903F, 0x9040, 0x9043, 0x9045, - 0x9046, 0x9048, 0x9049, 0x904A, 0x904B, 0x904C, 0x904E, 0x9054, - 0x9055, 0x9056, 0x9059, 0x905A, 0x905C, 0x905D, 0x905E, 0x905F, - 0x9060, 0x9061, 0x9064, 0x9066, 0x9067, 0x9069, 0x906A, 0x906B, - 0x906C, 0x906F, 0x9070, 0x9071, 0x9072, 0x9073, 0x9076, 0x9077, - 0x9078, 0x9079, 0x907A, 0x907B, 0x907C, 0x907E, 0x9081, 0, - 0x9084, 0x9085, 0x9086, 0x9087, 0x9089, 0x908A, 0x908C, 0x908D, - 0x908E, 0x908F, 0x9090, 0x9092, 0x9094, 0x9096, 0x9098, 0x909A, - 0x909C, 0x909E, 0x909F, 0x90A0, 0x90A4, 0x90A5, 0x90A7, 0x90A8, - 0x90A9, 0x90AB, 0x90AD, 0x90B2, 0x90B7, 0x90BC, 0x90BD, 0x90BF, - 0x90C0, 0x647A, 0x64B7, 0x64B8, 0x6499, 0x64BA, 0x64C0, 0x64D0, - 0x64D7, 0x64E4, 0x64E2, 0x6509, 0x6525, 0x652E, 0x5F0B, 0x5FD2, - 0x7519, 0x5F11, 0x535F, 0x53F1, 0x53FD, 0x53E9, 0x53E8, 0x53FB, - 0x5412, 0x5416, 0x5406, 0x544B, 0x5452, 0x5453, 0x5454, 0x5456, - 0x5443, 0x5421, 0x5457, 0x5459, 0x5423, 0x5432, 0x5482, 0x5494, - 0x5477, 0x5471, 0x5464, 0x549A, 0x549B, 0x5484, 0x5476, 0x5466, - 0x549D, 0x54D0, 0x54AD, 0x54C2, 0x54B4, 0x54D2, 0x54A7, 0x54A6, - 0x54D3, 0x54D4, 0x5472, 0x54A3, 0x54D5, 0x54BB, 0x54BF, 0x54CC, - 0x54D9, 0x54DA, 0x54DC, 0x54A9, 0x54AA, 0x54A4, 0x54DD, 0x54CF, - 0x54DE, 0x551B, 0x54E7, 0x5520, 0x54FD, 0x5514, 0x54F3, 0x5522, - 0x5523, 0x550F, 0x5511, 0x5527, 0x552A, 0x5567, 0x558F, 0x55B5, - 0x5549, 0x556D, 0x5541, 0x5555, 0x553F, 0x5550, 0x553C, 0, -plane e0 -at 0x40 - 0x90C2, 0x90C3, 0x90C6, 0x90C8, 0x90C9, 0x90CB, 0x90CC, 0x90CD, - 0x90D2, 0x90D4, 0x90D5, 0x90D6, 0x90D8, 0x90D9, 0x90DA, 0x90DE, - 0x90DF, 0x90E0, 0x90E3, 0x90E4, 0x90E5, 0x90E9, 0x90EA, 0x90EC, - 0x90EE, 0x90F0, 0x90F1, 0x90F2, 0x90F3, 0x90F5, 0x90F6, 0x90F7, - 0x90F9, 0x90FA, 0x90FB, 0x90FC, 0x90FF, 0x9100, 0x9101, 0x9103, - 0x9105, 0x9106, 0x9107, 0x9108, 0x9109, 0x910A, 0x910B, 0x910C, - 0x910D, 0x910E, 0x910F, 0x9110, 0x9111, 0x9112, 0x9113, 0x9114, - 0x9115, 0x9116, 0x9117, 0x9118, 0x911A, 0x911B, 0x911C, 0, - 0x911D, 0x911F, 0x9120, 0x9121, 0x9124, 0x9125, 0x9126, 0x9127, - 0x9128, 0x9129, 0x912A, 0x912B, 0x912C, 0x912D, 0x912E, 0x9130, - 0x9132, 0x9133, 0x9134, 0x9135, 0x9136, 0x9137, 0x9138, 0x913A, - 0x913B, 0x913C, 0x913D, 0x913E, 0x913F, 0x9140, 0x9141, 0x9142, - 0x9144, 0x5537, 0x5556, 0x5575, 0x5576, 0x5577, 0x5533, 0x5530, - 0x555C, 0x558B, 0x55D2, 0x5583, 0x55B1, 0x55B9, 0x5588, 0x5581, - 0x559F, 0x557E, 0x55D6, 0x5591, 0x557B, 0x55DF, 0x55BD, 0x55BE, - 0x5594, 0x5599, 0x55EA, 0x55F7, 0x55C9, 0x561F, 0x55D1, 0x55EB, - 0x55EC, 0x55D4, 0x55E6, 0x55DD, 0x55C4, 0x55EF, 0x55E5, 0x55F2, - 0x55F3, 0x55CC, 0x55CD, 0x55E8, 0x55F5, 0x55E4, 0x8F94, 0x561E, - 0x5608, 0x560C, 0x5601, 0x5624, 0x5623, 0x55FE, 0x5600, 0x5627, - 0x562D, 0x5658, 0x5639, 0x5657, 0x562C, 0x564D, 0x5662, 0x5659, - 0x565C, 0x564C, 0x5654, 0x5686, 0x5664, 0x5671, 0x566B, 0x567B, - 0x567C, 0x5685, 0x5693, 0x56AF, 0x56D4, 0x56D7, 0x56DD, 0x56E1, - 0x56F5, 0x56EB, 0x56F9, 0x56FF, 0x5704, 0x570A, 0x5709, 0x571C, - 0x5E0F, 0x5E19, 0x5E14, 0x5E11, 0x5E31, 0x5E3B, 0x5E3C, 0, -plane e1 -at 0x40 - 0x9145, 0x9147, 0x9148, 0x9151, 0x9153, 0x9154, 0x9155, 0x9156, - 0x9158, 0x9159, 0x915B, 0x915C, 0x915F, 0x9160, 0x9166, 0x9167, - 0x9168, 0x916B, 0x916D, 0x9173, 0x917A, 0x917B, 0x917C, 0x9180, - 0x9181, 0x9182, 0x9183, 0x9184, 0x9186, 0x9188, 0x918A, 0x918E, - 0x918F, 0x9193, 0x9194, 0x9195, 0x9196, 0x9197, 0x9198, 0x9199, - 0x919C, 0x919D, 0x919E, 0x919F, 0x91A0, 0x91A1, 0x91A4, 0x91A5, - 0x91A6, 0x91A7, 0x91A8, 0x91A9, 0x91AB, 0x91AC, 0x91B0, 0x91B1, - 0x91B2, 0x91B3, 0x91B6, 0x91B7, 0x91B8, 0x91B9, 0x91BB, 0, - 0x91BC, 0x91BD, 0x91BE, 0x91BF, 0x91C0, 0x91C1, 0x91C2, 0x91C3, - 0x91C4, 0x91C5, 0x91C6, 0x91C8, 0x91CB, 0x91D0, 0x91D2, 0x91D3, - 0x91D4, 0x91D5, 0x91D6, 0x91D7, 0x91D8, 0x91D9, 0x91DA, 0x91DB, - 0x91DD, 0x91DE, 0x91DF, 0x91E0, 0x91E1, 0x91E2, 0x91E3, 0x91E4, - 0x91E5, 0x5E37, 0x5E44, 0x5E54, 0x5E5B, 0x5E5E, 0x5E61, 0x5C8C, - 0x5C7A, 0x5C8D, 0x5C90, 0x5C96, 0x5C88, 0x5C98, 0x5C99, 0x5C91, - 0x5C9A, 0x5C9C, 0x5CB5, 0x5CA2, 0x5CBD, 0x5CAC, 0x5CAB, 0x5CB1, - 0x5CA3, 0x5CC1, 0x5CB7, 0x5CC4, 0x5CD2, 0x5CE4, 0x5CCB, 0x5CE5, - 0x5D02, 0x5D03, 0x5D27, 0x5D26, 0x5D2E, 0x5D24, 0x5D1E, 0x5D06, - 0x5D1B, 0x5D58, 0x5D3E, 0x5D34, 0x5D3D, 0x5D6C, 0x5D5B, 0x5D6F, - 0x5D5D, 0x5D6B, 0x5D4B, 0x5D4A, 0x5D69, 0x5D74, 0x5D82, 0x5D99, - 0x5D9D, 0x8C73, 0x5DB7, 0x5DC5, 0x5F73, 0x5F77, 0x5F82, 0x5F87, - 0x5F89, 0x5F8C, 0x5F95, 0x5F99, 0x5F9C, 0x5FA8, 0x5FAD, 0x5FB5, - 0x5FBC, 0x8862, 0x5F61, 0x72AD, 0x72B0, 0x72B4, 0x72B7, 0x72B8, - 0x72C3, 0x72C1, 0x72CE, 0x72CD, 0x72D2, 0x72E8, 0x72EF, 0x72E9, - 0x72F2, 0x72F4, 0x72F7, 0x7301, 0x72F3, 0x7303, 0x72FA, 0, -plane e2 -at 0x40 - 0x91E6, 0x91E7, 0x91E8, 0x91E9, 0x91EA, 0x91EB, 0x91EC, 0x91ED, - 0x91EE, 0x91EF, 0x91F0, 0x91F1, 0x91F2, 0x91F3, 0x91F4, 0x91F5, - 0x91F6, 0x91F7, 0x91F8, 0x91F9, 0x91FA, 0x91FB, 0x91FC, 0x91FD, - 0x91FE, 0x91FF, 0x9200, 0x9201, 0x9202, 0x9203, 0x9204, 0x9205, - 0x9206, 0x9207, 0x9208, 0x9209, 0x920A, 0x920B, 0x920C, 0x920D, - 0x920E, 0x920F, 0x9210, 0x9211, 0x9212, 0x9213, 0x9214, 0x9215, - 0x9216, 0x9217, 0x9218, 0x9219, 0x921A, 0x921B, 0x921C, 0x921D, - 0x921E, 0x921F, 0x9220, 0x9221, 0x9222, 0x9223, 0x9224, 0, - 0x9225, 0x9226, 0x9227, 0x9228, 0x9229, 0x922A, 0x922B, 0x922C, - 0x922D, 0x922E, 0x922F, 0x9230, 0x9231, 0x9232, 0x9233, 0x9234, - 0x9235, 0x9236, 0x9237, 0x9238, 0x9239, 0x923A, 0x923B, 0x923C, - 0x923D, 0x923E, 0x923F, 0x9240, 0x9241, 0x9242, 0x9243, 0x9244, - 0x9245, 0x72FB, 0x7317, 0x7313, 0x7321, 0x730A, 0x731E, 0x731D, - 0x7315, 0x7322, 0x7339, 0x7325, 0x732C, 0x7338, 0x7331, 0x7350, - 0x734D, 0x7357, 0x7360, 0x736C, 0x736F, 0x737E, 0x821B, 0x5925, - 0x98E7, 0x5924, 0x5902, 0x9963, 0x9967, 0x9968, 0x9969, 0x996A, - 0x996B, 0x996C, 0x9974, 0x9977, 0x997D, 0x9980, 0x9984, 0x9987, - 0x998A, 0x998D, 0x9990, 0x9991, 0x9993, 0x9994, 0x9995, 0x5E80, - 0x5E91, 0x5E8B, 0x5E96, 0x5EA5, 0x5EA0, 0x5EB9, 0x5EB5, 0x5EBE, - 0x5EB3, 0x8D53, 0x5ED2, 0x5ED1, 0x5EDB, 0x5EE8, 0x5EEA, 0x81BA, - 0x5FC4, 0x5FC9, 0x5FD6, 0x5FCF, 0x6003, 0x5FEE, 0x6004, 0x5FE1, - 0x5FE4, 0x5FFE, 0x6005, 0x6006, 0x5FEA, 0x5FED, 0x5FF8, 0x6019, - 0x6035, 0x6026, 0x601B, 0x600F, 0x600D, 0x6029, 0x602B, 0x600A, - 0x603F, 0x6021, 0x6078, 0x6079, 0x607B, 0x607A, 0x6042, 0, -plane e3 -at 0x40 - 0x9246, 0x9247, 0x9248, 0x9249, 0x924A, 0x924B, 0x924C, 0x924D, - 0x924E, 0x924F, 0x9250, 0x9251, 0x9252, 0x9253, 0x9254, 0x9255, - 0x9256, 0x9257, 0x9258, 0x9259, 0x925A, 0x925B, 0x925C, 0x925D, - 0x925E, 0x925F, 0x9260, 0x9261, 0x9262, 0x9263, 0x9264, 0x9265, - 0x9266, 0x9267, 0x9268, 0x9269, 0x926A, 0x926B, 0x926C, 0x926D, - 0x926E, 0x926F, 0x9270, 0x9271, 0x9272, 0x9273, 0x9275, 0x9276, - 0x9277, 0x9278, 0x9279, 0x927A, 0x927B, 0x927C, 0x927D, 0x927E, - 0x927F, 0x9280, 0x9281, 0x9282, 0x9283, 0x9284, 0x9285, 0, - 0x9286, 0x9287, 0x9288, 0x9289, 0x928A, 0x928B, 0x928C, 0x928D, - 0x928F, 0x9290, 0x9291, 0x9292, 0x9293, 0x9294, 0x9295, 0x9296, - 0x9297, 0x9298, 0x9299, 0x929A, 0x929B, 0x929C, 0x929D, 0x929E, - 0x929F, 0x92A0, 0x92A1, 0x92A2, 0x92A3, 0x92A4, 0x92A5, 0x92A6, - 0x92A7, 0x606A, 0x607D, 0x6096, 0x609A, 0x60AD, 0x609D, 0x6083, - 0x6092, 0x608C, 0x609B, 0x60EC, 0x60BB, 0x60B1, 0x60DD, 0x60D8, - 0x60C6, 0x60DA, 0x60B4, 0x6120, 0x6126, 0x6115, 0x6123, 0x60F4, - 0x6100, 0x610E, 0x612B, 0x614A, 0x6175, 0x61AC, 0x6194, 0x61A7, - 0x61B7, 0x61D4, 0x61F5, 0x5FDD, 0x96B3, 0x95E9, 0x95EB, 0x95F1, - 0x95F3, 0x95F5, 0x95F6, 0x95FC, 0x95FE, 0x9603, 0x9604, 0x9606, - 0x9608, 0x960A, 0x960B, 0x960C, 0x960D, 0x960F, 0x9612, 0x9615, - 0x9616, 0x9617, 0x9619, 0x961A, 0x4E2C, 0x723F, 0x6215, 0x6C35, - 0x6C54, 0x6C5C, 0x6C4A, 0x6CA3, 0x6C85, 0x6C90, 0x6C94, 0x6C8C, - 0x6C68, 0x6C69, 0x6C74, 0x6C76, 0x6C86, 0x6CA9, 0x6CD0, 0x6CD4, - 0x6CAD, 0x6CF7, 0x6CF8, 0x6CF1, 0x6CD7, 0x6CB2, 0x6CE0, 0x6CD6, - 0x6CFA, 0x6CEB, 0x6CEE, 0x6CB1, 0x6CD3, 0x6CEF, 0x6CFE, 0, -plane e4 -at 0x40 - 0x92A8, 0x92A9, 0x92AA, 0x92AB, 0x92AC, 0x92AD, 0x92AF, 0x92B0, - 0x92B1, 0x92B2, 0x92B3, 0x92B4, 0x92B5, 0x92B6, 0x92B7, 0x92B8, - 0x92B9, 0x92BA, 0x92BB, 0x92BC, 0x92BD, 0x92BE, 0x92BF, 0x92C0, - 0x92C1, 0x92C2, 0x92C3, 0x92C4, 0x92C5, 0x92C6, 0x92C7, 0x92C9, - 0x92CA, 0x92CB, 0x92CC, 0x92CD, 0x92CE, 0x92CF, 0x92D0, 0x92D1, - 0x92D2, 0x92D3, 0x92D4, 0x92D5, 0x92D6, 0x92D7, 0x92D8, 0x92D9, - 0x92DA, 0x92DB, 0x92DC, 0x92DD, 0x92DE, 0x92DF, 0x92E0, 0x92E1, - 0x92E2, 0x92E3, 0x92E4, 0x92E5, 0x92E6, 0x92E7, 0x92E8, 0, - 0x92E9, 0x92EA, 0x92EB, 0x92EC, 0x92ED, 0x92EE, 0x92EF, 0x92F0, - 0x92F1, 0x92F2, 0x92F3, 0x92F4, 0x92F5, 0x92F6, 0x92F7, 0x92F8, - 0x92F9, 0x92FA, 0x92FB, 0x92FC, 0x92FD, 0x92FE, 0x92FF, 0x9300, - 0x9301, 0x9302, 0x9303, 0x9304, 0x9305, 0x9306, 0x9307, 0x9308, - 0x9309, 0x6D39, 0x6D27, 0x6D0C, 0x6D43, 0x6D48, 0x6D07, 0x6D04, - 0x6D19, 0x6D0E, 0x6D2B, 0x6D4D, 0x6D2E, 0x6D35, 0x6D1A, 0x6D4F, - 0x6D52, 0x6D54, 0x6D33, 0x6D91, 0x6D6F, 0x6D9E, 0x6DA0, 0x6D5E, - 0x6D93, 0x6D94, 0x6D5C, 0x6D60, 0x6D7C, 0x6D63, 0x6E1A, 0x6DC7, - 0x6DC5, 0x6DDE, 0x6E0E, 0x6DBF, 0x6DE0, 0x6E11, 0x6DE6, 0x6DDD, - 0x6DD9, 0x6E16, 0x6DAB, 0x6E0C, 0x6DAE, 0x6E2B, 0x6E6E, 0x6E4E, - 0x6E6B, 0x6EB2, 0x6E5F, 0x6E86, 0x6E53, 0x6E54, 0x6E32, 0x6E25, - 0x6E44, 0x6EDF, 0x6EB1, 0x6E98, 0x6EE0, 0x6F2D, 0x6EE2, 0x6EA5, - 0x6EA7, 0x6EBD, 0x6EBB, 0x6EB7, 0x6ED7, 0x6EB4, 0x6ECF, 0x6E8F, - 0x6EC2, 0x6E9F, 0x6F62, 0x6F46, 0x6F47, 0x6F24, 0x6F15, 0x6EF9, - 0x6F2F, 0x6F36, 0x6F4B, 0x6F74, 0x6F2A, 0x6F09, 0x6F29, 0x6F89, - 0x6F8D, 0x6F8C, 0x6F78, 0x6F72, 0x6F7C, 0x6F7A, 0x6FD1, 0, -plane e5 -at 0x40 - 0x930A, 0x930B, 0x930C, 0x930D, 0x930E, 0x930F, 0x9310, 0x9311, - 0x9312, 0x9313, 0x9314, 0x9315, 0x9316, 0x9317, 0x9318, 0x9319, - 0x931A, 0x931B, 0x931C, 0x931D, 0x931E, 0x931F, 0x9320, 0x9321, - 0x9322, 0x9323, 0x9324, 0x9325, 0x9326, 0x9327, 0x9328, 0x9329, - 0x932A, 0x932B, 0x932C, 0x932D, 0x932E, 0x932F, 0x9330, 0x9331, - 0x9332, 0x9333, 0x9334, 0x9335, 0x9336, 0x9337, 0x9338, 0x9339, - 0x933A, 0x933B, 0x933C, 0x933D, 0x933F, 0x9340, 0x9341, 0x9342, - 0x9343, 0x9344, 0x9345, 0x9346, 0x9347, 0x9348, 0x9349, 0, - 0x934A, 0x934B, 0x934C, 0x934D, 0x934E, 0x934F, 0x9350, 0x9351, - 0x9352, 0x9353, 0x9354, 0x9355, 0x9356, 0x9357, 0x9358, 0x9359, - 0x935A, 0x935B, 0x935C, 0x935D, 0x935E, 0x935F, 0x9360, 0x9361, - 0x9362, 0x9363, 0x9364, 0x9365, 0x9366, 0x9367, 0x9368, 0x9369, - 0x936B, 0x6FC9, 0x6FA7, 0x6FB9, 0x6FB6, 0x6FC2, 0x6FE1, 0x6FEE, - 0x6FDE, 0x6FE0, 0x6FEF, 0x701A, 0x7023, 0x701B, 0x7039, 0x7035, - 0x704F, 0x705E, 0x5B80, 0x5B84, 0x5B95, 0x5B93, 0x5BA5, 0x5BB8, - 0x752F, 0x9A9E, 0x6434, 0x5BE4, 0x5BEE, 0x8930, 0x5BF0, 0x8E47, - 0x8B07, 0x8FB6, 0x8FD3, 0x8FD5, 0x8FE5, 0x8FEE, 0x8FE4, 0x8FE9, - 0x8FE6, 0x8FF3, 0x8FE8, 0x9005, 0x9004, 0x900B, 0x9026, 0x9011, - 0x900D, 0x9016, 0x9021, 0x9035, 0x9036, 0x902D, 0x902F, 0x9044, - 0x9051, 0x9052, 0x9050, 0x9068, 0x9058, 0x9062, 0x905B, 0x66B9, - 0x9074, 0x907D, 0x9082, 0x9088, 0x9083, 0x908B, 0x5F50, 0x5F57, - 0x5F56, 0x5F58, 0x5C3B, 0x54AB, 0x5C50, 0x5C59, 0x5B71, 0x5C63, - 0x5C66, 0x7FBC, 0x5F2A, 0x5F29, 0x5F2D, 0x8274, 0x5F3C, 0x9B3B, - 0x5C6E, 0x5981, 0x5983, 0x598D, 0x59A9, 0x59AA, 0x59A3, 0, -plane e6 -at 0x40 - 0x936C, 0x936D, 0x936E, 0x936F, 0x9370, 0x9371, 0x9372, 0x9373, - 0x9374, 0x9375, 0x9376, 0x9377, 0x9378, 0x9379, 0x937A, 0x937B, - 0x937C, 0x937D, 0x937E, 0x937F, 0x9380, 0x9381, 0x9382, 0x9383, - 0x9384, 0x9385, 0x9386, 0x9387, 0x9388, 0x9389, 0x938A, 0x938B, - 0x938C, 0x938D, 0x938E, 0x9390, 0x9391, 0x9392, 0x9393, 0x9394, - 0x9395, 0x9396, 0x9397, 0x9398, 0x9399, 0x939A, 0x939B, 0x939C, - 0x939D, 0x939E, 0x939F, 0x93A0, 0x93A1, 0x93A2, 0x93A3, 0x93A4, - 0x93A5, 0x93A6, 0x93A7, 0x93A8, 0x93A9, 0x93AA, 0x93AB, 0, - 0x93AC, 0x93AD, 0x93AE, 0x93AF, 0x93B0, 0x93B1, 0x93B2, 0x93B3, - 0x93B4, 0x93B5, 0x93B6, 0x93B7, 0x93B8, 0x93B9, 0x93BA, 0x93BB, - 0x93BC, 0x93BD, 0x93BE, 0x93BF, 0x93C0, 0x93C1, 0x93C2, 0x93C3, - 0x93C4, 0x93C5, 0x93C6, 0x93C7, 0x93C8, 0x93C9, 0x93CB, 0x93CC, - 0x93CD, 0x5997, 0x59CA, 0x59AB, 0x599E, 0x59A4, 0x59D2, 0x59B2, - 0x59AF, 0x59D7, 0x59BE, 0x5A05, 0x5A06, 0x59DD, 0x5A08, 0x59E3, - 0x59D8, 0x59F9, 0x5A0C, 0x5A09, 0x5A32, 0x5A34, 0x5A11, 0x5A23, - 0x5A13, 0x5A40, 0x5A67, 0x5A4A, 0x5A55, 0x5A3C, 0x5A62, 0x5A75, - 0x80EC, 0x5AAA, 0x5A9B, 0x5A77, 0x5A7A, 0x5ABE, 0x5AEB, 0x5AB2, - 0x5AD2, 0x5AD4, 0x5AB8, 0x5AE0, 0x5AE3, 0x5AF1, 0x5AD6, 0x5AE6, - 0x5AD8, 0x5ADC, 0x5B09, 0x5B17, 0x5B16, 0x5B32, 0x5B37, 0x5B40, - 0x5C15, 0x5C1C, 0x5B5A, 0x5B65, 0x5B73, 0x5B51, 0x5B53, 0x5B62, - 0x9A75, 0x9A77, 0x9A78, 0x9A7A, 0x9A7F, 0x9A7D, 0x9A80, 0x9A81, - 0x9A85, 0x9A88, 0x9A8A, 0x9A90, 0x9A92, 0x9A93, 0x9A96, 0x9A98, - 0x9A9B, 0x9A9C, 0x9A9D, 0x9A9F, 0x9AA0, 0x9AA2, 0x9AA3, 0x9AA5, - 0x9AA7, 0x7E9F, 0x7EA1, 0x7EA3, 0x7EA5, 0x7EA8, 0x7EA9, 0, -plane e7 -at 0x40 - 0x93CE, 0x93CF, 0x93D0, 0x93D1, 0x93D2, 0x93D3, 0x93D4, 0x93D5, - 0x93D7, 0x93D8, 0x93D9, 0x93DA, 0x93DB, 0x93DC, 0x93DD, 0x93DE, - 0x93DF, 0x93E0, 0x93E1, 0x93E2, 0x93E3, 0x93E4, 0x93E5, 0x93E6, - 0x93E7, 0x93E8, 0x93E9, 0x93EA, 0x93EB, 0x93EC, 0x93ED, 0x93EE, - 0x93EF, 0x93F0, 0x93F1, 0x93F2, 0x93F3, 0x93F4, 0x93F5, 0x93F6, - 0x93F7, 0x93F8, 0x93F9, 0x93FA, 0x93FB, 0x93FC, 0x93FD, 0x93FE, - 0x93FF, 0x9400, 0x9401, 0x9402, 0x9403, 0x9404, 0x9405, 0x9406, - 0x9407, 0x9408, 0x9409, 0x940A, 0x940B, 0x940C, 0x940D, 0, - 0x940E, 0x940F, 0x9410, 0x9411, 0x9412, 0x9413, 0x9414, 0x9415, - 0x9416, 0x9417, 0x9418, 0x9419, 0x941A, 0x941B, 0x941C, 0x941D, - 0x941E, 0x941F, 0x9420, 0x9421, 0x9422, 0x9423, 0x9424, 0x9425, - 0x9426, 0x9427, 0x9428, 0x9429, 0x942A, 0x942B, 0x942C, 0x942D, - 0x942E, 0x7EAD, 0x7EB0, 0x7EBE, 0x7EC0, 0x7EC1, 0x7EC2, 0x7EC9, - 0x7ECB, 0x7ECC, 0x7ED0, 0x7ED4, 0x7ED7, 0x7EDB, 0x7EE0, 0x7EE1, - 0x7EE8, 0x7EEB, 0x7EEE, 0x7EEF, 0x7EF1, 0x7EF2, 0x7F0D, 0x7EF6, - 0x7EFA, 0x7EFB, 0x7EFE, 0x7F01, 0x7F02, 0x7F03, 0x7F07, 0x7F08, - 0x7F0B, 0x7F0C, 0x7F0F, 0x7F11, 0x7F12, 0x7F17, 0x7F19, 0x7F1C, - 0x7F1B, 0x7F1F, 0x7F21, 0x7F22, 0x7F23, 0x7F24, 0x7F25, 0x7F26, - 0x7F27, 0x7F2A, 0x7F2B, 0x7F2C, 0x7F2D, 0x7F2F, 0x7F30, 0x7F31, - 0x7F32, 0x7F33, 0x7F35, 0x5E7A, 0x757F, 0x5DDB, 0x753E, 0x9095, - 0x738E, 0x7391, 0x73AE, 0x73A2, 0x739F, 0x73CF, 0x73C2, 0x73D1, - 0x73B7, 0x73B3, 0x73C0, 0x73C9, 0x73C8, 0x73E5, 0x73D9, 0x987C, - 0x740A, 0x73E9, 0x73E7, 0x73DE, 0x73BA, 0x73F2, 0x740F, 0x742A, - 0x745B, 0x7426, 0x7425, 0x7428, 0x7430, 0x742E, 0x742C, 0, -plane e8 -at 0x40 - 0x942F, 0x9430, 0x9431, 0x9432, 0x9433, 0x9434, 0x9435, 0x9436, - 0x9437, 0x9438, 0x9439, 0x943A, 0x943B, 0x943C, 0x943D, 0x943F, - 0x9440, 0x9441, 0x9442, 0x9443, 0x9444, 0x9445, 0x9446, 0x9447, - 0x9448, 0x9449, 0x944A, 0x944B, 0x944C, 0x944D, 0x944E, 0x944F, - 0x9450, 0x9451, 0x9452, 0x9453, 0x9454, 0x9455, 0x9456, 0x9457, - 0x9458, 0x9459, 0x945A, 0x945B, 0x945C, 0x945D, 0x945E, 0x945F, - 0x9460, 0x9461, 0x9462, 0x9463, 0x9464, 0x9465, 0x9466, 0x9467, - 0x9468, 0x9469, 0x946A, 0x946C, 0x946D, 0x946E, 0x946F, 0, - 0x9470, 0x9471, 0x9472, 0x9473, 0x9474, 0x9475, 0x9476, 0x9477, - 0x9478, 0x9479, 0x947A, 0x947B, 0x947C, 0x947D, 0x947E, 0x947F, - 0x9480, 0x9481, 0x9482, 0x9483, 0x9484, 0x9491, 0x9496, 0x9498, - 0x94C7, 0x94CF, 0x94D3, 0x94D4, 0x94DA, 0x94E6, 0x94FB, 0x951C, - 0x9520, 0x741B, 0x741A, 0x7441, 0x745C, 0x7457, 0x7455, 0x7459, - 0x7477, 0x746D, 0x747E, 0x749C, 0x748E, 0x7480, 0x7481, 0x7487, - 0x748B, 0x749E, 0x74A8, 0x74A9, 0x7490, 0x74A7, 0x74D2, 0x74BA, - 0x97EA, 0x97EB, 0x97EC, 0x674C, 0x6753, 0x675E, 0x6748, 0x6769, - 0x67A5, 0x6787, 0x676A, 0x6773, 0x6798, 0x67A7, 0x6775, 0x67A8, - 0x679E, 0x67AD, 0x678B, 0x6777, 0x677C, 0x67F0, 0x6809, 0x67D8, - 0x680A, 0x67E9, 0x67B0, 0x680C, 0x67D9, 0x67B5, 0x67DA, 0x67B3, - 0x67DD, 0x6800, 0x67C3, 0x67B8, 0x67E2, 0x680E, 0x67C1, 0x67FD, - 0x6832, 0x6833, 0x6860, 0x6861, 0x684E, 0x6862, 0x6844, 0x6864, - 0x6883, 0x681D, 0x6855, 0x6866, 0x6841, 0x6867, 0x6840, 0x683E, - 0x684A, 0x6849, 0x6829, 0x68B5, 0x688F, 0x6874, 0x6877, 0x6893, - 0x686B, 0x68C2, 0x696E, 0x68FC, 0x691F, 0x6920, 0x68F9, 0, -plane e9 -at 0x40 - 0x9527, 0x9533, 0x953D, 0x9543, 0x9548, 0x954B, 0x9555, 0x955A, - 0x9560, 0x956E, 0x9574, 0x9575, 0x9577, 0x9578, 0x9579, 0x957A, - 0x957B, 0x957C, 0x957D, 0x957E, 0x9580, 0x9581, 0x9582, 0x9583, - 0x9584, 0x9585, 0x9586, 0x9587, 0x9588, 0x9589, 0x958A, 0x958B, - 0x958C, 0x958D, 0x958E, 0x958F, 0x9590, 0x9591, 0x9592, 0x9593, - 0x9594, 0x9595, 0x9596, 0x9597, 0x9598, 0x9599, 0x959A, 0x959B, - 0x959C, 0x959D, 0x959E, 0x959F, 0x95A0, 0x95A1, 0x95A2, 0x95A3, - 0x95A4, 0x95A5, 0x95A6, 0x95A7, 0x95A8, 0x95A9, 0x95AA, 0, - 0x95AB, 0x95AC, 0x95AD, 0x95AE, 0x95AF, 0x95B0, 0x95B1, 0x95B2, - 0x95B3, 0x95B4, 0x95B5, 0x95B6, 0x95B7, 0x95B8, 0x95B9, 0x95BA, - 0x95BB, 0x95BC, 0x95BD, 0x95BE, 0x95BF, 0x95C0, 0x95C1, 0x95C2, - 0x95C3, 0x95C4, 0x95C5, 0x95C6, 0x95C7, 0x95C8, 0x95C9, 0x95CA, - 0x95CB, 0x6924, 0x68F0, 0x690B, 0x6901, 0x6957, 0x68E3, 0x6910, - 0x6971, 0x6939, 0x6960, 0x6942, 0x695D, 0x6984, 0x696B, 0x6980, - 0x6998, 0x6978, 0x6934, 0x69CC, 0x6987, 0x6988, 0x69CE, 0x6989, - 0x6966, 0x6963, 0x6979, 0x699B, 0x69A7, 0x69BB, 0x69AB, 0x69AD, - 0x69D4, 0x69B1, 0x69C1, 0x69CA, 0x69DF, 0x6995, 0x69E0, 0x698D, - 0x69FF, 0x6A2F, 0x69ED, 0x6A17, 0x6A18, 0x6A65, 0x69F2, 0x6A44, - 0x6A3E, 0x6AA0, 0x6A50, 0x6A5B, 0x6A35, 0x6A8E, 0x6A79, 0x6A3D, - 0x6A28, 0x6A58, 0x6A7C, 0x6A91, 0x6A90, 0x6AA9, 0x6A97, 0x6AAB, - 0x7337, 0x7352, 0x6B81, 0x6B82, 0x6B87, 0x6B84, 0x6B92, 0x6B93, - 0x6B8D, 0x6B9A, 0x6B9B, 0x6BA1, 0x6BAA, 0x8F6B, 0x8F6D, 0x8F71, - 0x8F72, 0x8F73, 0x8F75, 0x8F76, 0x8F78, 0x8F77, 0x8F79, 0x8F7A, - 0x8F7C, 0x8F7E, 0x8F81, 0x8F82, 0x8F84, 0x8F87, 0x8F8B, 0, -plane ea -at 0x40 - 0x95CC, 0x95CD, 0x95CE, 0x95CF, 0x95D0, 0x95D1, 0x95D2, 0x95D3, - 0x95D4, 0x95D5, 0x95D6, 0x95D7, 0x95D8, 0x95D9, 0x95DA, 0x95DB, - 0x95DC, 0x95DD, 0x95DE, 0x95DF, 0x95E0, 0x95E1, 0x95E2, 0x95E3, - 0x95E4, 0x95E5, 0x95E6, 0x95E7, 0x95EC, 0x95FF, 0x9607, 0x9613, - 0x9618, 0x961B, 0x961E, 0x9620, 0x9623, 0x9624, 0x9625, 0x9626, - 0x9627, 0x9628, 0x9629, 0x962B, 0x962C, 0x962D, 0x962F, 0x9630, - 0x9637, 0x9638, 0x9639, 0x963A, 0x963E, 0x9641, 0x9643, 0x964A, - 0x964E, 0x964F, 0x9651, 0x9652, 0x9653, 0x9656, 0x9657, 0, - 0x9658, 0x9659, 0x965A, 0x965C, 0x965D, 0x965E, 0x9660, 0x9663, - 0x9665, 0x9666, 0x966B, 0x966D, 0x966E, 0x966F, 0x9670, 0x9671, - 0x9673, 0x9678, 0x9679, 0x967A, 0x967B, 0x967C, 0x967D, 0x967E, - 0x967F, 0x9680, 0x9681, 0x9682, 0x9683, 0x9684, 0x9687, 0x9689, - 0x968A, 0x8F8D, 0x8F8E, 0x8F8F, 0x8F98, 0x8F9A, 0x8ECE, 0x620B, - 0x6217, 0x621B, 0x621F, 0x6222, 0x6221, 0x6225, 0x6224, 0x622C, - 0x81E7, 0x74EF, 0x74F4, 0x74FF, 0x750F, 0x7511, 0x7513, 0x6534, - 0x65EE, 0x65EF, 0x65F0, 0x660A, 0x6619, 0x6772, 0x6603, 0x6615, - 0x6600, 0x7085, 0x66F7, 0x661D, 0x6634, 0x6631, 0x6636, 0x6635, - 0x8006, 0x665F, 0x6654, 0x6641, 0x664F, 0x6656, 0x6661, 0x6657, - 0x6677, 0x6684, 0x668C, 0x66A7, 0x669D, 0x66BE, 0x66DB, 0x66DC, - 0x66E6, 0x66E9, 0x8D32, 0x8D33, 0x8D36, 0x8D3B, 0x8D3D, 0x8D40, - 0x8D45, 0x8D46, 0x8D48, 0x8D49, 0x8D47, 0x8D4D, 0x8D55, 0x8D59, - 0x89C7, 0x89CA, 0x89CB, 0x89CC, 0x89CE, 0x89CF, 0x89D0, 0x89D1, - 0x726E, 0x729F, 0x725D, 0x7266, 0x726F, 0x727E, 0x727F, 0x7284, - 0x728B, 0x728D, 0x728F, 0x7292, 0x6308, 0x6332, 0x63B0, 0, -plane eb -at 0x40 - 0x968C, 0x968E, 0x9691, 0x9692, 0x9693, 0x9695, 0x9696, 0x969A, - 0x969B, 0x969D, 0x969E, 0x969F, 0x96A0, 0x96A1, 0x96A2, 0x96A3, - 0x96A4, 0x96A5, 0x96A6, 0x96A8, 0x96A9, 0x96AA, 0x96AB, 0x96AC, - 0x96AD, 0x96AE, 0x96AF, 0x96B1, 0x96B2, 0x96B4, 0x96B5, 0x96B7, - 0x96B8, 0x96BA, 0x96BB, 0x96BF, 0x96C2, 0x96C3, 0x96C8, 0x96CA, - 0x96CB, 0x96D0, 0x96D1, 0x96D3, 0x96D4, 0x96D6, 0x96D7, 0x96D8, - 0x96D9, 0x96DA, 0x96DB, 0x96DC, 0x96DD, 0x96DE, 0x96DF, 0x96E1, - 0x96E2, 0x96E3, 0x96E4, 0x96E5, 0x96E6, 0x96E7, 0x96EB, 0, - 0x96EC, 0x96ED, 0x96EE, 0x96F0, 0x96F1, 0x96F2, 0x96F4, 0x96F5, - 0x96F8, 0x96FA, 0x96FB, 0x96FC, 0x96FD, 0x96FF, 0x9702, 0x9703, - 0x9705, 0x970A, 0x970B, 0x970C, 0x9710, 0x9711, 0x9712, 0x9714, - 0x9715, 0x9717, 0x9718, 0x9719, 0x971A, 0x971B, 0x971D, 0x971F, - 0x9720, 0x643F, 0x64D8, 0x8004, 0x6BEA, 0x6BF3, 0x6BFD, 0x6BF5, - 0x6BF9, 0x6C05, 0x6C07, 0x6C06, 0x6C0D, 0x6C15, 0x6C18, 0x6C19, - 0x6C1A, 0x6C21, 0x6C29, 0x6C24, 0x6C2A, 0x6C32, 0x6535, 0x6555, - 0x656B, 0x724D, 0x7252, 0x7256, 0x7230, 0x8662, 0x5216, 0x809F, - 0x809C, 0x8093, 0x80BC, 0x670A, 0x80BD, 0x80B1, 0x80AB, 0x80AD, - 0x80B4, 0x80B7, 0x80E7, 0x80E8, 0x80E9, 0x80EA, 0x80DB, 0x80C2, - 0x80C4, 0x80D9, 0x80CD, 0x80D7, 0x6710, 0x80DD, 0x80EB, 0x80F1, - 0x80F4, 0x80ED, 0x810D, 0x810E, 0x80F2, 0x80FC, 0x6715, 0x8112, - 0x8C5A, 0x8136, 0x811E, 0x812C, 0x8118, 0x8132, 0x8148, 0x814C, - 0x8153, 0x8174, 0x8159, 0x815A, 0x8171, 0x8160, 0x8169, 0x817C, - 0x817D, 0x816D, 0x8167, 0x584D, 0x5AB5, 0x8188, 0x8182, 0x8191, - 0x6ED5, 0x81A3, 0x81AA, 0x81CC, 0x6726, 0x81CA, 0x81BB, 0, -plane ec -at 0x40 - 0x9721, 0x9722, 0x9723, 0x9724, 0x9725, 0x9726, 0x9727, 0x9728, - 0x9729, 0x972B, 0x972C, 0x972E, 0x972F, 0x9731, 0x9733, 0x9734, - 0x9735, 0x9736, 0x9737, 0x973A, 0x973B, 0x973C, 0x973D, 0x973F, - 0x9740, 0x9741, 0x9742, 0x9743, 0x9744, 0x9745, 0x9746, 0x9747, - 0x9748, 0x9749, 0x974A, 0x974B, 0x974C, 0x974D, 0x974E, 0x974F, - 0x9750, 0x9751, 0x9754, 0x9755, 0x9757, 0x9758, 0x975A, 0x975C, - 0x975D, 0x975F, 0x9763, 0x9764, 0x9766, 0x9767, 0x9768, 0x976A, - 0x976B, 0x976C, 0x976D, 0x976E, 0x976F, 0x9770, 0x9771, 0, - 0x9772, 0x9775, 0x9777, 0x9778, 0x9779, 0x977A, 0x977B, 0x977D, - 0x977E, 0x977F, 0x9780, 0x9781, 0x9782, 0x9783, 0x9784, 0x9786, - 0x9787, 0x9788, 0x9789, 0x978A, 0x978C, 0x978E, 0x978F, 0x9790, - 0x9793, 0x9795, 0x9796, 0x9797, 0x9799, 0x979A, 0x979B, 0x979C, - 0x979D, 0x81C1, 0x81A6, 0x6B24, 0x6B37, 0x6B39, 0x6B43, 0x6B46, - 0x6B59, 0x98D1, 0x98D2, 0x98D3, 0x98D5, 0x98D9, 0x98DA, 0x6BB3, - 0x5F40, 0x6BC2, 0x89F3, 0x6590, 0x9F51, 0x6593, 0x65BC, 0x65C6, - 0x65C4, 0x65C3, 0x65CC, 0x65CE, 0x65D2, 0x65D6, 0x7080, 0x709C, - 0x7096, 0x709D, 0x70BB, 0x70C0, 0x70B7, 0x70AB, 0x70B1, 0x70E8, - 0x70CA, 0x7110, 0x7113, 0x7116, 0x712F, 0x7131, 0x7173, 0x715C, - 0x7168, 0x7145, 0x7172, 0x714A, 0x7178, 0x717A, 0x7198, 0x71B3, - 0x71B5, 0x71A8, 0x71A0, 0x71E0, 0x71D4, 0x71E7, 0x71F9, 0x721D, - 0x7228, 0x706C, 0x7118, 0x7166, 0x71B9, 0x623E, 0x623D, 0x6243, - 0x6248, 0x6249, 0x793B, 0x7940, 0x7946, 0x7949, 0x795B, 0x795C, - 0x7953, 0x795A, 0x7962, 0x7957, 0x7960, 0x796F, 0x7967, 0x797A, - 0x7985, 0x798A, 0x799A, 0x79A7, 0x79B3, 0x5FD1, 0x5FD0, 0, -plane ed -at 0x40 - 0x979E, 0x979F, 0x97A1, 0x97A2, 0x97A4, 0x97A5, 0x97A6, 0x97A7, - 0x97A8, 0x97A9, 0x97AA, 0x97AC, 0x97AE, 0x97B0, 0x97B1, 0x97B3, - 0x97B5, 0x97B6, 0x97B7, 0x97B8, 0x97B9, 0x97BA, 0x97BB, 0x97BC, - 0x97BD, 0x97BE, 0x97BF, 0x97C0, 0x97C1, 0x97C2, 0x97C3, 0x97C4, - 0x97C5, 0x97C6, 0x97C7, 0x97C8, 0x97C9, 0x97CA, 0x97CB, 0x97CC, - 0x97CD, 0x97CE, 0x97CF, 0x97D0, 0x97D1, 0x97D2, 0x97D3, 0x97D4, - 0x97D5, 0x97D6, 0x97D7, 0x97D8, 0x97D9, 0x97DA, 0x97DB, 0x97DC, - 0x97DD, 0x97DE, 0x97DF, 0x97E0, 0x97E1, 0x97E2, 0x97E3, 0, - 0x97E4, 0x97E5, 0x97E8, 0x97EE, 0x97EF, 0x97F0, 0x97F1, 0x97F2, - 0x97F4, 0x97F7, 0x97F8, 0x97F9, 0x97FA, 0x97FB, 0x97FC, 0x97FD, - 0x97FE, 0x97FF, 0x9800, 0x9801, 0x9802, 0x9803, 0x9804, 0x9805, - 0x9806, 0x9807, 0x9808, 0x9809, 0x980A, 0x980B, 0x980C, 0x980D, - 0x980E, 0x603C, 0x605D, 0x605A, 0x6067, 0x6041, 0x6059, 0x6063, - 0x60AB, 0x6106, 0x610D, 0x615D, 0x61A9, 0x619D, 0x61CB, 0x61D1, - 0x6206, 0x8080, 0x807F, 0x6C93, 0x6CF6, 0x6DFC, 0x77F6, 0x77F8, - 0x7800, 0x7809, 0x7817, 0x7818, 0x7811, 0x65AB, 0x782D, 0x781C, - 0x781D, 0x7839, 0x783A, 0x783B, 0x781F, 0x783C, 0x7825, 0x782C, - 0x7823, 0x7829, 0x784E, 0x786D, 0x7856, 0x7857, 0x7826, 0x7850, - 0x7847, 0x784C, 0x786A, 0x789B, 0x7893, 0x789A, 0x7887, 0x789C, - 0x78A1, 0x78A3, 0x78B2, 0x78B9, 0x78A5, 0x78D4, 0x78D9, 0x78C9, - 0x78EC, 0x78F2, 0x7905, 0x78F4, 0x7913, 0x7924, 0x791E, 0x7934, - 0x9F9B, 0x9EF9, 0x9EFB, 0x9EFC, 0x76F1, 0x7704, 0x770D, 0x76F9, - 0x7707, 0x7708, 0x771A, 0x7722, 0x7719, 0x772D, 0x7726, 0x7735, - 0x7738, 0x7750, 0x7751, 0x7747, 0x7743, 0x775A, 0x7768, 0, -plane ee -at 0x40 - 0x980F, 0x9810, 0x9811, 0x9812, 0x9813, 0x9814, 0x9815, 0x9816, - 0x9817, 0x9818, 0x9819, 0x981A, 0x981B, 0x981C, 0x981D, 0x981E, - 0x981F, 0x9820, 0x9821, 0x9822, 0x9823, 0x9824, 0x9825, 0x9826, - 0x9827, 0x9828, 0x9829, 0x982A, 0x982B, 0x982C, 0x982D, 0x982E, - 0x982F, 0x9830, 0x9831, 0x9832, 0x9833, 0x9834, 0x9835, 0x9836, - 0x9837, 0x9838, 0x9839, 0x983A, 0x983B, 0x983C, 0x983D, 0x983E, - 0x983F, 0x9840, 0x9841, 0x9842, 0x9843, 0x9844, 0x9845, 0x9846, - 0x9847, 0x9848, 0x9849, 0x984A, 0x984B, 0x984C, 0x984D, 0, - 0x984E, 0x984F, 0x9850, 0x9851, 0x9852, 0x9853, 0x9854, 0x9855, - 0x9856, 0x9857, 0x9858, 0x9859, 0x985A, 0x985B, 0x985C, 0x985D, - 0x985E, 0x985F, 0x9860, 0x9861, 0x9862, 0x9863, 0x9864, 0x9865, - 0x9866, 0x9867, 0x9868, 0x9869, 0x986A, 0x986B, 0x986C, 0x986D, - 0x986E, 0x7762, 0x7765, 0x777F, 0x778D, 0x777D, 0x7780, 0x778C, - 0x7791, 0x779F, 0x77A0, 0x77B0, 0x77B5, 0x77BD, 0x753A, 0x7540, - 0x754E, 0x754B, 0x7548, 0x755B, 0x7572, 0x7579, 0x7583, 0x7F58, - 0x7F61, 0x7F5F, 0x8A48, 0x7F68, 0x7F74, 0x7F71, 0x7F79, 0x7F81, - 0x7F7E, 0x76CD, 0x76E5, 0x8832, 0x9485, 0x9486, 0x9487, 0x948B, - 0x948A, 0x948C, 0x948D, 0x948F, 0x9490, 0x9494, 0x9497, 0x9495, - 0x949A, 0x949B, 0x949C, 0x94A3, 0x94A4, 0x94AB, 0x94AA, 0x94AD, - 0x94AC, 0x94AF, 0x94B0, 0x94B2, 0x94B4, 0x94B6, 0x94B7, 0x94B8, - 0x94B9, 0x94BA, 0x94BC, 0x94BD, 0x94BF, 0x94C4, 0x94C8, 0x94C9, - 0x94CA, 0x94CB, 0x94CC, 0x94CD, 0x94CE, 0x94D0, 0x94D1, 0x94D2, - 0x94D5, 0x94D6, 0x94D7, 0x94D9, 0x94D8, 0x94DB, 0x94DE, 0x94DF, - 0x94E0, 0x94E2, 0x94E4, 0x94E5, 0x94E7, 0x94E8, 0x94EA, 0, -plane ef -at 0x40 - 0x986F, 0x9870, 0x9871, 0x9872, 0x9873, 0x9874, 0x988B, 0x988E, - 0x9892, 0x9895, 0x9899, 0x98A3, 0x98A8, 0x98A9, 0x98AA, 0x98AB, - 0x98AC, 0x98AD, 0x98AE, 0x98AF, 0x98B0, 0x98B1, 0x98B2, 0x98B3, - 0x98B4, 0x98B5, 0x98B6, 0x98B7, 0x98B8, 0x98B9, 0x98BA, 0x98BB, - 0x98BC, 0x98BD, 0x98BE, 0x98BF, 0x98C0, 0x98C1, 0x98C2, 0x98C3, - 0x98C4, 0x98C5, 0x98C6, 0x98C7, 0x98C8, 0x98C9, 0x98CA, 0x98CB, - 0x98CC, 0x98CD, 0x98CF, 0x98D0, 0x98D4, 0x98D6, 0x98D7, 0x98DB, - 0x98DC, 0x98DD, 0x98E0, 0x98E1, 0x98E2, 0x98E3, 0x98E4, 0, - 0x98E5, 0x98E6, 0x98E9, 0x98EA, 0x98EB, 0x98EC, 0x98ED, 0x98EE, - 0x98EF, 0x98F0, 0x98F1, 0x98F2, 0x98F3, 0x98F4, 0x98F5, 0x98F6, - 0x98F7, 0x98F8, 0x98F9, 0x98FA, 0x98FB, 0x98FC, 0x98FD, 0x98FE, - 0x98FF, 0x9900, 0x9901, 0x9902, 0x9903, 0x9904, 0x9905, 0x9906, - 0x9907, 0x94E9, 0x94EB, 0x94EE, 0x94EF, 0x94F3, 0x94F4, 0x94F5, - 0x94F7, 0x94F9, 0x94FC, 0x94FD, 0x94FF, 0x9503, 0x9502, 0x9506, - 0x9507, 0x9509, 0x950A, 0x950D, 0x950E, 0x950F, 0x9512, 0x9513, - 0x9514, 0x9515, 0x9516, 0x9518, 0x951B, 0x951D, 0x951E, 0x951F, - 0x9522, 0x952A, 0x952B, 0x9529, 0x952C, 0x9531, 0x9532, 0x9534, - 0x9536, 0x9537, 0x9538, 0x953C, 0x953E, 0x953F, 0x9542, 0x9535, - 0x9544, 0x9545, 0x9546, 0x9549, 0x954C, 0x954E, 0x954F, 0x9552, - 0x9553, 0x9554, 0x9556, 0x9557, 0x9558, 0x9559, 0x955B, 0x955E, - 0x955F, 0x955D, 0x9561, 0x9562, 0x9564, 0x9565, 0x9566, 0x9567, - 0x9568, 0x9569, 0x956A, 0x956B, 0x956C, 0x956F, 0x9571, 0x9572, - 0x9573, 0x953A, 0x77E7, 0x77EC, 0x96C9, 0x79D5, 0x79ED, 0x79E3, - 0x79EB, 0x7A06, 0x5D47, 0x7A03, 0x7A02, 0x7A1E, 0x7A14, 0, -plane f0 -at 0x40 - 0x9908, 0x9909, 0x990A, 0x990B, 0x990C, 0x990E, 0x990F, 0x9911, - 0x9912, 0x9913, 0x9914, 0x9915, 0x9916, 0x9917, 0x9918, 0x9919, - 0x991A, 0x991B, 0x991C, 0x991D, 0x991E, 0x991F, 0x9920, 0x9921, - 0x9922, 0x9923, 0x9924, 0x9925, 0x9926, 0x9927, 0x9928, 0x9929, - 0x992A, 0x992B, 0x992C, 0x992D, 0x992F, 0x9930, 0x9931, 0x9932, - 0x9933, 0x9934, 0x9935, 0x9936, 0x9937, 0x9938, 0x9939, 0x993A, - 0x993B, 0x993C, 0x993D, 0x993E, 0x993F, 0x9940, 0x9941, 0x9942, - 0x9943, 0x9944, 0x9945, 0x9946, 0x9947, 0x9948, 0x9949, 0, - 0x994A, 0x994B, 0x994C, 0x994D, 0x994E, 0x994F, 0x9950, 0x9951, - 0x9952, 0x9953, 0x9956, 0x9957, 0x9958, 0x9959, 0x995A, 0x995B, - 0x995C, 0x995D, 0x995E, 0x995F, 0x9960, 0x9961, 0x9962, 0x9964, - 0x9966, 0x9973, 0x9978, 0x9979, 0x997B, 0x997E, 0x9982, 0x9983, - 0x9989, 0x7A39, 0x7A37, 0x7A51, 0x9ECF, 0x99A5, 0x7A70, 0x7688, - 0x768E, 0x7693, 0x7699, 0x76A4, 0x74DE, 0x74E0, 0x752C, 0x9E20, - 0x9E22, 0x9E28, 0x9E29, 0x9E2A, 0x9E2B, 0x9E2C, 0x9E32, 0x9E31, - 0x9E36, 0x9E38, 0x9E37, 0x9E39, 0x9E3A, 0x9E3E, 0x9E41, 0x9E42, - 0x9E44, 0x9E46, 0x9E47, 0x9E48, 0x9E49, 0x9E4B, 0x9E4C, 0x9E4E, - 0x9E51, 0x9E55, 0x9E57, 0x9E5A, 0x9E5B, 0x9E5C, 0x9E5E, 0x9E63, - 0x9E66, 0x9E67, 0x9E68, 0x9E69, 0x9E6A, 0x9E6B, 0x9E6C, 0x9E71, - 0x9E6D, 0x9E73, 0x7592, 0x7594, 0x7596, 0x75A0, 0x759D, 0x75AC, - 0x75A3, 0x75B3, 0x75B4, 0x75B8, 0x75C4, 0x75B1, 0x75B0, 0x75C3, - 0x75C2, 0x75D6, 0x75CD, 0x75E3, 0x75E8, 0x75E6, 0x75E4, 0x75EB, - 0x75E7, 0x7603, 0x75F1, 0x75FC, 0x75FF, 0x7610, 0x7600, 0x7605, - 0x760C, 0x7617, 0x760A, 0x7625, 0x7618, 0x7615, 0x7619, 0, -plane f1 -at 0x40 - 0x998C, 0x998E, 0x999A, 0x999B, 0x999C, 0x999D, 0x999E, 0x999F, - 0x99A0, 0x99A1, 0x99A2, 0x99A3, 0x99A4, 0x99A6, 0x99A7, 0x99A9, - 0x99AA, 0x99AB, 0x99AC, 0x99AD, 0x99AE, 0x99AF, 0x99B0, 0x99B1, - 0x99B2, 0x99B3, 0x99B4, 0x99B5, 0x99B6, 0x99B7, 0x99B8, 0x99B9, - 0x99BA, 0x99BB, 0x99BC, 0x99BD, 0x99BE, 0x99BF, 0x99C0, 0x99C1, - 0x99C2, 0x99C3, 0x99C4, 0x99C5, 0x99C6, 0x99C7, 0x99C8, 0x99C9, - 0x99CA, 0x99CB, 0x99CC, 0x99CD, 0x99CE, 0x99CF, 0x99D0, 0x99D1, - 0x99D2, 0x99D3, 0x99D4, 0x99D5, 0x99D6, 0x99D7, 0x99D8, 0, - 0x99D9, 0x99DA, 0x99DB, 0x99DC, 0x99DD, 0x99DE, 0x99DF, 0x99E0, - 0x99E1, 0x99E2, 0x99E3, 0x99E4, 0x99E5, 0x99E6, 0x99E7, 0x99E8, - 0x99E9, 0x99EA, 0x99EB, 0x99EC, 0x99ED, 0x99EE, 0x99EF, 0x99F0, - 0x99F1, 0x99F2, 0x99F3, 0x99F4, 0x99F5, 0x99F6, 0x99F7, 0x99F8, - 0x99F9, 0x761B, 0x763C, 0x7622, 0x7620, 0x7640, 0x762D, 0x7630, - 0x763F, 0x7635, 0x7643, 0x763E, 0x7633, 0x764D, 0x765E, 0x7654, - 0x765C, 0x7656, 0x766B, 0x766F, 0x7FCA, 0x7AE6, 0x7A78, 0x7A79, - 0x7A80, 0x7A86, 0x7A88, 0x7A95, 0x7AA6, 0x7AA0, 0x7AAC, 0x7AA8, - 0x7AAD, 0x7AB3, 0x8864, 0x8869, 0x8872, 0x887D, 0x887F, 0x8882, - 0x88A2, 0x88C6, 0x88B7, 0x88BC, 0x88C9, 0x88E2, 0x88CE, 0x88E3, - 0x88E5, 0x88F1, 0x891A, 0x88FC, 0x88E8, 0x88FE, 0x88F0, 0x8921, - 0x8919, 0x8913, 0x891B, 0x890A, 0x8934, 0x892B, 0x8936, 0x8941, - 0x8966, 0x897B, 0x758B, 0x80E5, 0x76B2, 0x76B4, 0x77DC, 0x8012, - 0x8014, 0x8016, 0x801C, 0x8020, 0x8022, 0x8025, 0x8026, 0x8027, - 0x8029, 0x8028, 0x8031, 0x800B, 0x8035, 0x8043, 0x8046, 0x804D, - 0x8052, 0x8069, 0x8071, 0x8983, 0x9878, 0x9880, 0x9883, 0, -plane f2 -at 0x40 - 0x99FA, 0x99FB, 0x99FC, 0x99FD, 0x99FE, 0x99FF, 0x9A00, 0x9A01, - 0x9A02, 0x9A03, 0x9A04, 0x9A05, 0x9A06, 0x9A07, 0x9A08, 0x9A09, - 0x9A0A, 0x9A0B, 0x9A0C, 0x9A0D, 0x9A0E, 0x9A0F, 0x9A10, 0x9A11, - 0x9A12, 0x9A13, 0x9A14, 0x9A15, 0x9A16, 0x9A17, 0x9A18, 0x9A19, - 0x9A1A, 0x9A1B, 0x9A1C, 0x9A1D, 0x9A1E, 0x9A1F, 0x9A20, 0x9A21, - 0x9A22, 0x9A23, 0x9A24, 0x9A25, 0x9A26, 0x9A27, 0x9A28, 0x9A29, - 0x9A2A, 0x9A2B, 0x9A2C, 0x9A2D, 0x9A2E, 0x9A2F, 0x9A30, 0x9A31, - 0x9A32, 0x9A33, 0x9A34, 0x9A35, 0x9A36, 0x9A37, 0x9A38, 0, - 0x9A39, 0x9A3A, 0x9A3B, 0x9A3C, 0x9A3D, 0x9A3E, 0x9A3F, 0x9A40, - 0x9A41, 0x9A42, 0x9A43, 0x9A44, 0x9A45, 0x9A46, 0x9A47, 0x9A48, - 0x9A49, 0x9A4A, 0x9A4B, 0x9A4C, 0x9A4D, 0x9A4E, 0x9A4F, 0x9A50, - 0x9A51, 0x9A52, 0x9A53, 0x9A54, 0x9A55, 0x9A56, 0x9A57, 0x9A58, - 0x9A59, 0x9889, 0x988C, 0x988D, 0x988F, 0x9894, 0x989A, 0x989B, - 0x989E, 0x989F, 0x98A1, 0x98A2, 0x98A5, 0x98A6, 0x864D, 0x8654, - 0x866C, 0x866E, 0x867F, 0x867A, 0x867C, 0x867B, 0x86A8, 0x868D, - 0x868B, 0x86AC, 0x869D, 0x86A7, 0x86A3, 0x86AA, 0x8693, 0x86A9, - 0x86B6, 0x86C4, 0x86B5, 0x86CE, 0x86B0, 0x86BA, 0x86B1, 0x86AF, - 0x86C9, 0x86CF, 0x86B4, 0x86E9, 0x86F1, 0x86F2, 0x86ED, 0x86F3, - 0x86D0, 0x8713, 0x86DE, 0x86F4, 0x86DF, 0x86D8, 0x86D1, 0x8703, - 0x8707, 0x86F8, 0x8708, 0x870A, 0x870D, 0x8709, 0x8723, 0x873B, - 0x871E, 0x8725, 0x872E, 0x871A, 0x873E, 0x8748, 0x8734, 0x8731, - 0x8729, 0x8737, 0x873F, 0x8782, 0x8722, 0x877D, 0x877E, 0x877B, - 0x8760, 0x8770, 0x874C, 0x876E, 0x878B, 0x8753, 0x8763, 0x877C, - 0x8764, 0x8759, 0x8765, 0x8793, 0x87AF, 0x87A8, 0x87D2, 0, -plane f3 -at 0x40 - 0x9A5A, 0x9A5B, 0x9A5C, 0x9A5D, 0x9A5E, 0x9A5F, 0x9A60, 0x9A61, - 0x9A62, 0x9A63, 0x9A64, 0x9A65, 0x9A66, 0x9A67, 0x9A68, 0x9A69, - 0x9A6A, 0x9A6B, 0x9A72, 0x9A83, 0x9A89, 0x9A8D, 0x9A8E, 0x9A94, - 0x9A95, 0x9A99, 0x9AA6, 0x9AA9, 0x9AAA, 0x9AAB, 0x9AAC, 0x9AAD, - 0x9AAE, 0x9AAF, 0x9AB2, 0x9AB3, 0x9AB4, 0x9AB5, 0x9AB9, 0x9ABB, - 0x9ABD, 0x9ABE, 0x9ABF, 0x9AC3, 0x9AC4, 0x9AC6, 0x9AC7, 0x9AC8, - 0x9AC9, 0x9ACA, 0x9ACD, 0x9ACE, 0x9ACF, 0x9AD0, 0x9AD2, 0x9AD4, - 0x9AD5, 0x9AD6, 0x9AD7, 0x9AD9, 0x9ADA, 0x9ADB, 0x9ADC, 0, - 0x9ADD, 0x9ADE, 0x9AE0, 0x9AE2, 0x9AE3, 0x9AE4, 0x9AE5, 0x9AE7, - 0x9AE8, 0x9AE9, 0x9AEA, 0x9AEC, 0x9AEE, 0x9AF0, 0x9AF1, 0x9AF2, - 0x9AF3, 0x9AF4, 0x9AF5, 0x9AF6, 0x9AF7, 0x9AF8, 0x9AFA, 0x9AFC, - 0x9AFD, 0x9AFE, 0x9AFF, 0x9B00, 0x9B01, 0x9B02, 0x9B04, 0x9B05, - 0x9B06, 0x87C6, 0x8788, 0x8785, 0x87AD, 0x8797, 0x8783, 0x87AB, - 0x87E5, 0x87AC, 0x87B5, 0x87B3, 0x87CB, 0x87D3, 0x87BD, 0x87D1, - 0x87C0, 0x87CA, 0x87DB, 0x87EA, 0x87E0, 0x87EE, 0x8816, 0x8813, - 0x87FE, 0x880A, 0x881B, 0x8821, 0x8839, 0x883C, 0x7F36, 0x7F42, - 0x7F44, 0x7F45, 0x8210, 0x7AFA, 0x7AFD, 0x7B08, 0x7B03, 0x7B04, - 0x7B15, 0x7B0A, 0x7B2B, 0x7B0F, 0x7B47, 0x7B38, 0x7B2A, 0x7B19, - 0x7B2E, 0x7B31, 0x7B20, 0x7B25, 0x7B24, 0x7B33, 0x7B3E, 0x7B1E, - 0x7B58, 0x7B5A, 0x7B45, 0x7B75, 0x7B4C, 0x7B5D, 0x7B60, 0x7B6E, - 0x7B7B, 0x7B62, 0x7B72, 0x7B71, 0x7B90, 0x7BA6, 0x7BA7, 0x7BB8, - 0x7BAC, 0x7B9D, 0x7BA8, 0x7B85, 0x7BAA, 0x7B9C, 0x7BA2, 0x7BAB, - 0x7BB4, 0x7BD1, 0x7BC1, 0x7BCC, 0x7BDD, 0x7BDA, 0x7BE5, 0x7BE6, - 0x7BEA, 0x7C0C, 0x7BFE, 0x7BFC, 0x7C0F, 0x7C16, 0x7C0B, 0, -plane f4 -at 0x40 - 0x9B07, 0x9B09, 0x9B0A, 0x9B0B, 0x9B0C, 0x9B0D, 0x9B0E, 0x9B10, - 0x9B11, 0x9B12, 0x9B14, 0x9B15, 0x9B16, 0x9B17, 0x9B18, 0x9B19, - 0x9B1A, 0x9B1B, 0x9B1C, 0x9B1D, 0x9B1E, 0x9B20, 0x9B21, 0x9B22, - 0x9B24, 0x9B25, 0x9B26, 0x9B27, 0x9B28, 0x9B29, 0x9B2A, 0x9B2B, - 0x9B2C, 0x9B2D, 0x9B2E, 0x9B30, 0x9B31, 0x9B33, 0x9B34, 0x9B35, - 0x9B36, 0x9B37, 0x9B38, 0x9B39, 0x9B3A, 0x9B3D, 0x9B3E, 0x9B3F, - 0x9B40, 0x9B46, 0x9B4A, 0x9B4B, 0x9B4C, 0x9B4E, 0x9B50, 0x9B52, - 0x9B53, 0x9B55, 0x9B56, 0x9B57, 0x9B58, 0x9B59, 0x9B5A, 0, - 0x9B5B, 0x9B5C, 0x9B5D, 0x9B5E, 0x9B5F, 0x9B60, 0x9B61, 0x9B62, - 0x9B63, 0x9B64, 0x9B65, 0x9B66, 0x9B67, 0x9B68, 0x9B69, 0x9B6A, - 0x9B6B, 0x9B6C, 0x9B6D, 0x9B6E, 0x9B6F, 0x9B70, 0x9B71, 0x9B72, - 0x9B73, 0x9B74, 0x9B75, 0x9B76, 0x9B77, 0x9B78, 0x9B79, 0x9B7A, - 0x9B7B, 0x7C1F, 0x7C2A, 0x7C26, 0x7C38, 0x7C41, 0x7C40, 0x81FE, - 0x8201, 0x8202, 0x8204, 0x81EC, 0x8844, 0x8221, 0x8222, 0x8223, - 0x822D, 0x822F, 0x8228, 0x822B, 0x8238, 0x823B, 0x8233, 0x8234, - 0x823E, 0x8244, 0x8249, 0x824B, 0x824F, 0x825A, 0x825F, 0x8268, - 0x887E, 0x8885, 0x8888, 0x88D8, 0x88DF, 0x895E, 0x7F9D, 0x7F9F, - 0x7FA7, 0x7FAF, 0x7FB0, 0x7FB2, 0x7C7C, 0x6549, 0x7C91, 0x7C9D, - 0x7C9C, 0x7C9E, 0x7CA2, 0x7CB2, 0x7CBC, 0x7CBD, 0x7CC1, 0x7CC7, - 0x7CCC, 0x7CCD, 0x7CC8, 0x7CC5, 0x7CD7, 0x7CE8, 0x826E, 0x66A8, - 0x7FBF, 0x7FCE, 0x7FD5, 0x7FE5, 0x7FE1, 0x7FE6, 0x7FE9, 0x7FEE, - 0x7FF3, 0x7CF8, 0x7D77, 0x7DA6, 0x7DAE, 0x7E47, 0x7E9B, 0x9EB8, - 0x9EB4, 0x8D73, 0x8D84, 0x8D94, 0x8D91, 0x8DB1, 0x8D67, 0x8D6D, - 0x8C47, 0x8C49, 0x914A, 0x9150, 0x914E, 0x914F, 0x9164, 0, -plane f5 -at 0x40 - 0x9B7C, 0x9B7D, 0x9B7E, 0x9B7F, 0x9B80, 0x9B81, 0x9B82, 0x9B83, - 0x9B84, 0x9B85, 0x9B86, 0x9B87, 0x9B88, 0x9B89, 0x9B8A, 0x9B8B, - 0x9B8C, 0x9B8D, 0x9B8E, 0x9B8F, 0x9B90, 0x9B91, 0x9B92, 0x9B93, - 0x9B94, 0x9B95, 0x9B96, 0x9B97, 0x9B98, 0x9B99, 0x9B9A, 0x9B9B, - 0x9B9C, 0x9B9D, 0x9B9E, 0x9B9F, 0x9BA0, 0x9BA1, 0x9BA2, 0x9BA3, - 0x9BA4, 0x9BA5, 0x9BA6, 0x9BA7, 0x9BA8, 0x9BA9, 0x9BAA, 0x9BAB, - 0x9BAC, 0x9BAD, 0x9BAE, 0x9BAF, 0x9BB0, 0x9BB1, 0x9BB2, 0x9BB3, - 0x9BB4, 0x9BB5, 0x9BB6, 0x9BB7, 0x9BB8, 0x9BB9, 0x9BBA, 0, - 0x9BBB, 0x9BBC, 0x9BBD, 0x9BBE, 0x9BBF, 0x9BC0, 0x9BC1, 0x9BC2, - 0x9BC3, 0x9BC4, 0x9BC5, 0x9BC6, 0x9BC7, 0x9BC8, 0x9BC9, 0x9BCA, - 0x9BCB, 0x9BCC, 0x9BCD, 0x9BCE, 0x9BCF, 0x9BD0, 0x9BD1, 0x9BD2, - 0x9BD3, 0x9BD4, 0x9BD5, 0x9BD6, 0x9BD7, 0x9BD8, 0x9BD9, 0x9BDA, - 0x9BDB, 0x9162, 0x9161, 0x9170, 0x9169, 0x916F, 0x917D, 0x917E, - 0x9172, 0x9174, 0x9179, 0x918C, 0x9185, 0x9190, 0x918D, 0x9191, - 0x91A2, 0x91A3, 0x91AA, 0x91AD, 0x91AE, 0x91AF, 0x91B5, 0x91B4, - 0x91BA, 0x8C55, 0x9E7E, 0x8DB8, 0x8DEB, 0x8E05, 0x8E59, 0x8E69, - 0x8DB5, 0x8DBF, 0x8DBC, 0x8DBA, 0x8DC4, 0x8DD6, 0x8DD7, 0x8DDA, - 0x8DDE, 0x8DCE, 0x8DCF, 0x8DDB, 0x8DC6, 0x8DEC, 0x8DF7, 0x8DF8, - 0x8DE3, 0x8DF9, 0x8DFB, 0x8DE4, 0x8E09, 0x8DFD, 0x8E14, 0x8E1D, - 0x8E1F, 0x8E2C, 0x8E2E, 0x8E23, 0x8E2F, 0x8E3A, 0x8E40, 0x8E39, - 0x8E35, 0x8E3D, 0x8E31, 0x8E49, 0x8E41, 0x8E42, 0x8E51, 0x8E52, - 0x8E4A, 0x8E70, 0x8E76, 0x8E7C, 0x8E6F, 0x8E74, 0x8E85, 0x8E8F, - 0x8E94, 0x8E90, 0x8E9C, 0x8E9E, 0x8C78, 0x8C82, 0x8C8A, 0x8C85, - 0x8C98, 0x8C94, 0x659B, 0x89D6, 0x89DE, 0x89DA, 0x89DC, 0, -plane f6 -at 0x40 - 0x9BDC, 0x9BDD, 0x9BDE, 0x9BDF, 0x9BE0, 0x9BE1, 0x9BE2, 0x9BE3, - 0x9BE4, 0x9BE5, 0x9BE6, 0x9BE7, 0x9BE8, 0x9BE9, 0x9BEA, 0x9BEB, - 0x9BEC, 0x9BED, 0x9BEE, 0x9BEF, 0x9BF0, 0x9BF1, 0x9BF2, 0x9BF3, - 0x9BF4, 0x9BF5, 0x9BF6, 0x9BF7, 0x9BF8, 0x9BF9, 0x9BFA, 0x9BFB, - 0x9BFC, 0x9BFD, 0x9BFE, 0x9BFF, 0x9C00, 0x9C01, 0x9C02, 0x9C03, - 0x9C04, 0x9C05, 0x9C06, 0x9C07, 0x9C08, 0x9C09, 0x9C0A, 0x9C0B, - 0x9C0C, 0x9C0D, 0x9C0E, 0x9C0F, 0x9C10, 0x9C11, 0x9C12, 0x9C13, - 0x9C14, 0x9C15, 0x9C16, 0x9C17, 0x9C18, 0x9C19, 0x9C1A, 0, - 0x9C1B, 0x9C1C, 0x9C1D, 0x9C1E, 0x9C1F, 0x9C20, 0x9C21, 0x9C22, - 0x9C23, 0x9C24, 0x9C25, 0x9C26, 0x9C27, 0x9C28, 0x9C29, 0x9C2A, - 0x9C2B, 0x9C2C, 0x9C2D, 0x9C2E, 0x9C2F, 0x9C30, 0x9C31, 0x9C32, - 0x9C33, 0x9C34, 0x9C35, 0x9C36, 0x9C37, 0x9C38, 0x9C39, 0x9C3A, - 0x9C3B, 0x89E5, 0x89EB, 0x89EF, 0x8A3E, 0x8B26, 0x9753, 0x96E9, - 0x96F3, 0x96EF, 0x9706, 0x9701, 0x9708, 0x970F, 0x970E, 0x972A, - 0x972D, 0x9730, 0x973E, 0x9F80, 0x9F83, 0x9F85, 0x9F86, 0x9F87, - 0x9F88, 0x9F89, 0x9F8A, 0x9F8C, 0x9EFE, 0x9F0B, 0x9F0D, 0x96B9, - 0x96BC, 0x96BD, 0x96CE, 0x96D2, 0x77BF, 0x96E0, 0x928E, 0x92AE, - 0x92C8, 0x933E, 0x936A, 0x93CA, 0x938F, 0x943E, 0x946B, 0x9C7F, - 0x9C82, 0x9C85, 0x9C86, 0x9C87, 0x9C88, 0x7A23, 0x9C8B, 0x9C8E, - 0x9C90, 0x9C91, 0x9C92, 0x9C94, 0x9C95, 0x9C9A, 0x9C9B, 0x9C9E, - 0x9C9F, 0x9CA0, 0x9CA1, 0x9CA2, 0x9CA3, 0x9CA5, 0x9CA6, 0x9CA7, - 0x9CA8, 0x9CA9, 0x9CAB, 0x9CAD, 0x9CAE, 0x9CB0, 0x9CB1, 0x9CB2, - 0x9CB3, 0x9CB4, 0x9CB5, 0x9CB6, 0x9CB7, 0x9CBA, 0x9CBB, 0x9CBC, - 0x9CBD, 0x9CC4, 0x9CC5, 0x9CC6, 0x9CC7, 0x9CCA, 0x9CCB, 0, -plane f7 -at 0x40 - 0x9C3C, 0x9C3D, 0x9C3E, 0x9C3F, 0x9C40, 0x9C41, 0x9C42, 0x9C43, - 0x9C44, 0x9C45, 0x9C46, 0x9C47, 0x9C48, 0x9C49, 0x9C4A, 0x9C4B, - 0x9C4C, 0x9C4D, 0x9C4E, 0x9C4F, 0x9C50, 0x9C51, 0x9C52, 0x9C53, - 0x9C54, 0x9C55, 0x9C56, 0x9C57, 0x9C58, 0x9C59, 0x9C5A, 0x9C5B, - 0x9C5C, 0x9C5D, 0x9C5E, 0x9C5F, 0x9C60, 0x9C61, 0x9C62, 0x9C63, - 0x9C64, 0x9C65, 0x9C66, 0x9C67, 0x9C68, 0x9C69, 0x9C6A, 0x9C6B, - 0x9C6C, 0x9C6D, 0x9C6E, 0x9C6F, 0x9C70, 0x9C71, 0x9C72, 0x9C73, - 0x9C74, 0x9C75, 0x9C76, 0x9C77, 0x9C78, 0x9C79, 0x9C7A, 0, - 0x9C7B, 0x9C7D, 0x9C7E, 0x9C80, 0x9C83, 0x9C84, 0x9C89, 0x9C8A, - 0x9C8C, 0x9C8F, 0x9C93, 0x9C96, 0x9C97, 0x9C98, 0x9C99, 0x9C9D, - 0x9CAA, 0x9CAC, 0x9CAF, 0x9CB9, 0x9CBE, 0x9CBF, 0x9CC0, 0x9CC1, - 0x9CC2, 0x9CC8, 0x9CC9, 0x9CD1, 0x9CD2, 0x9CDA, 0x9CDB, 0x9CE0, - 0x9CE1, 0x9CCC, 0x9CCD, 0x9CCE, 0x9CCF, 0x9CD0, 0x9CD3, 0x9CD4, - 0x9CD5, 0x9CD7, 0x9CD8, 0x9CD9, 0x9CDC, 0x9CDD, 0x9CDF, 0x9CE2, - 0x977C, 0x9785, 0x9791, 0x9792, 0x9794, 0x97AF, 0x97AB, 0x97A3, - 0x97B2, 0x97B4, 0x9AB1, 0x9AB0, 0x9AB7, 0x9E58, 0x9AB6, 0x9ABA, - 0x9ABC, 0x9AC1, 0x9AC0, 0x9AC5, 0x9AC2, 0x9ACB, 0x9ACC, 0x9AD1, - 0x9B45, 0x9B43, 0x9B47, 0x9B49, 0x9B48, 0x9B4D, 0x9B51, 0x98E8, - 0x990D, 0x992E, 0x9955, 0x9954, 0x9ADF, 0x9AE1, 0x9AE6, 0x9AEF, - 0x9AEB, 0x9AFB, 0x9AED, 0x9AF9, 0x9B08, 0x9B0F, 0x9B13, 0x9B1F, - 0x9B23, 0x9EBD, 0x9EBE, 0x7E3B, 0x9E82, 0x9E87, 0x9E88, 0x9E8B, - 0x9E92, 0x93D6, 0x9E9D, 0x9E9F, 0x9EDB, 0x9EDC, 0x9EDD, 0x9EE0, - 0x9EDF, 0x9EE2, 0x9EE9, 0x9EE7, 0x9EE5, 0x9EEA, 0x9EEF, 0x9F22, - 0x9F2C, 0x9F2F, 0x9F39, 0x9F37, 0x9F3D, 0x9F3E, 0x9F44, 0, -plane f8 -at 0x40 - 0x9CE3, 0x9CE4, 0x9CE5, 0x9CE6, 0x9CE7, 0x9CE8, 0x9CE9, 0x9CEA, - 0x9CEB, 0x9CEC, 0x9CED, 0x9CEE, 0x9CEF, 0x9CF0, 0x9CF1, 0x9CF2, - 0x9CF3, 0x9CF4, 0x9CF5, 0x9CF6, 0x9CF7, 0x9CF8, 0x9CF9, 0x9CFA, - 0x9CFB, 0x9CFC, 0x9CFD, 0x9CFE, 0x9CFF, 0x9D00, 0x9D01, 0x9D02, - 0x9D03, 0x9D04, 0x9D05, 0x9D06, 0x9D07, 0x9D08, 0x9D09, 0x9D0A, - 0x9D0B, 0x9D0C, 0x9D0D, 0x9D0E, 0x9D0F, 0x9D10, 0x9D11, 0x9D12, - 0x9D13, 0x9D14, 0x9D15, 0x9D16, 0x9D17, 0x9D18, 0x9D19, 0x9D1A, - 0x9D1B, 0x9D1C, 0x9D1D, 0x9D1E, 0x9D1F, 0x9D20, 0x9D21, 0, - 0x9D22, 0x9D23, 0x9D24, 0x9D25, 0x9D26, 0x9D27, 0x9D28, 0x9D29, - 0x9D2A, 0x9D2B, 0x9D2C, 0x9D2D, 0x9D2E, 0x9D2F, 0x9D30, 0x9D31, - 0x9D32, 0x9D33, 0x9D34, 0x9D35, 0x9D36, 0x9D37, 0x9D38, 0x9D39, - 0x9D3A, 0x9D3B, 0x9D3C, 0x9D3D, 0x9D3E, 0x9D3F, 0x9D40, 0x9D41, - 0x9D42, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane f9 -at 0x40 - 0x9D43, 0x9D44, 0x9D45, 0x9D46, 0x9D47, 0x9D48, 0x9D49, 0x9D4A, - 0x9D4B, 0x9D4C, 0x9D4D, 0x9D4E, 0x9D4F, 0x9D50, 0x9D51, 0x9D52, - 0x9D53, 0x9D54, 0x9D55, 0x9D56, 0x9D57, 0x9D58, 0x9D59, 0x9D5A, - 0x9D5B, 0x9D5C, 0x9D5D, 0x9D5E, 0x9D5F, 0x9D60, 0x9D61, 0x9D62, - 0x9D63, 0x9D64, 0x9D65, 0x9D66, 0x9D67, 0x9D68, 0x9D69, 0x9D6A, - 0x9D6B, 0x9D6C, 0x9D6D, 0x9D6E, 0x9D6F, 0x9D70, 0x9D71, 0x9D72, - 0x9D73, 0x9D74, 0x9D75, 0x9D76, 0x9D77, 0x9D78, 0x9D79, 0x9D7A, - 0x9D7B, 0x9D7C, 0x9D7D, 0x9D7E, 0x9D7F, 0x9D80, 0x9D81, 0, - 0x9D82, 0x9D83, 0x9D84, 0x9D85, 0x9D86, 0x9D87, 0x9D88, 0x9D89, - 0x9D8A, 0x9D8B, 0x9D8C, 0x9D8D, 0x9D8E, 0x9D8F, 0x9D90, 0x9D91, - 0x9D92, 0x9D93, 0x9D94, 0x9D95, 0x9D96, 0x9D97, 0x9D98, 0x9D99, - 0x9D9A, 0x9D9B, 0x9D9C, 0x9D9D, 0x9D9E, 0x9D9F, 0x9DA0, 0x9DA1, - 0x9DA2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fa -at 0x40 - 0x9DA3, 0x9DA4, 0x9DA5, 0x9DA6, 0x9DA7, 0x9DA8, 0x9DA9, 0x9DAA, - 0x9DAB, 0x9DAC, 0x9DAD, 0x9DAE, 0x9DAF, 0x9DB0, 0x9DB1, 0x9DB2, - 0x9DB3, 0x9DB4, 0x9DB5, 0x9DB6, 0x9DB7, 0x9DB8, 0x9DB9, 0x9DBA, - 0x9DBB, 0x9DBC, 0x9DBD, 0x9DBE, 0x9DBF, 0x9DC0, 0x9DC1, 0x9DC2, - 0x9DC3, 0x9DC4, 0x9DC5, 0x9DC6, 0x9DC7, 0x9DC8, 0x9DC9, 0x9DCA, - 0x9DCB, 0x9DCC, 0x9DCD, 0x9DCE, 0x9DCF, 0x9DD0, 0x9DD1, 0x9DD2, - 0x9DD3, 0x9DD4, 0x9DD5, 0x9DD6, 0x9DD7, 0x9DD8, 0x9DD9, 0x9DDA, - 0x9DDB, 0x9DDC, 0x9DDD, 0x9DDE, 0x9DDF, 0x9DE0, 0x9DE1, 0, - 0x9DE2, 0x9DE3, 0x9DE4, 0x9DE5, 0x9DE6, 0x9DE7, 0x9DE8, 0x9DE9, - 0x9DEA, 0x9DEB, 0x9DEC, 0x9DED, 0x9DEE, 0x9DEF, 0x9DF0, 0x9DF1, - 0x9DF2, 0x9DF3, 0x9DF4, 0x9DF5, 0x9DF6, 0x9DF7, 0x9DF8, 0x9DF9, - 0x9DFA, 0x9DFB, 0x9DFC, 0x9DFD, 0x9DFE, 0x9DFF, 0x9E00, 0x9E01, - 0x9E02, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fb -at 0x40 - 0x9E03, 0x9E04, 0x9E05, 0x9E06, 0x9E07, 0x9E08, 0x9E09, 0x9E0A, - 0x9E0B, 0x9E0C, 0x9E0D, 0x9E0E, 0x9E0F, 0x9E10, 0x9E11, 0x9E12, - 0x9E13, 0x9E14, 0x9E15, 0x9E16, 0x9E17, 0x9E18, 0x9E19, 0x9E1A, - 0x9E1B, 0x9E1C, 0x9E1D, 0x9E1E, 0x9E24, 0x9E27, 0x9E2E, 0x9E30, - 0x9E34, 0x9E3B, 0x9E3C, 0x9E40, 0x9E4D, 0x9E50, 0x9E52, 0x9E53, - 0x9E54, 0x9E56, 0x9E59, 0x9E5D, 0x9E5F, 0x9E60, 0x9E61, 0x9E62, - 0x9E65, 0x9E6E, 0x9E6F, 0x9E72, 0x9E74, 0x9E75, 0x9E76, 0x9E77, - 0x9E78, 0x9E79, 0x9E7A, 0x9E7B, 0x9E7C, 0x9E7D, 0x9E80, 0, - 0x9E81, 0x9E83, 0x9E84, 0x9E85, 0x9E86, 0x9E89, 0x9E8A, 0x9E8C, - 0x9E8D, 0x9E8E, 0x9E8F, 0x9E90, 0x9E91, 0x9E94, 0x9E95, 0x9E96, - 0x9E97, 0x9E98, 0x9E99, 0x9E9A, 0x9E9B, 0x9E9C, 0x9E9E, 0x9EA0, - 0x9EA1, 0x9EA2, 0x9EA3, 0x9EA4, 0x9EA5, 0x9EA7, 0x9EA8, 0x9EA9, - 0x9EAA, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fc -at 0x40 - 0x9EAB, 0x9EAC, 0x9EAD, 0x9EAE, 0x9EAF, 0x9EB0, 0x9EB1, 0x9EB2, - 0x9EB3, 0x9EB5, 0x9EB6, 0x9EB7, 0x9EB9, 0x9EBA, 0x9EBC, 0x9EBF, - 0x9EC0, 0x9EC1, 0x9EC2, 0x9EC3, 0x9EC5, 0x9EC6, 0x9EC7, 0x9EC8, - 0x9ECA, 0x9ECB, 0x9ECC, 0x9ED0, 0x9ED2, 0x9ED3, 0x9ED5, 0x9ED6, - 0x9ED7, 0x9ED9, 0x9EDA, 0x9EDE, 0x9EE1, 0x9EE3, 0x9EE4, 0x9EE6, - 0x9EE8, 0x9EEB, 0x9EEC, 0x9EED, 0x9EEE, 0x9EF0, 0x9EF1, 0x9EF2, - 0x9EF3, 0x9EF4, 0x9EF5, 0x9EF6, 0x9EF7, 0x9EF8, 0x9EFA, 0x9EFD, - 0x9EFF, 0x9F00, 0x9F01, 0x9F02, 0x9F03, 0x9F04, 0x9F05, 0, - 0x9F06, 0x9F07, 0x9F08, 0x9F09, 0x9F0A, 0x9F0C, 0x9F0F, 0x9F11, - 0x9F12, 0x9F14, 0x9F15, 0x9F16, 0x9F18, 0x9F1A, 0x9F1B, 0x9F1C, - 0x9F1D, 0x9F1E, 0x9F1F, 0x9F21, 0x9F23, 0x9F24, 0x9F25, 0x9F26, - 0x9F27, 0x9F28, 0x9F29, 0x9F2A, 0x9F2B, 0x9F2D, 0x9F2E, 0x9F30, - 0x9F31, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fd -at 0x40 - 0x9F32, 0x9F33, 0x9F34, 0x9F35, 0x9F36, 0x9F38, 0x9F3A, 0x9F3C, - 0x9F3F, 0x9F40, 0x9F41, 0x9F42, 0x9F43, 0x9F45, 0x9F46, 0x9F47, - 0x9F48, 0x9F49, 0x9F4A, 0x9F4B, 0x9F4C, 0x9F4D, 0x9F4E, 0x9F4F, - 0x9F52, 0x9F53, 0x9F54, 0x9F55, 0x9F56, 0x9F57, 0x9F58, 0x9F59, - 0x9F5A, 0x9F5B, 0x9F5C, 0x9F5D, 0x9F5E, 0x9F5F, 0x9F60, 0x9F61, - 0x9F62, 0x9F63, 0x9F64, 0x9F65, 0x9F66, 0x9F67, 0x9F68, 0x9F69, - 0x9F6A, 0x9F6B, 0x9F6C, 0x9F6D, 0x9F6E, 0x9F6F, 0x9F70, 0x9F71, - 0x9F72, 0x9F73, 0x9F74, 0x9F75, 0x9F76, 0x9F77, 0x9F78, 0, - 0x9F79, 0x9F7A, 0x9F7B, 0x9F7C, 0x9F7D, 0x9F7E, 0x9F81, 0x9F82, - 0x9F8D, 0x9F8E, 0x9F8F, 0x9F90, 0x9F91, 0x9F92, 0x9F93, 0x9F94, - 0x9F95, 0x9F96, 0x9F97, 0x9F98, 0x9F9C, 0x9F9D, 0x9F9E, 0x9FA1, - 0x9FA2, 0x9FA3, 0x9FA4, 0x9FA5, 0xF92C, 0xF979, 0xF995, 0xF9E7, - 0xF9F1, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -plane fe -at 0x40 - 0xFA0C, 0xFA0D, 0xFA0E, 0xFA0F, 0xFA11, 0xFA13, 0xFA14, 0xFA18, - 0xFA1F, 0xFA20, 0xFA21, 0xFA23, 0xFA24, 0xFA27, 0xFA28, 0xFA29, - 0xE815, 0xE816, 0xE817, 0xE818, 0xE819, 0xE81A, 0xE81B, 0xE81C, - 0xE81D, 0xE81E, 0xE81F, 0xE820, 0xE821, 0xE822, 0xE823, 0xE824, - 0xE825, 0xE826, 0xE827, 0xE828, 0xE829, 0xE82A, 0xE82B, 0xE82C, - 0xE82D, 0xE82E, 0xE82F, 0xE830, 0xE831, 0xE832, 0xE833, 0xE834, - 0xE835, 0xE836, 0xE837, 0xE838, 0xE839, 0xE83A, 0xE83B, 0xE83C, - 0xE83D, 0xE83E, 0xE83F, 0xE840, 0xE841, 0xE842, 0xE843, 0, - 0xE844, 0xE845, 0xE846, 0xE847, 0xE848, 0xE849, 0xE84A, 0xE84B, - 0xE84C, 0xE84D, 0xE84E, 0xE84F, 0xE850, 0xE851, 0xE852, 0xE853, - 0xE854, 0xE855, 0xE856, 0xE857, 0xE858, 0xE859, 0xE85A, 0xE85B, - 0xE85C, 0xE85D, 0xE85E, 0xE85F, 0xE860, 0xE861, 0xE862, 0xE863, - 0xE864, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, diff --git a/Build/source/texk/ttf2pt1/cygbuild.sh b/Build/source/texk/ttf2pt1/cygbuild.sh deleted file mode 100644 index 262c76d7c83..00000000000 --- a/Build/source/texk/ttf2pt1/cygbuild.sh +++ /dev/null @@ -1,8 +0,0 @@ -: -# this file should be run from Cygnus BASH -# file to build ttf2pt1 with Cygnus GCC on Windows -# don't forget to copy CYGWIN1.DLL into C:\WINDOWS - -gcc -o ttf2pt1 -DWINDOWS ttf2pt1.c pt1.c t1asm.c ttf.c -lm -gcc -o t1asm -DWINDOWS -DSTANDALONE t1asm.c - diff --git a/Build/source/texk/ttf2pt1/encodings/README.html b/Build/source/texk/ttf2pt1/encodings/README.html deleted file mode 100644 index 9a7c40c77df..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/README.html +++ /dev/null @@ -1,81 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -The INSTALLATION GUIDE -</TITLE> -</HEAD> -<BODY> -Sergey A. Babkin -<br> -<A HREF="mailto:babkin@bellatlantic.net"> -<babkin@bellatlantic.net></A> or <A HREF="mailto:sab123@hotmail.com"><sab123@hotmail.com></A> -<p> -<! -(Do not edit this file, it is generated from README.html!!!) -> - -<H3> -The Translation Tables -</H3> -<! ----------------------- -> - -These translation tables are used to translate the Type 1 fonts between -different encodings of the same language. -<p> - -The file names are supposed to have the suffix <tt>.tbl</tt>. Each file -describes one encoding, and all the tables for a given language -are stored in the same directory. -<p> - -The file format is quite simple: just a sequence of rows in -format -<p> - -<tt> -<name> <decimal code> -</tt> -<p> - -The names do not have to conform to any standard, just the same -glyph must have the same name in all the files for a given language. -<p> - -Not all the codes need to be described in the tables, the codes that -are not mentioned in the tables are left untranslated. So a file -of zero length may be used in case when no translation is neccessary. -<p> - -The translation changes only the encoding table of the font and does not -rename the glyphs in the font file. -<p> - -<H3> -Examples -</H3> -<! --------- -> - -The directory `russian' contains the tables for some encodings of the -Russian language: KOI-8, IBM CP-866, IBM CP-1251 and just for fun -ISO-8859/5 (nobody uses it anyways). The tables describe both russian -letters and table graphics characters (except for CP-1251 for which -the table graphics is not defined, so the table graphics portion for -it is just copied from KOI-8). -<p> - -The file for ISO-8859/1 is just a copy of file for KOI-8. It is neccessary -because Netscape has rather weird ideas about the documents in -KOI-8 encoding. The common way to fool Netscape is to set the KOI-8 -fonts for the ISO-8859/1 encoding and set the default encoding -in Netscape to 8859/1. -<p> - -The directory `latin1' contains an empty table for ISO-8859/1 -because it does not need any translation. -<p> -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/encodings/adobestd/adobe-std.tbl b/Build/source/texk/ttf2pt1/encodings/adobestd/adobe-std.tbl deleted file mode 100644 index e69de29bb2d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/adobestd/adobe-std.tbl +++ /dev/null diff --git a/Build/source/texk/ttf2pt1/encodings/bulgarian/README b/Build/source/texk/ttf2pt1/encodings/bulgarian/README deleted file mode 100644 index 08f8ce36053..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/bulgarian/README +++ /dev/null @@ -1,3 +0,0 @@ -These files are copies of thos provided for the language "cyrillic" -and are provided for compatibility purposes only, please -use the language "cyrillic" instead. diff --git a/Build/source/texk/ttf2pt1/encodings/bulgarian/encodings.alias b/Build/source/texk/ttf2pt1/encodings/bulgarian/encodings.alias deleted file mode 100644 index e1f29063bbc..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/bulgarian/encodings.alias +++ /dev/null @@ -1,4 +0,0 @@ -# alias real-name -iso8859-1 koi8-r -windows-1251 ibm-1251 -cp-866 ibm-866 diff --git a/Build/source/texk/ttf2pt1/encodings/bulgarian/ibm-1251.tbl b/Build/source/texk/ttf2pt1/encodings/bulgarian/ibm-1251.tbl deleted file mode 100644 index 3fd17bd26c4..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/bulgarian/ibm-1251.tbl +++ /dev/null @@ -1,127 +0,0 @@ -cyr_DJE 128 -cyr_GJE 129 -quotesinglbase 130 -cyr_gje 131 -quotedblbase 132 -ellipsis 133 -dagger 134 -daggerdbl 135 -Euro 136 -perthousand 137 -cyr_LJE 138 -guilsinglleft 139 -cyr_NJE 140 -cyr_KJE 141 -cyr_TSHE 142 -cyr_DZHE 143 -cyr_dje 144 -quotesinglleft 145 -quotesinglright 146 -quotedblleft 147 -quotedblright 148 -bullet 149 -endash 150 -emdash 151 -trademark 153 -cyr_lje 154 -guilsinglright 155 -cyr_nje 156 -cyr_kje 157 -cyr_tshe 158 -cyr_dzhe 159 -nbspace 160 -cyr_SHORT_U 161 -cyr_short_u 162 -cyr_JE 163 -currency 164 -cyr_GHE_UPTURN 165 -brokenbar 166 -section 167 -cyr_IO 168 -copyright 169 -cyr_UKRAINIAN_IE 170 -guillemotleft 171 -notsign 172 -hyphen 173 -registered 174 -cyr_YI 175 -degree 176 -plusminus 177 -cyr_BYELORUSSIAN_UKRAINIAN_I 178 -cyr_byelorussian_ukrainian_i 179 -cyr_ghe_upturn 180 -mu 181 -paragraph 182 -periodcentered 183 -cyr_io 184 -numero 185 -cyr_ukrainian_ie 186 -guillemotright 187 -cyr_je 188 -cyr_DZE 189 -cyr_dze 190 -cyr_yi 191 -cyr_A 192 -cyr_BE 193 -cyr_VE 194 -cyr_GHE 195 -cyr_DE 196 -cyr_IE 197 -cyr_ZHE 198 -cyr_ZE 199 -cyr_I 200 -cyr_SHORT_I 201 -cyr_KA 202 -cyr_EL 203 -cyr_EM 204 -cyr_EN 205 -cyr_O 206 -cyr_PE 207 -cyr_ER 208 -cyr_ES 209 -cyr_TE 210 -cyr_U 211 -cyr_EF 212 -cyr_HA 213 -cyr_TSE 214 -cyr_CHE 215 -cyr_SHA 216 -cyr_SHCHA 217 -cyr_HARD_SIGN 218 -cyr_YERU 219 -cyr_SOFT_SIGN 220 -cyr_E 221 -cyr_YU 222 -cyr_YA 223 -cyr_a 224 -cyr_be 225 -cyr_ve 226 -cyr_ghe 227 -cyr_de 228 -cyr_ie 229 -cyr_zhe 230 -cyr_ze 231 -cyr_i 232 -cyr_short_i 233 -cyr_ka 234 -cyr_el 235 -cyr_em 236 -cyr_en 237 -cyr_o 238 -cyr_pe 239 -cyr_er 240 -cyr_es 241 -cyr_te 242 -cyr_u 243 -cyr_ef 244 -cyr_ha 245 -cyr_tse 246 -cyr_che 247 -cyr_sha 248 -cyr_shcha 249 -cyr_hard_sign 250 -cyr_yeru 251 -cyr_soft_sign 252 -cyr_e 253 -cyr_yu 254 -cyr_ya 255 diff --git a/Build/source/texk/ttf2pt1/encodings/bulgarian/ibm-866.tbl b/Build/source/texk/ttf2pt1/encodings/bulgarian/ibm-866.tbl deleted file mode 100644 index b0451ae9277..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/bulgarian/ibm-866.tbl +++ /dev/null @@ -1,128 +0,0 @@ -cyr_A 128 -cyr_BE 129 -cyr_CHE 151 -cyr_DE 132 -cyr_E 157 -cyr_EF 148 -cyr_EL 139 -cyr_EM 140 -cyr_EN 141 -cyr_ER 144 -cyr_ES 145 -cyr_GHE 131 -cyr_HA 149 -cyr_HARD_SIGN 154 -cyr_I 136 -cyr_IE 133 -cyr_KA 138 -cyr_O 142 -cyr_PE 143 -cyr_SHA 152 -cyr_SHCHA 153 -cyr_SHORT_I 137 -cyr_SOFT_SIGN 156 -cyr_TE 146 -cyr_TSE 150 -cyr_U 147 -cyr_VE 130 -cyr_YA 159 -cyr_YERU 155 -cyr_IO 240 -cyr_YU 158 -cyr_ZE 135 -cyr_ZHE 134 -cyr_a 160 -cyr_be 161 -cyr_che 231 -cyr_de 164 -cyr_e 237 -cyr_ef 228 -cyr_el 171 -cyr_em 172 -cyr_en 173 -cyr_er 224 -cyr_es 225 -graphic_100pc 219 -graphic_25pc 178 -graphic_50pc 177 -graphic_75pc 176 -graphic_LD 187 -graphic_LR 205 -graphic_LRD 203 -graphic_LRT 202 -graphic_LRTD 206 -graphic_LRd 209 -graphic_LRt 207 -graphic_LRtd 216 -graphic_LT 188 -graphic_LTD 185 -graphic_Ld 184 -graphic_Lt 190 -graphic_Ltd 181 -graphic_RD 201 -graphic_RT 200 -graphic_RTD 204 -graphic_Rd 213 -graphic_Rt 212 -graphic_Rtd 198 -graphic_TD 186 -copyright 252 -degree 248 -graphic_dintegral 245 -graphic_divide 246 -graphic_equal 247 -graphic_fatdot 249 -graphic_ge 242 -graphic_lD 183 -graphic_lT 189 -graphic_lTD 182 -graphic_ld 191 -graphic_le 243 -graphic_leandot 250 -graphic_lefthalf 221 -graphic_lowerhalf 220 -graphic_lr 196 -graphic_lrD 210 -graphic_lrT 208 -graphic_lrTD 215 -graphic_lrd 194 -graphic_lrt 193 -graphic_lrtd 197 -graphic_lt 217 -graphic_ltd 180 -graphic_power2 253 -graphic_rD 214 -graphic_rT 211 -graphic_rTD 199 -graphic_rd 218 -graphic_righthalf 222 -graphic_root 251 -graphic_rt 192 -graphic_rtd 195 -nbspace 255 -graphic_square 254 -graphic_td 179 -graphic_tintegral 244 -graphic_upperhalf 223 -cyr_ghe 163 -cyr_ha 229 -cyr_hard_sign 234 -cyr_i 168 -cyr_ie 165 -cyr_ka 170 -cyr_o 174 -cyr_pe 175 -cyr_sha 232 -cyr_shcha 233 -cyr_short_i 169 -cyr_soft_sign 236 -cyr_te 226 -cyr_tse 230 -cyr_u 227 -cyr_ve 162 -cyr_ya 239 -cyr_yeru 235 -cyr_io 241 -cyr_yu 238 -cyr_ze 167 -cyr_zhe 166 diff --git a/Build/source/texk/ttf2pt1/encodings/bulgarian/iso8859-5.tbl b/Build/source/texk/ttf2pt1/encodings/bulgarian/iso8859-5.tbl deleted file mode 100644 index 8e60e18fd91..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/bulgarian/iso8859-5.tbl +++ /dev/null @@ -1,127 +0,0 @@ -cyr_GHE_UPTURN 128 -cyr_ghe_upturn 129 -quotesinglbase 130 -currency 131 -quotedblbase 132 -ellipsis 133 -dagger 134 -daggerdbl 135 -Euro 136 -perthousand 137 -brokenbar 138 -guilsinglleft 139 -copyright 140 -guillemotleft 141 -notsign 142 -registered 143 -degree 144 -quotesinglleft 145 -quotesinglright 146 -quotedblleft 147 -quotedblright 148 -bullet 149 -endash 150 -emdash 151 -trademark 153 -plusminus 154 -guilsinglright 155 -mu 156 -paragraph 157 -periodcentered 158 -guillemotright 159 -nbspace 160 -cyr_IO 161 -cyr_DJE 162 -cyr_GJE 163 -cyr_UKRAINIAN_IE 164 -cyr_DZE 165 -cyr_BYELORUSSIAN_UKRAINIAN_I 166 -cyr_YI 167 -cyr_JE 168 -cyr_LJE 169 -cyr_NJE 170 -cyr_TSHE 171 -cyr_KJE 172 -hyphen 173 -cyr_SHORT_U 174 -cyr_DZHE 175 -cyr_A 176 -cyr_BE 177 -cyr_VE 178 -cyr_GHE 179 -cyr_DE 180 -cyr_IE 181 -cyr_ZHE 182 -cyr_ZE 183 -cyr_I 184 -cyr_SHORT_I 185 -cyr_KA 186 -cyr_EL 187 -cyr_EM 188 -cyr_EN 189 -cyr_O 190 -cyr_PE 191 -cyr_ER 192 -cyr_ES 193 -cyr_TE 194 -cyr_U 195 -cyr_EF 196 -cyr_HA 197 -cyr_TSE 198 -cyr_CHE 199 -cyr_SHA 200 -cyr_SHCHA 201 -cyr_HARD_SIGN 202 -cyr_YERU 203 -cyr_SOFT_SIGN 204 -cyr_E 205 -cyr_YU 206 -cyr_YA 207 -cyr_a 208 -cyr_be 209 -cyr_ve 210 -cyr_ghe 211 -cyr_de 212 -cyr_ie 213 -cyr_zhe 214 -cyr_ze 215 -cyr_i 216 -cyr_short_i 217 -cyr_ka 218 -cyr_el 219 -cyr_em 220 -cyr_en 221 -cyr_o 222 -cyr_pe 223 -cyr_er 224 -cyr_es 225 -cyr_te 226 -cyr_u 227 -cyr_ef 228 -cyr_ha 229 -cyr_tse 230 -cyr_che 231 -cyr_sha 232 -cyr_shcha 233 -cyr_hard_sign 234 -cyr_yeru 235 -cyr_soft_sign 236 -cyr_e 237 -cyr_yu 238 -cyr_ya 239 -numero 240 -cyr_io 241 -cyr_dje 242 -cyr_gje 243 -cyr_ukrainian_ie 244 -cyr_dze 245 -cyr_byelorussian_ukrainian_i 246 -cyr_yi 247 -cyr_je 248 -cyr_lje 249 -cyr_nje 250 -cyr_tshe 251 -cyr_kje 252 -section 253 -cyr_short_u 254 -cyr_dzhe 255 diff --git a/Build/source/texk/ttf2pt1/encodings/bulgarian/koi8-r.tbl b/Build/source/texk/ttf2pt1/encodings/bulgarian/koi8-r.tbl deleted file mode 100644 index e22775a230d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/bulgarian/koi8-r.tbl +++ /dev/null @@ -1,128 +0,0 @@ -cyr_A 225 -cyr_BE 226 -cyr_CHE 254 -cyr_DE 228 -cyr_E 252 -cyr_EF 230 -cyr_EL 236 -cyr_EM 237 -cyr_EN 238 -cyr_ER 242 -cyr_ES 243 -cyr_GHE 231 -cyr_HA 232 -cyr_HARD_SIGN 255 -cyr_I 233 -cyr_IE 229 -cyr_KA 235 -cyr_O 239 -cyr_PE 240 -cyr_SHA 251 -cyr_SHCHA 253 -cyr_SHORT_I 234 -cyr_SOFT_SIGN 248 -cyr_TE 244 -cyr_TSE 227 -cyr_U 245 -cyr_VE 247 -cyr_YA 241 -cyr_YERU 249 -cyr_IO 179 -cyr_YU 224 -cyr_ZE 250 -cyr_ZHE 246 -cyr_a 193 -cyr_be 194 -cyr_che 222 -cyr_de 196 -cyr_e 220 -cyr_ef 198 -cyr_el 204 -cyr_em 205 -cyr_en 206 -cyr_er 210 -cyr_es 211 -graphic_100pc 141 -graphic_25pc 144 -graphic_50pc 145 -graphic_75pc 146 -graphic_LD 168 -graphic_LR 160 -graphic_LRD 184 -graphic_LRT 187 -graphic_LRTD 190 -graphic_LRd 182 -graphic_LRt 185 -graphic_LRtd 188 -graphic_LT 174 -graphic_LTD 181 -graphic_Ld 166 -graphic_Lt 172 -graphic_Ltd 178 -graphic_RD 165 -graphic_RT 171 -graphic_RTD 177 -graphic_Rd 162 -graphic_Rt 170 -graphic_Rtd 175 -graphic_TD 161 -copyright 191 -degree 156 -graphic_dintegral 155 -graphic_divide 159 -graphic_equal 151 -graphic_fatdot 149 -graphic_ge 153 -graphic_lD 167 -graphic_lT 173 -graphic_lTD 180 -graphic_ld 131 -graphic_le 152 -graphic_leandot 158 -graphic_lefthalf 142 -graphic_lowerhalf 140 -graphic_lr 128 -graphic_lrD 183 -graphic_lrT 186 -graphic_lrTD 189 -graphic_lrd 136 -graphic_lrt 137 -graphic_lrtd 138 -graphic_lt 133 -graphic_ltd 135 -graphic_power2 157 -graphic_rD 164 -graphic_rT 169 -graphic_rTD 176 -graphic_rd 130 -graphic_righthalf 143 -graphic_root 150 -graphic_rt 132 -graphic_rtd 134 -nbspace 154 -graphic_square 148 -graphic_td 129 -graphic_tintegral 147 -graphic_upperhalf 139 -cyr_ghe 199 -cyr_ha 200 -cyr_hard_sign 223 -cyr_i 201 -cyr_ie 197 -cyr_ka 203 -cyr_o 207 -cyr_pe 208 -cyr_sha 219 -cyr_shcha 221 -cyr_short_i 202 -cyr_soft_sign 216 -cyr_te 212 -cyr_tse 195 -cyr_u 213 -cyr_ve 215 -cyr_ya 209 -cyr_yeru 217 -cyr_io 163 -cyr_yu 192 -cyr_ze 218 -cyr_zhe 214 diff --git a/Build/source/texk/ttf2pt1/encodings/cyrillic/encodings.alias b/Build/source/texk/ttf2pt1/encodings/cyrillic/encodings.alias deleted file mode 100644 index e1f29063bbc..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/cyrillic/encodings.alias +++ /dev/null @@ -1,4 +0,0 @@ -# alias real-name -iso8859-1 koi8-r -windows-1251 ibm-1251 -cp-866 ibm-866 diff --git a/Build/source/texk/ttf2pt1/encodings/cyrillic/ibm-1251.tbl b/Build/source/texk/ttf2pt1/encodings/cyrillic/ibm-1251.tbl deleted file mode 100644 index 3fd17bd26c4..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/cyrillic/ibm-1251.tbl +++ /dev/null @@ -1,127 +0,0 @@ -cyr_DJE 128 -cyr_GJE 129 -quotesinglbase 130 -cyr_gje 131 -quotedblbase 132 -ellipsis 133 -dagger 134 -daggerdbl 135 -Euro 136 -perthousand 137 -cyr_LJE 138 -guilsinglleft 139 -cyr_NJE 140 -cyr_KJE 141 -cyr_TSHE 142 -cyr_DZHE 143 -cyr_dje 144 -quotesinglleft 145 -quotesinglright 146 -quotedblleft 147 -quotedblright 148 -bullet 149 -endash 150 -emdash 151 -trademark 153 -cyr_lje 154 -guilsinglright 155 -cyr_nje 156 -cyr_kje 157 -cyr_tshe 158 -cyr_dzhe 159 -nbspace 160 -cyr_SHORT_U 161 -cyr_short_u 162 -cyr_JE 163 -currency 164 -cyr_GHE_UPTURN 165 -brokenbar 166 -section 167 -cyr_IO 168 -copyright 169 -cyr_UKRAINIAN_IE 170 -guillemotleft 171 -notsign 172 -hyphen 173 -registered 174 -cyr_YI 175 -degree 176 -plusminus 177 -cyr_BYELORUSSIAN_UKRAINIAN_I 178 -cyr_byelorussian_ukrainian_i 179 -cyr_ghe_upturn 180 -mu 181 -paragraph 182 -periodcentered 183 -cyr_io 184 -numero 185 -cyr_ukrainian_ie 186 -guillemotright 187 -cyr_je 188 -cyr_DZE 189 -cyr_dze 190 -cyr_yi 191 -cyr_A 192 -cyr_BE 193 -cyr_VE 194 -cyr_GHE 195 -cyr_DE 196 -cyr_IE 197 -cyr_ZHE 198 -cyr_ZE 199 -cyr_I 200 -cyr_SHORT_I 201 -cyr_KA 202 -cyr_EL 203 -cyr_EM 204 -cyr_EN 205 -cyr_O 206 -cyr_PE 207 -cyr_ER 208 -cyr_ES 209 -cyr_TE 210 -cyr_U 211 -cyr_EF 212 -cyr_HA 213 -cyr_TSE 214 -cyr_CHE 215 -cyr_SHA 216 -cyr_SHCHA 217 -cyr_HARD_SIGN 218 -cyr_YERU 219 -cyr_SOFT_SIGN 220 -cyr_E 221 -cyr_YU 222 -cyr_YA 223 -cyr_a 224 -cyr_be 225 -cyr_ve 226 -cyr_ghe 227 -cyr_de 228 -cyr_ie 229 -cyr_zhe 230 -cyr_ze 231 -cyr_i 232 -cyr_short_i 233 -cyr_ka 234 -cyr_el 235 -cyr_em 236 -cyr_en 237 -cyr_o 238 -cyr_pe 239 -cyr_er 240 -cyr_es 241 -cyr_te 242 -cyr_u 243 -cyr_ef 244 -cyr_ha 245 -cyr_tse 246 -cyr_che 247 -cyr_sha 248 -cyr_shcha 249 -cyr_hard_sign 250 -cyr_yeru 251 -cyr_soft_sign 252 -cyr_e 253 -cyr_yu 254 -cyr_ya 255 diff --git a/Build/source/texk/ttf2pt1/encodings/cyrillic/ibm-866.tbl b/Build/source/texk/ttf2pt1/encodings/cyrillic/ibm-866.tbl deleted file mode 100644 index b0451ae9277..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/cyrillic/ibm-866.tbl +++ /dev/null @@ -1,128 +0,0 @@ -cyr_A 128 -cyr_BE 129 -cyr_CHE 151 -cyr_DE 132 -cyr_E 157 -cyr_EF 148 -cyr_EL 139 -cyr_EM 140 -cyr_EN 141 -cyr_ER 144 -cyr_ES 145 -cyr_GHE 131 -cyr_HA 149 -cyr_HARD_SIGN 154 -cyr_I 136 -cyr_IE 133 -cyr_KA 138 -cyr_O 142 -cyr_PE 143 -cyr_SHA 152 -cyr_SHCHA 153 -cyr_SHORT_I 137 -cyr_SOFT_SIGN 156 -cyr_TE 146 -cyr_TSE 150 -cyr_U 147 -cyr_VE 130 -cyr_YA 159 -cyr_YERU 155 -cyr_IO 240 -cyr_YU 158 -cyr_ZE 135 -cyr_ZHE 134 -cyr_a 160 -cyr_be 161 -cyr_che 231 -cyr_de 164 -cyr_e 237 -cyr_ef 228 -cyr_el 171 -cyr_em 172 -cyr_en 173 -cyr_er 224 -cyr_es 225 -graphic_100pc 219 -graphic_25pc 178 -graphic_50pc 177 -graphic_75pc 176 -graphic_LD 187 -graphic_LR 205 -graphic_LRD 203 -graphic_LRT 202 -graphic_LRTD 206 -graphic_LRd 209 -graphic_LRt 207 -graphic_LRtd 216 -graphic_LT 188 -graphic_LTD 185 -graphic_Ld 184 -graphic_Lt 190 -graphic_Ltd 181 -graphic_RD 201 -graphic_RT 200 -graphic_RTD 204 -graphic_Rd 213 -graphic_Rt 212 -graphic_Rtd 198 -graphic_TD 186 -copyright 252 -degree 248 -graphic_dintegral 245 -graphic_divide 246 -graphic_equal 247 -graphic_fatdot 249 -graphic_ge 242 -graphic_lD 183 -graphic_lT 189 -graphic_lTD 182 -graphic_ld 191 -graphic_le 243 -graphic_leandot 250 -graphic_lefthalf 221 -graphic_lowerhalf 220 -graphic_lr 196 -graphic_lrD 210 -graphic_lrT 208 -graphic_lrTD 215 -graphic_lrd 194 -graphic_lrt 193 -graphic_lrtd 197 -graphic_lt 217 -graphic_ltd 180 -graphic_power2 253 -graphic_rD 214 -graphic_rT 211 -graphic_rTD 199 -graphic_rd 218 -graphic_righthalf 222 -graphic_root 251 -graphic_rt 192 -graphic_rtd 195 -nbspace 255 -graphic_square 254 -graphic_td 179 -graphic_tintegral 244 -graphic_upperhalf 223 -cyr_ghe 163 -cyr_ha 229 -cyr_hard_sign 234 -cyr_i 168 -cyr_ie 165 -cyr_ka 170 -cyr_o 174 -cyr_pe 175 -cyr_sha 232 -cyr_shcha 233 -cyr_short_i 169 -cyr_soft_sign 236 -cyr_te 226 -cyr_tse 230 -cyr_u 227 -cyr_ve 162 -cyr_ya 239 -cyr_yeru 235 -cyr_io 241 -cyr_yu 238 -cyr_ze 167 -cyr_zhe 166 diff --git a/Build/source/texk/ttf2pt1/encodings/cyrillic/iso8859-5.tbl b/Build/source/texk/ttf2pt1/encodings/cyrillic/iso8859-5.tbl deleted file mode 100644 index 8e60e18fd91..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/cyrillic/iso8859-5.tbl +++ /dev/null @@ -1,127 +0,0 @@ -cyr_GHE_UPTURN 128 -cyr_ghe_upturn 129 -quotesinglbase 130 -currency 131 -quotedblbase 132 -ellipsis 133 -dagger 134 -daggerdbl 135 -Euro 136 -perthousand 137 -brokenbar 138 -guilsinglleft 139 -copyright 140 -guillemotleft 141 -notsign 142 -registered 143 -degree 144 -quotesinglleft 145 -quotesinglright 146 -quotedblleft 147 -quotedblright 148 -bullet 149 -endash 150 -emdash 151 -trademark 153 -plusminus 154 -guilsinglright 155 -mu 156 -paragraph 157 -periodcentered 158 -guillemotright 159 -nbspace 160 -cyr_IO 161 -cyr_DJE 162 -cyr_GJE 163 -cyr_UKRAINIAN_IE 164 -cyr_DZE 165 -cyr_BYELORUSSIAN_UKRAINIAN_I 166 -cyr_YI 167 -cyr_JE 168 -cyr_LJE 169 -cyr_NJE 170 -cyr_TSHE 171 -cyr_KJE 172 -hyphen 173 -cyr_SHORT_U 174 -cyr_DZHE 175 -cyr_A 176 -cyr_BE 177 -cyr_VE 178 -cyr_GHE 179 -cyr_DE 180 -cyr_IE 181 -cyr_ZHE 182 -cyr_ZE 183 -cyr_I 184 -cyr_SHORT_I 185 -cyr_KA 186 -cyr_EL 187 -cyr_EM 188 -cyr_EN 189 -cyr_O 190 -cyr_PE 191 -cyr_ER 192 -cyr_ES 193 -cyr_TE 194 -cyr_U 195 -cyr_EF 196 -cyr_HA 197 -cyr_TSE 198 -cyr_CHE 199 -cyr_SHA 200 -cyr_SHCHA 201 -cyr_HARD_SIGN 202 -cyr_YERU 203 -cyr_SOFT_SIGN 204 -cyr_E 205 -cyr_YU 206 -cyr_YA 207 -cyr_a 208 -cyr_be 209 -cyr_ve 210 -cyr_ghe 211 -cyr_de 212 -cyr_ie 213 -cyr_zhe 214 -cyr_ze 215 -cyr_i 216 -cyr_short_i 217 -cyr_ka 218 -cyr_el 219 -cyr_em 220 -cyr_en 221 -cyr_o 222 -cyr_pe 223 -cyr_er 224 -cyr_es 225 -cyr_te 226 -cyr_u 227 -cyr_ef 228 -cyr_ha 229 -cyr_tse 230 -cyr_che 231 -cyr_sha 232 -cyr_shcha 233 -cyr_hard_sign 234 -cyr_yeru 235 -cyr_soft_sign 236 -cyr_e 237 -cyr_yu 238 -cyr_ya 239 -numero 240 -cyr_io 241 -cyr_dje 242 -cyr_gje 243 -cyr_ukrainian_ie 244 -cyr_dze 245 -cyr_byelorussian_ukrainian_i 246 -cyr_yi 247 -cyr_je 248 -cyr_lje 249 -cyr_nje 250 -cyr_tshe 251 -cyr_kje 252 -section 253 -cyr_short_u 254 -cyr_dzhe 255 diff --git a/Build/source/texk/ttf2pt1/encodings/cyrillic/koi8-r.tbl b/Build/source/texk/ttf2pt1/encodings/cyrillic/koi8-r.tbl deleted file mode 100644 index e22775a230d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/cyrillic/koi8-r.tbl +++ /dev/null @@ -1,128 +0,0 @@ -cyr_A 225 -cyr_BE 226 -cyr_CHE 254 -cyr_DE 228 -cyr_E 252 -cyr_EF 230 -cyr_EL 236 -cyr_EM 237 -cyr_EN 238 -cyr_ER 242 -cyr_ES 243 -cyr_GHE 231 -cyr_HA 232 -cyr_HARD_SIGN 255 -cyr_I 233 -cyr_IE 229 -cyr_KA 235 -cyr_O 239 -cyr_PE 240 -cyr_SHA 251 -cyr_SHCHA 253 -cyr_SHORT_I 234 -cyr_SOFT_SIGN 248 -cyr_TE 244 -cyr_TSE 227 -cyr_U 245 -cyr_VE 247 -cyr_YA 241 -cyr_YERU 249 -cyr_IO 179 -cyr_YU 224 -cyr_ZE 250 -cyr_ZHE 246 -cyr_a 193 -cyr_be 194 -cyr_che 222 -cyr_de 196 -cyr_e 220 -cyr_ef 198 -cyr_el 204 -cyr_em 205 -cyr_en 206 -cyr_er 210 -cyr_es 211 -graphic_100pc 141 -graphic_25pc 144 -graphic_50pc 145 -graphic_75pc 146 -graphic_LD 168 -graphic_LR 160 -graphic_LRD 184 -graphic_LRT 187 -graphic_LRTD 190 -graphic_LRd 182 -graphic_LRt 185 -graphic_LRtd 188 -graphic_LT 174 -graphic_LTD 181 -graphic_Ld 166 -graphic_Lt 172 -graphic_Ltd 178 -graphic_RD 165 -graphic_RT 171 -graphic_RTD 177 -graphic_Rd 162 -graphic_Rt 170 -graphic_Rtd 175 -graphic_TD 161 -copyright 191 -degree 156 -graphic_dintegral 155 -graphic_divide 159 -graphic_equal 151 -graphic_fatdot 149 -graphic_ge 153 -graphic_lD 167 -graphic_lT 173 -graphic_lTD 180 -graphic_ld 131 -graphic_le 152 -graphic_leandot 158 -graphic_lefthalf 142 -graphic_lowerhalf 140 -graphic_lr 128 -graphic_lrD 183 -graphic_lrT 186 -graphic_lrTD 189 -graphic_lrd 136 -graphic_lrt 137 -graphic_lrtd 138 -graphic_lt 133 -graphic_ltd 135 -graphic_power2 157 -graphic_rD 164 -graphic_rT 169 -graphic_rTD 176 -graphic_rd 130 -graphic_righthalf 143 -graphic_root 150 -graphic_rt 132 -graphic_rtd 134 -nbspace 154 -graphic_square 148 -graphic_td 129 -graphic_tintegral 147 -graphic_upperhalf 139 -cyr_ghe 199 -cyr_ha 200 -cyr_hard_sign 223 -cyr_i 201 -cyr_ie 197 -cyr_ka 203 -cyr_o 207 -cyr_pe 208 -cyr_sha 219 -cyr_shcha 221 -cyr_short_i 202 -cyr_soft_sign 216 -cyr_te 212 -cyr_tse 195 -cyr_u 213 -cyr_ve 215 -cyr_ya 209 -cyr_yeru 217 -cyr_io 163 -cyr_yu 192 -cyr_ze 218 -cyr_zhe 214 diff --git a/Build/source/texk/ttf2pt1/encodings/latin1/iso8859-1.tbl b/Build/source/texk/ttf2pt1/encodings/latin1/iso8859-1.tbl deleted file mode 100644 index e69de29bb2d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/latin1/iso8859-1.tbl +++ /dev/null diff --git a/Build/source/texk/ttf2pt1/encodings/latin2/iso8859-2.tbl b/Build/source/texk/ttf2pt1/encodings/latin2/iso8859-2.tbl deleted file mode 100644 index e69de29bb2d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/latin2/iso8859-2.tbl +++ /dev/null diff --git a/Build/source/texk/ttf2pt1/encodings/latin4/iso8859-4 b/Build/source/texk/ttf2pt1/encodings/latin4/iso8859-4 deleted file mode 100644 index e69de29bb2d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/latin4/iso8859-4 +++ /dev/null diff --git a/Build/source/texk/ttf2pt1/encodings/latin4/iso8859-4.tbl b/Build/source/texk/ttf2pt1/encodings/latin4/iso8859-4.tbl deleted file mode 100644 index e69de29bb2d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/latin4/iso8859-4.tbl +++ /dev/null diff --git a/Build/source/texk/ttf2pt1/encodings/latin5/iso8859-9 b/Build/source/texk/ttf2pt1/encodings/latin5/iso8859-9 deleted file mode 100644 index e69de29bb2d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/latin5/iso8859-9 +++ /dev/null diff --git a/Build/source/texk/ttf2pt1/encodings/russian/README b/Build/source/texk/ttf2pt1/encodings/russian/README deleted file mode 100644 index 08f8ce36053..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/russian/README +++ /dev/null @@ -1,3 +0,0 @@ -These files are copies of thos provided for the language "cyrillic" -and are provided for compatibility purposes only, please -use the language "cyrillic" instead. diff --git a/Build/source/texk/ttf2pt1/encodings/russian/encodings.alias b/Build/source/texk/ttf2pt1/encodings/russian/encodings.alias deleted file mode 100644 index e1f29063bbc..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/russian/encodings.alias +++ /dev/null @@ -1,4 +0,0 @@ -# alias real-name -iso8859-1 koi8-r -windows-1251 ibm-1251 -cp-866 ibm-866 diff --git a/Build/source/texk/ttf2pt1/encodings/russian/ibm-1251.tbl b/Build/source/texk/ttf2pt1/encodings/russian/ibm-1251.tbl deleted file mode 100644 index 3fd17bd26c4..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/russian/ibm-1251.tbl +++ /dev/null @@ -1,127 +0,0 @@ -cyr_DJE 128 -cyr_GJE 129 -quotesinglbase 130 -cyr_gje 131 -quotedblbase 132 -ellipsis 133 -dagger 134 -daggerdbl 135 -Euro 136 -perthousand 137 -cyr_LJE 138 -guilsinglleft 139 -cyr_NJE 140 -cyr_KJE 141 -cyr_TSHE 142 -cyr_DZHE 143 -cyr_dje 144 -quotesinglleft 145 -quotesinglright 146 -quotedblleft 147 -quotedblright 148 -bullet 149 -endash 150 -emdash 151 -trademark 153 -cyr_lje 154 -guilsinglright 155 -cyr_nje 156 -cyr_kje 157 -cyr_tshe 158 -cyr_dzhe 159 -nbspace 160 -cyr_SHORT_U 161 -cyr_short_u 162 -cyr_JE 163 -currency 164 -cyr_GHE_UPTURN 165 -brokenbar 166 -section 167 -cyr_IO 168 -copyright 169 -cyr_UKRAINIAN_IE 170 -guillemotleft 171 -notsign 172 -hyphen 173 -registered 174 -cyr_YI 175 -degree 176 -plusminus 177 -cyr_BYELORUSSIAN_UKRAINIAN_I 178 -cyr_byelorussian_ukrainian_i 179 -cyr_ghe_upturn 180 -mu 181 -paragraph 182 -periodcentered 183 -cyr_io 184 -numero 185 -cyr_ukrainian_ie 186 -guillemotright 187 -cyr_je 188 -cyr_DZE 189 -cyr_dze 190 -cyr_yi 191 -cyr_A 192 -cyr_BE 193 -cyr_VE 194 -cyr_GHE 195 -cyr_DE 196 -cyr_IE 197 -cyr_ZHE 198 -cyr_ZE 199 -cyr_I 200 -cyr_SHORT_I 201 -cyr_KA 202 -cyr_EL 203 -cyr_EM 204 -cyr_EN 205 -cyr_O 206 -cyr_PE 207 -cyr_ER 208 -cyr_ES 209 -cyr_TE 210 -cyr_U 211 -cyr_EF 212 -cyr_HA 213 -cyr_TSE 214 -cyr_CHE 215 -cyr_SHA 216 -cyr_SHCHA 217 -cyr_HARD_SIGN 218 -cyr_YERU 219 -cyr_SOFT_SIGN 220 -cyr_E 221 -cyr_YU 222 -cyr_YA 223 -cyr_a 224 -cyr_be 225 -cyr_ve 226 -cyr_ghe 227 -cyr_de 228 -cyr_ie 229 -cyr_zhe 230 -cyr_ze 231 -cyr_i 232 -cyr_short_i 233 -cyr_ka 234 -cyr_el 235 -cyr_em 236 -cyr_en 237 -cyr_o 238 -cyr_pe 239 -cyr_er 240 -cyr_es 241 -cyr_te 242 -cyr_u 243 -cyr_ef 244 -cyr_ha 245 -cyr_tse 246 -cyr_che 247 -cyr_sha 248 -cyr_shcha 249 -cyr_hard_sign 250 -cyr_yeru 251 -cyr_soft_sign 252 -cyr_e 253 -cyr_yu 254 -cyr_ya 255 diff --git a/Build/source/texk/ttf2pt1/encodings/russian/ibm-866.tbl b/Build/source/texk/ttf2pt1/encodings/russian/ibm-866.tbl deleted file mode 100644 index b0451ae9277..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/russian/ibm-866.tbl +++ /dev/null @@ -1,128 +0,0 @@ -cyr_A 128 -cyr_BE 129 -cyr_CHE 151 -cyr_DE 132 -cyr_E 157 -cyr_EF 148 -cyr_EL 139 -cyr_EM 140 -cyr_EN 141 -cyr_ER 144 -cyr_ES 145 -cyr_GHE 131 -cyr_HA 149 -cyr_HARD_SIGN 154 -cyr_I 136 -cyr_IE 133 -cyr_KA 138 -cyr_O 142 -cyr_PE 143 -cyr_SHA 152 -cyr_SHCHA 153 -cyr_SHORT_I 137 -cyr_SOFT_SIGN 156 -cyr_TE 146 -cyr_TSE 150 -cyr_U 147 -cyr_VE 130 -cyr_YA 159 -cyr_YERU 155 -cyr_IO 240 -cyr_YU 158 -cyr_ZE 135 -cyr_ZHE 134 -cyr_a 160 -cyr_be 161 -cyr_che 231 -cyr_de 164 -cyr_e 237 -cyr_ef 228 -cyr_el 171 -cyr_em 172 -cyr_en 173 -cyr_er 224 -cyr_es 225 -graphic_100pc 219 -graphic_25pc 178 -graphic_50pc 177 -graphic_75pc 176 -graphic_LD 187 -graphic_LR 205 -graphic_LRD 203 -graphic_LRT 202 -graphic_LRTD 206 -graphic_LRd 209 -graphic_LRt 207 -graphic_LRtd 216 -graphic_LT 188 -graphic_LTD 185 -graphic_Ld 184 -graphic_Lt 190 -graphic_Ltd 181 -graphic_RD 201 -graphic_RT 200 -graphic_RTD 204 -graphic_Rd 213 -graphic_Rt 212 -graphic_Rtd 198 -graphic_TD 186 -copyright 252 -degree 248 -graphic_dintegral 245 -graphic_divide 246 -graphic_equal 247 -graphic_fatdot 249 -graphic_ge 242 -graphic_lD 183 -graphic_lT 189 -graphic_lTD 182 -graphic_ld 191 -graphic_le 243 -graphic_leandot 250 -graphic_lefthalf 221 -graphic_lowerhalf 220 -graphic_lr 196 -graphic_lrD 210 -graphic_lrT 208 -graphic_lrTD 215 -graphic_lrd 194 -graphic_lrt 193 -graphic_lrtd 197 -graphic_lt 217 -graphic_ltd 180 -graphic_power2 253 -graphic_rD 214 -graphic_rT 211 -graphic_rTD 199 -graphic_rd 218 -graphic_righthalf 222 -graphic_root 251 -graphic_rt 192 -graphic_rtd 195 -nbspace 255 -graphic_square 254 -graphic_td 179 -graphic_tintegral 244 -graphic_upperhalf 223 -cyr_ghe 163 -cyr_ha 229 -cyr_hard_sign 234 -cyr_i 168 -cyr_ie 165 -cyr_ka 170 -cyr_o 174 -cyr_pe 175 -cyr_sha 232 -cyr_shcha 233 -cyr_short_i 169 -cyr_soft_sign 236 -cyr_te 226 -cyr_tse 230 -cyr_u 227 -cyr_ve 162 -cyr_ya 239 -cyr_yeru 235 -cyr_io 241 -cyr_yu 238 -cyr_ze 167 -cyr_zhe 166 diff --git a/Build/source/texk/ttf2pt1/encodings/russian/iso8859-5.tbl b/Build/source/texk/ttf2pt1/encodings/russian/iso8859-5.tbl deleted file mode 100644 index 8e60e18fd91..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/russian/iso8859-5.tbl +++ /dev/null @@ -1,127 +0,0 @@ -cyr_GHE_UPTURN 128 -cyr_ghe_upturn 129 -quotesinglbase 130 -currency 131 -quotedblbase 132 -ellipsis 133 -dagger 134 -daggerdbl 135 -Euro 136 -perthousand 137 -brokenbar 138 -guilsinglleft 139 -copyright 140 -guillemotleft 141 -notsign 142 -registered 143 -degree 144 -quotesinglleft 145 -quotesinglright 146 -quotedblleft 147 -quotedblright 148 -bullet 149 -endash 150 -emdash 151 -trademark 153 -plusminus 154 -guilsinglright 155 -mu 156 -paragraph 157 -periodcentered 158 -guillemotright 159 -nbspace 160 -cyr_IO 161 -cyr_DJE 162 -cyr_GJE 163 -cyr_UKRAINIAN_IE 164 -cyr_DZE 165 -cyr_BYELORUSSIAN_UKRAINIAN_I 166 -cyr_YI 167 -cyr_JE 168 -cyr_LJE 169 -cyr_NJE 170 -cyr_TSHE 171 -cyr_KJE 172 -hyphen 173 -cyr_SHORT_U 174 -cyr_DZHE 175 -cyr_A 176 -cyr_BE 177 -cyr_VE 178 -cyr_GHE 179 -cyr_DE 180 -cyr_IE 181 -cyr_ZHE 182 -cyr_ZE 183 -cyr_I 184 -cyr_SHORT_I 185 -cyr_KA 186 -cyr_EL 187 -cyr_EM 188 -cyr_EN 189 -cyr_O 190 -cyr_PE 191 -cyr_ER 192 -cyr_ES 193 -cyr_TE 194 -cyr_U 195 -cyr_EF 196 -cyr_HA 197 -cyr_TSE 198 -cyr_CHE 199 -cyr_SHA 200 -cyr_SHCHA 201 -cyr_HARD_SIGN 202 -cyr_YERU 203 -cyr_SOFT_SIGN 204 -cyr_E 205 -cyr_YU 206 -cyr_YA 207 -cyr_a 208 -cyr_be 209 -cyr_ve 210 -cyr_ghe 211 -cyr_de 212 -cyr_ie 213 -cyr_zhe 214 -cyr_ze 215 -cyr_i 216 -cyr_short_i 217 -cyr_ka 218 -cyr_el 219 -cyr_em 220 -cyr_en 221 -cyr_o 222 -cyr_pe 223 -cyr_er 224 -cyr_es 225 -cyr_te 226 -cyr_u 227 -cyr_ef 228 -cyr_ha 229 -cyr_tse 230 -cyr_che 231 -cyr_sha 232 -cyr_shcha 233 -cyr_hard_sign 234 -cyr_yeru 235 -cyr_soft_sign 236 -cyr_e 237 -cyr_yu 238 -cyr_ya 239 -numero 240 -cyr_io 241 -cyr_dje 242 -cyr_gje 243 -cyr_ukrainian_ie 244 -cyr_dze 245 -cyr_byelorussian_ukrainian_i 246 -cyr_yi 247 -cyr_je 248 -cyr_lje 249 -cyr_nje 250 -cyr_tshe 251 -cyr_kje 252 -section 253 -cyr_short_u 254 -cyr_dzhe 255 diff --git a/Build/source/texk/ttf2pt1/encodings/russian/koi8-r.tbl b/Build/source/texk/ttf2pt1/encodings/russian/koi8-r.tbl deleted file mode 100644 index e22775a230d..00000000000 --- a/Build/source/texk/ttf2pt1/encodings/russian/koi8-r.tbl +++ /dev/null @@ -1,128 +0,0 @@ -cyr_A 225 -cyr_BE 226 -cyr_CHE 254 -cyr_DE 228 -cyr_E 252 -cyr_EF 230 -cyr_EL 236 -cyr_EM 237 -cyr_EN 238 -cyr_ER 242 -cyr_ES 243 -cyr_GHE 231 -cyr_HA 232 -cyr_HARD_SIGN 255 -cyr_I 233 -cyr_IE 229 -cyr_KA 235 -cyr_O 239 -cyr_PE 240 -cyr_SHA 251 -cyr_SHCHA 253 -cyr_SHORT_I 234 -cyr_SOFT_SIGN 248 -cyr_TE 244 -cyr_TSE 227 -cyr_U 245 -cyr_VE 247 -cyr_YA 241 -cyr_YERU 249 -cyr_IO 179 -cyr_YU 224 -cyr_ZE 250 -cyr_ZHE 246 -cyr_a 193 -cyr_be 194 -cyr_che 222 -cyr_de 196 -cyr_e 220 -cyr_ef 198 -cyr_el 204 -cyr_em 205 -cyr_en 206 -cyr_er 210 -cyr_es 211 -graphic_100pc 141 -graphic_25pc 144 -graphic_50pc 145 -graphic_75pc 146 -graphic_LD 168 -graphic_LR 160 -graphic_LRD 184 -graphic_LRT 187 -graphic_LRTD 190 -graphic_LRd 182 -graphic_LRt 185 -graphic_LRtd 188 -graphic_LT 174 -graphic_LTD 181 -graphic_Ld 166 -graphic_Lt 172 -graphic_Ltd 178 -graphic_RD 165 -graphic_RT 171 -graphic_RTD 177 -graphic_Rd 162 -graphic_Rt 170 -graphic_Rtd 175 -graphic_TD 161 -copyright 191 -degree 156 -graphic_dintegral 155 -graphic_divide 159 -graphic_equal 151 -graphic_fatdot 149 -graphic_ge 153 -graphic_lD 167 -graphic_lT 173 -graphic_lTD 180 -graphic_ld 131 -graphic_le 152 -graphic_leandot 158 -graphic_lefthalf 142 -graphic_lowerhalf 140 -graphic_lr 128 -graphic_lrD 183 -graphic_lrT 186 -graphic_lrTD 189 -graphic_lrd 136 -graphic_lrt 137 -graphic_lrtd 138 -graphic_lt 133 -graphic_ltd 135 -graphic_power2 157 -graphic_rD 164 -graphic_rT 169 -graphic_rTD 176 -graphic_rd 130 -graphic_righthalf 143 -graphic_root 150 -graphic_rt 132 -graphic_rtd 134 -nbspace 154 -graphic_square 148 -graphic_td 129 -graphic_tintegral 147 -graphic_upperhalf 139 -cyr_ghe 199 -cyr_ha 200 -cyr_hard_sign 223 -cyr_i 201 -cyr_ie 197 -cyr_ka 203 -cyr_o 207 -cyr_pe 208 -cyr_sha 219 -cyr_shcha 221 -cyr_short_i 202 -cyr_soft_sign 216 -cyr_te 212 -cyr_tse 195 -cyr_u 213 -cyr_ve 215 -cyr_ya 209 -cyr_yeru 217 -cyr_io 163 -cyr_yu 192 -cyr_ze 218 -cyr_zhe 214 diff --git a/Build/source/texk/ttf2pt1/ft.c b/Build/source/texk/ttf2pt1/ft.c deleted file mode 100644 index bf155f8c345..00000000000 --- a/Build/source/texk/ttf2pt1/ft.c +++ /dev/null @@ -1,649 +0,0 @@ -/* - * The font parser using the FreeType library version 2. - * - * see COPYRIGHT - * - */ - -#ifdef USE_FREETYPE - -#include <stdio.h> -#include <string.h> -#include <stdlib.h> -#include <ctype.h> -#include <sys/types.h> -#include <freetype/freetype.h> -#include <freetype/ftglyph.h> -#include <freetype/ftsnames.h> -#include <freetype/ttnameid.h> -#include <freetype/ftoutln.h> -#include "winport.h" -#include "pt1.h" -#include "global.h" - -/* prototypes of call entries */ -static void openfont(char *fname, char *arg); -static void closefont( void); -static int getnglyphs ( void); -static int glnames( GLYPH *glyph_list); -static void glmetrics( GLYPH *glyph_list); -static int glenc( GLYPH *glyph_list, int *encoding, int *unimap); -static void fnmetrics( struct font_metrics *fm); -static void glpath( int glyphno, GLYPH *glyph_list); -static void kerning( GLYPH *glyph_list); - -/* globals */ - -/* front-end descriptor */ -struct frontsw freetype_sw = { - /*name*/ "ft", - /*descr*/ "based on the FreeType library", - /*suffix*/ { "ttf", "otf", "pfa", "pfb" }, - /*open*/ openfont, - /*close*/ closefont, - /*nglyphs*/ getnglyphs, - /*glnames*/ glnames, - /*glmetrics*/ glmetrics, - /*glenc*/ glenc, - /*fnmetrics*/ fnmetrics, - /*glpath*/ glpath, - /*kerning*/ kerning, -}; - -/* statics */ - -static char * dupcnstring( unsigned char *s, int len); - -static FT_Library library; -static FT_Face face; - -static int enc_type, enc_found; - -/* SFNT functions do not seem to be included by default in FT2beta8 */ -#define ENABLE_SFNT - -/* - * Open font and prepare to return information to the main driver. - * May print error and warning messages. - * Exit on error. - */ - -static void -openfont( - char *fname, - char *arg /* unused now */ -) -{ - FT_Error error; - - if( FT_Init_FreeType( &library ) ) { - fprintf(stderr, "** FreeType initialization failed\n"); - exit(1); - } - - if( error = FT_New_Face( library, fname, 0, &face ) ) { - if ( error == FT_Err_Unknown_File_Format ) - fprintf(stderr, "**** %s has format unknown to FreeType\n", fname); - else - fprintf(stderr, "**** Cannot access %s ****\n", fname); - exit(1); - } - - if(FT_HAS_FIXED_SIZES(face)) { - WARNING_1 fprintf(stderr, "Font contains bitmaps\n"); - } - if(FT_HAS_MULTIPLE_MASTERS(face)) { - WARNING_1 fprintf(stderr, "Font contains multiple masters, using default\n"); - } - - if(ISDBG(FT)) fprintf(stderr," %d units per EM\n", face->units_per_EM); - - enc_found = 0; -} - -/* - * Close font. - * Exit on error. - */ - -static void -closefont( - void -) -{ - if( FT_Done_Face(face) ) { - WARNING_1 fprintf(stderr, "Errors when closing the font file, ignored\n"); - } - if( FT_Done_FreeType(library) ) { - WARNING_1 fprintf(stderr, "Errors when stopping FreeType, ignored\n"); - } -} - -/* - * Get the number of glyphs in font. - */ - -static int -getnglyphs ( - void -) -{ - if(ISDBG(FT)) fprintf(stderr, "%d glyphs in font\n", face->num_glyphs); - return (int)face->num_glyphs; -} - -/* - * Get the names of the glyphs. - * Returns 0 if the names were assigned, non-zero if the font - * provides no glyph names. - */ - -static int -glnames( - GLYPH *glyph_list -) -{ -#define MAX_NAMELEN 1024 - unsigned char bf[1024]; - int i; - - if( ! FT_HAS_GLYPH_NAMES(face) ) { - WARNING_1 fprintf(stderr, "Font has no glyph names\n"); - return 1; - } - - for(i=0; i < face->num_glyphs; i++) { - if( FT_Get_Glyph_Name(face, i, bf, MAX_NAMELEN) || bf[0]==0 ) { - sprintf(bf, "_g_%d", i); - WARNING_2 fprintf(stderr, - "Glyph No. %d has no postscript name, becomes %s\n", i, bf); - } - glyph_list[i].name = strdup(bf); - if(ISDBG(FT)) fprintf(stderr, "%d has name %s\n", i, bf); - if (glyph_list[i].name == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - } - return 0; -} - -/* - * Get the metrics of the glyphs. - */ - -static void -glmetrics( - GLYPH *glyph_list -) -{ - GLYPH *g; - int i; - FT_Glyph_Metrics *met; - FT_BBox bbox; - FT_Glyph gly; - - for(i=0; i < face->num_glyphs; i++) { - g = &(glyph_list[i]); - - if( FT_Load_Glyph(face, i, FT_LOAD_NO_BITMAP|FT_LOAD_NO_SCALE) ) { - fprintf(stderr, "Can't load glyph %s, skipped\n", g->name); - continue; - } - - met = &face->glyph->metrics; - - if(FT_HAS_HORIZONTAL(face)) { - g->width = met->horiAdvance; - g->lsb = met->horiBearingX; - } else { - WARNING_2 fprintf(stderr, "Glyph %s has no horizontal metrics, guessed them\n", g->name); - g->width = met->width; - g->lsb = 0; - } - - if( FT_Get_Glyph(face->glyph, &gly) ) { - fprintf(stderr, "Can't access glyph %s bbox, skipped\n", g->name); - continue; - } - - FT_Glyph_Get_CBox(gly, ft_glyph_bbox_unscaled, &bbox); - g->xMin = bbox.xMin; - g->yMin = bbox.yMin; - g->xMax = bbox.xMax; - g->yMax = bbox.yMax; - - g->ttf_pathlen = face->glyph->outline.n_points; - } -} - -/* - * Get the original encoding of the font. - * Returns 1 for if the original encoding is Unicode, 2 if the - * original encoding is other 16-bit, 0 if 8-bit. - */ - -static int -glenc( - GLYPH *glyph_list, - int *encoding, - int *unimap -) -{ - int i, e; - unsigned code; - - if(ISDBG(FT)) - for(e=0; e < face->num_charmaps; e++) { - fprintf(stderr, "found encoding pid=%d eid=%d\n", - face->charmaps[e]->platform_id, - face->charmaps[e]->encoding_id); - } - - if(enc_found) - goto populate_map; - - enc_type = 0; - - /* first check for an explicit PID/EID */ - - if(force_pid != -1) { - for(e=0; e < face->num_charmaps; e++) { - if(face->charmaps[e]->platform_id == force_pid - && face->charmaps[e]->encoding_id == force_eid) { - WARNING_1 fprintf(stderr, "Found Encoding PID=%d/EID=%d\n", - force_pid, force_eid); - if( FT_Set_Charmap(face, face->charmaps[e]) ) { - fprintf(stderr, "**** Cannot set charmap in FreeType ****\n"); - exit(1); - } - enc_type = 1; - goto populate_map; - } - } - fprintf(stderr, "*** TTF encoding table PID=%d/EID=%d not found\n", - force_pid, force_eid); - exit(1); - } - - /* next check for a direct Adobe mapping */ - - if(!forcemap) { - for(e=0; e < face->num_charmaps; e++) { - if(face->charmaps[e]->encoding == ft_encoding_adobe_custom) { - WARNING_1 fputs("Found Adobe Custom Encoding\n", stderr); - if( FT_Set_Charmap(face, face->charmaps[e]) ) { - fprintf(stderr, "**** Cannot set charmap in FreeType ****\n"); - exit(1); - } - goto populate_map; - } - } - } - - for(e=0; e < face->num_charmaps; e++) { - if(face->charmaps[e]->platform_id == 3) { - switch(face->charmaps[e]->encoding_id) { - case 0: - WARNING_1 fputs("Found Symbol Encoding\n", stderr); - break; - case 1: - WARNING_1 fputs("Found Unicode Encoding\n", stderr); - enc_type = 1; - break; - default: - WARNING_1 { - fprintf(stderr, - "****MS Encoding ID %d not supported****\n", - face->charmaps[e]->encoding_id); - fputs("Treating it like Symbol encoding\n", stderr); - } - break; - } - break; - } - } - if(e >= face->num_charmaps) { - WARNING_1 fputs("No Microsoft encoding, using first encoding available\n", stderr); - e = 0; - } - - if( FT_Set_Charmap(face, face->charmaps[e]) ) { - fprintf(stderr, "**** Cannot set charmap in FreeType ****\n"); - exit(1); - } - -populate_map: - enc_found = 1; - for(i=0; i<ENCTABSZ; i++) { - if(encoding[i] != -1) - continue; - if(enc_type == 1 || forcemap) { - code = unimap[i]; - if(code == (unsigned) -1) - continue; - } else - code = i; - - code = FT_Get_Char_Index(face, code); - if(0 && ISDBG(FT)) fprintf(stderr, "code of %3d is %3d\n", i, code); - if(code == 0) - continue; /* .notdef */ - encoding[i] = code; - } - - return enc_type; -} - -/* duplicate a string with counter to a 0-terminated string */ -static char * -dupcnstring( - unsigned char *s, - int len -) -{ - char *res, *out; - int i, c; - static int warned=0; - - if(( res = malloc(len+1) )==NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - - out = res; - for(i=0; i<len; i++) { - if(( c=s[i] )>=' ' && c!=127) - *out++ = c; - else if(!warned) { - warned=1; - WARNING_1 fprintf(stderr, "Some font name strings are in Unicode, may not show properly\n"); - } - } - *out = 0; - return res; -} - -/* - * Get the font metrics - */ -static void -fnmetrics( - struct font_metrics *fm -) -{ - char *str; - static char *fieldstocheck[3]; -#ifdef ENABLE_SFNT - FT_SfntName sn; -#endif /* ENABLE_SFNT */ - int i; - - fm->italic_angle = 0.0; /* FreeType hides the angle */ - fm->underline_position = face->underline_position; - fm->underline_thickness = face->underline_thickness; - fm->is_fixed_pitch = FT_IS_FIXED_WIDTH(face); - - fm->ascender = face->ascender; - fm->descender = face->descender; - - fm->units_per_em = face->units_per_EM; - - fm->bbox[0] = face->bbox.xMin; - fm->bbox[1] = face->bbox.yMin; - fm->bbox[2] = face->bbox.xMax; - fm->bbox[3] = face->bbox.yMax; - -#ifdef ENABLE_SFNT - if( FT_Get_Sfnt_Name(face, TT_NAME_ID_COPYRIGHT, &sn) ) -#endif /* ENABLE_SFNT */ - fm->name_copyright = ""; -#ifdef ENABLE_SFNT - else - fm->name_copyright = dupcnstring(sn.string, sn.string_len); -#endif /* ENABLE_SFNT */ - - fm->name_family = face->family_name; - - fm->name_style = face->style_name; - if(fm->name_style == NULL) - fm->name_style = ""; - -#ifdef ENABLE_SFNT - if( FT_Get_Sfnt_Name(face, TT_NAME_ID_FULL_NAME, &sn) ) -#endif /* ENABLE_SFNT */ - { - int len; - - len = strlen(fm->name_family) + strlen(fm->name_style) + 2; - if(( fm->name_full = malloc(len) )==NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - strcpy(fm->name_full, fm->name_family); - if(strlen(fm->name_style) != 0) { - strcat(fm->name_full, " "); - strcat(fm->name_full, fm->name_style); - } - } -#ifdef ENABLE_SFNT - else - fm->name_full = dupcnstring(sn.string, sn.string_len); -#endif /* ENABLE_SFNT */ - -#ifdef ENABLE_SFNT - if( FT_Get_Sfnt_Name(face, TT_NAME_ID_VERSION_STRING, &sn) ) -#endif /* ENABLE_SFNT */ - fm->name_version = "1.0"; -#ifdef ENABLE_SFNT - else - fm->name_version = dupcnstring(sn.string, sn.string_len); -#endif /* ENABLE_SFNT */ - -#ifdef ENABLE_SFNT - if( FT_Get_Sfnt_Name(face, TT_NAME_ID_PS_NAME , &sn) ) { -#endif /* ENABLE_SFNT */ - if(( fm->name_ps = strdup(fm->name_full) )==NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } -#ifdef ENABLE_SFNT - } else - fm->name_ps = dupcnstring(sn.string, sn.string_len); -#endif /* ENABLE_SFNT */ - for(i=0; fm->name_ps[i]!=0; i++) - if(fm->name_ps[i] == ' ') - fm->name_ps[i] = '_'; /* no spaces in the Postscript name *m - - /* guess the boldness from the font names */ - fm->force_bold=0; - - fieldstocheck[0] = fm->name_style; - fieldstocheck[1] = fm->name_full; - fieldstocheck[2] = fm->name_ps; - - for(i=0; !fm->force_bold && i<sizeof fieldstocheck /sizeof(fieldstocheck[0]); i++) { - str=fieldstocheck[i]; - for(i=0; str[i]!=0; i++) { - if( (str[i]=='B' - || str[i]=='b' - && ( i==0 || !isalpha(str[i-1]) ) - ) - && !strncmp("old",&str[i+1],3) - && !islower(str[i+4]) - ) { - fm->force_bold=1; - break; - } - } - } -} - -/* - * Functions to decompose the outlines - */ - -static GLYPH *curg; -static double lastx, lasty; - -static int -outl_moveto( - FT_Vector *to, - void *unused -) -{ - double tox, toy; - - tox = fscale((double)to->x); toy = fscale((double)to->y); - - /* FreeType does not do explicit closepath() */ - if(curg->lastentry) { - g_closepath(curg); - } - fg_rmoveto(curg, tox, toy); - lastx = tox; lasty = toy; - - return 0; -} - -static int -outl_lineto( - FT_Vector *to, - void *unused -) -{ - double tox, toy; - - tox = fscale((double)to->x); toy = fscale((double)to->y); - - fg_rlineto(curg, tox, toy); - lastx = tox; lasty = toy; - - return 0; -} - -static int -outl_conicto( - FT_Vector *control1, - FT_Vector *to, - void *unused -) -{ - double c1x, c1y, tox, toy; - - c1x = fscale((double)control1->x); c1y = fscale((double)control1->y); - tox = fscale((double)to->x); toy = fscale((double)to->y); - - fg_rrcurveto(curg, - (lastx + 2.0 * c1x) / 3.0, (lasty + 2.0 * c1y) / 3.0, - (2.0 * c1x + tox) / 3.0, (2.0 * c1y + toy) / 3.0, - tox, toy ); - lastx = tox; lasty = toy; - - return 0; -} - -static int -outl_cubicto( - FT_Vector *control1, - FT_Vector *control2, - FT_Vector *to, - void *unused -) -{ - double c1x, c1y, c2x, c2y, tox, toy; - - c1x = fscale((double)control1->x); c1y = fscale((double)control1->y); - c2x = fscale((double)control2->x); c2y = fscale((double)control2->y); - tox = fscale((double)to->x); toy = fscale((double)to->y); - - fg_rrcurveto(curg, c1x, c1y, c2x, c2y, tox, toy); - lastx = tox; lasty = toy; - - return 0; -} - -static FT_Outline_Funcs ft_outl_funcs = { - outl_moveto, - outl_lineto, - outl_conicto, - outl_cubicto, - 0, - 0 -}; - -/* - * Get the path of contrours for a glyph. - */ - -static void -glpath( - int glyphno, - GLYPH *glyf_list -) -{ - FT_Outline *ol; - - curg = &glyf_list[glyphno]; - - if( FT_Load_Glyph(face, glyphno, FT_LOAD_NO_BITMAP|FT_LOAD_NO_SCALE|FT_LOAD_NO_HINTING) - || face->glyph->format != ft_glyph_format_outline ) { - fprintf(stderr, "Can't load glyph %s, skipped\n", curg->name); - return; - } - - ol = &face->glyph->outline; - lastx = 0.0; lasty = 0.0; - - if( FT_Outline_Decompose(ol, &ft_outl_funcs, NULL) ) { - fprintf(stderr, "Can't decompose outline of glyph %s, skipped\n", curg->name); - return; - } - - /* FreeType does not do explicit closepath() */ - if(curg->lastentry) { - g_closepath(curg); - } - - if(ol->flags & ft_outline_reverse_fill) { - assertpath(curg->entries, __FILE__, __LINE__, curg->name); - reversepaths(curg); - } -} - -/* - * Get the kerning data. - */ - -static void -kerning( - GLYPH *glyph_list -) -{ - int i, j, n; - int nglyphs = face->num_glyphs; - FT_Vector k; - GLYPH *gl; - - if( nglyphs == 0 || !FT_HAS_KERNING(face) ) { - WARNING_1 fputs("No Kerning data\n", stderr); - return; - } - - for(i=0; i<nglyphs; i++) { - if( (glyph_list[i].flags & GF_USED) ==0) - continue; - for(j=0; j<nglyphs; j++) { - if( (glyph_list[j].flags & GF_USED) ==0) - continue; - if( FT_Get_Kerning(face, i, j, ft_kerning_unscaled, &k) ) - continue; - if( k.x == 0 ) - continue; - - addkernpair(i, j, k.x); - } - } -} - -#endif diff --git a/Build/source/texk/ttf2pt1/global.h b/Build/source/texk/ttf2pt1/global.h deleted file mode 100644 index 1c6580595af..00000000000 --- a/Build/source/texk/ttf2pt1/global.h +++ /dev/null @@ -1,165 +0,0 @@ -/* - * see COPYRIGHT - */ - - -/* options */ - -extern int encode; /* encode the resulting file */ -extern int pfbflag; /* produce compressed file */ -extern int wantafm; /* want to see .afm instead of .t1a on stdout */ -extern int correctvsize; /* try to correct the vertical size of characters */ -extern int wantuid; /* user wants UniqueID entry in the font */ -extern int allglyphs; /* convert all glyphs, not only 256 of them */ -extern int warnlevel; /* the level of permitted warnings */ -extern int forcemap; /* do mapping even on non-Unicode fonts */ -/* options - maximal limits */ -extern int max_stemdepth; /* maximal depth of stem stack in interpreter */ -/* options - debugging */ -extern int absolute; /* print out in absolute values */ -extern int reverse; /* reverse font to Type1 path directions */ -/* options - suboptions of Outline Processing */ -extern int optimize; /* enables space optimization */ -extern int smooth; /* enable smoothing of outlines */ -extern int transform; /* enables transformation to 1000x1000 matrix */ -extern int hints; /* enables autogeneration of hints */ -extern int subhints; /* enables autogeneration of substituted hints */ -extern int trybold; /* try to guess whether the font is bold */ -extern int correctwidth; /* try to correct the character width */ -/* options - suboptions of File Generation */ -extern int gen_pfa; /* generate the font file */ -extern int gen_afm; /* generate the metrics file */ -extern int gen_dvienc; /* generate the dvips encoding file */ - -/* not quite options to select a particular source encoding */ -extern int force_pid; /* specific platform id */ -extern int force_eid; /* specific encoding id */ - -/* other globals */ -extern FILE *null_file, *pfa_file, *afm_file, *dvienc_file; -extern int numglyphs; - -/* warnings */ - -#define WARNING_1 if(warnlevel >= 1) -#define WARNING_2 if(warnlevel >= 2) -#define WARNING_3 if(warnlevel >= 3) -#define WARNING_4 if(warnlevel >= 4) - -/* - * Bitmap control macros - */ - -#define BITMAP_BYTES(size) (((size)+7)>>3) -#define DEF_BITMAP(name, size) unsigned char name[BITMAP_BYTES(size)] -#define SET_BITMAP(name, bit) ( name[(bit)>>3] |= (1<<((bit)&7)) ) -#define CLR_BITMAP(name, bit) ( name[(bit)>>3] &= ~(1<<((bit)&7)) ) -#define IS_BITMAP(name, bit) ( name[(bit)>>3] & (1<<((bit)&7)) ) - -/* debugging */ - -/* debug flags */ -#define DEBUG_UNICODE 0x00000001 /* unicode to 8-bit code conversion */ -#define DEBUG_MAINSTEMS 0x00000002 /* glyph-wide main stem generation */ -#define DEBUG_SUBSTEMS 0x00000004 /* substituted stem generation */ -#define DEBUG_STEMS (DEBUG_MAINSTEMS|DEBUG_SUBSTEMS) -#define DEBUG_REVERSAL 0x00000008 /* reversal of the paths */ -#define DEBUG_FIXCVDIR 0x00000010 /* fixcvdir() */ -#define DEBUG_STEMOVERLAP 0x00000020 /* stemoverlap() */ -#define DEBUG_BLUESTEMS 0x00000040 /* markbluestems() */ -#define DEBUG_STRAIGHTEN 0x00000080 /* markbluestems() */ -#define DEBUG_EXTMAP 0x00000100 /* parsing of external map */ -#define DEBUG_TOINT 0x00000200 /* conversion of path to integer */ -#define DEBUG_BUILDG 0x00000400 /* building of glyph path */ -#define DEBUG_QUAD 0x00000800 /* splitting curves by quadrants */ -#define DEBUG_SQEQ 0x00001000 /* square equation solver */ -#define DEBUG_COMPOSITE 0x00002000 /* handling of composite glyphs */ -#define DEBUG_FCONCISE 0x00004000 /* normalization of curves */ -#define DEBUG_FT 0x00008000 /* FreeType front-end */ -#define DEBUG_DISABLED 0x80000000 /* special flag: temporary disable debugging */ - -/* at what we want to look now */ -#ifndef DEBUG -# define DEBUG (0) -#endif - -/* uncomment the next line if debugging data is wanted for one glyph only */ -/* #define DBG_GLYPH "_517" /* */ - -#if DEBUG==0 -# define ISDBG(name) (0) -# define ENABLEDBG(condition) (0) -# define DISABLEDBG(condition) (0) -#else - extern int debug; /* collection of the flags */ -/* this ISDBG will only work on ANSI C, not K&R */ -# define ISDBG(name) ( (debug & DEBUG_DISABLED) ? 0 : (debug & (DEBUG_##name)) ) -# define ENABLEDBG(condition) ( (condition) ? (debug&=~DEBUG_DISABLED) : 0 ) -# define DISABLEDBG(condition) ( (condition) ? (debug|=DEBUG_DISABLED) : 0 ) -#endif - -#ifdef DBG_GLYPH -# define DBG_TO_GLYPH(g) DISABLEDBG( strcmp( (g)->name, DBG_GLYPH ) ) -# define DBG_FROM_GLYPH(g) ENABLEDBG(1) -#else -# define DBG_TO_GLYPH(g) (0) -# define DBG_FROM_GLYPH(g) (0) -#endif - -/* prototypes */ -int iscale( int val); -double fscale( double val); -int unicode_rev_lookup( int unival); - -/* global metrics for a font */ - -struct font_metrics { - /* post */ - double italic_angle; - short underline_position; - short underline_thickness; - short is_fixed_pitch; - - /* hhea */ - short ascender; - short descender; - - /* head */ - unsigned short units_per_em; - short bbox[4]; - - /* name */ - char *name_copyright; - char *name_family; - char *name_style; - char *name_full; - char *name_version; - char *name_ps; - - /* other */ - int force_bold; -}; - -/* size of the encoding table - glyphs beyond 255 are actually unnumbered */ - -#define ENCTABSZ 1024 - -/* switch table structure for front-ends */ - -#define MAXSUFFIX 10 - -struct frontsw { - char *name; /* name of the front end */ - char *descr; /* description of the front end */ - char *suffix[MAXSUFFIX]; /* possible file name suffixes */ - - void (*open)(char *fname, char *arg); /* open font file */ - void (*close)(void); /* close font file */ - int (*nglyphs)(void); /* get the number of glyphs */ - int (*glnames)(GLYPH *glyphs); /* get the names of glyphs */ - void (*glmetrics)(GLYPH *glyphs); /* get the metrics of glyphs */ - int (*glenc)(GLYPH *glyphs, int *enc, int *unimap); /* get the encoding */ - void (*fnmetrics)(struct font_metrics *fm); /* get the font metrics */ - void (*glpath)(int glyphno, GLYPH *glyphs); /* get the glyph path */ - void (*kerning)(GLYPH *glyph_list); /* extract the kerning data */ -}; diff --git a/Build/source/texk/ttf2pt1/maps/CP1250.map b/Build/source/texk/ttf2pt1/maps/CP1250.map deleted file mode 100644 index 34596a94556..00000000000 --- a/Build/source/texk/ttf2pt1/maps/CP1250.map +++ /dev/null @@ -1,254 +0,0 @@ -// CP1250 code encoding table with glyph renaming -// Petr Titera P.Titera@sh.cvut.cz - -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!13 U+0013 .notdef -!14 U+0014 .notdef -!15 U+0015 .notdef -!16 U+0016 .notdef -!17 U+0017 .notdef -!18 U+0018 .notdef -!19 U+0019 .notdef -!1A U+001A .notdef -!1B U+001B .notdef -!1C U+001C .notdef -!1D U+001D .notdef -!1E U+001E .notdef -!1F U+001F .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quote -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D minus -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+20AC .notdef -!82 U+201A quotesinglbase -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!89 U+2030 perthousand -!8A U+0160 Scaron -!8B U+2039 guilsinglleft -!8C U+015A Sacute -!8D U+0164 Tcaron -!8E U+017D Zcaron -!8F U+0179 Zacute -!91 U+2018 quotesinglleft -!92 U+2019 quotesinglright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!99 U+2122 trademark -!9A U+0161 scaron -!9B U+203A guilsinglright -!9C U+015B sacute -!9D U+0165 tcaron -!9E U+017E zcaron -!9F U+017A zacute -!A0 U+00A0 nbspace -!A1 U+02C7 caron -!A2 U+02D8 breve -!A3 U+0141 Lslash -!A4 U+00A4 currency -!A5 U+0104 Aogonek -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+00A8 dieresis -!A9 U+00A9 copyright -!AA U+015E Scedilla -!AB U+00AB guillemotleft -!AC U+00AC notsign -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+017B Zdotaccent -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+02DB ogonek -!B3 U+0142 lslash -!B4 U+00B4 acute -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+2219 periodcentered -!B8 U+00B8 cedilla -!B9 U+0105 aogonek -!BA U+015F scedilla -!BB U+00BB guillemotright -!BC U+013D Lcaron -!BD U+02DD hungarumlaut -!BE U+013E lcaron -!BF U+017C zdotaccent -!C0 U+0154 Racute -!C1 U+00C1 Aacute -!C2 U+00C2 Acircumflex -!C3 U+0102 Abreve -!C4 U+00C4 Adieresis -!C5 U+0139 Lacute -!C6 U+0106 Cacute -!C7 U+00C7 Ccedilla -!C8 U+010C Ccaron -!C9 U+00C9 Eacute -!CA U+0118 Eogonek -!CB U+00CB Edieresis -!CC U+011A Ecaron -!CD U+00CD Iacute -!CE U+00CE Icircumflex -!CF U+010E Dcaron -!D0 U+00D0 Eth -!D1 U+0143 Nacute -!D2 U+0147 Ncaron -!D3 U+00D3 Oacute -!D4 U+00D4 Ocircumflex -!D5 U+0150 Ohungarumlaut -!D6 U+00D6 Odieresis -!D7 U+00D7 multiply -!D8 U+0158 Rcaron -!D9 U+016E Uring -!DA U+00DA Uacute -!DB U+0170 Uhungarumlaut -!DC U+00DC Udieresis -!DD U+00DD Yacute -!DE U+0162 Tcedilla -!DF U+00DF germandbls -!E0 U+0155 racute -!E1 U+00E1 aacute -!E2 U+00E2 acircumflex -!E3 U+0103 abreve -!E4 U+00E4 adieresis -!E5 U+013A lacute -!E6 U+0107 cacute -!E7 U+00E7 ccedilla -!E8 U+010D ccaron -!E9 U+00E9 eacute -!EA U+0119 eogonek -!EB U+00EB edieresis -!EC U+011B ecaron -!ED U+00ED iacute -!EE U+00EE icircumflex -!EF U+010F dcaron -!F0 U+0111 eth -!F1 U+0144 nacute -!F2 U+0148 ncaron -!F3 U+00F3 oacute -!F4 U+00F4 ocircumflex -!F5 U+0151 ohungarumlaut -!F6 U+00F6 odieresis -!F7 U+00F7 divide -!F8 U+0159 rcaron -!F9 U+016F uring -!FA U+00FA uacute -!FB U+0171 uhungarumlaut -!FC U+00FC udieresis -!FD U+00FD yacute -!FE U+0163 tcedilla -!FF U+02D9 dotaccent diff --git a/Build/source/texk/ttf2pt1/maps/CP1251.map b/Build/source/texk/ttf2pt1/maps/CP1251.map deleted file mode 100644 index 3fd854d91fb..00000000000 --- a/Build/source/texk/ttf2pt1/maps/CP1251.map +++ /dev/null @@ -1,245 +0,0 @@ -// CP1251 encoding table -// Zvezdan Petkovic <z.petkovic@computer.org> - -!00 U+0000 .notdef -!01 U+0001 .notdef -!02 U+0002 .notdef -!03 U+0003 .notdef -!04 U+0004 .notdef -!05 U+0005 .notdef -!06 U+0006 .notdef -!07 U+0007 .notdef -!08 U+0008 .notdef -!09 U+0009 .notdef -!0A U+000A .notdef -!0B U+000B .notdef -!0C U+000C .notdef -!0D U+000D .notdef -!0E U+000E .notdef -!0F U+000F .notdef -!10 U+0010 .notdef -!11 U+0011 .notdef -!12 U+0012 .notdef -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent -!26 U+0026 ampersand -!27 U+0027 quote -!28 U+0028 parenleft -!29 U+0029 parenright -!2A U+002A asterisk -!2B U+002B plus -!2C U+002C comma -!2D U+002D minus -!2E U+002E period -!2F U+002F slash -!30 U+0030 zero -!31 U+0031 one -!32 U+0032 two -!33 U+0033 three -!34 U+0034 four -!35 U+0035 five -!36 U+0036 six -!37 U+0037 seven -!38 U+0038 eight -!39 U+0039 nine -!3A U+003A colon -!3B U+003B semicolon -!3C U+003C less -!3D U+003D equal -!3E U+003E greater -!3F U+003F question -!40 U+0040 at -!41 U+0041 A -!42 U+0042 B -!43 U+0043 C -!44 U+0044 D -!45 U+0045 E -!46 U+0046 F -!47 U+0047 G -!48 U+0048 H -!49 U+0049 I -!4A U+004A J -!4B U+004B K -!4C U+004C L -!4D U+004D M -!4E U+004E N -!4F U+004F O -!50 U+0050 P -!51 U+0051 Q -!52 U+0052 R -!53 U+0053 S -!54 U+0054 T -!55 U+0055 U -!56 U+0056 V -!57 U+0057 W -!58 U+0058 X -!59 U+0059 Y -!5A U+005A Z -!5B U+005B bracketleft -!5C U+005C backslash -!5D U+005D bracketright -!5E U+005E asciicircum -!5F U+005F underscore -!60 U+0060 grave -!61 U+0061 a -!62 U+0062 b -!63 U+0063 c -!64 U+0064 d -!65 U+0065 e -!66 U+0066 f -!67 U+0067 g -!68 U+0068 h -!69 U+0069 i -!6A U+006A j -!6B U+006B k -!6C U+006C l -!6D U+006D m -!6E U+006E n -!6F U+006F o -!70 U+0070 p -!71 U+0071 q -!72 U+0072 r -!73 U+0073 s -!74 U+0074 t -!75 U+0075 u -!76 U+0076 v -!77 U+0077 w -!78 U+0078 x -!79 U+0079 y -!7A U+007A z -!7B U+007B braceleft -!7C U+007C bar -!7D U+007D braceright -!7E U+007E asciitilde -!7F U+007F .notdef -!80 U+0402 cyr_DJE -!81 U+0403 cyr_GJE -!82 U+201A quotesinglbase -!83 U+0453 cyr_gje -!84 U+201E quotedblbase -!85 U+2026 ellipsis -!86 U+2020 dagger -!87 U+2021 daggerdbl -!88 U+20AC Euro -!89 U+2030 perthousand -!8A U+0409 cyr_LJE -!8B U+2039 guilsinglleft -!8C U+040A cyr_NJE -!8D U+040C cyr_KJE -!8E U+040B cyr_TSHE -!8F U+040F cyr_DZHE -!90 U+0452 cyr_dje -!91 U+2018 quotesinglleft -!92 U+2019 quotesinglright -!93 U+201C quotedblleft -!94 U+201D quotedblright -!95 U+2022 bullet -!96 U+2013 endash -!97 U+2014 emdash -!99 U+2122 trademark -!9A U+0459 cyr_lje -!9B U+203A guilsinglright -!9C U+045A cyr_nje -!9D U+045C cyr_kje -!9E U+045B cyr_tshe -!9F U+045F cyr_dzhe -!A0 U+00A0 nbspace -!A1 U+040E cyr_SHORT_U -!A2 U+045E cyr_short_u -!A3 U+0408 cyr_JE -!A4 U+00A4 currency -!A5 U+0490 cyr_GHE_UPTURN -!A6 U+00A6 brokenbar -!A7 U+00A7 section -!A8 U+0401 cyr_IO -!A9 U+00A9 copyright -!AA U+0404 cyr_UKRAINIAN_IE -!AB U+00AB guillemotleft -!AC U+00AC notsign -!AD U+00AD hyphen -!AE U+00AE registered -!AF U+0407 cyr_YI -!B0 U+00B0 degree -!B1 U+00B1 plusminus -!B2 U+0406 cyr_BYELORUSSIAN_UKRAINIAN_I -!B3 U+0456 cyr_byelorussian_ukrainian_i -!B4 U+0491 cyr_ghe_upturn -!B5 U+00B5 mu -!B6 U+00B6 paragraph -!B7 U+00B7 periodcentered -!B8 U+0451 cyr_io -!B9 U+2116 numero -!BA U+0454 cyr_ukrainian_ie -!BB U+00BB guillemotright -!BC U+0458 cyr_je -!BD U+0405 cyr_DZE -!BE U+0455 cyr_dze -!BF U+0457 cyr_yi -!C0 U+0410 cyr_A -!C1 U+0411 cyr_BE -!C2 U+0412 cyr_VE -!C3 U+0413 cyr_GHE -!C4 U+0414 cyr_DE -!C5 U+0415 cyr_IE -!C6 U+0416 cyr_ZHE -!C7 U+0417 cyr_ZE -!C8 U+0418 cyr_I -!C9 U+0419 cyr_SHORT_I -!CA U+041A cyr_KA -!CB U+041B cyr_EL -!CC U+041C cyr_EM -!CD U+041D cyr_EN -!CE U+041E cyr_O -!CF U+041F cyr_PE -!D0 U+0420 cyr_ER -!D1 U+0421 cyr_ES -!D2 U+0422 cyr_TE -!D3 U+0423 cyr_U -!D4 U+0424 cyr_EF -!D5 U+0425 cyr_HA -!D6 U+0426 cyr_TSE -!D7 U+0427 cyr_CHE -!D8 U+0428 cyr_SHA -!D9 U+0429 cyr_SHCHA -!DA U+042A cyr_HARD_SIGN -!DB U+042B cyr_YERU -!DC U+042C cyr_SOFT_SIGN -!DD U+042D cyr_E -!DE U+042E cyr_YU -!DF U+042F cyr_YA -!E0 U+0430 cyr_a -!E1 U+0431 cyr_be -!E2 U+0432 cyr_ve -!E3 U+0433 cyr_ghe -!E4 U+0434 cyr_de -!E5 U+0435 cyr_ie -!E6 U+0436 cyr_zhe -!E7 U+0437 cyr_ze -!E8 U+0438 cyr_i -!E9 U+0439 cyr_short_i -!EA U+043A cyr_ka -!EB U+043B cyr_el -!EC U+043C cyr_em -!ED U+043D cyr_en -!EE U+043E cyr_o -!EF U+043F cyr_pe -!F0 U+0440 cyr_er -!F1 U+0441 cyr_es -!F2 U+0442 cyr_te -!F3 U+0443 cyr_u -!F4 U+0444 cyr_ef -!F5 U+0445 cyr_ha -!F6 U+0446 cyr_tse -!F7 U+0447 cyr_che -!F8 U+0448 cyr_sha -!F9 U+0449 cyr_shcha -!FA U+044A cyr_hard_sign -!FB U+044B cyr_yeru -!FC U+044C cyr_soft_sign -!FD U+044D cyr_e -!FE U+044E cyr_yu -!FF U+044F cyr_ya diff --git a/Build/source/texk/ttf2pt1/maps/adobe-standard-encoding.map b/Build/source/texk/ttf2pt1/maps/adobe-standard-encoding.map deleted file mode 100644 index 230d4a1efbe..00000000000 --- a/Build/source/texk/ttf2pt1/maps/adobe-standard-encoding.map +++ /dev/null @@ -1,231 +0,0 @@ -// Adobe Standard Encoding table for ttf2pt1 -// Thomas Henlich <Thomas.Henlich@mailbox.tu-dresden.de> - -=20 U+0020 SPACE -=21 U+0021 EXCLAMATION MARK -=22 U+0022 QUOTATION MARK -=23 U+0023 NUMBER SIGN -=24 U+0024 DOLLAR SIGN -=25 U+0025 PERCENT SIGN -=26 U+0026 AMPERSAND -=27 U+2019 RIGHT SINGLE QUOTATION MARK -=28 U+0028 LEFT PARENTHESIS -=29 U+0029 RIGHT PARENTHESIS -=2A U+002A ASTERISK -=2B U+002B PLUS SIGN -=2C U+002C COMMA -=2D U+002D HYPHEN-MINUS -=2E U+002E FULL STOP -=2F U+002F SOLIDUS -=30 U+0030 DIGIT ZERO -=31 U+0031 DIGIT ONE -=32 U+0032 DIGIT TWO -=33 U+0033 DIGIT THREE -=34 U+0034 DIGIT FOUR -=35 U+0035 DIGIT FIVE -=36 U+0036 DIGIT SIX -=37 U+0037 DIGIT SEVEN -=38 U+0038 DIGIT EIGHT -=39 U+0039 DIGIT NINE -=3A U+003A COLON -=3B U+003B SEMICOLON -=3C U+003C LESS-THAN SIGN -=3D U+003D EQUALS SIGN -=3E U+003E GREATER-THAN SIGN -=3F U+003F QUESTION MARK -=40 U+0040 COMMERCIAL AT -=41 U+0041 LATIN CAPITAL LETTER A -=42 U+0042 LATIN CAPITAL LETTER B -=43 U+0043 LATIN CAPITAL LETTER C -=44 U+0044 LATIN CAPITAL LETTER D -=45 U+0045 LATIN CAPITAL LETTER E -=46 U+0046 LATIN CAPITAL LETTER F -=47 U+0047 LATIN CAPITAL LETTER G -=48 U+0048 LATIN CAPITAL LETTER H -=49 U+0049 LATIN CAPITAL LETTER I -=4A U+004A LATIN CAPITAL LETTER J -=4B U+004B LATIN CAPITAL LETTER K -=4C U+004C LATIN CAPITAL LETTER L -=4D U+004D LATIN CAPITAL LETTER M -=4E U+004E LATIN CAPITAL LETTER N -=4F U+004F LATIN CAPITAL LETTER O -=50 U+0050 LATIN CAPITAL LETTER P -=51 U+0051 LATIN CAPITAL LETTER Q -=52 U+0052 LATIN CAPITAL LETTER R -=53 U+0053 LATIN CAPITAL LETTER S -=54 U+0054 LATIN CAPITAL LETTER T -=55 U+0055 LATIN CAPITAL LETTER U -=56 U+0056 LATIN CAPITAL LETTER V -=57 U+0057 LATIN CAPITAL LETTER W -=58 U+0058 LATIN CAPITAL LETTER X -=59 U+0059 LATIN CAPITAL LETTER Y -=5A U+005A LATIN CAPITAL LETTER Z -=5B U+005B LEFT SQUARE BRACKET -=5C U+005C REVERSE SOLIDUS -=5D U+005D RIGHT SQUARE BRACKET -=5E U+005E CIRCUMFLEX ACCENT -=5F U+005F LOW LINE -=60 U+2018 LEFT SINGLE QUOTATION MARK -=61 U+0061 LATIN SMALL LETTER A -=62 U+0062 LATIN SMALL LETTER B -=63 U+0063 LATIN SMALL LETTER C -=64 U+0064 LATIN SMALL LETTER D -=65 U+0065 LATIN SMALL LETTER E -=66 U+0066 LATIN SMALL LETTER F -=67 U+0067 LATIN SMALL LETTER G -=68 U+0068 LATIN SMALL LETTER H -=69 U+0069 LATIN SMALL LETTER I -=6A U+006A LATIN SMALL LETTER J -=6B U+006B LATIN SMALL LETTER K -=6C U+006C LATIN SMALL LETTER L -=6D U+006D LATIN SMALL LETTER M -=6E U+006E LATIN SMALL LETTER N -=6F U+006F LATIN SMALL LETTER O -=70 U+0070 LATIN SMALL LETTER P -=71 U+0071 LATIN SMALL LETTER Q -=72 U+0072 LATIN SMALL LETTER R -=73 U+0073 LATIN SMALL LETTER S -=74 U+0074 LATIN SMALL LETTER T -=75 U+0075 LATIN SMALL LETTER U -=76 U+0076 LATIN SMALL LETTER V -=77 U+0077 LATIN SMALL LETTER W -=78 U+0078 LATIN SMALL LETTER X -=79 U+0079 LATIN SMALL LETTER Y -=7A U+007A LATIN SMALL LETTER Z -=7B U+007B LEFT CURLY BRACKET -=7C U+007C VERTICAL LINE -=7D U+007D RIGHT CURLY BRACKET -=7E U+007E TILDE -=A1 U+00A1 INVERTED EXCLAMATION MARK -=A2 U+00A2 CENT SIGN -=A3 U+00A3 POUND SIGN -=A4 U+2044 FRACTION SLASH -=A5 U+00A5 YEN SIGN -=A6 U+0192 LATIN SMALL LETTER F WITH HOOK -=A7 U+00A7 SECTION SIGN -=A8 U+00A4 CURRENCY SIGN -=A9 U+0027 APOSTROPHE -=AA U+201C LEFT DOUBLE QUOTATION MARK -=AB U+00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK -=AC U+2039 SINGLE LEFT-POINTING ANGLE QUOTATION MARK -=AD U+203A SINGLE RIGHT-POINTING ANGLE QUOTATION MARK -=AE U+FB01 LATIN SMALL LIGATURE FI -=AF U+FB02 LATIN SMALL LIGATURE FL -=B1 U+2013 EN DASH -=B2 U+2020 DAGGER -=B3 U+2021 DOUBLE DAGGER -=B4 U+00B7 MIDDLE DOT -=B6 U+00B6 PILCROW SIGN -=B7 U+2022 BULLET -=B8 U+201A SINGLE LOW-9 QUOTATION MARK -=B9 U+201E DOUBLE LOW-9 QUOTATION MARK -=BA U+201D RIGHT DOUBLE QUOTATION MARK -=BB U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -=BC U+2026 HORIZONTAL ELLIPSIS -=BD U+2030 PER MILLE SIGN -=BF U+00BF INVERTED QUESTION MARK -=C1 U+0060 GRAVE ACCENT -=C2 U+00B4 ACUTE ACCENT -=C3 U+02C6 MODIFIER LETTER CIRCUMFLEX ACCENT -=C4 U+02DC SMALL TILDE -=C5 U+00AF MACRON -=C6 U+02D8 BREVE -=C7 U+02D9 DOT ABOVE -=C8 U+00A8 DIAERESIS -=CA U+02DA RING ABOVE -=CB U+00B8 CEDILLA -=CD U+02DD DOUBLE ACUTE ACCENT -=CE U+02DB OGONEK -=CF U+02C7 CARON -=D0 U+2014 EM DASH -=E1 U+00C6 LATIN CAPITAL LETTER AE -=E3 U+00AA FEMININE ORDINAL INDICATOR -=E8 U+0141 LATIN CAPITAL LETTER L WITH STROKE -=E9 U+00D8 LATIN CAPITAL LETTER O WITH STROKE -=EA U+0152 LATIN CAPITAL LIGATURE OE -=EB U+00BA MASCULINE ORDINAL INDICATOR -=F1 U+00E6 LATIN SMALL LETTER AE -=F5 U+0131 LATIN SMALL LETTER DOTLESS I -=F8 U+0142 LATIN SMALL LETTER L WITH STROKE -=F9 U+00F8 LATIN SMALL LETTER O WITH STROKE -=FA U+0153 LATIN SMALL LIGATURE OE -=FB U+00DF LATIN SMALL LETTER SHARP S - -// unencoded characters: -=100 U+00E7 LATIN SMALL LETTER C WITH CEDILLA -=101 U+00FF LATIN SMALL LETTER Y WITH DIAERESIS -=102 U+00E3 LATIN SMALL LETTER A WITH TILDE -=103 U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX -=104 U+00B3 SUPERSCRIPT THREE -=105 U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX -=106 U+00FE LATIN SMALL LETTER THORN -=107 U+00E8 LATIN SMALL LETTER E WITH GRAVE -=108 U+00B2 SUPERSCRIPT TWO -=109 U+00E9 LATIN SMALL LETTER E WITH ACUTE -=10A U+00F5 LATIN SMALL LETTER O WITH TILDE -=10B U+00C1 LATIN CAPITAL LETTER A WITH ACUTE -=10C U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX -=10D U+00FD LATIN SMALL LETTER Y WITH ACUTE -=10E U+00FC LATIN SMALL LETTER U WITH DIAERESIS -=10F U+00BE VULGAR FRACTION THREE QUARTERS -=110 U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX -=111 U+00D0 LATIN CAPITAL LETTER ETH -=112 U+00EB LATIN SMALL LETTER E WITH DIAERESIS -=113 U+00F9 LATIN SMALL LETTER U WITH GRAVE -=114 U+2122 TRADE MARK SIGN -=115 U+00F2 LATIN SMALL LETTER O WITH GRAVE -=116 U+0161 LATIN SMALL LETTER S WITH CARON -=117 U+00CF LATIN CAPITAL LETTER I WITH DIAERESIS -=118 U+00FA LATIN SMALL LETTER U WITH ACUTE -=119 U+00E0 LATIN SMALL LETTER A WITH GRAVE -=11A U+00F1 LATIN SMALL LETTER N WITH TILDE -=11B U+00E5 LATIN SMALL LETTER A WITH RING ABOVE -=11C U+017E LATIN SMALL LETTER Z WITH CARON -=11D U+00CE LATIN CAPITAL LETTER I WITH CIRCUMFLEX -=11E U+00D1 LATIN CAPITAL LETTER N WITH TILDE -=11F U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX -=120 U+00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX -=121 U+00CD LATIN CAPITAL LETTER I WITH ACUTE -=122 U+00C7 LATIN CAPITAL LETTER C WITH CEDILLA -=123 U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS -=124 U+0160 LATIN CAPITAL LETTER S WITH CARON -=125 U+00CC LATIN CAPITAL LETTER I WITH GRAVE -=126 U+00E4 LATIN SMALL LETTER A WITH DIAERESIS -=127 U+00D2 LATIN CAPITAL LETTER O WITH GRAVE -=128 U+00C8 LATIN CAPITAL LETTER E WITH GRAVE -=129 U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS -=12A U+00AE REGISTERED SIGN -=12B U+00D5 LATIN CAPITAL LETTER O WITH TILDE -=12C U+00BC VULGAR FRACTION ONE QUARTER -=12D U+00D9 LATIN CAPITAL LETTER U WITH GRAVE -=12E U+00DB LATIN CAPITAL LETTER U WITH CIRCUMFLEX -=12F U+00DE LATIN CAPITAL LETTER THORN -=130 U+00F7 DIVISION SIGN -=131 U+00C3 LATIN CAPITAL LETTER A WITH TILDE -=132 U+00DA LATIN CAPITAL LETTER U WITH ACUTE -=133 U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX -=134 U+00AC NOT SIGN -=135 U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE -=136 U+00EF LATIN SMALL LETTER I WITH DIAERESIS -=137 U+00ED LATIN SMALL LETTER I WITH ACUTE -=138 U+00E1 LATIN SMALL LETTER A WITH ACUTE -=139 U+00B1 PLUS-MINUS SIGN -=13A U+00D7 MULTIPLICATION SIGN -=13B U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS -=13C U+2212 MINUS SIGN -=13D U+00B9 SUPERSCRIPT ONE -=13E U+00C9 LATIN CAPITAL LETTER E WITH ACUTE -=13F U+00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX -=140 U+00A9 COPYRIGHT SIGN -=141 U+00C0 LATIN CAPITAL LETTER A WITH GRAVE -=142 U+00F6 LATIN SMALL LETTER O WITH DIAERESIS -=143 U+00F3 LATIN SMALL LETTER O WITH ACUTE -=144 U+00B0 DEGREE SIGN -=145 U+00EC LATIN SMALL LETTER I WITH GRAVE -=146 U+00B5 MICRO SIGN -=147 U+00D3 LATIN CAPITAL LETTER O WITH ACUTE -=148 U+00F0 LATIN SMALL LETTER ETH -=149 U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS -=14A U+00DD LATIN CAPITAL LETTER Y WITH ACUTE -=14B U+00A6 BROKEN BAR -=14C U+00BD VULGAR FRACTION ONE HALF diff --git a/Build/source/texk/ttf2pt1/maps/unicode-sample.map b/Build/source/texk/ttf2pt1/maps/unicode-sample.map deleted file mode 100644 index 0e57967c1f3..00000000000 --- a/Build/source/texk/ttf2pt1/maps/unicode-sample.map +++ /dev/null @@ -1,158 +0,0 @@ -# this file is a sample Unicode map description. -# It describes which glyphs are to be included in the font -# and at which character position they are to be put. - -# If the character position is greater than 255, the glyph is included, but -# does not appear in the encoding table (you must then use font reencoding -# to use this glyph). -# That makes it possible to have more than 256 glyphs in a font. -# Currently the maximum supported number of glyphs is 1024. - -# Use this file as the argument to ttf2pt1's -L option. - -# 1999-11-24 Thomas.Henlich@mailbox.tu-dresden.de -# 2000-03-01 Sergey Babkin: added 3rd format - -# comment lines start with '#' or '%' or '//' - -# The default source encoding table in the TTF file is Unicode (pid=3,eid=1). -# However a map may specify another source encoding with the "id <pid> <eid>" -# directive. If this directive is used at the beginning of the map file, -# it applies to the whole file. If it is used after a "plane" directive, -# then it sets the source encoding for this particular destination plane -# (possibly overriding the file-wide id directive). The user can also -# specify the source encoding explicitly at the comman line in the -# argument to the option -L. This used-specified source encoding overrides -# any id directives in the map file. - -# examples: - -# same as Unicode (default) -id 3 1 - -# One file may contain multiple actual translation tables. Each particular -# table within a file is named a plane. The primary use of planes is -# for multi-plane Eastern fonts with over 256 glyphs: for them one TTF -# file gets converted into multiple Type1 files, with each resulting file -# containing one plane of the original font. But they may also be used -# in other creative ways. Each plane may be specified in different format -# although this is not recommended for aesthetical reasons. If a map file -# contains any specifications of planes then the plane argument MUST -# be specified to the converter with that map file. If a map file -# contains no specifications of planes then the plane argument MUST NOT -# be specified to the converter with that map file. -# -# The plane maps start from the plane directive and continue to the next -# plane directive or end of file. The plane directive must be located -# at the very beginning of a separate string and contain the word "plane" -# followed by whitespace and the plane name. The whitespace characters -# are not allowed in the plane names. Non-alphanumeric characters are -# discouraged in the plane names as well. - -# examples: - -plane 81 -=27 U+0027 APOSTROPHE - -plane otherplane - 0, 1, 2 - - -% There is one code assignment per line. -// Three formats are recognized: -# 1. optional whitespace, followed by '=', followed by a hex number -# (character position), followed by optional whitespace, followed by -# 'U+', followed by a four-digit hex number (the Unicode of the glyph we want -# here), followed by any number of characters. - -// example: - -=20 U+0020 SPACE -=48 U+0021 EXCLAMATION MARK -=22 U+0022 QUOTATION MARK -=23 U+0023 NUMBER SIGN -=24 U+0024 DOLLAR SIGN -=25 U+0025 PERCENT SIGN -=26 U+0026 AMPERSAND -=27 U+0027 APOSTROPHE - -=E0 U+042E CYRILLIC CAPITAL LETTER YU -=E1 U+0410 CYRILLIC CAPITAL LETTER A -=E2 U+0411 CYRILLIC CAPITAL LETTER BE -=E3 U+0426 CYRILLIC CAPITAL LETTER TSE -=E4 U+0414 CYRILLIC CAPITAL LETTER DE -=E5 U+0415 CYRILLIC CAPITAL LETTER IE -=E6 U+0424 CYRILLIC CAPITAL LETTER EF -=E7 U+0413 CYRILLIC CAPITAL LETTER GHE - -% 2. optional whitespace, followed by '<', followed by one or more -% non-whitespace characters, -% followed by optional whitespace, followed by '/x', followed by -% a hex number (character position), followed by optional -% whitespace, followed by '<U', followed by a four-digit hex number -% (the Unicode of the glyph we want here), followed by '>' and any number -% of characters. - -# example: - -<I> /x40 <U0049> LATIN CAPITAL LETTER I -<t> /x41 <U0074> LATIN SMALL LETTER T -<r> /x43 <U0072> LATIN SMALL LETTER R -<o> /x44 <U006F> LATIN SMALL LETTER O -<c> /x45 <U0063> LATIN SMALL LETTER C -<k> /x46 <U006B> LATIN SMALL LETTER K -<s> /x47 <U0073> LATIN SMALL LETTER S - -<Eu> /xA4 <U20AC> EURO SIGN - -# 3. optional whitespace, followed by '!', followed by a hex number -# (character position), followed by optional whitespace, followed by -# 'U+', followed by a four-digit hex number (the Unicode of the glyph we want -# here), followed by the name of the glyph that will be used in the -# output file. - -# example: - -!20 U+0020 space -!21 U+0021 exclam -!22 U+0022 quotedbl -!23 U+0023 numbersign -!24 U+0024 dollar -!25 U+0025 percent - -# 4. compact format: just list of unicodes separated by commas or ranges -# denoted by a dash between unicodes. These unicodes are mapped to -# the output codes starting from 0 and continuously increasing. -# It is possible to reset the current code by using the "at" directive -# which must start at beginning of the line and give the new current -# output code (which will be assigned to the next occuring unicode) -# as decimal, hexadecimal or octal in C notation. The "at directive must -# take a separate line. The spaces around unicodes don't matter. - -# example: -# map unicodes 0x40, 0x400, 0x4000 to the output codes 0, 1, 2 and unicodes -# 0xf010 - 0xf020, 0xf030 to the output codes 0x11-0x22 - - 0, 1, 2 -at 0x11 - 0xf010- 0xf020, 0xf030 - - -# the first format is used by Roman Czyborra on his fine WWW pages: -# http://czyborra.com/charsets/iso8859.html - -# the second format is used in the Linux locale charmaps files: -# /usr/share/i18n/charmaps/* - -# we don't need those glyphs in the encoding table -=100 U+0030 DIGIT ZERO -=101 U+0031 DIGIT ONE -=102 U+0032 DIGIT TWO -=103 U+0033 DIGIT THREE -=104 U+0034 DIGIT FOUR -=105 U+0035 DIGIT FIVE -=106 U+0036 DIGIT SIX -=107 U+0037 DIGIT SEVEN -=108 U+0039 DIGIT NINE -=109 U+0038 DIGIT EIGHT - diff --git a/Build/source/texk/ttf2pt1/other/Makefile b/Build/source/texk/ttf2pt1/other/Makefile deleted file mode 100644 index 87d17a908b1..00000000000 --- a/Build/source/texk/ttf2pt1/other/Makefile +++ /dev/null @@ -1,20 +0,0 @@ - -PROGS= bz cmpf dmpf - -BZOBJS= bz.o bzscreen.o - -CFLAGS= -g - -all: $(PROGS) - -clean: - rm -f $(PROGS) *.o *.core core.* core - -bz: $(BZOBJS) - $(CC) $(CFLAGS) -o bz $(BZOBJS) - -cmpf: cmpf.c bmpfont.h - $(CC) $(CFLAGS) -o cmpf -I/usr/local/include -L/usr/local/lib cmpf.c -lt1 -lm - -dmpf: dmpf.c bmpfont.h - $(CC) $(CFLAGS) -o dmpf -I/usr/local/include -L/usr/local/lib dmpf.c -lt1 -lm diff --git a/Build/source/texk/ttf2pt1/other/README.html b/Build/source/texk/ttf2pt1/other/README.html deleted file mode 100644 index 794a947d9c6..00000000000 --- a/Build/source/texk/ttf2pt1/other/README.html +++ /dev/null @@ -1,176 +0,0 @@ -<HTML> -<HEAD> -<TITLE> -Supplements for True Type to PostScript Type 1 Converter -</TITLE> -</HEAD> -<BODY> -<H2> -Supplements for True Type to PostScript Type 1 Converter -</H2> - -<! -(Do not edit this file, it is generated from README.html!!!) -> - -<h4><tt>bz</tt></h4> -<! --- -> - -A small program to draw the Bezier curves on an alphanumeric display. -The recommended way of uing it is to run it from xterm with "Tiny" -(if you want higher magnification) or "Unreadable" (if you want -higher resolution) font and as big window size as possible. The size -of the window can be obtained by running "<tt>stty -a</tt>". For everything else -just "Use the source, Luke!" -<p> - -<h4><tt>cmpf</tt></h4> -<! ----- -> - -A small program to compare the rendering of two supposedly -nearly-identical fonts at low resolutions. It requires the -T1LIB library. This program may be used to compare the -effect of various options of the converter on the resulting -fonts. Create two <tt>.pfa</tt> files, one with one set of options, -another with another set of options, then use this program -to compare them. -<p> - -<h4><tt>dmpf</tt></h4> -<! ----- -> - -A small program to dump the bitmaps of all glyphs of the font -at low pixel sizes, up to 20 pixels. It requires the -T1LIB library. This program may be used to compare the -effect of changes in the T1LIB rasterizer and just for visual -search for rendering anomalies. -<p> - -<h4><tt>lst.pl</tt></h4> -<! ------- -> - -A simple PERL script that generates an HTML file -with the full list of all characters in all -possible styles of the Variable-width and Fixed-width -fonts. This file is quite convenient to look -at the converted fonts in Netscape (or other -graphical browser). - -<h4><tt>cntstems.pl</tt></h4> -<! ------- -> - -A simple PERL script that counts the required hint stack in the -interpreter to rasterize the glyphs of the font. May be quite -useful in search for missing glyphs which may be aborted due to -insufficient stack depth. - -<h4><tt>showg</tt></h4> -<! ------ -> - -A PERL script that draws the glyphs and their interesting -metrics (such as coordinates of the dots, hints and blue zones) -in PostScript. It works only with un-encoded font files generated -by <tt>ttf2pt1</tt>. The intended use is like: -<p> - - <tt>showg [-c <i><fontfile.t1a></i>]... <i><fontfile.t1a> <glyph-to-draw></i>... >file.ps</tt><br> - <tt>gv file.ps # start the Ghostscript viewer</tt> -<p> - -As you can see, multiple glyphs may be specified. The glyphs may be -specified in one of three ways: -<br> - - as a decimal code (for example, <tt>43</tt> ) -<br> - - as a glyph name preceded by a slash (for example, <tt>/plus</tt> ) -<br> - - as a literal character preceded by a dot (for example, <tt>.+</tt> ) -<p> - -So for example the following command would draw the same glyph "left -parenthesis" three times: -<p> - - <tt>showg file.t1a 40 /parenleft .\( >/file.ps</tt> -<p> - -Don't forget that some characters have to be protected from the shell -by backslash as shown above, or else the shell would try to interpret -them before passing to the program. -<p> - -One file (given as the first argument) is considered the main file -but multiple files can be specified with option <b>-c</b> for visual comparison -of the outlines. The glyphs from the main file are drawn in black -and supplemented with coordinate grid and sidebars for hints. The -glyphs from the comparison files are drawn in slightly lighter colors -(red, cyan, brown) and no supplemental information is provided for them. -Each use of option <b>-c</b> adds one comparison file, this option may be used -multiple times. If there are more than 3 comparison files the colors -repeat cyclically. -<p> - -So for example the following command would draw the same glyph "left -parenthesis" from three files on the same page: -<p> - - <tt>showg -c fileA.t1a -c fileB.t1a file.t1a .\( >/file.ps</tt> -<p> - -This program is quite valuable it you want to take a close-up view at -the font. -<p> - -The outlines are drawn in black, the ends of the curves and -lines are marked as dots, the first dots of the outlines -are fatter. The Blue Zones are drawn in light blue. The -substituted hints are marked in red, the global hints are -marked in blue. The coordinate grid is drawn in green. -The stems and the values of coordinates are for convenience -marked twice, on each size of the picture. -<p> - -<h4><tt>showdf</tt></h4> -<! ------- -> - -A Perl script to find a list of differing glyphs in two versions of a font -file (for example, converted with different versions of <tt>ttf2pt1</tt> or -with different options given to ttf2pt1) and feed this list into the <tt>showg</tt> -program for display. The intended use is like: -<p> - - <tt>showdf <i><showg-location></i> <i><fontfile1.t1a></i> <i><fontfile2.t1a></i> >file.ps</tt><br> - <tt>gv file.ps # start the Ghostscript viewer</tt> -<p> - -If both <tt>showdf</tt> and <tt>showg</tt> scripts are located in the -same directory, the command would look like: -<p> - - <tt>./showdf ./showg font1.t1a font2.t1a >file.ps</tt><br> -<p> - -For decent results both font files should be converted from the same original -font and contain the same glyphs with the same names in the same order. -Otherwise most probably all the glyphs will be included, or a failure may -happen if some glyph is not found in one of the files. It is also a good -idea to convert the fonts for comparison with hinting disabled, otherwise -the differences in hinting may trigger the otherwise equal glyphs to be shown. -<p> - -</BODY> -</HTML> diff --git a/Build/source/texk/ttf2pt1/other/bmpfont.h b/Build/source/texk/ttf2pt1/other/bmpfont.h deleted file mode 100644 index 59c27372a4d..00000000000 --- a/Build/source/texk/ttf2pt1/other/bmpfont.h +++ /dev/null @@ -1,338 +0,0 @@ -/* - * see COPYRIGHT - */ - - -fchkneg(file, line, rc, cmd) - char *file; - int line; - int rc; - char *cmd; -{ - if(rc<0) { - fprintf(stderr,"%s: fatal error on line %d of %s: %d\n", - PROGNAME, line, file, rc); - fprintf(stderr,"%s\n", cmd); - exit(1); - } -} - -fchknull(file, line, rc, cmd) - char *file; - int line; - void *rc; - char *cmd; -{ - if(rc==NULL) { - fprintf(stderr,"%s: fatal error on line %d of %s: NULL\n", - PROGNAME, line, file); - fprintf(stderr,"%s\n", cmd); - exit(1); - } -} - -#define chkneg(f) fchkneg(__FILE__,__LINE__,(f),#f) -#define chknull(f) fchknull(__FILE__,__LINE__,(f),#f) - -#define MYPAD 8 - -#define CHRNONE ' ' -#define CHRBOTH '.' -#define CHRONE '1' -#define CHRTWO '2' - -#define MINSIZE 8 -#define MAXSIZE 20 - -#define LINEWIDTH 80 /* screen line width in chars */ -#define MAXLINES (MAXSIZE*(MAXSIZE-MINSIZE+1)) - -static char map[MAXLINES][LINEWIDTH+1]; -static char mbase, mx, mend; - -/* returns 0 if the same, -1 if different */ - -int -cmpglyphs(g1, g2) - GLYPH *g1, *g2; -{ - int wd1, wd2; - int ht1, ht2; - int i, j; - char *p1, *p2; - - wd1=g1->metrics.rightSideBearing - g1->metrics.leftSideBearing; - ht1=g1->metrics.ascent - g1->metrics.descent; - wd2=g2->metrics.rightSideBearing - g2->metrics.leftSideBearing; - ht2=g2->metrics.ascent - g2->metrics.descent; - - if(g1->bits==NULL && g2->bits!=NULL - || g1->bits!=NULL && g2->bits==NULL) - return -1; - - if(g1->metrics.ascent != g2->metrics.ascent) - return -1; - - if(g1->metrics.descent != g2->metrics.descent) - return -1; - - if( wd1 != wd2 ) - return -1; - - if( (p1=g1->bits) !=NULL && (p2=g2->bits) !=NULL ) - for(i=0; i<ht1; i++) { - for(j=0; j<wd1; j+=8) { - if( *p1++ != *p2++) - return -1; - } - } - return 0; -} - -void -resetmap() -{ - int i, j; - - for(i=0; i<MAXLINES; i++) - for(j=0; j<LINEWIDTH; j++) - map[i][j]=' '; - mbase=mx=mend=0; -} - -void -drawdot(row, col, val) - unsigned row, col, val; -{ - if(row < MAXLINES && col < LINEWIDTH-1) { - map[row][col]=val; - if(row > mend) - mend=row; - } -} - -void -drawdotg1(row, col, val) - unsigned row, col, val; -{ - if(row < MAXLINES && col < LINEWIDTH-1) { - if(val) - map[row][col]=CHRONE; - else - map[row][col]=CHRNONE; - if(row > mend) - mend=row; - } -} - -void -drawdotg2(row, col, val) - unsigned row, col, val; -{ - if(row < MAXLINES && col < LINEWIDTH-1) { - if(val) - if(map[row][col]==CHRONE) - map[row][col]=CHRBOTH; - else - map[row][col]=CHRTWO; - else if(map[row][col]!=CHRONE) - map[row][col]=CHRNONE; - if(row > mend) - mend=row; - } -} - -void -drawglyf(size, g1) - int size; - GLYPH *g1; -{ - int wd1, wd2, wdm; - int ht1, ht2, ascm, desm; - int i, j, k, val; - char *p; - int off1, off2; - - wd1=g1->metrics.rightSideBearing - g1->metrics.leftSideBearing; - ht1=g1->metrics.ascent - g1->metrics.descent; - - wdm=wd1; - - ascm=g1->metrics.ascent; - desm= -g1->metrics.descent; - - if(mbase==0) - mbase=ascm+1; - else if(LINEWIDTH-mx <= wdm+1) { - mx=0; mbase=mend+ascm+2; - } - - drawdot(mbase-ascm-1, mx, (size/10)%10+'0'); - drawdot(mbase-ascm-1, mx+1, size%10+'0'); - - if( (p=g1->bits) !=NULL) - for(i=0; i<ht1; i++) { - for(j=0; j<wd1; j+=8) { - val = *p++; - for(k=0; k<8 && j+k<wd1; k++, val>>=1) - drawdot(i+mbase-g1->metrics.ascent, mx+j+k, (val&1)?CHRBOTH:CHRNONE); - } - } - - wdm++; - if(wdm<3) - wdm=3; - mx+=wdm; - drawdot(mbase, mx-1, '-'); -} - -void -drawdiff(size, g1, g2) - int size; - GLYPH *g1, *g2; -{ - int wd1, wd2, wdm; - int ht1, ht2, ascm, desm; - int i, j, k, val; - char *p; - int off1, off2; - - wd1=g1->metrics.rightSideBearing - g1->metrics.leftSideBearing; - ht1=g1->metrics.ascent - g1->metrics.descent; - wd2=g2->metrics.rightSideBearing - g2->metrics.leftSideBearing; - ht2=g2->metrics.ascent - g2->metrics.descent; - - if(wd1>wd2) { - wdm=wd1; - off1=0; off2=wd1-wd2; - } else { - wdm=wd2; - off2=0; off1=wd2-wd1; - } - - if(g1->metrics.ascent > g2->metrics.ascent) - ascm=g1->metrics.ascent; - else - ascm=g2->metrics.ascent; - - if(g1->metrics.descent < g2->metrics.descent) - desm= -g1->metrics.descent; - else - desm= -g2->metrics.descent; - - if(mbase==0) - mbase=ascm+1; - else if(LINEWIDTH-mx <= wdm+1) { - mx=0; mbase=mend+ascm+2; - } - - drawdot(mbase-ascm-1, mx, (size/10)%10+'0'); - drawdot(mbase-ascm-1, mx+1, size%10+'0'); - - /* check which alignment is better */ - if(off1!=0 || off2!=0) { - int cntl,cntr; - int a1, a2, d1, d2; - int val1, val2; - int rstep1, rstep2; - - cntl=cntr=0; - rstep1=(wd1+7)/8; - rstep2=(wd2+7)/8; - a1=g1->metrics.ascent; - d1=g1->metrics.descent; - a2=g2->metrics.ascent; - d2=g2->metrics.descent; - -#ifdef dbgoff - printf("size: %d\n", size); -#endif - for(i=ascm; i>= -desm; i--) { - for(j=0; j<wdm; j++) { - /* first the left alignment */ - if(i>a1 || i<d1 || j>=wd1) - val1=0; - else - val1=( g1->bits[ (a1-i)*rstep1+j/8 ] >> (j%8) ) & 1; - if(i>a2 || i<d2 || j>=wd2) - val2=0; - else - val2=( g2->bits[ (a2-i)*rstep2+j/8 ] >> (j%8) ) & 1; - - cntl += (val1 ^ val2); - -#ifdef dbgoff - putchar(val1?'1':' '); - putchar(val2?'2':' '); - putchar('.'); -#endif - - /* now the right alignment */ - if(i>a1 || i<d1 || j-off1>=wd1 || j<off1) - val1=0; - else - val1=( g1->bits[ (a1-i)*rstep1+(j-off1)/8 ] >> ((j-off1)%8) ) & 1; - if(i>a2 || i<d2 || j-off2>=wd2) - val2=0; - else - val2=( g2->bits[ (a2-i)*rstep2+(j-off2)/8 ] >> ((j-off2)%8) ) & 1; - - cntr += (val1 ^ val2); - -#ifdef dbgoff - putchar(val1?'1':' '); - putchar(val2?'2':' '); - putchar('|'); -#endif - } -#ifdef dbgoff - putchar('\n'); -#endif - } - -#ifdef dbgoff - printf("size %d: left %d right %d\n",size, cntl, cntr); -#endif - if(cntl <= cntr) /* left is better or the same */ - off1=off2=0; - } - - if( (p=g1->bits) !=NULL) - for(i=0; i<ht1; i++) { - for(j=0; j<wd1; j+=8) { - val = *p++; - for(k=0; k<8 && j+k<wd1; k++, val>>=1) - drawdotg1(i+mbase-g1->metrics.ascent, mx+j+k+off1, val&1); - } - } - if( (p=g2->bits) !=NULL) - for(i=0; i<ht2; i++) { - for(j=0; j<wd2; j+=8) { - val = *p++; - for(k=0; k<8 && j+k<wd2; k++, val>>=1) - drawdotg2(i+mbase-g2->metrics.ascent, mx+j+k+off2, val&1); - } - } - - wdm++; - if(wdm<3) - wdm=3; - mx+=wdm; - drawdot(mbase, mx-1, '-'); -} - -void -printmap(f) - FILE *f; -{ - int i, j; - - for(i=0; i<=mend; i++) { - for(j=LINEWIDTH-1; j>=0 && map[i][j]==' '; j--) - {} - map[i][j+1]='\n'; - map[i][j+2]=0; - fputs(map[i], f); - } -} - diff --git a/Build/source/texk/ttf2pt1/other/bz.c b/Build/source/texk/ttf2pt1/other/bz.c deleted file mode 100644 index 475d13fa47c..00000000000 --- a/Build/source/texk/ttf2pt1/other/bz.c +++ /dev/null @@ -1,78 +0,0 @@ -/* - * see COPYRIGHT - */ - -#include <stdio.h> -#include <stdlib.h> -#include "bzscreen.h" - -/* size of the screen in "physical pixels" */ -#define PHYSX 980 -#define PHYSY 310 - -/* the bounding box of the drawing in "logical pixels" */ -/* the base point - set to 0, 0 for absolute coordinates */ -#define BASEX 19 -#define BASEY 122 -/* the maximal point */ -#define MAXX 450 -#define MAXY 481 - -main(argc,argv) - int argc; - char **argv; -{ - initscreen(PHYSX, PHYSY, PHYSX, PHYSY, 0, 0, BASEX, BASEY, MAXX, MAXY); - - /* - drawcurve('#', 0,0, 51,0, 1,49, 45,98); - drawcurve('1', 5,28, 8,37, 16,65, 45,98); - - drawcurve('3', 0,0, 0,24, 30,68, 80,72); - - drawcurve('1', 0,0, 0,5, 1,10, 2,15); - drawcurve('2', 2,15, 8,42, 30,68, 80,72); - - drawcurve('4', 0,0, 0,37, 22,67, 80,72); - */ - - /* final */ - /* - drawcurve('#', 324, 481, 390, 481, 448, 475, 448, 404 ); - drawcurve('#', 448, 404, 448, 404, 448, 324, 448, 324 ); - drawcurve('#', 448, 324, 402, 245, 19, 338, 19, 122 ); - */ - - /* 3 */ - /* - */ - drawcurve('*', 450, 404, 450, 397, 450, 390, 448, 384 ); - - drawcurve('*', 448, 384, 446, 378, 444, 370, 443, 360 ); - drawcurve('.', 443, 360, 309, 356, 206, 341, 132, 304 ); - drawcurve('.', 132, 304, 57, 266, 19, 208, 19, 122 ); - - /* 4 */ - drawcurve('#', 324, 481, 390, 481, 450, 475, 450, 404 ); - drawcurve('#', 450, 404, 450, 397, 450, 390, 448, 384 ); - - drawcurve('#', 448, 384, 402, 245, 19, 338, 19, 122 ); - - /* - drawcurve('.', 324, 481, 361, 481, 391, 478, 414, 466 ); - drawcurve('.', 414, 466, 436, 454, 450, 436, 450, 404 ); - - drawcurve('.', 450, 404, 450, 390, 447, 378, 443, 360 ); - drawcurve('.', 443, 360, 309, 356, 206, 341, 132, 304 ); - - drawcurve('.', 132, 304, 57, 266, 19, 208, 19, 122 ); - */ - - printscreen(stdout); -} - -sumcurves(dx11, dy11, dx12, dy12, dx13, dy13, - dx21, dy21, dx22, dy22, dx23, dy23) -{ -} - diff --git a/Build/source/texk/ttf2pt1/other/bzscreen.c b/Build/source/texk/ttf2pt1/other/bzscreen.c deleted file mode 100644 index 0bb5ab6a335..00000000000 --- a/Build/source/texk/ttf2pt1/other/bzscreen.c +++ /dev/null @@ -1,220 +0,0 @@ -/* - * see COPYRIGHT - */ - -#include <stdio.h> -#include <stdlib.h> -#include "bzscreen.h" - -/* - * functions to draw the bezier curves in text mode - */ - -double -fmin(a,b) - double a, b; -{ - if(a<b) - return a; - else - return b; -} - -int -abs(x) - int x; -{ - if(x<0) - return -x; - else - return x; -} - -void -initscreen(physx, physy, cols, rows, xoff, yoff, minx, miny, maxx, maxy) - unsigned physx, physy, cols, rows, xoff, yoff, minx, miny, maxx, maxy; -{ - int i,j; - double yxscale; - - if(screen.dots != NULL) - free(screen.dots); - - if(physx==0 || physy==0 || rows==0 || cols==0) { - fprintf(stderr, "*** negative or zero screen size\n"); - exit(1); - } - - if(physx+xoff > cols || physy+yoff > rows) { - fprintf(stderr, "*** drawable area out of screen\n"); - exit(1); - } - - if(minx>maxx || miny>maxy) { - fprintf(stderr, "*** empty drawable area\n"); - exit(1); - } - - screen.physx = physx; - screen.physy = physy; - screen.rows = rows; - screen.cols = cols+2; /* for '\n\0' */ - screen.xoff = xoff; - screen.yoff = yoff; - screen.minx = minx; - screen.miny = miny; - - if(( screen.dots=malloc(screen.rows*screen.cols) )==NULL) { - perror("*** no memory for screen: "); - exit(1); - } - - j=screen.rows*screen.cols; - for(i=0; i<j; i++) - screen.dots[i]=' '; - - /* scale of Y to X on the screen, i.e. x=YXSCALE*y */ - /* 3/4 is the approx. ratio of Y/X sizes of the physical screen */ - yxscale = ((double)physx/(double)physy*3.0/4.0); - - /* scale of "logical" to "physical", i.e. physical=PHYSSCALE*logical */ - screen.yscale = fmin( ((double)physy-0.51)/(maxy+1-miny), - ((double)physx-0.51)/yxscale/(maxx+1-minx) ); - screen.xscale = yxscale * screen.yscale; -} - -void -drawcurve(mark, ax,ay, bx,by, cx,cy, dx,dy) - int mark, ax,ay, bx,by, cx,cy, dx,dy; -{ - int i,j,n,c; - int maxn=(screen.physx + screen.physy)*2; - - ax-=screen.minx; bx-=screen.minx; cx-=screen.minx; dx-=screen.minx; - ay-=screen.miny; by-=screen.miny; cy-=screen.miny; dy-=screen.miny; - - for(i=0; i<=maxn; i++) { - double t, t2, t3, nt, nt2, nt3; - - t=(double)i/(double)maxn; t2=t*t; t3=t2*t; - nt=1-t; nt2=nt*nt; nt3=nt2*nt; - - setfdot( - mark, - ( ax*t3 + bx*3*t2*nt + cx*3*t*nt2 + dx*nt3 ), - ( ay*t3 + by*3*t2*nt + cy*3*t*nt2 + dy*nt3 ) - ); - } -} - -/* draw curve and mark direction at the ends */ - -void -drawcurvedir(mark, ax,ay, bx,by, cx,cy, dx,dy) - int mark, ax,ay, bx,by, cx,cy, dx,dy; -{ - int i,j,n,c; - int maxn=(screen.physx + screen.physy)*2; - double t, t2, t3, nt, nt2, nt3; - int markb, marke; - - ax-=screen.minx; bx-=screen.minx; cx-=screen.minx; dx-=screen.minx; - ay-=screen.miny; by-=screen.miny; cy-=screen.miny; dy-=screen.miny; - - if(bx==ax && by==ay) { - markb=mark; - } else if( abs(by-ay) > abs(bx-ax) ) { - if(by>ay) - markb='^'; - else - markb='v'; - } else { - if(bx>ax) - markb='>'; - else - markb='<'; - } - - if(dx==cx && dy==cy) { - marke=mark; - } else if( abs(dy-cy) > abs(dx-cx) ) { - if(dy>cy) - marke='^'; - else - marke='v'; - } else { - if(dx>cx) - marke='>'; - else - marke='<'; - } - - for(i=1; i<maxn; i++) { - t=(double)i/(double)maxn; t2=t*t; t3=t2*t; - nt=1-t; nt2=nt*nt; nt3=nt2*nt; - - setfdot( - mark, - ( ax*t3 + bx*3*t2*nt + cx*3*t*nt2 + dx*nt3 ), - ( ay*t3 + by*3*t2*nt + cy*3*t*nt2 + dy*nt3 ) - ); - } - /* mark the ends */ - setfdot( markb, (double)ax, (double)ay ); - setfdot( marke, (double)dx, (double)dy ); -} - -void -drawdot(mark, x, y) - int mark; - int x, y; -{ - x=(int)((x-screen.minx)*screen.xscale+0.5); - y=(int)((y-screen.miny)*screen.yscale+0.5); - - if(y<0 || y>=screen.physy || x<0 || x>=screen.physx) - return; - screendot(x,y)=mark; -} - -void -setabsdot(mark, x, y) - int x, y, mark; -{ - if(y<0 || y>=screen.rows || x<0 || x>=screen.cols-2) - return; - screenabsdot(x,y)=mark; -} - -void -setfdot(mark, fx, fy) - int mark; - double fx, fy; -{ - int x, y; - - x=(int)(fx*screen.xscale+0.5); - y=(int)(fy*screen.yscale+0.5); - - if(y<0 || y>=screen.physy || x<0 || x>=screen.physx) - return; - screendot(x,y)=mark; -} - -/* destructive */ -void -printscreen(f) - FILE *f; -{ - int r; - char *pi, *pc; - - for(r=screen.rows-1; r>=0; r--) { - pc=&screenabsdot(0,r); - for(pi=&screenabsdot(-2,r+1); pi>=pc && *pi == ' '; pi--) - {} - pi[1]='\n'; - pi[2]=0; - fputs(pc, f); - } -} diff --git a/Build/source/texk/ttf2pt1/other/bzscreen.h b/Build/source/texk/ttf2pt1/other/bzscreen.h deleted file mode 100644 index 290d5195aac..00000000000 --- a/Build/source/texk/ttf2pt1/other/bzscreen.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * see COPYRIGHT - */ - - -/* - * Screen for drawing the Bezier curves in text mode - */ - -struct screen { - unsigned physx; - unsigned physy; - unsigned cols; - unsigned rows; - unsigned xoff; - unsigned yoff; - unsigned minx; - unsigned miny; - char *dots; - double xscale; - double yscale; -} screen; - -#define screenabsdot(x,y) (screen.dots[(y)*screen.cols+(x)]) -#define screendot(x,y) screenabsdot((x)+screen.xoff, (y)+screen.yoff) - -/* prototypes */ -double fmin(double a, double b); -int abs(int x); -void initscreen(unsigned physx, unsigned physy, - unsigned cols, unsigned rows, unsigned xoff, unsigned yoff, - unsigned minx, unsigned miny, unsigned maxx, unsigned maxy); -void drawcurve(int mark, int ax,int ay, - int bx,int by, int cx,int cy, int dx,int dy); -void drawcurvedir(int mark, int ax,int ay, - int bx,int by, int cx,int cy, int dx,int dy); -void drawdot(int mark, int x, int y); -void setabsdot(int mark, int x, int y); -void setfdot(int mark, double x, double y); -void printscreen(FILE *f); diff --git a/Build/source/texk/ttf2pt1/other/cmpf.c b/Build/source/texk/ttf2pt1/other/cmpf.c deleted file mode 100644 index 37e6e98f0c0..00000000000 --- a/Build/source/texk/ttf2pt1/other/cmpf.c +++ /dev/null @@ -1,67 +0,0 @@ -/* - * see COPYRIGHT - */ - -#include <stdio.h> -#include <ctype.h> -#include "t1lib.h" - -/* - * compare two [ almost the same ] fonts - */ - -#define PROGNAME "cmpf" - -#include "bmpfont.h" - - -main(ac, av) - int ac; - char **av; -{ - int fontid1, fontid2; - GLYPH *g1, *g2; - int chr, size, diff, offset; - - if(ac!=3) { - fprintf(stderr,"Use: %s font1 font2\n", PROGNAME); - exit(1); - } - - chkneg(T1_SetBitmapPad(MYPAD)); - chkneg(T1_InitLib(NO_LOGFILE|IGNORE_CONFIGFILE|IGNORE_FONTDATABASE)); - chkneg(fontid1=T1_AddFont(av[1])); - chkneg(fontid2=T1_AddFont(av[2])); - - - resetmap(); - for(chr=0; chr<256; chr++) { - diff=0; - for(size=MAXSIZE; size>=MINSIZE; size--) { - chknull( g1=T1_CopyGlyph(T1_SetChar( fontid1, chr, (float)size, NULL)) ); - chknull( g2=T1_CopyGlyph(T1_SetChar( fontid2, chr, (float)size, NULL)) ); - - if( cmpglyphs(g1, g2) ) { - /* printf("%d %d - diff\n", chr, size); */ - diff=1; - drawdiff(size, g1, g2); - } - /* - else - fprintf(stderr, "%d %d - same\n", chr, size); - */ - - chkneg(T1_FreeGlyph(g1)); - chkneg(T1_FreeGlyph(g2)); - } - if(diff) { - printf("*** Difference for %d==0x%x %c\n", chr, chr, - isprint(chr) ? chr : ' '); - printmap(stdout); - diff=0; - resetmap(); - } - } - - printf("All done!\n"); -} diff --git a/Build/source/texk/ttf2pt1/other/cntstems.pl b/Build/source/texk/ttf2pt1/other/cntstems.pl deleted file mode 100644 index 185c06c4fde..00000000000 --- a/Build/source/texk/ttf2pt1/other/cntstems.pl +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/perl -# -# Copyright (c) 2000 by Sergey Babkin -# (see COPYRIGHT for full copyright notice) -# -# script to calculate the total number of stems used by the -# glyphs in case if stems are always pushed to the stack and -# never popped (as X11 does) - -$insubrs = 0; -$inchars = 0; - -while(<>) -{ - if(/\/Subrs/) { - $insubrs = 1; - } elsif(/\/CharStrings/) { - $insubrs = 0; - $inchars = 1; - } - if($insubrs && /^dup (\d+)/) { - $cursubr = $1; - $substems[$cursubr] = 0; - } elsif (/^dup (\d+) \/(\S+) put/) { - $codeof{$2} = $1; - } - if($inchars) { - if(/^\/(\S+)\s+\{/) { - $curchar = $1; - $charstems = 0; - } elsif( /endchar/ ) { - printf("%d:%s\t%d\n", $codeof{$curchar}, $curchar, $charstems); - } elsif( /(\d+)\s+4\s+callsubr/) { - $charstems += $substems[$1+0]; - } - } - if(/[hv]stem3/) { - if($insubrs) { - $substems[$cursubr] += 3; - } elsif($inchars) { - $charstems += 3; - } - } elsif( /[hv]stem/ ) { - if($insubrs) { - $substems[$cursubr]++; - } elsif($inchars) { - $charstems++; - } - } -} diff --git a/Build/source/texk/ttf2pt1/other/dmpf.c b/Build/source/texk/ttf2pt1/other/dmpf.c deleted file mode 100644 index 1052a448721..00000000000 --- a/Build/source/texk/ttf2pt1/other/dmpf.c +++ /dev/null @@ -1,53 +0,0 @@ -/* - * see COPYRIGHT - */ - -#include <stdio.h> -#include <ctype.h> -#include "t1lib.h" - -/* - * Dump a rasterizarion of the font at small size - */ - -#define PROGNAME "dmpf" - -#include "bmpfont.h" - - -main(ac, av) - int ac; - char **av; -{ - int fontid1, fontid2; - GLYPH *g1, *g2; - int chr, size, diff, offset; - - if(ac!=2) { - fprintf(stderr,"Use: %s font\n", PROGNAME); - exit(1); - } - - chkneg(T1_SetBitmapPad(MYPAD)); - chkneg(T1_InitLib(NO_LOGFILE|IGNORE_CONFIGFILE|IGNORE_FONTDATABASE)); - chkneg(fontid1=T1_AddFont(av[1])); - - - resetmap(); - for(chr=0; chr<256; chr++) { - for(size=MAXSIZE; size>=MINSIZE; size--) { - chknull( g1=T1_CopyGlyph(T1_SetChar( fontid1, chr, (float)size, NULL)) ); - - drawglyf(size, g1); - - chkneg(T1_FreeGlyph(g1)); - } - - printf("*** Glyph %d==0x%x %c\n", chr, chr, - isprint(chr) ? chr : ' '); - printmap(stdout); - resetmap(); - } - - printf("All done!\n"); -} diff --git a/Build/source/texk/ttf2pt1/other/lst.pl b/Build/source/texk/ttf2pt1/other/lst.pl deleted file mode 100644 index b5840b275b0..00000000000 --- a/Build/source/texk/ttf2pt1/other/lst.pl +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/perl -# -# script to create HTML file with character table -# in plain, italic, bold, bold-italic -# -# see COPYRIGHT -# - -# width of tables -$step=16; - -# commands to enable and disable the font modes -# (the fastest changing is first) -@matrix = ( - [ "Roman", "Italic", "</i>", "<i>" ], - [ "Medium", "Bold", "</b>", "<b>" ], - [ "Variable", "Fixed", "</tt>", "<tt>" ], -); - -sub printall -{ - local $i, $j; - - printf("<table border=\"0\" >\n"); - for($j=32; $j<256; $j+=$step) { - printf("<tr>\n"); - for $i ($j..$j+$step-1) { - $c=chr($i); - if($c eq "<") { - $c="<"; - } elsif($c eq ">") { - $c=">"; - } - printf("<td><font color=\"gray\">%03d</font></td><td>\n", $i); - printf("<font color=\"white\">%s%s%s</font>\n", $enmode, $c, $dismode); - printf("</td>\n"); - } - printf("</tr>\n"); - } - printf("</table><p>\n"); -} - -printf("<HTML><HEAD></HEAD><BODY bgcolor=\"black\">\n<font color=\"white\"><p>\n"); - -for $mask (0.. (1<<@matrix)-1) { - #printf("<table><tr>"); - $mode = $enmode = $dismode = ""; - for $bit (0.. $#matrix) { - $val = ($mask >> $bit) & 1; - $mode = $matrix[$bit]->[$val] . "<br>" . $mode; - if( $val ) { - $enmode = $matrix[$bit]->[3] . $enmode; - $dismode = $dismode . $matrix[$bit]->[2]; - } - #printf("=== %d %s %s %s\n", $val, $mode, $enmode, $dismode); - } - #printf("%x %s %s %s\n", $mask, $mode, $enmode, $dismode); - printf("<table border=\"0\"><tr><td>\n"); - &printall(); - printf("</td><td valign=top><font size=\"+1\" color=\"yellow\"><b>\n"); - printf("%s\n", $mode); - printf("</b></font></td></tr></table>\n"); -} - -printf("</font></BODY></HTML>\n"); diff --git a/Build/source/texk/ttf2pt1/other/showdf b/Build/source/texk/ttf2pt1/other/showdf deleted file mode 100644 index 1706a81454d..00000000000 --- a/Build/source/texk/ttf2pt1/other/showdf +++ /dev/null @@ -1,58 +0,0 @@ -#!/usr/bin/perl - -if (@ARGV != 3) { - print STDERR "Use:\n"; - print STDERR " showdf <showg-script> <old-file> <new-file>\n"; - print STDERR "to create a showg diagram of glyphs differing in two files\n"; - exit 1; -} - -$cmd = shift @ARGV; -$oldf = shift @ARGV; -$newf = shift @ARGV; - -open(O, "<$oldf") or die "Unable to open '$oldf'\n"; -open(N, "<$newf") or die "Unable to open '$newf'\n"; - -while(<O>) { - last if(/CharStrings/); -} -while(<N>) { - last if(/CharStrings/); -} - -undef @symlist; -$sym = ''; -$inlist = 0; -$nstop = 0; - -while($so = <O>) { - if($so =~ m|^(/\S+)\s+\{|) { - $sym = $1; - $inlist = 0; - #printf STDERR "found sym $sym\n"; - if (!$nstop || $sn !~ m|^$sym\s+\{|) { - while($sn = <N>) { - #print STDERR "+$sn"; - last if($sn =~ m|^${sym}\s+\{|); - } - } - $nstop = 0; - } elsif(!$nstop) { - $sn = <N>; - #print STDERR "<$so>$sn\n"; - if($so ne $sn) { - if(!$inlist) { - $inlist = 1; - push(@symlist, $sym); - } - if($sn =~ m|^(/\S+)\s+\{|) { - $nstop = 1; - #printf STDERR "stop at $1\n"; - } - } - } -} -unshift(@symlist, $cmd, '-c', $oldf, $newf); -#printf("%s\n", join(' ', @symlist)); -exec @symlist; diff --git a/Build/source/texk/ttf2pt1/other/showg b/Build/source/texk/ttf2pt1/other/showg deleted file mode 100644 index 437860d4c2c..00000000000 --- a/Build/source/texk/ttf2pt1/other/showg +++ /dev/null @@ -1,633 +0,0 @@ -#!/usr/bin/perl - -my @cmpfiles; - -while($ARGV[0] eq "-c") { - shift(@ARGV); - push(@cmpfiles, shift(@ARGV)); -} - -if( $#ARGV < 1) { - die("Usage: $0 [-c file]... file glyph-code...\n"); -} - -$fname=shift @ARGV; - -# storage for files -my %fontname; -my %fbbox; -my %fblues; -my %fenc; -my %frevenc; -my %fsubrs; -my %fchars; -my @cmnbbox; # common bounding box covering all files - -@cmnbbox = (100, 100, 100, 100); - -# read all files into memory -for $f (@cmpfiles, $fname) { - open(FILE, "<$f") or die("no such file $f"); - while(<FILE>) { - if(/FontBBox\s+\{\s*(.*)\s*}/) { - @bbox=split(/\s+/, $1); - push(@{$fbbox{$f}}, @bbox); - if($bbox[0] < $cmnbbox[0]) { - $cmnbbox[0] = $bbox[0]; - } - if($bbox[1] < $cmnbbox[1]) { - $cmnbbox[1] = $bbox[1]; - } - if($bbox[2] > $cmnbbox[2]) { - $cmnbbox[2] = $bbox[2]; - } - if($bbox[3] > $cmnbbox[3]) { - $cmnbbox[3] = $bbox[3]; - } - } elsif( /BlueValues\s+\[\s*(.*)\s*\]/ || /OtherBlues\s+\[\s*(.*)\s*\]/ ) { - @blues=split(/\s+/, $1); - push(@{$fblues{$f}}, @blues); - } elsif( /^dup\s+(\d+)\s+\/(\S+)\s+put/ ) { - $fenc{$f}{$1} = $2; - if( ! defined $frevenc{$f}{$2} ) { - $frevenc{$f}{$2} = $1; - } - } elsif( /^dup\s+(\d+)\s+\{\s*$/ ) { - $key = $1; - $bf = $_; - while(<FILE>) { - $bf .= $_; - if( /\}\s+NP/ ) { - last; - } - } - $fsubrs{$f}{$key} = $bf; - } elsif( /^\/(\S+)\s+\{\s*$/ ) { - $key = $1; - $bf = $_; - while(<FILE>) { - $bf .= $_; - if( /endchar/ ) { - last; - } - } - $fchars{$f}{$key} = $bf; - } elsif( /^\/FontName\s+(\S+)/ ) { - $fontname{$f} = $1; - } - } - close(FILE); -} - -######################## Prolog ################################### - -print("%%!PS-Adobe-1.0 -%%DocumentNeededResources: font Courier -%%Pages: (atend) -%%EndComments -%%BeginProlog -/cmpfcolorarray [ - [ 1 0.2 0.2 ] % slightly lighter red - [ 0 0.7 0.7 ] % cyan - [ 0.7 0.7 0 ] % brown-yellow -] def -/cmpfcolor { % number -> . - cmpfcolorarray length mod % get the subarray number - cmpfcolorarray exch get aload pop setrgbcolor -} bind def -/contourcolor { 0 0 0 setrgbcolor } bind def % black -/bluezonecolor { 0.95 0.95 1 setrgbcolor } bind def % very light blue -/coordcolor { 0 1 0 setrgbcolor } bind def % green -/textcolor { 0 0 0 setrgbcolor } bind def % black -/stemcolor { 1 0 0 setrgbcolor } bind def % red -/mainstemcolor { 0 0 1 setrgbcolor } bind def % blue - -% /fnt2pt { 72 5 mul 1000 div } bind def - -/linehor { % . font_y -> . - gsave - 0 72 translate - 72 fnt2pt scale - newpath - 0 exch moveto - 7 0 rlineto - stroke - grestore -} bind def - -/linevert { % . font_x -> . - gsave - 72 0 translate - fnt2pt 72 scale - newpath - 0 moveto - 0 7 rlineto - stroke - grestore -} bind def - -/bluezone { % . font_y_1 font_y_2 -> . - gsave - bluezonecolor - 0 72 translate - 72 fnt2pt scale - newpath - 0 exch moveto - 7 0 rlineto - 7 exch lineto - -7 0 rlineto - closepath - fill - grestore -} bind def - -/drawstem { % . xwidth ywidth x0 y0 -> . - gsave - 72 72 translate fnt2pt fnt2pt scale xorg yorg translate - newpath - moveto - dup 0 exch rlineto - exch 0 rlineto - neg 0 exch rlineto - closepath fill - grestore -} bind def - -/getlen { - dup stringwidth pop -} bind def - -/compressfont 0.8 def - -/label { % . string stringwd y -> . - dup lasty lt { - dup lasty fontsz sub le - } { - dup lasty fontsz add ge - } ifelse { - /curx 0 store - } if - dup /lasty exch store - 0 exch moveto - compressfont mul dup curx add maxx gt { - /curx 0 store - } if - curx 0 rmoveto - dup 0 rlineto - stroke - gsave - curx lasty moveto - curx add /curx exch store - compressfont 1 scale - show - grestore -} bind def -"); - -@bbox=@cmnbbox; - -$nx=$bbox[2]-$bbox[0]; -$ny=$bbox[3]-$bbox[1]; -$maxsz= ($nx>$ny) ? $nx : $ny; -$fnt2pt= 72*5/$maxsz; -printf("/fnt2pt 72 5 mul %d div def\n", $maxsz); -$xorg= -($bbox[0]-($maxsz-$nx)/2); -$yorg= -($bbox[1]-($maxsz-$ny)/2); -printf("/xorg %d def /yorg %d def\n", $xorg, $yorg); - -print(" -%%EndProlog -"); - -######################## Subroutines ############################## - -sub bluezone # from to -{ - my ($a, $b)=@_; - printf("%d %d bluezone\n",$a+$yorg, $b+$yorg); - $ycoord{$a+0}=1; - $ycoord{$b+0}=1; -} - -sub linehor # x -{ - my $a=$_[0]; - printf("%d linehor\n",$a+$yorg); - $ycoord{$a+0}=1; -} - -sub linevert # x -{ - my $a=$_[0]; - printf("%d linevert\n",$a+$xorg); - $xcoord{$a+0}=1; -} - -sub hstem # from width -{ - my ($from, $width)=@_; - $stemhused=1; - printf("%d %d %d %d drawstem %% %d %d h \n", -$stemwd, $width, - $bbox[0]-2-$stemhgrp*$stemwd, $from, - $from, $width); - printf("%d %d %d %d drawstem %% %d %d h \n", $stemwd, $width, - $bbox[2]+2+$stemhgrp*$stemwd, $from, - $from, $width); -} - -sub vstem # from width -{ - my ($from, $width)=@_; - $stemvused=1; - printf("%d %d %d %d drawstem %% %d %d v \n", $width, -$stemwd, - $from, $bbox[1]-2-$stemhgrp*$stemwd, - $from, $width); - printf("%d %d %d %d drawstem %% %d %d v \n", $width, $stemwd, - $from, $bbox[3]+2+$stemhgrp*$stemwd, - $from, $width); -} - -sub nextstemgrp -{ - if($stemhused || $stemvused) { - $stemhgrp++; - $stemhused=0; - $stemvgrp++; - $stemvused=0; - } -} - -sub substems # fname subrlist -{ - my $fname = shift; - my $i, $cmd, @vals; - - print("\nstemcolor\n"); - - for $i (@_) { - &nextstemgrp(); - for $_ (split(/\n/, $fsubrs{$fname}{$i})) { - s/^\s+//; - @vals=split(/\s+/, $_); - $cmd=$vals[$#vals]; - if($cmd eq "hstem") { - &hstem($vals[0], $vals[1]); - } elsif($cmd eq "vstem") { - &vstem($vals[0], $vals[1]); - } - } - } - print("\n"); -} - -sub drawcharwstems # charstring -{ - my($x,$y)=(0,0); - my @vals, $cmd, $i; - - print("\nmainstemcolor\n"); - &nextstemgrp(); - for $_ (split(/\n/, $_[0])) { - s/^\s+//; - @vals=split(/\s+/, $_); - $cmd=$vals[$#vals]; - - if($cmd eq "hsbw") { - $x=$vals[0]+0; - } elsif($cmd eq "hstem") { - &hstem($vals[0], $vals[1]); - } elsif($cmd eq "hstem3") { - &hstem($vals[0], $vals[1]); - &hstem($vals[2], $vals[3]); - &hstem($vals[4], $vals[5]); - } elsif($cmd eq "vstem") { - &vstem($vals[0], $vals[1]); - } elsif($cmd eq "vstem3") { - &vstem($vals[0], $vals[1]); - &vstem($vals[2], $vals[3]); - &vstem($vals[4], $vals[5]); - } elsif($cmd eq "rmoveto") { - # a shortcut - last; - } - } - &drawchar("drawchar", 1, "contourcolor", $_[0]); -} - -sub drawchar #procname wantgrid color charstring -{ - my($procname, $wantgrid, $color, $charstring) = @_; - my($x,$y)=(0,0); - my @vals, $cmd, $i; - my %xv=(); - my %yv=(); - - printf("\n/%s {\n",$procname); - printf("\ngsave 72 72 translate fnt2pt fnt2pt scale %d %d translate\n", $xorg, $yorg); - printf("%s 1 setlinewidth newpath\n", $color); - for $_ (split(/\n/, $charstring)) { - s/^\s+//; - @vals=split(/\s+/, $_); - $cmd=$vals[$#vals]; - - if($cmd eq "callsubr" && $vals[1] == 4) { - push(@subrlist, $vals[0]); - } elsif($cmd eq "amoveto") { - $x=$vals[0]+0; - $y=$vals[1]+0; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d moveto\n", $x, $y); - printf("%d %d 5 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "rmoveto") { - $x+=$vals[0]; - $y+=$vals[1]; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d moveto\n", $x, $y); - printf("%d %d 5 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "hmoveto") { - $x+=$vals[0]; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d moveto\n", $x, $y); - printf("%d %d 5 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "vmoveto") { - $y+=$vals[0]; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d moveto\n", $x, $y); - printf("%d %d 5 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "alineto") { - $x=$vals[0]+0; - $y=$vals[1]+0; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d lineto\n", $x, $y); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "rlineto") { - $x+=$vals[0]; - $y+=$vals[1]; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d lineto\n", $x, $y); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "hlineto") { - $x+=$vals[0]; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d lineto\n", $x, $y); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "vlineto") { - $y+=$vals[0]; - $xv{$x+0}=1; $yv{$y+0}=1; - printf("%d %d lineto\n", $x, $y); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "arcurveto") { - for $i (0,2,4) { - $x=$vals[$i]+0; - $y=$vals[$i+1]+0; - printf("%d %d ", $x, $y); - } - $xv{$x+0}=1; $yv{$y+0}=1; - printf("curveto\n"); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "rrcurveto") { - for $i (0,2,4) { - $x+=$vals[$i]; - $y+=$vals[$i+1]; - printf("%d %d \n", $x, $y); - } - $xv{$x+0}=1; $yv{$y+0}=1; - printf("curveto\n"); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "hvcurveto") { - $x+=$vals[0]; - printf("%d %d \n", $x, $y); - $x+=$vals[1]; - $y+=$vals[2]; - printf("%d %d \n", $x, $y); - $y+=$vals[3]; - printf("%d %d \n", $x, $y); - $xv{$x+0}=1; $yv{$y+0}=1; - printf("curveto\n"); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "vhcurveto") { - $y+=$vals[0]; - printf("%d %d \n", $x, $y); - $x+=$vals[1]; - $y+=$vals[2]; - printf("%d %d \n", $x, $y); - $x+=$vals[3]; - printf("%d %d \n", $x, $y); - $xv{$x+0}=1; $yv{$y+0}=1; - printf("curveto\n"); - printf("%d %d 3 0 360 arc %d %d moveto\n", $x, $y, $x, $y); - } elsif($cmd eq "closepath") { - printf("closepath stroke newpath\n"); - } - } - - printf("grestore } bind def\n"); - if($wantgrid) { - printf("coordcolor\n"); - for $x (keys %xv) { - &linevert($x); - } - for $y (keys %yv) { - &linehor($y); - } - } -} - -$pages=0; - -for $arg (@ARGV) { - undef $name, $code; - - if( $arg =~ /^\/(.*)/ ) { - $name=$1; - } elsif( $arg =~ /^\.(.)/ ) { - $code=ord($1); - } else { - $code=$arg; - } - - $pages++; - - $stemhgrp=0; - $stemhused=0; - $stemvgrp=0; - $stemvused=0; - $stemwd=10; - undef %xcoord; - undef %ycoord; - - if( defined $name ) { - $xname = $name; - $xcode = $frevenc{$fname}{$name}; - if( $xcode eq "" ) { - $xcode = "**UNKNOWN**"; - } - } else { - $xname = $fenc{$fname}{$code}; - if( $xname eq "" ) { - $xname = "**UNKNOWN**"; - } - $xcode = $code; - } - - printf("%%%%Page: %d %d\n", $pages, $pages); - printf("gsave - -0 setlinewidth -36 72 translate - -gsave -contourcolor -72 72 scale -newpath -0 0 moveto -7 0 rlineto -0 7 rlineto --7 0 rlineto -closepath -stroke -1 1 translate -newpath -0 0 moveto -5 0 rlineto -0 5 rlineto --5 0 rlineto -closepath -stroke -grestore - -"); - - undef @subrlist; - - - @bbox=@{$fbbox{$fname}}; - - print("coordcolor\n"); - printf("0 linehor %d linehor %d linehor\n", $bbox[1]+$yorg, $bbox[3]+$yorg); - printf("%d linevert %d linevert\n", $bbox[0]+$xorg, $bbox[2]+$xorg); - - %vals=@{$fblues{$fname}}; - for $i (keys %vals) { - &bluezone($i, $vals{$i}); - } - - $havechar = 1; - if( defined $fchars{$fname}{$xname} ) { - &drawcharwstems($fchars{$fname}{$xname}); - } else { - $havechar = 0; - if(defined $name) { - printf(STDERR "WARNING: %s nas no character with name \"%s\"\n", $fname, $name); - } else { - printf(STDERR "WARNING: %s nas no character with code \"%s\"\n", $fname, $code); - } - } - - &substems($fname, @subrlist); - - printf(STDERR "glyph name:%s code:%s (%d substituted stem groups)\n", $xname, $xcode, scalar @subrlist); - - $cmpfidx = 0; - for $cmpf(@cmpfiles) { - undef $cname, $ccode; - - if( defined $name ) { - if ( ! defined $fchars{$cmpf}{$name} && defined $fenc{$cmpf}{$xcode}) { - printf(STDERR " NOTE: %s nas no glyph with name \"%s\", guessed by code\n", $cmpf, $name); - $cname = $fenc{$cmpf}{$xcode}; - if( $cname eq "" ) { - $cname = "**UNKNOWN**"; - } - $ccode = $xcode; - } else { - $cname = $name; - $ccode = $frevenc{$cmpf}{$name}; - if( $ccode eq "" ) { - $ccode = "**UNKNOWN**"; - } - } - } else { - $cname = $fenc{$cmpf}{$code}; - if( $cname eq "" ) { - $cname = "**UNKNOWN**"; - } - $ccode = $code; - } - - if( defined $fchars{$cmpf}{$cname} ) { - &drawchar("drawcmpchar", 0, sprintf("%d cmpfcolor", $cmpfidx), - $fchars{$cmpf}{$cname}); - printf("drawcmpchar\n\n"); - printf(STDERR " in %s glyph name:%s code:%s\n", $cmpf, $cname, $ccode); - } else { - if(defined $name) { - printf(STDERR " WARNING: %s nas no character with name \"%s\"\n", $cmpf, $name); - } else { - printf(STDERR " WARNING: %s nas no character with code \"%s\"\n", $cmpf, $code); - } - } - $cmpfidx++; - } - - if($havechar) { - printf("drawchar\n\n"); - } - - # flush the last group - &nextstemgrp(); - - # the values of coordinates - printf("/fontsz 8 fnt2pt div def\n"); - printf("/Myfont /Courier findfont fontsz scalefont def\n\n"); - printf("contourcolor Myfont setfont\n"); - - for $org (0, $xorg+$bbox[2]+$stemwd*$stemhgrp+72/$fnt2pt) { - printf("gsave\n"); - printf("/maxx 72 fnt2pt div %d sub def /curx 0 def /lasty -10000 def\n", - 2+$stemhgrp*$stemwd-$xorg-$bbox[0]); - printf("0 72 translate fnt2pt fnt2pt scale %f yorg translate 1 setlinewidth\n", $org); - for $y (sort {$a <=> $b} keys %ycoord) { - printf("(%d) getlen %d label\n", $y, $y); - } - printf("grestore\n"); - } - - for $org (0, $yorg+$bbox[3]+$stemwd*$stemvgrp+72/$fnt2pt) { - printf("gsave\n"); - printf("/maxx 72 fnt2pt div %d sub def /curx 0 def /lasty -10000 def\n", - 2+$stemvgrp*$stemwd-$yorg-$bbox[1]); - printf("72 0 translate fnt2pt fnt2pt scale xorg %f translate 90 rotate 1 setlinewidth\n", $org); - for $x (sort {$a <=> $b} keys %xcoord) { - printf("(%d) getlen %d label\n", $x, -$x); - } - printf("grestore\n"); - } - - printf("gsave 0 %d translate\n", 7.5*72 ); - printf("contourcolor /Courier findfont 12 scalefont setfont\n"); - $line = 0; - - $cmpfidx = $#cmpfiles; - if( $cmpfidx > (2.5*72/15)-4 ) { - $cmpfidx = (2.5*72/15)-4; - } - for(; $cmpfidx>=0; $cmpfidx--) { - $cmpf = $cmpfiles[$cmpfidx]; - printf("%d cmpfcolor\n", $cmpfidx); - printf("newpath 20 %d moveto 0 10 rlineto 10 0 rlineto 0 -10 rlineto closepath fill\n", - 15*$line, $cmpf); - printf("contourcolor 40 %d moveto (%s %s) show\n", 15*$line, $cmpf, $fontname{$cmpf}); - $line++; - } - if( $#cmpfiles >=0 ) { - printf("0 %d moveto (Comparison files:) show\n", 15*$line++); - } - printf("0 %d moveto (code: %d name: %s) show\n", 15*$line++, $xcode, $xname); - printf("0 %d moveto (%s) show\n", 15*$line++, $fname); - printf("0 %d moveto (%s) show\n", 15*$line++, $fontname{$fname}); - printf("grestore\n\n"); - - printf("showpage grestore\n\n"); -} -printf("%%%%Pages: %d\n", $pages); diff --git a/Build/source/texk/ttf2pt1/pt1.c b/Build/source/texk/ttf2pt1/pt1.c deleted file mode 100644 index 4c4bfaee0c9..00000000000 --- a/Build/source/texk/ttf2pt1/pt1.c +++ /dev/null @@ -1,7164 +0,0 @@ -/* - * see COPYRIGHT - */ - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <time.h> -#include <ctype.h> -#include <math.h> - -#ifndef WINDOWS -# include <netinet/in.h> -# include <unistd.h> -#else -# include "winport.h" -#pragma optimize ("", off) -#endif - -#include "ttf.h" -#include "pt1.h" -#include "global.h" - -/* big and small values for comparisons */ -#define FBIGVAL (1e20) -#define FEPS (100000./FBIGVAL) - -/* names of the axes */ -#define X 0 -#define Y 1 - -/* description of a dot for calculation of its distance to a curve */ - -struct dot_dist { - double p[2 /*X,Y*/]; /* coordinates of a dot */ - double dist2; /* squared distance from the dot to the curve */ - short seg; /* the closest segment of the curve */ -}; - -/* the GENTRY extension structure used in fforceconcise() */ - -struct gex_con { - double d[2 /*X, Y*/]; /* sizes of curve */ - double sin2; /* squared sinus of the angle to the next gentry */ - double len2; /* squared distance between the endpoints */ - -/* number of reference dots taken from each curve */ -#define NREFDOTS 3 - - double dots[NREFDOTS][2]; /* reference dots */ - - int flags; /* flags for gentry and tits joint to the next gentry */ -/* a vertical or horizontal line may be in 2 quadrants at once */ -#define GEXF_QUL 0x00000001 /* in up-left quadrant */ -#define GEXF_QUR 0x00000002 /* in up-right quadrant */ -#define GEXF_QDR 0x00000004 /* in down-right quadrant */ -#define GEXF_QDL 0x00000008 /* in down-left quadrant */ -#define GEXF_QMASK 0x0000000F /* quadrant mask */ - -/* if a line is nearly vertical or horizontal, we remember that idealized quartant too */ -#define GEXF_QTO_IDEAL(f) (((f)&0xF)<<4) -#define GEXF_QFROM_IDEAL(f) (((f)&0xF0)>>4) -#define GEXF_IDQ_L 0x00000090 /* left */ -#define GEXF_IDQ_R 0x00000060 /* right */ -#define GEXF_IDQ_U 0x00000030 /* up */ -#define GEXF_IDQ_D 0x000000C0 /* down */ - -/* possibly can be joined with conditions: - * (in order of increasing preference, the numeric order is important) - */ -#define GEXF_JLINE 0x00000100 /* into one line */ -#define GEXF_JIGN 0x00000200 /* if one entry's tangent angle is ignored */ -#define GEXF_JID 0x00000400 /* if one entry is idealized to hor/vert */ -#define GEXF_JFLAT 0x00000800 /* if one entry is flattened */ -#define GEXF_JGOOD 0x00001000 /* perfectly, no additional maodifications */ - -#define GEXF_JMASK 0x00001F00 /* the mask of all above */ -#define GEXF_JCVMASK 0x00001E00 /* the mask of all above except JLINE */ - -/* which entry needs to be modified for conditional joining */ -#define GEXF_JIGN1 0x00002000 -#define GEXF_JIGN2 0x00004000 -#define GEXF_JIGNDIR(dir) (GEXF_JIGN1<<(dir)) -#define GEXF_JID1 0x00008000 -#define GEXF_JID2 0x00010000 -#define GEXF_JIDDIR(dir) (GEXF_JID1<<(dir)) -#define GEXF_JFLAT1 0x00020000 -#define GEXF_JFLAT2 0x00040000 -#define GEXF_JFLATDIR(dir) (GEXF_JFLAT1<<(dir)) - -#define GEXF_VERT 0x00100000 /* is nearly vertical */ -#define GEXF_HOR 0x00200000 /* is nearly horizontal */ -#define GEXF_FLAT 0x00400000 /* is nearly flat */ - -#define GEXF_VDOTS 0x01000000 /* the dots are valid */ - - signed char isd[2 /*X,Y*/]; /* signs of the sizes */ -}; -typedef struct gex_con GEX_CON; - -/* convenience macros */ -#define X_CON(ge) ((GEX_CON *)((ge)->ext)) -#define X_CON_D(ge) (X_CON(ge)->d) -#define X_CON_DX(ge) (X_CON(ge)->d[0]) -#define X_CON_DY(ge) (X_CON(ge)->d[1]) -#define X_CON_ISD(ge) (X_CON(ge)->isd) -#define X_CON_ISDX(ge) (X_CON(ge)->isd[0]) -#define X_CON_ISDY(ge) (X_CON(ge)->isd[1]) -#define X_CON_SIN2(ge) (X_CON(ge)->sin2) -#define X_CON_LEN2(ge) (X_CON(ge)->len2) -#define X_CON_F(ge) (X_CON(ge)->flags) - -/* performance statistics about guessing the concise curves */ -static int ggoodcv=0, ggoodcvdots=0, gbadcv=0, gbadcvdots=0; - -int stdhw, stdvw; /* dominant stems widths */ -int stemsnaph[12], stemsnapv[12]; /* most typical stem width */ - -int bluevalues[14]; -int nblues; -int otherblues[10]; -int notherb; -int bbox[4]; /* the FontBBox array */ -double italic_angle; - -GLYPH *glyph_list; -int encoding[ENCTABSZ]; /* inverse of glyph[].char_no */ -int kerning_pairs = 0; - -/* prototypes */ -static int isign( int x); -static int fsign( double x); -static void fixcvdir( GENTRY * ge, int dir); -static void fixcvends( GENTRY * ge); -static int fgetcvdir( GENTRY * ge); -static int igetcvdir( GENTRY * ge); -static int fiszigzag( GENTRY *ge); -static int iiszigzag( GENTRY *ge); -static GENTRY * freethisge( GENTRY *ge); -static void addgeafter( GENTRY *oge, GENTRY *nge ); -static GENTRY * newgentry( int flags); -static void debugstems( char *name, STEM * hstems, int nhs, STEM * vstems, int nvs); -static int addbluestems( STEM *s, int n); -static void sortstems( STEM * s, int n); -static int stemoverlap( STEM * s1, STEM * s2); -static int steminblue( STEM *s); -static void markbluestems( STEM *s, int nold); -static int joinmainstems( STEM * s, int nold, int useblues); -static void joinsubstems( STEM * s, short *pairs, int nold, int useblues); -static void fixendpath( GENTRY *ge); -static void fdelsmall( GLYPH *g, double minlen); -static int fcrossrays( GENTRY *ge1, GENTRY *ge2, double *max1, double *max2, double crossdot[2][2]); -static double fdotsegdist2( double seg[2][2], double dot[2]); -static double fdotcurvdist2( double curve[4][2], struct dot_dist *dots, int ndots, double *maxp); -static void alloc_gex_con( GENTRY *ge); -static void fapproxcurve( double cv[4][2], struct dot_dist *dots, int ndots); -static double fjointsin2( GENTRY *ge1, GENTRY *ge2); -static double fcvarea( GENTRY *ge); -static double fcvval( GENTRY *ge, int axis, double t); -static void fsampledots( GENTRY *ge, double dots[][2], int ndots); -static void fnormalizege( GENTRY *ge); -static void fanalyzege( GENTRY *ge); -static void fanalyzejoint( GENTRY *ge); -static void fconcisecontour( GLYPH *g, GENTRY *ge); -static double fclosegap( GENTRY *from, GENTRY *to, int axis, - double gap, double *ret); - -static int -isign( - int x -) -{ - if (x > 0) - return 1; - else if (x < 0) - return -1; - else - return 0; -} - -static int -fsign( - double x -) -{ - if (x > 0.0) - return 1; - else if (x < 0.0) - return -1; - else - return 0; -} - -static GENTRY * -newgentry( - int flags -) -{ - GENTRY *ge; - - ge = calloc(1, sizeof(GENTRY)); - - if (ge == 0) { - fprintf(stderr, "***** Memory allocation error *****\n"); - exit(255); - } - ge->stemid = -1; - ge->flags = flags; - /* the rest is set to 0 by calloc() */ - return ge; -} - -/* - * Routines to print out Postscript functions with optimization - */ - -void -rmoveto( - int dx, - int dy -) -{ - if (optimize && dx == 0) - fprintf(pfa_file, "%d vmoveto\n", dy); - else if (optimize && dy == 0) - fprintf(pfa_file, "%d hmoveto\n", dx); - else - fprintf(pfa_file, "%d %d rmoveto\n", dx, dy); -} - -void -rlineto( - int dx, - int dy -) -{ - if (optimize && dx == 0 && dy == 0) /* for special pathologic - * case */ - return; - else if (optimize && dx == 0) - fprintf(pfa_file, "%d vlineto\n", dy); - else if (optimize && dy == 0) - fprintf(pfa_file, "%d hlineto\n", dx); - else - fprintf(pfa_file, "%d %d rlineto\n", dx, dy); -} - -void -rrcurveto( - int dx1, - int dy1, - int dx2, - int dy2, - int dx3, - int dy3 -) -{ - /* first two ifs are for crazy cases that occur surprisingly often */ - if (optimize && dx1 == 0 && dx2 == 0 && dx3 == 0) - rlineto(0, dy1 + dy2 + dy3); - else if (optimize && dy1 == 0 && dy2 == 0 && dy3 == 0) - rlineto(dx1 + dx2 + dx3, 0); - else if (optimize && dy1 == 0 && dx3 == 0) - fprintf(pfa_file, "%d %d %d %d hvcurveto\n", - dx1, dx2, dy2, dy3); - else if (optimize && dx1 == 0 && dy3 == 0) - fprintf(pfa_file, "%d %d %d %d vhcurveto\n", - dy1, dx2, dy2, dx3); - else - fprintf(pfa_file, "%d %d %d %d %d %d rrcurveto\n", - dx1, dy1, dx2, dy2, dx3, dy3); -} - -void -closepath(void) -{ - fprintf(pfa_file, "closepath\n"); -} - -/* - * Many of the path processing routines exist (or will exist) in - * both floating-point and integer version. Fimally most of the - * processing will go in floating point and the integer processing - * will become legacy. - * The names of floating routines start with f, names of integer - * routines start with i, and those old routines existing in one - * version only have no such prefix at all. - */ - -/* -** Routine that checks integrity of the path, for debugging -*/ - -void -assertpath( - GENTRY * from, - char *file, - int line, - char *name -) -{ - GENTRY *first, *pe, *ge; - int isfloat; - - if(from==0) - return; - isfloat = (from->flags & GEF_FLOAT); - pe = from->prev; - for (ge = from; ge != 0; pe = ge, ge = ge->next) { - if( (ge->flags & GEF_FLOAT) ^ isfloat ) { - fprintf(stderr, "**! assertpath: called from %s line %d (%s) ****\n", file, line, name); - fprintf(stderr, "float flag changes from %s to %s at 0x%p (type %c, prev type %c)\n", - (isfloat ? "TRUE" : "FALSE"), (isfloat ? "FALSE" : "TRUE"), ge, ge->type, pe->type); - abort(); - } - if (pe != ge->prev) { - fprintf(stderr, "**! assertpath: called from %s line %d (%s) ****\n", file, line, name); - fprintf(stderr, "unidirectional chain 0x%x -next-> 0x%x -prev-> 0x%x \n", - pe, ge, ge->prev); - abort(); - } - - switch(ge->type) { - case GE_MOVE: - break; - case GE_PATH: - if (ge->prev == 0) { - fprintf(stderr, "**! assertpath: called from %s line %d (%s) ****\n", file, line, name); - fprintf(stderr, "empty path at 0x%x \n", ge); - abort(); - } - break; - case GE_LINE: - case GE_CURVE: - if(ge->frwd->bkwd != ge) { - fprintf(stderr, "**! assertpath: called from %s line %d (%s) ****\n", file, line, name); - fprintf(stderr, "unidirectional chain 0x%x -frwd-> 0x%x -bkwd-> 0x%x \n", - ge, ge->frwd, ge->frwd->bkwd); - abort(); - } - if(ge->prev->type == GE_MOVE) { - first = ge; - if(ge->bkwd->next->type != GE_PATH) { - fprintf(stderr, "**! assertpath: called from %s line %d (%s) ****\n", file, line, name); - fprintf(stderr, "broken first backlink 0x%x -bkwd-> 0x%x -next-> 0x%x \n", - ge, ge->bkwd, ge->bkwd->next); - abort(); - } - } - if(ge->next->type == GE_PATH) { - if(ge->frwd != first) { - fprintf(stderr, "**! assertpath: called from %s line %d (%s) ****\n", file, line, name); - fprintf(stderr, "broken loop 0x%x -...-> 0x%x -frwd-> 0x%x \n", - first, ge, ge->frwd); - abort(); - } - } - break; - } - - } -} - -void -assertisfloat( - GLYPH *g, - char *msg -) -{ - if( !(g->flags & GF_FLOAT) ) { - fprintf(stderr, "**! Glyph %s is not float: %s\n", g->name, msg); - abort(); - } - if(g->lastentry) { - if( !(g->lastentry->flags & GEF_FLOAT) ) { - fprintf(stderr, "**! Glyphs %s last entry is int: %s\n", g->name, msg); - abort(); - } - } -} - -void -assertisint( - GLYPH *g, - char *msg -) -{ - if( (g->flags & GF_FLOAT) ) { - fprintf(stderr, "**! Glyph %s is not int: %s\n", g->name, msg); - abort(); - } - if(g->lastentry) { - if( (g->lastentry->flags & GEF_FLOAT) ) { - fprintf(stderr, "**! Glyphs %s last entry is float: %s\n", g->name, msg); - abort(); - } - } -} - - -/* - * Routines to save the generated data about glyph - */ - -void -fg_rmoveto( - GLYPH * g, - double x, - double y) -{ - GENTRY *oge; - - if (ISDBG(BUILDG)) - fprintf(stderr, "%s: f rmoveto(%g, %g)\n", g->name, x, y); - - assertisfloat(g, "adding float MOVE"); - - if ((oge = g->lastentry) != 0) { - if (oge->type == GE_MOVE) { /* just eat up the first move */ - oge->fx3 = x; - oge->fy3 = y; - } else if (oge->type == GE_LINE || oge->type == GE_CURVE) { - fprintf(stderr, "Glyph %s: MOVE in middle of path\n", g->name); - } else { - GENTRY *nge; - - nge = newgentry(GEF_FLOAT); - nge->type = GE_MOVE; - nge->fx3 = x; - nge->fy3 = y; - - oge->next = nge; - nge->prev = oge; - g->lastentry = nge; - } - } else { - GENTRY *nge; - - nge = newgentry(GEF_FLOAT); - nge->type = GE_MOVE; - nge->fx3 = x; - nge->fy3 = y; - nge->bkwd = (GENTRY*)&g->entries; - g->entries = g->lastentry = nge; - } - - if (0 && ISDBG(BUILDG)) - dumppaths(g, NULL, NULL); -} - -void -fg_rlineto( - GLYPH * g, - double x, - double y) -{ - GENTRY *oge, *nge; - - if (ISDBG(BUILDG)) - fprintf(stderr, "%s: f rlineto(%g, %g)\n", g->name, x, y); - - assertisfloat(g, "adding float LINE"); - - nge = newgentry(GEF_FLOAT); - nge->type = GE_LINE; - nge->fx3 = x; - nge->fy3 = y; - - if ((oge = g->lastentry) != 0) { - if (x == oge->fx3 && y == oge->fy3) { /* empty line */ - /* ignore it or we will get in troubles later */ - free(nge); - return; - } - if (g->path == 0) { - g->path = nge; - nge->bkwd = nge->frwd = nge; - } else { - oge->frwd = nge; - nge->bkwd = oge; - g->path->bkwd = nge; - nge->frwd = g->path; - } - - oge->next = nge; - nge->prev = oge; - g->lastentry = nge; - } else { - WARNING_1 fprintf(stderr, "Glyph %s: LINE outside of path\n", g->name); - free(nge); - } - - if (0 && ISDBG(BUILDG)) - dumppaths(g, NULL, NULL); -} - -void -fg_rrcurveto( - GLYPH * g, - double x1, - double y1, - double x2, - double y2, - double x3, - double y3) -{ - GENTRY *oge, *nge; - - oge = g->lastentry; - - if (ISDBG(BUILDG)) - fprintf(stderr, "%s: f rrcurveto(%g, %g, %g, %g, %g, %g)\n" - ,g->name, x1, y1, x2, y2, x3, y3); - - assertisfloat(g, "adding float CURVE"); - - if (oge && oge->fx3 == x1 && x1 == x2 && x2 == x3) /* check if it's - * actually a line */ - fg_rlineto(g, x1, y3); - else if (oge && oge->fy3 == y1 && y1 == y2 && y2 == y3) - fg_rlineto(g, x3, y1); - else { - nge = newgentry(GEF_FLOAT); - nge->type = GE_CURVE; - nge->fx1 = x1; - nge->fy1 = y1; - nge->fx2 = x2; - nge->fy2 = y2; - nge->fx3 = x3; - nge->fy3 = y3; - - if (oge != 0) { - if (x3 == oge->fx3 && y3 == oge->fy3) { - free(nge); /* consider this curve empty */ - /* ignore it or we will get in troubles later */ - return; - } - if (g->path == 0) { - g->path = nge; - nge->bkwd = nge->frwd = nge; - } else { - oge->frwd = nge; - nge->bkwd = oge; - g->path->bkwd = nge; - nge->frwd = g->path; - } - - oge->next = nge; - nge->prev = oge; - g->lastentry = nge; - } else { - WARNING_1 fprintf(stderr, "Glyph %s: CURVE outside of path\n", g->name); - free(nge); - } - } - - if (0 && ISDBG(BUILDG)) - dumppaths(g, NULL, NULL); -} - -void -g_closepath( - GLYPH * g -) -{ - GENTRY *oge, *nge; - - if (ISDBG(BUILDG)) - fprintf(stderr, "%s: closepath\n", g->name); - - oge = g->lastentry; - - if (g->path == 0) { - WARNING_1 fprintf(stderr, "Warning: **** closepath on empty path in glyph \"%s\" ****\n", - g->name); - if (oge == 0) { - WARNING_1 fprintf(stderr, "No previois entry\n"); - } else { - WARNING_1 fprintf(stderr, "Previous entry type: %c\n", oge->type); - if (oge->type == GE_MOVE) { - g->lastentry = oge->prev; - if (oge->prev == 0) - g->entries = 0; - } - } - return; - } - - nge = newgentry(oge->flags & GEF_FLOAT); /* keep the same type */ - nge->type = GE_PATH; - - g->path = 0; - - oge->next = nge; - nge->prev = oge; - g->lastentry = nge; - - if (0 && ISDBG(BUILDG)) - dumppaths(g, NULL, NULL); -} - -/* - * * SB * Routines to smooth and fix the glyphs - */ - -/* -** we don't want to see the curves with coinciding middle and -** outer points -*/ - -static void -fixcvends( - GENTRY * ge -) -{ - int dx, dy; - int x0, y0, x1, y1, x2, y2, x3, y3; - - if (ge->type != GE_CURVE) - return; - - if(ge->flags & GEF_FLOAT) { - fprintf(stderr, "**! fixcvends(0x%x) on floating entry, ABORT\n", ge); - abort(); /* dump core */ - } - - x0 = ge->prev->ix3; - y0 = ge->prev->iy3; - x1 = ge->ix1; - y1 = ge->iy1; - x2 = ge->ix2; - y2 = ge->iy2; - x3 = ge->ix3; - y3 = ge->iy3; - - - /* look at the start of the curve */ - if (x1 == x0 && y1 == y0) { - dx = x2 - x1; - dy = y2 - y1; - - if (dx == 0 && dy == 0 - || x2 == x3 && y2 == y3) { - /* Oops, we actually have a straight line */ - /* - * if it's small, we hope that it will get optimized - * later - */ - if (abs(x3 - x0) <= 2 || abs(y3 - y0) <= 2) { - ge->ix1 = x3; - ge->iy1 = y3; - ge->ix2 = x0; - ge->iy2 = y0; - } else {/* just make it a line */ - ge->type = GE_LINE; - } - } else { - if (abs(dx) < 4 && abs(dy) < 4) { /* consider it very - * small */ - ge->ix1 = x2; - ge->iy1 = y2; - } else if (abs(dx) < 8 && abs(dy) < 8) { /* consider it small */ - ge->ix1 += dx / 2; - ge->iy1 += dy / 2; - } else { - ge->ix1 += dx / 4; - ge->iy1 += dy / 4; - } - /* make sure that it's still on the same side */ - if (abs(x3 - x0) * abs(dy) < abs(y3 - y0) * abs(dx)) { - if (abs(x3 - x0) * abs(ge->iy1 - y0) > abs(y3 - y0) * abs(ge->ix1 - x0)) - ge->ix1 += isign(dx); - } else { - if (abs(x3 - x0) * abs(ge->iy1 - y0) < abs(y3 - y0) * abs(ge->ix1 - x0)) - ge->iy1 += isign(dy); - } - - ge->ix2 += (x3 - x2) / 8; - ge->iy2 += (y3 - y2) / 8; - /* make sure that it's still on the same side */ - if (abs(x3 - x0) * abs(y3 - y2) < abs(y3 - y0) * abs(x3 - x2)) { - if (abs(x3 - x0) * abs(y3 - ge->iy2) > abs(y3 - y0) * abs(x3 - ge->ix2)) - ge->iy1 -= isign(y3 - y2); - } else { - if (abs(x3 - x0) * abs(y3 - ge->iy2) < abs(y3 - y0) * abs(x3 - ge->ix2)) - ge->ix1 -= isign(x3 - x2); - } - - } - } else if (x2 == x3 && y2 == y3) { - dx = x1 - x2; - dy = y1 - y2; - - if (dx == 0 && dy == 0) { - /* Oops, we actually have a straight line */ - /* - * if it's small, we hope that it will get optimized - * later - */ - if (abs(x3 - x0) <= 2 || abs(y3 - y0) <= 2) { - ge->ix1 = x3; - ge->iy1 = y3; - ge->ix2 = x0; - ge->iy2 = y0; - } else {/* just make it a line */ - ge->type = GE_LINE; - } - } else { - if (abs(dx) < 4 && abs(dy) < 4) { /* consider it very - * small */ - ge->ix2 = x1; - ge->iy2 = y1; - } else if (abs(dx) < 8 && abs(dy) < 8) { /* consider it small */ - ge->ix2 += dx / 2; - ge->iy2 += dy / 2; - } else { - ge->ix2 += dx / 4; - ge->iy2 += dy / 4; - } - /* make sure that it's still on the same side */ - if (abs(x3 - x0) * abs(dy) < abs(y3 - y0) * abs(dx)) { - if (abs(x3 - x0) * abs(ge->iy2 - y3) > abs(y3 - y0) * abs(ge->ix2 - x3)) - ge->ix2 += isign(dx); - } else { - if (abs(x3 - x0) * abs(ge->iy2 - y3) < abs(y3 - y0) * abs(ge->ix2 - x3)) - ge->iy2 += isign(dy); - } - - ge->ix1 += (x0 - x1) / 8; - ge->iy1 += (y0 - y1) / 8; - /* make sure that it's still on the same side */ - if (abs(x3 - x0) * abs(y0 - y1) < abs(y3 - y0) * abs(x0 - x1)) { - if (abs(x3 - x0) * abs(y0 - ge->iy1) > abs(y3 - y0) * abs(x0 - ge->ix1)) - ge->iy1 -= isign(y0 - y1); - } else { - if (abs(x3 - x0) * abs(y0 - ge->iy1) < abs(y3 - y0) * abs(x0 - ge->ix1)) - ge->ix1 -= isign(x0 - x1); - } - - } - } -} - -/* -** After transformations we want to make sure that the resulting -** curve is going in the same quadrant as the original one, -** because rounding errors introduced during transformations -** may make the result completeley wrong. -** -** `dir' argument describes the direction of the original curve, -** it is the superposition of two values for the front and -** rear ends of curve: -** -** >EQUAL - goes over the line connecting the ends -** =EQUAL - coincides with the line connecting the ends -** <EQUAL - goes under the line connecting the ends -** -** See CVDIR_* for exact definitions. -*/ - -static void -fixcvdir( - GENTRY * ge, - int dir -) -{ - int a, b, c, d; - double kk, kk1, kk2; - int changed; - int fdir, rdir; - - if(ge->flags & GEF_FLOAT) { - fprintf(stderr, "**! fixcvdir(0x%x) on floating entry, ABORT\n", ge); - abort(); /* dump core */ - } - - fdir = (dir & CVDIR_FRONT) - CVDIR_FEQUAL; - if ((dir & CVDIR_REAR) == CVDIR_RSAME) - rdir = fdir; /* we need only isign, exact value doesn't matter */ - else - rdir = (dir & CVDIR_REAR) - CVDIR_REQUAL; - - fixcvends(ge); - - c = isign(ge->ix3 - ge->prev->ix3); /* note the direction of - * curve */ - d = isign(ge->iy3 - ge->prev->iy3); - - a = ge->iy3 - ge->prev->iy3; - b = ge->ix3 - ge->prev->ix3; - kk = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - a = ge->iy1 - ge->prev->iy3; - b = ge->ix1 - ge->prev->ix3; - kk1 = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - a = ge->iy3 - ge->iy2; - b = ge->ix3 - ge->ix2; - kk2 = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - - changed = 1; - while (changed) { - if (ISDBG(FIXCVDIR)) { - /* for debugging */ - fprintf(stderr, "fixcvdir %d %d (%d %d %d %d %d %d) %f %f %f\n", - fdir, rdir, - ge->ix1 - ge->prev->ix3, - ge->iy1 - ge->prev->iy3, - ge->ix2 - ge->ix1, - ge->iy2 - ge->iy1, - ge->ix3 - ge->ix2, - ge->iy3 - ge->iy2, - kk1, kk, kk2); - } - changed = 0; - - if (fdir > 0) { - if (kk1 > kk) { /* the front end has problems */ - if (c * (ge->ix1 - ge->prev->ix3) > 0) { - ge->ix1 -= c; - changed = 1; - } if (d * (ge->iy2 - ge->iy1) > 0) { - ge->iy1 += d; - changed = 1; - } - /* recalculate the coefficients */ - a = ge->iy3 - ge->prev->iy3; - b = ge->ix3 - ge->prev->ix3; - kk = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - a = ge->iy1 - ge->prev->iy3; - b = ge->ix1 - ge->prev->ix3; - kk1 = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - } - } else if (fdir < 0) { - if (kk1 < kk) { /* the front end has problems */ - if (c * (ge->ix2 - ge->ix1) > 0) { - ge->ix1 += c; - changed = 1; - } if (d * (ge->iy1 - ge->prev->iy3) > 0) { - ge->iy1 -= d; - changed = 1; - } - /* recalculate the coefficients */ - a = ge->iy1 - ge->prev->iy3; - b = ge->ix1 - ge->prev->ix3; - kk1 = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - a = ge->iy3 - ge->prev->iy3; - b = ge->ix3 - ge->prev->ix3; - kk = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - } - } - if (rdir > 0) { - if (kk2 < kk) { /* the rear end has problems */ - if (c * (ge->ix2 - ge->ix1) > 0) { - ge->ix2 -= c; - changed = 1; - } if (d * (ge->iy3 - ge->iy2) > 0) { - ge->iy2 += d; - changed = 1; - } - /* recalculate the coefficients */ - a = ge->iy3 - ge->prev->iy3; - b = ge->ix3 - ge->prev->ix3; - kk = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - a = ge->iy3 - ge->iy2; - b = ge->ix3 - ge->ix2; - kk2 = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - } - } else if (rdir < 0) { - if (kk2 > kk) { /* the rear end has problems */ - if (c * (ge->ix3 - ge->ix2) > 0) { - ge->ix2 += c; - changed = 1; - } if (d * (ge->iy2 - ge->iy1) > 0) { - ge->iy2 -= d; - changed = 1; - } - /* recalculate the coefficients */ - a = ge->iy3 - ge->prev->iy3; - b = ge->ix3 - ge->prev->ix3; - kk = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - a = ge->iy3 - ge->iy2; - b = ge->ix3 - ge->ix2; - kk2 = fabs(a == 0 ? (b == 0 ? 1. : 100000.) : ((double) b / (double) a)); - } - } - } - fixcvends(ge); -} - -/* Get the directions of ends of curve for further usage */ - -/* expects that the previous element is also float */ - -static int -fgetcvdir( - GENTRY * ge -) -{ - double a, b; - double k, k1, k2; - int dir = 0; - - if( !(ge->flags & GEF_FLOAT) ) { - fprintf(stderr, "**! fgetcvdir(0x%x) on int entry, ABORT\n", ge); - abort(); /* dump core */ - } - - a = fabs(ge->fy3 - ge->prev->fy3); - b = fabs(ge->fx3 - ge->prev->fx3); - k = a < FEPS ? (b < FEPS ? 1. : 100000.) : ( b / a); - - a = fabs(ge->fy1 - ge->prev->fy3); - b = fabs(ge->fx1 - ge->prev->fx3); - if(a < FEPS) { - if(b < FEPS) { - a = fabs(ge->fy2 - ge->prev->fy3); - b = fabs(ge->fx2 - ge->prev->fx3); - k1 = a < FEPS ? (b < FEPS ? k : 100000.) : ( b / a); - } else - k1 = FBIGVAL; - } else - k1 = b / a; - - a = fabs(ge->fy3 - ge->fy2); - b = fabs(ge->fx3 - ge->fx2); - if(a < FEPS) { - if(b < FEPS) { - a = fabs(ge->fy3 - ge->fy1); - b = fabs(ge->fx3 - ge->fx1); - k2 = a < FEPS ? (b < FEPS ? k : 100000.) : ( b / a); - } else - k2 = FBIGVAL; - } else - k2 = b / a; - - if(fabs(k1-k) < 0.0001) - dir |= CVDIR_FEQUAL; - else if (k1 < k) - dir |= CVDIR_FUP; - else - dir |= CVDIR_FDOWN; - - if(fabs(k2-k) < 0.0001) - dir |= CVDIR_REQUAL; - else if (k2 > k) - dir |= CVDIR_RUP; - else - dir |= CVDIR_RDOWN; - - return dir; -} - - -/* expects that the previous element is also int */ - -static int -igetcvdir( - GENTRY * ge -) -{ - int a, b; - double k, k1, k2; - int dir = 0; - - if(ge->flags & GEF_FLOAT) { - fprintf(stderr, "**! igetcvdir(0x%x) on floating entry, ABORT\n", ge); - abort(); /* dump core */ - } - - a = ge->iy3 - ge->prev->iy3; - b = ge->ix3 - ge->prev->ix3; - k = (a == 0) ? (b == 0 ? 1. : 100000.) : fabs((double) b / (double) a); - - a = ge->iy1 - ge->prev->iy3; - b = ge->ix1 - ge->prev->ix3; - if(a == 0) { - if(b == 0) { - a = ge->iy2 - ge->prev->iy3; - b = ge->ix2 - ge->prev->ix3; - k1 = (a == 0) ? (b == 0 ? k : 100000.) : fabs((double) b / (double) a); - } else - k1 = FBIGVAL; - } else - k1 = fabs((double) b / (double) a); - - a = ge->iy3 - ge->iy2; - b = ge->ix3 - ge->ix2; - if(a == 0) { - if(b == 0) { - a = ge->iy3 - ge->iy1; - b = ge->ix3 - ge->ix1; - k2 = (a == 0) ? (b == 0 ? k : 100000.) : fabs((double) b / (double) a); - } else - k2 = FBIGVAL; - } else - k2 = fabs((double) b / (double) a); - - if(fabs(k1-k) < 0.0001) - dir |= CVDIR_FEQUAL; - else if (k1 < k) - dir |= CVDIR_FUP; - else - dir |= CVDIR_FDOWN; - - if(fabs(k2-k) < 0.0001) - dir |= CVDIR_REQUAL; - else if (k2 > k) - dir |= CVDIR_RUP; - else - dir |= CVDIR_RDOWN; - - return dir; -} - -#if 0 -/* a function just to test the work of fixcvdir() */ -static void -testfixcvdir( - GLYPH * g -) -{ - GENTRY *ge; - int dir; - - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type == GE_CURVE) { - dir = igetcvdir(ge); - fixcvdir(ge, dir); - } - } -} -#endif - -static int -iround( - double val -) -{ - return (int) (val > 0 ? val + 0.5 : val - 0.5); -} - -/* for debugging - dump the glyph - * mark with a star the entries from start to end inclusive - * (start == NULL means don't mark any, end == NULL means to the last) - */ - -void -dumppaths( - GLYPH *g, - GENTRY *start, - GENTRY *end -) -{ - GENTRY *ge; - int i; - char mark=' '; - - fprintf(stderr, "Glyph %s:\n", g->name); - - /* now do the conversion */ - for(ge = g->entries; ge != 0; ge = ge->next) { - if(ge == start) - mark = '*'; - fprintf(stderr, " %c %8x", mark, ge); - switch(ge->type) { - case GE_MOVE: - case GE_LINE: - if(ge->flags & GEF_FLOAT) - fprintf(stderr," %c float (%g, %g)\n", ge->type, ge->fx3, ge->fy3); - else - fprintf(stderr," %c int (%d, %d)\n", ge->type, ge->ix3, ge->iy3); - break; - case GE_CURVE: - if(ge->flags & GEF_FLOAT) { - fprintf(stderr," C float "); - for(i=0; i<3; i++) - fprintf(stderr,"(%g, %g) ", ge->fxn[i], ge->fyn[i]); - fprintf(stderr,"\n"); - } else { - fprintf(stderr," C int "); - for(i=0; i<3; i++) - fprintf(stderr,"(%d, %d) ", ge->ixn[i], ge->iyn[i]); - fprintf(stderr,"\n"); - } - break; - default: - fprintf(stderr, " %c\n", ge->type); - break; - } - if(ge == end) - mark = ' '; - } -} - -/* - * Routine that converts all entries in the path from float to int - */ - -void -pathtoint( - GLYPH *g -) -{ - GENTRY *ge; - int x[3], y[3]; - int i; - - - if(ISDBG(TOINT)) - fprintf(stderr, "TOINT: glyph %s\n", g->name); - assertisfloat(g, "converting path to int\n"); - - fdelsmall(g, 1.0); /* get rid of sub-pixel contours */ - assertpath(g->entries, __FILE__, __LINE__, g->name); - - /* 1st pass, collect the directions of the curves: have - * to do that in advance, while everyting is float - */ - for(ge = g->entries; ge != 0; ge = ge->next) { - if( !(ge->flags & GEF_FLOAT) ) { - fprintf(stderr, "**! glyphs %s has int entry, found in conversion to int\n", - g->name); - exit(1); - } - if(ge->type == GE_CURVE) { - ge->dir = fgetcvdir(ge); - } - } - - /* now do the conversion */ - for(ge = g->entries; ge != 0; ge = ge->next) { - switch(ge->type) { - case GE_MOVE: - case GE_LINE: - if(ISDBG(TOINT)) - fprintf(stderr," %c float x=%g y=%g\n", ge->type, ge->fx3, ge->fy3); - x[0] = iround(ge->fx3); - y[0] = iround(ge->fy3); - for(i=0; i<3; i++) { /* put some valid values everywhere, for convenience */ - ge->ixn[i] = x[0]; - ge->iyn[i] = y[0]; - } - if(ISDBG(TOINT)) - fprintf(stderr," int x=%d y=%d\n", ge->ix3, ge->iy3); - break; - case GE_CURVE: - if(ISDBG(TOINT)) - fprintf(stderr," %c float ", ge->type); - - for(i=0; i<3; i++) { - if(ISDBG(TOINT)) - fprintf(stderr,"(%g, %g) ", ge->fxn[i], ge->fyn[i]); - x[i] = iround(ge->fxn[i]); - y[i] = iround(ge->fyn[i]); - } - - if(ISDBG(TOINT)) - fprintf(stderr,"\n int "); - - for(i=0; i<3; i++) { - ge->ixn[i] = x[i]; - ge->iyn[i] = y[i]; - if(ISDBG(TOINT)) - fprintf(stderr,"(%d, %d) ", ge->ixn[i], ge->iyn[i]); - } - ge->flags &= ~GEF_FLOAT; /* for fixcvdir */ - fixcvdir(ge, ge->dir); - - if(ISDBG(TOINT)) { - fprintf(stderr,"\n fixed "); - for(i=0; i<3; i++) - fprintf(stderr,"(%d, %d) ", ge->ixn[i], ge->iyn[i]); - fprintf(stderr,"\n"); - } - - break; - } - ge->flags &= ~GEF_FLOAT; - } - g->flags &= ~GF_FLOAT; -} - - -/* check whether we can fix up the curve to change its size by (dx,dy) */ -/* 0 means NO, 1 means YES */ - -/* for float: if scaling would be under 10% */ - -int -fcheckcv( - GENTRY * ge, - double dx, - double dy -) -{ - if( !(ge->flags & GEF_FLOAT) ) { - fprintf(stderr, "**! fcheckcv(0x%x) on int entry, ABORT\n", ge); - abort(); /* dump core */ - } - - if (ge->type != GE_CURVE) - return 0; - - if( fabs(ge->fx3 - ge->prev->fx3) < fabs(dx) * 10 ) - return 0; - - if( fabs(ge->fy3 - ge->prev->fy3) < fabs(dy) * 10 ) - return 0; - - return 1; -} - -/* for int: if won't create new zigzags at the ends */ - -int -icheckcv( - GENTRY * ge, - int dx, - int dy -) -{ - int xdep, ydep; - - if(ge->flags & GEF_FLOAT) { - fprintf(stderr, "**! icheckcv(0x%x) on floating entry, ABORT\n", ge); - abort(); /* dump core */ - } - - if (ge->type != GE_CURVE) - return 0; - - xdep = ge->ix3 - ge->prev->ix3; - ydep = ge->iy3 - ge->prev->iy3; - - if (ge->type == GE_CURVE - && (xdep * (xdep + dx)) > 0 - && (ydep * (ydep + dy)) > 0) { - return 1; - } else - return 0; -} - -/* float connect the ends of open contours */ - -void -fclosepaths( - GLYPH * g -) -{ - GENTRY *ge, *fge, *xge, *nge; - int i; - - assertisfloat(g, "fclosepaths float\n"); - - for (xge = g->entries; xge != 0; xge = xge->next) { - if( xge->type != GE_PATH ) - continue; - - ge = xge->prev; - if(ge == 0 || ge->type != GE_LINE && ge->type!= GE_CURVE) { - fprintf(stderr, "**! Glyph %s got empty path\n", - g->name); - exit(1); - } - - fge = ge->frwd; - if (fge->prev == 0 || fge->prev->type != GE_MOVE) { - fprintf(stderr, "**! Glyph %s got strange beginning of path\n", - g->name); - exit(1); - } - fge = fge->prev; - if (fge->fx3 != ge->fx3 || fge->fy3 != ge->fy3) { - /* we have to fix this open path */ - - WARNING_4 fprintf(stderr, "Glyph %s got path open by dx=%g dy=%g\n", - g->name, fge->fx3 - ge->fx3, fge->fy3 - ge->fy3); - - - /* add a new line */ - nge = newgentry(GEF_FLOAT); - (*nge) = (*ge); - nge->fx3 = fge->fx3; - nge->fy3 = fge->fy3; - nge->type = GE_LINE; - - addgeafter(ge, nge); - - if (fabs(ge->fx3 - fge->fx3) <= 2 && fabs(ge->fy3 - fge->fy3) <= 2) { - /* - * small change, try to get rid of the new entry - */ - - double df[2]; - - for(i=0; i<2; i++) { - df[i] = ge->fpoints[i][2] - fge->fpoints[i][2]; - df[i] = fclosegap(nge, nge, i, df[i], NULL); - } - - if(df[0] == 0. && df[1] == 0.) { - /* closed gap successfully, remove the added entry */ - freethisge(nge); - } - } - } - } -} - -void -smoothjoints( - GLYPH * g -) -{ - GENTRY *ge, *ne; - int dx1, dy1, dx2, dy2, k; - int dir; - - return; /* this stuff seems to create problems */ - - assertisint(g, "smoothjoints int"); - - if (g->entries == 0) /* nothing to do */ - return; - - for (ge = g->entries->next; ge != 0; ge = ge->next) { - ne = ge->frwd; - - /* - * although there should be no one-line path * and any path - * must end with CLOSEPATH, * nobody can say for sure - */ - - if (ge == ne || ne == 0) - continue; - - /* now handle various joints */ - - if (ge->type == GE_LINE && ne->type == GE_LINE) { - dx1 = ge->ix3 - ge->prev->ix3; - dy1 = ge->iy3 - ge->prev->iy3; - dx2 = ne->ix3 - ge->ix3; - dy2 = ne->iy3 - ge->iy3; - - /* check whether they have the same direction */ - /* and the same slope */ - /* then we can join them into one line */ - - if (dx1 * dx2 >= 0 && dy1 * dy2 >= 0 && dx1 * dy2 == dy1 * dx2) { - /* extend the previous line */ - ge->ix3 = ne->ix3; - ge->iy3 = ne->iy3; - - /* and get rid of the next line */ - freethisge(ne); - } - } else if (ge->type == GE_LINE && ne->type == GE_CURVE) { - fixcvends(ne); - - dx1 = ge->ix3 - ge->prev->ix3; - dy1 = ge->iy3 - ge->prev->iy3; - dx2 = ne->ix1 - ge->ix3; - dy2 = ne->iy1 - ge->iy3; - - /* if the line is nearly horizontal and we can fix it */ - if (dx1 != 0 && 5 * abs(dy1) / abs(dx1) == 0 - && icheckcv(ne, 0, -dy1) - && abs(dy1) <= 4) { - dir = igetcvdir(ne); - ge->iy3 -= dy1; - ne->iy1 -= dy1; - fixcvdir(ne, dir); - if (ge->next != ne) - ne->prev->iy3 -= dy1; - dy1 = 0; - } else if (dy1 != 0 && 5 * abs(dx1) / abs(dy1) == 0 - && icheckcv(ne, -dx1, 0) - && abs(dx1) <= 4) { - /* the same but vertical */ - dir = igetcvdir(ne); - ge->ix3 -= dx1; - ne->ix1 -= dx1; - fixcvdir(ne, dir); - if (ge->next != ne) - ne->prev->ix3 -= dx1; - dx1 = 0; - } - /* - * if line is horizontal and curve begins nearly - * horizontally - */ - if (dy1 == 0 && dx2 != 0 && 5 * abs(dy2) / abs(dx2) == 0) { - dir = igetcvdir(ne); - ne->iy1 -= dy2; - fixcvdir(ne, dir); - dy2 = 0; - } else if (dx1 == 0 && dy2 != 0 && 5 * abs(dx2) / abs(dy2) == 0) { - /* the same but vertical */ - dir = igetcvdir(ne); - ne->ix1 -= dx2; - fixcvdir(ne, dir); - dx2 = 0; - } - } else if (ge->type == GE_CURVE && ne->type == GE_LINE) { - fixcvends(ge); - - dx1 = ge->ix3 - ge->ix2; - dy1 = ge->iy3 - ge->iy2; - dx2 = ne->ix3 - ge->ix3; - dy2 = ne->iy3 - ge->iy3; - - /* if the line is nearly horizontal and we can fix it */ - if (dx2 != 0 && 5 * abs(dy2) / abs(dx2) == 0 - && icheckcv(ge, 0, dy2) - && abs(dy2) <= 4) { - dir = igetcvdir(ge); - ge->iy3 += dy2; - ge->iy2 += dy2; - fixcvdir(ge, dir); - if (ge->next != ne) - ne->prev->iy3 += dy2; - dy2 = 0; - } else if (dy2 != 0 && 5 * abs(dx2) / abs(dy2) == 0 - && icheckcv(ge, dx2, 0) - && abs(dx2) <= 4) { - /* the same but vertical */ - dir = igetcvdir(ge); - ge->ix3 += dx2; - ge->ix2 += dx2; - fixcvdir(ge, dir); - if (ge->next != ne) - ne->prev->ix3 += dx2; - dx2 = 0; - } - /* - * if line is horizontal and curve ends nearly - * horizontally - */ - if (dy2 == 0 && dx1 != 0 && 5 * abs(dy1) / abs(dx1) == 0) { - dir = igetcvdir(ge); - ge->iy2 += dy1; - fixcvdir(ge, dir); - dy1 = 0; - } else if (dx2 == 0 && dy1 != 0 && 5 * abs(dx1) / abs(dy1) == 0) { - /* the same but vertical */ - dir = igetcvdir(ge); - ge->ix2 += dx1; - fixcvdir(ge, dir); - dx1 = 0; - } - } else if (ge->type == GE_CURVE && ne->type == GE_CURVE) { - fixcvends(ge); - fixcvends(ne); - - dx1 = ge->ix3 - ge->ix2; - dy1 = ge->iy3 - ge->iy2; - dx2 = ne->ix1 - ge->ix3; - dy2 = ne->iy1 - ge->iy3; - - /* - * check if we have a rather smooth joint at extremal - * point - */ - /* left or right extremal point */ - if (abs(dx1) <= 4 && abs(dx2) <= 4 - && dy1 != 0 && 5 * abs(dx1) / abs(dy1) == 0 - && dy2 != 0 && 5 * abs(dx2) / abs(dy2) == 0 - && (ge->iy3 < ge->prev->iy3 && ne->iy3 < ge->iy3 - || ge->iy3 > ge->prev->iy3 && ne->iy3 > ge->iy3) - && (ge->ix3 - ge->prev->ix3) * (ne->ix3 - ge->ix3) < 0 - ) { - dir = igetcvdir(ge); - ge->ix2 += dx1; - dx1 = 0; - fixcvdir(ge, dir); - dir = igetcvdir(ne); - ne->ix1 -= dx2; - dx2 = 0; - fixcvdir(ne, dir); - } - /* top or down extremal point */ - else if (abs(dy1) <= 4 && abs(dy2) <= 4 - && dx1 != 0 && 5 * abs(dy1) / abs(dx1) == 0 - && dx2 != 0 && 5 * abs(dy2) / abs(dx2) == 0 - && (ge->ix3 < ge->prev->ix3 && ne->ix3 < ge->ix3 - || ge->ix3 > ge->prev->ix3 && ne->ix3 > ge->ix3) - && (ge->iy3 - ge->prev->iy3) * (ne->iy3 - ge->iy3) < 0 - ) { - dir = igetcvdir(ge); - ge->iy2 += dy1; - dy1 = 0; - fixcvdir(ge, dir); - dir = igetcvdir(ne); - ne->iy1 -= dy2; - dy2 = 0; - fixcvdir(ne, dir); - } - /* or may be we just have a smooth junction */ - else if (dx1 * dx2 >= 0 && dy1 * dy2 >= 0 - && 10 * abs(k = abs(dx1 * dy2) - abs(dy1 * dx2)) < (abs(dx1 * dy2) + abs(dy1 * dx2))) { - int tries[6][4]; - int results[6]; - int i, b; - - /* build array of changes we are going to try */ - /* uninitalized entries are 0 */ - if (k > 0) { - static int t1[6][4] = { - {0, 0, 0, 0}, - {-1, 0, 1, 0}, - {-1, 0, 0, 1}, - {0, -1, 1, 0}, - {0, -1, 0, 1}, - {-1, -1, 1, 1}}; - memcpy(tries, t1, sizeof tries); - } else { - static int t1[6][4] = { - {0, 0, 0, 0}, - {1, 0, -1, 0}, - {1, 0, 0, -1}, - {0, 1, -1, 0}, - {0, 1, 0, -1}, - {1, 1, -1, -1}}; - memcpy(tries, t1, sizeof tries); - } - - /* now try the changes */ - results[0] = abs(k); - for (i = 1; i < 6; i++) { - results[i] = abs((abs(dx1) + tries[i][0]) * (abs(dy2) + tries[i][1]) - - (abs(dy1) + tries[i][2]) * (abs(dx2) + tries[i][3])); - } - - /* and find the best try */ - k = abs(k); - b = 0; - for (i = 1; i < 6; i++) - if (results[i] < k) { - k = results[i]; - b = i; - } - /* and finally apply it */ - if (dx1 < 0) - tries[b][0] = -tries[b][0]; - if (dy2 < 0) - tries[b][1] = -tries[b][1]; - if (dy1 < 0) - tries[b][2] = -tries[b][2]; - if (dx2 < 0) - tries[b][3] = -tries[b][3]; - - dir = igetcvdir(ge); - ge->ix2 -= tries[b][0]; - ge->iy2 -= tries[b][2]; - fixcvdir(ge, dir); - dir = igetcvdir(ne); - ne->ix1 += tries[b][3]; - ne->iy1 += tries[b][1]; - fixcvdir(ne, dir); - } - } - } -} - -/* debugging: print out stems of a glyph */ -static void -debugstems( - char *name, - STEM * hstems, - int nhs, - STEM * vstems, - int nvs -) -{ - int i; - - fprintf(pfa_file, "%% %s\n", name); - fprintf(pfa_file, "%% %d horizontal stems:\n", nhs); - for (i = 0; i < nhs; i++) - fprintf(pfa_file, "%% %3d %d (%d...%d) %c %c%c%c%c\n", i, hstems[i].value, - hstems[i].from, hstems[i].to, - ((hstems[i].flags & ST_UP) ? 'U' : 'D'), - ((hstems[i].flags & ST_END) ? 'E' : '-'), - ((hstems[i].flags & ST_FLAT) ? 'F' : '-'), - ((hstems[i].flags & ST_ZONE) ? 'Z' : ' '), - ((hstems[i].flags & ST_TOPZONE) ? 'T' : ' ')); - fprintf(pfa_file, "%% %d vertical stems:\n", nvs); - for (i = 0; i < nvs; i++) - fprintf(pfa_file, "%% %3d %d (%d...%d) %c %c%c\n", i, vstems[i].value, - vstems[i].from, vstems[i].to, - ((vstems[i].flags & ST_UP) ? 'U' : 'D'), - ((vstems[i].flags & ST_END) ? 'E' : '-'), - ((vstems[i].flags & ST_FLAT) ? 'F' : '-')); -} - -/* add pseudo-stems for the limits of the Blue zones to the stem array */ -static int -addbluestems( - STEM *s, - int n -) -{ - int i; - - for(i=0; i<nblues && i<2; i+=2) { /* baseline */ - s[n].value=bluevalues[i]; - s[n].flags=ST_UP|ST_ZONE; - /* don't overlap with anything */ - s[n].origin=s[n].from=s[n].to= -10000+i; - n++; - s[n].value=bluevalues[i+1]; - s[n].flags=ST_ZONE; - /* don't overlap with anything */ - s[n].origin=s[n].from=s[n].to= -10000+i+1; - n++; - } - for(i=2; i<nblues; i+=2) { /* top zones */ - s[n].value=bluevalues[i]; - s[n].flags=ST_UP|ST_ZONE|ST_TOPZONE; - /* don't overlap with anything */ - s[n].origin=s[n].from=s[n].to= -10000+i; - n++; - s[n].value=bluevalues[i+1]; - s[n].flags=ST_ZONE|ST_TOPZONE; - /* don't overlap with anything */ - s[n].origin=s[n].from=s[n].to= -10000+i+1; - n++; - } - for(i=0; i<notherb; i+=2) { /* bottom zones */ - s[n].value=otherblues[i]; - s[n].flags=ST_UP|ST_ZONE; - /* don't overlap with anything */ - s[n].origin=s[n].from=s[n].to= -10000+i+nblues; - n++; - s[n].value=otherblues[i+1]; - s[n].flags=ST_ZONE; - /* don't overlap with anything */ - s[n].origin=s[n].from=s[n].to= -10000+i+1+nblues; - n++; - } - return n; -} - -/* sort stems in array */ -static void -sortstems( - STEM * s, - int n -) -{ - int i, j; - STEM x; - - - /* a simple sorting */ - /* hm, the ordering criteria are not quite simple :-) - * if the values are tied - * ST_UP always goes under not ST_UP - * ST_ZONE goes on the most outer side - * ST_END goes towards inner side after ST_ZONE - * ST_FLAT goes on the inner side - */ - - for (i = 0; i < n; i++) - for (j = i + 1; j < n; j++) { - if(s[i].value < s[j].value) - continue; - if(s[i].value == s[j].value) { - if( (s[i].flags & ST_UP) < (s[j].flags & ST_UP) ) - continue; - if( (s[i].flags & ST_UP) == (s[j].flags & ST_UP) ) { - if( s[i].flags & ST_UP ) { - if( - (s[i].flags & (ST_ZONE|ST_FLAT|ST_END) ^ ST_FLAT) - > - (s[j].flags & (ST_ZONE|ST_FLAT|ST_END) ^ ST_FLAT) - ) - continue; - } else { - if( - (s[i].flags & (ST_ZONE|ST_FLAT|ST_END) ^ ST_FLAT) - < - (s[j].flags & (ST_ZONE|ST_FLAT|ST_END) ^ ST_FLAT) - ) - continue; - } - } - } - x = s[j]; - s[j] = s[i]; - s[i] = x; - } -} - -/* check whether two stem borders overlap */ - -static int -stemoverlap( - STEM * s1, - STEM * s2 -) -{ - int result; - - if (s1->from <= s2->from && s1->to >= s2->from - || s2->from <= s1->from && s2->to >= s1->from) - result = 1; - else - result = 0; - - if (ISDBG(STEMOVERLAP)) - fprintf(pfa_file, "%% overlap %d(%d..%d)x%d(%d..%d)=%d\n", - s1->value, s1->from, s1->to, s2->value, s2->from, s2->to, result); - return result; -} - -/* - * check if the stem [border] is in an appropriate blue zone - * (currently not used) - */ - -static int -steminblue( - STEM *s -) -{ - int i, val; - - val=s->value; - if(s->flags & ST_UP) { - /* painted size up, look at lower zones */ - if(nblues>=2 && val>=bluevalues[0] && val<=bluevalues[1] ) - return 1; - for(i=0; i<notherb; i++) { - if( val>=otherblues[i] && val<=otherblues[i+1] ) - return 1; - } - } else { - /* painted side down, look at upper zones */ - for(i=2; i<nblues; i++) { - if( val>=bluevalues[i] && val<=bluevalues[i+1] ) - return 1; - } - } - - return 0; -} - -/* mark the outermost stem [borders] in the blue zones */ - -static void -markbluestems( - STEM *s, - int nold -) -{ - int i, j, a, b, c; - /* - * traverse the list of Blue Values, mark the lowest upper - * stem in each bottom zone and the topmost lower stem in - * each top zone with ST_BLUE - */ - - /* top zones */ - for(i=2; i<nblues; i+=2) { - a=bluevalues[i]; b=bluevalues[i+1]; - if(ISDBG(BLUESTEMS)) - fprintf(pfa_file, "%% looking at blue zone %d...%d\n", a, b); - for(j=nold-1; j>=0; j--) { - if( s[j].flags & (ST_ZONE|ST_UP|ST_END) ) - continue; - c=s[j].value; - if(c<a) /* too low */ - break; - if(c<=b) { /* found the topmost stem border */ - /* mark all the stems with the same value */ - if(ISDBG(BLUESTEMS)) - fprintf(pfa_file, "%% found D BLUE at %d\n", s[j].value); - /* include ST_END values */ - while( s[j+1].value==c && (s[j+1].flags & ST_ZONE)==0 ) - j++; - s[j].flags |= ST_BLUE; - for(j--; j>=0 && s[j].value==c - && (s[j].flags & (ST_UP|ST_ZONE))==0 ; j--) - s[j].flags |= ST_BLUE; - break; - } - } - } - /* baseline */ - if(nblues>=2) { - a=bluevalues[0]; b=bluevalues[1]; - for(j=0; j<nold; j++) { - if( (s[j].flags & (ST_ZONE|ST_UP|ST_END))!=ST_UP ) - continue; - c=s[j].value; - if(c>b) /* too high */ - break; - if(c>=a) { /* found the lowest stem border */ - /* mark all the stems with the same value */ - if(ISDBG(BLUESTEMS)) - fprintf(pfa_file, "%% found U BLUE at %d\n", s[j].value); - /* include ST_END values */ - while( s[j-1].value==c && (s[j-1].flags & ST_ZONE)==0 ) - j--; - s[j].flags |= ST_BLUE; - for(j++; j<nold && s[j].value==c - && (s[j].flags & (ST_UP|ST_ZONE))==ST_UP ; j++) - s[j].flags |= ST_BLUE; - break; - } - } - } - /* bottom zones: the logic is the same as for baseline */ - for(i=0; i<notherb; i+=2) { - a=otherblues[i]; b=otherblues[i+1]; - for(j=0; j<nold; j++) { - if( (s[j].flags & (ST_UP|ST_ZONE|ST_END))!=ST_UP ) - continue; - c=s[j].value; - if(c>b) /* too high */ - break; - if(c>=a) { /* found the lowest stem border */ - /* mark all the stems with the same value */ - if(ISDBG(BLUESTEMS)) - fprintf(pfa_file, "%% found U BLUE at %d\n", s[j].value); - /* include ST_END values */ - while( s[j-1].value==c && (s[j-1].flags & ST_ZONE)==0 ) - j--; - s[j].flags |= ST_BLUE; - for(j++; j<nold && s[j].value==c - && (s[j].flags & (ST_UP|ST_ZONE))==ST_UP ; j++) - s[j].flags |= ST_BLUE; - break; - } - } - } -} - -/* Eliminate invalid stems, join equivalent lines and remove nested stems - * to build the main (non-substituted) set of stems. - * XXX add consideration of the italic angle - */ -static int -joinmainstems( - STEM * s, - int nold, - int useblues /* do we use the blue values ? */ -) -{ -#define MAX_STACK 1000 - STEM stack[MAX_STACK]; - int nstack = 0; - int sbottom = 0; - int nnew; - int i, j, k; - int a, b, c, w1, w2, w3; - int fw, fd; - /* - * priority of the last found stem: - * 0 - nothing found yet - * 1 - has ST_END in it (one or more) - * 2 - has no ST_END and no ST_FLAT, can override only one stem - * with priority 1 - * 3 - has no ST_END and at least one ST_FLAT, can override one - * stem with priority 2 or any number of stems with priority 1 - * 4 (handled separately) - has ST_BLUE, can override anything - */ - int readystem = 0; - int pri; - int nlps = 0; /* number of non-committed - * lowest-priority stems */ - - - for (i = 0, nnew = 0; i < nold; i++) { - if (s[i].flags & (ST_UP|ST_ZONE)) { - if(s[i].flags & ST_BLUE) { - /* we just HAVE to use this value */ - if (readystem) - nnew += 2; - readystem=0; - - /* remember the list of Blue zone stems with the same value */ - for(a=i, i++; i<nold && s[a].value==s[i].value - && (s[i].flags & ST_BLUE); i++) - {} - b=i; /* our range is a <= i < b */ - c= -1; /* index of our best guess up to now */ - pri=0; - /* try to find a match, don't cross blue zones */ - for(; i<nold && (s[i].flags & ST_BLUE)==0; i++) { - if(s[i].flags & ST_UP) { - if(s[i].flags & ST_TOPZONE) - break; - else - continue; - } - for(j=a; j<b; j++) { - if(!stemoverlap(&s[j], &s[i]) ) - continue; - /* consider priorities */ - if( ( (s[j].flags|s[i].flags) & (ST_FLAT|ST_END) )==ST_FLAT ) { - c=i; - goto bluematch; - } - if( ((s[j].flags|s[i].flags) & ST_END)==0 ) { - if(pri < 2) { - c=i; pri=2; - } - } else { - if(pri == 0) { - c=i; pri=1; - } - } - } - } - bluematch: - /* clean up the stack */ - nstack=sbottom=0; - readystem=0; - /* add this stem */ - s[nnew++]=s[a]; - if(c<0) { /* make one-dot-wide stem */ - if(nnew>=b) { /* have no free space */ - for(j=nold; j>=b; j--) /* make free space */ - s[j]=s[j-1]; - b++; - nold++; - } - s[nnew]=s[a]; - s[nnew].flags &= ~(ST_UP|ST_BLUE); - nnew++; - i=b-1; - } else { - s[nnew++]=s[c]; - i=c; /* skip up to this point */ - } - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% +stem %d...%d U BLUE\n", - s[nnew-2].value, s[nnew-1].value); - } else { - if (nstack >= MAX_STACK) { - WARNING_1 fprintf(stderr, "Warning: **** converter's stem stack overflow ****\n"); - nstack = 0; - } - stack[nstack++] = s[i]; - } - } else if(s[i].flags & ST_BLUE) { - /* again, we just HAVE to use this value */ - if (readystem) - nnew += 2; - readystem=0; - - /* remember the list of Blue zone stems with the same value */ - for(a=i, i++; i<nold && s[a].value==s[i].value - && (s[i].flags & ST_BLUE); i++) - {} - b=i; /* our range is a <= i < b */ - c= -1; /* index of our best guess up to now */ - pri=0; - /* try to find a match */ - for (i = nstack - 1; i >= 0; i--) { - if( (stack[i].flags & ST_UP)==0 ) { - if( (stack[i].flags & (ST_ZONE|ST_TOPZONE))==ST_ZONE ) - break; - else - continue; - } - for(j=a; j<b; j++) { - if(!stemoverlap(&s[j], &stack[i]) ) - continue; - /* consider priorities */ - if( ( (s[j].flags|stack[i].flags) & (ST_FLAT|ST_END) )==ST_FLAT ) { - c=i; - goto bluedownmatch; - } - if( ((s[j].flags|stack[i].flags) & ST_END)==0 ) { - if(pri < 2) { - c=i; pri=2; - } - } else { - if(pri == 0) { - c=i; pri=1; - } - } - } - } - bluedownmatch: - /* if found no match make a one-dot-wide stem */ - if(c<0) { - c=0; - stack[0]=s[b-1]; - stack[0].flags |= ST_UP; - stack[0].flags &= ~ST_BLUE; - } - /* remove all the stems conflicting with this one */ - readystem=0; - for(j=nnew-2; j>=0; j-=2) { - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% ?stem %d...%d -- %d\n", - s[j].value, s[j+1].value, stack[c].value); - if(s[j+1].value < stack[c].value) /* no conflict */ - break; - if(s[j].flags & ST_BLUE) { - /* oops, we don't want to spoil other blue zones */ - stack[c].value=s[j+1].value+1; - break; - } - if( (s[j].flags|s[j+1].flags) & ST_END ) { - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% -stem %d...%d p=1\n", - s[j].value, s[j+1].value); - continue; /* pri==1, silently discard it */ - } - /* we want to discard no nore than 2 stems of pri>=2 */ - if( ++readystem > 2 ) { - /* change our stem to not conflict */ - stack[c].value=s[j+1].value+1; - break; - } else { - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% -stem %d...%d p>=2\n", - s[j].value, s[j+1].value); - continue; - } - } - nnew=j+2; - /* add this stem */ - if(nnew>=b-1) { /* have no free space */ - for(j=nold; j>=b-1; j--) /* make free space */ - s[j]=s[j-1]; - b++; - nold++; - } - s[nnew++]=stack[c]; - s[nnew++]=s[b-1]; - /* clean up the stack */ - nstack=sbottom=0; - readystem=0; - /* set the next position to search */ - i=b-1; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% +stem %d...%d D BLUE\n", - s[nnew-2].value, s[nnew-1].value); - } else if (nstack > 0) { - - /* - * check whether our stem overlaps with anything in - * stack - */ - for (j = nstack - 1; j >= sbottom; j--) { - if (s[i].value <= stack[j].value) - break; - if (stack[j].flags & ST_ZONE) - continue; - - if ((s[i].flags & ST_END) - || (stack[j].flags & ST_END)) - pri = 1; - else if ((s[i].flags & ST_FLAT) - || (stack[j].flags & ST_FLAT)) - pri = 3; - else - pri = 2; - - if (pri < readystem && s[nnew + 1].value >= stack[j].value - || !stemoverlap(&stack[j], &s[i])) - continue; - - if (readystem > 1 && s[nnew + 1].value < stack[j].value) { - nnew += 2; - readystem = 0; - nlps = 0; - } - /* - * width of the previous stem (if it's - * present) - */ - w1 = s[nnew + 1].value - s[nnew].value; - - /* width of this stem */ - w2 = s[i].value - stack[j].value; - - if (readystem == 0) { - /* nothing yet, just add a new stem */ - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - readystem = pri; - if (pri == 1) - nlps = 1; - else if (pri == 2) - sbottom = j; - else { - sbottom = j + 1; - while (sbottom < nstack - && stack[sbottom].value <= stack[j].value) - sbottom++; - } - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% +stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } else if (pri == 1) { - if (stack[j].value > s[nnew + 1].value) { - /* - * doesn't overlap with the - * previous one - */ - nnew += 2; - nlps++; - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% +stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } else if (w2 < w1) { - /* is narrower */ - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% /stem %d...%d p=%d n=%d %d->%d\n", - stack[j].value, s[i].value, pri, nlps, w1, w2); - } - } else if (pri == 2) { - if (readystem == 2) { - /* choose the narrower stem */ - if (w1 > w2) { - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - sbottom = j; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% /stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } - /* else readystem==1 */ - } else if (stack[j].value > s[nnew + 1].value) { - /* - * value doesn't overlap with - * the previous one - */ - nnew += 2; - nlps = 0; - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - sbottom = j; - readystem = pri; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% +stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } else if (nlps == 1 - || stack[j].value > s[nnew - 1].value) { - /* - * we can replace the top - * stem - */ - nlps = 0; - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - readystem = pri; - sbottom = j; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% /stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } - } else if (readystem == 3) { /* that means also - * pri==3 */ - /* choose the narrower stem */ - if (w1 > w2) { - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - sbottom = j + 1; - while (sbottom < nstack - && stack[sbottom].value <= stack[j].value) - sbottom++; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% /stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } - } else if (pri == 3) { - /* - * we can replace as many stems as - * neccessary - */ - nnew += 2; - while (nnew > 0 && s[nnew - 1].value >= stack[j].value) { - nnew -= 2; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% -stem %d..%d\n", - s[nnew].value, s[nnew + 1].value); - } - nlps = 0; - s[nnew] = stack[j]; - s[nnew + 1] = s[i]; - readystem = pri; - sbottom = j + 1; - while (sbottom < nstack - && stack[sbottom].value <= stack[j].value) - sbottom++; - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% +stem %d...%d p=%d n=%d\n", - stack[j].value, s[i].value, pri, nlps); - } - } - } - } - if (readystem) - nnew += 2; - - /* change the 1-pixel-wide stems to 20-pixel-wide stems if possible - * the constant 20 is recommended in the Type1 manual - */ - if(useblues) { - for(i=0; i<nnew; i+=2) { - if(s[i].value != s[i+1].value) - continue; - if( ((s[i].flags ^ s[i+1].flags) & ST_BLUE)==0 ) - continue; - if( s[i].flags & ST_BLUE ) { - if(nnew>i+2 && s[i+2].value<s[i].value+22) - s[i+1].value=s[i+2].value-2; /* compensate for fuzziness */ - else - s[i+1].value+=20; - } else { - if(i>0 && s[i-1].value>s[i].value-22) - s[i].value=s[i-1].value+2; /* compensate for fuzziness */ - else - s[i].value-=20; - } - } - } - /* make sure that no stem it stretched between - * a top zone and a bottom zone - */ - if(useblues) { - for(i=0; i<nnew; i+=2) { - a=10000; /* lowest border of top zone crosing the stem */ - b= -10000; /* highest border of bottom zone crossing the stem */ - - for(j=2; j<nblues; j++) { - c=bluevalues[j]; - if( c>=s[i].value && c<=s[i+1].value && c<a ) - a=c; - } - if(nblues>=2) { - c=bluevalues[1]; - if( c>=s[i].value && c<=s[i+1].value && c>b ) - b=c; - } - for(j=1; j<notherb; j++) { - c=otherblues[j]; - if( c>=s[i].value && c<=s[i+1].value && c>b ) - b=c; - } - if( a!=10000 && b!= -10000 ) { /* it is stretched */ - /* split the stem into 2 ghost stems */ - for(j=nnew+1; j>i+1; j--) /* make free space */ - s[j]=s[j-2]; - nnew+=2; - - if(s[i].value+22 >= a) - s[i+1].value=a-2; /* leave space for fuzziness */ - else - s[i+1].value=s[i].value+20; - - if(s[i+3].value-22 <= b) - s[i+2].value=b+2; /* leave space for fuzziness */ - else - s[i+2].value=s[i+3].value-20; - - i+=2; - } - } - } - /* look for triple stems */ - for (i = 0; i < nnew; i += 2) { - if (nnew - i >= 6) { - a = s[i].value + s[i + 1].value; - b = s[i + 2].value + s[i + 3].value; - c = s[i + 4].value + s[i + 5].value; - - w1 = s[i + 1].value - s[i].value; - w2 = s[i + 3].value - s[i + 2].value; - w3 = s[i + 5].value - s[i + 4].value; - - fw = w3 - w1; /* fuzz in width */ - fd = ((c - b) - (b - a)); /* fuzz in distance - * (doubled) */ - - /* we are able to handle some fuzz */ - /* - * it doesn't hurt if the declared stem is a bit - * narrower than actual unless it's an edge in - * a blue zone - */ - if (abs(abs(fd) - abs(fw)) * 5 < w2 - && abs(fw) * 20 < (w1 + w3)) { /* width dirrerence <10% */ - - if(useblues) { /* check that we don't disturb any blue stems */ - j=c; k=a; - if (fw > 0) { - if (fd > 0) { - if( s[i+5].flags & ST_BLUE ) - continue; - j -= fw; - } else { - if( s[i+4].flags & ST_BLUE ) - continue; - j += fw; - } - } else if(fw < 0) { - if (fd > 0) { - if( s[i+1].flags & ST_BLUE ) - continue; - k -= fw; - } else { - if( s[i].flags & ST_BLUE ) - continue; - k += fw; - } - } - pri = ((j - b) - (b - k)); - - if (pri > 0) { - if( s[i+2].flags & ST_BLUE ) - continue; - } else if(pri < 0) { - if( s[i+3].flags & ST_BLUE ) - continue; - } - } - - /* - * first fix up the width of 1st and 3rd - * stems - */ - if (fw > 0) { - if (fd > 0) { - s[i + 5].value -= fw; - c -= fw; - } else { - s[i + 4].value += fw; - c += fw; - } - } else { - if (fd > 0) { - s[i + 1].value -= fw; - a -= fw; - } else { - s[i].value += fw; - a += fw; - } - } - fd = ((c - b) - (b - a)); - - if (fd > 0) { - s[i + 2].value += abs(fd) / 2; - } else { - s[i + 3].value -= abs(fd) / 2; - } - - s[i].flags |= ST_3; - i += 4; - } - } - } - - return (nnew & ~1); /* number of lines must be always even */ -} - -/* - * these macros and function allow to set the base stem, - * check that it's not empty and subtract another stem - * from the base stem (possibly dividing it into multiple parts) - */ - -/* pairs for pieces of the base stem */ -static short xbstem[MAX_STEMS*2]; -/* index of the last point */ -static int xblast= -1; - -#define setbasestem(from, to) \ - (xbstem[0]=from, xbstem[1]=to, xblast=1) -#define isbaseempty() (xblast<=0) - -/* returns 1 if was overlapping, 0 otherwise */ -static int -subfrombase( - int from, - int to -) -{ - int a, b; - int i, j; - - if(isbaseempty()) - return 0; - - /* handle the simple case simply */ - if(from > xbstem[xblast] || to < xbstem[0]) - return 0; - - /* the binary search may be more efficient */ - /* but for now the linear search is OK */ - for(b=1; from > xbstem[b]; b+=2) {} /* result: from <= xbstem[b] */ - for(a=xblast-1; to < xbstem[a]; a-=2) {} /* result: to >= xbstem[a] */ - - /* now the interesting examples are: - * (it was hard for me to understand, so I looked at the examples) - * 1 - * a|-----| |-----|b |-----| |-----| - * f|-----|t - * 2 - * a|-----|b |-----| |-----| |-----| - * f|--|t - * 3 - * a|-----|b |-----| |-----| |-----| - * f|-----|t - * 4 - * |-----|b a|-----| |-----| |-----| - * f|------------|t - * 5 - * |-----| |-----|b |-----| a|-----| - * f|-----------------------------|t - * 6 - * |-----|b |-----| |-----| a|-----| - * f|--------------------------------------------------|t - * 7 - * |-----|b |-----| a|-----| |-----| - * f|--------------------------|t - */ - - if(a < b-1) /* hits a gap - example 1 */ - return 0; - - /* now the subtraction itself */ - - if(a==b-1 && from > xbstem[a] && to < xbstem[b]) { - /* overlaps with only one subrange and splits it - example 2 */ - j=xblast; i=(xblast+=2); - while(j>=b) - xbstem[i--]=xbstem[j--]; - xbstem[b]=from-1; - xbstem[b+1]=to+1; - return 1; - /* becomes - * 2a - * a|b || |-----| |-----| |-----| - * f|--|t - */ - } - - if(xbstem[b-1] < from) { - /* cuts the back of this subrange - examples 3, 4, 7 */ - xbstem[b] = from-1; - b+=2; - /* becomes - * 3a - * a|----| |-----|b |-----| |-----| - * f|-----|t - * 4a - * |---| a|-----|b |-----| |-----| - * f|------------|t - * 7a - * |---| |-----|b a|-----| |-----| - * f|--------------------------|t - */ - } - - if(xbstem[a+1] > to) { - /* cuts the front of this subrange - examples 4a, 5, 7a */ - xbstem[a] = to+1; - a-=2; - /* becomes - * 4b - * a|---| |---|b |-----| |-----| - * f|------------|t - * 5b - * |-----| |-----|b a|-----| || - * f|-----------------------------|t - * 7b - * |---| a|-----|b || |-----| - * f|--------------------------|t - */ - } - - if(a < b-1) /* now after modification it hits a gap - examples 3a, 4b */ - return 1; /* because we have removed something */ - - /* now remove the subranges completely covered by the new stem */ - /* examples 5b, 6, 7b */ - i=b-1; j=a+2; - /* positioned as: - * 5b i j - * |-----| |-----|b a|-----| || - * f|-----------------------------|t - * 6 i xblast j - * |-----|b |-----| |-----| a|-----| - * f|--------------------------------------------------|t - * 7b i j - * |---| a|-----|b || |-----| - * f|--------------------------|t - */ - while(j <= xblast) - xbstem[i++]=xbstem[j++]; - xblast=i-1; - return 1; -} - -/* for debugging */ -static void -printbasestem(void) -{ - int i; - - printf("( "); - for(i=0; i<xblast; i+=2) - printf("%d-%d ", xbstem[i], xbstem[i+1]); - printf(") %d\n", xblast); -} - -/* - * Join the stem borders to build the sets of substituted stems - * XXX add consideration of the italic angle - */ -static void -joinsubstems( - STEM * s, - short *pairs, - int nold, - int useblues /* do we use the blue values ? */ -) -{ - int i, j, x; - static unsigned char mx[MAX_STEMS][MAX_STEMS]; - - /* we do the substituted groups of stems first - * and it looks like it's going to be REALLY SLOW - * AND PAINFUL but let's bother about it later - */ - - /* for the substituted stems we don't bother about [hv]stem3 - - * anyway the X11R6 rasterizer does not bother about hstem3 - * at all and is able to handle only one global vstem3 - * per glyph - */ - - /* clean the used part of matrix */ - for(i=0; i<nold; i++) - for(j=0; j<nold; j++) - mx[i][j]=0; - - /* build the matrix of stem pairs */ - for(i=0; i<nold; i++) { - if( s[i].flags & ST_ZONE ) - continue; - if(s[i].flags & ST_BLUE) - mx[i][i]=1; /* allow to pair with itself if no better pair */ - if(s[i].flags & ST_UP) { /* the down-stems are already matched */ - setbasestem(s[i].from, s[i].to); - for(j=i+1; j<nold; j++) { - if(s[i].value==s[j].value - || s[j].flags & ST_ZONE ) { - continue; - } - x=subfrombase(s[j].from, s[j].to); - - if(s[j].flags & ST_UP) /* match only up+down pairs */ - continue; - - mx[i][j]=mx[j][i]=x; - - if(isbaseempty()) /* nothing else to do */ - break; - } - } - } - - if(ISDBG(SUBSTEMS)) { - fprintf(pfa_file, "%% "); - for(j=0; j<nold; j++) - putc( j%10==0 ? '0'+(j/10)%10 : ' ', pfa_file); - fprintf(pfa_file, "\n%% "); - for(j=0; j<nold; j++) - putc('0'+j%10, pfa_file); - putc('\n', pfa_file); - for(i=0; i<nold; i++) { - fprintf(pfa_file, "%% %3d ",i); - for(j=0; j<nold; j++) - putc( mx[i][j] ? 'X' : '.', pfa_file); - putc('\n', pfa_file); - } - } - - /* now use the matrix to find the best pair for each stem */ - for(i=0; i<nold; i++) { - int pri, lastpri, v, f; - - x= -1; /* best pair: none */ - lastpri=0; - - v=s[i].value; - f=s[i].flags; - - if(f & ST_ZONE) { - pairs[i]= -1; - continue; - } - - if(f & ST_UP) { - for(j=i+1; j<nold; j++) { - if(mx[i][j]==0) - continue; - - if( (f | s[j].flags) & ST_END ) - pri=1; - else if( (f | s[j].flags) & ST_FLAT ) - pri=3; - else - pri=2; - - if(lastpri==0 - || pri > lastpri - && ( lastpri==1 || s[j].value-v<20 || (s[x].value-v)*2 >= s[j].value-v ) ) { - lastpri=pri; - x=j; - } - } - } else { - for(j=i-1; j>=0; j--) { - if(mx[i][j]==0) - continue; - - if( (f | s[j].flags) & ST_END ) - pri=1; - else if( (f | s[j].flags) & ST_FLAT ) - pri=3; - else - pri=2; - - if(lastpri==0 - || pri > lastpri - && ( lastpri==1 || v-s[j].value<20 || (v-s[x].value)*2 >= v-s[j].value ) ) { - lastpri=pri; - x=j; - } - } - } - if(x== -1 && mx[i][i]) - pairs[i]=i; /* a special case */ - else - pairs[i]=x; - } - - if(ISDBG(SUBSTEMS)) { - for(i=0; i<nold; i++) { - j=pairs[i]; - if(j>0) - fprintf(pfa_file, "%% %d...%d (%d x %d)\n", s[i].value, s[j].value, i, j); - } - } -} - -/* - * Make all the stems originating at the same value get the - * same width. Without this the rasterizer may move the dots - * randomly up or down by one pixel, and that looks bad. - * The prioritisation is the same as in findstemat(). - */ -static void -uniformstems( - STEM * s, - short *pairs, - int ns -) -{ - int i, j, from, to, val, dir; - int pri, prevpri[2], wd, prevwd[2], prevbest[2]; - - for(from=0; from<ns; from=to) { - prevpri[0] = prevpri[1] = 0; - prevwd[0] = prevwd[1] = 0; - prevbest[0] = prevbest[1] = -1; - val = s[from].value; - - for(to = from; to<ns && s[to].value == val; to++) { - dir = ((s[to].flags & ST_UP)!=0); - - i=pairs[to]; /* the other side of this stem */ - if(i<0 || i==to) - continue; /* oops, no other side */ - wd=abs(s[i].value-val); - if(wd == 0) - continue; - pri=1; - if( (s[to].flags | s[i].flags) & ST_END ) - pri=0; - if( prevbest[dir] == -1 || pri > prevpri[dir] || wd<prevwd[dir] ) { - prevbest[dir]=i; - prevpri[dir]=pri; - prevwd[dir]=wd; - } - } - - for(i=from; i<to; i++) { - dir = ((s[i].flags & ST_UP)!=0); - if(prevbest[dir] >= 0) { - if(ISDBG(SUBSTEMS)) { - fprintf(stderr, "at %d (%s %d) pair %d->%d(%d)\n", i, - (dir ? "UP":"DOWN"), s[i].value, pairs[i], prevbest[dir], - s[prevbest[dir]].value); - } - pairs[i] = prevbest[dir]; - } - } - } -} - -/* - * Find the best stem in the array at the specified (value, origin), - * related to the entry ge. - * Returns its index in the array sp, -1 means "none". - * prevbest is the result for the other end of the line, we must - * find something better than it or leave it as it is. - */ -static int -findstemat( - int value, - int origin, - GENTRY *ge, - STEM *sp, - short *pairs, - int ns, - int prevbest /* -1 means "none" */ -) -{ - int i, min, max; - int v, si; - int pri, prevpri; /* priority, 0 = has ST_END, 1 = no ST_END */ - int wd, prevwd; /* stem width */ - - si= -1; /* nothing yet */ - - /* stems are ordered by value, binary search */ - min=0; max=ns; /* min <= i < max */ - while( min < max ) { - i=(min+max)/2; - v=sp[i].value; - if(v<value) - min=i+1; - else if(v>value) - max=i; - else { - si=i; /* temporary value */ - break; - } - } - - if( si < 0 ) /* found nothing this time */ - return prevbest; - - /* find the priority of the prevbest */ - /* we expect that prevbest has a pair */ - if(prevbest>=0) { - i=pairs[prevbest]; - prevpri=1; - if( (sp[prevbest].flags | sp[i].flags) & ST_END ) - prevpri=0; - prevwd=abs(sp[i].value-value); - } - - /* stems are not ordered by origin, so now do the linear search */ - - while( si>0 && sp[si-1].value==value ) /* find the first one */ - si--; - - for(; si<ns && sp[si].value==value; si++) { - if(sp[si].origin != origin) - continue; - if(sp[si].ge != ge) { - if(ISDBG(SUBSTEMS)) { - fprintf(stderr, - "dbg: possible self-intersection at v=%d o=%d exp_ge=0x%x ge=0x%x\n", - value, origin, ge, sp[si].ge); - } - continue; - } - i=pairs[si]; /* the other side of this stem */ - if(i<0) - continue; /* oops, no other side */ - pri=1; - if( (sp[si].flags | sp[i].flags) & ST_END ) - pri=0; - wd=abs(sp[i].value-value); - if( prevbest == -1 || pri >prevpri - || pri==prevpri && prevwd==0 || wd!=0 && wd<prevwd ) { - prevbest=si; - prevpri=pri; - prevwd=wd; - continue; - } - } - - return prevbest; -} - -/* add the substems for one glyph entry - * (called from groupsubstems()) - * returns 0 if all OK, 1 if too many groups - */ - -static int gssentry_lastgrp=0; /* reset to 0 for each new glyph */ - -static int -gssentry( /* crazy number of parameters */ - GENTRY *ge, - STEM *hs, /* horizontal stems, sorted by value */ - short *hpairs, - int nhs, - STEM *vs, /* vertical stems, sorted by value */ - short *vpairs, - int nvs, - STEMBOUNDS *s, - short *egp, - int *nextvsi, - int *nexthsi /* -2 means "check by yourself" */ -) { - enum { - SI_VP, /* vertical primary */ - SI_HP, /* horizontal primary */ - SI_SIZE /* size of the array */ - }; - int si[SI_SIZE]; /* indexes of relevant stems */ - - /* the bounds of the existing relevant stems */ - STEMBOUNDS r[ sizeof(si) / sizeof(si[0]) * 2 ]; - char rexpand; /* by how much we need to expand the group */ - int nr; /* and the number of them */ - - /* yet more temporary storage */ - short lb, hb, isvert; - int conflict, grp; - int i, j, x, y; - - - /* for each line or curve we try to find a horizontal and - * a vertical stem corresponding to its first point - * (corresponding to the last point of the previous - * glyph entry), because the directions of the lines - * will be eventually reversed and it will then become the last - * point. And the T1 rasterizer applies the hints to - * the last point. - * - */ - - /* start with the common part, the first point */ - x=ge->prev->ix3; - y=ge->prev->iy3; - - if(*nextvsi == -2) - si[SI_VP]=findstemat(x, y, ge, vs, vpairs, nvs, -1); - else { - si[SI_VP]= *nextvsi; *nextvsi= -2; - } - if(*nexthsi == -2) - si[SI_HP]=findstemat(y, x, ge, hs, hpairs, nhs, -1); - else { - si[SI_HP]= *nexthsi; *nexthsi= -2; - } - - /* - * For the horizontal lines we make sure that both - * ends of the line have the same horizontal stem, - * and the same thing for vertical lines and stems. - * In both cases we enforce the stem for the next entry. - * Otherwise unpleasant effects may arise. - */ - - if(ge->type==GE_LINE) { - if(ge->ix3==x) { /* vertical line */ - *nextvsi=si[SI_VP]=findstemat(x, ge->iy3, ge->frwd, vs, vpairs, nvs, si[SI_VP]); - } else if(ge->iy3==y) { /* horizontal line */ - *nexthsi=si[SI_HP]=findstemat(y, ge->ix3, ge->frwd, hs, hpairs, nhs, si[SI_HP]); - } - } - - if(si[SI_VP]+si[SI_HP] == -2) /* no stems, leave it alone */ - return 0; - - /* build the array of relevant bounds */ - nr=0; - for(i=0; i< sizeof(si) / sizeof(si[0]); i++) { - STEM *sp; - short *pairs; - int step; - int f; - int nzones, firstzone, binzone, einzone; - int btype, etype; - - if(si[i] < 0) - continue; - - if(i<SI_HP) { - r[nr].isvert=1; sp=vs; pairs=vpairs; - } else { - r[nr].isvert=0; sp=hs; pairs=hpairs; - } - - r[nr].low=sp[ si[i] ].value; - r[nr].high=sp[ pairs[ si[i] ] ].value; - - if(r[nr].low > r[nr].high) { - j=r[nr].low; r[nr].low=r[nr].high; r[nr].high=j; - step= -1; - } else { - step=1; - } - - /* handle the interaction with Blue Zones */ - - if(i>=SI_HP) { /* only for horizontal stems */ - if(si[i]==pairs[si[i]]) { - /* special case, the outermost stem in the - * Blue Zone without a pair, simulate it to 20-pixel - */ - if(sp[ si[i] ].flags & ST_UP) { - r[nr].high+=20; - for(j=si[i]+1; j<nhs; j++) - if( (sp[j].flags & (ST_ZONE|ST_TOPZONE)) - == (ST_ZONE|ST_TOPZONE) ) { - if(r[nr].high > sp[j].value-2) - r[nr].high=sp[j].value-2; - break; - } - } else { - r[nr].low-=20; - for(j=si[i]-1; j>=0; j--) - if( (sp[j].flags & (ST_ZONE|ST_TOPZONE)) - == (ST_ZONE) ) { - if(r[nr].low < sp[j].value+2) - r[nr].low=sp[j].value+2; - break; - } - } - } - - /* check that the stem borders don't end up in - * different Blue Zones */ - f=sp[ si[i] ].flags; - nzones=0; einzone=binzone=0; - for(j=si[i]; j!=pairs[ si[i] ]; j+=step) { - if( (sp[j].flags & ST_ZONE)==0 ) - continue; - /* if see a zone border going in the same direction */ - if( ((f ^ sp[j].flags) & ST_UP)==0 ) { - if( ++nzones == 1 ) { - firstzone=sp[j].value; /* remember the first one */ - etype=sp[j].flags & ST_TOPZONE; - } - einzone=1; - - } else { /* the opposite direction */ - if(nzones==0) { /* beginning is in a blue zone */ - binzone=1; - btype=sp[j].flags & ST_TOPZONE; - } - einzone=0; - } - } - - /* beginning and end are in Blue Zones of different types */ - if( binzone && einzone && (btype ^ etype)!=0 ) { - if( sp[si[i]].flags & ST_UP ) { - if(firstzone > r[nr].low+22) - r[nr].high=r[nr].low+20; - else - r[nr].high=firstzone-2; - } else { - if(firstzone < r[nr].high-22) - r[nr].low=r[nr].high-20; - else - r[nr].low=firstzone+2; - } - } - } - - if(ISDBG(SUBSTEMS)) - fprintf(pfa_file, "%% at(%d,%d)[%d,%d] %d..%d %c (%d x %d)\n", x, y, i, nr, - r[nr].low, r[nr].high, r[nr].isvert ? 'v' : 'h', - si[i], pairs[si[i]]); - - nr++; - } - - /* now try to find a group */ - conflict=0; /* no conflicts found yet */ - for(j=0; j<nr; j++) - r[j].already=0; - - /* check if it fits into the last group */ - grp = gssentry_lastgrp; - i = (grp==0)? 0 : egp[grp-1]; - for(; i<egp[grp]; i++) { - lb=s[i].low; hb=s[i].high; isvert=s[i].isvert; - for(j=0; j<nr; j++) - if( r[j].isvert==isvert /* intersects */ - && r[j].low <= hb && r[j].high >= lb ) { - if( r[j].low == lb && r[j].high == hb ) /* coincides */ - r[j].already=1; - else - conflict=1; - } - - if(conflict) - break; - } - - if(conflict) { /* nope, check all the groups */ - for(j=0; j<nr; j++) - r[j].already=0; - - for(i=0, grp=0; i<egp[NSTEMGRP-1]; i++) { - if(i == egp[grp]) { /* checked all stems in a group */ - if(conflict) { - grp++; conflict=0; /* check the next group */ - for(j=0; j<nr; j++) - r[j].already=0; - } else - break; /* insert into this group */ - } - - lb=s[i].low; hb=s[i].high; isvert=s[i].isvert; - for(j=0; j<nr; j++) - if( r[j].isvert==isvert /* intersects */ - && r[j].low <= hb && r[j].high >= lb ) { - if( r[j].low == lb && r[j].high == hb ) /* coincides */ - r[j].already=1; - else - conflict=1; - } - - if(conflict) - i=egp[grp]-1; /* fast forward to the next group */ - } - } - - /* do we have any empty group ? */ - if(conflict && grp < NSTEMGRP-1) { - grp++; conflict=0; - for(j=0; j<nr; j++) - r[j].already=0; - } - - if(conflict) { /* oops, can't find any group to fit */ - return 1; - } - - /* OK, add stems to this group */ - - rexpand = nr; - for(j=0; j<nr; j++) - rexpand -= r[j].already; - - if(rexpand > 0) { - for(i=egp[NSTEMGRP-1]-1; i>=egp[grp]; i--) - s[i+rexpand]=s[i]; - for(i=0; i<nr; i++) - if(!r[i].already) - s[egp[grp]++]=r[i]; - for(i=grp+1; i<NSTEMGRP; i++) - egp[i]+=rexpand; - } - - ge->stemid = gssentry_lastgrp = grp; - return 0; -} - -/* - * Create the groups of substituted stems from the list. - * Each group will be represented by a subroutine in the Subs - * array. - */ - -static void -groupsubstems( - GLYPH *g, - STEM *hs, /* horizontal stems, sorted by value */ - short *hpairs, - int nhs, - STEM *vs, /* vertical stems, sorted by value */ - short *vpairs, - int nvs -) -{ - GENTRY *ge; - int i, j; - - /* temporary storage */ - STEMBOUNDS s[MAX_STEMS*2]; - /* indexes in there, pointing past the end each stem group */ - short egp[NSTEMGRP]; - - int nextvsi, nexthsi; /* -2 means "check by yourself" */ - - for(i=0; i<NSTEMGRP; i++) - egp[i]=0; - - nextvsi=nexthsi= -2; /* processed no horiz/vert line */ - - gssentry_lastgrp = 0; /* reset the last group for new glyph */ - - for (ge = g->entries; ge != 0; ge = ge->next) { - if(ge->type!=GE_LINE && ge->type!=GE_CURVE) { - nextvsi=nexthsi= -2; /* next path is independent */ - continue; - } - - if( gssentry(ge, hs, hpairs, nhs, vs, vpairs, nvs, s, egp, &nextvsi, &nexthsi) ) { - WARNING_2 fprintf(stderr, "*** glyph %s requires over %d hint subroutines, ignored them\n", - g->name, NSTEMGRP); - /* it's better to have no substituted hints at all than have only part */ - for (ge = g->entries; ge != 0; ge = ge->next) - ge->stemid= -1; - g->nsg=0; /* just to be safe, already is 0 by initialization */ - return; - } - - /* - * handle the last vert/horiz line of the path specially, - * correct the hint for the first entry of the path - */ - if(ge->frwd != ge->next && (nextvsi != -2 || nexthsi != -2) ) { - if( gssentry(ge->frwd, hs, hpairs, nhs, vs, vpairs, nvs, s, egp, &nextvsi, &nexthsi) ) { - WARNING_2 fprintf(stderr, "*** glyph %s requires over %d hint subroutines, ignored them\n", - g->name, NSTEMGRP); - /* it's better to have no substituted hints at all than have only part */ - for (ge = g->entries; ge != 0; ge = ge->next) - ge->stemid= -1; - g->nsg=0; /* just to be safe, already is 0 by initialization */ - return; - } - } - - } - - /* find the index of the first empty group - same as the number of groups */ - if(egp[0]>0) { - for(i=1; i<NSTEMGRP && egp[i]!=egp[i-1]; i++) - {} - g->nsg=i; - } else - g->nsg=0; - - if(ISDBG(SUBSTEMS)) { - fprintf(pfa_file, "%% %d substem groups (%d %d %d)\n", g->nsg, - g->nsg>1 ? egp[g->nsg-2] : -1, - g->nsg>0 ? egp[g->nsg-1] : -1, - g->nsg<NSTEMGRP ? egp[g->nsg] : -1 ); - j=0; - for(i=0; i<g->nsg; i++) { - fprintf(pfa_file, "%% grp %3d: ", i); - for(; j<egp[i]; j++) { - fprintf(pfa_file, " %4d...%-4d %c ", s[j].low, s[j].high, - s[j].isvert ? 'v' : 'h'); - } - fprintf(pfa_file, "\n"); - } - } - - if(g->nsg==1) { /* it would be the same as the main stems */ - /* so erase it */ - for (ge = g->entries; ge != 0; ge = ge->next) - ge->stemid= -1; - g->nsg=0; - } - - if(g->nsg>0) { - if( (g->nsbs=malloc(g->nsg * sizeof (egp[0]))) == 0 ) { - fprintf(stderr, "**** not enough memory for substituted hints ****\n"); - exit(255); - } - memmove(g->nsbs, egp, g->nsg * sizeof(short)); - if( (g->sbstems=malloc(egp[g->nsg-1] * sizeof (s[0]))) == 0 ) { - fprintf(stderr, "**** not enough memory for substituted hints ****\n"); - exit(255); - } - memmove(g->sbstems, s, egp[g->nsg-1] * sizeof(s[0])); - } -} - -void -buildstems( - GLYPH * g -) -{ - STEM hs[MAX_STEMS], vs[MAX_STEMS]; /* temporary working - * storage */ - short hs_pairs[MAX_STEMS], vs_pairs[MAX_STEMS]; /* best pairs for these stems */ - STEM *sp; - GENTRY *ge, *nge, *pge; - int nx, ny; - int ovalue; - int totals, grp, lastgrp; - - assertisint(g, "buildstems int"); - - g->nhs = g->nvs = 0; - memset(hs, 0, sizeof hs); - memset(vs, 0, sizeof vs); - - /* first search the whole character for possible stem points */ - - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type == GE_CURVE) { - - /* - * SURPRISE! - * We consider the stems bound by the - * H/V ends of the curves as flat ones. - * - * But we don't include the point on the - * other end into the range. - */ - - /* first check the beginning of curve */ - /* if it is horizontal, add a hstem */ - if (ge->iy1 == ge->prev->iy3) { - hs[g->nhs].value = ge->iy1; - - if (ge->ix1 < ge->prev->ix3) - hs[g->nhs].flags = ST_FLAT | ST_UP; - else - hs[g->nhs].flags = ST_FLAT; - - hs[g->nhs].origin = ge->prev->ix3; - hs[g->nhs].ge = ge; - - if (ge->ix1 < ge->prev->ix3) { - hs[g->nhs].from = ge->ix1+1; - hs[g->nhs].to = ge->prev->ix3; - if(hs[g->nhs].from > hs[g->nhs].to) - hs[g->nhs].from--; - } else { - hs[g->nhs].from = ge->prev->ix3; - hs[g->nhs].to = ge->ix1-1; - if(hs[g->nhs].from > hs[g->nhs].to) - hs[g->nhs].to++; - } - if (ge->ix1 != ge->prev->ix3) - g->nhs++; - } - /* if it is vertical, add a vstem */ - else if (ge->ix1 == ge->prev->ix3) { - vs[g->nvs].value = ge->ix1; - - if (ge->iy1 > ge->prev->iy3) - vs[g->nvs].flags = ST_FLAT | ST_UP; - else - vs[g->nvs].flags = ST_FLAT; - - vs[g->nvs].origin = ge->prev->iy3; - vs[g->nvs].ge = ge; - - if (ge->iy1 < ge->prev->iy3) { - vs[g->nvs].from = ge->iy1+1; - vs[g->nvs].to = ge->prev->iy3; - if(vs[g->nvs].from > vs[g->nvs].to) - vs[g->nvs].from--; - } else { - vs[g->nvs].from = ge->prev->iy3; - vs[g->nvs].to = ge->iy1-1; - if(vs[g->nvs].from > vs[g->nvs].to) - vs[g->nvs].to++; - } - - if (ge->iy1 != ge->prev->iy3) - g->nvs++; - } - /* then check the end of curve */ - /* if it is horizontal, add a hstem */ - if (ge->iy3 == ge->iy2) { - hs[g->nhs].value = ge->iy3; - - if (ge->ix3 < ge->ix2) - hs[g->nhs].flags = ST_FLAT | ST_UP; - else - hs[g->nhs].flags = ST_FLAT; - - hs[g->nhs].origin = ge->ix3; - hs[g->nhs].ge = ge->frwd; - - if (ge->ix3 < ge->ix2) { - hs[g->nhs].from = ge->ix3; - hs[g->nhs].to = ge->ix2-1; - if( hs[g->nhs].from > hs[g->nhs].to ) - hs[g->nhs].to++; - } else { - hs[g->nhs].from = ge->ix2+1; - hs[g->nhs].to = ge->ix3; - if( hs[g->nhs].from > hs[g->nhs].to ) - hs[g->nhs].from--; - } - - if (ge->ix3 != ge->ix2) - g->nhs++; - } - /* if it is vertical, add a vstem */ - else if (ge->ix3 == ge->ix2) { - vs[g->nvs].value = ge->ix3; - - if (ge->iy3 > ge->iy2) - vs[g->nvs].flags = ST_FLAT | ST_UP; - else - vs[g->nvs].flags = ST_FLAT; - - vs[g->nvs].origin = ge->iy3; - vs[g->nvs].ge = ge->frwd; - - if (ge->iy3 < ge->iy2) { - vs[g->nvs].from = ge->iy3; - vs[g->nvs].to = ge->iy2-1; - if( vs[g->nvs].from > vs[g->nvs].to ) - vs[g->nvs].to++; - } else { - vs[g->nvs].from = ge->iy2+1; - vs[g->nvs].to = ge->iy3; - if( vs[g->nvs].from > vs[g->nvs].to ) - vs[g->nvs].from--; - } - - if (ge->iy3 != ge->iy2) - g->nvs++; - } else { - - /* - * check the end of curve for a not smooth - * local extremum - */ - nge = ge->frwd; - - if (nge == 0) - continue; - else if (nge->type == GE_LINE) { - nx = nge->ix3; - ny = nge->iy3; - } else if (nge->type == GE_CURVE) { - nx = nge->ix1; - ny = nge->iy1; - } else - continue; - - /* check for vertical extremums */ - if (ge->iy3 > ge->iy2 && ge->iy3 > ny - || ge->iy3 < ge->iy2 && ge->iy3 < ny) { - hs[g->nhs].value = ge->iy3; - hs[g->nhs].from - = hs[g->nhs].to - = hs[g->nhs].origin = ge->ix3; - hs[g->nhs].ge = ge->frwd; - - if (ge->ix3 < ge->ix2 - || nx < ge->ix3) - hs[g->nhs].flags = ST_UP; - else - hs[g->nhs].flags = 0; - - if (ge->ix3 != ge->ix2 || nx != ge->ix3) - g->nhs++; - } - /* - * the same point may be both horizontal and - * vertical extremum - */ - /* check for horizontal extremums */ - if (ge->ix3 > ge->ix2 && ge->ix3 > nx - || ge->ix3 < ge->ix2 && ge->ix3 < nx) { - vs[g->nvs].value = ge->ix3; - vs[g->nvs].from - = vs[g->nvs].to - = vs[g->nvs].origin = ge->iy3; - vs[g->nvs].ge = ge->frwd; - - if (ge->iy3 > ge->iy2 - || ny > ge->iy3) - vs[g->nvs].flags = ST_UP; - else - vs[g->nvs].flags = 0; - - if (ge->iy3 != ge->iy2 || ny != ge->iy3) - g->nvs++; - } - } - - } else if (ge->type == GE_LINE) { - nge = ge->frwd; - - /* if it is horizontal, add a hstem */ - /* and the ends as vstems if they brace the line */ - if (ge->iy3 == ge->prev->iy3 - && ge->ix3 != ge->prev->ix3) { - hs[g->nhs].value = ge->iy3; - if (ge->ix3 < ge->prev->ix3) { - hs[g->nhs].flags = ST_FLAT | ST_UP; - hs[g->nhs].from = ge->ix3; - hs[g->nhs].to = ge->prev->ix3; - } else { - hs[g->nhs].flags = ST_FLAT; - hs[g->nhs].from = ge->prev->ix3; - hs[g->nhs].to = ge->ix3; - } - hs[g->nhs].origin = ge->ix3; - hs[g->nhs].ge = ge->frwd; - - pge = ge->bkwd; - - /* add beginning as vstem */ - vs[g->nvs].value = pge->ix3; - vs[g->nvs].origin - = vs[g->nvs].from - = vs[g->nvs].to = pge->iy3; - vs[g->nvs].ge = ge; - - if(pge->type==GE_CURVE) - ovalue=pge->iy2; - else - ovalue=pge->prev->iy3; - - if (pge->iy3 > ovalue) - vs[g->nvs].flags = ST_UP | ST_END; - else if (pge->iy3 < ovalue) - vs[g->nvs].flags = ST_END; - else - vs[g->nvs].flags = 0; - - if( vs[g->nvs].flags != 0 ) - g->nvs++; - - /* add end as vstem */ - vs[g->nvs].value = ge->ix3; - vs[g->nvs].origin - = vs[g->nvs].from - = vs[g->nvs].to = ge->iy3; - vs[g->nvs].ge = ge->frwd; - - if(nge->type==GE_CURVE) - ovalue=nge->iy1; - else - ovalue=nge->iy3; - - if (ovalue > ge->iy3) - vs[g->nvs].flags = ST_UP | ST_END; - else if (ovalue < ge->iy3) - vs[g->nvs].flags = ST_END; - else - vs[g->nvs].flags = 0; - - if( vs[g->nvs].flags != 0 ) - g->nvs++; - - g->nhs++; - } - /* if it is vertical, add a vstem */ - /* and the ends as hstems if they brace the line */ - else if (ge->ix3 == ge->prev->ix3 - && ge->iy3 != ge->prev->iy3) { - vs[g->nvs].value = ge->ix3; - if (ge->iy3 > ge->prev->iy3) { - vs[g->nvs].flags = ST_FLAT | ST_UP; - vs[g->nvs].from = ge->prev->iy3; - vs[g->nvs].to = ge->iy3; - } else { - vs[g->nvs].flags = ST_FLAT; - vs[g->nvs].from = ge->iy3; - vs[g->nvs].to = ge->prev->iy3; - } - vs[g->nvs].origin = ge->iy3; - vs[g->nvs].ge = ge->frwd; - - pge = ge->bkwd; - - /* add beginning as hstem */ - hs[g->nhs].value = pge->iy3; - hs[g->nhs].origin - = hs[g->nhs].from - = hs[g->nhs].to = pge->ix3; - hs[g->nhs].ge = ge; - - if(pge->type==GE_CURVE) - ovalue=pge->ix2; - else - ovalue=pge->prev->ix3; - - if (pge->ix3 < ovalue) - hs[g->nhs].flags = ST_UP | ST_END; - else if (pge->ix3 > ovalue) - hs[g->nhs].flags = ST_END; - else - hs[g->nhs].flags = 0; - - if( hs[g->nhs].flags != 0 ) - g->nhs++; - - /* add end as hstem */ - hs[g->nhs].value = ge->iy3; - hs[g->nhs].origin - = hs[g->nhs].from - = hs[g->nhs].to = ge->ix3; - hs[g->nhs].ge = ge->frwd; - - if(nge->type==GE_CURVE) - ovalue=nge->ix1; - else - ovalue=nge->ix3; - - if (ovalue < ge->ix3) - hs[g->nhs].flags = ST_UP | ST_END; - else if (ovalue > ge->ix3) - hs[g->nhs].flags = ST_END; - else - hs[g->nhs].flags = 0; - - if( hs[g->nhs].flags != 0 ) - g->nhs++; - - g->nvs++; - } - /* - * check the end of line for a not smooth local - * extremum - */ - nge = ge->frwd; - - if (nge == 0) - continue; - else if (nge->type == GE_LINE) { - nx = nge->ix3; - ny = nge->iy3; - } else if (nge->type == GE_CURVE) { - nx = nge->ix1; - ny = nge->iy1; - } else - continue; - - /* check for vertical extremums */ - if (ge->iy3 > ge->prev->iy3 && ge->iy3 > ny - || ge->iy3 < ge->prev->iy3 && ge->iy3 < ny) { - hs[g->nhs].value = ge->iy3; - hs[g->nhs].from - = hs[g->nhs].to - = hs[g->nhs].origin = ge->ix3; - hs[g->nhs].ge = ge->frwd; - - if (ge->ix3 < ge->prev->ix3 - || nx < ge->ix3) - hs[g->nhs].flags = ST_UP; - else - hs[g->nhs].flags = 0; - - if (ge->ix3 != ge->prev->ix3 || nx != ge->ix3) - g->nhs++; - } - /* - * the same point may be both horizontal and vertical - * extremum - */ - /* check for horizontal extremums */ - if (ge->ix3 > ge->prev->ix3 && ge->ix3 > nx - || ge->ix3 < ge->prev->ix3 && ge->ix3 < nx) { - vs[g->nvs].value = ge->ix3; - vs[g->nvs].from - = vs[g->nvs].to - = vs[g->nvs].origin = ge->iy3; - vs[g->nvs].ge = ge->frwd; - - if (ge->iy3 > ge->prev->iy3 - || ny > ge->iy3) - vs[g->nvs].flags = ST_UP; - else - vs[g->nvs].flags = 0; - - if (ge->iy3 != ge->prev->iy3 || ny != ge->iy3) - g->nvs++; - } - } - } - - g->nhs=addbluestems(hs, g->nhs); - sortstems(hs, g->nhs); - sortstems(vs, g->nvs); - - if (ISDBG(STEMS)) - debugstems(g->name, hs, g->nhs, vs, g->nvs); - - /* find the stems interacting with the Blue Zones */ - markbluestems(hs, g->nhs); - - if(subhints) { - if (ISDBG(SUBSTEMS)) - fprintf(pfa_file, "%% %s: joining subst horizontal stems\n", g->name); - joinsubstems(hs, hs_pairs, g->nhs, 1); - uniformstems(hs, hs_pairs, g->nhs); - - if (ISDBG(SUBSTEMS)) - fprintf(pfa_file, "%% %s: joining subst vertical stems\n", g->name); - joinsubstems(vs, vs_pairs, g->nvs, 0); - - groupsubstems(g, hs, hs_pairs, g->nhs, vs, vs_pairs, g->nvs); - } - - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% %s: joining main horizontal stems\n", g->name); - g->nhs = joinmainstems(hs, g->nhs, 1); - if (ISDBG(MAINSTEMS)) - fprintf(pfa_file, "%% %s: joining main vertical stems\n", g->name); - g->nvs = joinmainstems(vs, g->nvs, 0); - - if (ISDBG(MAINSTEMS)) - debugstems(g->name, hs, g->nhs, vs, g->nvs); - - if(g->nhs > 0) { - if ((sp = malloc(sizeof(STEM) * g->nhs)) == 0) { - fprintf(stderr, "**** not enough memory for hints ****\n"); - exit(255); - } - g->hstems = sp; - memcpy(sp, hs, sizeof(STEM) * g->nhs); - } else - g->hstems = 0; - - if(g->nvs > 0) { - if ((sp = malloc(sizeof(STEM) * g->nvs)) == 0) { - fprintf(stderr, "**** not enough memory for hints ****\n"); - exit(255); - } - g->vstems = sp; - memcpy(sp, vs, sizeof(STEM) * g->nvs); - } else - g->vstems = 0; - - /* now check that the stems won't overflow the interpreter's stem stack: - * some interpreters (like X11) push the stems on each change into - * stack and pop them only after the whole glyphs is completed. - */ - - totals = (g->nhs+g->nvs) / 2; /* we count whole stems, not halves */ - lastgrp = -1; - - for (ge = g->entries; ge != 0; ge = ge->next) { - grp=ge->stemid; - if(grp >= 0 && grp != lastgrp) { - if(grp==0) - totals += g->nsbs[0]; - else - totals += g->nsbs[grp] - g->nsbs[grp-1]; - - lastgrp = grp; - } - } - - /* be on the safe side, check for >= , not > */ - if(totals >= max_stemdepth) { /* oops, too deep */ - WARNING_2 { - fprintf(stderr, "Warning: glyph %s needs hint stack depth %d\n", g->name, totals); - fprintf(stderr, " (limit %d): removed the substituted hints from it\n", max_stemdepth); - } - if(g->nsg > 0) { - for (ge = g->entries; ge != 0; ge = ge->next) - ge->stemid = -1; - free(g->sbstems); g->sbstems = 0; - free(g->nsbs); g->nsbs = 0; - g->nsg = 0; - } - } - - /* now check if there are too many main stems */ - totals = (g->nhs+g->nvs) / 2; /* we count whole stems, not halves */ - if(totals >= max_stemdepth) { - /* even worse, too much of non-substituted stems */ - WARNING_2 { - fprintf(stderr, "Warning: glyph %s has %d main hints\n", g->name, totals); - fprintf(stderr, " (limit %d): removed the hints from it\n", max_stemdepth); - } - if(g->vstems) { - free(g->vstems); g->vstems = 0; g->nvs = 0; - } - if(g->hstems) { - free(g->hstems); g->hstems = 0; g->nhs = 0; - } - } -} - -/* convert weird curves that are close to lines into lines. -*/ - -void -fstraighten( - GLYPH * g -) -{ - GENTRY *ge, *pge, *nge, *ige; - double df; - int dir; - double iln, oln; - int svdir, i, o; - - for (ige = g->entries; ige != 0; ige = ige->next) { - if (ige->type != GE_CURVE) - continue; - - ge = ige; - pge = ge->bkwd; - nge = ge->frwd; - - df = 0.; - - /* look for vertical then horizontal */ - for(i=0; i<2; i++) { - o = !i; /* other axis */ - - iln = fabs(ge->fpoints[i][2] - pge->fpoints[i][2]); - oln = fabs(ge->fpoints[o][2] - pge->fpoints[o][2]); - /* - * if current curve is almost a vertical line, and it - * doesn't begin or end horizontally (and the prev/next - * line doesn't join smoothly ?) - */ - if( oln < 1. - || ge->fpoints[o][2] == ge->fpoints[o][1] - || ge->fpoints[o][0] == pge->fpoints[o][2] - || iln > 2. - || iln > 1. && iln/oln > 0.1 ) - continue; - - - if(ISDBG(STRAIGHTEN)) - fprintf(stderr,"** straighten almost %s\n", (i? "horizontal":"vertical")); - - df = ge->fpoints[i][2] - pge->fpoints[i][2]; - dir = fsign(ge->fpoints[o][2] - pge->fpoints[o][2]); - ge->type = GE_LINE; - - /* - * suck in all the sequence of such almost lines - * going in the same direction but not deviating - * too far from vertical - */ - iln = fabs(nge->fpoints[i][2] - ge->fpoints[i][2]); - oln = nge->fpoints[o][2] - ge->fpoints[o][2]; - - while (fabs(df) <= 5 && nge->type == GE_CURVE - && dir == fsign(oln) /* that also gives oln != 0 */ - && iln <= 2. - && ( iln <= 1. || iln/fabs(oln) <= 0.1 ) ) { - ge->fx3 = nge->fx3; - ge->fy3 = nge->fy3; - - if(ISDBG(STRAIGHTEN)) - fprintf(stderr,"** straighten collapsing %s\n", (i? "horizontal":"vertical")); - freethisge(nge); - fixendpath(ge); - pge = ge->bkwd; - nge = ge->frwd; - - df = ge->fpoints[i][2] - pge->fpoints[i][2]; - - iln = fabs(nge->fpoints[i][2] - ge->fpoints[i][2]); - oln = nge->fpoints[o][2] - ge->fpoints[o][2]; - } - - /* now check what do we have as previous/next line */ - - if(ge != pge) { - if( pge->type == GE_LINE && pge->fpoints[i][2] == pge->prev->fpoints[i][2] - && fabs(pge->fpoints[o][2] != pge->prev->fpoints[o][2]) ) { - if(ISDBG(STRAIGHTEN)) fprintf(stderr,"** straighten join with previous 0x%x 0x%x\n", pge, ge); - /* join the previous line with current */ - pge->fx3 = ge->fx3; - pge->fy3 = ge->fy3; - - ige = freethisge(ge)->prev; /* keep the iterator valid */ - ge = pge; - fixendpath(ge); - pge = ge->bkwd; - } - } - - if(ge != nge) { - if (nge->type == GE_LINE && nge->fpoints[i][2] == ge->fpoints[i][2] - && fabs(nge->fpoints[o][2] != ge->fpoints[o][2]) ) { - if(ISDBG(STRAIGHTEN)) fprintf(stderr,"** straighten join with next 0x%x 0x%x\n", ge, nge); - /* join the next line with current */ - ge->fx3 = nge->fx3; - ge->fy3 = nge->fy3; - - freethisge(nge); - fixendpath(ge); - pge = ge->bkwd; - nge = ge->frwd; - - } - } - - if(ge != pge) { - /* try to align the lines if neccessary */ - if(df != 0.) - fclosegap(ge, ge, i, df, NULL); - } else { - /* contour consists of only one line, get rid of it */ - ige = freethisge(ge)->prev; /* keep the iterator valid */ - } - - break; /* don't bother looking at the other axis */ - } - } -} - -/* solve a square equation, - * returns the number of solutions found, the solutions - * are stored in res which should point to array of two doubles. - * min and max limit the area for solutions - */ - -static int -fsqequation( - double a, - double b, - double c, - double *res, - double min, - double max -) -{ - double D; - int n; - - if(ISDBG(SQEQ)) fprintf(stderr, "sqeq(%g,%g,%g) [%g;%g]\n", a, b, c, min, max); - - if(fabs(a) < 0.000001) { /* if a linear equation */ - n=0; - if(fabs(b) < 0.000001) /* not an equation at all */ - return 0; - res[0] = -c/b; - if(ISDBG(SQEQ)) fprintf(stderr, "sqeq: linear t=%g\n", res[0]); - if(res[0] >= min && res[0] <= max) - n++; - return n; - } - - D = b*b - 4.0*a*c; - if(ISDBG(SQEQ)) fprintf(stderr, "sqeq: D=%g\n", D); - if(D<0) - return 0; - - D = sqrt(D); - - n=0; - res[0] = (-b+D) / (2*a); - if(ISDBG(SQEQ)) fprintf(stderr, "sqeq: t1=%g\n", res[0]); - if(res[0] >= min && res[0] <= max) - n++; - - res[n] = (-b-D) / (2*a); - if(ISDBG(SQEQ)) fprintf(stderr, "sqeq: t2=%g\n", res[n]); - if(res[n] >= min && res[n] <= max) - n++; - - /* return 2nd solution only if it's different enough */ - if(n==2 && fabs(res[0]-res[1])<0.000001) - n=1; - - return n; -} - -/* check that the curves don't cross quadrant boundary */ -/* (float) */ - -/* - Here we make sure that the curve does not continue past - horizontal or vertical extremums. The horizontal points are - explained, vertical points are by analogy. - - The horizontal points are where the derivative - dy/dx is equal to 0. But the Bezier curves are defined by - parametric formulas - x=fx(t) - y=fy(t) - so finding this derivative is complicated. - Also even if we find some point (x,y) splitting at this point - is far not obvious. Fortunately we can use dy/dt = 0 instead, - this gets to a rather simple square equation and splitting - at a known value of t is simple. - - The formulas are: - - y = A*(1-t)^3 + 3*B*(1-t)^2*t + 3*C*(1-t)*t^2 + D*t^3 - y = (-A+3*B-3*C+D)*t^3 + (3*A-6*B+3*C)*t^2 + (-3*A+3*B)*t + A - dy/dt = 3*(-A+3*B-3*C+D)*t^2 + 2*(3*A-6*B+3*C)*t + (-3*A+3*B) - */ - -void -ffixquadrants( - GLYPH *g -) -{ - GENTRY *ge, *nge; - int i, j, np, oldnp; - double sp[5]; /* split points, last one empty */ - char dir[5]; /* for debugging, direction by which split happened */ - double a, b, *pts; /* points of a curve */ - - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type != GE_CURVE) - continue; - - doagain: - np = 0; /* no split points yet */ - if(ISDBG(QUAD)) { - fprintf(stderr, "%s: trying 0x%x (%g %g) (%g %g) (%g %g) (%g %g)\n ", g->name, - ge, ge->prev->fx3, ge->prev->fy3, ge->fx1, ge->fy1, ge->fx2, ge->fy2, - ge->fx3, ge->fy3); - } - for(i=0; i<2; i++) { /* first for x then for y */ - /* find the cooridnates of control points */ - a = ge->prev->fpoints[i][2]; - pts = &ge->fpoints[i][0]; - - oldnp = np; - np += fsqequation( - 3.0*(-a + 3.0*pts[0] - 3.0*pts[1] + pts[2]), - 6.0*(a - 2.0*pts[0] + pts[1]), - 3.0*(-a + pts[0]), - &sp[np], - 0.0, 1.0); /* XXX range is [0;1] */ - - if(np == oldnp) - continue; - - if(ISDBG(QUAD)) - fprintf(stderr, "%s: 0x%x: %d pts(%c): ", - g->name, ge, np-oldnp, i? 'y':'x'); - - /* remove points that are too close to the ends - * because hor/vert ends are permitted, also - * if the split point is VERY close to the ends - * but not exactly then just flatten it and check again. - */ - for(j = oldnp; j<np; j++) { - dir[j] = i; - if(ISDBG(QUAD)) - fprintf(stderr, "%g ", sp[j]); - if(sp[j] < 0.03) { /* front end of curve */ - if(ge->fpoints[i][0] != ge->prev->fpoints[i][2]) { - ge->fpoints[i][0] = ge->prev->fpoints[i][2]; - if(ISDBG(QUAD)) fprintf(stderr, "flattened at front\n"); - goto doagain; - } - if( ge->fpoints[i][1] != ge->fpoints[i][0] - && fsign(ge->fpoints[i][2] - ge->fpoints[i][1]) - != fsign(ge->fpoints[i][1] - ge->fpoints[i][0]) ) { - ge->fpoints[i][1] = ge->fpoints[i][0]; - if(ISDBG(QUAD)) fprintf(stderr, "flattened zigzag at front\n"); - goto doagain; - } - sp[j] = sp[j+1]; np--; j--; - if(ISDBG(QUAD)) fprintf(stderr, "(front flat) "); - } else if(sp[j] > 0.97) { /* rear end of curve */ - if(ge->fpoints[i][1] != ge->fpoints[i][2]) { - ge->fpoints[i][1] = ge->fpoints[i][2]; - if(ISDBG(QUAD)) fprintf(stderr, "flattened at rear\n"); - goto doagain; - } - if( ge->fpoints[i][0] != ge->fpoints[i][1] - && fsign(ge->prev->fpoints[i][2] - ge->fpoints[i][0]) - != fsign(ge->fpoints[i][0] - ge->fpoints[i][1]) ) { - ge->fpoints[i][0] = ge->fpoints[i][1]; - if(ISDBG(QUAD)) fprintf(stderr, "flattened zigzag at rear\n"); - goto doagain; - } - sp[j] = sp[j+1]; np--; j--; - if(ISDBG(QUAD)) fprintf(stderr, "(rear flat) "); - } - } - if(ISDBG(QUAD)) fprintf(stderr, "\n"); - } - - if(np==0) /* no split points, leave it alone */ - continue; - - if(ISDBG(QUAD)) { - fprintf(stderr, "%s: splitting 0x%x (%g %g) (%g %g) (%g %g) (%g %g) at %d points\n ", g->name, - ge, ge->prev->fx3, ge->prev->fy3, ge->fx1, ge->fy1, ge->fx2, ge->fy2, - ge->fx3, ge->fy3, np); - for(i=0; i<np; i++) - fprintf(stderr, "%g(%c) ", sp[i], dir[i] ? 'y':'x'); - fprintf(stderr, "\n"); - } - - /* sort the points ascending */ - for(i=0; i<np; i++) - for(j=i+1; j<np; j++) - if(sp[i] > sp[j]) { - a = sp[i]; sp[i] = sp[j]; sp[j] = a; - } - - /* now finally do the split on each point */ - for(j=0; j<np; j++) { - double k1, k2, c; - - k1 = sp[j]; - k2 = 1 - k1; - - if(ISDBG(QUAD)) fprintf(stderr, " 0x%x %g/%g\n", ge, k1, k2); - - nge = newgentry(GEF_FLOAT); - (*nge) = (*ge); - -#define SPLIT(pt1, pt2) ( (pt1) + k1*((pt2)-(pt1)) ) /* order is important! */ - for(i=0; i<2; i++) { /* for x and y */ - a = ge->fpoints[i][0]; /* get the middle points */ - b = ge->fpoints[i][1]; - - /* calculate new internal points */ - c = SPLIT(a, b); - - ge->fpoints[i][0] = SPLIT(ge->prev->fpoints[i][2], a); - ge->fpoints[i][1] = SPLIT(ge->fpoints[i][0], c); - - nge->fpoints[i][1] = SPLIT(b, nge->fpoints[i][2]); - nge->fpoints[i][0] = SPLIT(c, nge->fpoints[i][1]); - - ge->fpoints[i][2] = SPLIT(ge->fpoints[i][1], - + nge->fpoints[i][0]); - } -#undef SPLIT - - addgeafter(ge, nge); - - /* go to the next part, adjust remaining points */ - ge = nge; - for(i=j+1; i<np; i++) - sp[i] = (sp[i]-k1) / k2; - } - } - -} - -/* check if a curve is a zigzag */ - -static int -iiszigzag( - GENTRY *ge -) -{ - double k, k1, k2; - int a, b; - - if (ge->type != GE_CURVE) - return 0; - - a = ge->iy2 - ge->iy1; - b = ge->ix2 - ge->ix1; - if(a == 0) { - if(b == 0) { - return 0; - } else - k = FBIGVAL; - } else - k = fabs((double) b / (double) a); - - a = ge->iy1 - ge->prev->iy3; - b = ge->ix1 - ge->prev->ix3; - if(a == 0) { - if(b == 0) { - return 0; - } else - k1 = FBIGVAL; - } else - k1 = fabs((double) b / (double) a); - - a = ge->iy3 - ge->iy2; - b = ge->ix3 - ge->ix2; - if(a == 0) { - if(b == 0) { - return 0; - } else - k2 = FBIGVAL; - } else - k2 = fabs((double) b / (double) a); - - /* if the curve is not a zigzag */ - if (k1+0.0001 >= k && k2 <= k+0.0001 || k1 <= k+0.0001 && k2+0.0001 >= k) - return 0; - else - return 1; -} - -/* check if a curve is a zigzag - floating */ - -static int -fiszigzag( - GENTRY *ge -) -{ - double k, k1, k2; - double a, b; - - if (ge->type != GE_CURVE) - return 0; - - a = fabs(ge->fy2 - ge->fy1); - b = fabs(ge->fx2 - ge->fx1); - if(a < FEPS) { - if(b < FEPS) { - return 0; - } else - k = FBIGVAL; - } else - k = b / a; - - a = fabs(ge->fy1 - ge->prev->fy3); - b = fabs(ge->fx1 - ge->prev->fx3); - if(a < FEPS) { - if(b < FEPS) { - return 0; - } else - k1 = FBIGVAL; - } else - k1 = b / a; - - a = fabs(ge->fy3 - ge->fy2); - b = fabs(ge->fx3 - ge->fx2); - if(a < FEPS) { - if(b < FEPS) { - return 0; - } else - k2 = FBIGVAL; - } else - k2 = b / a; - - /* if the curve is not a zigzag */ - if (k1+0.0001 >= k && k2 <= k+0.0001 || k1 <= k+0.0001 && k2+0.0001 >= k) - return 0; - else - return 1; -} - -/* split the zigzag-like curves into two parts */ - -void -fsplitzigzags( - GLYPH * g -) -{ - GENTRY *ge, *nge; - double a, b, c, d; - - assertisfloat(g, "splitting zigzags"); - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type != GE_CURVE) - continue; - - /* if the curve is not a zigzag */ - if ( !fiszigzag(ge) ) { - continue; - } - - if(ISDBG(FCONCISE)) { - double maxsc1, maxsc2; - fprintf(stderr, "split a zigzag "); - fnormalizege(ge); - if( fcrossrays(ge, ge, &maxsc1, &maxsc2, NULL) ) { - fprintf(stderr, "sc1=%g sc2=%g\n", maxsc1, maxsc2); - } else { - fprintf(stderr, "(rays don't cross)\n"); - } - } - /* split the curve by t=0.5 */ - nge = newgentry(GEF_FLOAT); - (*nge) = (*ge); - nge->type = GE_CURVE; - - a = ge->prev->fx3; - b = ge->fx1; - c = ge->fx2; - d = ge->fx3; - nge->fx3 = d; - nge->fx2 = (c + d) / 2.; - nge->fx1 = (b + 2. * c + d) / 4.; - ge->fx3 = (a + b * 3. + c * 3. + d) / 8.; - ge->fx2 = (a + 2. * b + c) / 4.; - ge->fx1 = (a + b) / 2.; - - a = ge->prev->fy3; - b = ge->fy1; - c = ge->fy2; - d = ge->fy3; - nge->fy3 = d; - nge->fy2 = (c + d) / 2.; - nge->fy1 = (b + 2. * c + d) / 4.; - ge->fy3 = (a + b * 3. + c * 3. + d) / 8.; - ge->fy2 = (a + 2. * b + c) / 4.; - ge->fy1 = (a + b) / 2.; - - addgeafter(ge, nge); - - if(ISDBG(FCONCISE)) { - dumppaths(g, ge, nge); - } - } -} - -/* free this GENTRY, returns what was ge->next - * (ge must be of type GE_LINE or GE_CURVE) - * works on both float and int entries - */ - -static GENTRY * -freethisge( - GENTRY *ge -) -{ - GENTRY *xge; - - if (ge->bkwd != ge->prev) { - /* at beginning of the contour */ - - xge = ge->bkwd; - if(xge == ge) { /* was the only line in contour */ - /* remove the contour completely */ - /* prev is GE_MOVE, next is GE_PATH, remove them all */ - - /* may be the first contour, then ->bkwd points to ge->entries */ - if(ge->prev->prev == 0) - *(GENTRY **)(ge->prev->bkwd) = ge->next->next; - else - ge->prev->prev->next = ge->next->next; - - if(ge->next->next) { - ge->next->next->prev = ge->prev->prev; - ge->next->next->bkwd = ge->prev->bkwd; - } - - xge = ge->next->next; - free(ge->prev); free(ge->next); free(ge); - return xge; - } - - /* move the start point of the contour */ - if(ge->flags & GEF_FLOAT) { - ge->prev->fx3 = xge->fx3; - ge->prev->fy3 = xge->fy3; - } else { - ge->prev->ix3 = xge->ix3; - ge->prev->iy3 = xge->iy3; - } - } else if(ge->frwd != ge->next) { - /* at end of the contour */ - - xge = ge->frwd->prev; - /* move the start point of the contour */ - if(ge->flags & GEF_FLOAT) { - xge->fx3 = ge->bkwd->fx3; - xge->fy3 = ge->bkwd->fy3; - } else { - xge->ix3 = ge->bkwd->ix3; - xge->iy3 = ge->bkwd->iy3; - } - } - - ge->prev->next = ge->next; - ge->next->prev = ge->prev; - ge->bkwd->frwd = ge->frwd; - ge->frwd->bkwd = ge->bkwd; - - xge = ge->next; - free(ge); - return xge; -} - -/* inserts a new gentry (LINE or CURVE) after another (MOVE - * or LINE or CURVE) - * corrects the first GE_MOVE if neccessary - */ - -static void -addgeafter( - GENTRY *oge, /* after this */ - GENTRY *nge /* insert this */ -) -{ - if(oge->type == GE_MOVE) { - /* insert before next */ - if(oge->next->type == GE_PATH) { - /* first and only GENTRY in path */ - nge->frwd = nge->bkwd = nge; - } else { - nge->frwd = oge->next; - nge->bkwd = oge->next->bkwd; - oge->next->bkwd->frwd = nge; - oge->next->bkwd = nge; - } - } else { - nge->frwd = oge->frwd; - nge->bkwd = oge; - oge->frwd->bkwd = nge; - oge->frwd = nge; - } - - nge->next = oge->next; - nge->prev = oge; - oge->next->prev = nge; - oge->next = nge; - - if(nge->frwd->prev->type == GE_MOVE) { - /* fix up the GE_MOVE entry */ - if(nge->flags & GEF_FLOAT) { - nge->frwd->prev->fx3 = nge->fx3; - nge->frwd->prev->fy3 = nge->fy3; - } else { - nge->frwd->prev->ix3 = nge->ix3; - nge->frwd->prev->iy3 = nge->iy3; - } - } -} - -/* - * Check if this GENTRY happens to be at the end of path - * and fix the first MOVETO accordingly - * handles both int and float - */ - -static void -fixendpath( - GENTRY *ge -) -{ - GENTRY *mge; - - mge = ge->frwd->prev; - if(mge->type == GE_MOVE) { - if(ge->flags & GEF_FLOAT) { - mge->fx3 = ge->fx3; - mge->fy3 = ge->fy3; - } else { - mge->ix3 = ge->ix3; - mge->iy3 = ge->iy3; - } - } -} - -/* - * This function adjusts the rest of path (the part from...to is NOT changed) - * to cover the specified gap by the specified axis (0 - X, 1 - Y). - * Gap is counted in direction (end_of_to - beginning_of_from). - * Returns by how much the gap was not closed (0.0 if it was fully closed). - * Ret contains by how much the first and last points of [from...to] - * were moved to bring them in consistence to the rest of the path. - * If ret==NULL then this info is not returned. - */ - -static double -fclosegap( - GENTRY *from, - GENTRY *to, - int axis, - double gap, - double *ret -) -{ -#define TIMESLARGER 10. /* how many times larger must be a curve to not change too much */ - double rm[2]; - double oldpos[2]; - double times, limit, df, dx; - int j, k; - GENTRY *xge, *pge, *nge, *bge[2]; - - /* remember the old points to calculate ret */ - oldpos[0] = from->prev->fpoints[axis][2]; - oldpos[1] = to->fpoints[axis][2]; - - rm[0] = rm[1] = gap / 2. ; - - bge[0] = from; /* this is convenient for iterations */ - bge[1] = to; - - /* first try to modify large curves but if have none then settle for small */ - for(times = (TIMESLARGER-1); times > 0.1; times /= 2. ) { - - if(rm[0]+rm[1] == 0.) - break; - - /* iterate in both directions, backwards then forwards */ - for(j = 0; j<2; j++) { - - if(rm[j] == 0.) /* if this direction is exhausted */ - continue; - - limit = fabs(rm[j]) * (1.+times); - - for(xge = bge[j]->cntr[j]; xge != bge[!j]; xge = xge->cntr[j]) { - dx = xge->fpoints[axis][2] - xge->prev->fpoints[axis][2]; - df = fabs(dx) - limit; - if( df <= FEPS ) /* curve is too small to change */ - continue; - - if( df >= fabs(rm[j]) ) - df = rm[j]; - else - df *= fsign(rm[j]); /* we may cover this part of rm */ - - rm[j] -= df; - limit = fabs(rm[j]) * (1.+times); - - if(xge->type == GE_CURVE) { /* correct internal points */ - double scale = ((dx+df) / dx) - 1.; - double base; - - if(j) - base = xge->fpoints[axis][2]; - else - base = xge->prev->fpoints[axis][2]; - - for(k = 0; k<2; k++) - xge->fpoints[axis][k] += scale * - (xge->fpoints[axis][k] - base); - } - - /* move all the intermediate lines */ - if(j) { - df = -df; /* absolute direction */ - pge = bge[1]->bkwd; - nge = xge->bkwd; - } else { - xge->fpoints[axis][2] += df; - pge = bge[0]; - nge = xge->frwd; - } - while(nge != pge) { - if(nge->type == GE_CURVE) { - nge->fpoints[axis][0] +=df; - nge->fpoints[axis][1] +=df; - } - nge->fpoints[axis][2] += df; - if(nge->next != nge->frwd) { /* last entry of contour */ - nge->frwd->prev->fpoints[axis][2] += df; - } - nge = nge->cntr[!j]; - } - - if(rm[j] == 0.) - break; - } - } - } - - /* find the difference */ - oldpos[0] -= from->prev->fpoints[axis][2]; - oldpos[1] -= to->fpoints[axis][2]; - - if(ret) { - ret[0] = oldpos[0] - from->prev->fpoints[axis][2]; - ret[1] = oldpos[1] - to->fpoints[axis][2]; - } - -#if 0 - if( rm[0]+rm[1] != gap - oldpos[1] + oldpos[0]) { - fprintf(stderr, "** gap=%g rm[0]=%g rm[1]=%g o[0]=%g o[1]=%g rg=%g og=%g\n", - gap, rm[0], rm[1], oldpos[0], oldpos[1], rm[0]+rm[1], - gap - oldpos[1] + oldpos[0]); - } -#endif - - return rm[0]+rm[1]; -#undef TIMESLARGER -} - -/* remove the lines or curves smaller or equal to the size limit */ - -static void -fdelsmall( - GLYPH *g, - double minlen -) -{ - GENTRY *ge, *nge, *pge, *xge, *next; - int i, k; - double dx, dy, d2, d2m; - double minlen2; -#define TIMESLARGER 10. /* how much larger must be a curve to not change too much */ - - minlen2 = minlen*minlen; - - for (ge = g->entries; ge != 0; ge = next) { - next = ge->next; - - if (ge->type != GE_CURVE && ge->type != GE_LINE) - continue; - - d2m = 0; - for(i= (ge->type==GE_CURVE? 0: 2); i<3; i++) { - dx = ge->fxn[i] - ge->prev->fx3; - dy = ge->fyn[i] - ge->prev->fy3; - d2 = dx*dx + dy*dy; - if(d2m < d2) - d2m = d2; - } - - if( d2m > minlen2 ) { /* line is not too small */ - /* XXX add more normalization here */ - continue; - } - - /* if the line is too small */ - - /* check forwards if we have a whole sequence of them */ - nge = ge; - for(xge = ge->frwd; xge != ge; xge = xge->frwd) { - d2m = 0; - for(i= (xge->type==GE_CURVE? 0: 2); i<3; i++) { - dx = xge->fxn[i] - xge->prev->fx3; - dy = xge->fyn[i] - xge->prev->fy3; - d2 = dx*dx + dy*dy; - if(d2m < d2) - d2m = d2; - } - if( d2m > minlen2 ) /* line is not too small */ - break; - nge = xge; - if(next == nge) /* move the next step past this sequence */ - next = next->next; - } - - /* check backwards if we have a whole sequence of them */ - pge = ge; - for(xge = ge->bkwd; xge != ge; xge = xge->bkwd) { - d2m = 0; - for(i= (xge->type==GE_CURVE? 0: 2); i<3; i++) { - dx = xge->fxn[i] - xge->prev->fx3; - dy = xge->fyn[i] - xge->prev->fy3; - d2 = dx*dx + dy*dy; - if(d2m < d2) - d2m = d2; - } - if( d2m > minlen2 ) /* line is not too small */ - break; - pge = xge; - } - - /* now we have a sequence of small fragments in pge...nge (inclusive) */ - - if(ISDBG(FCONCISE)) { - fprintf(stderr, "glyph %s has very small fragments(%x..%x..%x)\n", - g->name, pge, ge, nge); - dumppaths(g, pge, nge); - } - - /* reduce whole sequence to one part and remember the middle point */ - if(pge != nge) { - while(1) { - xge = pge->frwd; - if(xge == nge) { - pge->fx1 = pge->fx2 = pge->fx3; - pge->fx3 = nge->fx3; - pge->fy1 = pge->fy2 = pge->fy3; - pge->fy3 = nge->fy3; - pge->type = GE_CURVE; - freethisge(nge); - break; - } - if(xge == nge->bkwd) { - pge->fx1 = pge->fx2 = (pge->fx3+xge->fx3)/2.; - pge->fx3 = nge->fx3; - pge->fy1 = pge->fy2 = (pge->fy3+xge->fy3)/2.; - pge->fy3 = nge->fy3; - pge->type = GE_CURVE; - freethisge(nge); - freethisge(xge); - break; - } - freethisge(pge); pge = xge; - xge = nge->bkwd; freethisge(nge); nge = xge; - } - } - ge = pge; - - /* check if the whole sequence is small */ - dx = ge->fx3 - ge->prev->fx3; - dy = ge->fy3 - ge->prev->fy3; - d2 = dx*dx + dy*dy; - - if( d2 > minlen2 ) { /* no, it is not */ - double b, d; - - WARNING_3 fprintf(stderr, "glyph %s had a sequence of fragments < %g points each, reduced to one curve\n", - g->name, minlen); - - /* check that we did not create a monstrosity spanning quadrants */ - if(fsign(ge->fx1 - ge->prev->fx1) * fsign(ge->fx3 - ge->fx1) < 0 - || fsign(ge->fy1 - ge->prev->fy1) * fsign(ge->fy3 - ge->fy1) < 0 ) { - /* yes, we did; are both parts of this thing big enough ? */ - dx = ge->fx1 - ge->prev->fx3; - dy = ge->fy1 - ge->prev->fy3; - d2 = dx*dx + dy*dy; - - dx = ge->fx3 - ge->fx1; - dy = ge->fy3 - ge->fy1; - d2m = dx*dx + dy*dy; - - if(d2 > minlen2 && d2m > minlen2) { /* make two straights */ - nge = newgentry(GEF_FLOAT); - *nge = *ge; - - for(i=0; i<2; i++) { - ge->fpoints[i][2] = ge->fpoints[i][0]; - b = nge->fpoints[i][0]; - d = nge->fpoints[i][2] - b; - nge->fpoints[i][0] = b + 0.1*d; - nge->fpoints[i][1] = b + 0.9*d; - } - } - for(i=0; i<2; i++) { /* make one straight or first of two straights */ - b = ge->prev->fpoints[i][2]; - d = ge->fpoints[i][2] - b; - ge->fpoints[i][0] = b + 0.1*d; - ge->fpoints[i][1] = b + 0.9*d; - } - } - continue; - } - - if(ge->frwd == ge) { /* points to itself, just remove the path completely */ - WARNING_3 fprintf(stderr, "glyph %s had a path made of fragments < %g points each, removed\n", - g->name, minlen); - - next = freethisge(ge); - continue; - } - - /* now close the gap by x and y */ - for(i=0; i<2; i++) { - double gap; - - gap = ge->fpoints[i][2] - ge->prev->fpoints[i][2]; - if( fclosegap(ge, ge, i, gap, NULL) != 0.0 ) { - double scale, base; - - /* not good, as the last resort just scale the next line */ - gap = ge->fpoints[i][2] - ge->prev->fpoints[i][2]; - - if(ISDBG(FCONCISE)) - fprintf(stderr, " last resort on %c: closing next by %g\n", - (i==0 ? 'x' : 'y'), gap); - - nge = ge->frwd; - base = nge->fpoints[i][2]; - dx = ge->fpoints[i][2] - base; - if(fabs(dx) < FEPS) - continue; - - scale = ((dx-gap) / dx); - - if(nge->type == GE_CURVE) - for(k = 0; k<2; k++) - nge->fpoints[i][k] = base + - scale * (nge->fpoints[i][k] - base); - - ge->fpoints[i][2] -= gap; - } - } - - /* OK, the gap is closed - remove this useless GENTRY */ - freethisge(ge); - } -#undef TIMESLARGER -} - -/* find the point where two rays continuing vectors cross - * rays are defined as beginning of curve1 and end of curve 2 - * returns 1 if they cross, 0 if they don't - * If they cross optionally (if the pointers are not NULL) returns - * the maximal scales for both vectors and also optionally the point - * where the rays cross (twice). - * Expects that the curves are normalized. - */ - -static int -fcrossrays( - GENTRY *ge1, - GENTRY *ge2, - double *max1, - double *max2, - double crossdot[2][2] -) -{ - struct ray { - double x1, y1, x2, y2; - int isvert; - double k, b; /* lines are represented as y = k*x + b */ - double *maxp; - } ray [3]; - double x, y, max; - int i; - - ray[0].x1 = ge1->prev->fx3; - ray[0].y1 = ge1->prev->fy3; - ray[0].x2 = ge1->fpoints[X][ge1->ftg]; - ray[0].y2 = ge1->fpoints[Y][ge1->ftg]; - ray[0].maxp = max1; - - ray[1].x1 = ge2->fx3; - ray[1].y1 = ge2->fy3; - if(ge2->rtg < 0) { - ray[1].x2 = ge2->prev->fx3; - ray[1].y2 = ge2->prev->fy3; - } else { - ray[1].x2 = ge2->fpoints[X][ge2->rtg]; - ray[1].y2 = ge2->fpoints[Y][ge2->rtg]; - } - ray[1].maxp = max2; - - for(i=0; i<2; i++) { - if(ray[i].x1 == ray[i].x2) - ray[i].isvert = 1; - else { - ray[i].isvert = 0; - ray[i].k = (ray[i].y2 - ray[i].y1) / (ray[i].x2 - ray[i].x1); - ray[i].b = ray[i].y2 - ray[i].k * ray[i].x2; - } - } - - if(ray[0].isvert && ray[1].isvert) { - if(ISDBG(FCONCISE)) fprintf(stderr, "crossrays: both vertical\n"); - return 0; /* both vertical, don't cross */ - } - - if(ray[1].isvert) { - ray[2] = ray[0]; /* exchange them */ - ray[0] = ray[1]; - ray[1] = ray[2]; - } - - if(ray[0].isvert) { - x = ray[0].x1; - } else { - if( fabs(ray[0].k - ray[1].k) < FEPS) { - if(ISDBG(FCONCISE)) fprintf(stderr, "crossrays: parallel lines, k = %g, %g\n", - ray[0].k, ray[1].k); - return 0; /* parallel lines */ - } - x = (ray[1].b - ray[0].b) / (ray[0].k - ray[1].k) ; - } - y = ray[1].k * x + ray[1].b; - - for(i=0; i<2; i++) { - if(ray[i].isvert) - max = (y - ray[i].y1) / (ray[i].y2 - ray[i].y1); - else - max = (x - ray[i].x1) / (ray[i].x2 - ray[i].x1); - /* check if wrong sides of rays cross */ - if( max < 0 ) { - if(ISDBG(FCONCISE)) fprintf(stderr, "crossrays: %c scale=%g @(%g,%g) (%g,%g)<-(%g,%g)\n", - (i?'Y':'X'), max, x, y, ray[i].x2, ray[i].y2, ray[i].x1, ray[i].y1); - return 0; - } - if(ray[i].maxp) - *ray[i].maxp = max; - } - if(crossdot != 0) { - crossdot[0][0] = crossdot[1][0] = x; - crossdot[0][1] = crossdot[1][1] = y; - } - return 1; -} - -/* debugging printout functions */ - -#if defined(DEBUG_DOTSEG) || defined(DEBUG_DOTCURVE) || defined(DEBUG_APPROXCV) - -/* for debugging */ -static -printdot( - double dot[2] -) -{ - fprintf(stderr, "(%g,%g)", dot[0], dot[1]); -} - -static -printseg( - double seg[2][2] -) -{ - putc('[', stderr); - printdot(seg[0]); - putc(' ', stderr); - printdot(seg[1]); - putc(']', stderr); -} - -#endif /* DEBUG_* */ - -/* - * Find squared distance from a dot to a line segment - */ - -static double -fdotsegdist2( - double seg[2][2 /*X,Y*/], - double dot[2 /*X,Y*/] -) -{ -#define x1 seg[0][X] -#define y1 seg[0][Y] -#define x2 seg[1][X] -#define y2 seg[1][Y] -#define xdot dot[X] -#define ydot dot[Y] - - double dx, dy; /* segment dimensions */ - double kline, bline; /* segment line formula is y=k*x+b */ - double kperp, bperp; /* perpendicular from the dot to the line */ - double xcross, ycross; /* where the perpendicular crosses the segment */ - -/* handle the situation where the nearest point of the segment is its end */ -#define HANDLE_LIMITS(less12, lesscr1, lesscr2) \ - if( less12 ) { \ - if( lesscr1 ) { \ - xcross = x1; \ - ycross = y1; \ - } else if( !(lesscr2) ) { \ - xcross = x2; \ - ycross = y2; \ - } \ - } else { \ - if( !(lesscr1) ) { \ - xcross = x1; \ - ycross = y1; \ - } else if( lesscr2 ) { \ - xcross = x2; \ - ycross = y2; \ - } \ - } \ - /* end of macro */ - - - dx = x2 - x1; - dy = y2 - y1; - - if(fabs(dx) < FEPS) { - /* special case - vertical line */ -#ifdef DEBUG_DOTSEG - printf("vertical line!\n"); -#endif - xcross = x1; - ycross = ydot; - HANDLE_LIMITS( y1 < y2, ycross < y1, ycross < y2); - } else if(fabs(dy) < FEPS) { - /* special case - horizontal line */ -#ifdef DEBUG_DOTSEG - printf("horizontal line!\n"); -#endif - xcross = xdot; - ycross = y1; - HANDLE_LIMITS( x1 < x2, xcross < x1, xcross < x2) - } else { - kline = dy/dx; - bline = y1 - x1*kline; - kperp = -1./kline; - bperp = ydot - xdot*kperp; - - xcross = (bline-bperp) / (kperp-kline); - ycross = kline*xcross + bline; - - HANDLE_LIMITS( x1 < x2, xcross < x1, xcross < x2) - } -#ifdef DEBUG_DOTSEG - printf("crossover at (%g,%g)\n", xcross, ycross); -#endif - - dx = xdot-xcross; - dy = ydot-ycross; - return dx*dx+dy*dy; -#undef x1 -#undef y1 -#undef x2 -#undef y2 -#undef xdot -#undef ydot -#undef HANDLE_LIMITS -} - -/* find the weighted quadratic average for the distance of a set - * of dots from the curve; also fills out the individual distances - * for each dot; if maxp!=NULL then returns the maximal squared - * distance in there - */ - -static double -fdotcurvdist2( - double curve[4][2 /*X,Y*/ ], - struct dot_dist *dots, - int ndots, /* number of entries in dots */ - double *maxp -) -{ - /* a curve is approximated by this many straight segments */ -#define NAPSECT 16 - /* a curve is divided into this many sections with equal weight each */ -#define NWSECT 4 - /* table of coefficients for finding the dots on the curve */ - /* tt[0] is left unused */ - static double tt[NAPSECT][4]; - static int havett = 0; /* flag: tt is initialized */ - /* dots on the curve */ - double cvd[NAPSECT+1][2 /*X,Y*/]; - /* sums by sections */ - double sum[NWSECT]; - /* counts by sections */ - double count[NWSECT]; - int d, i, j; - int id1, id2; - double dist1, dist2, dist3, dx, dy, x, y; - double max = 0.; - - if(!havett) { - double t, nt, t2, nt2, step; - - havett++; - step = 1. / NAPSECT; - t = 0; - for(i=1; i<NAPSECT; i++) { - t += step; - nt = 1 - t; - t2 = t*t; - nt2 = nt*nt; - tt[i][0] = nt2*nt; /* (1-t)^3 */ - tt[i][1] = 3*nt2*t; /* 3*(1-t)^2*t */ - tt[i][2] = 3*nt*t2; /* 3*(1-t)*t^2 */ - tt[i][3] = t2*t; /* t^3 */ - } - } - - for(i=0; i<NWSECT; i++) { - sum[i] = 0.; - count[i] = 0; - } - - /* split the curve into segments */ - for(d=0; d<2; d++) { /* X and Y */ - cvd[0][d] = curve[0][d]; /* endpoints */ - cvd[NAPSECT][d] = curve[3][d]; - for(i=1; i<NAPSECT; i++) { - cvd[i][d] = curve[0][d] * tt[i][0] - + curve[1][d] * tt[i][1] - + curve[2][d] * tt[i][2] - + curve[3][d] * tt[i][3]; - } - } - - for(d=0; d<ndots; d++) { -#ifdef DEBUG_DOTCURVE - printf("dot %d ", d); printdot(dots[d].p); printf(":\n"); - - /* for debugging */ - for(i=0; i< NAPSECT; i++) { - dist1 = fdotsegdist2(&cvd[i], dots[d].p); - printf(" seg %d ",i); printseg(&cvd[i]); printf(" dist=%g\n", sqrt(dist1)); - } -#endif - - x = dots[d].p[X]; - y = dots[d].p[Y]; - - /* find the nearest dot on the curve - * there may be up to 2 local minimums - so we start from the - * ends of curve and go to the center - */ - - id1 = 0; - dx = x - cvd[0][X]; - dy = y - cvd[0][Y]; - dist1 = dx*dx + dy*dy; -#ifdef DEBUG_DOTCURVE - printf(" dot 0 "); printdot(cvd[id1]); printf(" dist=%g\n", sqrt(dist1)); -#endif - for(i = 1; i<=NAPSECT; i++) { - dx = x - cvd[i][X]; - dy = y - cvd[i][Y]; - dist3 = dx*dx + dy*dy; -#ifdef DEBUG_DOTCURVE - printf(" dot %d ",i); printdot(cvd[i]); printf(" dist=%g\n", sqrt(dist3)); -#endif - if(dist3 < dist1) { - dist1 = dist3; - id1 = i; - } else - break; - } - - if(id1 < NAPSECT-1) { - id2 = NAPSECT; - dx = x - cvd[NAPSECT][X]; - dy = y - cvd[NAPSECT][Y]; - dist2 = dx*dx + dy*dy; -#ifdef DEBUG_DOTCURVE - printf(" +dot %d ", id2); printdot(cvd[id2]); printf(" dist=%g\n", sqrt(dist2)); -#endif - for(i = NAPSECT-1; i>id1+1; i--) { - dx = x - cvd[i][X]; - dy = y - cvd[i][Y]; - dist3 = dx*dx + dy*dy; -#ifdef DEBUG_DOTCURVE - printf(" dot %d ",i); printdot(cvd[i]); printf(" dist=%g\n", sqrt(dist3)); -#endif - if(dist3 < dist2) { - dist2 = dist3; - id2 = i; - } else - break; - } - - /* now find which of the local minimums is smaller */ - if(dist2 < dist1) { - id1 = id2; - } - } - - /* the nearest segment must include the nearest dot */ - if(id1==0) { - dots[d].seg = 0; - dots[d].dist2 = fdotsegdist2(&cvd[0], dots[d].p); - } else if(id1==NAPSECT) { - dots[d].seg = NAPSECT-1; - dots[d].dist2 = fdotsegdist2(&cvd[NAPSECT-1], dots[d].p); - } else { - dist1 = fdotsegdist2(&cvd[id1], dots[d].p); - dist2 = fdotsegdist2(&cvd[id1-1], dots[d].p); - if(dist2 < dist1) { - dots[d].seg = id1-1; - dots[d].dist2 = dist2; - } else { - dots[d].seg = id1; - dots[d].dist2 = dist1; - } - } - - i = dots[d].seg % NWSECT; - sum[i] += dots[d].dist2; - if(dots[d].dist2 > max) - max = dots[d].dist2; - count[i]++; -#ifdef DEBUG_DOTCURVE - printf(" best seg %d sect %d dist=%g\n", dots[d].seg, i, sqrt(dots[d].dist2)); -#endif - } - - /* calculate the weighted average */ - id1=0; - dist1=0.; - for(i=0; i<NWSECT; i++) { - if(count[i]==0) - continue; - id1++; - dist1 += sum[i]/count[i]; - } - if(maxp) - *maxp = max; - if(id1==0) /* no dots, strange */ - return 0.; - else - return dist1/id1; /* to get the average distance apply sqrt() */ -} - -/* - * Approximate a curve matching the giving set of points and with - * middle reference points going along the given segments (and no farther - * than these segments). - */ - -static void -fapproxcurve( - double cv[4][2 /*X,Y*/ ], /* points 0-3 are passed in, points 1,2 - out */ - struct dot_dist *dots, /* the dots to approximate - distances returned - * there may be invalid */ - int ndots -) -{ - /* b and c are the middle control points */ -#define B 0 -#define C 1 - /* maximal number of sections on each axis - used for the first step */ -#define MAXSECT 2 - /* number of sections used for the other steps */ -#define NORMSECT 2 - /* when the steps become less than this many points, it's time to stop */ -#define STEPEPS 1. - double from[2 /*B,C*/], to[2 /*B,C*/]; - double middf[2 /*B,C*/][2 /*X,Y*/], df; - double coef[2 /*B,C*/][MAXSECT]; - double res[MAXSECT][MAXSECT], thisres, bestres, goodres; - int ncoef[2 /*B,C*/], best[2 /*B,C*/], good[2 /*B,C*/]; - int i, j, k, keepsym; - char bc[]="BC"; - char xy[]="XY"; - -#ifdef DEBUG_APPROXCV - fprintf(stderr, "Curve points:"); - for(i=0; i<4; i++) { - fprintf(stderr, " "); - printdot(cv[i]); - } - fprintf(stderr, "\nDots:"); - for(i=0; i<ndots; i++) { - fprintf(stderr, " "); - printdot(dots[i].p); - } - fprintf(stderr, "\n"); -#endif - - /* load the endpoints and calculate differences */ - for(i=0; i<2; i++) { - /* i is X, Y */ - middf[B][i] = cv[1][i]-cv[0][i]; - middf[C][i] = cv[2][i]-cv[3][i]; - - /* i is B, C */ - from[i] = 0.; - to[i] = 1.; - ncoef[i] = MAXSECT; - } - - while(ncoef[B] != 1 || ncoef[C] != 1) { - /* prepare the values of coefficients */ - for(i=0; i<2; i++) { /*B,C*/ -#ifdef DEBUG_APPROXCV - fprintf(stderr, "Coefficients by %c(%g,%g):", bc[i], from[i], to[i]); -#endif - df = (to[i]-from[i]) / (ncoef[i]*2); - for(j=0; j<ncoef[i]; j++) { - coef[i][j] = from[i] + df*(2*j+1); -#ifdef DEBUG_APPROXCV - fprintf(stderr, " %g", coef[i][j]); -#endif - } -#ifdef DEBUG_APPROXCV - fprintf(stderr, "\n"); -#endif - } - bestres = FBIGVAL; - /* i iterates by ncoef[B], j iterates by ncoef[C] */ - for(i=0; i<ncoef[B]; i++) { - for(j=0; j<ncoef[C]; j++) { - for(k=0; k<2; k++) { /*X, Y*/ - cv[1][k] = cv[0][k] + middf[B][k]*coef[B][i]; - cv[2][k] = cv[3][k] + middf[C][k]*coef[C][j]; - } - res[i][j] = thisres = fdotcurvdist2(cv, dots, ndots, NULL); - if(thisres < bestres) { - goodres = bestres; - good[B] = best[B]; - good[C] = best[C]; - bestres = thisres; - best[B] = i; - best[C] = j; - } else if(thisres < goodres) { - goodres = thisres; - good[B] = i; - good[C] = j; - } -#ifdef DEBUG_APPROXCV - fprintf(stderr, " at (%g,%g) dist=%g %s\n", coef[B][i], coef[C][j], sqrt(thisres), - (best[B]==i && best[C]==j)? "(BEST)":""); -#endif - } - } -#ifdef DEBUG_APPROXCV - fprintf(stderr, " best: at (%g, %g) dist=%g\n", - coef[B][best[B]], coef[C][best[C]], sqrt(bestres)); - fprintf(stderr, " B:%d,%d C:%d,%d -- 2nd best: at (%g, %g) dist=%g\n", - best[B], good[B], best[C], good[C], coef[B][good[B]], coef[C][good[C]], sqrt(goodres)); -#endif - - if(bestres < (0.1*0.1)) { /* consider it close enough */ - /* calculate the coordinates to return */ - for(k=0; k<2; k++) { /*X, Y*/ - cv[1][k] = cv[0][k] + middf[B][k]*coef[B][best[B]]; - cv[2][k] = cv[3][k] + middf[C][k]*coef[C][best[C]]; - } -#ifdef DEBUG_APPROXCV - fprintf(stderr, "quick approximated middle points "); printdot(cv[1]); - fprintf(stderr, " "); printdot(cv[2]); fprintf(stderr, "\n"); -#endif - return; - } - keepsym = 0; - if(best[B] != best[C] && best[B]-best[C] == good[C]-good[B]) { - keepsym = 1; -#ifdef DEBUG_APPROXCV - fprintf(stderr, "keeping symmetry!\n"); -#endif - } - for(i=0; i<2; i++) { /*B,C*/ - if(ncoef[i]==1) - continue; - if(keepsym) { - /* try to keep the symmetry */ - if(best[i] < good[i]) { - from[i] = coef[i][best[i]]; - to[i] = coef[i][good[i]]; - } else { - from[i] = coef[i][good[i]]; - to[i] = coef[i][best[i]]; - } - } else { - df = (to[i]-from[i]) / ncoef[i]; - from[i] += df*best[i]; - to[i] = from[i] + df; - } - if( fabs(df*middf[i][0]) < STEPEPS && fabs(df*middf[i][1]) < STEPEPS) { - /* this side has converged */ - from[i] = to[i] = (from[i]+to[i]) / 2.; - ncoef[i] = 1; - } else - ncoef[i] = NORMSECT; - } - - } - /* calculate the coordinates to return */ - for(k=0; k<2; k++) { /*X, Y*/ - cv[1][k] = cv[0][k] + middf[B][k]*from[B]; - cv[2][k] = cv[3][k] + middf[C][k]*from[C]; - } -#ifdef DEBUG_APPROXCV - fprintf(stderr, "approximated middle points "); printdot(cv[1]); - fprintf(stderr, " "); printdot(cv[2]); fprintf(stderr, "\n"); -#endif -#undef B -#undef C -#undef MAXSECT -#undef NORMSECT -#undef STEPEPS -} - -/* - * Find the squared value of the sinus of the angle between the - * end of ge1 and the beginning of ge2 - * The curve must be normalized. - */ - -static double -fjointsin2( - GENTRY *ge1, - GENTRY *ge2 -) -{ - double d[3][2 /*X,Y*/]; - double scale1, scale2, len1, len2; - int axis; - - if(ge1->rtg < 0) { - d[1][X] = ge1->fx3 - ge1->prev->fx3; - d[1][Y] = ge1->fy3 - ge1->prev->fy3; - } else { - d[1][X] = ge1->fx3 - ge1->fpoints[X][ge1->rtg]; - d[1][Y] = ge1->fy3 - ge1->fpoints[Y][ge1->rtg]; - } - d[2][X] = ge2->fpoints[X][ge2->ftg] - ge2->prev->fx3; - d[2][Y] = ge2->fpoints[Y][ge2->ftg] - ge2->prev->fy3; - - len1 = sqrt( d[1][X]*d[1][X] + d[1][Y]*d[1][Y] ); - len2 = sqrt( d[2][X]*d[2][X] + d[2][Y]*d[2][Y] ); - /* scale the 2nd segment to the length of 1 - * and to make sure that the 1st segment is longer scale it to - * the length of 2 and extend to the same distance backwards - */ - scale1 = 2./len1; - scale2 = 1./len2; - - for(axis=0; axis <2; axis++) { - d[0][axis] = -( d[1][axis] *= scale1 ); - d[2][axis] *= scale2; - } - return fdotsegdist2(d, d[2]); -} - -#if 0 -/* find the area covered by the curve - * (limited by the projections to the X axis) - */ - -static double -fcvarea( - GENTRY *ge -) -{ - double Ly, My, Ny, Py, Qx, Rx, Sx; - double area; - - /* y = Ly*t^3 + My*t^2 + Ny*t + Py */ - Ly = -ge->prev->fy3 + 3*(ge->fy1 - ge->fy2) + ge->fy3; - My = 3*ge->prev->fy3 - 6*ge->fy1 + 3*ge->fy2; - Ny = 3*(-ge->prev->fy3 + ge->fy1); - Py = ge->prev->fy3; - - /* dx/dt = Qx*t^2 + Rx*t + Sx */ - Qx = 3*(-ge->prev->fx3 + 3*(ge->fx1 - ge->fx2) + ge->fx3); - Rx = 6*(ge->prev->fx3 - 2*ge->fx1 + ge->fx2); - Sx = 3*(-ge->prev->fx3 + ge->fx1); - - /* area is integral[from 0 to 1]( y(t) * dx(t)/dt *dt) */ - area = 1./6.*(Ly*Qx) + 1./5.*(Ly*Rx + My*Qx) - + 1./4.*(Ly*Sx + My*Rx + Ny*Qx) + 1./3.*(My*Sx + Ny*Rx + Py*Qx) - + 1./2.*(Ny*Sx + Py*Rx) + Py*Sx; - - return area; -} -#endif - -/* find the value of point on the curve at the given parameter t, - * along the given axis (0 - X, 1 - Y). - */ - -static double -fcvval( - GENTRY *ge, - int axis, - double t -) -{ - double t2, mt, mt2; - - /* val = A*(1-t)^3 + 3*B*(1-t)^2*t + 3*C*(1-t)*t^2 + D*t^3 */ - t2 = t*t; - mt = 1-t; - mt2 = mt*mt; - - return ge->prev->fpoints[axis][2]*mt2*mt - + 3*(ge->fpoints[axis][0]*mt2*t + ge->fpoints[axis][1]*mt*t2) - + ge->fpoints[axis][2]*t*t2; -} - -/* - * Find ndots equally spaced dots on a curve or line and fill - * their coordinates into the dots array - */ - -static void -fsampledots( - GENTRY *ge, - double dots[][2], /* the dots to fill */ - int ndots -) -{ - int i, axis; - double t, nf, dx, d[2]; - - nf = ndots+1; - if(ge->type == GE_CURVE) { - for(i=0; i<ndots; i++) { - t = (i+1)/nf; - for(axis=0; axis<2; axis++) - dots[i][axis] = fcvval(ge, axis, t); - } - } else { /* line */ - d[0] = ge->fx3 - ge->prev->fx3; - d[1] = ge->fy3 - ge->prev->fy3; - for(i=0; i<ndots; i++) { - t = (i+1)/nf; - for(axis=0; axis<2; axis++) - dots[i][axis] = ge->prev->fpoints[axis][2] - + t*d[axis]; - } - } -} - -/* - * Allocate a structure gex_con - */ - -static void -alloc_gex_con( - GENTRY *ge -) -{ - ge->ext = (void*)calloc(1, sizeof(GEX_CON)); - if(ge->ext == 0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } -} - -/* - * Normalize a gentry for fforceconcise() : find the points that - * can be used to calculate the tangents. - */ - -static void -fnormalizege( - GENTRY *ge -) -{ - int midsame, frontsame, rearsame; - - if(ge->type == GE_LINE) { - ge->ftg = 2; - ge->rtg = -1; - } else { /* assume it's a curve */ - midsame = (fabs(ge->fx1-ge->fx2)<FEPS && fabs(ge->fy1-ge->fy2)<FEPS); - frontsame = (fabs(ge->fx1-ge->prev->fx3)<FEPS && fabs(ge->fy1-ge->prev->fy3)<FEPS); - rearsame = (fabs(ge->fx3-ge->fx2)<FEPS && fabs(ge->fy3-ge->fy2)<FEPS); - - if(midsame && (frontsame || rearsame) ) { - /* essentially a line */ - ge->ftg = 2; - ge->rtg = -1; - } else { - if(frontsame) { - ge->ftg = 1; - } else { - ge->ftg = 0; - } - if(rearsame) { - ge->rtg = 0; - } else { - ge->rtg = 1; - } - } - } -} - -/* various definition for the processing of outlines */ - -/* maximal average quadratic distance from the original curve - * (in dots) to consider the joined curve good - */ -#define CVEPS 1.5 -#define CVEPS2 (CVEPS*CVEPS) -/* squared sinus of the maximal angle that we consider a smooth joint */ -#define SMOOTHSIN2 0.25 /* 0.25==sin(30 degrees)^2 */ -/* squared line length that we consider small */ -#define SMALL_LINE2 (15.*15.) -/* how many times a curve must be bigger than a line to join, squared */ -#define TIMES_LINE2 (3.*3.) - -/* - * Normalize and analyse a gentry for fforceconcise() and fill out the gex_con - * structure - */ - -static void -fanalyzege( - GENTRY *ge -) -{ - int i, ix, iy; - double avsd2, dots[3][2 /*X,Y*/]; - GEX_CON *gex; - - gex = X_CON(ge); - memset(gex, 0, sizeof *gex); - - gex->len2 = 0; - for(i=0; i<2; i++) { - avsd2 = gex->d[i] = ge->fpoints[i][2] - ge->prev->fpoints[i][2]; - gex->len2 += avsd2*avsd2; - } - gex->sin2 = fjointsin2(ge, ge->frwd); - if(ge->type == GE_CURVE) { - ge->dir = fgetcvdir(ge); - for(i=0; i<2; i++) { - dots[0][i] = ge->prev->fpoints[i][2]; - dots[1][i] = ge->fpoints[i][2]; - dots[2][i] = fcvval(ge, i, 0.5); - } - avsd2 = fdotsegdist2(dots, dots[2]); - if(avsd2 <= CVEPS2) { - gex->flags |= GEXF_FLAT; - } - } else { - ge->dir = CVDIR_FEQUAL|CVDIR_REQUAL; - gex->flags |= GEXF_FLAT; - } - if(gex->flags & GEXF_FLAT) { - if( fabs(gex->d[X]) > FEPS && fabs(gex->d[Y]) < 5. - && fabs(gex->d[Y] / gex->d[X]) < 0.2) - gex->flags |= GEXF_HOR; - else if( fabs(gex->d[Y]) > FEPS && fabs(gex->d[X]) < 5. - && fabs(gex->d[X] / gex->d[Y]) < 0.2) - gex->flags |= GEXF_VERT; - } - ix = gex->isd[X] = fsign(gex->d[X]); - iy = gex->isd[Y] = fsign(gex->d[Y]); - if(ix <= 0) { - if(iy <= 0) - gex->flags |= GEXF_QDL; - if(iy >= 0) - gex->flags |= GEXF_QUL; - if(gex->flags & GEXF_HOR) - gex->flags |= GEXF_IDQ_L; - } - if(ix >= 0) { - if(iy <= 0) - gex->flags |= GEXF_QDR; - if(iy >= 0) - gex->flags |= GEXF_QUR; - if(gex->flags & GEXF_HOR) - gex->flags |= GEXF_IDQ_R; - } - if(gex->flags & GEXF_VERT) { - if(iy <= 0) { - gex->flags |= GEXF_IDQ_U; - } else { /* supposedly there is no 0-sized entry */ - gex->flags |= GEXF_IDQ_D; - } - } -} - -/* - * Analyse a joint between this and following gentry for fforceconcise() - * and fill out the corresponding parts of the gex_con structure - * Bothe entries must be analyzed first. - */ - -static void -fanalyzejoint( - GENTRY *ge -) -{ - GENTRY *nge = ge->frwd; - GENTRY tge; - GEX_CON *gex, *ngex; - double avsd2, dots[3][2 /*X,Y*/]; - int i; - - gex = X_CON(ge); ngex = X_CON(nge); - - /* look if they can be joined honestly */ - - /* if any is flat, they should join smoothly */ - if( (gex->flags & GEXF_FLAT || ngex->flags & GEXF_FLAT) - && gex->sin2 > SMOOTHSIN2) - goto try_flatboth; - - if(ge->type == GE_LINE) { - if(nge->type == GE_LINE) { - if(gex->len2 > SMALL_LINE2 || ngex->len2 > SMALL_LINE2) - goto try_flatboth; - } else { - if(gex->len2*TIMES_LINE2 > ngex->len2) - goto try_flatboth; - } - } else if(nge->type == GE_LINE) { - if(ngex->len2*TIMES_LINE2 > gex->len2) - goto try_flatboth; - } - - /* if curve changes direction */ - if( gex->isd[X]*ngex->isd[X]<0 || gex->isd[Y]*ngex->isd[Y]<0) - goto try_idealone; - - /* if would create a zigzag */ - if( ((ge->dir&CVDIR_FRONT)-CVDIR_FEQUAL) * ((nge->dir&CVDIR_REAR)-CVDIR_REQUAL) < 0 ) - goto try_flatone; - - if( fcrossrays(ge, nge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JGOOD; - -try_flatone: - /* look if they can be joined by flatting out one of the entries */ - - /* at this point we know that the general direction of the - * gentries is OK - */ - - if( gex->flags & GEXF_FLAT ) { - tge = *ge; - tge.fx1 = tge.fx3; - tge.fy1 = tge.fy3; - fnormalizege(&tge); - if( fcrossrays(&tge, nge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JFLAT|GEXF_JFLAT1; - } - if( ngex->flags & GEXF_FLAT ) { - tge = *nge; - tge.fx2 = ge->fx3; - tge.fy2 = ge->fy3; - fnormalizege(&tge); - if( fcrossrays(ge, &tge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JFLAT|GEXF_JFLAT2; - } - -try_idealone: - /* look if one of the entries can be brought to an idealized - * horizontal or vertical position and then joined - */ - if( gex->flags & GEXF_HOR && gex->isd[X]*ngex->isd[X]>=0 ) { - tge = *ge; - tge.fx1 = tge.fx3; - tge.fy1 = ge->prev->fy3; /* force horizontal */ - fnormalizege(&tge); - if( fcrossrays(&tge, nge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JID|GEXF_JID1; - } else if( gex->flags & GEXF_VERT && gex->isd[Y]*ngex->isd[Y]>=0 ) { - tge = *ge; - tge.fx1 = ge->prev->fx3; /* force vertical */ - tge.fy1 = tge.fy3; - fnormalizege(&tge); - if( fcrossrays(&tge, nge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JID|GEXF_JID1; - } - if( ngex->flags & GEXF_HOR && gex->isd[X]*ngex->isd[X]>=0 ) { - tge = *nge; - tge.fx2 = ge->fx3; - tge.fy2 = nge->fy3; /* force horizontal */ - fnormalizege(&tge); - if( fcrossrays(ge, &tge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JID|GEXF_JID2; - } else if( ngex->flags & GEXF_VERT && gex->isd[Y]*ngex->isd[Y]>=0 ) { - tge = *nge; - tge.fx2 = nge->fx3; /* force vertical */ - tge.fy2 = ge->fy3; - fnormalizege(&tge); - if( fcrossrays(ge, &tge, NULL, NULL, NULL) ) - gex->flags |= GEXF_JID|GEXF_JID2; - } - -try_flatboth: - /* look if we can change them to one line */ - if(gex->flags & GEXF_FLAT && ngex->flags & GEXF_FLAT) { - for(i=0; i<2; i++) { - dots[0][i] = ge->prev->fpoints[i][2]; - dots[1][i] = nge->fpoints[i][2]; - dots[2][i] = ge->fpoints[i][2]; - } - if( fdotsegdist2(dots, dots[2]) <= CVEPS2) - gex->flags |= GEXF_JLINE; - } -} - -/* - * Force conciseness of one contour in the glyph, - * the contour is indicated by one entry from it. - */ - -static void -fconcisecontour( - GLYPH *g, - GENTRY *startge -) -{ -/* initial maximal number of dots to be used as reference */ -#define MAXDOTS ((NREFDOTS+1)*12) - - GENTRY *ge, *pge, *nge, *ige; - GEX_CON *gex, *pgex, *ngex, *nngex; - GENTRY tpge, tnge; - int quad, qq, i, j, ndots, maxdots; - int found[2]; - int joinmask, pflag, nflag; - struct dot_dist *dots; - double avsd2, maxd2, eps2; - double apcv[4][2]; - - if(startge->type != GE_CURVE && startge->type != GE_LINE) - return; /* probably a degenerate contour */ - - if(ISDBG(FCONCISE)) - fprintf(stderr, "processing contour 0x%p of glyph %s\n", startge, g->name); - - maxdots = MAXDOTS; - dots = (struct dot_dist *)malloc(sizeof(*dots)*maxdots); - if(dots == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - - ge = startge; - joinmask = GEXF_JGOOD; - while(1) { - restart: - gex = X_CON(ge); - if((gex->flags & GEXF_JMASK) > ((joinmask<<1)-1)) { - if(ISDBG(FCONCISE)) - fprintf(stderr, "found higher flag (%x>%x) at 0x%p\n", - gex->flags & GEXF_JMASK, ((joinmask<<1)-1), ge); - joinmask <<= 1; - startge = ge; /* have to redo the pass */ - continue; - } - if(( gex->flags & joinmask )==0) - goto next; - - /* if we happen to be in the middle of a string of - * joinable entries, find its beginning - */ - if( gex->flags & (GEXF_JCVMASK^GEXF_JID) ) - quad = gex->flags & X_CON_F(ge->frwd) & GEXF_QMASK; - else if( gex->flags & GEXF_JID2 ) - quad = gex->flags & GEXF_QFROM_IDEAL(X_CON_F(ge->frwd)) & GEXF_QMASK; - else /* must be GEXF_JID1 */ - quad = GEXF_QFROM_IDEAL(gex->flags) & X_CON_F(ge->frwd) & GEXF_QMASK; - - pge = ge; - pgex = X_CON(pge->bkwd); - - if(ISDBG(FCONCISE)) - fprintf(stderr, "ge %p prev -> 0x%p ", ge, pge); - - while(pgex->flags & GEXF_JCVMASK) { - if( !(pgex->flags & ((GEXF_JCVMASK^GEXF_JID)|GEXF_JID2)) ) - qq = GEXF_QFROM_IDEAL(pgex->flags); - else - qq = pgex->flags & GEXF_QMASK; - - if(ISDBG(FCONCISE)) - fprintf(stderr, "(%x?%x)", quad, qq); - - if( !(quad & qq) ) { - if( !(X_CON_F(pge) & (GEXF_JCVMASK^GEXF_JID)) - && pgex->flags & (GEXF_JCVMASK^GEXF_JID) ) { - /* the previos entry is definitely a better match */ - if(pge == ge) { - if(ISDBG(FCONCISE)) - fprintf(stderr, "\nprev is a better match at %p\n", pge); - startge = ge; - goto next; - } else - pge = pge->frwd; - } - break; - } - - quad &= qq; - pge = pge->bkwd; - pgex = X_CON(pge->bkwd); - if(ISDBG(FCONCISE)) - fprintf(stderr, "0x%p ", pge); - } - - /* collect as many entries for joining as possible */ - nge = ge->frwd; - ngex = X_CON(nge); - nngex = X_CON(nge->frwd); - - if(ISDBG(FCONCISE)) - fprintf(stderr, ": 0x%x\nnext -> 0x%p ", pge, nge); - - while(ngex->flags & GEXF_JCVMASK) { - if( !(ngex->flags & ((GEXF_JCVMASK^GEXF_JID)|GEXF_JID1)) ) - qq = GEXF_QFROM_IDEAL(nngex->flags); - else - qq = nngex->flags & GEXF_QMASK; - - if(ISDBG(FCONCISE)) - fprintf(stderr, "(%x?%x)", quad, qq); - if( !(quad & qq) ) { - if( !(X_CON_F(nge->bkwd) & (GEXF_JCVMASK^GEXF_JID)) - && ngex->flags & (GEXF_JCVMASK^GEXF_JID) ) { - /* the next-next entry is definitely a better match */ - if(nge == ge->frwd) { - if(ISDBG(FCONCISE)) - fprintf(stderr, "\nnext %x is a better match than %x at %p (jmask %x)\n", - ngex->flags & GEXF_JCVMASK, gex->flags & GEXF_JCVMASK, nge, joinmask); - goto next; - } else - nge = nge->bkwd; - } - break; - } - - quad &= qq; - nge = nge->frwd; - ngex = nngex; - nngex = X_CON(nge->frwd); - if(ISDBG(FCONCISE)) - fprintf(stderr, "0x%p ", nge); - } - - if(ISDBG(FCONCISE)) - fprintf(stderr, ": 0x%x\n", nge); - - /* XXX add splitting of last entries if neccessary */ - - /* make sure that all the reference dots are valid */ - for(ige = pge; ige != nge->frwd; ige = ige->frwd) { - nngex = X_CON(ige); - if( !(nngex->flags & GEXF_VDOTS) ) { - fsampledots(ige, nngex->dots, NREFDOTS); - nngex->flags |= GEXF_VDOTS; - } - } - - /* do the actual joining */ - while(1) { - pgex = X_CON(pge); - ngex = X_CON(nge->bkwd); - /* now the segments to be joined are pge...nge */ - - ndots = 0; - for(ige = pge; ige != nge->frwd; ige = ige->frwd) { - if(maxdots < ndots+(NREFDOTS+1)) { - maxdots += MAXDOTS; - dots = (struct dot_dist *)realloc((void *)dots, sizeof(*dots)*maxdots); - if(dots == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - } - nngex = X_CON(ige); - for(i=0; i<NREFDOTS; i++) { - for(j=0; j<2; j++) - dots[ndots].p[j] = nngex->dots[i][j]; - ndots++; - } - for(j=0; j<2; j++) - dots[ndots].p[j] = ige->fpoints[j][2]; - ndots++; - } - ndots--; /* the last point is not interesting */ - - tpge = *pge; - pflag = pgex->flags; - if(pflag & (GEXF_JGOOD|GEXF_JFLAT2|GEXF_JID2)) { - /* nothing */ - } else if(pflag & GEXF_JFLAT) { - tpge.fx1 = tpge.fx3; - tpge.fy1 = tpge.fy3; - } else if(pflag & GEXF_JID) { - if(pflag & GEXF_HOR) - tpge.fy1 = tpge.bkwd->fy3; - else - tpge.fx1 = tpge.bkwd->fx3; - } - - tnge = *nge; - nflag = ngex->flags; - if(nflag & (GEXF_JGOOD|GEXF_JFLAT1|GEXF_JID) - && !(nflag & GEXF_JID2)) { - /* nothing */ - } else if(nflag & GEXF_JFLAT) { - tnge.fx2 = tnge.bkwd->fx3; - tnge.fy2 = tnge.bkwd->fy3; - } else if(nflag & GEXF_JID) { - if(X_CON_F(nge) & GEXF_HOR) - tnge.fy2 = tnge.fy3; - else - tnge.fx2 = tnge.fx3; - } - - fnormalizege(&tpge); - fnormalizege(&tnge); - if( fcrossrays(&tpge, &tnge, NULL, NULL, &apcv[1]) ) { - apcv[0][X] = tpge.bkwd->fx3; - apcv[0][Y] = tpge.bkwd->fy3; - /* apcv[1] and apcv[2] were filled by fcrossrays() */ - apcv[3][X] = tnge.fx3; - apcv[3][Y] = tnge.fy3; - - /* calculate the precision depending on the smaller dimension of the curve */ - maxd2 = apcv[3][X]-apcv[0][X]; - maxd2 *= maxd2; - eps2 = apcv[3][Y]-apcv[0][Y]; - eps2 *= eps2; - if(maxd2 < eps2) - eps2 = maxd2; - eps2 *= (CVEPS2*4.) / (400.*400.); - if(eps2 < CVEPS2) - eps2 = CVEPS2; - else if(eps2 > CVEPS2*4.) - eps2 = CVEPS2*4.; - - fapproxcurve(apcv, dots, ndots); - - avsd2 = fdotcurvdist2(apcv, dots, ndots, &maxd2); - if(ISDBG(FCONCISE)) - fprintf(stderr, "avsd = %g, maxd = %g, ", sqrt(avsd2), sqrt(maxd2)); - if(avsd2 <= eps2 && maxd2 <= eps2*2.) { - /* we've guessed a curve that is close enough */ - ggoodcv++; ggoodcvdots += ndots; - - if(ISDBG(FCONCISE)) { - fprintf(stderr, "in %s joined %p-%p to ", g->name, pge, nge); - for(i=0; i<4; i++) { - fprintf(stderr, " (%g, %g)", apcv[i][X], apcv[i][Y]); - } - fprintf(stderr, " from\n"); - dumppaths(g, pge, nge); - } - for(i=0; i<3; i++) { - pge->fxn[i] = apcv[i+1][X]; - pge->fyn[i] = apcv[i+1][Y]; - } - pge->type = GE_CURVE; - ge = pge; - for(ige = pge->frwd; ; ige = pge->frwd) { - if(startge == ige) - startge = pge; - free(ige->ext); - freethisge(ige); - if(ige == nge) - break; - } - fnormalizege(ge); - if(ISDBG(FCONCISE)) { - fprintf(stderr, "normalized "); - for(i=0; i<3; i++) { - fprintf(stderr, " (%g, %g)", ge->fpoints[X][i], ge->fpoints[Y][i]); - } - fprintf(stderr, "\n"); - } - fanalyzege(ge); - fanalyzejoint(ge); - fanalyzege(ge->bkwd); - fanalyzejoint(ge->bkwd); - - /* the results of this join will have to be reconsidered */ - startge = ge = ge->frwd; - goto restart; - } else { - gbadcv++; gbadcvdots += ndots; - } - } - - /* if we're down to 2 entries then the join has failed */ - if(pge->frwd == nge) { - pgex->flags &= ~joinmask; - if(ISDBG(FCONCISE)) - fprintf(stderr, "no match\n"); - goto next; - } - - /* reduce the number of entries by dropping one at some end, - * should never drop the original ge from the range - */ - - if(nge->bkwd == ge - || pge != ge && (pgex->flags & GEXF_JCVMASK) <= (ngex->flags & GEXF_JCVMASK) ) { - pge = pge->frwd; - } else { - nge = nge->bkwd; - } - if(ISDBG(FCONCISE)) - fprintf(stderr, "next try: %p to %p\n", pge, nge); - } - -next: - ge = ge->frwd; - if(ge == startge) { - joinmask = (joinmask >> 1) & GEXF_JCVMASK; - if(joinmask == 0) - break; - } - } - - /* join flat segments into lines */ - /* here ge==startge */ - while(1) { - gex = X_CON(ge); - if( !(gex->flags & GEXF_JLINE) ) - goto next2; - - ndots = 0; - dots[ndots].p[X] = ge->fx3; - dots[ndots].p[Y] = ge->fy3; - ndots++; - - pge = ge->bkwd; - nge = ge->frwd; - - if(ISDBG(FCONCISE)) - fprintf(stderr, "joining LINE from %p-%p\n", ge, nge); - - while(pge!=nge) { - pgex = X_CON(pge); - ngex = X_CON(nge); - if(ISDBG(FCONCISE)) - fprintf(stderr, "(p=%p/%x n=0x%x/%x) ", pge, pgex->flags & GEXF_JLINE, - nge, ngex->flags & GEXF_JLINE); - if( !((pgex->flags | ngex->flags) & GEXF_JLINE) ) { - if(ISDBG(FCONCISE)) - fprintf(stderr, "(end p=%p n=%p) ", pge, nge); - break; - } - - if(maxdots < ndots+2) { - maxdots += MAXDOTS; - dots = (struct dot_dist *)realloc((void *)dots, sizeof(*dots)*maxdots); - if(dots == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - } - if( pgex->flags & GEXF_JLINE ) { - for(i=0; i<2; i++) { - apcv[0][i] = pge->bkwd->fpoints[i][2]; - apcv[1][i] = nge->fpoints[i][2]; - dots[ndots].p[i] = pge->fpoints[i][2]; - } - ndots++; - for(i=0; i<ndots; i++) { - avsd2 = fdotsegdist2(apcv, dots[i].p); - if(avsd2 > CVEPS2) - break; - } - if(i<ndots) { /* failed to join */ - if(ISDBG(FCONCISE)) - fprintf(stderr, "failed to join prev %p ", pge); - ndots--; - pgex->flags &= ~GEXF_JLINE; - } else { - pge = pge->bkwd; - if(pge == nge) { - if(ISDBG(FCONCISE)) - fprintf(stderr, "intersected at prev %p ", pge); - break; /* oops, tried to self-intersect */ - } - } - } else if(ISDBG(FCONCISE)) - fprintf(stderr, "(p=%p) ", pge); - - if( ngex->flags & GEXF_JLINE ) { - for(i=0; i<2; i++) { - apcv[0][i] = pge->fpoints[i][2]; /* pge points before the 1st segment */ - apcv[1][i] = nge->frwd->fpoints[i][2]; - dots[ndots].p[i] = nge->fpoints[i][2]; - } - ndots++; - for(i=0; i<ndots; i++) { - avsd2 = fdotsegdist2(apcv, dots[i].p); - if(avsd2 > CVEPS2) - break; - } - if(i<ndots) { /* failed to join */ - if(ISDBG(FCONCISE)) - fprintf(stderr, "failed to join next %p ", nge->frwd); - ndots--; - ngex->flags &= ~GEXF_JLINE; - } else { - nge = nge->frwd; - } - } else if(ISDBG(FCONCISE)) - fprintf(stderr, "(n=%p) ", nge); - } - - pge = pge->frwd; /* now the limits are pge...nge inclusive */ - if(pge == nge) /* a deeply perversive contour */ - break; - - if(ISDBG(FCONCISE)) { - fprintf(stderr, "\nin %s joined LINE %p-%p from\n", g->name, pge, nge); - dumppaths(g, pge, nge); - } - pge->type = GE_LINE; - for(i=0; i<2; i++) { - pge->fpoints[i][2] = nge->fpoints[i][2]; - } - fnormalizege(pge); - X_CON_F(pge) &= ~GEXF_JLINE; - - ge = pge; - for(ige = pge->frwd; ; ige = pge->frwd) { - if(startge == ige) - startge = pge; - free(ige->ext); - freethisge(ige); - if(ige == nge) - break; - } -next2: - ge = ge->frwd; - if(ge == startge) - break; - } - - free(dots); -} - -/* force conciseness: substitute 2 or more curves going in the -** same quadrant with one curve -** in floating point -*/ - -void -fforceconcise( - GLYPH * g -) -{ - - GENTRY *ge, *nge, *endge, *xge; - - assertisfloat(g, "enforcing conciseness"); - - fdelsmall(g, 0.05); - assertpath(g->entries, __FILE__, __LINE__, g->name); - - if(ISDBG(FCONCISE)) - dumppaths(g, NULL, NULL); - - /* collect more information about each gentry and their joints */ - for (ge = g->entries; ge != 0; ge = ge->next) - if (ge->type == GE_CURVE || ge->type == GE_LINE) - fnormalizege(ge); - - for (ge = g->entries; ge != 0; ge = ge->next) - if (ge->type == GE_CURVE || ge->type == GE_LINE) { - alloc_gex_con(ge); - fanalyzege(ge); - } - - /* see what we can do about joining */ - for (ge = g->entries; ge != 0; ge = ge->next) - if (ge->type == GE_CURVE || ge->type == GE_LINE) - fanalyzejoint(ge); - - /* now do the joining */ - for (ge = g->entries; ge != 0; ge = ge->next) - if(ge->type == GE_MOVE) - fconcisecontour(g, ge->next); - - for (ge = g->entries; ge != 0; ge = ge->next) - if (ge->type == GE_CURVE || ge->type == GE_LINE) - free(ge->ext); -} - -void -print_glyph( - int glyphno -) -{ - GLYPH *g; - GENTRY *ge; - int x = 0, y = 0; - int i; - int grp, lastgrp= -1; - - if(ISDBG(FCONCISE) && glyphno == 0) { - fprintf(stderr, "Guessed curves: bad %d/%d good %d/%d\n", - gbadcv, gbadcvdots, ggoodcv, ggoodcvdots); - } - - g = &glyph_list[glyphno]; - - fprintf(pfa_file, "/%s { \n", g->name); - - /* consider widths >MAXLEGALWIDTH as bugs */ - if( g->scaledwidth <= MAXLEGALWIDTH ) { - fprintf(pfa_file, "0 %d hsbw\n", g->scaledwidth); - } else { - fprintf(pfa_file, "0 1000 hsbw\n"); - WARNING_2 fprintf(stderr, "glyph %s: width %d seems to be buggy, set to 1000\n", - g->name, g->scaledwidth); - } - -#if 0 - fprintf(pfa_file, "%% contours: "); - for (i = 0; i < g->ncontours; i++) - fprintf(pfa_file, "%s(%d,%d) ", (g->contours[i].direction == DIR_OUTER ? "out" : "in"), - g->contours[i].xofmin, g->contours[i].ymin); - fprintf(pfa_file, "\n"); - - if (g->rymin < 5000) - fprintf(pfa_file, "%d lower%s\n", g->rymin, (g->flatymin ? "flat" : "curve")); - if (g->rymax > -5000) - fprintf(pfa_file, "%d upper%s\n", g->rymax, (g->flatymax ? "flat" : "curve")); -#endif - - if (g->hstems) - for (i = 0; i < g->nhs; i += 2) { - if (g->hstems[i].flags & ST_3) { - fprintf(pfa_file, "%d %d %d %d %d %d hstem3\n", - g->hstems[i].value, - g->hstems[i + 1].value - g->hstems[i].value, - g->hstems[i + 2].value, - g->hstems[i + 3].value - g->hstems[i + 2].value, - g->hstems[i + 4].value, - g->hstems[i + 5].value - g->hstems[i + 4].value - ); - i += 4; - } else { - fprintf(pfa_file, "%d %d hstem\n", g->hstems[i].value, - g->hstems[i + 1].value - g->hstems[i].value); - } - } - - if (g->vstems) - for (i = 0; i < g->nvs; i += 2) { - if (g->vstems[i].flags & ST_3) { - fprintf(pfa_file, "%d %d %d %d %d %d vstem3\n", - g->vstems[i].value, - g->vstems[i + 1].value - g->vstems[i].value, - g->vstems[i + 2].value, - g->vstems[i + 3].value - g->vstems[i + 2].value, - g->vstems[i + 4].value, - g->vstems[i + 5].value - g->vstems[i + 4].value - ); - i += 4; - } else { - fprintf(pfa_file, "%d %d vstem\n", g->vstems[i].value, - g->vstems[i + 1].value - g->vstems[i].value); - } - } - - for (ge = g->entries; ge != 0; ge = ge->next) { - if(g->nsg>0) { - grp=ge->stemid; - if(grp >= 0 && grp != lastgrp) { - fprintf(pfa_file, "%d 4 callsubr\n", grp+g->firstsubr); - lastgrp=grp; - } - } - - switch (ge->type) { - case GE_MOVE: - if (absolute) - fprintf(pfa_file, "%d %d amoveto\n", ge->ix3, ge->iy3); - else - rmoveto(ge->ix3 - x, ge->iy3 - y); - if (0) - fprintf(stderr, "Glyph %s: print moveto(%d, %d)\n", - g->name, ge->ix3, ge->iy3); - x = ge->ix3; - y = ge->iy3; - break; - case GE_LINE: - if (absolute) - fprintf(pfa_file, "%d %d alineto\n", ge->ix3, ge->iy3); - else - rlineto(ge->ix3 - x, ge->iy3 - y); - x = ge->ix3; - y = ge->iy3; - break; - case GE_CURVE: - if (absolute) - fprintf(pfa_file, "%d %d %d %d %d %d arcurveto\n", - ge->ix1, ge->iy1, ge->ix2, ge->iy2, ge->ix3, ge->iy3); - else - rrcurveto(ge->ix1 - x, ge->iy1 - y, - ge->ix2 - ge->ix1, ge->iy2 - ge->iy1, - ge->ix3 - ge->ix2, ge->iy3 - ge->iy2); - x = ge->ix3; - y = ge->iy3; - break; - case GE_PATH: - closepath(); - break; - default: - WARNING_1 fprintf(stderr, "**** Glyph %s: unknown entry type '%c'\n", - g->name, ge->type); - break; - } - } - - fprintf(pfa_file, "endchar } ND\n"); -} - -/* print the subroutines for this glyph, returns the number of them */ -int -print_glyph_subs( - int glyphno, - int startid /* start numbering subroutines from this id */ -) -{ - GLYPH *g; - int i, grp; - - g = &glyph_list[glyphno]; - - if(!hints || !subhints || g->nsg<1) - return 0; - - g->firstsubr=startid; - -#if 0 - fprintf(pfa_file, "%% %s %d\n", g->name, g->nsg); -#endif - for(grp=0; grp<g->nsg; grp++) { - fprintf(pfa_file, "dup %d {\n", startid++); - for(i= (grp==0)? 0 : g->nsbs[grp-1]; i<g->nsbs[grp]; i++) - fprintf(pfa_file, "\t%d %d %cstem\n", g->sbstems[i].low, - g->sbstems[i].high-g->sbstems[i].low, - g->sbstems[i].isvert ? 'v' : 'h'); - fprintf(pfa_file, "\treturn\n\t} NP\n"); - } - - return g->nsg; -} - -void -print_glyph_metrics( - int code, - int glyphno -) -{ - GLYPH *g; - - g = &glyph_list[glyphno]; - - if(transform) - fprintf(afm_file, "C %d ; WX %d ; N %s ; B %d %d %d %d ;\n", - code, g->scaledwidth, g->name, - iscale(g->xMin), iscale(g->yMin), iscale(g->xMax), iscale(g->yMax)); - else - fprintf(afm_file, "C %d ; WX %d ; N %s ; B %d %d %d %d ;\n", - code, g->scaledwidth, g->name, - g->xMin, g->yMin, g->xMax, g->yMax); -} - -/* - SB: - An important note about the BlueValues. - - The Adobe documentation says that the maximal width of a Blue zone - is connected to the value of BlueScale, which is by default 0.039625. - The BlueScale value defines, at which point size the overshoot - suppression be disabled. - - The formula for it that is given in the manual is: - - BlueScale=point_size/240, for a 300dpi device - - that makes us wonder what is this 240 standing for. Incidentally - 240=72*1000/300, where 72 is the relation between inches and points, - 1000 is the size of the glyph matrix, and 300dpi is the resolution of - the output device. Knowing that we can recalculate the formula for - the font size in pixels rather than points: - - BlueScale=pixel_size/1000 - - That looks a lot simpler than the original formula, does not it ? - And the limitation about the maximal width of zone also looks - a lot simpler after the transformation: - - max_width < 1000/pixel_size - - that ensures that even at the maximal pixel size when the overshoot - suppression is disabled the zone width will be less than one pixel. - This is important, failure to comply to this limit will result in - really ugly fonts (been there, done that). But knowing the formula - for the pixel width, we see that in fact we can use the maximal width - of 24, not 23 as specified in the manual. - -*/ - -#define MAXBLUEWIDTH (24) - -/* - * Find the indexes of the most frequent values - * in the hystogram, sort them in ascending order, and save which one - * was the best one (if asked). - * Returns the number of values found (may be less than maximal because - * we ignore the zero values) - */ - -#define MAXHYST (2000) /* size of the hystogram */ -#define HYSTBASE 500 - -static int -besthyst( - int *hyst, /* the hystogram */ - int base, /* the base point of the hystogram */ - int *best, /* the array for indexes of best values */ - int nbest, /* its allocated size */ - int width, /* minimal difference between indexes */ - int *bestindp /* returned top point */ -) -{ - unsigned char hused[MAXHYST / 8 + 1]; - int i, max, j, w, last = 0; - int nf = 0; - - width--; - - memset(hused, 0 , sizeof hused); - - max = 1; - for (i = 0; i < nbest && max != 0; i++) { - best[i] = 0; - max = 0; - for (j = 1; j < MAXHYST - 1; j++) { - w = hyst[j]; - - if (w > max && (hused[j>>3] & (1 << (j & 0x07))) == 0) { - best[i] = j; - max = w; - } - } - if (max != 0) { - if (max < last/2) { - /* do not pick the too low values */ - break; - } - for (j = best[i] - width; j <= best[i] + width; j++) { - if (j >= 0 && j < MAXHYST) - hused[j >> 3] |= (1 << (j & 0x07)); - } - last = max; - best[i] -= base; - nf = i + 1; - } - } - - if (bestindp) - *bestindp = best[0]; - - /* sort the indexes in ascending order */ - for (i = 0; i < nf; i++) { - for (j = i + 1; j < nf; j++) - if (best[j] < best[i]) { - w = best[i]; - best[i] = best[j]; - best[j] = w; - } - } - - return nf; -} - -/* - * Find the next best Blue zone in the hystogram. - * Return the weight of the found zone. - */ - -static int -bestblue( - short *zhyst, /* the zones hystogram */ - short *physt, /* the points hystogram */ - short *ozhyst, /* the other zones hystogram */ - int *bluetab /* where to put the found zone */ -) -{ - int i, j, w, max, ind, first, last; - - /* find the highest point in the zones hystogram */ - /* if we have a plateau, take its center */ - /* if we have multiple peaks, take the first one */ - - max = -1; - first = last = -10; - for (i = 0; i <= MAXHYST - MAXBLUEWIDTH; i++) { - w = zhyst[i]; - if (w > max) { - first = last = i; - max = w; - } else if (w == max) { - if (last == i - 1) - last = i; - } - } - ind = (first + last) / 2; - - if (max == 0) /* no zones left */ - return 0; - - /* now we reuse `first' and `last' as inclusive borders of the zone */ - first = ind; - last = ind + (MAXBLUEWIDTH - 1); - - /* our maximal width is far too big, so we try to make it narrower */ - w = max; - j = (w & 1); /* a pseudo-random bit */ - while (1) { - while (physt[first] == 0) - first++; - while (physt[last] == 0) - last--; - if (last - first < (MAXBLUEWIDTH * 2 / 3) || (max - w) * 10 > max) - break; - - if (physt[first] < physt[last] - || physt[first] == physt[last] && j) { - if (physt[first] * 20 > w) /* if weight is >5%, - * stop */ - break; - w -= physt[first]; - first++; - j = 0; - } else { - if (physt[last] * 20 > w) /* if weight is >5%, - * stop */ - break; - w -= physt[last]; - last--; - j = 1; - } - } - - /* save our zone */ - bluetab[0] = first - HYSTBASE; - bluetab[1] = last - HYSTBASE; - - /* invalidate all the zones overlapping with this one */ - /* the constant of 2 is determined by the default value of BlueFuzz */ - for (i = first - (MAXBLUEWIDTH - 1) - 2; i <= last + 2; i++) - if (i >= 0 && i < MAXHYST) { - zhyst[i] = 0; - ozhyst[i] = 0; - } - return w; -} - -/* - * Try to find the Blue Values, bounding box and italic angle - */ - -void -findblues(void) -{ - /* hystograms for upper and lower zones */ - short hystl[MAXHYST]; - short hystu[MAXHYST]; - short zuhyst[MAXHYST]; - short zlhyst[MAXHYST]; - int nchars; - int i, j, k, w, max; - GENTRY *ge; - GLYPH *g; - double ang; - - /* find the lowest and highest points of glyphs */ - /* and by the way build the values for FontBBox */ - /* and build the hystogram for the ItalicAngle */ - - /* re-use hystl for the hystogram of italic angle */ - - bbox[0] = bbox[1] = 5000; - bbox[2] = bbox[3] = -5000; - - for (i = 0; i < MAXHYST; i++) - hystl[i] = 0; - - nchars = 0; - - for (i = 0, g = glyph_list; i < numglyphs; i++, g++) { - if (g->flags & GF_USED) { - nchars++; - - g->rymin = 5000; - g->rymax = -5000; - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type == GE_LINE) { - - j = ge->iy3 - ge->prev->iy3; - k = ge->ix3 - ge->prev->ix3; - if (j > 0) - ang = atan2(-k, j) * 180.0 / M_PI; - else - ang = atan2(k, -j) * 180.0 / M_PI; - - k /= 100; - j /= 100; - if (ang > -45.0 && ang < 45.0) { - /* - * be careful to not overflow - * the counter - */ - hystl[HYSTBASE + (int) (ang * 10.0)] += (k * k + j * j) / 4; - } - if (ge->iy3 == ge->prev->iy3) { - if (ge->iy3 <= g->rymin) { - g->rymin = ge->iy3; - g->flatymin = 1; - } - if (ge->iy3 >= g->rymax) { - g->rymax = ge->iy3; - g->flatymax = 1; - } - } else { - if (ge->iy3 < g->rymin) { - g->rymin = ge->iy3; - g->flatymin = 0; - } - if (ge->iy3 > g->rymax) { - g->rymax = ge->iy3; - g->flatymax = 0; - } - } - } else if (ge->type == GE_CURVE) { - if (ge->iy3 < g->rymin) { - g->rymin = ge->iy3; - g->flatymin = 0; - } - if (ge->iy3 > g->rymax) { - g->rymax = ge->iy3; - g->flatymax = 0; - } - } - if (ge->type == GE_LINE || ge->type == GE_CURVE) { - if (ge->ix3 < bbox[0]) - bbox[0] = ge->ix3; - if (ge->ix3 > bbox[2]) - bbox[2] = ge->ix3; - if (ge->iy3 < bbox[1]) - bbox[1] = ge->iy3; - if (ge->iy3 > bbox[3]) - bbox[3] = ge->iy3; - } - } - } - } - - /* get the most popular angle */ - max = 0; - w = 0; - for (i = 0; i < MAXHYST; i++) { - if (hystl[i] > w) { - w = hystl[i]; - max = i; - } - } - ang = (double) (max - HYSTBASE) / 10.0; - WARNING_2 fprintf(stderr, "Guessed italic angle: %f\n", ang); - if (italic_angle == 0.0) - italic_angle = ang; - - /* build the hystogram of the lower points */ - for (i = 0; i < MAXHYST; i++) - hystl[i] = 0; - - for (i = 0, g = glyph_list; i < numglyphs; i++, g++) { - if ((g->flags & GF_USED) - && g->rymin + HYSTBASE >= 0 && g->rymin < MAXHYST - HYSTBASE) { - hystl[g->rymin + HYSTBASE]++; - } - } - - /* build the hystogram of the upper points */ - for (i = 0; i < MAXHYST; i++) - hystu[i] = 0; - - for (i = 0, g = glyph_list; i < numglyphs; i++, g++) { - if ((g->flags & GF_USED) - && g->rymax + HYSTBASE >= 0 && g->rymax < MAXHYST - HYSTBASE) { - hystu[g->rymax + HYSTBASE]++; - } - } - - /* build the hystogram of all the possible lower zones with max width */ - for (i = 0; i < MAXHYST; i++) - zlhyst[i] = 0; - - for (i = 0; i <= MAXHYST - MAXBLUEWIDTH; i++) { - for (j = 0; j < MAXBLUEWIDTH; j++) - zlhyst[i] += hystl[i + j]; - } - - /* build the hystogram of all the possible upper zones with max width */ - for (i = 0; i < MAXHYST; i++) - zuhyst[i] = 0; - - for (i = 0; i <= MAXHYST - MAXBLUEWIDTH; i++) { - for (j = 0; j < MAXBLUEWIDTH; j++) - zuhyst[i] += hystu[i + j]; - } - - /* find the baseline */ - w = bestblue(zlhyst, hystl, zuhyst, &bluevalues[0]); - if (0) - fprintf(stderr, "BaselineBlue zone %d%% %d...%d\n", w * 100 / nchars, - bluevalues[0], bluevalues[1]); - - if (w == 0) /* no baseline, something weird */ - return; - - /* find the upper zones */ - for (nblues = 2; nblues < 14; nblues += 2) { - w = bestblue(zuhyst, hystu, zlhyst, &bluevalues[nblues]); - - if (0) - fprintf(stderr, "Blue zone %d%% %d...%d\n", w * 100 / nchars, - bluevalues[nblues], bluevalues[nblues+1]); - - if (w * 20 < nchars) - break; /* don't save this zone */ - } - - /* find the lower zones */ - for (notherb = 0; notherb < 10; notherb += 2) { - w = bestblue(zlhyst, hystl, zuhyst, &otherblues[notherb]); - - if (0) - fprintf(stderr, "OtherBlue zone %d%% %d...%d\n", w * 100 / nchars, - otherblues[notherb], otherblues[notherb+1]); - - - if (w * 20 < nchars) - break; /* don't save this zone */ - } - -} - -/* - * Find the actual width of the glyph and modify the - * description to reflect it. Not guaranteed to do - * any good, may make character spacing too wide. - */ - -void -docorrectwidth(void) -{ - int i; - GENTRY *ge; - GLYPH *g; - int xmin, xmax; - int maxwidth, minsp; - - /* enforce this minimal spacing, - * we limit the amount of the enforced spacing to avoid - * spacing the bold wonts too widely - */ - minsp = (stdhw>60 || stdhw<10)? 60 : stdhw; - - for (i = 0, g = glyph_list; i < numglyphs; i++, g++) { - g->oldwidth=g->scaledwidth; /* save the old width, will need for AFM */ - - if (correctwidth && g->flags & GF_USED) { - xmin = 5000; - xmax = -5000; - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type != GE_LINE && ge->type != GE_CURVE) - continue; - - if (ge->ix3 <= xmin) { - xmin = ge->ix3; - } - if (ge->ix3 >= xmax) { - xmax = ge->ix3; - } - } - - maxwidth=xmax+minsp; - if( g->scaledwidth < maxwidth ) { - g->scaledwidth = maxwidth; - WARNING_3 fprintf(stderr, "glyph %s: extended from %d to %d\n", - g->name, g->oldwidth, g->scaledwidth ); - } - } - } - -} - -/* - * Try to find the typical stem widths - */ - -void -stemstatistics(void) -{ -#define MINDIST 10 /* minimal distance between the widths */ - int hyst[MAXHYST+MINDIST*2]; - int best[12]; - int i, j, k, w; - int nchars; - int ns; - STEM *s; - GLYPH *g; - - /* start with typical stem width */ - - nchars=0; - - /* build the hystogram of horizontal stem widths */ - memset(hyst, 0, sizeof hyst); - - for (i = 0, g = glyph_list; i < numglyphs; i++, g++) { - if (g->flags & GF_USED) { - nchars++; - s = g->hstems; - for (j = 0; j < g->nhs; j += 2) { - if ((s[j].flags | s[j + 1].flags) & ST_END) - continue; - w = s[j + 1].value - s[j].value+1; - if(w==20) /* split stems should not be counted */ - continue; - if (w > 0 && w < MAXHYST - 1) { - /* - * handle some fuzz present in - * converted fonts - */ - hyst[w+MINDIST] += MINDIST-1; - for(k=1; k<MINDIST-1; k++) { - hyst[w+MINDIST + k] += MINDIST-1-k; - hyst[w+MINDIST - k] += MINDIST-1-k; - } - } - } - } - } - - /* find 12 most frequent values */ - ns = besthyst(hyst+MINDIST, 0, best, 12, MINDIST, &stdhw); - - /* store data in stemsnaph */ - for (i = 0; i < ns; i++) - stemsnaph[i] = best[i]; - if (ns < 12) - stemsnaph[ns] = 0; - - /* build the hystogram of vertical stem widths */ - memset(hyst, 0, sizeof hyst); - - for (i = 0, g = glyph_list; i < numglyphs; i++, g++) { - if (g->flags & GF_USED) { - s = g->vstems; - for (j = 0; j < g->nvs; j += 2) { - if ((s[j].flags | s[j + 1].flags) & ST_END) - continue; - w = s[j + 1].value - s[j].value+1; - if (w > 0 && w < MAXHYST - 1) { - /* - * handle some fuzz present in - * converted fonts - */ - hyst[w+MINDIST] += MINDIST-1; - for(k=1; k<MINDIST-1; k++) { - hyst[w+MINDIST + k] += MINDIST-1-k; - hyst[w+MINDIST - k] += MINDIST-1-k; - } - } - } - } - } - - /* find 12 most frequent values */ - ns = besthyst(hyst+MINDIST, 0, best, 12, MINDIST, &stdvw); - - /* store data in stemsnaph */ - for (i = 0; i < ns; i++) - stemsnapv[i] = best[i]; - if (ns < 12) - stemsnapv[ns] = 0; - -#undef MINDIST -} - -/* - * SB - * A funny thing: TTF paths are going in reverse direction compared - * to Type1. So after all (because the rest of logic uses TTF - * path directions) we have to reverse the paths. - * - * It was a big headache to discover that. - */ - -/* works on both int and float paths */ - -void -reversepathsfromto( - GENTRY * from, - GENTRY * to -) -{ - GENTRY *ge, *nge, *pge; - GENTRY *cur, *next; - int i, n, ilast[2]; - double flast[2], f; - - for (ge = from; ge != 0 && ge != to; ge = ge->next) { - if(ge->type == GE_LINE || ge->type == GE_CURVE) { - if (ISDBG(REVERSAL)) - fprintf(stderr, "reverse path 0x%x <- 0x%x, 0x%x\n", ge, ge->prev, ge->bkwd); - - /* cut out the path itself */ - pge = ge->prev; /* GE_MOVE */ - if (pge == 0) { - fprintf(stderr, "**! No MOVE before line !!! Fatal. ****\n"); - exit(1); - } - nge = ge->bkwd->next; /* GE_PATH */ - pge->next = nge; - nge->prev = pge; - ge->bkwd->next = 0; /* mark end of chain */ - - /* remember the starting point */ - if(ge->flags & GEF_FLOAT) { - flast[0] = pge->fx3; - flast[1] = pge->fy3; - } else { - ilast[0] = pge->ix3; - ilast[1] = pge->iy3; - } - - /* then reinsert them in backwards order */ - for(cur = ge; cur != 0; cur = next ) { - next = cur->next; /* or addgeafter() will screw it up */ - if(cur->flags & GEF_FLOAT) { - for(i=0; i<2; i++) { - /* reverse the direction of path element */ - f = cur->fpoints[i][0]; - cur->fpoints[i][0] = cur->fpoints[i][1]; - cur->fpoints[i][1] = f; - f = flast[i]; - flast[i] = cur->fpoints[i][2]; - cur->fpoints[i][2] = f; - } - } else { - for(i=0; i<2; i++) { - /* reverse the direction of path element */ - n = cur->ipoints[i][0]; - cur->ipoints[i][0] = cur->ipoints[i][1]; - cur->ipoints[i][1] = n; - n = ilast[i]; - ilast[i] = cur->ipoints[i][2]; - cur->ipoints[i][2] = n; - } - } - addgeafter(pge, cur); - } - - /* restore the starting point */ - if(ge->flags & GEF_FLOAT) { - pge->fx3 = flast[0]; - pge->fy3 = flast[1]; - } else { - pge->ix3 = ilast[0]; - pge->iy3 = ilast[1]; - } - - ge = nge; - } - - } -} - -void -reversepaths( - GLYPH * g -) -{ - reversepathsfromto(g->entries, NULL); -} - -/* add a kerning pair information, scales the value */ - -void -addkernpair( - unsigned id1, - unsigned id2, - int unscval -) -{ - static unsigned char *bits = 0; - static int lastid; - GLYPH *g = &glyph_list[id1]; - int i, n; - struct kern *p; - - if(unscval == 0 || id1 >= numglyphs || id2 >= numglyphs) - return; - - if( (glyph_list[id1].flags & GF_USED)==0 - || (glyph_list[id2].flags & GF_USED)==0 ) - return; - - if(bits == 0) { - bits = calloc( BITMAP_BYTES(numglyphs), 1); - if (bits == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - lastid = id1; - } - - if(lastid != id1) { - /* refill the bitmap cache */ - memset(bits, 0,BITMAP_BYTES(numglyphs)); - p = g->kern; - for(i=g->kerncount; i>0; i--) { - n = (p++)->id; - SET_BITMAP(bits, n); - } - lastid = id1; - } - - if(IS_BITMAP(bits, id2)) - return; /* duplicate */ - - if(g->kerncount <= g->kernalloc) { - g->kernalloc += 8; - p = realloc(g->kern, sizeof(struct kern) * g->kernalloc); - if(p == 0) { - fprintf (stderr, "** realloc failed, kerning data will be incomplete\n"); - } - g->kern = p; - } - - SET_BITMAP(bits, id2); - p = &g->kern[g->kerncount]; - p->id = id2; - p->val = iscale(unscval) - (g->scaledwidth - g->oldwidth); - g->kerncount++; - kerning_pairs++; -} - -/* print out the kerning information */ - -void -print_kerning( - FILE *afm_file -) -{ - int i, j, n; - GLYPH *g; - struct kern *p; - - if( kerning_pairs == 0 ) - return; - - fprintf(afm_file, "StartKernData\n"); - fprintf(afm_file, "StartKernPairs %hd\n", kerning_pairs); - - for(i=0; i<numglyphs; i++) { - g = &glyph_list[i]; - if( (g->flags & GF_USED) ==0) - continue; - p = g->kern; - for(j=g->kerncount; j>0; j--, p++) { - fprintf(afm_file, "KPX %s %s %d\n", g->name, - glyph_list[ p->id ].name, p->val ); - } - } - - fprintf(afm_file, "EndKernPairs\n"); - fprintf(afm_file, "EndKernData\n"); -} - - -#if 0 - -/* -** This function is commented out because the information -** collected by it is not used anywhere else yet. Now -** it only collects the directions of contours. And the -** direction of contours gets fixed already in draw_glyf(). -** -*********************************************** -** -** Here we expect that the paths are already closed. -** We also expect that the contours do not intersect -** and that curves doesn't cross any border of quadrant. -** -** Find which contours go inside which and what is -** their proper direction. Then fix the direction -** to make it right. -** -*/ - -#define MAXCONT 1000 - -void -fixcontours( - GLYPH * g -) -{ - CONTOUR cont[MAXCONT]; - short ymax[MAXCONT]; /* the highest point */ - short xofmax[MAXCONT]; /* X-coordinate of any point - * at ymax */ - short ymin[MAXCONT]; /* the lowest point */ - short xofmin[MAXCONT]; /* X-coordinate of any point - * at ymin */ - short count[MAXCONT]; /* count of lines */ - char dir[MAXCONT]; /* in which direction they must go */ - GENTRY *start[MAXCONT], *minptr[MAXCONT], *maxptr[MAXCONT]; - int ncont; - int i; - int dx1, dy1, dx2, dy2; - GENTRY *ge, *nge; - - /* find the contours and their most upper/lower points */ - ncont = 0; - ymax[0] = -5000; - ymin[0] = 5000; - for (ge = g->entries; ge != 0; ge = ge->next) { - if (ge->type == GE_LINE || ge->type == GE_CURVE) { - if (ge->iy3 > ymax[ncont]) { - ymax[ncont] = ge->iy3; - xofmax[ncont] = ge->ix3; - maxptr[ncont] = ge; - } - if (ge->iy3 < ymin[ncont]) { - ymin[ncont] = ge->iy3; - xofmin[ncont] = ge->ix3; - minptr[ncont] = ge; - } - } - if (ge->frwd != ge->next) { - start[ncont++] = ge->frwd; - ymax[ncont] = -5000; - ymin[ncont] = 5000; - } - } - - /* determine the directions of contours */ - for (i = 0; i < ncont; i++) { - ge = minptr[i]; - nge = ge->frwd; - - if (ge->type == GE_CURVE) { - dx1 = ge->ix3 - ge->ix2; - dy1 = ge->iy3 - ge->iy2; - - if (dx1 == 0 && dy1 == 0) { /* a pathological case */ - dx1 = ge->ix3 - ge->ix1; - dy1 = ge->iy3 - ge->iy1; - } - if (dx1 == 0 && dy1 == 0) { /* a more pathological - * case */ - dx1 = ge->ix3 - ge->prev->ix3; - dy1 = ge->iy3 - ge->prev->iy3; - } - } else { - dx1 = ge->ix3 - ge->prev->ix3; - dy1 = ge->iy3 - ge->prev->iy3; - } - if (nge->type == GE_CURVE) { - dx2 = ge->ix3 - nge->ix1; - dy2 = ge->iy3 - nge->iy1; - if (dx1 == 0 && dy1 == 0) { /* a pathological case */ - dx2 = ge->ix3 - nge->ix2; - dy2 = ge->iy3 - nge->iy2; - } - if (dx1 == 0 && dy1 == 0) { /* a more pathological - * case */ - dx2 = ge->ix3 - nge->ix3; - dy2 = ge->iy3 - nge->iy3; - } - } else { - dx2 = ge->ix3 - nge->ix3; - dy2 = ge->iy3 - nge->iy3; - } - - /* compare angles */ - cont[i].direction = DIR_INNER; - if (dy1 == 0) { - if (dx1 < 0) - cont[i].direction = DIR_OUTER; - } else if (dy2 == 0) { - if (dx2 > 0) - cont[i].direction = DIR_OUTER; - } else if (dx2 * dy1 < dx1 * dy2) - cont[i].direction = DIR_OUTER; - - cont[i].ymin = ymin[i]; - cont[i].xofmin = xofmin[i]; - } - - /* save the information that may be needed further */ - g->ncontours = ncont; - if (ncont > 0) { - g->contours = malloc(sizeof(CONTOUR) * ncont); - if (g->contours == 0) { - fprintf(stderr, "***** Memory allocation error *****\n"); - exit(255); - } - memcpy(g->contours, cont, sizeof(CONTOUR) * ncont); - } -} - -#endif - -/* - * - */ - diff --git a/Build/source/texk/ttf2pt1/pt1.h b/Build/source/texk/ttf2pt1/pt1.h deleted file mode 100644 index c5b22741b91..00000000000 --- a/Build/source/texk/ttf2pt1/pt1.h +++ /dev/null @@ -1,242 +0,0 @@ -/* - * see COPYRIGHT - */ - - -/* glyph entry, one drawing command */ -typedef struct gentry { - /* this list links all GENTRYs of a GLYPH sequentially */ - struct gentry *next; /* double linked list */ - struct gentry *prev; - - /* this list links all GENTRYs of one contour - - * of types GE_LINE and GE_CURVE only - * bkwd is also reused: in the very first entry (normally - * of type GE_MOVE) it points to g->entries - */ - struct gentry *cntr[2]; /* double-linked circular list */ -/* convenience handles */ -#define bkwd cntr[0] -#define frwd cntr[1] - - /* various extended structures used at some stage of transformation */ - void *ext; - - union { - struct { - int val[2][3]; /* integer values */ - } i; - struct { - double val[2][3]; /* floating values */ - } f; - } points; /* absolute values, NOT deltas */ -/* convenience handles */ -#define ipoints points.i.val -#define fpoints points.f.val -#define ixn ipoints[0] -#define iyn ipoints[1] -#define fxn fpoints[0] -#define fyn fpoints[1] -#define ix1 ixn[0] -#define ix2 ixn[1] -#define ix3 ixn[2] -#define iy1 iyn[0] -#define iy2 iyn[1] -#define iy3 iyn[2] -#define fx1 fxn[0] -#define fx2 fxn[1] -#define fx3 fxn[2] -#define fy1 fyn[0] -#define fy2 fyn[1] -#define fy3 fyn[2] - - char flags; -#define GEF_FLOAT 0x02 /* entry contains floating point data */ -#define GEF_LINE 0x04 /* entry looks like a line even if it's a curve */ - - unsigned char dir; /* used to temporarily store the values for - * the directions of the ends of curves */ -/* front end */ -#define CVDIR_FUP 0x02 /* goes over the line connecting the ends */ -#define CVDIR_FEQUAL 0x01 /* coincides with the line connecting the - * ends */ -#define CVDIR_FDOWN 0x00 /* goes under the line connecting the ends */ -#define CVDIR_FRONT 0x0F /* mask of all front directions */ -/* rear end */ -#define CVDIR_RSAME 0x30 /* is the same as for the front end */ -#define CVDIR_RUP 0x20 /* goes over the line connecting the ends */ -#define CVDIR_REQUAL 0x10 /* coincides with the line connecting the - * ends */ -#define CVDIR_RDOWN 0x00 /* goes under the line connecting the ends */ -#define CVDIR_REAR 0xF0 /* mask of all rear directions */ - - signed char stemid; /* connection to the substituted stem group */ - char type; -#define GE_HSBW 'B' -#define GE_MOVE 'M' -#define GE_LINE 'L' -#define GE_CURVE 'C' -#define GE_PATH 'P' - - /* indexes of the points to be used for calculation of the tangents */ - signed char ftg; /* front tangent */ - signed char rtg; /* rear tangent, -1 means "idx 2 of the previous entry" */ -} GENTRY; - -/* stem structure, describes one [hv]stem */ -/* acually, it describes one border of a stem */ -/* the whole stem is a pair of these structures */ - -typedef struct stem { - short value; /* value of X or Y coordinate */ - short origin; /* point of origin for curve stems */ - GENTRY *ge; /* entry that has (value, origin) as its first dot */ - /* also for all the stems the couple (value, origin) - * is used to determine whether a stem is relevant for a - * line, it's considered revelant if this tuple is - * equal to any of the ends of the line. - * ge is also used to resolve ambiguity if there is more than - * one line going through certain pointi, it is used to - * distinguish these lines. - */ - - short from, to; /* values of other coordinate between - * which this stem is valid */ - - short flags; - /* ordering of ST_END, ST_FLAT, ST_ZONE is IMPORTANT for sorting */ -#define ST_END 0x01 /* end of line, lowest priority */ -#define ST_FLAT 0x02 /* stem is defined by a flat line, not a - * curve */ -#define ST_ZONE 0x04 /* pseudo-stem, the limit of a blue zone */ -#define ST_UP 0x08 /* the black area is to up or right from - * value */ -#define ST_3 0x20 /* first stem of [hv]stem3 */ -#define ST_BLUE 0x40 /* stem is in blue zone */ -#define ST_TOPZONE 0x80 /* 1 - top zone, 0 - bottom zone */ -#define ST_VERT 0x100 /* vertical stem (used in substitutions) */ -} STEM; - -#define MAX_STEMS 2000 /* we can't have more stems than path - * elements (or hope so) */ -#define NSTEMGRP 50 /* maximal number of the substituted stem groups */ - -/* structure for economical representation of the - * substituted stems - */ - -typedef struct stembounds { - short low; /* low bound */ - short high; /* high bound */ - char isvert; /* 1 - vertical, 0 - horizontal */ - char already; /* temp. flag: is aleready included */ -} STEMBOUNDS; - -struct kern { - unsigned id; /* ID of the second glyph */ - int val; /* kerning value */ -}; - -typedef struct contour { - short ymin, xofmin; - short inside; /* inside which contour */ - char direction; -#define DIR_OUTER 1 -#define DIR_INNER 0 -} CONTOUR; - -typedef struct glyph { - int char_no;/* Encoding of glyph */ - int orig_code;/* code of glyph in the font's original encoding */ - char *name; /* Postscript name of glyph */ - int xMin, yMin, xMax, yMax; /* values from TTF dictionary */ - int lsb; /* left sidebearing */ - int ttf_pathlen; /* total length of TTF paths */ - short width; - short flags; -#define GF_USED 0x0001 /* whether is this glyph used in T1 font */ -#define GF_FLOAT 0x0002 /* thys glyph contains floating point entries */ - - GENTRY *entries;/* doube linked list of entries */ - GENTRY *lastentry; /* the last inserted entry */ - GENTRY *path; /* beggining of the last path */ - int oldwidth; /* actually also scaled */ - int scaledwidth; -#define MAXLEGALWIDTH 10000 - - struct kern *kern; /* kerning data */ - int kerncount; /* number of kerning pairs */ - int kernalloc; /* for how many pairs we have space */ - - STEM *hstems; /* global horiz. and vert. stems */ - STEM *vstems; - int nhs, nvs; /* numbers of stems */ - - STEMBOUNDS *sbstems; /* substituted stems for all the groups */ - short *nsbs; /* indexes of the group ends in the common array */ - int nsg; /* actual number of the stem groups */ - int firstsubr; /* first substistuted stems subroutine number */ - - CONTOUR *contours; /* it is not used now */ - int ncontours; - - int rymin, rymax; /* real values */ - /* do we have flat surfaces on top/bottom */ - char flatymin, flatymax; - -} GLYPH; - -extern int stdhw, stdvw; /* dominant stems widths */ -extern int stemsnaph[12], stemsnapv[12]; /* most typical stem width */ - -extern int bluevalues[14]; -extern int nblues; -extern int otherblues[10]; -extern int notherb; -extern int bbox[4]; /* the FontBBox array */ -extern double italic_angle; - -extern GLYPH *glyph_list; -extern int encoding[]; /* inverse of glyph[].char_no */ - -/* prototypes of functions */ -void rmoveto( int dx, int dy); -void rlineto( int dx, int dy); -void rrcurveto( int dx1, int dy1, int dx2, int dy2, int dx3, int dy3); -void assertpath( GENTRY * from, char *file, int line, char *name); - -void fg_rmoveto( GLYPH * g, double x, double y); -void ig_rmoveto( GLYPH * g, int x, int y); -void fg_rlineto( GLYPH * g, double x, double y); -void ig_rlineto( GLYPH * g, int x, int y); -void fg_rrcurveto( GLYPH * g, double x1, double y1, - double x2, double y2, double x3, double y3); -void ig_rrcurveto( GLYPH * g, int x1, int y1, - int x2, int y2, int x3, int y3); -void g_closepath( GLYPH * g); - -void pathtoint( GLYPH *g); -void ffixquadrants( GLYPH *g); -void flattencurves( GLYPH * g); -int checkcv( GENTRY * ge, int dx, int dy); -void iclosepaths( GLYPH * g); -void fclosepaths( GLYPH * g); -void smoothjoints( GLYPH * g); -void buildstems( GLYPH * g); -void fstraighten( GLYPH * g); -void istraighten( GLYPH * g, int zigonly); -void isplitzigzags( GLYPH * g); -void fsplitzigzags( GLYPH * g); -void fforceconcise( GLYPH * g); -void iforceconcise( GLYPH * g); -void reversepathsfromto( GENTRY * from, GENTRY * to); -void reversepaths( GLYPH * g); -void dumppaths( GLYPH * g, GENTRY *start, GENTRY *end); -void print_glyph( int glyphno); -int print_glyph_subs( int glyphno, int startid); -void print_glyph_metrics( int code, int glyphno); -void findblues(void); -void stemstatistics(void); -void docorrectwidth(void); -void addkernpair( unsigned id1, unsigned id2, int unscval); -void print_kerning( FILE *afm_file); diff --git a/Build/source/texk/ttf2pt1/runt1asm.c b/Build/source/texk/ttf2pt1/runt1asm.c deleted file mode 100644 index 58c4cad8c03..00000000000 --- a/Build/source/texk/ttf2pt1/runt1asm.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Wrap-around code to either compile in t1asm or call it externally - * - * Copyright (C) 2000 by Sergey Babkin - * Copyright (C) 2000 by The TTF2PT1 Project - * - * See COPYRIGHT for full license - */ - -#ifdef EXTERNAL_T1ASM - -#include <stdio.h> -#include <errno.h> - -FILE *ifp; -FILE *ofp; - -int -runt1asm( - int pfbflag -) -{ - char *cmd; - int id, od; - int error; - - /* first make a copy in case some of then is already stdin/stdout */ - if(( id = dup(fileno(ifp)) )<0) { - perror("** Re-opening input file for t1asm"); - exit(1); - } - if(( od = dup(fileno(ofp)) )<0) { - perror("** Re-opening output file for t1asm"); - exit(1); - } - fclose(ifp); fclose(ofp); - close(0); - if(( dup(id) )!=0) { - perror("** Re-directing input file for t1asm"); - exit(1); - } - close(1); - if(( dup(od) )!=1) { - perror("** Re-directing output file for t1asm"); - exit(1); - } - close(id); close(od); - - if(pfbflag) - error = execlp("t1asm", "t1asm", "-b", NULL); - else - error = execlp("t1asm", "t1asm", NULL); - - perror("** Calling t1asm"); - - exit(1); -} - -#else -# include "t1asm.c" -#endif diff --git a/Build/source/texk/ttf2pt1/scripts/convert b/Build/source/texk/ttf2pt1/scripts/convert deleted file mode 100644 index 14c1868c5d8..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/convert +++ /dev/null @@ -1,367 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 1998-2000 -# Sergey A. Babkin. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@bellatlantic.net) -# - -# Use : convert [cfgfile] - -# Convert TTF fonts from source directory to Type1 fonts in the destination -# directory, converted to the specified encodings. Also generate the -# fonts.scale, fonts.dir and fonts.alias files in the destination directory. - -# clean some variables so that they won't be inherited from environment - -ENCDIR= -MAPDIR= - -# path to the configuration file - -if [ $# -eq 1 ] -then - CFGFILE=$1 -else - CFGFILE=`pwd`/convert.cfg -fi - -# these setting would be edited during installation - -TTF2PT1_BINDIR= -TTF2PT1_LIBXDIR= -TTF2PT1_SHAREDIR= - -[ -z "$TTF2PT1_BINDIR" ] && { - TTF2PT1_BINDIR=`pwd`/.. -} -[ -z "$TTF2PT1_LIBXDIR" ] && { - TTF2PT1_LIBXDIR=`pwd`/.. -} -[ -z "$TTF2PT1_SHAREDIR" ] && { - TTF2PT1_SHAREDIR=`pwd`/.. -} - -# directory from where we are started - -RUNDIR=`pwd` - -# paths to various utilities - -T1ASM=$TTF2PT1_LIBXDIR/t1asm -[ -f $T1ASM -a -x $T1ASM ] || { - # if it's not in libxdir, use whatever t1asm the system provides - T1ASM=t1asm -} -TTF2PT1=$TTF2PT1_BINDIR/ttf2pt1 -TRANS=$TTF2PT1_SHAREDIR/scripts/trans -T1FDIR=$TTF2PT1_SHAREDIR/scripts/t1fdir -FORCEISO=$TTF2PT1_SHAREDIR/scripts/forceiso -X2GS=$TTF2PT1_SHAREDIR/scripts/x2gs -SUFFIX="pfa" - -MYSELF=convert - -# include the configuration - -if [ -r $CFGFILE ] -then { - . $CFGFILE -} else { - echo " -Can't find the configuration file - $CFGFILE -Please look at the sample file convert.cfg.sample, -copy it to convert.cfg and modify for -you actual configuration." >&2 - exit 1 -} fi - -# path to the directory with descriptions of encodings -[ -z "$ENCDIR" ] && { - ENCDIR=$TTF2PT1_SHAREDIR/encodings -} - -# directory with the external Unicode maps -[ -z "$MAPDIR" ] && { - MAPDIR=$TTF2PT1_SHAREDIR/maps -} - -LOG=$DSTDIR/convert.log - -# configure the ttf2pt1 options from our options - -# artefact of backwards-compatibility with .cfg -[ -z "$CORRECTWIDTH" -a YES != "$DONTCORRECTWIDTH" ] && { - TTF2PT1="$TTF2PT1 -OW" -} -[ YES = "$CORRECTWIDTH" ] && { - TTF2PT1="$TTF2PT1 -OW" -} - -[ YES != "$HINTSUBST" ] && { - TTF2PT1="$TTF2PT1 -Ou" # meaning changed past 3.22 -} - -[ YES = "$ALLGLYPHS" -a YES = "$ENFORCEISO" ] && { - echo "$MYSELF: options ALLGLYPHS and ENFORCEISO are mutually exclusive" >&2 - exit 1 -} - -[ YES = "$ALLGLYPHS" ] && { - TTF2PT1="$TTF2PT1 -a" -} - -[ YES = "$GENUID" ] && { - TTF2PT1="$TTF2PT1 -uA" -} - -[ YES != "$ENFORCEISO" ] && { - FORCEISO=cat -} - -[ YES = "$CREATEPFB" ] && { - T1ASM="$T1ASM -b" - SUFFIX="pfb" -} - -# parse the information about the source files - -eval "`echo \"$SRCDIRS\" | awk ' - BEGIN { n=0; } - /^ *$/ { next; } - { - if(n>9) { - printf(\"echo \\\"Only 9 encodings are supported at once!\\\" >&2\n\"); - printf(\"exit 1\\n\"); - } else { - printf(\"SRCDIR%d=%s\n\",n,$1); - printf(\"SRCLANG%d=%s\n\",n,$2); - printf(\"SRCENC%d=%s\n\",n,$3); - printf(\"SRCMAP%d=%s\n\",n,$4); - n++; - } - }'`" - -# check whether we have the directories - -mkdir $DSTDIR 2>/dev/null >/dev/null -[ -d $DSTDIR -a -r $DSTDIR -a -w $DSTDIR -a -x $DSTDIR ] || { - echo "$MYSELF: can't access the directory $DSTDIR" >&2 - exit 1 -} - -# go to our destination directory - -cd $DSTDIR || { - echo "$MYSELF: can't chdir to $DSTDIR" >&2 - exit 1 -} - -rm -f ./* 2>/dev/null ->$LOG - -for dirno in 0 1 2 3 4 5 6 7 8 9 -do { - - SRCDIR=`eval "echo \\\$SRCDIR$dirno"` - SRCLANG=`eval "echo \\\$SRCLANG$dirno"` - SRCENC=`eval "echo \\\$SRCENC$dirno"` - SRCMAP=`eval "echo \\\$SRCMAP$dirno"` - DSTENC=`eval "echo \\\$DSTENC$SRCLANG"` - - echo $SRCDIR - echo $SRCENC - - [ -z "$SRCDIR" ] && break; - - [ "`ls $SRCDIR/*.[tT][tT][fF] 2>/dev/null |wc -l`" -gt 0 ] || { - echo "$MYSELF: no TTF files in $SRCDIR" >&2 - exit 1 - } - - # check whether we have the encoding tables - - [ -n "$SRCENC" ] || { - echo "$MYSELF: you must specify some source encoding" >&2 - exit 1 - } - - [ unknown = "$SRCLANG" -o -n "$DSTENC" ] || { - echo "$MYSELF: you must specify some destination encodings" >&2 - exit 1 - } - - # handle aliases of the destination encodings - - XDSTENC= - DSTALIAS= - - [ -r $ENCDIR/$SRCLANG/encodings.alias ] && { - for i in $DSTENC - do { - TO=`awk '$1=="'$i'" { print $2; }' <$ENCDIR/$SRCLANG/encodings.alias` - if [ -n "$TO" ] - then { - [ -f $ENCDIR/$SRCLANG/$i.tbl -a -r $ENCDIR/$SRCLANG/$i.tbl ] && { - echo "WARNING: $SRCLANG encoding $i found as both table and alias" >&2 - echo "WARNING: The alias takes precedence" >&2 - } - DSTALIAS="$TO $i -$DSTALIAS" - XDSTENC="$TO -$XDSTENC" - } else { - XDSTENC="$i -$XDSTENC" - } fi - } done - DSTENC=`echo "$XDSTENC" | sort -u | tr ' -' ' '` - } - - [ unknown != "$SRCLANG" ] && { - for i in $SRCENC $DSTENC - do { - [ -f $ENCDIR/$SRCLANG/$i.tbl -a -r $ENCDIR/$SRCLANG/$i.tbl ] || { - echo "$MYSELF: can't read $ENCDIR/$SRCLANG/$i.tbl" >&2 - exit 1 - } - } done - } - - # OK convert the files - - for file in $SRCDIR/*.[tT][tT][fF] - do { - name=`echo $file | tr A-Z a-z` - name=`basename $name .ttf` - - echo "Converting $name" - - # generate the assembler code - - echo "******* $name -> t1a ************" >>$LOG - - if [ -n "$SRCMAP" ] - then { - $TTF2PT1 -L $MAPDIR/$SRCMAP $file ./$name.$SRCENC 2>>$LOG - } else { - $TTF2PT1 -l $SRCLANG $file ./$name.$SRCENC 2>>$LOG - } fi - - [ -s ./$name.$SRCENC.t1a ] || { - echo "$MYSELF: can't generate Type1 assembler code for $name" >&2 - continue; - } - - [ -s ./$name.$SRCENC.afm ] || { - echo "$MYSELF: can't generate AFM metrics file for $name" >&2 - continue; - } - - mv ./$name.$SRCENC.afm ./$name.$SRCENC.xafm - - psname=`$T1FDIR -g $FOUNDRY " " -f ./$name.$SRCENC.t1a \ - | awk '{print substr($1,2);}'` - - # now for each destination encoding generate a .pfa/b file - # and record for fonts.scale - - if [ unknown != "$SRCLANG" ] - then { - for enc in $DSTENC - do { - echo "******* $name -> $enc ************" >>$LOG - - sed 's|^\/FontName.*$|/FontName /'$psname$enc' def|' <./$name.$SRCENC.t1a \ - | $TRANS $ENCDIR/$SRCLANG/$SRCENC.tbl $ENCDIR/$SRCLANG/$enc.tbl \ - | $FORCEISO | $T1ASM >./$name.$enc.$SUFFIX - [ -s ./$name.$enc.$SUFFIX ] || { - echo "$MYSELF: can't convert/assemble Type1 file for $name.$enc" >&2 - continue; - } - - sed 's|^FontName.*$|FontName '$psname$enc'|' <./$name.$SRCENC.xafm \ - | $TRANS $ENCDIR/$SRCLANG/$SRCENC.tbl $ENCDIR/$SRCLANG/$enc.tbl \ - | uniq | $FORCEISO >./$name.$enc.afm - [ -s ./$name.$enc.afm ] || { - echo "$MYSELF: can't convert AFM file for $name.$enc" >&2 - } - - aliases=`echo "$DSTALIAS" | grep "^$enc" | cut -d\ -f2` - echo "******* aliases: $aliases" >>$LOG - - $T1FDIR -d fonts.ttf fonts.alias $FOUNDRY $enc $aliases -f ./$name.$enc.$SUFFIX - echo "/$psname$enc ($name.$enc.$SUFFIX) ;" >>Fontmap.ttf - } done - } else { - enc="$SRCENC" - echo "******* $name -> $enc ************" >>$LOG - - sed 's|^\/FontName.*$|/FontName '$psname$enc' def|' <./$name.$SRCENC.t1a \ - | $FORCEISO | $T1ASM >./$name.$enc.$SUFFIX - [ -s ./$name.$enc.$SUFFIX ] || { - echo "$MYSELF: can't convert/assemble Type1 file for $name.$enc" >&2 - continue; - } - - sed 's|^FontName.*$|FontName '$psname$enc'|' <./$name.$SRCENC.xafm \ - | uniq | $FORCEISO >./$name.$enc.afm - [ -s ./$name.$enc.afm ] || { - echo "$MYSELF: can't convert AFM file for $name.$enc" >&2 - } - - $T1FDIR -d fonts.ttf fonts.alias $FOUNDRY $enc -f ./$name.$enc.$SUFFIX - echo "/$psname$enc ($name.$enc.$SUFFIX) ;" >>Fontmap.ttf - } fi - - [ YES = "$REMOVET1A" ] && { - rm -f ./$name.$SRCENC.t1a - rm -f ./$name.$SRCENC.xafm - } - - } done -} done - -wc -l <fonts.ttf >fonts.scale -cat fonts.ttf >>fonts.scale -mkfontdir - -[ YES = "$GENUID" ] && { - echo "Checking for duplicate UniqueIDs..." - for id in `find . -name "*.$SUFFIX" -exec grep UniqueID {} \; \ - | cut -d" " -f2 | sort | uniq -d` - do { - echo "Warning: duplicate UniqueID $id in files:" | tee -a $LOG - find . -name "*.$SUFFIX" -exec grep -l "UniqueID $id " {} \; 2>&1 | tee -a $LOG - } done -} - -[ -n "$GSDIR" ] || { - echo "$MYSELF: The Ghostscript base directory is not specified.\n" >&2 - echo "$MYSELF: Installation of the Ghostscript fonts is deferred.\n" >&2 - echo "$MYSELF: You can do it later by running x2gs\n" >&2 - exit 0 -} - -echo "Installing the Ghostscript fonts" -cd $RUNDIR -$X2GS $CFGFILE || { - echo "$MYSELF: Installation of the Ghostscript fonts has failed.\n" >&2 - echo "$MYSELF: You can correct the problem and run x2gs to repeat\n" >&2 - exit 0 -} diff --git a/Build/source/texk/ttf2pt1/scripts/convert.cfg.sample b/Build/source/texk/ttf2pt1/scripts/convert.cfg.sample deleted file mode 100644 index 4adf8e0d0e3..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/convert.cfg.sample +++ /dev/null @@ -1,192 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 1998, 1999 -# Sergey A. Babkin. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@bellatlantic.net) -# - -# Configuration file for the conversion script. -# Convert TTF fonts from source directory to Type1 fonts in the destination -# directory, converted to the specified encodings. Also generate the -# fonts.scale, fonts.dir and fonts.alias files in the destination -# directory. - -# This file is an example of configuration. It contains -# the examples of settings for all the supported languages. -# Please check the settings and change them for -# your needs. - -# The directories with source TTF files. -# The lines are formatted in 3 columns: -# - directory path -# - language name -# - encoding of the fonts in this directory -# - optional Unicode map file name -# There should be a separate directory for each input encoding. -# No more than 10 encodings are supported now for -# one conversion. -# -# If the Unicode map file name is specified then this -# external map file will be used to encode the resulting -# font. Otherwise the built-in table for this language -# will be used. If you have some special encoding map that -# does not conform to any of the defined languages, set the -# language name to 'unknown' and encoding name to whatever -# you want to see in the X11 logical font description. -# -# NOTES: -# For Russian, Bulgarian and English (as a subset of -# Western) languages you may pile together the Unicode -# fonts and the fonts in the Windows encoding into the same -# directory, they will be sorted out automatically. For -# the Russian and Bulgarian Unicode fonts set the -# source encoding to ibm-1251. -# -# For Turkish, Baltic, Central European and other Western -# European languages the resulting fonts will be in -# a proper iso8859 encoding only if the source fonts -# are in Unicode. -# -# AdobeStd encoding will work only -# for the source font in Unicode encoding which -# either have proper character names or map the -# Adobe character extensions to the expected codes -# (or both). -# -# The external maps work only if the source fonts -# are in Unicode, otherwise the original font's -# encoding will be preserved. -# -# Better don't use the map adobe-standard-encoding.map, -# unless you really need it, it's very incomplete. -# -# The map planes are not supported in the scripts yet. - -SRCDIRS=" -/SOME_DIR_WITH_cyrillic_windows_TTF_FONTS cyrillic ibm-1251 -/SOME_DIR_WITH_cyrillic_koi_TTF_FONTS cyrillic koi8-r -/SOME_DIR_WITH_unicode_TTF_FONTS latin4 iso8859-4 -/SOME_DIR_WITH_unicode_TTF_FONTS latin5 iso8859-9 -/SOME_DIR_WITH_unicode_TTF_FONTS latin2 iso8859-2 -/SOME_DIR_WITH_western_TTF_FONTS latin1 iso8859-1 -/SOME_DIR_WITH_unicode_TTF_FONTS adobestd adobe-std -/SOME_DIR_WITH_weird_unicode_TTF_FONTS adobestd adobe-std adobe-standard-encoding.map -/SOME_DIR_WITH_unicode_TTF_FONTS unknown my-special some-very-special.map -" - -# the directory for converted X11 fonts -DSTDIR=/usr/X11R6/lib/X11/fonts/fromttf - -# The base directory of Ghostscript; -# set it to empty space if you don't want the Ghostscript fonts installed. -# For some systems the directory is /usr/share/ghostscript. -GSDIR=/usr/local/share/ghostscript - -# The font directory of Ghostscript; -# should work for all the versions of Ghostscript. Except (as always) the one -# packaged with Red Hat Linux 6.0. For RH6.0 it should be set to either -# /usr/share/fonts/default/ghostscript or /usr/share/fonts/default/Type1. -GSFONTDIR=$GSDIR/fonts - -# The configuration directory of Ghostscript where the Fontmap file is stored; -# the example is for Ghostscript 6.0, change for the version you actually -# have. This directory is used only to reach the Fontmap file, so if your -# installation stores the Fontmap files in the same directory as fonts -# (like Debian Linux does - isn't Linux wonderful in its differences?) -# then set it to the same value as GSFONTDIR. -GSCONFDIR=$GSDIR/6.0 - -# The encodings of generated files by languages -# (see the whole list of possible encodings for each -# language in the directories encoding/<language> ) -# -# Here prefer windows-1251 over ibm-1251: it aliases -# to the same thing but is the name expected by -# Netscape Navigator. For the same reason prefer -# cp-866 over ibm-866. - -DSTENCcyrillic="koi8-r windows-1251 iso8859-1" -DSTENClatin1="iso8859-1" -DSTENClatin2="iso8859-2" -DSTENClatin4="iso8859-4" -DSTENClatin5="iso8859-9" -DSTENCadobestd="adobe-std" - -# name of foundry for generated fonts -# (for HP-UX or if you just want to use an -# honest name change to "misc") -FOUNDRY=fromttf - -# If you want to use non-standard directories with encoding -# maps and tables then set these values - -MAPDIR= -ENCDIR= - -# Options: -# set the value to YES to enable, NO (or anything else) to disable - -# CORRECTWIDTH - use the option "-w" of converter. Set this -# option to NO if your fonts are well-designed. At least some -# freeware fonts have the width metrics broken and the letters -# look smashed into each other. If this option is set to "YES" -# the converter tries to correct this defect but this may have slight -# side effects on the well-designed fonts: the characters that -# are designed to be close to each other will get wider spacing. -# REMOVET1A - remove the un-encoded .t1a files after they are converted -# and assembled if this option set to YES -# INSTALLFONTMAP - if set to YES install the entries for the converted -# fonts right into the Ghostscript Fontmap file. Otherwise just -# symlink the font files and copy Fontmap.ttf to the Ghostscript -# directories. -# HINTSUBST - enable the hint substitution (option "-H" of -# converter). You may want to compare the looks of the fonts with and -# without this option and decide what is better (see the discussion in -# the README file). If the fonts with this option set to YES look -# completely empty in X11 then set this option to NO or install -# the supplied patches. -# ENFORCEISO - try to disguise the character names according to -# the ISOLatin1 encoding table. Set it to YES if some program -# expects strictly the ISO names but the fonts have different -# character names (this is not the case for X11 any more). -# Options ENFORCEISO and ALLGLYPHS can't be both set to YES. -# ALLGLYPHS - include all the glyphs (characters) from the source -# fonts into the resulting fonts, even if those are not -# included into the encoding tables. If the supplied X11 -# patches are not installed this may cause font size overflow -# in X11. So if you are not sure better leave it as NO. -# For more details see the discussion of the option "-a". -# GENUID - automatically generate UniqueID for all the fonts. -# Setting it to YES may be useful only for the fonts to -# be loaded the fonts into a printer with hard disk. Be -# advised that although unlikely the generated UniqueIDs -# for two fonts may coincide, then the consequences will -# be unpredictable. -# CREATEPFB - if set to YES create .pfb font files, otherwise -# .pfa font files. The .pfb files take somewhat less disk -# space but contain 8-bit binary data. - -CORRECTWIDTH=YES -REMOVET1A=YES -INSTALLFONTMAP=YES -HINTSUBST=NO -ENFORCEISO=NO -ALLGLYPHS=NO -GENUID=NO -CREATEPFB=YES - -# End of the configuration file diff --git a/Build/source/texk/ttf2pt1/scripts/forceiso b/Build/source/texk/ttf2pt1/scripts/forceiso deleted file mode 100644 index 362b6798457..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/forceiso +++ /dev/null @@ -1,428 +0,0 @@ -#!/usr/bin/perl -# -# Copyright (c) 1998 -# Sergey A. Babkin. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@bellatlantic.net) -# - -# -# Force the font to use the encoding as close to ISO Latin-1 as possible -# - -%latin1=( - 0, "_0", - 1, "_1", - 2, "_2", - 3, "_3", - 4, "_4", - 5, "_5", - 6, "_6", - 7, "_7", - 8, "_8", - 9, "_9", - 10, "_10", - 11, "_11", - 12, "_12", - 13, "_13", - 14, "_14", - 15, "_15", - 16, "_16", - 17, "_17", - 18, "_18", - 19, "_19", - 20, "_20", - 21, "_21", - 22, "_22", - 23, "_23", - 24, "_24", - 25, "_25", - 26, "_26", - 27, "_27", - 28, "_28", - 29, "_29", - 30, "_30", - 31, "_31", - 32, "space", - 33, "exclam", - 34, "quotedbl", - 35, "numbersign", - 36, "dollar", - 37, "percent", - 38, "ampersand", - 39, "quoteright", - 40, "parenleft", - 41, "parenright", - 42, "asterisk", - 43, "plus", - 44, "comma", - 45, "minus", - 46, "period", - 47, "slash", - 48, "zero", - 49, "one", - 50, "two", - 51, "three", - 52, "four", - 53, "five", - 54, "six", - 55, "seven", - 56, "eight", - 57, "nine", - 58, "colon", - 59, "semicolon", - 60, "less", - 61, "equal", - 62, "greater", - 63, "question", - 64, "at", - 65, "A", - 66, "B", - 67, "C", - 68, "D", - 69, "E", - 70, "F", - 71, "G", - 72, "H", - 73, "I", - 74, "J", - 75, "K", - 76, "L", - 77, "M", - 78, "N", - 79, "O", - 80, "P", - 81, "Q", - 82, "R", - 83, "S", - 84, "T", - 85, "U", - 86, "V", - 87, "W", - 88, "X", - 89, "Y", - 90, "Z", - 91, "bracketleft", - 92, "backslash", - 93, "bracketright", - 94, "asciicircum", - 95, "underscore", - 96, "quoteleft", - 97, "a", - 98, "b", - 99, "c", - 100, "d", - 101, "e", - 102, "f", - 103, "g", - 104, "h", - 105, "i", - 106, "j", - 107, "k", - 108, "l", - 109, "m", - 110, "n", - 111, "o", - 112, "p", - 113, "q", - 114, "r", - 115, "s", - 116, "t", - 117, "u", - 118, "v", - 119, "w", - 120, "x", - 121, "y", - 122, "z", - 123, "braceleft", - 124, "bar", - 125, "braceright", - 126, "asciitilde", - 127, "_127", - 128, "_128", - 129, "_129", - 130, "_130", - 131, "_131", - 132, "_132", - 133, "_133", - 134, "_134", - 135, "_135", - 136, "_136", - 137, "_137", - 138, "_138", - 139, "_139", - 140, "_140", - 141, "_141", - 142, "_142", - 143, "_143", - 144, "_144", - 145, "_145", - 146, "_146", - 147, "_147", - 148, "_148", - 149, "_149", - 150, "_150", - 151, "_151", - 152, "_152", - 153, "_153", - 154, "_154", - 155, "_155", - 156, "_156", - 157, "_157", - 158, "_158", - 159, "_159", - 160, "_160", - 161, "exclamdown", - 162, "cent", - 163, "sterling", - 164, "currency", - 165, "yen", - 166, "brokenbar", - 167, "section", - 168, "dieresis", - 169, "copyright", - 170, "ordfeminine", - 171, "guillemotleft", - 172, "logicalnot", - 173, "hyphen", - 174, "registered", - 175, "macron", - 176, "degree", - 177, "plusminus", - 178, "twosuperior", - 179, "threesuperior", - 180, "acute", - 181, "mu", - 182, "paragraph", - 183, "periodcentered", - 184, "cedilla", - 185, "onesuperior", - 186, "ordmasculine", - 187, "guillemotright", - 188, "onequarter", - 189, "onehalf", - 190, "threequarters", - 191, "questiondown", - 192, "Agrave", - 193, "Aacute", - 194, "Acircumflex", - 195, "Atilde", - 196, "Adieresis", - 197, "Aring", - 198, "AE", - 199, "Ccedilla", - 200, "Egrave", - 201, "Eacute", - 202, "Ecircumflex", - 203, "Edieresis", - 204, "Igrave", - 205, "Iacute", - 206, "Icircumflex", - 207, "Idieresis", - 208, "Eth", - 209, "Ntilde", - 210, "Ograve", - 211, "Oacute", - 212, "Ocircumflex", - 213, "Otilde", - 214, "Odieresis", - 215, "multiply", - 216, "Oslash", - 217, "Ugrave", - 218, "Uacute", - 219, "Ucircumflex", - 220, "Udieresis", - 221, "Yacute", - 222, "Thorn", - 223, "germandbls", - 224, "agrave", - 225, "aacute", - 226, "acircumflex", - 227, "atilde", - 228, "adieresis", - 229, "aring", - 230, "ae", - 231, "ccedilla", - 232, "egrave", - 233, "eacute", - 234, "ecircumflex", - 235, "edieresis", - 236, "igrave", - 237, "iacute", - 238, "icircumflex", - 239, "idieresis", - 240, "eth", - 241, "ntilde", - 242, "ograve", - 243, "oacute", - 244, "ocircumflex", - 245, "otilde", - 246, "odieresis", - 247, "divide", - 248, "oslash", - 249, "ugrave", - 250, "uacute", - 251, "ucircumflex", - 252, "udieresis", - 253, "yacute", - 254, "thorn", - 255, "ydieresis" -); - -while(<STDIN>) { - print $_; - if(/^\/Encoding\s+.*\s+array/) { - $fontfile=1; - last; - } - if(/^StartCharMetrics\s+/) { - $fontfile=0; - last; - } -} - -$ndups=0; - -if($fontfile) { # .t1a file - while(<STDIN>) { - if($_ !~ /^dup\s+(\d+)\s+\/(\S+)\s+put/) { - print $_; - last; - } - $code=$1+0; - $name=$2; - if($name eq ".notdef") { - print $_; - } else { - printf("dup %d /%s put\n",$code,$latin1{$code}); - if($trans{$name}) { # two or more references to the same glyph - $ndups++; - #printf(STDERR "forceiso: %d dups\n", $ndups); - if($copies{$name} eq "") { - $copies{$name} = $latin1{$code}; - } else { - $copies{$name} .= "|" . $latin1{$code}; - } - } else { - $trans{$name}=$latin1{$code}; - } - } - - } - - while(<STDIN>) { - if( /\/CharStrings\s+(\d+)\s/) { - $nchars=$1+$ndups; - #printf(STDERR "forceiso: %d dups %d chars\n", $ndups, $nchars); - $_ =~ s|/CharStrings\s+\d+\s|/CharStrings $nchars |; - print $_; - last; - } - print $_; - } - - while(<STDIN>) { - if(/^\/(\S+)/) { - $name=$1; - $to=$trans{$name}; - - $header=$_; - $body=""; - - if($to ne "") { - $_ =~ s/^\/\S+/\/$to/; - } - print $_; - } elsif(/endchar/) { - print $_; - if($copies{$name}) { - for $to (split(/\|/,$copies{$name})) { - $header =~ s/^\/\S+/\/$to/; - print($header, $body, $_); - } - } - } else { - print $_; - $body .= $_; - } - } -} else { # .afm file - while(<STDIN>) { - if($_ !~ /^C\s+(\d+)(\s*;.*N\s+)(\S+)(\s*;.*)\n/) { - print $_; - last; - } - $code=$1+0; - $name=$3; - $part2=$2; - $part4=$4; - if($name eq ".notdef") { - print $_; - } else { - printf("C %d%s%s%s\n",$code,$part2,$latin1{$code},$part4); - if($copies{$name} eq "") { - $copies{$name} = $latin1{$code}; - } else { - $copies{$name} .= "|" . $latin1{$code}; - $ndups++; - #printf(STDERR "forceiso: %d dups\n", $ndups); - } - } - - } - - while(<STDIN>) { - if(/^StartKernPairs\s+(\d+)/) { - last; - } - print $_; - } - - $npairs=0; - $kps=""; - while(<STDIN>) { - if(/^KPX\s+(\S+)\s+(\S+)\s+(.*)\n/) { - $name1=$1; - $name2=$2; - $metric=$3; - - $cp1=$copies{$name1}; - if($cp1 eq "") { - $cp1=$name1; - } - - $cp2=$copies{$name2}; - if($cp2 eq "") { - $cp2=$name2; - } - - for $to1 (split(/\|/,$cp1)) { - for $to2 (split(/\|/,$cp2)) { - $kps .= sprintf("KPX %s %s %s\n", $to1, $to2, $metric); - $npairs++; - } - } - } else { - if($npairs!=0) { - printf("StartKernPairs %d\n", $npairs); - printf("%s", $kps); - $npairs=0; - $kps=""; - } - print $_; - } - } -} diff --git a/Build/source/texk/ttf2pt1/scripts/frommap b/Build/source/texk/ttf2pt1/scripts/frommap deleted file mode 100644 index f32280c2e5d..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/frommap +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/perl -# -# A script to convert a Unicode character map to -# the C code -# - -sub fromhex -{ - return eval "0x".$_[0]; -} - -$inmap=0; - -while(<>) -{ - if(/^CHARMAP/) { - $inmap=1; - } elsif(/^END CHARMAP/) { - $inmap=0; - } elsif($inmap - && /^\s*\S+\s+\/x([0-9a-fA-F][0-9a-fA-F])\s+\<U([0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])/) { - $map[fromhex($1)]=fromhex($2); - } -} diff --git a/Build/source/texk/ttf2pt1/scripts/html2man b/Build/source/texk/ttf2pt1/scripts/html2man deleted file mode 100644 index 072dc393931..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/html2man +++ /dev/null @@ -1,231 +0,0 @@ -#!/usr/bin/perl -# -# See COPYRIGHT -# -# Script to generate a pod file from an html source (the same one as for text files too) -# and later this pod file it passed through pod2man -# -# Use: -# html2man [ <man-dir> [<version-dir>] ] <file.html -# -# <Man-dir> is the directory where the man pages will be created -# (current directory by default). If a file name is given instead of -# directory then the directory of that file is used. -# <Version-dir> is the directory containing the ttf2pt1 files version.h -# and CHANGES.html which are used to generate the release name and date -# for the man page (by default looks in current directory and then in up to -# 5 ancestor directories). -# If the version files can not be found then the release defaults to -# "current" and the date defaults to today. -# -# Special formatting in the html file is: -# All controls are hidden within HTML comments that must occupy a whole separate line -# Such a line looks like: -# <!-- =<html2man_directive> <arguments> --> -# <!-- ==<pod_directive> <arguments> --> -# Any sort of directive must be followed by a space. The pod directives are -# automatically surrounded by empty lines in the output file. -# The html2man directives are: -# -# <!-- =defdoc <docid> <file> <section> --> -# Define a man page. Multiple man pages can be defined in the same HTML -# file. <Docid> is a short name by which this man page will be referred in the -# other directives. <File> is the name of the man page, and <section> is the -# section of the manual (do not confuse with sections within a man page). -# -# <!-- =section <docid> <page_section_name> --> -# All the text following this directive is copied (with translation) -# into the specified section of the specified man page. The sections -# may appear in arbitrary order, they will be rearranged to the standard -# order before output. Only standard section names are permitted (see @stdsect -# below). The pod directives which occur outside of man sections are ignored, -# just like the common text. The translation of HTML tags is: -# -# <br> - to paragraph break -# <b> - to B<> -# <i> - to I<> -# <tt> - to C<> -# <a href> - to F<> -# <ul>, <li>, </ul> - to =over 2, =item *, =back -# , &, <, > - to their symbols, appropriately encoded -# -# The rest of HTML tags is removed -# -# If the same section is started more than once, the text from the -# second appearance will be added to the first, etc. -# -# <!-- =stop --> -# Stop copying text to the man page. -# -# <!-- =cont --> -# Continue copying text to the man page, same section as before. -# -# <!-- =text <text> --> -# Insert this <text> into the man page (works only when copying is enabled). -# Characters <, >, & are converted as usual. - -@mons = qw(January February March April May June July August September October November December); - -$dir = $ARGV[0]; -$maindir = $ARGV[1]; - -if($dir eq "") { - $dir = "."; -} elsif( ! -d $dir ) { - if( ! ($dir =~ s|\/[^/]*$||) ) { - $dir = "."; - } -} -if($maindir eq "") { - $maindir = "."; - for($i=0; $i<5; $i++) { - if(-f "$maindir/version.h") { - last; - } - $maindir = "../$maindir"; - } -} - -if( open(VERFILE, "<$maindir/version.h") ) { - while(<VERFILE>) { - if( /^\s*\#define\s+TTF2PT1_VERSION\s+\"(.*)\"/ ) { - $release = "version $1"; - } - } - close(VERFILE); - if( $release =~ /SNAP-([0-9][0-9])([0-9][0-9])([0-9][0-9])/ ) { - $date = sprintf("%s %d, 20%02d", $mons[$2-1], $3, $1); - } elsif( open(CFILE, "<$maindir/CHANGES.html") ) { - while(<CFILE>) { - if( /\<H4\>/) { - last; - } - } - $_ = <CFILE>; - chomp; - if( $_ =~ s/^.*?-- // ) { - $date = $_; - } - close(CFILE); - } -} - -if($release eq "") { - $release = "current"; -} -if($date eq "") { - @lt = localtime(time); - $date = sprintf("%s %d, %d", $mons[$lt[4]], $lt[3], 1900+$lt[5]); -} - -#printf(STDERR "date=%s release=%s\n", $date, $release); - -$writemode = 0; - -while(<STDIN>) { - if( s/^\<\!\-\- \=(\S+)\s+//) { - $cmd = $1; - s/\s*--\>\s*$//; - #printf(STDERR "cmd=%s args=%s\n", $cmd, $_); - if($cmd =~ /^=/) { - if($writemode) { - $text{$tosect} .= "\n\n$cmd $_\n\n"; - } - } elsif($cmd eq "defdoc") { - @sl = split; - push(@allids, $sl[0]); - $file{$sl[0]} = $sl[1]; - $mansect{$sl[0]} = $sl[2]; - } elsif($cmd eq "section") { - # tosect includes the file id - $tosect = $_; - $text{$tosect} .= "\n\n"; - $writemode = 1; - } elsif($cmd eq "stop") { - $writemode = 0; - $text{$tosect} .= "\n"; - } elsif($cmd eq "cont") { - $writemode = 1; - } elsif($cmd eq "text") { - if($writemode) { - s/\<\;/</gi; - s/\>\;/>/gi; - s/\&\;/\&/gi; - $text{$tosect} .= "$_\n"; - } - } - } elsif($writemode) { - s/^\s+//; - - s/\{/\&lbr;/g; - s/\}/\&rbr;/g; - - s/\<br\>/\n\n/gi; - #s/\<blockquote\>/\n\n=over 4\n\n/gi; - #s/\<\/blockquote\>/\n\n=back\n\n/gi; - s/\<ul\>/\n\n=over 4\n\n/gi; - s/\<\/ul\>/\n\n=back\n\n/gi; - s/\<li\>\s*/\n\n=item \*\n\n/gi; - s/\<i\>(.*?)\<\/i\>/I\{\1\}/gi; - s/\<b\>(.*?)\<\/b\>/B\{\1\}/gi; - s/\<tt\>(.*?)\<\/tt\>/C\{\1\}/gi; - s/\<a href\=\.*?\>(.*?)\<\/a\>/F\{\1\}/gi; - s/\<.*?\>//g; - s/\{/\</g; - s/\}/\>/g; - - s/\ \;/S< >/gi; - s/\&\;/\&/gi; - s/\<\;/E<lt>/gi; - s/\>\;/E<gt>/gi; - #s/\|/E<verbar>/g; - #s/\//E<sol>/g; - s/\&lbr\;/\{/g; - s/\&rbr\;/\}/g; - - #printf(STDERR "section=%s add=%s", $tosect, $_); - $text{$tosect} .= $_; - } -} - -@stdsect = ( - "NAME", - "SYNOPSIS", - "DESCRIPTION", - "OPTIONS", - "RETURN VALUE", - "ERRORS", - "EXAMPLES", - "ENVIRONMENT", - "FILES", - "SEE ALSO", - "NOTES", - "CAVEATS", - "DIAGNOSTICS", - "BUGS", - "RESTRICTIONS", - "AUTHOR", - "HISTORY" ); - -#printf(STDERR "allids= @allids\n"); -for $id (@allids) { - #print(STDERR "creating man page $id $file{$id} $mansect{$id}\n\n"); - die "Unable to create pod file $dir/$file{$id}.pod" - unless open(PODF, ">$dir/$file{$id}.pod"); - print(PODF "=pod\n\n"); - for $sect (@stdsect) { - $sid = "$id $sect"; - #printf(STDERR "trying %s\n", $sid); - if(defined $text{$sid}) { - print(PODF "=head1 $sect\n\n$text{$sid}\n\n"); - } - } - print(PODF "=cut\n"); - close(PODF); - die "Unable to generate the man page $dir/$file{$id}.1" - if system("pod2man --section=\"$mansect{$id}\" --release=\"$release\" " - . "--center=\"TTF2PT1 Font Converter\" --date=\"$date\" " - . "$dir/$file{$id}.pod >$dir/$file{$id}.1"); - - unlink("$dir/$file{$id}.pod"); -} diff --git a/Build/source/texk/ttf2pt1/scripts/inst_dir b/Build/source/texk/ttf2pt1/scripts/inst_dir deleted file mode 100644 index 7bc10f4c7a6..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/inst_dir +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/perl -# -# Script to create a directory for installation -# -# (c) 2000 by The TTF2PT1 Project -# See COPYRIGHT for full license -# - -if( $#ARGV!=0 && $#ARGV !=3) { - die "Use: $0 dir-name [owner group mode]\n" -} - -if( $#ARGV==3 ) { - $owner = $ARGV[1]; - $group = $ARGV[2]; - eval "\$mode = 0$ARGV[3];"; -} else { - $owner = "root"; - $group = "bin"; - $mode = 0755; -} - -@sl = split(/\//, $ARGV[0]); -$prefix = shift(@sl); -if($prefix eq "") { - $prefix = "/" . shift(@sl); -} - -while(1) { - if( ! -d "$prefix" ) { - die "Unable to create directory $prefix:\n$!\n" - unless mkdir($prefix, $mode); - die "Unable to change owner of $prefix to $owner\n" - if system("chown $owner $prefix"); - die "Unable to change group of $prefix to $group\n" - if system("chgrp $group $prefix"); - } - if($#sl < 0) { - last; - } - $prefix .= "/" . shift(@sl); -} -exit(0); diff --git a/Build/source/texk/ttf2pt1/scripts/inst_file b/Build/source/texk/ttf2pt1/scripts/inst_file deleted file mode 100644 index d3758671d98..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/inst_file +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -# -# Script to install a file (for portability reasons) -# -# (c) 2000 by The TTF2PT1 Project -# See COPYRIGHT for full license -# - -[ $# != 5 ] && { - echo "Use: $0 file-from file-to owner group mode" >&2 - exit 1 -} - -cp -f $1 $2 \ -&& chown $3 $2 \ -&& chgrp $4 $2 \ -&& chmod 0$5 $2 diff --git a/Build/source/texk/ttf2pt1/scripts/mkrel b/Build/source/texk/ttf2pt1/scripts/mkrel deleted file mode 100644 index e4ac93debfa..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/mkrel +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/sh -# -# See COPYRIGHT -# -# Script to create a release or shapshot archive. -# Also checks for very basic inconsistences. -# Expects that it would be run from the current directory of ttf2pt1, -# and that the parent directory is the place to create archives. -# Expects that the CVS environment variables are set properly. - -VER=`grep TTF2PT1_VERSION version.h | cut -d\" -f2` - -case "$1" in -snapshot) - echo "$VER" | egrep '^[0-9][0-9]*\.[0-9].*-CURRENT$' || { - echo "mkrel: version.h must contain *-CURRENT to create a snapshot" >&2 - exit 1 - } - grep "^current$" CHANGES.html >/dev/null || { - echo "mkrel: CHANGES.html must list 'current' to create a snapshot" >&2 - exit 1 - } - snapdate=`date "+ %y %m %d " | sed 's/ \([0-9]\) / 0& /g;s/ //g'` - NEWVER=`echo "$VER" | sed "s/-CURRENT/-SNAP-$snapdate/"` - TAG="-D tomorrow" - ;; -release) - echo "$VER" | egrep '^[0-9][0-9]*\.[0-9][.0-9]*$' || { - echo "mkrel: version.h must not be -CURRENT to create a release" >&2 - exit 1 - } - grep "^$VER -- " CHANGES.html >/dev/null || { - echo "mkrel: CHANGES.html must list the same version as version.h" >&2 - exit 1 - } - NEWVER="$VER" - TAG=`echo "-r ttf2pt1-$VER" | sed \ - 's/\(-[0-9][0-9]*\.[0-9]\)$/&.0/;s/\./-/g'` - ;; -*) - echo "use: mkrel [snapshot|release]" >&2 - exit 1 - ;; -esac - -cd .. || { - echo "mkrel: can't cd to .." >&2 - exit 1 -} - -rm -f ttf2pt1-$NEWVER.tgz ttf2pt1-$NEWVER.zip -rm -rf ttf2pt1-$NEWVER - -echo "cvs -z9 export $TAG -d ttf2pt1-$NEWVER ttf2pt1" -cvs -z9 export $TAG -d ttf2pt1-$NEWVER ttf2pt1 || { - echo "mkrel: unable to export from CVS" >&2 - echo "mkrel: check that the CVS tree is properly tagged" >&2 - exit 1 -} - - -# a little bit more for snapshot: correct the version -( -case "$1" in -snapshot) - cd ttf2pt1-$NEWVER || { - echo "mkrel: can't cd to ../ttf2pt1-$NEWVER" >&2 - exit 1 - } - - sed "s/^current\$/$NEWVER/" <CHANGES.html >CHANGES.html.new \ - && mv CHANGES.html.new CHANGES.html || { - echo "mkrel: can't update CHANGES.html" >&2 - exit 1 - } - - sed "s/\".*-CURRENT\"/\"$NEWVER\"/" <version.h >version.h.new \ - && mv version.h.new version.h || { - echo "mkrel: can't update version.h" >&2 - exit 1 - } - ;; -esac -) - -# generate the man pages - in case if the users would have no pod2man -( - cd ttf2pt1-$NEWVER || { - echo "mkrel: can't cd to ../ttf2pt1-$NEWVER" >&2 - exit 1 - } - - make mans -) - -tar czvf ttf2pt1-$NEWVER.tgz ttf2pt1-$NEWVER || { - echo "mkrel: can't create .tgz archive" >&2 - exit 1 -} - -zip -u -r ttf2pt1-$NEWVER.zip ttf2pt1-$NEWVER || { - echo "mkrel: can't create .zip archive" >&2 - exit 1 -} diff --git a/Build/source/texk/ttf2pt1/scripts/t1fdir b/Build/source/texk/ttf2pt1/scripts/t1fdir deleted file mode 100644 index 16c86530f13..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/t1fdir +++ /dev/null @@ -1,227 +0,0 @@ -#!/usr/bin/perl -# -# Copyright (c) 1998 -# Sergey A. Babkin. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@bellatlantic.net) -# - -# -# Script that reads the Type1 font files and prints out the fonts.scale -# lines for them -# - -# other substrings (regexps) that are considered irrelevant -# and sould be removed from the font names: -@wrongstr= ( - "koi8r", - "koi8", - "cp1251", - "ibm1251", - "win1251", - "cp866", - "ibm866", - "iso8859[1-9]", - "iso8859", - "isolatin[0-9]", - "isolatin", - "latin[0-9]", - "^ER ", - "^K8 ", -); - -sub usage -{ - print STDERR "Use: \n"; - print STDERR " t1fdir [-g] <foundry> <encoding>... [ -f <file>...]\n"; - print STDERR "or\n"; - print STDERR " t1fdir -d fonts.scale fonts.alias <foundry> <encoding>... [ -f <file>...]\n"; -} - -$ghost=0; -if( $ARGV[0] eq "-g" ) { - shift @ARGV; - $ghost=1; -} elsif( $ARGV[0] eq "-d" ) { - shift @ARGV; - $files=1; - $scalef=shift @ARGV; - $aliasf=shift @ARGV; -} - -if($#ARGV<2) { - &usage(); - exit 1; -} - -$foundry=$ARGV[0]; -shift @ARGV; - -while($#ARGV>=0) { - if($ARGV[0] eq "-f") { - shift @ARGV; - last; - } - push(@encodings,$ARGV[0]); - shift @ARGV; -} - -if($files) { - open(SCALEF, ">>$scalef") || die "Can't write to $scalef"; - open(ALIASF, ">>$aliasf") || die "Can't write to $aliasf"; -} -for $name (@ARGV) { - - $familyname=""; - $fullname=""; - $fontname=""; - $weight=""; - $angle=0; - - open(FILE,"<$name") || die "Unable to open file $name\n"; - - $type="p"; # by default - - while(<FILE>) { - if(/eexec/) { last; } - if(/^\/FamilyName.*\((.+)\)/ ) { $familyname= $1; } - if(/^\/FullName.*\((.+)\)/ ) { $fullname= $1; } - if(/^\/FontName.*\((.+)\)/ ) { $fontname= $1; } - if(/^\/Weight.*\((.+)\)/ ) { $weight= $1; } - if(/^\/ItalicAngle.*(\d+)/ ) { $angle= $1+0; } - if(/^\/isFixedPitch/) { - if(/true/) { - $type="m"; - } else { - $type="p"; - } - } - } - - # now try to interpret this information - - $allinfo= $familyname ." ". $fullname ." ". $fontname ." ". $weight; - $lcallinfo=$allinfo; - $lcallinfo=~tr[A-Z][a-z]; - - $familyname.="_"; # just a delimiter for substitutions - $familyname=~s/Bold([^a-z])/$1/g; - $familyname=~s/Italic([^a-z])/$1/g; - $familyname=~s/Oblique([^a-z])/$1/g; - $familyname=~s/Roman([^a-z])/$1/g; - - for $i (@wrongstr) { # for uppercase- and space- sensitive strings - $familyname =~ s/$i//g; - } - - $familyname=~tr[A-Z][a-z]; - $familyname=~tr[A-Za-z0-9][]cd; - - for $i (@wrongstr) { # for case-insensitive strings - $familyname =~ s/$i//g; - } - - if( $familyname eq "") { - $familyname="unknown"; - } - - $fn=$name; - $fn=~ s/.*\///g; - - $n=0; - for $encoding (@encodings) { - $n++; - if($ghost) { - printf("/%s-", uc(substr($familyname,0,1)).substr($familyname,1)); - - $r=1; - - if( $allinfo =~ /Bold[^a-z]/ - || $lcallinfo =~ /\bbold\b/ ) { - printf("Bold"); - $r=0; - } - if( $allinfo =~ /Italic[^a-z]/ - || $lcallinfo =~ /\bitalic\b/ - || $angle>0 ) { - printf("Italic"); - $r=0; - } elsif( $allinfo =~ /Oblique[^a-z]/ - || $lcallinfo =~ /\boblique\b/ - || $angle<0 ) { - printf("Oblique"); - $r=0; - } - - if($r) { - printf("Roman"); - } - - printf("-%s\t (%s) ;\n",$encoding,$fn); - } else { - $xenc=$encoding; - $xenc =~ s/\-/_/g; - - $srec = sprintf("-%s-%s_%s-",$foundry,$familyname,$xenc); - $arec = sprintf("-%s-%s-",$foundry,$familyname); - - if( $allinfo =~ /Bold[^a-z]/ - || $lcallinfo =~ /\bbold\b/ ) { - $srec .= "bold-"; - $arec .= "bold-"; - } else { - $srec .= "medium-"; - $arec .= "medium-"; - } - - if( $allinfo =~ /Italic[^a-z]/ - || $lcallinfo =~ /\bitalic\b/ - || $angle>0 ) { - $srec .= "i-"; - $arec .= "i-"; - } elsif( $allinfo =~ /Oblique[^a-z]/ - || $lcallinfo =~ /\boblique\b/ - || $angle<0 ) { - $srec .= "o-"; - $arec .= "o-"; - } else { - $srec .= "r-"; - $arec .= "r-"; - } - - $srec .= sprintf("normal--0-0-0-0-%s-0-adobe-fontspecific",$type,$encoding); - $arec .= sprintf("normal--0-0-0-0-%s-0-%s",$type,$encoding); - - if($files) { - if($n==1) { - printf(SCALEF "%s %s\n",$fn,$srec); - printf(ALIASF "%s %s\n",$arec,$srec); - $srec1=$srec; - } else { - printf(ALIASF "%s %s\n",$arec,$srec1); - } - } else { - printf("%s %s\n",$fn,$arec); - } - } - } - - close(FILE); -} -if($files) { - close(SCALEF); - close(ALIASF); -} diff --git a/Build/source/texk/ttf2pt1/scripts/trans b/Build/source/texk/ttf2pt1/scripts/trans deleted file mode 100644 index d52760e6f66..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/trans +++ /dev/null @@ -1,164 +0,0 @@ -#!/usr/bin/perl -# -# Copyright (c) 1998-2000 -# Sergey A. Babkin. All rights reserved. -# -# See the full text of the license in the COPYRIGHT file. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@users.sourceforge.net) -# - -# -# Script to transcode the Type1 disassembled font to other encoding -# - -# calculation of UniqueID from old UID and encoding name -# we don't have unsigned integer arithmetic in Perl -# so we try to do at least something -sub newuid -{ - use integer; - my ($u,$enc)=@_; - my $i, $uid; - - $uid=substr($u, -6, 6); - $u=substr($u, 0, 4); - - $uid+=0; - for $i (split(//,$enc)) { - $uid*=37; - $uid+=ord($i); - $uid+=($uid>>16) & 0xff; - $uid&=0xffffff; - } - - ($uid % 1000000) + 4000000; - #$u . substr(sprintf("%d",$uid), 0, 5); -} - -if($#ARGV != 1) { - printf(STDERR "Use: trans src-table dst-table <src-font >dst-font\n"); - exit 1; -} - -# tables are formatted in two columns, one row per character -# name decimal-code - -# Read the destination table - -open(FILE,"<".$ARGV[1]) - or die "Unable to read $ARGV[2]\n"; -while(<FILE>) { - @sl=split(/\s+/); - $dst{$sl[0]}=$sl[1]; -} -close(FILE); - -#read the source table and build the translation table - -open(FILE,"<".$ARGV[0]) - or die "Unable to read $ARGV[0]\n"; -while(<FILE>) { - @sl=split(/\s+/); - $trans{$sl[1]}=$dst{$sl[0]}; -} -close(FILE); - -# name of the encoding, for UniqueID -$encname=$ARGV[1]; -$encname =~ s|^.*\/||g; -$encname =~ s|\..*$||g; - -# now read the font file, skip everything upto the encoding table -# we suppose that the file was autogenerated by ttf2pt1 with my patches - -while(<STDIN>) { - if( /^\/FontName\s+(\S+)/) { - $fontname=$1; - } - if( /^\/UniqueID\s+(\S+)/) { - use integer; - my $uid=$1; - $_=sprintf("/UniqueID %u def\n", &newuid($uid, $encname)); - } - print $_; - if(/^\/Encoding/) { - $fontfile=1; - last; - } - if(/^StartCharMetrics/) { - $fontfile=0; - last; - } -} - -# read the old encoding table and build the new encoding table - -if($fontfile) { # .t1a - while($row=<STDIN>) { - if( $row !~ /^dup/) { - last; - } - - @sl=split(/\s+/,$row); - - $new=$trans{$sl[1]}; - if($new eq "") { - $new=$sl[1]; - if($enc{$new} eq "") { - $enc{$new}=$sl[2]; - } - } else { - $enc{$new}=$sl[2]; - } - } - - # print new encoding table - - for $i (0..255) { - if($enc{$i}) { - printf("dup %d %s put\n",$i,$enc{$i}); - } else { - printf("dup %d /.notdef put\n",$i); - } - } -} else { # .afm - while($row=<STDIN>) { - if($row !~ /^C\s+(\d+)(\s*;.*)\n/) { - last; - } - $code=$1; - $part2=$2; - - $new=$trans{$code}; - if($new eq "") { - $new=$code; - if($enc{$new} eq "") { - $enc{$new}=$part2; - } - } else { - $enc{$new}=$part2; - } - } - - # print new encoding table - - for $i (0..255) { - if($enc{$i}) { - printf("C %d%s\n",$i,$enc{$i}); - } - } -} - -print $row; - -# now copy the rest of file - -while(<STDIN>) { - if( /^\/UniqueID\s+(\S+)/) { - use integer; - my $uid=$1; - $_=sprintf("/UniqueID %u def\n", &newuid($uid, $encname)); - } - print; -} diff --git a/Build/source/texk/ttf2pt1/scripts/unhtml b/Build/source/texk/ttf2pt1/scripts/unhtml deleted file mode 100644 index 1e660f544e6..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/unhtml +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh -# -# This script removes the HTML formatting from a file. If the file was designed -# with such use in mind and was properly formatted besides HTML (such as the README -# file for ttf2pt1) it will look good as a plain text file. -# -# This script supports a very limited set of HTML formatting. Everything that -# goes before <BODY> is removed. Any lines that -# contain only the HTML formatting or start with "<!" or contain only ">" -# are completely removed. Then all the in-line formatting is removed. -# Then " ", "<", ">" are changed to " ", "<", ">". - -sed '1,/<[bB][oO][dD][yY]>/d; -/^<!/d; -s/<[lL][iI]>/-/g; -s/^</< </; -s/> *$/>>/; -s/<[^<>]*>//g; -/^< *>$/d; -/^>>$/d;s/^< //; -s/>$//; -s/&[nN][bB][sS][pP];/ /g;s/&[lL][tT];/</g;s/&[gG][tT];/>/g;s/&[aA][mM][pP];/\&/g;' diff --git a/Build/source/texk/ttf2pt1/scripts/x2gs b/Build/source/texk/ttf2pt1/scripts/x2gs deleted file mode 100644 index 558ef3df0b5..00000000000 --- a/Build/source/texk/ttf2pt1/scripts/x2gs +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 1998-2000 -# Sergey A. Babkin. All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# Sergey A. Babkin (sab123@hotmail.com, babkin@bellatlantic.net) -# - -# Use : x2gs [cfgfile] - -# path to the configuration file - -if [ $# -eq 1 ] -then - CFGFILE=$1 -else - CFGFILE=`pwd`/convert.cfg -fi - -MYSELF=x2gs - -# include the configuration - -if [ -r $CFGFILE ] -then { - . $CFGFILE -} else { - echo " -Can't find the configuration file - $CFGFILE -Please look at the sample file convert.cfg.sample, -copy it to convert.cfg and modify for -you actual configuration." >&2 - exit 1 -} fi - -LOG=$DSTDIR/convert.log - -[ -n "$GSDIR" ] || { - echo "$MYSELF: The Ghostscript base directory is not specified." >&2 - echo "$MYSELF: Installation of the Ghostscript fonts is deferred." >&2 - exit 0 -} - -[ -n "$GSCONFDIR" -a -d "$GSCONFDIR" ] || { - echo "$MYSELF: The Ghostscript configuration directory does not exist." >&2 - echo "$MYSELF: Installation of the Ghostscript fonts is aborted." >&2 - exit 1 -} - -[ -r "$GSCONFDIR/Fontmap" ] || { - echo "$MYSELF: Can't find Fontmap in the GS configuration directory." >&2 - echo "$MYSELF: Installation of the Ghostscript fonts is aborted." >&2 - exit 1 -} - -[ -n "$GSFONTDIR" -a -d "$GSFONTDIR" ] || { - echo "$MYSELF: The Ghostscript font directory does not exist." >&2 - echo "$MYSELF: Installation of the Ghostscript fonts is aborted." >&2 - exit 1 -} - -# link the fonts to $GSFONTDIR - -rm -f $GSCONFDIR/Fontmap.ttf - -# historically x2gs supported multiple X11 directories -for d in $DSTDIR -do { - for i in $d/*.pfa $d/*.afm - do { - [ -f $i ] || break; - - n=`basename $i` - - rm -f $GSFONTDIR/$n - - ln -s $i $GSFONTDIR/$n || { - echo "$MYSELF: Unable to link $n to GS font directory">&2 - } - } done - - cat $d/Fontmap.ttf >>$GSCONFDIR/Fontmap.ttf -} done - -if [ YES = "$INSTALLFONTMAP" ] -then { - mv $GSCONFDIR/Fontmap $GSCONFDIR/Fontmap.old || { - echo "$MYSELF: can't save Fontmap.old" >&2 - exit 1 - } - - sed "\\|^% begin fonts from $DSTDIR|,\\|^% end fonts from $DSTDIR|d" \ - <$GSCONFDIR/Fontmap.old >$GSCONFDIR/Fontmap || { - echo "$MYSELF: Can't create the new Fontmap file" >&2 - echo "$MYSELF: Trying to restore the old Fontmap file" >&2 - cp $GSCONFDIR/Fontmap.old $GSCONFDIR/Fontmap - exit 1 - } - echo "% begin fonts from $DSTDIR" >>$GSCONFDIR/Fontmap - echo "" >>$GSCONFDIR/Fontmap - cat $GSCONFDIR/Fontmap.ttf >>$GSCONFDIR/Fontmap - echo "" >>$GSCONFDIR/Fontmap - echo "% end fonts from $DSTDIR" >>$GSCONFDIR/Fontmap -} fi diff --git a/Build/source/texk/ttf2pt1/t1asm.c b/Build/source/texk/ttf2pt1/t1asm.c deleted file mode 100644 index 4d0cf25dbff..00000000000 --- a/Build/source/texk/ttf2pt1/t1asm.c +++ /dev/null @@ -1,604 +0,0 @@ -/* t1asm - * - * This program `assembles' Adobe Type-1 font programs in pseudo-PostScript - * form into either PFB or PFA format. The human readable/editable input is - * charstring- and eexec-encrypted as specified in the `Adobe Type 1 Font - * Format' version 1.1 (the `black book'). There is a companion program, - * t1disasm, which `disassembles' PFB and PFA files into a pseudo-PostScript - * file. - * - * Copyright (c) 1992 by I. Lee Hetherington, all rights reserved. - * - * Permission is hereby granted to use, modify, and distribute this program - * for any purpose provided this copyright notice and the one below remain - * intact. - * - * I. Lee Hetherington (ilh@lcs.mit.edu) - * - * Revision 1.2 92/05/22 11:54:45 ilh - * Fixed bug where integers larger than 32000 could not be encoded in - * charstrings. Now integer range is correct for four-byte - * twos-complement integers: -(1<<31) <= i <= (1<<31)-1. Bug detected by - * Piet Tutelaers (rcpt@urc.tue.nl). - * - * Revision 1.1 92/05/22 11:48:46 ilh - * initial version - * - * Ported to Microsoft C/C++ Compiler and MS-DOS operating system by - * Kai-Uwe Herbing (herbing@netmbx.netmbx.de) on June 12, 1992. Code - * specific to the MS-DOS version is encapsulated with #ifdef _MSDOS - * ... #endif, where _MSDOS is an identifier, which is automatically - * defined, if you compile with the Microsoft C/C++ Compiler. - * - */ - -#ifndef lint -static char copyright[] = - "@(#) Copyright (c) 1992 by I. Lee Hetherington, all rights reserved."; -#ifdef _MSDOS -static char portnotice[] = - "@(#) Ported to MS-DOS by Kai-Uwe Herbing (herbing@netmbx.netmbx.de)."; -#endif -#endif - -/* Note: this is ANSI C. */ - -#ifdef _MSDOS - #include <fcntl.h> - #include <getopt.h> - #include <io.h> -#endif -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <ctype.h> -#include <limits.h> - -#ifdef WINDOWS -# ifdef STANDALONE -# define WINDOWS_FUNCTIONS -# include "winport.h" -# endif -#endif - -/* int32 must be at least 32-bit and uint16 must be at least 16-bit */ -#if INT_MAX >= 0x7FFFFFFFUL -typedef int int32; -#else -typedef long int32; -#endif -#if USHRT_MAX >= 0xFFFFUL -typedef unsigned short uint16; -#else -typedef unsigned int uint16; -#endif - -#define LINESIZE 256 - -#define MAXBLOCKLEN ((1L<<17)-6) -#define MINBLOCKLEN ((1L<<8)-6) - -#define MARKER 128 -#define ASCII 1 -#define BINARY 2 -#define DONE 3 - -typedef unsigned char byte; - -/* must be visible from outside */ -FILE *ifp; -FILE *ofp; - -/* flags */ -static int pfb = 0; -static int active = 0; -static int start_charstring = 0; -static int in_eexec = 0; - -static char line[LINESIZE]; - -/* lenIV and charstring start command */ -static int lenIV = 4; -static char cs_start[10]; - -/* for charstring buffering */ -static byte charstring_buf[65535]; -static byte *charstring_bp; - -/* for PFB block buffering */ -static byte blockbuf[MAXBLOCKLEN]; -static int32 blocklen = MAXBLOCKLEN; -static int32 blockpos = -1; -static int blocktyp = ASCII; - -/* decryption stuff */ -static uint16 er, cr; -static uint16 c1 = 52845, c2 = 22719; - -/* table of charstring commands */ -static struct command { - char *name; - int one, two; -} command_table[] = { - { "callothersubr", 12, 16 }, - { "callsubr", 10, -1 }, - { "closepath", 9, -1 }, - { "div", 12, 12 }, - { "dotsection", 12, 0 }, - { "endchar", 14, -1 }, - { "hlineto", 6, -1 }, - { "hmoveto", 22, -1 }, - { "hsbw", 13, -1 }, - { "hstem", 1, -1 }, - { "hstem3", 12, 2 }, - { "hvcurveto", 31, -1 }, - { "pop", 12, 17 }, - { "return", 11, -1 }, - { "rlineto", 5, -1 }, - { "rmoveto", 21, -1 }, - { "rrcurveto", 8, -1 }, - { "sbw", 12, 7 }, - { "seac", 12, 6 }, - { "setcurrentpoint", 12, 33 }, - { "vhcurveto", 30, -1 }, - { "vlineto", 7, -1 }, - { "vmoveto", 4, -1 }, - { "vstem", 3, -1 }, - { "vstem3", 12, 1 }, -}; /* alphabetical */ - -/* Two separate encryption functions because eexec and charstring encryption - must proceed in parallel. */ - -static byte eencrypt(byte plain) -{ - byte cipher; - - cipher = (byte) (plain ^ (er >> 8)); - er = (uint16) ((cipher + er) * c1 + c2); - return cipher; -} - -static byte cencrypt(byte plain) -{ - byte cipher; - - cipher = (byte) (plain ^ (cr >> 8)); - cr = (uint16) ((cipher + cr) * c1 + c2); - return cipher; -} - -/* This function flushes a buffered PFB block. */ - -static void output_block() -{ - int32 i; - - /* output four-byte block length */ - fputc((int) (blockpos & 0xff), ofp); - fputc((int) ((blockpos >> 8) & 0xff), ofp); - fputc((int) ((blockpos >> 16) & 0xff), ofp); - fputc((int) ((blockpos >> 24) & 0xff), ofp); - - /* output block data */ - for (i = 0; i < blockpos; i++) - fputc(blockbuf[i], ofp); - - /* mark block buffer empty and uninitialized */ - blockpos = -1; -} - -/* This function outputs a single byte. If output is in PFB format then output - is buffered through blockbuf[]. If output is in PFA format, then output - will be hexadecimal if in_eexec is set, ASCII otherwise. */ - -static void output_byte(byte b) -{ - static char *hexchar = "0123456789ABCDEF"; - static int hexcol = 0; - - if (pfb) { - /* PFB */ - if (blockpos < 0) { - fputc(MARKER, ofp); - fputc(blocktyp, ofp); - blockpos = 0; - } - blockbuf[blockpos++] = b; - if (blockpos == blocklen) - output_block(); - } else { - /* PFA */ - if (in_eexec) { - /* trim hexadecimal lines to 64 columns */ - if (hexcol >= 64) { - fputc('\n', ofp); - hexcol = 0; - } - fputc(hexchar[(b >> 4) & 0xf], ofp); - fputc(hexchar[b & 0xf], ofp); - hexcol += 2; - } else { - fputc(b, ofp); - } - } -} - -/* This function outputs a byte through possible eexec encryption. */ - -static void eexec_byte(byte b) -{ - if (in_eexec) - output_byte(eencrypt(b)); - else - output_byte(b); -} - -/* This function outputs a null-terminated string through possible eexec - encryption. */ - -static void eexec_string(char *string) -{ - while (*string) - eexec_byte((byte) *string++); -} - -/* This function gets ready for the eexec-encrypted data. If output is in - PFB format then flush current ASCII block and get ready for binary block. - We start encryption with four random (zero) bytes. */ - -static void eexec_start() -{ - eexec_string(line); - if (pfb) { - output_block(); - blocktyp = BINARY; - } - - in_eexec = 1; - er = 55665; - eexec_byte(0); - eexec_byte(0); - eexec_byte(0); - eexec_byte(0); -} - -/* This function wraps-up the eexec-encrypted data. - If output is in PFB format then this entails flushing binary block and - starting an ASCII block. */ - -static void eexec_end() -{ - int i, j; - - if (pfb) { - output_block(); - blocktyp = ASCII; - } else { - fputc('\n', ofp); - } - in_eexec = 0; - for (i = 0; i < 8; i++) { - for (j = 0; j < 64; j++) - eexec_byte('0'); - eexec_byte('\n'); - } -#if 0 - eexec_string("cleartomark\n"); -#endif -} - -/* This function writes ASCII trailer. - If output is in PFB format then this entails flushing binary block and - starting an ASCII block. */ - -static void file_end() -{ - if (pfb) { - output_block(); - fputc(MARKER, ofp); - fputc(DONE, ofp); - } -} -/* This function returns an input line of characters. A line is terminated by - length (including terminating null) greater than LINESIZE, a newline \n, or - when active (looking for charstrings) by '{'. When terminated by a newline - the newline is put into line[]. When terminated by '{', the '{' is not put - into line[], and the flag start_charstring is set to 1. */ - -static void t1asm_getline() -{ - int c; - char *p = line; - int comment = 0; - - start_charstring = 0; - while (p < line + LINESIZE) { - c = fgetc(ifp); - if (c == EOF) - break; - if (c == '%') - comment = 1; - if (active && !comment && c == '{') { - start_charstring = 1; - break; - } - *p++ = (char) c; - if (c == '\n') - break; - } - *p = '\0'; -} - -/* This function is used by the binary search, bsearch(), for command names in - the command table. */ - -static int __cdecl command_compare(const void *key, const void *item) -{ - return strcmp((char *) key, ((struct command *) item)->name); -} - -/* This function returns 1 if the string is an integer and 0 otherwise. */ - -static int is_integer(char *string) -{ - if (isdigit(string[0]) || string[0] == '-' || string[0] == '+') { - while (*++string && isdigit(*string)) - ; /* deliberately empty */ - if (!*string) - return 1; - } - return 0; -} - -/* This function initializes charstring encryption. Note that this is called - at the beginning of every charstring. */ - -static void charstring_start() -{ - int i; - - charstring_bp = charstring_buf; - cr = 4330; - for (i = 0; i < lenIV; i++) - *charstring_bp++ = cencrypt((byte) 0); -} - -/* This function encrypts and buffers a single byte of charstring data. */ - -static void charstring_byte(int v) -{ - byte b = (byte) (v & 0xff); - - if (charstring_bp - charstring_buf > sizeof(charstring_buf)) { - fprintf(stderr, "error: charstring_buf full (%d bytes)\n", - sizeof(charstring_buf)); - exit(1); - } - *charstring_bp++ = cencrypt(b); -} - -/* This function outputs buffered, encrypted charstring data through possible - eexec encryption. */ - -static void charstring_end() -{ - byte *bp; - - sprintf(line, "%d ", charstring_bp - charstring_buf); - eexec_string(line); - sprintf(line, "%s ", cs_start); - eexec_string(line); - for (bp = charstring_buf; bp < charstring_bp; bp++) - eexec_byte(*bp); -} - -/* This function generates the charstring representation of an integer. */ - -static void charstring_int(int num) -{ - int x; - - if (num >= -107 && num <= 107) { - charstring_byte(num + 139); - } else if (num >= 108 && num <= 1131) { - x = num - 108; - charstring_byte(x / 256 + 247); - charstring_byte(x % 256); - } else if (num >= -1131 && num <= -108) { - x = abs(num) - 108; - charstring_byte(x / 256 + 251); - charstring_byte(x % 256); - } else if (num >= (-2147483647-1) && num <= 2147483647) { - charstring_byte(255); - charstring_byte(num >> 24); - charstring_byte(num >> 16); - charstring_byte(num >> 8); - charstring_byte(num); - } else { - fprintf(stderr, - "error: cannot format the integer %d, too large\n", num); - exit(1); - } -} - -/* This function parses an entire charstring into integers and commands, - outputting bytes through the charstring buffer. */ - -static void parse_charstring() -{ - struct command *cp; - - charstring_start(); - while (fscanf(ifp, "%s", line) == 1) { - if (line[0] == '%') { - /* eat comment to end of line */ - while (fgetc(ifp) != '\n' && !feof(ifp)) - ; /* deliberately empty */ - continue; - } - if (line[0] == '}') - break; - if (is_integer(line)) { - charstring_int(atoi(line)); - } else { - cp = (struct command *) - bsearch((void *) line, (void *) command_table, - sizeof(command_table) / sizeof(struct command), - sizeof(struct command), - command_compare); - if (cp) { - charstring_byte(cp->one); - if (cp->two >= 0) - charstring_byte(cp->two); - } else { - fprintf(stderr, "error: cannot use `%s' in charstring\n",line); - exit(1); - } - } - } - charstring_end(); -} - -static void usage() -{ - fprintf(stderr, - "usage: t1asm [-b] [-l block-length] [input [output]]\n"); - fprintf(stderr, - "\n-b means output in PFB format, otherwise PFA format.\n"); - fprintf(stderr, - "The block length applies to the length of blocks in the\n"); - fprintf(stderr, - "PFB output file; the default is to use the largest possible.\n"); - exit(1); -} - -static void print_banner() -{ - static char rcs_revision[] = ""; /* removed RCS */ - static char revision[20]; - - if (sscanf(rcs_revision, "$Revision: %19s", revision) != 1) - revision[0] = '\0'; - fprintf(stderr, "This is t1asm %s.\n", revision); -} - -#ifdef STANDALONE -int main(int argc, char **argv) -{ - char *p, *q, *r; - int c; - - extern char *optarg; - extern int optind; - - ifp = stdin; - ofp = stdout; - - print_banner(); - - /* interpret command line arguments using getopt */ - while ((c = getopt(argc, argv, "bl:")) != -1) - switch (c) { - case 'b': - pfb = 1; - break; - case 'l': - blocklen = atoi(optarg); - if (blocklen < MINBLOCKLEN) { - blocklen = MINBLOCKLEN; - fprintf(stderr, - "warning: using minimum block length of %d\n", - blocklen); - } else if (blocklen > MAXBLOCKLEN) { - blocklen = MAXBLOCKLEN; - fprintf(stderr, - "warning: using maximum block length of %d\n", - blocklen); - } - break; - default: - usage(); - break; - } - if (argc - optind > 2) - usage(); - - /* possibly open input & output files */ - if (argc - optind >= 1) { - ifp = fopen(argv[optind], "r"); - if (!ifp) { - fprintf(stderr, "error: cannot open %s for reading\n", argv[1]); - exit(1); - } - } - if (argc - optind >= 2) { - ofp = fopen(argv[optind + 1], "w"); - if (!ofp) { - fprintf(stderr, "error: cannot open %s for writing\n", argv[2]); - exit(1); - } - } - -#else -int runt1asm(int pfbflag) -{ - char *p, *q, *r; - - pfb = pfbflag; -#endif - - #ifdef _MSDOS - /* If we are processing a PFB (binary) output */ - /* file, we must set its file mode to binary. */ - if (pfb) - _setmode(_fileno(ofp), _O_BINARY); - #endif - - /* Finally, we loop until no more input. Some special things to look for - are the `currentfile eexec' line, the beginning of the `/Subrs' - definition, the definition of `/lenIV', and the definition of the - charstring start command which has `...string currentfile...' in it. */ - - while (!feof(ifp) && !ferror(ifp)) { - t1asm_getline(); - if (strcmp(line, "currentfile eexec\n") == 0) { - eexec_start(); - continue; - } else if (strstr(line, "/Subrs") && isspace(line[6])) { - active = 1; - } else if ((p = strstr(line, "/lenIV"))) { - sscanf(p, "%*s %d", &lenIV); - } else if ((p = strstr(line, "string currentfile"))) { - /* locate the name of the charstring start command */ - *p = '\0'; /* damage line[] */ - q = strrchr(line, '/'); - if (q) { - r = cs_start; - ++q; - while (!isspace(*q) && *q != '{') - *r++ = *q++; - *r = '\0'; - } - *p = 's'; /* repair line[] */ - } - /* output line data */ - eexec_string(line); - if ((p = strstr(line, "currentfile closefile"))) { - eexec_end(); - } - if (start_charstring) { - if (!cs_start[0]) { - fprintf(stderr, "error: couldn't find charstring start command\n"); - exit(1); - } - parse_charstring(); - } - } - file_end(); - - fclose(ifp); - fclose(ofp); - - return 0; -} diff --git a/Build/source/texk/ttf2pt1/ttf.c b/Build/source/texk/ttf2pt1/ttf.c deleted file mode 100644 index adf4f711267..00000000000 --- a/Build/source/texk/ttf2pt1/ttf.c +++ /dev/null @@ -1,1479 +0,0 @@ -/* - * True Type Font to Adobe Type 1 font converter - * By Mark Heath <mheath@netspace.net.au> - * Based on ttf2pfa by Andrew Weeks <ccsaw@bath.ac.uk> - * With help from Frank M. Siegert <fms@this.net> - * - * see COPYRIGHT - * - */ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <time.h> -#include <ctype.h> -#include <math.h> - -#ifndef WINDOWS -# include <unistd.h> -# include <netinet/in.h> -#else -# include "winport.h" -#endif - -#include "ttf.h" -#include "pt1.h" -#include "global.h" - -/* prototypes of call entries */ -static void openfont(char *fname, char *arg); -static void closefont( void); -static int getnglyphs ( void); -static int glnames( GLYPH *glyph_list); -static void glmetrics( GLYPH *glyph_list); -static int glenc( GLYPH *glyph_list, int *encoding, int *unimap); -static void fnmetrics( struct font_metrics *fm); -static void glpath( int glyphno, GLYPH *glyph_list); -static void kerning( GLYPH *glyph_list); - -/* globals */ - -/* front-end descriptor */ -struct frontsw ttf_sw = { - /*name*/ "ttf", - /*descr*/ "built-in TTF support", - /*suffix*/ { "ttf" }, - /*open*/ openfont, - /*close*/ closefont, - /*nglyphs*/ getnglyphs, - /*glnames*/ glnames, - /*glmetrics*/ glmetrics, - /*glenc*/ glenc, - /*fnmetrics*/ fnmetrics, - /*glpath*/ glpath, - /*kerning*/ kerning, -}; - -/* statics */ - -static FILE *ttf_file; -static int ttf_nglyphs, long_offsets; - -static TTF_DIRECTORY *directory; -static TTF_DIR_ENTRY *dir_entry; -static char *filebuffer; -static char *filebuffer_end; -static TTF_NAME *name_table = NULL; -static TTF_NAME_REC *name_record; -static TTF_HEAD *head_table = NULL; -static TTF_HHEA *hhea_table = NULL; -static TTF_KERN *kern_table = NULL; -static TTF_CMAP *cmap_table = NULL; -static LONGHORMETRIC *hmtx_table = NULL; -static TTF_GLYF *glyf_table; -static BYTE *glyf_start = NULL; -static TTF_MAXP *maxp_table = NULL; -static TTF_POST_HEAD *post_table = NULL; -static union { - USHORT *sp; - ULONG *lp; -} loca_table; -#define short_loca_table loca_table.sp -#define long_loca_table loca_table.lp - -static short cmap_n_segs; -static USHORT *cmap_seg_start, *cmap_seg_end; -static short *cmap_idDelta, *cmap_idRangeOffset; -static TTF_CMAP_FMT0 *encoding0; -static int enc_type; - -static char name_buffer[2000]; -static char *name_fields[8]; - -static int enc_found_ms, enc_found_mac; - -static char *mac_glyph_names[258] = { - ".notdef", ".null", "CR", - "space", "exclam", "quotedbl", "numbersign", - "dollar", "percent", "ampersand", "quotesingle", - "parenleft", "parenright", "asterisk", "plus", - "comma", "hyphen", "period", "slash", - "zero", "one", "two", "three", - "four", "five", "six", "seven", - "eight", "nine", "colon", "semicolon", - "less", "equal", "greater", "question", - "at", "A", "B", "C", - "D", "E", "F", "G", - "H", "I", "J", "K", - "L", "M", "N", "O", - "P", "Q", "R", "S", - "T", "U", "V", "W", - "X", "Y", "Z", "bracketleft", - "backslash", "bracketright", "asciicircum", "underscore", - "grave", "a", "b", "c", - "d", "e", "f", "g", - "h", "i", "j", "k", - "l", "m", "n", "o", - "p", "q", "r", "s", - "t", "u", "v", "w", - "x", "y", "z", "braceleft", - "bar", "braceright", "asciitilde", "Adieresis", - "Aring", "Ccedilla", "Eacute", "Ntilde", - "Odieresis", "Udieresis", "aacute", "agrave", - "acircumflex", "adieresis", "atilde", "aring", - "ccedilla", "eacute", "egrave", "ecircumflex", - "edieresis", "iacute", "igrave", "icircumflex", - "idieresis", "ntilde", "oacute", "ograve", - "ocircumflex", "odieresis", "otilde", "uacute", - "ugrave", "ucircumflex", "udieresis", "dagger", - "degree", "cent", "sterling", "section", - "bullet", "paragraph", "germandbls", "registered", - "copyright", "trademark", "acute", "dieresis", - "notequal", "AE", "Oslash", "infinity", - "plusminus", "lessequal", "greaterequal", "yen", - "mu", "partialdiff", "summation", "product", - "pi", "integral", "ordfeminine", "ordmasculine", - "Omega", "ae", "oslash", "questiondown", - "exclamdown", "logicalnot", "radical", "florin", - "approxequal", "increment", "guillemotleft", "guillemotright", - "ellipsis", "nbspace", "Agrave", "Atilde", - "Otilde", "OE", "oe", "endash", - "emdash", "quotedblleft", "quotedblright", "quoteleft", - "quoteright", "divide", "lozenge", "ydieresis", - "Ydieresis", "fraction", "currency", "guilsinglleft", - "guilsinglright", "fi", "fl", "daggerdbl", - "periodcentered", "quotesinglbase", "quotedblbase", "perthousand", - "Acircumflex", "Ecircumflex", "Aacute", "Edieresis", - "Egrave", "Iacute", "Icircumflex", "Idieresis", - "Igrave", "Oacute", "Ocircumflex", "applelogo", - "Ograve", "Uacute", "Ucircumflex", "Ugrave", - "dotlessi", "circumflex", "tilde", "macron", - "breve", "dotaccent", "ring", "cedilla", - "hungarumlaut", "ogonek", "caron", "Lslash", - "lslash", "Scaron", "scaron", "Zcaron", - "zcaron", "brokenbar", "Eth", "eth", - "Yacute", "yacute", "Thorn", "thorn", - "minus", "multiply", "onesuperior", "twosuperior", - "threesuperior", "onehalf", "onequarter", "threequarters", - "franc", "Gbreve", "gbreve", "Idot", - "Scedilla", "scedilla", "Cacute", "cacute", - "Ccaron", "ccaron", "dmacron" -}; - -/* other prototypes */ -static void draw_composite_glyf( GLYPH *g, GLYPH *glyph_list, int glyphno, - double *matrix, int level); -static void draw_simple_glyf( GLYPH *g, GLYPH *glyph_list, int glyphno, - double *matrix); -static double f2dot14( short x); - -/* get the TTF description table address and length for this index */ - -static void -get_glyf_table( - int glyphno, - TTF_GLYF **tab, - int *len -) -{ - if(tab!=NULL) { - if (long_offsets) { - *tab = (TTF_GLYF *) (glyf_start + ntohl(long_loca_table[glyphno])); - } else { - *tab = (TTF_GLYF *) (glyf_start + (ntohs(short_loca_table[glyphno]) << 1)); - } - } - if(len!=NULL) { - if (long_offsets) { - *len = ntohl(long_loca_table[glyphno + 1]) - ntohl(long_loca_table[glyphno]); - } else { - *len = (ntohs(short_loca_table[glyphno + 1]) - ntohs(short_loca_table[glyphno])) << 1; - } - } -} - -static void -handle_name(void) -{ - int j, k, lang, len, platform; - char *p, *string_area; - char *nbp = name_buffer; - int found3 = 0; - - string_area = (char *) name_table + ntohs(name_table->offset); - name_record = &(name_table->nameRecords); - - for (j = 0; j < 8; j++) { - name_fields[j] = ""; - } - - for (j = 0; j < ntohs(name_table->numberOfNameRecords); j++) { - - platform = ntohs(name_record->platformID); - - if (platform == 3) { - - found3 = 1; - lang = ntohs(name_record->languageID) & 0xff; - len = ntohs(name_record->stringLength); - if (lang == 0 || lang == 9) { - k = ntohs(name_record->nameID); - if (k < 8) { - name_fields[k] = nbp; - - p = string_area + ntohs(name_record->stringOffset); - for (k = 0; k < len; k++) { - if (p[k] != '\0') { - if (p[k] == '(') { - *nbp = '['; - } else if (p[k] == ')') { - *nbp = ']'; - } else { - *nbp = p[k]; - } - nbp++; - } - } - *nbp = '\0'; - nbp++; - } - } - } - name_record++; - } - - string_area = (char *) name_table + ntohs(name_table->offset); - name_record = &(name_table->nameRecords); - - if (!found3) { - for (j = 0; j < ntohs(name_table->numberOfNameRecords); j++) { - - platform = ntohs(name_record->platformID); - - if (platform == 1) { - - found3 = 1; - lang = ntohs(name_record->languageID) & 0xff; - len = ntohs(name_record->stringLength); - if (lang == 0 || lang == 9) { - k = ntohs(name_record->nameID); - if (k < 8) { - name_fields[k] = nbp; - - p = string_area + ntohs(name_record->stringOffset); - for (k = 0; k < len; k++) { - if (p[k] != '\0') { - if (p[k] == '(') { - *nbp = '['; - } else if (p[k] == ')') { - *nbp = ']'; - } else { - *nbp = p[k]; - } - nbp++; - } - } - *nbp = '\0'; - nbp++; - } - } - } - name_record++; - } - } - if (!found3) { - fprintf(stderr, "**** Cannot decode font name fields ****\n"); - exit(1); - } - if (name_fields[4][0] == 0) { /* Full Name empty, use Family Name */ - name_fields[4] = name_fields[1]; - } - if (name_fields[6][0] == 0) { /* Font Name empty, use Full Name */ - name_fields[6] = name_fields[4]; - if (name_fields[6][0] == 0) { /* oops, empty again */ - WARNING_1 fprintf(stderr, "Font name is unknown, setting to \"Unknown\"\n"); - name_fields[6] = "Unknown"; - } - } - p = name_fields[6]; - /* must not start with a digit */ - if(isdigit(*p)) - *p+= 'A'-'0'; /* change to a letter */ - while (*p != '\0') { - if (!isalnum(*p) || *p=='_') { - *p = '-'; - } - p++; - } -} - -static void -handle_head(void) -{ - long_offsets = ntohs(head_table->indexToLocFormat); - if (long_offsets != 0 && long_offsets != 1) { - fprintf(stderr, "**** indexToLocFormat wrong ****\n"); - exit(1); - } -} - -/* limit the recursion level to avoid cycles */ -#define MAX_COMPOSITE_LEVEL 20 - -static void -draw_composite_glyf( - GLYPH *g, - GLYPH *glyph_list, - int glyphno, - double *orgmatrix, - int level -) -{ - int len; - short ncontours; - USHORT flagbyte, glyphindex; - double arg1, arg2; - BYTE *ptr; - char *bptr; - SHORT *sptr; - double matrix[6], newmatrix[6]; - - get_glyf_table(glyphno, &glyf_table, &len); - - if(len<=0) /* nothing to do */ - return; - - ncontours = ntohs(glyf_table->numberOfContours); - if (ncontours >= 0) { /* simple case */ - draw_simple_glyf(g, glyph_list, glyphno, orgmatrix); - return; - } - - if(ISDBG(COMPOSITE) && level ==0) - fprintf(stderr, "* %s [ %.2f %.2f %.2f %.2f %.2f %.2f ]\n", g->name, - orgmatrix[0], orgmatrix[1], orgmatrix[2], orgmatrix[3], - orgmatrix[4], orgmatrix[5]); - - /* complex case */ - if(level >= MAX_COMPOSITE_LEVEL) { - WARNING_1 fprintf(stderr, - "*** Glyph %s: stopped (possibly infinite) recursion at depth %d\n", - g->name, level); - return; - } - - ptr = ((BYTE *) glyf_table + sizeof(TTF_GLYF)); - sptr = (SHORT *) ptr; - do { - flagbyte = ntohs(*sptr); - sptr++; - glyphindex = ntohs(*sptr); - sptr++; - - if (flagbyte & ARG_1_AND_2_ARE_WORDS) { - arg1 = (short)ntohs(*sptr); - sptr++; - arg2 = (short)ntohs(*sptr); - sptr++; - } else { - bptr = (char *) sptr; - arg1 = (signed char) bptr[0]; - arg2 = (signed char) bptr[1]; - sptr++; - } - matrix[1] = matrix[2] = 0.0; - - if (flagbyte & WE_HAVE_A_SCALE) { - matrix[0] = matrix[3] = f2dot14(*sptr); - sptr++; - } else if (flagbyte & WE_HAVE_AN_X_AND_Y_SCALE) { - matrix[0] = f2dot14(*sptr); - sptr++; - matrix[3] = f2dot14(*sptr); - sptr++; - } else if (flagbyte & WE_HAVE_A_TWO_BY_TWO) { - matrix[0] = f2dot14(*sptr); - sptr++; - matrix[1] = f2dot14(*sptr); - sptr++; - matrix[2] = f2dot14(*sptr); - sptr++; - matrix[3] = f2dot14(*sptr); - sptr++; - } else { - matrix[0] = matrix[3] = 1.0; - } - - /* - * See * - * http://fonts.apple.com/TTRefMan/RM06/Chap6g - * lyf.html * matrix[0,1,2,3,4,5]=a,b,c,d,m,n - */ - - if (fabs(matrix[0]) > fabs(matrix[1])) - matrix[4] = fabs(matrix[0]); - else - matrix[4] = fabs(matrix[1]); - if (fabs(fabs(matrix[0]) - fabs(matrix[2])) <= 33. / 65536.) - matrix[4] *= 2.0; - - if (fabs(matrix[2]) > fabs(matrix[3])) - matrix[5] = fabs(matrix[2]); - else - matrix[5] = fabs(matrix[3]); - if (fabs(fabs(matrix[2]) - fabs(matrix[3])) <= 33. / 65536.) - matrix[5] *= 2.0; - - /* - * fprintf (stderr,"Matrix Opp %hd - * %hd\n",arg1,arg2); - */ -#if 0 - fprintf(stderr, "Matrix: %f %f %f %f %f %f\n", - matrix[0], matrix[1], matrix[2], matrix[3], - matrix[4], matrix[5]); - fprintf(stderr, "Offset: %f %f (%s)\n", - arg1, arg2, - ((flagbyte & ARGS_ARE_XY_VALUES) ? "XY" : "index")); -#endif - - if (flagbyte & ARGS_ARE_XY_VALUES) { - matrix[4] *= arg1; - matrix[5] *= arg2; - } else { - WARNING_1 fprintf(stderr, - "*** Glyph %s: reusing scale from another glyph is unsupported\n", - g->name); - /* - * must extract values from a glyph - * but it seems to be too much pain - * and it's not clear now that it - * would be really used in any - * interesting font - */ - } - - /* at this point arg1,arg2 contain what logically should be matrix[4,5] */ - - /* combine matrices */ - - newmatrix[0] = orgmatrix[0]*matrix[0] + orgmatrix[2]*matrix[1]; - newmatrix[1] = orgmatrix[0]*matrix[2] + orgmatrix[2]*matrix[3]; - - newmatrix[2] = orgmatrix[1]*matrix[0] + orgmatrix[3]*matrix[1]; - newmatrix[3] = orgmatrix[1]*matrix[2] + orgmatrix[3]*matrix[3]; - - newmatrix[4] = orgmatrix[0]*matrix[4] + orgmatrix[2]*matrix[5] + orgmatrix[4]; - newmatrix[5] = orgmatrix[1]*matrix[4] + orgmatrix[3]*matrix[5] + orgmatrix[5]; - - if(ISDBG(COMPOSITE)) { - fprintf(stderr, "%*c+-> %2d %s [ %.2f %.2f %.2f %.2f %.2f %.2f ]\n", - level+1, ' ', level, glyph_list[glyphindex].name, - matrix[0], matrix[1], matrix[2], matrix[3], - matrix[4], matrix[5]); - fprintf(stderr, "%*c = [ %.2f %.2f %.2f %.2f %.2f %.2f ]\n", - level+1, ' ', - newmatrix[0], newmatrix[1], newmatrix[2], newmatrix[3], - newmatrix[4], newmatrix[5]); - } - draw_composite_glyf(g, glyph_list, glyphindex, newmatrix, level+1); - - } while (flagbyte & MORE_COMPONENTS); -} - -static void -draw_simple_glyf( - GLYPH *g, - GLYPH *glyph_list, - int glyphno, - double *matrix -) -{ - int i, j, k, k1, len, first, cs, ce; - /* We assume that hsbw always sets to(0, 0) */ - double xlast = 0, ylast = 0; - int finished, nguide, contour_start, contour_end; - short ncontours, n_inst, last_point; - USHORT *contour_end_pt; - BYTE *ptr; -#define GLYFSZ 2000 - short xabs[GLYFSZ], yabs[GLYFSZ], xrel[GLYFSZ], yrel[GLYFSZ]; - double xcoord[GLYFSZ], ycoord[GLYFSZ]; - BYTE flags[GLYFSZ]; - double tx, ty; - int needreverse = 0; /* transformation may require - * that */ - GENTRY *lge; - - lge = g->lastentry; - - get_glyf_table(glyphno, &glyf_table, &len); - - if (len <= 0) { - WARNING_1 fprintf(stderr, - "**** Composite glyph %s refers to non-existent glyph %s, ignored\n", - g->name, - glyph_list[glyphno].name); - return; - } - ncontours = ntohs(glyf_table->numberOfContours); - if (ncontours < 0) { - WARNING_1 fprintf(stderr, - "**** Composite glyph %s refers to composite glyph %s, ignored\n", - g->name, - glyph_list[glyphno].name); - return; - } - contour_end_pt = (USHORT *) ((char *) glyf_table + sizeof(TTF_GLYF)); - - last_point = ntohs(contour_end_pt[ncontours - 1]); - n_inst = ntohs(contour_end_pt[ncontours]); - - ptr = ((BYTE *) contour_end_pt) + (ncontours << 1) + n_inst + 2; - j = k = 0; - while (k <= last_point) { - flags[k] = ptr[j]; - - if (ptr[j] & REPEAT) { - for (k1 = 0; k1 < ptr[j + 1]; k1++) { - k++; - flags[k] = ptr[j]; - } - j++; - } - j++; - k++; - } - - for (k = 0; k <= last_point; k++) { - if (flags[k] & XSHORT) { - if (flags[k] & XSAME) { - xrel[k] = ptr[j]; - } else { - xrel[k] = -ptr[j]; - } - j++; - } else if (flags[k] & XSAME) { - xrel[k] = 0.0; - } else { - xrel[k] = (short)( ptr[j] * 256 + ptr[j + 1] ); - j += 2; - } - if (k == 0) { - xabs[k] = xrel[k]; - } else { - xabs[k] = xrel[k] + xabs[k - 1]; - } - - } - - for (k = 0; k <= last_point; k++) { - if (flags[k] & YSHORT) { - if (flags[k] & YSAME) { - yrel[k] = ptr[j]; - } else { - yrel[k] = -ptr[j]; - } - j++; - } else if (flags[k] & YSAME) { - yrel[k] = 0; - } else { - yrel[k] = ptr[j] * 256 + ptr[j + 1]; - j += 2; - } - if (k == 0) { - yabs[k] = yrel[k]; - } else { - yabs[k] = yrel[k] + yabs[k - 1]; - } - } - - if (matrix) { - for (i = 0; i <= last_point; i++) { - tx = xabs[i]; - ty = yabs[i]; - xcoord[i] = fscale(matrix[0] * tx + matrix[2] * ty + matrix[4]); - ycoord[i] = fscale(matrix[1] * tx + matrix[3] * ty + matrix[5]); - } - } else { - for (i = 0; i <= last_point; i++) { - xcoord[i] = fscale(xabs[i]); - ycoord[i] = fscale(yabs[i]); - } - } - - i = j = 0; - first = 1; - - while (i <= ntohs(contour_end_pt[ncontours - 1])) { - contour_end = ntohs(contour_end_pt[j]); - - if (first) { - fg_rmoveto(g, xcoord[i], ycoord[i]); - xlast = xcoord[i]; - ylast = ycoord[i]; - contour_start = i; - first = 0; - } else if (flags[i] & ONOROFF) { - fg_rlineto(g, xcoord[i], ycoord[i]); - xlast = xcoord[i]; - ylast = ycoord[i]; - } else { - cs = i - 1; - finished = nguide = 0; - while (!finished) { - if (i == contour_end + 1) { - ce = contour_start; - finished = 1; - } else if (flags[i] & ONOROFF) { - ce = i; - finished = 1; - } else { - i++; - nguide++; - } - } - - switch (nguide) { - case 0: - fg_rlineto(g, xcoord[ce], ycoord[ce]); - xlast = xcoord[ce]; - ylast = ycoord[ce]; - break; - - case 1: - fg_rrcurveto(g, - (xcoord[cs] + 2.0 * xcoord[cs + 1]) / 3.0, - (ycoord[cs] + 2.0 * ycoord[cs + 1]) / 3.0, - (2.0 * xcoord[cs + 1] + xcoord[ce]) / 3.0, - (2.0 * ycoord[cs + 1] + ycoord[ce]) / 3.0, - xcoord[ce], - ycoord[ce] - ); - xlast = xcoord[ce]; - ylast = ycoord[ce]; - - break; - - case 2: - fg_rrcurveto(g, - (-xcoord[cs] + 4.0 * xcoord[cs + 1]) / 3.0, - (-ycoord[cs] + 4.0 * ycoord[cs + 1]) / 3.0, - (4.0 * xcoord[cs + 2] - xcoord[ce]) / 3.0, - (4.0 * ycoord[cs + 2] - ycoord[ce]) / 3.0, - xcoord[ce], - ycoord[ce] - ); - xlast = xcoord[ce]; - ylast = ycoord[ce]; - break; - - case 3: - fg_rrcurveto(g, - (xcoord[cs] + 2.0 * xcoord[cs + 1]) / 3.0, - (ycoord[cs] + 2.0 * ycoord[cs + 1]) / 3.0, - (5.0 * xcoord[cs + 1] + xcoord[cs + 2]) / 6.0, - (5.0 * ycoord[cs + 1] + ycoord[cs + 2]) / 6.0, - (xcoord[cs + 1] + xcoord[cs + 2]) / 2.0, - (ycoord[cs + 1] + ycoord[cs + 2]) / 2.0 - ); - - fg_rrcurveto(g, - (xcoord[cs + 1] + 5.0 * xcoord[cs + 2]) / 6.0, - (ycoord[cs + 1] + 5.0 * ycoord[cs + 2]) / 6.0, - (5.0 * xcoord[cs + 2] + xcoord[cs + 3]) / 6.0, - (5.0 * ycoord[cs + 2] + ycoord[cs + 3]) / 6.0, - (xcoord[cs + 3] + xcoord[cs + 2]) / 2.0, - (ycoord[cs + 3] + ycoord[cs + 2]) / 2.0 - ); - - fg_rrcurveto(g, - (xcoord[cs + 2] + 5.0 * xcoord[cs + 3]) / 6.0, - (ycoord[cs + 2] + 5.0 * ycoord[cs + 3]) / 6.0, - (2.0 * xcoord[cs + 3] + xcoord[ce]) / 3.0, - (2.0 * ycoord[cs + 3] + ycoord[ce]) / 3.0, - xcoord[ce], - ycoord[ce] - ); - ylast = ycoord[ce]; - xlast = xcoord[ce]; - - break; - - default: - k1 = cs + nguide; - fg_rrcurveto(g, - (xcoord[cs] + 2.0 * xcoord[cs + 1]) / 3.0, - (ycoord[cs] + 2.0 * ycoord[cs + 1]) / 3.0, - (5.0 * xcoord[cs + 1] + xcoord[cs + 2]) / 6.0, - (5.0 * ycoord[cs + 1] + ycoord[cs + 2]) / 6.0, - (xcoord[cs + 1] + xcoord[cs + 2]) / 2.0, - (ycoord[cs + 1] + ycoord[cs + 2]) / 2.0 - ); - - for (k = cs + 2; k <= k1 - 1; k++) { - fg_rrcurveto(g, - (xcoord[k - 1] + 5.0 * xcoord[k]) / 6.0, - (ycoord[k - 1] + 5.0 * ycoord[k]) / 6.0, - (5.0 * xcoord[k] + xcoord[k + 1]) / 6.0, - (5.0 * ycoord[k] + ycoord[k + 1]) / 6.0, - (xcoord[k] + xcoord[k + 1]) / 2.0, - (ycoord[k] + ycoord[k + 1]) / 2.0 - ); - - } - - fg_rrcurveto(g, - (xcoord[k1 - 1] + 5.0 * xcoord[k1]) / 6.0, - (ycoord[k1 - 1] + 5.0 * ycoord[k1]) / 6.0, - (2.0 * xcoord[k1] + xcoord[ce]) / 3.0, - (2.0 * ycoord[k1] + ycoord[ce]) / 3.0, - xcoord[ce], - ycoord[ce] - ); - xlast = xcoord[ce]; - ylast = ycoord[ce]; - - break; - } - } - if (i >= contour_end) { - g_closepath(g); - first = 1; - i = contour_end + 1; - j++; - } else { - i++; - } - } - - if (matrix) { - /* guess whether do we need to reverse the results */ - - double x[3], y[3]; - int max = 0, from, to; - - /* transform a triangle going in proper direction */ - /* - * the origin of triangle is in (0,0) so we know it in - * advance - */ - - x[0] = y[0] = 0; - x[1] = matrix[0] * 0 + matrix[2] * 300; - y[1] = matrix[1] * 0 + matrix[3] * 300; - x[2] = matrix[0] * 300 + matrix[2] * 0; - y[2] = matrix[1] * 300 + matrix[3] * 0; - - /* then find the topmost point */ - for (i = 0; i < 3; i++) - if (y[i] > y[max]) - max = i; - from = (max + 3 - 1) % 3; - to = (max + 1) % 3; - - needreverse = 0; - - /* special cases for horizontal lines */ - if (y[max] == y[from]) { - if (x[max] < y[from]) - needreverse = 1; - } else if (y[to] == y[from]) { - if (x[to] < x[max]) - needreverse = 1; - } else { /* generic case */ - if ((x[to] - x[max]) * (y[max] - y[from]) - > (x[max] - x[from]) * (y[to] - y[max])) - needreverse = 1; - } - - if (needreverse) { - if (lge) { - assertpath(lge->next, __FILE__, __LINE__, g->name); - reversepathsfromto(lge->next, NULL); - } else { - assertpath(g->entries, __FILE__, __LINE__, g->name); - reversepaths(g); - } - } - } -} - -static double -f2dot14( - short x -) -{ - short y = ntohs(x); - return (y >> 14) + ((y & 0x3fff) / 16384.0); -} - - -/* check that the pointer points within the file */ -/* returns 0 if pointer is good, 1 if bad */ -static int -badpointer( - void *ptr -) -{ - return (ptr < (void *)filebuffer || ptr >= (void *)filebuffer_end); -} - -/* - * Externally accessible methods - */ - -/* - * Open font and prepare to return information to the main driver. - * May print error and warning messages. - * Exit on error. - */ - -static void -openfont( - char *fname, - char *arg /* unused now */ -) -{ - int i, j; - struct stat statbuf; - static struct { - void **tbpp; /* pointer to pointer to the table */ - char name[5]; /* table name */ - char optional; /* flag: table may be missing */ - } tables[] = { - { (void **)&name_table, "name", 0 }, - { (void **)&head_table, "head", 0 }, - { (void **)&hhea_table, "hhea", 0 }, - { (void **)&post_table, "post", 0 }, - { (void **)&glyf_start, "glyf", 0 }, - { (void **)&cmap_table, "cmap", 0 }, - { (void **)&kern_table, "kern", 1 }, - { (void **)&maxp_table, "maxp", 0 }, - { (void **)&hmtx_table, "hmtx", 0 }, - { (void **)&long_loca_table, "loca", 0 }, - { NULL, "", 0 } /* end of table */ - }; - - if (stat(fname, &statbuf) == -1) { - fprintf(stderr, "**** Cannot access %s ****\n", fname); - exit(1); - } - if ((filebuffer = malloc(statbuf.st_size)) == NULL) { - fprintf(stderr, "**** Cannot malloc space for file ****\n"); - exit(1); - } - - filebuffer_end = filebuffer + statbuf.st_size; - - if ((ttf_file = fopen(fname, "rb")) == NULL) { - fprintf(stderr, "**** Cannot open file '%s'\n", fname); - exit(1); - } else { - WARNING_2 fprintf(stderr, "Processing file %s\n", fname); - } - - if (fread(filebuffer, 1, statbuf.st_size, ttf_file) != statbuf.st_size) { - fprintf(stderr, "**** Could not read whole file \n"); - exit(1); - } - fclose(ttf_file); - - directory = (TTF_DIRECTORY *) filebuffer; - - if (ntohl(directory->sfntVersion) != 0x00010000) { - fprintf(stderr, - "**** Unknown File Version number [%x], or not a TrueType file\n", - directory->sfntVersion); - exit(1); - } - - /* clear the tables */ - for(j=0; tables[j].tbpp != NULL; j++) - *(tables[j].tbpp) = NULL; - - dir_entry = &(directory->list); - - for (i = 0; i < ntohs(directory->numTables); i++) { - - for(j=0; tables[j].tbpp != NULL; j++) - if (memcmp(dir_entry->tag, tables[j].name, 4) == 0) { - *(tables[j].tbpp) = (void *) (filebuffer + ntohl(dir_entry->offset)); - break; - } - - if (memcmp(dir_entry->tag, "EBDT", 4) == 0 || - memcmp(dir_entry->tag, "EBLC", 4) == 0 || - memcmp(dir_entry->tag, "EBSC", 4) == 0) { - WARNING_1 fprintf(stderr, "Font contains bitmaps\n"); - } - dir_entry++; - } - - for(j=0; tables[j].tbpp != NULL; j++) - if(!tables[j].optional && badpointer( *(tables[j].tbpp) )) { - fprintf(stderr, "**** File contains no required table '%s'\n", tables[j].name); - exit(1); - } - - handle_name(); - - handle_head(); - - ttf_nglyphs = ntohs(maxp_table->numGlyphs); - - enc_found_ms = enc_found_mac = 0; -} - -/* - * Close font. - * Exit on error. - */ - -static void -closefont( - void -) -{ - return; /* empty operation */ -} - -/* - * Get the number of glyphs in font. - */ - -static int -getnglyphs ( - void -) -{ - return ttf_nglyphs; -} - -/* - * Get the names of the glyphs. - * Returns 0 if the names were assigned, non-zero if the font - * provides no glyph names. - */ - -static int -glnames( - GLYPH *glyph_list -) -{ - int i, len, n, npost; - unsigned int format; - USHORT *name_index; - char *ptr, *p; - char **ps_name_ptr = (char **) malloc(ttf_nglyphs * sizeof(char *)); - int n_ps_names; - int ps_fmt_3 = 0; - - format = ntohl(post_table->formatType); - - if (format == 0x00010000) { - for (i = 0; i < 258 && i < ttf_nglyphs; i++) { - glyph_list[i].name = mac_glyph_names[i]; - } - } else if (format == 0x00020000) { - npost = ntohs(post_table->numGlyphs); - if (ttf_nglyphs != npost) { - /* This is an error in the font, but we can now cope */ - WARNING_1 fprintf(stderr, "**** Postscript table size mismatch %d/%d ****\n", - npost, ttf_nglyphs); - } - n_ps_names = 0; - name_index = &(post_table->glyphNameIndex); - - /* This checks the integrity of the post table */ - for (i=0; i<npost; i++) { - n = ntohs(name_index[i]); - if (n > n_ps_names + 257) { - n_ps_names = n - 257; - } - } - - ptr = (char *) post_table + 34 + (ttf_nglyphs << 1); - i = 0; - while (*ptr > 0 && i < n_ps_names) { - len = *ptr; - /* previously the program wrote nulls into the table. If the table - was corrupt, this could put zeroes anywhere, leading to obscure bugs, - so now I malloc space for the names. Yes it is much less efficient */ - - if ((p = malloc(len+1)) == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - - ps_name_ptr[i] = p; - strncpy(p, ptr+1, len); - p[len] = '\0'; - i ++; - ptr += len + 1; - } - - if (i != n_ps_names) - { - WARNING_2 fprintf (stderr, "** Postscript Name mismatch %d != %d **\n", - i, n_ps_names); - n_ps_names = i; - } - - /* - * for (i=0; i<n_ps_names; i++) { fprintf(stderr, "i=%d, - * len=%d, name=%s\n", i, ps_name_len[i], ps_name_ptr[i]); } - */ - - for (i = 0; i < npost; i++) { - n = ntohs(name_index[i]); - if (n < 258) { - glyph_list[i].name = mac_glyph_names[n]; - } else if (n < 258 + n_ps_names) { - glyph_list[i].name = ps_name_ptr[n - 258]; - } else { - glyph_list[i].name = malloc(16); - sprintf(glyph_list[i].name, "_g_%d", i); - WARNING_2 fprintf(stderr, - "Glyph No. %d has no postscript name, becomes %s\n", - i, glyph_list[i].name); - } - } - /* Now fake postscript names for all those beyond the end of the table */ - if (npost < ttf_nglyphs) { - for (i=npost; i<ttf_nglyphs; i++) { - if ((glyph_list[i].name = malloc(16)) == NULL) - { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - sprintf(glyph_list[i].name, "_g_%d", i); - WARNING_2 fprintf(stderr, - "Glyph No. %d has no postscript name, becomes %s\n", - i, glyph_list[i].name); - } - } - } else if (format == 0x00030000) { - WARNING_3 fputs("No postscript table, using default\n", stderr); - ps_fmt_3 = 1; - } else if (format == 0x00028000) { - ptr = (char *) &(post_table->numGlyphs); - for (i = 0; i < ttf_nglyphs; i++) { - glyph_list[i].name = mac_glyph_names[i + ptr[i]]; - } - } else { - fprintf(stderr, - "**** Postscript table in wrong format %x ****\n", - format); - exit(1); - } - - return ps_fmt_3; -} - -/* - * Get the metrics of the glyphs. - */ - -static void -glmetrics( - GLYPH *glyph_list -) -{ - int i; - int n_hmetrics = ntohs(hhea_table->numberOfHMetrics); - GLYPH *g; - LONGHORMETRIC *hmtx_entry = hmtx_table; - FWORD *lsblist; - - for (i = 0; i < n_hmetrics; i++) { - g = &(glyph_list[i]); - g->width = ntohs(hmtx_entry->advanceWidth); - g->lsb = ntohs(hmtx_entry->lsb); - hmtx_entry++; - } - - lsblist = (FWORD *) hmtx_entry; - hmtx_entry--; - - for (i = n_hmetrics; i < ttf_nglyphs; i++) { - g = &(glyph_list[i]); - g->width = ntohs(hmtx_entry->advanceWidth); - g->lsb = ntohs(lsblist[i - n_hmetrics]); - } - - for (i = 0; i < ttf_nglyphs; i++) { - g = &(glyph_list[i]); - get_glyf_table(i, &glyf_table, &g->ttf_pathlen); - - g->xMin = (short)ntohs(glyf_table->xMin); - g->xMax = (short)ntohs(glyf_table->xMax); - g->yMin = (short)ntohs(glyf_table->yMin); - g->yMax = (short)ntohs(glyf_table->yMax); - } - -} - - -static void -handle_ms_encoding( - GLYPH *glyph_list, - int *encoding, - int *unimap -) -{ - int j, k, kk, set_ok; - USHORT start, end, ro; - short delta, n; - - for (j = 0; j < cmap_n_segs - 1; j++) { - start = ntohs(cmap_seg_start[j]); - end = ntohs(cmap_seg_end[j]); - delta = ntohs(cmap_idDelta[j]); - ro = ntohs(cmap_idRangeOffset[j]); - - for (k = start; k <= end; k++) { - if (ro == 0) { - n = k + delta; - } else { - n = ntohs(*((ro >> 1) + (k - start) + - &(cmap_idRangeOffset[j]))); - if (delta != 0) - { - /* Not exactly sure how to deal with this circumstance, - I suspect it never occurs */ - n += delta; - fprintf (stderr, - "rangeoffset and delta both non-zero - %d/%d", - ro, delta); - } - } - if(n<0 || n>=ttf_nglyphs) { - WARNING_1 fprintf(stderr, "Font contains a broken glyph code mapping, ignored\n"); - continue; - } - if (glyph_list[n].orig_code != -1) { -#if 0 - if (strcmp(glyph_list[n].name, ".notdef") != 0) { - WARNING_2 fprintf(stderr, - "Glyph %s has >= two encodings (A), %4.4x & %4.4x\n", - glyph_list[n].name, - glyph_list[n].orig_code, - k); - } -#endif - set_ok = 0; - } else { - set_ok = 1; - } - if (enc_type==1 || forcemap) { - kk = unicode_rev_lookup(k); - if(ISDBG(UNICODE)) - fprintf(stderr, "Unicode %s - 0x%04x\n",glyph_list[n].name,k); - if (set_ok) { - glyph_list[n].orig_code = k; - /* glyph_list[n].char_no = kk; */ - } - if (kk >= 0 && kk < ENCTABSZ && encoding[kk] == -1) - encoding[kk] = n; - } else { - if ((k & 0xff00) == 0xf000) { - if( encoding[k & 0x00ff] == -1 ) { - encoding[k & 0x00ff] = n; - if (set_ok) { - /* glyph_list[n].char_no = k & 0x00ff; */ - glyph_list[n].orig_code = k; - } - } - } else { - if (set_ok) { - /* glyph_list[n].char_no = k; */ - glyph_list[n].orig_code = k; - } - WARNING_2 fprintf(stderr, - "Glyph %s has non-symbol encoding %4.4x\n", - glyph_list[n].name, - k & 0xffff); - /* - * just use the code - * as it is - */ - if ((k & ~0xff) == 0 && encoding[k] == -1 ) - encoding[k] = n; - } - } - } - } -} - -static void -handle_mac_encoding( - GLYPH *glyph_list, - int *encoding, - int *unimap -) -{ - short n; - int j, size; - - size = ntohs(encoding0->length) - 6; - for (j = 0; j < size; j++) { - n = encoding0->glyphIdArray[j]; - if (glyph_list[n].char_no != -1) { - WARNING_2 fprintf(stderr, - "Glyph %s has >= two encodings (B), %4.4x & %4.4x\n", - glyph_list[n].name, - glyph_list[n].char_no, - j); - } else { - if (j < ENCTABSZ) { - if(encoding[j] == -1) { - glyph_list[n].char_no = j; - encoding[j] = n; - } - } - } - } -} - -/* - * Get the original encoding of the font. - * Returns 1 for if the original encoding is Unicode, 2 if the - * original encoding is other 16-bit, 0 if 8-bit. - */ - -static int -glenc( - GLYPH *glyph_list, - int *encoding, - int *unimap -) -{ - int num_tables = ntohs(cmap_table->numberOfEncodingTables); - BYTE *ptr; - int i, format, offset, seg_c2, found; - int platform, encoding_id; - TTF_CMAP_ENTRY *table_entry; - TTF_CMAP_FMT4 *encoding4; - - if(enc_found_ms) { - handle_ms_encoding(glyph_list, encoding, unimap); - return enc_type; - } else if(enc_found_mac) { - handle_mac_encoding(glyph_list, encoding, unimap); - return 0; - } - - if(force_pid != -1 && force_pid != 3) { - fputs("*** Only platform ID == 3 is supported\n", stderr); - exit(1); - } - - enc_type = 0; - found = 0; - - for (i = 0; i < num_tables && !found; i++) { - table_entry = &(cmap_table->encodingTable[i]); - offset = ntohl(table_entry->offset); - encoding4 = (TTF_CMAP_FMT4 *) ((BYTE *) cmap_table + offset); - format = ntohs(encoding4->format); - platform = ntohs(table_entry->platformID); - encoding_id = ntohs(table_entry->encodingID); - - if (platform == 3 && format == 4) { - if(force_pid == 3) { - if(encoding_id != force_eid) - continue; - WARNING_1 fprintf(stderr, "Found Encoding PID=%d/EID=%d\n", - force_pid, force_eid); - enc_type = 1; - } else { - switch (encoding_id) { - case 0: - WARNING_1 fputs("Found Symbol Encoding\n", stderr); - break; - case 1: - WARNING_1 fputs("Found Unicode Encoding\n", stderr); - enc_type = 1; - break; - default: - WARNING_1 { - fprintf(stderr, - "****MS Encoding ID %d not supported****\n", - encoding_id); - fputs("Treating it like Symbol encoding\n", stderr); - } - break; - } - } - - found = 1; - seg_c2 = ntohs(encoding4->segCountX2); - cmap_n_segs = seg_c2 >> 1; - ptr = (BYTE *) encoding4 + 14; - cmap_seg_end = (USHORT *) ptr; - cmap_seg_start = (USHORT *) (ptr + seg_c2 + 2); - cmap_idDelta = (short *) (ptr + (seg_c2 * 2) + 2); - cmap_idRangeOffset = (short *) (ptr + (seg_c2 * 3) + 2); - enc_found_ms = 1; - - handle_ms_encoding(glyph_list, encoding, unimap); - } - } - - if (!found) { - if(force_pid != -1) { - fprintf(stderr, "*** TTF encoding table PID=%d/EID=%d not found\n", - force_pid, force_eid); - exit(1); - } - - WARNING_1 fputs("No Microsoft encoding, looking for MAC encoding\n", stderr); - for (i = 0; i < num_tables && !found; i++) { - table_entry = &(cmap_table->encodingTable[i]); - offset = ntohl(table_entry->offset); - encoding0 = (TTF_CMAP_FMT0 *) ((BYTE *) cmap_table + offset); - format = ntohs(encoding0->format); - platform = ntohs(table_entry->platformID); - encoding_id = ntohs(table_entry->encodingID); - - if (format == 0) { - found = 1; - enc_found_mac = 1; - - handle_mac_encoding(glyph_list, encoding, unimap); - } - } - } - if (!found) { - fprintf(stderr, "**** No Recognised Encoding Table ****\n"); - exit(1); - } - - return enc_type; -} - -/* - * Get the font metrics - */ -static void -fnmetrics( - struct font_metrics *fm -) -{ - char *str; - static int fieldstocheck[]= {2,4,6}; - int i; - - fm->italic_angle = (short) (ntohs(post_table->italicAngle.upper)) + - ((short) ntohs(post_table->italicAngle.lower) / 65536.0); - fm->underline_position = (short) ntohs(post_table->underlinePosition); - fm->underline_thickness = (short) ntohs(post_table->underlineThickness); - fm->is_fixed_pitch = ntohl(post_table->isFixedPitch); - - fm->ascender = (short)ntohs(hhea_table->ascender); - fm->descender = (short)ntohs(hhea_table->descender); - - fm->units_per_em = ntohs(head_table->unitsPerEm); - - fm->bbox[0] = (short) ntohs(head_table->xMin); - fm->bbox[1] = (short) ntohs(head_table->yMin); - fm->bbox[2] = (short) ntohs(head_table->xMax); - fm->bbox[3] = (short) ntohs(head_table->yMax); - - fm->name_copyright = name_fields[0]; - fm->name_family = name_fields[1]; - fm->name_style = name_fields[2]; - fm->name_full = name_fields[4]; - fm->name_version = name_fields[5]; - fm->name_ps = name_fields[6]; - - /* guess the boldness from the font names */ - fm->force_bold=0; - - for(i=0; !fm->force_bold && i<sizeof fieldstocheck /sizeof(int); i++) { - str=name_fields[fieldstocheck[i]]; - for(i=0; str[i]!=0; i++) { - if( (str[i]=='B' - || str[i]=='b' - && ( i==0 || !isalpha(str[i-1]) ) - ) - && !strncmp("old",&str[i+1],3) - && !islower(str[i+4]) - ) { - fm->force_bold=1; - break; - } - } - } -} - -/* - * Get the path of contrours for a glyph. - */ - -static void -glpath( - int glyphno, - GLYPH *glyf_list -) -{ - double matrix[6]; - GLYPH *g; - - g = &glyph_list[glyphno]; - - matrix[0] = matrix[3] = 1.0; - matrix[1] = matrix[2] = matrix[4] = matrix[5] = 0.0; - draw_composite_glyf(g, glyf_list, glyphno, matrix, 0 /*level*/); -} - -/* - * Get the kerning data. - */ - -static void -kerning( - GLYPH *glyph_list -) -{ - TTF_KERN_SUB *subtable; - TTF_KERN_ENTRY *kern_entry; - int i, j; - int ntables; - int npairs; - char *ptr; - - if(kern_table == NULL) { - WARNING_1 fputs("No Kerning data\n", stderr); - return; - } - if(badpointer(kern_table)) { - fputs("**** Defective Kerning table, ignored\n", stderr); - return; - } - - ntables = ntohs(kern_table->nTables); - ptr = (char *) kern_table + 4; - - for (i = 0; i < ntables; i++) { - subtable = (TTF_KERN_SUB *) ptr; - if ((ntohs(subtable->coverage) & 0xff00) == 0) { - npairs = (short) ntohs(subtable->nPairs); - kern_entry = (TTF_KERN_ENTRY *) (ptr + sizeof(TTF_KERN_SUB)); - - kern_entry = (TTF_KERN_ENTRY *) (ptr + sizeof(TTF_KERN_SUB)); - for (j = 0; j < npairs; j++) { - if( kern_entry->value != 0) - addkernpair(ntohs(kern_entry->left), - ntohs(kern_entry->right), (short)ntohs(kern_entry->value)); - kern_entry++; - } - } - ptr += subtable->length; - } -} - diff --git a/Build/source/texk/ttf2pt1/ttf.h b/Build/source/texk/ttf2pt1/ttf.h deleted file mode 100644 index 6fdcbd6f6dd..00000000000 --- a/Build/source/texk/ttf2pt1/ttf.h +++ /dev/null @@ -1,172 +0,0 @@ -/* - * see COPYRIGHT - */ - -/* these definitions are mostly taken from Microsoft's True Type - documentation. -*/ - -#define BYTE unsigned char -#define CHAR signed char -#define USHORT unsigned short -#define SHORT signed short -#define ULONG unsigned int -#define LONG signed int -#define FWORD SHORT -#define UFWORD USHORT - -#define ONOROFF 0x01 -#define XSHORT 0x02 -#define YSHORT 0x04 -#define REPEAT 0x08 -#define XSAME 0x10 -#define YSAME 0x20 - -#define ARG_1_AND_2_ARE_WORDS 0x0001 -#define ARGS_ARE_XY_VALUES 0x0002 -#define XY_BOUND_TO_GRID 0x0004 -#define WE_HAVE_A_SCALE 0x0008 -#define MORE_COMPONENTS 0x0020 -#define WE_HAVE_AN_X_AND_Y_SCALE 0x0040 -#define WE_HAVE_A_TWO_BY_TWO 0x0080 -#define WE_HAVE_INSTRUCTIONS 0x0100 -#define USE_MY_METRICS 0x0200 - -typedef struct short_2 { - SHORT upper; - USHORT lower; -} TTF_FIXED ; - -typedef struct longhormetric { - UFWORD advanceWidth; - FWORD lsb; -} LONGHORMETRIC; - -typedef struct ttf_hhea { - BYTE version[4]; - SHORT ascender, descender, lineGap; - USHORT advnaceWidthMax; - SHORT minLSB, minRSB, xMaxExtent; - SHORT caretSlopeRise, caretSlopeRun; - SHORT reserved[5]; - SHORT metricDataFormat; - USHORT numberOfHMetrics; -} TTF_HHEA; - -typedef struct ttf_dir_entry { - char tag[4]; - ULONG checksum; - ULONG offset; - ULONG length; -} TTF_DIR_ENTRY ; - -typedef struct ttf_directory { - ULONG sfntVersion; - USHORT numTables; - USHORT searchRange; - USHORT entrySelector; - USHORT rangeShift; - TTF_DIR_ENTRY list; -} TTF_DIRECTORY ; - -typedef struct ttf_name_rec { - USHORT platformID; - USHORT encodingID; - USHORT languageID; - USHORT nameID; - USHORT stringLength; - USHORT stringOffset; -} TTF_NAME_REC; - -typedef struct ttf_name { - USHORT format; - USHORT numberOfNameRecords; - USHORT offset; - TTF_NAME_REC nameRecords; -} TTF_NAME ; - -typedef struct ttf_head { - ULONG version; - ULONG fontRevision; - ULONG checksumAdjust; - ULONG magicNo; - USHORT flags; - USHORT unitsPerEm; - BYTE created[8]; - BYTE modified[8]; - FWORD xMin, yMin, xMax, yMax; - USHORT macStyle, lowestRecPPEM; - SHORT fontDirection, indexToLocFormat, glyphDataFormat; -} TTF_HEAD ; - -typedef struct ttf_kern { - USHORT version, nTables; -} TTF_KERN ; - -typedef struct ttf_kern_sub { - USHORT version, length, coverage; - USHORT nPairs, searchRange, entrySelector, rangeShift; -} TTF_KERN_SUB; - -typedef struct ttf_kern_entry { - USHORT left, right; - FWORD value; -} TTF_KERN_ENTRY; - -typedef struct ttf_cmap_fmt0 { - USHORT format; - USHORT length; - USHORT version; - BYTE glyphIdArray[256]; -} TTF_CMAP_FMT0; - -typedef struct ttf_cmap_fmt4 { - USHORT format; - USHORT length; - USHORT version; - USHORT segCountX2; - USHORT searchRange; - USHORT entrySelector; - USHORT rangeShift; -} TTF_CMAP_FMT4; - -typedef struct ttf_cmap_entry { - USHORT platformID; - USHORT encodingID; - ULONG offset; -} TTF_CMAP_ENTRY; - -typedef struct ttf_cmap { - USHORT version; - USHORT numberOfEncodingTables; - TTF_CMAP_ENTRY encodingTable[1]; -} TTF_CMAP ; - -typedef struct ttf_glyf { - SHORT numberOfContours; - FWORD xMin, yMin, xMax, yMax; -} TTF_GLYF ; - -typedef struct ttf_maxp { - ULONG version; - USHORT numGlyphs, maxPoints, maxContours; - USHORT maxCompositePoints, maxCompositeContours; - USHORT maxZones, maxTwilightPoints, maxStorage; - USHORT maxFunctionDefs, maxInstructionsDefs; - USHORT maxSizeOfInstructions, maxComponentElements; - USHORT maxComponentDepth; -} TTF_MAXP ; - -typedef struct ttf_post_head { - ULONG formatType; - TTF_FIXED italicAngle; - FWORD underlinePosition; - FWORD underlineThickness; - ULONG isFixedPitch; - ULONG minMemType42; - ULONG maxMemType42; - ULONG minMemType1; - ULONG maxMemType1; - USHORT numGlyphs; - USHORT glyphNameIndex; -} TTF_POST_HEAD ; diff --git a/Build/source/texk/ttf2pt1/ttf2pt1.1 b/Build/source/texk/ttf2pt1/ttf2pt1.1 deleted file mode 100644 index 09e8c37b002..00000000000 --- a/Build/source/texk/ttf2pt1/ttf2pt1.1 +++ /dev/null @@ -1,807 +0,0 @@ -.rn '' }` -''' $RCSfile$$Revision$$Date$ -''' -''' $Log$ -''' -.de Sh -.br -.if t .Sp -.ne 5 -.PP -\fB\\$1\fR -.PP -.. -.de Sp -.if t .sp .5v -.if n .sp -.. -.de Ip -.br -.ie \\n(.$>=3 .ne \\$3 -.el .ne 3 -.IP "\\$1" \\$2 -.. -.de Vb -.ft CW -.nf -.ne \\$1 -.. -.de Ve -.ft R - -.fi -.. -''' -''' -''' Set up \*(-- to give an unbreakable dash; -''' string Tr holds user defined translation string. -''' Bell System Logo is used as a dummy character. -''' -.tr \(*W-|\(bv\*(Tr -.ie n \{\ -.ds -- \(*W- -.ds PI pi -.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -.ds L" "" -.ds R" "" -''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of -''' \*(L" and \*(R", except that they are used on ".xx" lines, -''' such as .IP and .SH, which do another additional levels of -''' double-quote interpretation -.ds M" """ -.ds S" """ -.ds N" """"" -.ds T" """"" -.ds L' ' -.ds R' ' -.ds M' ' -.ds S' ' -.ds N' ' -.ds T' ' -'br\} -.el\{\ -.ds -- \(em\| -.tr \*(Tr -.ds L" `` -.ds R" '' -.ds M" `` -.ds S" '' -.ds N" `` -.ds T" '' -.ds L' ` -.ds R' ' -.ds M' ` -.ds S' ' -.ds N' ` -.ds T' ' -.ds PI \(*p -'br\} -.\" If the F register is turned on, we'll generate -.\" index entries out stderr for the following things: -.\" TH Title -.\" SH Header -.\" Sh Subsection -.\" Ip Item -.\" X<> Xref (embedded -.\" Of course, you have to process the output yourself -.\" in some meaninful fashion. -.if \nF \{ -.de IX -.tm Index:\\$1\t\\n%\t"\\$2" -.. -.nr % 0 -.rr F -.\} -.TH TTF2PT1 1 "version 3.4.0" "November 24, 2001" "TTF2PT1 Font Converter" -.UC -.if n .hy 0 -.if n .na -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.de CQ \" put $1 in typewriter font -.ft CW -'if n "\c -'if t \\&\\$1\c -'if n \\&\\$1\c -'if n \&" -\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 -'.ft R -.. -.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 -. \" AM - accent mark definitions -.bd B 3 -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds ? ? -. ds ! ! -. ds / -. ds q -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' -. ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -. ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] -.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' -.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' -.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -.ds oe o\h'-(\w'o'u*4/10)'e -.ds Oe O\h'-(\w'O'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds v \h'-1'\o'\(aa\(ga' -. ds _ \h'-1'^ -. ds . \h'-1'. -. ds 3 3 -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -. ds oe oe -. ds Oe OE -.\} -.rm #[ #] #H #V #F C -.SH "NAME" -TTF2PT1 \- A True Type to PostScript Type 1 Font Converter -.SH "SYNOPSIS" -\f(CWttf2pt1 \fI[-options] ttffont.ttf [Fontname]\fR\fR -.PP -or -.PP -\f(CWttf2pt1 \fI[-options] ttffont.ttf -\fR\fR -.SH "DESCRIPTION" -Ttf2pt1 is a font converter from the True Type format (and some other formats -supported by the FreeType library as well) to the Adobe Type1 format. -.PP -The versions 3.0 and later got rather extensive post-processing algorithm that -brings the converted fonts to the requirements of the Type1 standard, tries to -correct the rounding errors introduced during conversions and some simple -kinds of bugs that are typical for the public domain TTF fonts. It -also generates the hints that enable much better rendering of fonts in -small sizes that are typical for the computer displays. But everything -has its price, and some of the optimizations may not work well for certain -fonts. That's why the options were added to the converter, to control -the performed optimizations. -.SH "OPTIONS" -The first variant creates the file \f(CWFontname.pfa\fR (or \f(CWFontname.pfb\fR if the -option \*(L'\fB\-b\fR\*(R' was used) with the converted font and \f(CWFontname.afm\fR with the -font metrics, the second one prints the font or another file (if the option -\&\*(R'\fB\-G\fR\*(R' was used) on the standard output from where it can be immediately -piped through some filter. If no \f(CWFontname\fR is specified for the first -variant, the name is generated from \f(CWttffont\fR by replacing the \f(CW.ttf\fR -filename suffix. -.PP -Most of the time no options are neccessary (with a possible exception -of \*(L'\fB\-e\fR'). But if there are some troubles with the resulting font, they -may be used to control the conversion. -The \fBoptions\fR are: -.Ip "\(bu" 2 -\f(CW\fB-a\fR\fR \- Include all the glyphs from the source file into the converted -file. If this option is not specified then only the glyphs that have -been assigned some encoding are included, because the rest of glyphs -would be inaccessible anyway and would only consume the disk space. -But some applications are clever enough to change the encoding on -the fly and thus use the other glyphs, in this case they could -benefit from using this option. But there is a catch: the X11 library -has rather low limit for the font size. Including more glyphs increases -the file size and thus increases the chance of hitting this limit. -See \f(CWapp/X11/README\fR for the description of a -patch to X11 which fixes this problem. -.Ip "\(bu" 2 -\f(CW\fB-b\fR\fR \- Encode the resulting font to produce a ready \f(CW.pfb\fR file. -.Ip "\(bu" 2 -\f(CW\fB-d \fIsuboptions\fR\fR\fR \- Debugging options. The suboptions are: -.Sp -\f(CW\fBa\fR\fR \- Print out the absolute coordinates of dots in outlines. Such -a font can not be used by any program (that's why this option is -incompatible with \*(L'\fB\-e\fR') but it has proven to be a valuable debuging -information. -.Sp -\f(CW\fBr\fR\fR \- Do not reverse the direction of outlines. The \s-1TTF\s0 fonts have -the standard direction of outlines opposite to the Type1 fonts. So -they should be reversed during proper conversion. This option -may be used for debugging or to handle a \s-1TTF\s0 font with wrong -direction of outlines (possibly, converted in a broken way from -a Type1 font). The first signs of the wrong direction are the -letters like \*(L"P\*(R" or \*(L"B\*(R" without the unpainted \*(L"holes\*(R" inside. -.Ip "\(bu" 2 -\f(CW\fB-e\fR\fR \- Assemble the resulting font to produce a ready \f(CW.pfa\fR file. -.Sp -[ S.B.: Personally I don't think that this option is particularly useful. -The same result may be achieved by piping the unassembled data -through t1asm, the Type 1 assembler. And, anyways, it's good to -have the t1utils package handy. But Mark and many users think that -this functionality is good and it took not much time to add this option. ] -.Ip "\(bu" 2 -\f(CW\fB-F\fR\fR \- Force the Unicode encoding: any type of \s-1MS\s0 encoding specified -in the font is ignored and the font is treated like it has Unicode -encoding. \fB\s-1WARNING\s0:\fR this option is intended for buggy fonts -which actually are in Unicode but are marked as something else. The -effect on the other fonts is unpredictable. -.Ip "\(bu" 2 -\f(CW\fB-G \fIsuboptions\fR\fR\fR \- File generation options. The suboptions may be lowercase -or uppercase, the lowercase ones disable the generation of particular -files, the corresponding uppercase suboptions enable the generation of the -same kind of files. If the result of ttf2pt1 is requested to be printed on -the standard output, the last enabling suboption of \fB\-G\fR determines -which file will be written to the standard output and the rest of files -will be discarded. For example, \fB\-G A\fR will request the \s-1AFM\s0 file. -The suboptions to disable/enable the generation of the files are: -.Sp -\f(CW\fBf/F\fR\fR \- The font file. Depending on the other options this file -will have one of the suffixes \f(CW.t1a\fR, \f(CW.pfa\fR or \f(CW.pfb\fR. If the conversion result -is requested on the standard output ('\f(CW-\fR\*(R' is used as the output file name) -then the font file will also be written there by default, if not overwritten -by another suboption of \fB\-G\fR. -\fBDefault: enabled\fR -.Sp -\f(CW\fBa/A\fR\fR \- The Adobe font metrics file (\f(CW.afm\fR). -\fBDefault: enabled\fR -.Sp -\f(CW\fBe/E\fR\fR \- The dvips encoding file (\f(CW.enc\fR). -\fBDefault: disabled\fR -.Ip "\(bu" 2 -\f(CW\fB-l \fIlanguage\fR[+\fIargument\fR]\fR\fR \- Extract the fonts for the specified language from a -multi-language Unicode font. If this option is not used the converter -tries to guess the language by the values of the shell variable \s-1LANG\s0. -If it is not able to guess the language by \s-1LANG\s0 it tries all the -languages in the order they are listed. -.Sp -After the plus sign an optional argument for the language extractor -may be specified. The format of the argument is absolutely up to -the particular language converter. The primary purpose of the -argument is to support selection of planes for the multi-plane -Eastern encodings but it can also be used in any other way. The -language extractor may decide to add the plane name in some form -to the name of the resulting font. None of the currently supported -languages make any use of the argument yet. -.Sp -As of now the following languages are supported: -.Sp -\ \ \f(CWlatin1\fR \- for all the languages using the Latin-1 encoding -.Sp -\ \ \f(CWlatin2\fR \- for the Central European languages -.Sp -\ \ \f(CWlatin4\fR \- for the Baltic languages -.Sp -\ \ \f(CWlatin5\fR \- for the Turkish language -.Sp -\ \ \f(CWcyrillic\fR \- for the languages with Cyrillic alphabet -.Sp -\ \ \f(CWrussian\fR \- historic synonym for cyrillic -.Sp -\ \ \f(CWbulgarian\fR \- historic synonym for cyrillic -.Sp -\ \ \f(CWadobestd\fR \- for the AdobeStandard encoding used by TeX -.Sp -\ \ \f(CWplane+\fIargument\fR\fR \- to select one plane from a multi-byte encoding -.Sp -The argument of the \*(L"\f(CWplane\fR\*(R" language may be in one of three forms: -.Sp -\ \ \f(CWplane+\fBpid=\fR\fI<pid>\fR\fB,eid=\fR\fI<eid>\fR\fR -.Sp -\ \ \f(CWplane+\fBpid=\fR\fI<pid>\fR\fB,eid=\fR\fI<eid>\fR\fB,\fR\fI<plane_number>\fR\fR -.Sp -\ \ \f(CWplane+\fI<plane_number>\fR\fR -.Sp -Pid (\s-1TTF\s0 platform id) and eid (\s-1TTF\s0 encoding id) select a particular -\s-1TTF\s0 encoding table in the original font. They are specified as decimal -numbers. If this particular encoding table is not present in the font -file then the conversion fails. The native ("ttf") front-end parser supports -only pid=3 (Windows platform), the FreeType-based ("ft") front-end supports -any platform. If pid/eid is not specified then the \s-1TTF\s0 encoding table is -determined as usual: Unicode encoding if it's first or an 8-bit encoding -if not (and for an 8-bit encoding the plane number is silently ignored). -To prevent the converter from falling back to an 8-bit encoding, specify -the Unicode pid/eid value explicitly. -.Sp -Plane_number is a hexadecimal (if starts with \*(L"\fB0x\fR") or decimal number. -It gives the values of upper bytes for which 256 characters will be -selected. If not specified, defaults to 0. It is also used as a font -name suffix (the leading \*(L"0x\*(R" is not included into the suffix). -.Sp -\fB\s-1NOTE\s0:\fR -You may notice that the language names are not uniform: some are the -names of particular languages and some are names of encodings. This -is because of the different approaches. The original idea was to -implement a conversion from Unicode to the appropriate Windows -encoding for a given language. And then use the translation tables -to generate the fonts in whatever final encodings are needed. This -would allow to pile together the Unicode fonts and the non-Unicode -Windows fonts for that language and let the program to sort them out -automatically. And then generate fonts in all the possible encodings -for that language. An example of this approach is the Russian language -support. But if there is no multiplicity of encodings used for some -languages and if the non-Unicode fonts are not considered important -by the users, another way would be simpler to implement: just provide -only one table for extraction of the target encoding from Unicode -and don't bother with the translation tables. The latin* \*(L"languages\*(R" -are examples of this approach. If somebody feels that he needs the -Type1 fonts both in Latin-* and Windows encodings he or she is absolutely -welcome to submit the code to implement it. -.Sp -\fB\s-1WARNING\s0:\fR -Some of the glyphs included into the AdobeStandard encoding are not -included into the Unicode standard. The most typical examples of such -glyphs are ligatures like \*(L'fi\*(R', \*(L'fl\*(R' etc. Because of this the font -designers may place them at various places. The converter tries to -do its best, if the glyphs have honest Adobe names and/or are -placed at the same codes as in the Microsoft fonts they will be -picked up. Otherwise a possible solution is to use the option \*(L'\fB\-L\fR\*(R' -with an external map. -.Ip "\(bu" 2 -\f(CW\fB-L \fIfile\fR[+[pid=\fI<pid>\fR,eid=\fI<eid>\fR,][\fIplane\fR]]\fR\fR \- Extract the fonts for the specified -language from a multi-language font using the map from this file. This is -rather like the option \*(L'\fB\-l\fR\*(R' but the encoding map is not -compiled into the program, it's taken from that file, so it's -easy to edit. Examples of such files are provided in -\f(CWmaps/adobe-standard-encoding.map\fR, \f(CWCP1250.map\fR. (\fB\s-1NOTE\s0:\fR -the \*(L'standard encoding\*(R' map does not include all the glyphs of the -AdobeStandard encoding, it's provided only as an example.) The -description of the supported map formats is in the file -\f(CWmaps/unicode-sample.map\fR. -.Sp -Likewise to \*(L'\fB\-l\fR\*(R', an argument may be specified after the map file -name. But in this case the argument has fixed meaning: it selects the -original \s-1TTF\s0 encoding table (the syntax is the same as in \*(L'\fB\-l plane\fR') -and/or a plane of the map file. The plane name also gets added after dash -to the font name. The plane is a concept used in the Eastern fonts with big -number of glyphs: one \s-1TTF\s0 font gets divided into multiple Type1 fonts, -each containing one plane of up to 256 glyphs. But with a little -creativity this concept may be used for other purposes of combining -multiple translation maps into one file. To extract multiple planes -from a \s-1TTF\s0 font \f(CWttf2pt1\fR must be run multiple times, each time with -a different plane name specified. -.Sp -The default original \s-1TTF\s0 encoding table used for the option \*(L'\fB\-L\fR\*(R' is -Unicode. The map files may include directives to specify different original -\s-1TTF\s0 encodings. However if the pid/eid pair is specified with -it overrides any original encoding specified in the map file. -.Ip "\(bu" 2 -\f(CW\fB-m \fItype\fR=\fIvalue\fR\fR\fR \- Set maximal or minimal limits of resources. -These limits control the the font generation by limiting the resources -that the font is permitted to require from the PostScript interpreter. -The currently supported types of limits are: -.Sp -\f(CW\fBh\fR\fR \- the maximal hint stack depth for the substituted hints. -The default value is 128, according to the limitation in X11. This seems to -be the lowest (and thus the safest) widespread value. To display the -hint stack depth required by each glyph in a \f(CW.t1a\fR file use the script -\f(CWscripts/cntstems.pl\fR. -.Ip "\(bu" 2 -\f(CW\fB-O \fIsuboptions\fR\fR\fR \- Outline processing options. The suboptions -may be lowercase or uppercase, the lowercase ones disable the features, -the corresponding uppercase suboptions enable the same features. -The suboptions to disable/enable features are: -.Sp -\f(CW\fBb/B\fR\fR \- Guessing of the ForceBold parameter. This parameter helps -the Type1 engine to rasterize the bold fonts properly at small sizes. -But the algorithm used to guess the proper value of this flag makes -that guess based solely on the font name. In rare cases that may cause -errors, in these cases you may want to disable this guessing. -\fBDefault: enabled\fR -.Sp -\f(CW\fBh/H\fR\fR \- Autogeneration of hints. The really complex outlines -may confuse the algorithm, so theoretically it may be useful -sometimes to disable them. Although up to now it seems that -even bad hints are better than no hints at all. -\fBDefault: enabled\fR -.Sp -\f(CW\fBu/U\fR\fR \- Hint substitution. Hint substitution is a technique -permitting generation of more detailed hints for the rasterizer. It allows -to use different sets of hints for different parts of a glyph and change -these sets as neccessary during rasterization (that's why \*(L"substituted"). -So it should improve the quality of the fonts rendered at small sizes. -But there are two catches: First, the X11 library has rather low limit for -the font size. More detailed hints increase the file size and thus increase -the chance of hitting this limit (that does not mean that you shall hit it -but you may if your fonts are particularly big). This is especially -probable for Unicode fonts converted with option \*(L'\fB\-a\fR\*(R', so you may want to -use \*(L'\fB\-a\fR\*(R' together with \*(L'\fB\-Ou\fR\*(R'. See \f(CWapp/X11/README\fR for the description of -a patch to X11 which fixes this problem. Second, some rasterizers (again, -X11 is the typical example) have a limitation for total number of hints -used when drawing a glyph (also known as the hint stack depth). If that -stack overflows the glyph is ignored. Starting from version 3.22 \f(CWttf2pt1\fR -uses algorithms to minimizing this depth, with the trade-off of slightly -bigger font files. The glyphs which still exceed the limit set by option -\&\*(R'\fB\-mh\fR\*(R' have all the substituted hints removed and only base hints left. -The algorithms seem to have been refined far enough to make the fonts with -substituted hints look better than the fonts without them or at least the -same. Still if the original fonts are not well-designed the detailed -hinting may emphasize the defects of the design, such as non-even thickness -of lines. So provided that you are not afraid of the X11 bug the best idea -would be to generate a font with this feature and without it, then compare -the results using the program \f(CWother/cmpf\fR (see the description -in \f(CWother/README\fR) and decide which one looks better. -\fBDefault: enabled\fR -.Sp -\f(CW\fBo/O\fR\fR \- Space optimization of the outlines\*(R' code. This kind of optimization -never hurts, and the only reason to disable this feature is for comparison -of the generated fonts with the fonts generated by the previous versions of -converter. Well, it _almost_ never hurts. As it turned out there exist -some brain-damaged printers which don't understand it. Actually this -feature does not change the outlines at all. The Type 1 font manual -provides a set of redundant operators that make font description shorter, -such as \*(L'10 hlineto\*(R' instead of \*(L'0 10 rlineto\*(R' to describe a horizontal -line. This feature enables use of these operators. -\fBDefault: enabled\fR -.Sp -\f(CW\fBs/S\fR\fR \- Smoothing of outlines. If the font is broken in some -way (even the ones that are not easily noticeable), such smoothing -may break it further. So disabling this feature is the first thing to be -tried if some font looks odd. But with smoothing off the hint generation -algorithms may not work properly too. -\fBDefault: enabled\fR -.Sp -\f(CW\fBt/T\fR\fR \- Auto-scaling to the 1000x1000 Type1 standard matrix. The -\s-1TTF\s0 fonts are described in terms of an arbitrary matrix up to -4000x4000. The converted fonts must be scaled to conform to -the Type1 standard. But the scaling introduces additional rounding -errors, so it may be curious sometimes to look at the font in its -original scale. -\fBDefault: enabled\fR -.Sp -\f(CW\fBw/W\fR\fR \- Glyphs\*(R' width corection. This option is designed to be -used on broken fonts which specify too narrow widths for the -letters. You can tell that a font can benefit from this option -if you see that the characters are smashed together without -any whitespace between them. This option causes the converter -to set the character widths to the actual width of this character -plus the width of a typical vertical stem. But on the other hand -the well-designed fonts may have characters that look better if -their widths are set slightly narrower. Such well-designed fonts -will benefit from disabling this feature. You may want to convert -a font with and without this feature, compare the results and -select the better one. This feature may be used only on proportional -fonts, it has no effect on the fixed-width fonts. -\fBDefault: disabled\fR -.Ip "\(bu" 2 -\f(CW\fB-p \fIparser_name\fR\fR\fR \- Use the specified front-end parser to read the font file. -If this option is not used, ttf2pt1 selects the parser automatically based -on the suffix of the font file name, it uses the first parser in its -list that supports this font type. Now two parsers are supported: -.Sp -\ \ \f(CWttf\fR \- built-in parser for the ttf files (suffix \f(CW.ttf\fR) -.Sp -\ \ \f(CWbdf\fR \- built-in parser for the \s-1BDF\s0 files (suffix \f(CW.bdf\fR) -.Sp -\ \ \f(CWft\fR \- parser based on the FreeType-2 library (suffixes \f(CW.ttf\fR, -\&\f(CW.otf\fR, \f(CW.pfa\fR, \f(CW.pfb\fR) -.Sp -The parser \f(CWft\fR is \fB\s-1NOT\s0\fR linked in by default. See \f(CWMakefile\fR -for instructions how to enable it. We do no support this parser on -Windows: probably it will work but nobody tried and nobody knows how -to build it. -.Sp -The conversion of the bitmap fonts (such as \s-1BDF\s0) is simplistic yet, -producing jagged outlines. When converting such fonts, it might be -a good idea to turn off the hint substitution (using option \fB\-Ou\fR) -because the hints produced will be huge but not adding much to the -quality of the fonts. -.Ip "\(bu" 2 -\f(CW\fB-u \fInumber\fR\fR\fR \- Mark the font with this value as its -UniqueID. The UniqueID is used by the printers with the hard disks -to cache the rasterized characters and thus significantly -speed-up the printing. Some of those printers just can't -store the fonts without UniqueID on their disk.The problem -is that the \s-1ID\s0 is supposed to be unique, as it name says. And -there is no easy way to create a guaranteed unique \s-1ID\s0. Adobe specifies -the range 4000000-4999999 for private IDs but still it's difficult -to guarantee the uniqueness within it. So if you don't really need the -UniqueID don't use it, it's optional. Luckily there are a few millions of -possible IDs, so the chances of collision are rather low. -If instead of the number a special value \*(L'\f(CW\fBA\fR\fR\*(R' is given -then the converter generates the value of UniqueID automatically, -as a hash of the font name. (\fB\s-1NOTE\s0:\fR in the version 3.22 the -algorithm for autogeneration of UniqueID was changed to fit the values -into the Adobe-spacified range. This means that if UniqueIDs were used -then the printer's cache may need to be flushed before replacing the -fonts converted by an old version with fonts converted by a newer version). -A simple way to find if any of the fonts in a given directory have -duplicated UniqueIDs is to use the command: -.Sp -\f(CW\ \ cat *.pf[ab] | grep UniqueID | sort | uniq -c | grep -v ' 1 '\fR -.Sp -Or if you use \f(CWscripts/convert\fR it will do that for you automatically -plus it will also give the exact list of files with duplicate UIDs. -.Ip "\(bu" 2 -\f(CW\fB-v \fIsize\fR\fR\fR \- Re-scale the font to get the size of a typical uppercase -letter somewhere around the specified size. Actually, it re-scales -the whole font to get the size of one language-dependent letter to be -at least of the specified size. Now this letter is \*(L"A\*(R" in all the -supported languages. The size is specified in the points of the -Type 1 coordinate grids, the maximal value is 1000. This is an -experimental option and should be used with caution. It tries to -increase the visible font size for a given point size and thus make -the font more readable. But if overused it may cause the fonts to -look out of scale. As of now the interesting values of size for -this option seem to be located mostly between 600 and 850. This -re-scaling may be quite useful but needs more experience to -understand the balance of its effects. -.Ip "\(bu" 2 -\f(CW\fB-W \fIlevel\fR\fR\fR \- Select the verbosity level of the warnings. -Currently the levels from 0 to 4 are supported. Level 0 means no warnings -at all, level 4 means all the possible warnings. The default level is 3. -Other levels may be added in the future, so using the level number 99 is -recommended to get all the possible warnings. Going below level 2 is -not generally recommended because you may miss valuable information about -the problems with the fonts being converted. -.Ip "\(bu" 2 -\fBObsolete option:\fR -\f(CW\fB-A\fR\fR \- Print the font metrics (.afm file) instead of the font on \s-1STDOUT\s0. -Use \fB\-\s-1GA\s0\fR instead. -.Ip "\(bu" 2 -\fBVery obsolete option:\fR -.Sp -The algorithm that implemented the forced fixed width had major -flaws, so it was disabled. The code is still in the program and -some day it will be refined and returned back. Meanwhile the -option name \*(L'\fB\-f\fR\*(R' was reused for another option. The old version was: -.Sp -\f(CW\fB-f\fR\fR \- Don't try to force the fixed width of font. Normally the converter -considers the fonts in which the glyph width deviates by not more -than 5% as buggy fixed width fonts and forces them to have really -fixed width. If this is undesirable, it can be disabled by this option. -.PP -The \f(CW.pfa\fR font format supposes that the description of the characters -is binary encoded and encrypted. This converter does not encode or -encrypt the data by default, you have to specify the option \*(L'\fB\-e\fR\*(R' -or use the \f(CWt1asm\fR program to assemble (that means, encode and -encrypt) the font program. The \f(CWt1asm\fR program that is included with -the converter is actually a part of the \f(CWt1utils\fR package, rather old -version of which may be obtained from -.PP -http://ttf2pt1.sourceforge.net/t1utils.tar.gz -.PP -Note that \f(CWt1asm\fR from the old version of that package won't work properly -with the files generated by \f(CWttf2pt1\fR version 3.20 and later. Please use -\f(CWt1asm\fR packaged with \f(CWttf2pt1\fR or from the new version \f(CWt1utils\fR -instead. For a newer version of \f(CWt1utils\fR please look at -.PP -http://www.lcdf.org/~eddietwo/type/ -.SH "EXAMPLES" -So, the following command lines: -.PP -\f(CWttf2pt1 -e ttffont.ttf t1font\fR -.PP -\f(CWttf2pt1 ttffont.ttf - | t1asm >t1font.pfa\fR -.PP -represent two ways to get a working font. The benefit of the second form -is that other filters may be applied to the font between the converter -and assembler. -.SH "FILES" -.Ip "\(bu" 2 -\s-1TTF2PT1_LIBXDIR/\s0t1asm -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR\s0/* -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/\s0scripts/* -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/\s0other/* -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/README\s0 -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/FONTS\s0 -.SH "SEE ALSO" -.Ip "\(bu" 4 -the \fIttf2pt1_convert(1)\fR manpage -.Ip "\(bu" 4 -the \fIttf2pt1_x2gs(1)\fR manpage -.Ip "\(bu" 4 -the \fIt1asm(1)\fR manpage -.Ip "\(bu" 4 -ttf2pt1-announce@lists.sourceforge.net -.Sp -The mailing list with announcements about ttf2pt1. It is a moderated mailing -with extremely low traffic. Everyone is encouraged to subscribe to keep in -touch with the current status of project. To subscribe use the Web interface -at http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-announce. -If you have only e-mail access to the Net then send a subscribe request to -the development mailing list ttf2pt1-devel@lists.sourceforge.net and somebody -will help you with subscription. -.Ip "\(bu" 4 -ttf2pt1-devel@lists.sourceforge.net -.Sp -ttf2pt1-users@lists.sourceforge.net -.Sp -The ttf2pt1 mailing lists for development and users issues. They have not -that much traffic either. To subscribe use the Web interface at -http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-devel -and http://lists.sourceforge.net/mailman/listinfo/ttf2pt1-users. -If you have only e-mail access to the Net then send a subscribe request to -the development mailing list ttf2pt1-devel@lists.sourceforge.net and somebody -will help you with subscription. -.Ip "\(bu" 4 -http://ttf2pt1.sourceforge.net -.Sp -http://www.netspace.net.au/~mheath/ttf2pt1/ -.Sp -The primary copies of the main page of the project. -.SH "BUGS" -It seems that many Eastern fonts use features of the TTF format that are -not supported by the ttf2pt1's built-in front-end parser. Because of -this for now we recommend using the FreeType-based parser (option -\&\*(R'\fB\-p ft\fR') with the \*(L"\f(CWplane\fR\*(R" language. -.Sh "Troubleshooting and bug reports" -Have problems with conversion of some font ? The converter dumps core ? Or your -printer refuses to understand the converted fonts ? Or some characters are -missing ? Or some characters look strange ? -.PP -Send the bug reports to the ttf2pt1 development mailing list at -ttf2pt1-devel@lists.sourceforge.net. -.PP -Try to collect more information about the problem and include it into -the bug report. (Of course, even better if you would provide a ready -fix, but just a detailed bug report is also good). Provide detailed -information about your problem, this will speed up the response greatly. -Don't just write \*(L"this font looks strange after conversion\*(R" but describe -what's exactly wrong with it: for example, what characters look wrong -and what exactly is wrong about their look. Providing a link to the -original font file would be also a good idea. Try to do a little -troublehooting and report its result. This not only would help with -the fix but may also give you a temporary work-around for the bug. -.PP -First, enable full warnings with option \*(L'\fB\-W99\fR\*(R', save them to -a file and read carefully. Sometimes the prolem is with a not implemented -feature which is reported in the warnings. Still, reporting about such -problems may be a good idea: some features were missed to cut corners, -in hope that no real font is using them. So a report about a font using -such a feature may motivate someone to implement it. Of course, you -may be the most motivated person: after all, you are the one wishing -to convert that font. ;\-) Seriously, the philosophy \*(L"scrath your own itch\*(R" -seems to be the strongest moving force behind the Open Source software. -.PP -The next step is playing with the options. This serves a dual purpose: -on one hand, it helps to localize the bug, on the other hand you may be -able to get a working version of the font for the meantime while the -bug is being fixed. The typical options to try out are: first \*(L'\fB\-Ou\fR\*(R', if -it does not help then \*(L'\fB\-Os\fR\*(R', then \*(L'\fB\-Oh\fR\*(R', then \*(L'\fB\-Oo\fR\*(R'. -They are described in a bit more detail above. Try them one by one -and in combinations. See if with them the resulting fonts look better. -.PP -On some fonts ttf2pt1 just crashes. Commonly that happens because the -font being converted is highly defective (although sometimes the bug -is in ttf2pt1 itself). In any case it should not crash, so the reports -about such cases will help to handle these defects properly in future. -.PP -We try to respond to the bug reports in a timely fashion but alas, this -may not always be possible, especially if the problem is complex. -This is a volunteer project and its resources are limited. Because -of this we would appreciate bug reports as detailed as possible, -and we would appreciate the ready fixes and contributions even more. -.SH "HISTORY" -Based on ttf2pfa by Andrew Weeks, and help from Frank Siegert. -.PP -Modification by Mark Heath. -.PP -Further modification by Sergey Babkin. -.PP -The Type1 assembler by I. Lee Hetherington with modifications by -Kai-Uwe Herbing. - -.rn }` '' -.IX Title "TTF2PT1 1" -.IX Name "TTF2PT1 - A True Type to PostScript Type 1 Font Converter" - -.IX Header "NAME" - -.IX Header "SYNOPSIS" - -.IX Header "DESCRIPTION" - -.IX Header "OPTIONS" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "EXAMPLES" - -.IX Header "FILES" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "SEE ALSO" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "BUGS" - -.IX Subsection "Troubleshooting and bug reports" - -.IX Header "HISTORY" - diff --git a/Build/source/texk/ttf2pt1/ttf2pt1.c b/Build/source/texk/ttf2pt1/ttf2pt1.c deleted file mode 100644 index c58b8d3984a..00000000000 --- a/Build/source/texk/ttf2pt1/ttf2pt1.c +++ /dev/null @@ -1,2558 +0,0 @@ -/* - * True Type Font to Adobe Type 1 font converter - * By Mark Heath <mheath@netspace.net.au> - * Based on ttf2pfa by Andrew Weeks <ccsaw@bath.ac.uk> - * With help from Frank M. Siegert <fms@this.net> - * - * see COPYRIGHT - * -*********************************************************************** - * - * Sergey Babkin <babkin@users.sourceforge.net>, <sab123@hotmail.com> - * - * Added post-processing of resulting outline to correct the errors - * both introduced during conversion and present in the original font, - * autogeneration of hints (has yet to be improved though) and BlueValues, - * scaling to 1000x1000 matrix, option to print the result on STDOUT, - * support of Unicode to CP1251 conversion, optimization of the - * resulting font code by space (that improves the speed too). Excluded - * the glyphs that are unaccessible through the encoding table from - * the output file. Added the built-in Type1 assembler (taken from - * the `t1utils' package). - * -*********************************************************************** - * - * Thomas Henlich <thenlich@rcs.urz.tu-dresden.de> - * - * Added generation of .afm file (font metrics) - * Read encoding information from encoding description file - * Fixed bug in error message about unknown language ('-l' option) - * Added `:' after %%!PS-AdobeFont-1.0 - * changed unused entries in ISOLatin1Encoding[] from .notdef to c127,c128... - * -*********************************************************************** - * - * Thomas Henlich <thenlich@rcs.urz.tu-dresden.de> - * - * Added generation of .afm file (font metrics) - * -*********************************************************************** - * - * Bug Fixes: -************************************************************************ - * - * Sun, 21 Jun 1998 Thomas Henlich <thenlich@Rcs1.urz.tu-dresden.de> - * 1. "width" should be "short int" because otherwise: - * characters with negative widths (e.g. -4) become *very* wide (65532) - * 2. the number of /CharStrings is numglyphs and not numglyphs+1 - * -*********************************************************************** - * - * - * - * The resultant font file produced by this program still needs to be ran - * through t1asm (from the t1utils archive) to produce a completely valid - * font. - * - */ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <time.h> -#include <ctype.h> -#include <math.h> - -#ifdef _GNU_SOURCE -#include <getopt.h> -#endif - -#ifndef WINDOWS -# include <unistd.h> -# include <netinet/in.h> -# define BITBUCKET "/dev/null" -# include <sys/wait.h> -#else -# define WINDOWS_FUNCTIONS /* ask to define functions - in one file only */ -# include "winport.h" -# define BITBUCKET "NUL" -#endif - -#include "pt1.h" -#include "global.h" -#include "version.h" - -/* globals */ - -/* table of front-ends */ - -extern struct frontsw ttf_sw; -extern struct frontsw bdf_sw; -#if defined(USE_FREETYPE) - extern struct frontsw freetype_sw; -#endif - -struct frontsw *frontswtab[] = { - &bdf_sw, -#if defined(USE_FREETYPE) && defined(PREFER_FREETYPE) - &freetype_sw, -#endif - &ttf_sw, -#if defined(USE_FREETYPE) && !defined(PREFER_FREETYPE) - &freetype_sw, -#endif - NULL /* end of table */ -}; - -struct frontsw *cursw=0; /* the active front end */ -char *front_arg=""; /* optional argument */ - -/* options */ -int encode = 0; /* encode the resulting file */ -int pfbflag = 0; /* produce compressed file */ -int wantafm=0; /* want to see .afm instead of .t1a on stdout */ -int correctvsize=0; /* try to correct the vertical size of characters */ -int wantuid = 0; /* user wants UniqueID entry in the font */ -int allglyphs = 0; /* convert all glyphs, not only 256 of them */ -int warnlevel = 3; /* the level of permitted warnings */ -int forcemap = 0; /* do mapping even on non-Unicode fonts */ -/* options - maximal limits */ -int max_stemdepth = 128; /* maximal depth of stem stack in interpreter (128 - limit from X11) */ -/* options - debugging */ -int absolute = 0; /* print out in absolute values */ -int reverse = 1; /* reverse font to Type1 path directions */ -/* options - suboptions of Outline Processing, defaults are set in table */ -int optimize; /* enables space optimization */ -int smooth; /* enable smoothing of outlines */ -int transform; /* enables transformation to 1000x1000 matrix */ -int hints; /* enables autogeneration of hints */ -int subhints; /* enables autogeneration of substituted hints */ -int trybold; /* try to guess whether the font is bold */ -int correctwidth; /* try to correct the character width */ -/* options - suboptions of File Generation, defaults are set in table */ -int gen_pfa; /* generate the font file */ -int gen_afm; /* generate the metrics file */ -int gen_dvienc; /* generate the dvips encoding file */ - -/* not quite options to select a particular source encoding */ -int force_pid = -1; /* specific platform id */ -int force_eid = -1; /* specific encoding id */ - -/* structure to define the sub-option lists controlled by the - * case: uppercase enables them, lowercase disables - */ -struct subo_case { - char disbl; /* character to disable - enforced lowercase */ - char enbl; /* character to enable - auto-set as toupper(disbl) */ - int *valp; /* pointer to the actual variable containing value */ - int dflt; /* default value */ - char *descr; /* description */ -}; - -int debug = DEBUG; /* debugging flag */ - -FILE *null_file, *pfa_file, *afm_file, *dvienc_file; -int numglyphs; -struct font_metrics fontm; - -/* non-globals */ -static char *strUID = 0; /* user-supplied UniqueID */ -static unsigned long numUID; /* auto-generated UniqueID */ - -static int ps_fmt_3 = 0; -static double scale_factor, original_scale_factor; - -static char *glyph_rename[ENCTABSZ]; - -/* the names assigned if the original font - * does not specify any - */ - -static char *Fmt3Encoding[256] = { - "c0", "c1", "c2", "c3", - "c4", "c5", "c6", "c7", - "c8", "c9", "c10", "c11", - "c12", "CR", "c14", "c15", - "c16", "c17", "c18", "c19", - "c20", "c21", "c22", "c23", - "c24", "c25", "c26", "c27", - "c28", "c29", "c30", "c31", - "space", "exclam", "quotedbl", "numbersign", - "dollar", "percent", "ampersand", "quotesingle", - "parenleft", "parenright", "asterisk", "plus", - "comma", "hyphen", "period", "slash", - "zero", "one", "two", "three", - "four", "five", "six", "seven", - "eight", "nine", "colon", "semicolon", - "less", "equal", "greater", "question", - "at", "A", "B", "C", - "D", "E", "F", "G", - "H", "I", "J", "K", - "L", "M", "N", "O", - "P", "Q", "R", "S", - "T", "U", "V", "W", - "X", "Y", "Z", "bracketleft", - "backslash", "bracketright", "asciicircum", "underscore", - "grave", "a", "b", "c", - "d", "e", "f", "g", - "h", "i", "j", "k", - "l", "m", "n", "o", - "p", "q", "r", "s", - "t", "u", "v", "w", - "x", "y", "z", "braceleft", - "bar", "braceright", "asciitilde", "c127", - "c128", "c129", "quotesinglbase", "florin", - "quotedblbase", "ellipsis", "dagger", "daggerdbl", - "circumflex", "perthousand", "Scaron", "guilsinglleft", - "OE", "c141", "c142", "c143", - "c144", "quoteleft", "quoteright", "quotedblleft", - "quotedblright", "bullet", "endash", "emdash", - "tilde", "trademark", "scaron", "guilsinglright", - "oe", "c157", "c158", "Ydieresis", - "nbspace", "exclamdown", "cent", "sterling", - "currency", "yen", "brokenbar", "section", - "dieresis", "copyright", "ordfeminine", "guillemotleft", - "logicalnot", "sfthyphen", "registered", "macron", - "degree", "plusminus", "twosuperior", "threesuperior", - "acute", "mu", "paragraph", "periodcentered", - "cedilla", "onesuperior", "ordmasculine", "guillemotright", - "onequarter", "onehalf", "threequarters", "questiondown", - "Agrave", "Aacute", "Acircumflex", "Atilde", - "Adieresis", "Aring", "AE", "Ccedilla", - "Egrave", "Eacute", "Ecircumflex", "Edieresis", - "Igrave", "Iacute", "Icircumflex", "Idieresis", - "Eth", "Ntilde", "Ograve", "Oacute", - "Ocircumflex", "Otilde", "Odieresis", "multiply", - "Oslash", "Ugrave", "Uacute", "Ucircumflex", - "Udieresis", "Yacute", "Thorn", "germandbls", - "agrave", "aacute", "acircumflex", "atilde", - "adieresis", "aring", "ae", "ccedilla", - "egrave", "eacute", "ecircumflex", "edieresis", - "igrave", "iacute", "icircumflex", "idieresis", - "eth", "ntilde", "ograve", "oacute", - "ocircumflex", "otilde", "odieresis", "divide", - "oslash", "ugrave", "uacute", "ucircumflex", - "udieresis", "yacute", "thorn", "ydieresis" -}; - -#ifdef notdef /* { */ -/* This table is not used anywhere in the code - * so it's ifdef-ed out by default but left in - * the source code for reference purposes (and - * possibly for future use) - */ - -static char *ISOLatin1Encoding[256] = { - ".null", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", "CR", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - "space", "exclam", "quotedbl", "numbersign", - "dollar", "percent", "ampersand", "quoteright", - "parenleft", "parenright", "asterisk", "plus", - "comma", "hyphen", "period", "slash", - "zero", "one", "two", "three", - "four", "five", "six", "seven", - "eight", "nine", "colon", "semicolon", - "less", "equal", "greater", "question", - "at", "A", "B", "C", - "D", "E", "F", "G", - "H", "I", "J", "K", - "L", "M", "N", "O", - "P", "Q", "R", "S", - "T", "U", "V", "W", - "X", "Y", "Z", "bracketleft", - "backslash", "bracketright", "asciicircum", "underscore", - "grave", "a", "b", "c", - "d", "e", "f", "g", - "h", "i", "j", "k", - "l", "m", "n", "o", - "p", "q", "r", "s", - "t", "u", "v", "w", - "x", "y", "z", "braceleft", - "bar", "braceright", "asciitilde", "c127", - "c128", "c129", "quotesinglbase", "florin", - "quotedblbase", "ellipsis", "dagger", "daggerdbl", - "circumflex", "perthousand", "Scaron", "guilsinglleft", - "OE", "c141", "c142", "c143", - "c144", "quoteleft", "quoteright", "quotedblleft", - "quotedblright", "bullet", "endash", "emdash", - "tilde", "trademark", "scaron", "guilsinglright", - "oe", "c157", "c158", "Ydieresis", - "nbspace", "exclamdown", "cent", "sterling", - "currency", "yen", "brokenbar", "section", - "dieresis", "copyright", "ordfeminine", "guillemotleft", - "logicalnot", "sfthyphen", "registered", "macron", - "degree", "plusminus", "twosuperior", "threesuperior", - "acute", "mu", "paragraph", "periodcentered", - "cedilla", "onesuperior", "ordmasculine", "guillemotright", - "onequarter", "onehalf", "threequarters", "questiondown", - "Agrave", "Aacute", "Acircumflex", "Atilde", - "Adieresis", "Aring", "AE", "Ccedilla", - "Egrave", "Eacute", "Ecircumflex", "Edieresis", - "Igrave", "Iacute", "Icircumflex", "Idieresis", - "Eth", "Ntilde", "Ograve", "Oacute", - "Ocircumflex", "Otilde", "Odieresis", "multiply", - "Oslash", "Ugrave", "Uacute", "Ucircumflex", - "Udieresis", "Yacute", "Thorn", "germandbls", - "agrave", "aacute", "acircumflex", "atilde", - "adieresis", "aring", "ae", "ccedilla", - "egrave", "eacute", "ecircumflex", "edieresis", - "igrave", "iacute", "icircumflex", "idieresis", - "eth", "ntilde", "ograve", "oacute", - "ocircumflex", "otilde", "odieresis", "divide", - "oslash", "ugrave", "uacute", "ucircumflex", - "udieresis", "yacute", "thorn", "ydieresis" -}; - -#endif /* } notdef */ - -static char *adobe_StandardEncoding[256] = { - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - "space", "exclam", "quotedbl", "numbersign", - "dollar", "percent", "ampersand", "quoteright", - "parenleft", "parenright", "asterisk", "plus", - "comma", "hyphen", "period", "slash", - "zero", "one", "two", "three", - "four", "five", "six", "seven", - "eight", "nine", "colon", "semicolon", - "less", "equal", "greater", "question", - "at", "A", "B", "C", "D", "E", "F", "G", - "H", "I", "J", "K", "L", "M", "N", "O", - "P", "Q", "R", "S", "T", "U", "V", "W", - "X", "Y", "Z", "bracketleft", - "backslash", "bracketright", "asciicircum", "underscore", - "quoteleft", "a", "b", "c", "d", "e", "f", "g", - "h", "i", "j", "k", "l", "m", "n", "o", - "p", "q", "r", "s", "t", "u", "v", "w", - "x", "y", "z", "braceleft", - "bar", "braceright", "asciitilde", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", "exclamdown", "cent", "sterling", - "fraction", "yen", "florin", "section", - "currency", "quotesingle", "quotedblleft", "guillemotleft", - "guilsinglleft", "guilsinglright", "fi", "fl", - ".notdef", "endash", "dagger", "daggerdbl", - "periodcentered", ".notdef", "paragraph", "bullet", - "quotesinglbase", "quotedblbase", "quotedblright", "guillemotright", - "ellipsis", "perthousand", ".notdef", "questiondown", - ".notdef", "grave", "acute", "circumflex", - "tilde", "macron", "breve", "dotaccent", - "dieresis", ".notdef", "ring", "cedilla", - ".notdef", "hungarumlaut", "ogonek", "caron", - "emdash", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", "AE", ".notdef", "ordfeminine", - ".notdef", ".notdef", ".notdef", ".notdef", - "Lslash", "Oslash", "OE", "ordmasculine", - ".notdef", ".notdef", ".notdef", ".notdef", - ".notdef", "ae", ".notdef", ".notdef", - ".notdef", "dotlessi", ".notdef", ".notdef", - "lslash", "oslash", "oe", "germandbls", - ".notdef", ".notdef", ".notdef", ".notdef" -}; - -/* - * Decription of the supported conversions from Unicode - * - * SB - * Yes, I know that the compiled-in conversion is stupid but - * it is simple to implement and allows not to worry about the - * filesystem context. After all, the source is always available - * and adding another language to it is easy. - * - * The language name is expected to be the same as the subdirectory name - * in the `encodings' directory (for possible future extensions). - * The primary use of the aliases is for guessing based on the current - * locale. - */ - -#define MAXUNIALIAS 10 -#define MAXUNITABLES 3 - -/* the character used as the language argument separator */ -#define LANG_ARG_SEP '+' - - -/* - * Types of language-related routines. Arguments are: - * name is the glyph name - * arg is the user-specified language-dependent argument - * which can for example select the subfont plane for Eastern fonts. - * If none is supplied by user then an empty string ("") is passed. - * If no language is specified by user and auto-guessing happens - * then NULL is passed. - * when shows if the conversion by name was called before conversion by - * map or after (it's called twice) - */ - -/* type of the Unicode map initialization routine */ -typedef void uni_init_t(char *arg); - -/* type of Unicode converter-by-name function - * it's called for each glyph twice: one time for each glyph - * before doing conversion by map and one time after - */ -typedef int uni_conv_t(char *name, char *arg, int when); -#define UNICONV_BYNAME_BEFORE 0 -#define UNICONV_BYNAME_AFTER 1 - -struct uni_language { - uni_init_t *init[MAXUNITABLES]; /* map initialization routines */ - uni_conv_t *convbyname; /* the name-based conversion function */ - char *name; /* the language name */ - char *descr; /* description */ - char *alias[MAXUNIALIAS]; /* aliases of the language name */ - int sample_upper; /* code of some uppercase character for correctvsize() */ -}; - -/* the converter routines have an option of adding this suffix to the font name */ -static char *uni_font_name_suffix = ""; /* empty by default */ -/* this buffer may be used to store the suffix */ -#define UNI_MAX_SUFFIX_LEN 100 -static char uni_suffix_buf[UNI_MAX_SUFFIX_LEN+1]; - -/* - * Prototypes of the conversion routines - */ - -static uni_init_t unicode_latin1; -static uni_init_t unicode_latin2; -static uni_init_t unicode_latin4; -static uni_init_t unicode_latin5; -static uni_init_t unicode_cyrillic; -static uni_init_t unicode_adobestd; -static uni_init_t unicode_plane; -static uni_conv_t unicode_adobestd_byname; - -static uni_init_t unicode_init_user; - -/* - * The order of descriptions is important: if we can't guess the - * language we just call all the conversion routines in order until - * we find one that understands this glyph. - */ -static struct uni_language uni_lang[]= { - /* pseudo-language for all the languages using Latin1 */ - { - { unicode_latin1 }, - 0, /* no name-based mapping */ - "latin1", - "works for most of the Western languages", - { "en_", "de_", "fr_", "nl_", "no_", "da_", "it_" }, - 'A' - }, - { /* by Szalay Tamas <tomek@elender.hu> */ - { unicode_latin2 }, - 0, /* no name-based mapping */ - "latin2", - "works for Central European languages", - { "hu_","pl_","cz_","si_","sk_" }, - 'A' - }, - { /* by Rièardas Èepas <rch@WriteMe.Com> */ - { unicode_latin4 }, - 0, /* no name-based mapping */ - "latin4", - "works for Baltic languages", - { "lt_", "lv_" }, /* doubt about ee_ */ - 'A' - }, - { /* by Turgut Uyar <uyar@cs.itu.edu.tr> */ - { unicode_latin5 }, - 0, /* no name-based mapping */ - "latin5", - "for Turkish", - { "tr_" }, - 'A' - }, - { /* by Zvezdan Petkovic <z.petkovic@computer.org> */ - { unicode_cyrillic, unicode_latin1 }, - 0, /* no name-based mapping */ - "cyrillic", - "in Windows encoding", - { "bg_", "be_", "mk_", "ru_", "sr_", "su_", "uk_" }, - 'A' - }, - { - { unicode_cyrillic, unicode_latin1 }, - 0, /* no name-based mapping */ - "russian", - "obsolete, use cyrillic instead", - { 0 }, - 'A' - }, - { - { unicode_cyrillic, unicode_latin1 }, - 0, /* no name-based mapping */ - "bulgarian", - "obsolete, use cyrillic instead", - { 0 }, - 'A' - }, - { - { unicode_adobestd }, - unicode_adobestd_byname, - "adobestd", - "Adobe Standard, expected by TeX", - { NULL }, - 'A' - }, - { - { unicode_plane }, - 0, /* no name-based mapping */ - "plane", - "one plane of Unicode or other multi-byte encoding as is", - { NULL }, - 0 /* no easy way to predict the capital letters */ - }, -}; - -static struct uni_language uni_lang_user = { - { unicode_init_user }, - 0, /* no name-based mapping */ - 0, /* no name */ - 0, /* no description */ - { 0 }, - 0 /* no sample */ -}; - -static struct uni_language *uni_lang_selected=0; /* 0 means "unknown, try all" */ -static int uni_sample='A'; /* sample of an uppercase character */ -static char *uni_lang_arg=""; /* user-supplied language-dependent argument */ - -extern int runt1asm(int); - -/* - * user-defined loadable maps - */ - - -/* The idea begind buckets is to avoid comparing every code with all ENCTABSZ codes in table. - * All the 16-bit unicode space is divided between a number of equal-sized buckets. - * Initially all the buckets are marked with 0. Then if any code in the bucket is - * used it's marked with 1. Later during translation we check the code's bucket first - * and it it's 0 then return failure right away. This may be useful for - * Chinese fonts with many thousands of glyphs. - */ - -#define BUCKET_ID_BITS 11 -#define MARK_UNI_BUCKET(unicode) SET_BITMAP(uni_user_buckets, (unicode)>>(16-BUCKET_ID_BITS)) -#define IS_UNI_BUCKET(unicode) IS_BITMAP(uni_user_buckets, (unicode)>>(16-BUCKET_ID_BITS)) - -static DEF_BITMAP(uni_user_buckets, 1<<BUCKET_ID_BITS); - -static unsigned int unicode_map[ENCTABSZ]; /* font-encoding to unicode map */ -static int enctabsz = 256; /* actual number of codes used */ - -static void -unicode_init_user( - char *path -) -{ - FILE *unicode_map_file; -#define UNIBFSZ 256 - char buffer[UNIBFSZ]; - unsigned code, unicode, curpos, unicode2; - char *arg, *p; - int enabled, found, sawplane; - int lineno, cnt, n, nchars; - char next; - int pid, eid, overid=0; - - /* check if we have an argument (plane name) */ - arg = strrchr(path, LANG_ARG_SEP); - if(arg != 0) { - *arg++ = 0; - if( sscanf(arg, "pid=%d,eid=%d%n", &pid, &eid, &nchars) == 2 ) { - force_pid = pid; force_eid = eid; overid = 1; - WARNING_1 fprintf(stderr, "User override of the source encoding: pid=%d eid=%d\n", pid, eid); - forcemap = 1; - arg += nchars; - if(*arg == ',') - arg++; - } - if( *arg == 0 || strlen(arg) > UNI_MAX_SUFFIX_LEN-1) - arg = NULL; - else { - sprintf(uni_suffix_buf, "-%s", arg); - uni_font_name_suffix = uni_suffix_buf; - } - } - - /* now read in the encoding description file, if requested */ - if ((unicode_map_file = fopen(path, "r")) == NULL) { - fprintf(stderr, "**** Cannot access map file '%s' ****\n", path); - exit(1); - } - - sawplane = 0; - if(arg==NULL) - enabled = found = 1; - else - enabled = found = 0; - - lineno=0; curpos=0; - while (fgets (buffer, UNIBFSZ, unicode_map_file) != NULL) { - char name[UNIBFSZ]; - - lineno++; - - if(sscanf(buffer, "plane %s", name)==1) { - sawplane = 1; - if(arg == 0) { - fprintf(stderr, "**** map file '%s' requires plane name\n", path); - fprintf(stderr, "for example:\n"); - fprintf(stderr, " ttf2pt1 -L %s%c[pid=N,eid=N,]%s ...\n", - path, LANG_ARG_SEP, name); - fprintf(stderr, "to select plane '%s'\n", name); - exit(1); - } - if( !strcmp(arg, name) ) { - enabled = found = 1; - curpos = 0; - } else { - enabled = 0; - if(found) /* no need to read further */ - break; - } - continue; - } - - if(sscanf(buffer, "id %d %d", pid, eid)==2) { - if( !overid /* only if the user has not overriden */ - && (enabled || !sawplane) ) { - force_pid = pid; force_eid = eid; - forcemap = 1; - } - continue; - } - - if( !enabled ) - continue; /* skip to the next plane */ - - if( sscanf(buffer, "at %i", &curpos) == 1 ) { - if(curpos > 255) { - fprintf(stderr, "**** map file '%s' line %d: code over 255\n", path, lineno); - exit(1); - } - if(ISDBG(EXTMAP)) fprintf(stderr, "=== at 0x%x\n", curpos); - continue; - } - - /* try the format of Roman Czyborra's files */ - if ( sscanf (buffer, " =%x U+%4x", &code, &unicode) == 2 - /* try the format of Linux locale charmap file */ - || sscanf (buffer, " <%*s /x%x <U%4x>", &code, &unicode) == 2 ) { - if (code < ENCTABSZ) { - if(code >= enctabsz) enctabsz=code+1; - unicode_map[code] = unicode; - glyph_rename[code] = NULL; - } - } - /* try the format with glyph renaming */ - else if (sscanf (buffer, " !%x U+%4x %128s", &code, - &unicode, name) == 3) { - if (code < ENCTABSZ) { - if(code >= enctabsz) enctabsz=code+1; - unicode_map[code] = unicode; - glyph_rename[code] = strdup(name); - } - } - /* try the compact sequence format */ - else if( (n=sscanf(buffer, " %i%n", &unicode, &cnt)) == 1 ) { - p = buffer; - do { - if(curpos > 255) { - fprintf(stderr, "**** map file '%s' line %d: code over 255 for unicode 0x%x\n", - path, lineno, unicode); - exit(1); - } - if(ISDBG(EXTMAP)) fprintf(stderr, "=== 0x%d -> 0x%x\n", curpos, unicode); - unicode_map[curpos++] = unicode; - p += cnt; - if( sscanf(p, " %[,-]%n", &next,&cnt) == 1 ) { - if(ISDBG(EXTMAP)) fprintf(stderr, "=== next: '%c'\n", next); - p += cnt; - if( next == '-' ) { /* range */ - if ( sscanf(p, " %i%n", &unicode2, &cnt) != 1 ) { - fprintf(stderr, "**** map file '%s' line %d: missing end of range\n", path, lineno); - exit(1); - } - p += cnt; - if(ISDBG(EXTMAP)) fprintf(stderr, "=== range 0x%x to 0x%x\n", unicode, unicode2); - for(unicode++; unicode <= unicode2; unicode++) { - if(curpos > 255) { - fprintf(stderr, "**** map file '%s' line %d: code over 255 in unicode range ...-0x%x\n", - path, lineno, unicode2); - exit(1); - } - if(ISDBG(EXTMAP)) fprintf(stderr, "=== 0x%x -> 0x%x\n", curpos, unicode); - unicode_map[curpos++] = unicode; - } - } - } - } while ( sscanf(p, " %i%n", &unicode, &cnt) == 1 ); - } - - } - - fclose (unicode_map_file); - - if( !found ) { - fprintf(stderr, "**** map file '%s' has no plane '%s'\n", path, arg); - exit(1); - } - - if(unicode_map['A'] == 'A') - uni_sample = 'A'; /* seems to be compatible with Latin */ - else - uni_sample = 0; /* don't make any assumptions */ -} - -/* - * by Zvezdan Petkovic <z.petkovic@computer.org> - */ -static void -unicode_cyrillic( - char *arg -) -{ - int i; - static unsigned int cyrillic_unicode_map[] = { - 0x0402, 0x0403, 0x201a, 0x0453, 0x201e, 0x2026, 0x2020, 0x2021, /* 80 */ - 0x20ac, 0x2030, 0x0409, 0x2039, 0x040a, 0x040c, 0x040b, 0x040f, /* 88 */ - 0x0452, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014, /* 90 */ - 0x02dc, 0x2122, 0x0459, 0x203a, 0x045a, 0x045c, 0x045b, 0x045f, /* 98 */ - 0x00a0, 0x040e, 0x045e, 0x0408, 0x00a4, 0x0490, 0x00a6, 0x00a7, /* A0 */ - 0x0401, 0x00a9, 0x0404, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x0407, /* A8 */ - 0x00b0, 0x00b1, 0x0406, 0x0456, 0x0491, 0x00b5, 0x00b6, 0x00b7, /* B0 */ - 0x0451, 0x2116, 0x0454, 0x00bb, 0x0458, 0x0405, 0x0455, 0x0457, /* B8 */ - }; - - for(i=0; i<=0x7F; i++) - unicode_map[i] = i; - - for(i=0x80; i<=0xBF; i++) - unicode_map[i] = cyrillic_unicode_map[i-0x80]; - - for(i=0xC0; i<=0xFF; i++) - unicode_map[i] = i+0x350; - -} - -static void -unicode_latin1( - char *arg -) -{ - int i; - static unsigned int latin1_unicode_map[] = { - 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021, /* 80 */ - 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x008d, 0x017d, 0x008f, /* 88 */ - 0x0090, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014, /* 90 */ - 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x009d, 0x017e, 0x0178, /* 98 */ - }; - - for(i=0; i<=0x7F; i++) - unicode_map[i] = i; - - for(i=0x80; i<=0x9F; i++) - unicode_map[i] = latin1_unicode_map[i-0x80]; - - for(i=0xA0; i<=0xFF; i++) - unicode_map[i] = i; -} - -static void -unicode_adobestd( - char *arg -) -{ - int i; - static unsigned int adobestd_unicode_map[] = { - -1, 0x00a1, 0x00a2, 0x00a3, 0x2215, 0x00a5, 0x0192, 0x00a7, /* A0 */ - 0x00a4, 0x0027, 0x201c, 0x00ab, 0x2039, 0x203a, 0xfb01, 0xfb02, /* A8 */ - -1, 0x2013, 0x2020, 0x2021, 0x2219, -1, 0x00b6, 0x2022, /* B0 */ - 0x201a, 0x201e, 0x201d, 0x00bb, 0x2026, 0x2030, -1, 0x00bf, /* B8 */ - -1, 0x0060, 0x00b4, 0x02c6, 0x02dc, 0x02c9, 0x02d8, 0x02d9, /* C0 */ - 0x00a8, -1, 0x02da, 0x00b8, -1, 0x02dd, 0x02db, 0x02c7, /* C8 */ - 0x2014, -1, -1, -1, -1, -1, -1, -1, /* D0 */ - -1, -1, -1, -1, -1, -1, -1, -1, /* D8 */ - -1, 0x00c6, -1, 0x00aa, -1, -1, -1, -1, /* E0 */ - 0x0141, 0x00d8, 0x0152, 0x00ba, -1, -1, -1, -1, /* E8 */ - -1, 0x00e6, -1, -1, -1, 0x0131, -1, -1, /* F0 */ - 0x0142, 0x00f8, 0x0153, 0x00df, -1, -1, -1, -1, /* F8 */ - }; - - for(i=0; i<=0x7F; i++) - unicode_map[i] = i; - - unicode_map[0x27] = 0x2019; - unicode_map[0x60] = -1; - - /* 0x80 to 0x9F is a hole */ - - for(i=0xA0; i<=0xFF; i++) - unicode_map[i] = adobestd_unicode_map[i-0xA0]; -} - -/* - * Not all of the Adobe glyphs are in the Unicode - * standard maps, so the font creators have - * different ideas about their codes. Because - * of this we try to map based on the glyph - * names instead of Unicode codes. If there are - * no glyph names (ps_fmt_3!=0) we fall back - * to the code-based scheme. - */ - -static int -unicode_adobestd_byname( - char *name, - char *arg, - int where -) -{ - int i; - - /* names always take precedence over codes */ - if(where == UNICONV_BYNAME_AFTER) - return -1; - - for(i=32; i<256; i++) { - if(!strcmp(name, adobe_StandardEncoding[i])) - return i; - } - return -1; - -} - -static void -unicode_latin2( - char *arg -) -{ - int i; - static unsigned int latin2_unicode_map[] = { - 0x00a0, 0x0104, 0x02d8, 0x0141, 0x00a4, 0x013d, 0x015a, 0x00a7, /* A0 */ - 0x00a8, 0x0160, 0x015e, 0x0164, 0x0179, 0x00ad, 0x017d, 0x017b, /* A8 */ - 0x00b0, 0x0105, 0x02db, 0x0142, 0x00b4, 0x013e, 0x015b, 0x02c7, /* B0 */ - 0x00b8, 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c, /* B8 */ - 0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7, /* C0 */ - 0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e, /* C8 */ - 0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7, /* D0 */ - 0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df, /* D8 */ - 0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7, /* E0 */ - 0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f, /* E8 */ - 0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7, /* F0 */ - 0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9, /* F8 */ - }; - - for(i=0; i<=0x7E; i++) - unicode_map[i] = i; - - /* 7F-9F are unused */ - - for(i=0xA0; i<=0xFF; i++) - unicode_map[i] = latin2_unicode_map[i-0xA0]; -} - -static void -unicode_latin4( - char *arg -) -{ - int i; - static unsigned int latin4_unicode_map[] = { - 0x0080, 0x0081, 0x201a, 0x0192, -1, 0x2026, 0x2020, 0x2021, /* 80 */ - 0x02c6, 0x2030, -1, 0x2039, 0x0152, 0x008d, 0x008e, 0x008f, /* 88 */ - 0x201e, 0x201c, 0x2019, -1, 0x201d, 0x2022, 0x2013, 0x2014, /* 90 */ - 0x02dc, 0x2122, -1, 0x203a, 0x0153, 0x009d, 0x009e, 0x0178, /* 98 */ - 0x00a0, 0x0104, 0x0138, 0x0156, 0x00a4, 0x0128, 0x013b, 0x00a7, /* A0 */ - 0x00a8, 0x0160, 0x0112, 0x0122, 0x0166, 0x00ad, 0x017d, 0x00af, /* A8 */ - 0x00b0, 0x0105, 0x02db, 0x0157, 0x00b4, 0x0129, 0x013c, 0x02c7, /* B0 */ - 0x00b8, 0x0161, 0x0113, 0x0123, 0x0167, 0x014a, 0x017e, 0x014b, /* B8 */ - 0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e, /* C0 */ - 0x010c, 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x012a, /* C8 */ - 0x0110, 0x0145, 0x014c, 0x0136, 0x00d4, 0x00d5, 0x00d6, 0x00d7, /* D0 */ - 0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x0168, 0x016a, 0x00df, /* D8 */ - 0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f, /* E0 */ - 0x010d, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b, /* E8 */ - 0x0111, 0x0146, 0x014d, 0x0137, 0x00f4, 0x00f5, 0x00f6, 0x00f7, /* F0 */ - 0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x0169, 0x016b, 0x02d9, /* F8 */ - }; - - for(i=0; i<=0x7F; i++) - unicode_map[i] = i; - - for(i=0x80; i<=0xFF; i++) - unicode_map[i] = latin4_unicode_map[i-0x80]; - -#if 0 /* for documentation purposes only */ - case 0x201e: return 0x90; /* these two quotes are a hack only */ - case 0x201c: return 0x91; /* these two quotes are a hack only */ - case 0x00A0: return 0xA0; /* NO-BREAK SPACE */ - case 0x0104: return 0xA1; /* LATIN CAPITAL LETTER A WITH OGONEK */ - case 0x0138: return 0xA2; /* LATIN SMALL LETTER KRA */ - case 0x0156: return 0xA3; /* LATIN CAPITAL LETTER R WITH CEDILLA */ - case 0x00A4: return 0xA4; /* CURRENCY SIGN */ - case 0x0128: return 0xA5; /* LATIN CAPITAL LETTER I WITH TILDE */ - case 0x013B: return 0xA6; /* LATIN CAPITAL LETTER L WITH CEDILLA */ - case 0x00A7: return 0xA7; /* SECTION SIGN */ - case 0x00A8: return 0xA8; /* DIAERESIS */ - case 0x0160: return 0xA9; /* LATIN CAPITAL LETTER S WITH CARON */ - case 0x0112: return 0xAA; /* LATIN CAPITAL LETTER E WITH MACRON */ - case 0x0122: return 0xAB; /* LATIN CAPITAL LETTER G WITH CEDILLA */ - case 0x0166: return 0xAC; /* LATIN CAPITAL LETTER T WITH STROKE */ - case 0x00AD: return 0xAD; /* SOFT HYPHEN */ - case 0x017D: return 0xAE; /* LATIN CAPITAL LETTER Z WITH CARON */ - case 0x00AF: return 0xAF; /* MACRON */ - case 0x00B0: return 0xB0; /* DEGREE SIGN */ - case 0x0105: return 0xB1; /* LATIN SMALL LETTER A WITH OGONEK */ - case 0x02DB: return 0xB2; /* OGONEK */ - case 0x0157: return 0xB3; /* LATIN SMALL LETTER R WITH CEDILLA */ - case 0x00B4: return 0xB4; /* ACUTE ACCENT */ - case 0x0129: return 0xB5; /* LATIN SMALL LETTER I WITH TILDE */ - case 0x013C: return 0xB6; /* LATIN SMALL LETTER L WITH CEDILLA */ - case 0x02C7: return 0xB7; /* CARON */ - case 0x00B8: return 0xB8; /* CEDILLA */ - case 0x0161: return 0xB9; /* LATIN SMALL LETTER S WITH CARON */ - case 0x0113: return 0xBA; /* LATIN SMALL LETTER E WITH MACRON */ - case 0x0123: return 0xBB; /* LATIN SMALL LETTER G WITH CEDILLA */ - case 0x0167: return 0xBC; /* LATIN SMALL LETTER T WITH STROKE */ - case 0x014A: return 0xBD; /* LATIN CAPITAL LETTER ENG */ - case 0x017E: return 0xBE; /* LATIN SMALL LETTER Z WITH CARON */ - case 0x014B: return 0xBF; /* LATIN SMALL LETTER ENG */ - case 0x0100: return 0xC0; /* LATIN CAPITAL LETTER A WITH MACRON */ - case 0x00C1: return 0xC1; /* LATIN CAPITAL LETTER A WITH ACUTE */ - case 0x00C2: return 0xC2; /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */ - case 0x00C3: return 0xC3; /* LATIN CAPITAL LETTER A WITH TILDE */ - case 0x00C4: return 0xC4; /* LATIN CAPITAL LETTER A WITH DIAERESIS */ - case 0x00C5: return 0xC5; /* LATIN CAPITAL LETTER A WITH RING ABOVE */ - case 0x00C6: return 0xC6; /* LATIN CAPITAL LIGATURE AE */ - case 0x012E: return 0xC7; /* LATIN CAPITAL LETTER I WITH OGONEK */ - case 0x010C: return 0xC8; /* LATIN CAPITAL LETTER C WITH CARON */ - case 0x00C9: return 0xC9; /* LATIN CAPITAL LETTER E WITH ACUTE */ - case 0x0118: return 0xCA; /* LATIN CAPITAL LETTER E WITH OGONEK */ - case 0x00CB: return 0xCB; /* LATIN CAPITAL LETTER E WITH DIAERESIS */ - case 0x0116: return 0xCC; /* LATIN CAPITAL LETTER E WITH DOT ABOVE */ - case 0x00CD: return 0xCD; /* LATIN CAPITAL LETTER I WITH ACUTE */ - case 0x00CE: return 0xCE; /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */ - case 0x012A: return 0xCF; /* LATIN CAPITAL LETTER I WITH MACRON */ - case 0x0110: return 0xD0; /* LATIN CAPITAL LETTER D WITH STROKE */ - case 0x0145: return 0xD1; /* LATIN CAPITAL LETTER N WITH CEDILLA */ - case 0x014C: return 0xD2; /* LATIN CAPITAL LETTER O WITH MACRON */ - case 0x0136: return 0xD3; /* LATIN CAPITAL LETTER K WITH CEDILLA */ - case 0x00D4: return 0xD4; /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */ - case 0x00D5: return 0xD5; /* LATIN CAPITAL LETTER O WITH TILDE */ - case 0x00D6: return 0xD6; /* LATIN CAPITAL LETTER O WITH DIAERESIS */ - case 0x00D7: return 0xD7; /* MULTIPLICATION SIGN */ - case 0x00D8: return 0xD8; /* LATIN CAPITAL LETTER O WITH STROKE */ - case 0x0172: return 0xD9; /* LATIN CAPITAL LETTER U WITH OGONEK */ - case 0x00DA: return 0xDA; /* LATIN CAPITAL LETTER U WITH ACUTE */ - case 0x00DB: return 0xDB; /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */ - case 0x00DC: return 0xDC; /* LATIN CAPITAL LETTER U WITH DIAERESIS */ - case 0x0168: return 0xDD; /* LATIN CAPITAL LETTER U WITH TILDE */ - case 0x016A: return 0xDE; /* LATIN CAPITAL LETTER U WITH MACRON */ - case 0x00DF: return 0xDF; /* LATIN SMALL LETTER SHARP S */ - case 0x0101: return 0xE0; /* LATIN SMALL LETTER A WITH MACRON */ - case 0x00E1: return 0xE1; /* LATIN SMALL LETTER A WITH ACUTE */ - case 0x00E2: return 0xE2; /* LATIN SMALL LETTER A WITH CIRCUMFLEX */ - case 0x00E3: return 0xE3; /* LATIN SMALL LETTER A WITH TILDE */ - case 0x00E4: return 0xE4; /* LATIN SMALL LETTER A WITH DIAERESIS */ - case 0x00E5: return 0xE5; /* LATIN SMALL LETTER A WITH RING ABOVE */ - case 0x00E6: return 0xE6; /* LATIN SMALL LIGATURE AE */ - case 0x012F: return 0xE7; /* LATIN SMALL LETTER I WITH OGONEK */ - case 0x010D: return 0xE8; /* LATIN SMALL LETTER C WITH CARON */ - case 0x00E9: return 0xE9; /* LATIN SMALL LETTER E WITH ACUTE */ - case 0x0119: return 0xEA; /* LATIN SMALL LETTER E WITH OGONEK */ - case 0x00EB: return 0xEB; /* LATIN SMALL LETTER E WITH DIAERESIS */ - case 0x0117: return 0xEC; /* LATIN SMALL LETTER E WITH DOT ABOVE */ - case 0x00ED: return 0xED; /* LATIN SMALL LETTER I WITH ACUTE */ - case 0x00EE: return 0xEE; /* LATIN SMALL LETTER I WITH CIRCUMFLEX */ - case 0x012B: return 0xEF; /* LATIN SMALL LETTER I WITH MACRON */ - case 0x0111: return 0xF0; /* LATIN SMALL LETTER D WITH STROKE */ - case 0x0146: return 0xF1; /* LATIN SMALL LETTER N WITH CEDILLA */ - case 0x014D: return 0xF2; /* LATIN SMALL LETTER O WITH MACRON */ - case 0x0137: return 0xF3; /* LATIN SMALL LETTER K WITH CEDILLA */ - case 0x00F4: return 0xF4; /* LATIN SMALL LETTER O WITH CIRCUMFLEX */ - case 0x00F5: return 0xF5; /* LATIN SMALL LETTER O WITH TILDE */ - case 0x00F6: return 0xF6; /* LATIN SMALL LETTER O WITH DIAERESIS */ - case 0x00F7: return 0xF7; /* DIVISION SIGN */ - case 0x00F8: return 0xF8; /* LATIN SMALL LETTER O WITH STROKE */ - case 0x0173: return 0xF9; /* LATIN SMALL LETTER U WITH OGONEK */ - case 0x00FA: return 0xFA; /* LATIN SMALL LETTER U WITH ACUTE */ - case 0x00FB: return 0xFB; /* LATIN SMALL LETTER U WITH CIRCUMFLEX */ - case 0x00FC: return 0xFC; /* LATIN SMALL LETTER U WITH DIAERESIS */ - case 0x0169: return 0xFD; /* LATIN SMALL LETTER U WITH TILDE */ - case 0x016B: return 0xFE; /* LATIN SMALL LETTER U WITH MACRON */ - case 0x02D9: return 0xFF; /* DOT ABOVE */ -#endif -} - -static void -unicode_latin5( - char *arg -) -{ - int i; - static unsigned int latin5_unicode_map1[] = { - 0x0080, 0x0081, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021, /* 80 */ - 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, 0x008d, 0x008e, 0x008f, /* 88 */ - 0x0090, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014, /* 90 */ - 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, 0x009d, 0x009e, 0x0178, /* 98 */ - }; - static unsigned int latin5_unicode_map2[] = { - 0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7, /* D0 */ - 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df, /* D8 */ - 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7, /* E0 direct */ - 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef, /* E8 direct */ - 0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7, /* F0 */ - 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff, /* F8 */ - }; - - for(i=0; i<=0x7F; i++) - unicode_map[i] = i; - - for(i=0x80; i<=0x9F; i++) - unicode_map[i] = latin5_unicode_map1[i-0x80]; - - for(i=0xA0; i<=0xCF; i++) - unicode_map[i] = i; - - for(i=0xD0; i<=0xFF; i++) - unicode_map[i] = latin5_unicode_map2[i-0xD0]; -} - -/* a way to select one 256-character plane from Unicode - * or other multi-byte encoding - */ - -static void -unicode_plane( - char *arg -) -{ - static unsigned plane; - int nchars; - int c1, c2, i; - - if(uni_lang_selected == 0) - return; /* don't participate in auto-guessing */ - - plane = 0; force_pid = force_eid = -1; - - c1 = sscanf(arg, "pid=%d,eid=%d%n", &force_pid, &force_eid, &nchars); - if(c1 == 2) { - arg += nchars; - if(*arg == ',') - arg++; - } - if(arg[0] == '0' && (arg[1]=='x' || arg[1]=='X') ) { - arg += 2; - c2 = sscanf(arg, "%x", &plane); - } else { - c2 = sscanf(arg, "%d", &plane); - } - - if( (c1!=2 && c1!=0) || (c1==0 && c2==0) ) { - fprintf(stderr, "**** option -l plane expects one of the following formats:\n"); - fprintf(stderr, " -l plane+0xNN - select hexadecimal number of plane of Unicode\n"); - fprintf(stderr, " -l plane+NN - select decimal number of plane of Unicode\n"); - fprintf(stderr, " -l plane+pid=N,eid=N - select plane 0 of specified encoding\n"); - fprintf(stderr, " -l plane+pid=N,eid=N,0xNN - select hex plane of TTF encoding with this PID/EID\n"); - fprintf(stderr, " -l plane+pid=N,eid=N,NN - select decimal plane of TTF encoding with this PID/EID\n"); - exit(1); - } - - if(c2!=0) { - if(strlen(arg) > sizeof(uni_suffix_buf)-2) { - fprintf(stderr, "**** plane number is too large\n"); - } - - sprintf(uni_suffix_buf, "-%s", arg); - uni_font_name_suffix = uni_suffix_buf; - } else { - uni_font_name_suffix = ""; - } - - plane <<= 8; - for(i=0; i<=0xFF; i++) - unicode_map[i] = plane | i; -} - -/* look up the 8-bit code by unicode */ - -int -unicode_rev_lookup( - int unival -) -{ - int res; - - if( ! IS_UNI_BUCKET(unival) ) - return -1; - - for (res = 0; res < enctabsz; res++) - if (unicode_map[res] == unival) - return res; - return -1; -} - -/* mark the buckets for quick lookup */ - -static void -unicode_prepare_buckets( - void -) -{ - int i; - - memset(uni_user_buckets, 0, sizeof uni_user_buckets); - for(i=0; i<enctabsz; i++) { - if(unicode_map[i] != (unsigned) -1) - MARK_UNI_BUCKET(unicode_map[i]); - } -} - -/* - * When we print errors about bad names we want to print these names in - * some decent-looking form - */ - -static char * -nametoprint( - unsigned char *s -) -{ - static char res[50]; - int c, i; - - for(i=0; ( c =* s )!=0 && i<sizeof(res)-8; s++) { - if(c < ' ' || c > 126) { - sprintf(res+i, "\\x%02X", c); - i+=4; - } else { - res[i++] = c; - } - } - if(*s != 0) { - res[i++] = '.'; - res[i++] = '.'; - res[i++] = '.'; - } - res[i++] = 0; - return res; -} - -/* - * Scale the values according to the scale_factor - */ - -double -fscale( - double val -) -{ - return scale_factor * val; -} - -int -iscale( - int val -) -{ - return (int) (val > 0 ? scale_factor * val + 0.5 - : scale_factor * val - 0.5); -} - -/* - * Try to force fixed width of characters - */ - -static void -alignwidths(void) -{ - int i; - int n = 0, avg, max = 0, min = 3000, sum = 0, x; - - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - x = glyph_list[i].width; - - if (x != 0) { - if (x < min) - min = x; - if (x > max) - max = x; - - sum += x; - n++; - } - } - } - - if (n == 0) - return; - - avg = sum / n; - - WARNING_3 fprintf(stderr, "widths: max=%d avg=%d min=%d\n", max, avg, min); - - /* if less than 5% variation from average */ - /* force fixed width */ - if (20 * (avg - min) < avg && 20 * (max - avg) < avg) { - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) - glyph_list[i].width = avg; - } - fontm.is_fixed_pitch = 1; - } -} - -static void -convert_glyf( - int glyphno -) -{ - GLYPH *g; - int ncurves; - - g = &glyph_list[glyphno]; - - - g->scaledwidth = iscale(g->width); - - g->entries = 0; - g->lastentry = 0; - g->path = 0; - if (g->ttf_pathlen != 0) { - cursw->glpath(glyphno, glyph_list); - g->lastentry = 0; - - if(ISDBG(BUILDG)) - dumppaths(g, NULL, NULL); - - assertpath(g->entries, __FILE__, __LINE__, g->name); - - fclosepaths(g); - assertpath(g->entries, __FILE__, __LINE__, g->name); - - /* float processing */ - if(smooth) { - ffixquadrants(g); - assertpath(g->entries, __FILE__, __LINE__, g->name); - - fsplitzigzags(g); - assertpath(g->entries, __FILE__, __LINE__, g->name); - - fforceconcise(g); - assertpath(g->entries, __FILE__, __LINE__, g->name); - - fstraighten(g); - assertpath(g->entries, __FILE__, __LINE__, g->name); - } - - pathtoint(g); - /* all processing past this point expects integer path */ - assertpath(g->entries, __FILE__, __LINE__, g->name); - -#if 0 - fixcontours(g); - testfixcvdir(g); -#endif - - /* int processing */ - if (smooth) { - smoothjoints(g); - assertpath(g->entries, __FILE__, __LINE__, g->name); - } - - ncurves = 0; - { - GENTRY *ge; - for(ge = g->entries; ge; ge = ge->next) - ncurves++; - } - if (ncurves > 100) { - WARNING_2 fprintf(stderr, - "** Glyph %s is too long, may display incorrectly\n", - g->name); - } - } else { - /* for buildstems */ - g->flags &= ~GF_FLOAT; - } -} - -static void -handle_gnames(void) -{ - int i, n, found, c, type; - - /* get the names from the font file */ - ps_fmt_3 = cursw->glnames(glyph_list); - - /* check for names with wrong characters */ - for (n = 0; n < numglyphs; n++) { - int c; - for (i = 0; (c = glyph_list[n].name[i]) != 0; i++) { - if (!(isalnum(c) || c == '.' || c == '_' || c == '-') - || i==0 && isdigit(c)) { /* must not start with a digit */ - WARNING_3 fprintf(stderr, "Glyph %d %s (%s), ", - n, isdigit(c) ? "name starts with a digit" : - "has bad characters in name", - nametoprint(glyph_list[n].name)); - glyph_list[n].name = malloc(16); - sprintf(glyph_list[n].name, "_b_%d", n); - WARNING_3 fprintf(stderr, "changing to %s\n", glyph_list[n].name); - break; - } - } - } - - if( !ps_fmt_3 ) { - /* check for duplicate names */ - for (n = 0; n < numglyphs; n++) { - found = 0; - for (i = 0; i < n && !found; i++) { - if (strcmp(glyph_list[i].name, glyph_list[n].name) == 0) { - if (( glyph_list[n].name = malloc(16) )==0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - sprintf(glyph_list[n].name, "_d_%d", n); - - /* if the font has no names in it (what the native parser - * recognises as ps_fmt_3), FreeType returns all the - * names as .notdef, so don't complain in this case - */ - if(strcmp(glyph_list[i].name, ".notdef")) { - WARNING_3 fprintf(stderr, - "Glyph %d has the same name as %d: (%s), changing to %s\n", - n, i, - glyph_list[i].name, - glyph_list[n].name); - } - found = 1; - } - } - } - - } - - /* start the encoding stuff */ - for (i = 0; i < ENCTABSZ; i++) { - encoding[i] = -1; - } - - /* do the 1st round of encoding by name */ - if(!ps_fmt_3 && uni_lang_selected && uni_lang_selected->convbyname) { - for (n = 0; n < numglyphs; n++) { - c = uni_lang_selected->convbyname(glyph_list[n].name, - uni_lang_arg, UNICONV_BYNAME_BEFORE); - if(c>=0 && c<ENCTABSZ && encoding[c] == -1) - encoding[c] = n; - } - } - - /* now do the encoding by table */ - if(uni_lang_selected) { - for(i=0; i < MAXUNITABLES && uni_lang_selected->init[i]; i++) { - for (n = 0; n < ENCTABSZ; n++) - unicode_map[n] = -1; - uni_lang_selected->init[i](uni_lang_arg); - unicode_prepare_buckets(); - type = cursw->glenc(glyph_list, encoding, unicode_map); - if( type == 0 ) - /* if we have an 8-bit encoding we don't need more tries */ - break; - } - } else { - /* language is unknown, try the first table of each */ - for(i=0; i < sizeof uni_lang/(sizeof uni_lang[0]); i++) { - if(uni_lang[i].init[0] == NULL) - continue; - for (n = 0; n < ENCTABSZ; n++) - unicode_map[n] = -1; - uni_lang[i].init[0](uni_lang_arg); - unicode_prepare_buckets(); - type = cursw->glenc(glyph_list, encoding, unicode_map); - if( type == 0 ) - /* if we have an 8-bit encoding we don't need more tries */ - break; - } - } - - if (ps_fmt_3) { - /* get rid of the old names, they are all "UNKNOWN" anyawy */ - for (i = 0; i < numglyphs; i++) { - glyph_list[i].name = 0; - } - if(type == 0) { - /* 8-bit - give 8859/1 names to the first 256 glyphs */ - for (i = 0; i < 256; i++) { /* here 256, not ENCTABSZ */ - if (encoding[i] > 0) { - glyph_list[encoding[i]].name = Fmt3Encoding[i]; - } - } - } else if(type == 1) { - /* Unicode - give 8859/1 names to the first 256 glyphs of Unicode */ - for (n = 0; n < 256; n++) { /* here 256, not ENCTABSZ */ - i = unicode_rev_lookup(n); - if (i>=0 && encoding[i] > 0) { - glyph_list[encoding[i]].name = Fmt3Encoding[i]; - } - } - } /* for other types of encodings just give generated names */ - /* assign unique names to the rest of the glyphs */ - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].name == 0) { - if (( glyph_list[i].name = malloc(16) )==0) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - sprintf(glyph_list[i].name, "_d_%d", i); - } - } - } - - /* do the 2nd round of encoding by name */ - if(uni_lang_selected && uni_lang_selected->convbyname) { - for (n = 0; n < numglyphs; n++) { - c = uni_lang_selected->convbyname(glyph_list[n].name, - uni_lang_arg, UNICONV_BYNAME_AFTER); - if(c>=0 && c<ENCTABSZ && encoding[c] == -1) - encoding[c] = n; - } - } - /* all the encoding things are done */ - - for (i = 0; i < ENCTABSZ; i++) - if(encoding[i] == -1) { - /* check whether this character might be a duplicate - * (in which case it would be missed by unicode_rev_lookup()) - */ - c = unicode_map[i]; - if((type != 0 || forcemap) && c != -1) { - for(n = 0; n < i; n++) { - if(unicode_map[n] == c) { - encoding[i] = encoding[n]; - } - } - } - if(encoding[i] == -1) /* still not found, defaults to .notdef */ - encoding[i] = 0; - } - - for (i = 0; i < 256; i++) /* here 256, not ENCTABSZ */ - glyph_list[encoding[i]].char_no = i; - - /* enforce two special cases defined in TTF manual */ - if(numglyphs > 0) - glyph_list[0].name = ".notdef"; - if(numglyphs > 1) - glyph_list[1].name = ".null"; - - for (i = 0; i < ENCTABSZ; i++) { - if ((encoding[i] != 0) && glyph_rename[i]) { - glyph_list[encoding[i]].name = glyph_rename[i]; - } - } - -} - -static void -usage(void) -{ - -#ifdef _GNU_SOURCE -# define fplop(txt) fputs(txt, stderr); -#else -# define fplop(txt) -#endif - - fputs("Use:\n", stderr); - fputs("ttf2pt1 [-<opts>] [-l language | -L file] <ttf-file> [<fontname>]\n", stderr); - fputs(" or\n", stderr); - fputs("ttf2pt1 [-<opts>] [-l language | -L file] <ttf-file> -\n", stderr); - fputs(" or\n", stderr); - fputs("ttf2pt1 [-<opts>] [-l language | -L file] <ttf-file> - | t1asm > <pfa-file>\n", stderr); - - fplop("\n"); - fplop("This build supports both short and long option names,\n"); - fplop("the long options are listed before corresponding short ones\n"); - - fplop(" --all-glyphs\n"); - fputs(" -a - include all glyphs, even those not in the encoding table\n", stderr); - fplop(" --pfb\n"); - fputs(" -b - produce a compressed .pfb file\n", stderr); - fplop(" --debug dbg_suboptions\n"); - fputs(" -d dbg_suboptions - debugging options, run ttf2pt1 -d? for help\n", stderr); - fplop(" --encode\n"); - fputs(" -e - produce a fully encoded .pfa file\n", stderr); - fplop(" --force-unicode\n"); - fputs(" -F - force use of Unicode encoding even if other MS encoding detected\n", stderr); - fplop(" --generate suboptions\n"); - fputs(" -G suboptions - control the file generation, run ttf2pt1 -G? for help\n", stderr); - fplop(" --language language\n"); - fputs(" -l language - convert Unicode to specified language, run ttf2pt1 -l? for list\n", stderr); - fplop(" --language-map file\n"); - fputs(" -L file - convert Unicode according to encoding description file\n", stderr); - fplop(" --limit <type>=<value>\n"); - fputs(" -m <type>=<value> - set maximal limit of given type to value, types:\n", stderr); - fputs(" h - maximal hint stack depth in the PostScript interpreter\n", stderr); - fplop(" --processing suboptions\n"); - fputs(" -O suboptions - control outline processing, run ttf2pt1 -O? for help\n", stderr); - fplop(" --parser name\n"); - fputs(" -p name - use specific front-end parser, run ttf2pt1 -p? for list\n", stderr); - fplop(" --uid id\n"); - fputs(" -u id - use this UniqueID, -u A means autogeneration\n", stderr); - fplop(" --vertical-autoscale size\n"); - fputs(" -v size - scale the font to make uppercase letters >size/1000 high\n", stderr); - fplop(" --version\n"); - fputs(" -V - print ttf2pt1 version number\n", stderr); - fplop(" --warning number\n"); - fputs(" -W number - set the level of permitted warnings (0 - disable)\n", stderr); - fputs("Obsolete options (will be removed in future releases):\n", stderr); - fplop(" --afm\n"); - fputs(" -A - write the .afm file to STDOUT instead of the font, now -GA\n", stderr); - fputs(" -f - don't try to guess the value of the ForceBold hint, now -Ob\n", stderr); - fputs(" -h - disable autogeneration of hints, now -Oh\n", stderr); - fputs(" -H - disable hint substitution, now -Ou\n", stderr); - fputs(" -o - disable outline optimization, now -Oo\n", stderr); - fputs(" -s - disable outline smoothing, now -Os\n", stderr); - fputs(" -t - disable auto-scaling to 1000x1000 standard matrix, now -Ot\n", stderr); - fputs(" -w - correct the glyph widths (use only for buggy fonts), now -OW\n", stderr); - fputs("With no <fontname>, write to <ttf-file> with suffix replaced.\n", stderr); - fputs("The last '-' means 'use STDOUT'.\n", stderr); - -#undef fplop - -} - -static void -printversion(void) -{ - fprintf(stderr, "ttf2pt1 %s\n", TTF2PT1_VERSION); -} - -/* initialize a table of suboptions */ -static void -init_subo_tbl( - struct subo_case *tbl -) -{ - int i; - - for(i=0; tbl[i].disbl != 0; i++) { - tbl[i].disbl = tolower(tbl[i].disbl); - tbl[i].enbl = toupper(tbl[i].disbl); - *(tbl[i].valp) = tbl[i].dflt; - } -} - -/* print the default value of the suboptions */ -static void -print_subo_dflt( - FILE *f, - struct subo_case *tbl -) -{ - int i; - - for(i=0; tbl[i].disbl != 0; i++) { - if(tbl[i].dflt) - putc(tbl[i].enbl, f); - else - putc(tbl[i].disbl, f); - } -} - -/* print the usage message for the suboptions */ -static void -print_subo_usage( - FILE *f, - struct subo_case *tbl -) -{ - int i; - - fprintf(f,"The lowercase suboptions disable features, corresponding\n"); - fprintf(f,"uppercase suboptions enable them. The supported suboptions,\n"); - fprintf(f,"their default states and the features they control are:\n"); - for(i=0; tbl[i].disbl != 0; i++) { - fprintf(f," %c/%c - [%s] %s\n", tbl[i].disbl, tbl[i].enbl, - tbl[i].dflt ? "enabled" : "disabled", tbl[i].descr); - } -} - -/* find and set the entry according to suboption, - * return the found entry (or if not found return NULL) - */ -struct subo_case * -set_subo( - struct subo_case *tbl, - int subopt -) -{ - int i; - - for(i=0; tbl[i].disbl != 0; i++) { - if(subopt == tbl[i].disbl) { - *(tbl[i].valp) = 0; - return &tbl[i]; - } else if(subopt == tbl[i].enbl) { - *(tbl[i].valp) = 1; - return &tbl[i]; - } - } - return NULL; -} - - -int -main( - int argc, - char **argv -) -{ - int i, j; - time_t now; - char filename[4096]; - int c,nchars,nmetrics; - int ws; - int forcebold= -1; /* -1 means "don't know" */ - char *lang; - int oc; - int subid; - char *cmdline; -#ifdef _GNU_SOURCE -# define ttf2pt1_getopt(a, b, c, d, e) getopt_long(a, b, c, d, e) - static struct option longopts[] = { - { "afm", 0, NULL, 'A' }, - { "all-glyphs", 0, NULL, 'a' }, - { "pfb", 0, NULL, 'b' }, - { "debug", 1, NULL, 'd' }, - { "encode", 0, NULL, 'e' }, - { "force-unicode", 0, NULL, 'F' }, - { "generate", 1, NULL, 'G' }, - { "language", 1, NULL, 'l' }, - { "language-map", 1, NULL, 'L' }, - { "limit", 1, NULL, 'm' }, - { "processing", 1, NULL, 'O' }, - { "parser", 1, NULL, 'p' }, - { "uid", 1, NULL, 'u' }, - { "vertical-autoscale", 1, NULL, 'v' }, - { "version", 0, NULL, 'V' }, - { "warning", 1, NULL, 'W' }, - { NULL, 0, NULL, 0 } - }; -#else -# define ttf2pt1_getopt(a, b, c, d, e) getopt(a, b, c) -#endif - /* table of Outline Processing (may think also as Optimization) options */ - static struct subo_case opotbl[] = { - { 'b', 0/*auto-set*/, &trybold, 1, "guessing of the ForceBold hint" }, - { 'h', 0/*auto-set*/, &hints, 1, "autogeneration of hints" }, - { 'u', 0/*auto-set*/, &subhints, 1, "hint substitution technique" }, - { 'o', 0/*auto-set*/, &optimize, 1, "space optimization of font files" }, - { 's', 0/*auto-set*/, &smooth, 1, "smoothing and repair of outlines" }, - { 't', 0/*auto-set*/, &transform, 1, "auto-scaling to the standard matrix 1000x1000" }, - { 'w', 0/*auto-set*/, &correctwidth, 0, "correct the glyph widths (use only for buggy fonts)" }, - { 0, 0, 0, 0, 0} /* terminator */ - }; - /* table of the File Generation options */ - static struct subo_case fgotbl[] = { - { 'f', 0/*auto-set*/, &gen_pfa, 1, "generate the font file (.t1a, .pfa or .pfb)" }, - { 'a', 0/*auto-set*/, &gen_afm, 1, "generate the Adobe metrics file (.afm)" }, - { 'e', 0/*auto-set*/, &gen_dvienc, 0, "generate the dvips encoding file (.enc)" }, - { 0, 0, 0, 0, 0} /* terminator */ - }; - int *genlast = NULL; - - - init_subo_tbl(opotbl); /* initialize sub-options of -O */ - init_subo_tbl(fgotbl); /* initialize sub-options of -G */ - - /* save the command line for the record - * (we don't bother about escaping the shell special characters) - */ - - j = 0; - for(i=1; i<argc; i++) { - j += strlen(argv[i])+1; - } - if ((cmdline = malloc(j+1)) == NULL) { - fprintf (stderr, "****malloc failed %s line %d\n", __FILE__, __LINE__); - exit(255); - } - cmdline[0] = 0; - for(i=1; i<argc; i++) { - strcat(cmdline, argv[i]); - strcat(cmdline, " "); - } - for(i=0; (j=cmdline[i])!=0; i++) - if(j == '\n') - cmdline[i] = ' '; - - - while(( oc=ttf2pt1_getopt(argc, argv, "FaoebAsthHfwVv:p:l:d:u:L:m:W:O:G:", - longopts, NULL) )!= -1) { - switch(oc) { - case 'W': - if(sscanf(optarg, "%d", &warnlevel) < 1 || warnlevel < 0) { - fprintf(stderr, "**** warning level must be a positive number\n"); - exit(1); - } - break; - case 'F': - forcemap = 1; - break; - case 'o': - fputs("Warning: option -o is obsolete, use -Oo instead\n", stderr); - optimize = 0; - break; - case 'e': - encode = 1; - break; - case 'b': - encode = pfbflag = 1; - break; - case 'A': - fputs("Warning: option -A is obsolete, use -GA instead\n", stderr); - wantafm = 1; - break; - case 'a': - allglyphs = 1; - break; - case 's': - fputs("Warning: option -s is obsolete, use -Os instead\n", stderr); - smooth = 0; - break; - case 't': - fputs("Warning: option -t is obsolete, use -Ot instead\n", stderr); - transform = 0; - break; - case 'd': - for(i=0; optarg[i]!=0; i++) - switch(optarg[i]) { - case 'a': - absolute = 1; - break; - case 'r': - reverse = 0; - break; - default: - if (optarg[i] != '?') - fprintf(stderr, "**** Unknown debugging option '%c' ****\n", optarg[i]); - fputs("The recognized debugging options are:\n", stderr); - fputs(" a - enable absolute coordinates\n", stderr); - fputs(" r - do not reverse font outlines directions\n", stderr); - exit(1); - break; - }; - break; - case 'm': - { - char subopt; - int val; - - if(sscanf(optarg, "%c=%d", &subopt, &val) !=2) { - fprintf(stderr, "**** Misformatted maximal limit ****\n"); - fprintf(stderr, "spaces around the equal sign are not allowed\n"); - fprintf(stderr, "good examples: -mh=100 -m h=100\n"); - fprintf(stderr, "bad examples: -mh = 100 -mh= 100\n"); - exit(1); - break; - } - switch(subopt) { - case 'h': - max_stemdepth = val; - break; - default: - if (subopt != '?') - fprintf(stderr, "**** Unknown limit type '%c' ****\n", subopt); - fputs("The recognized limit types are:\n", stderr); - fputs(" h - maximal hint stack depth in the PostScript interpreter\n", stderr); - exit(1); - break; - } - break; - } - case 'O': - { - char *p; - for(p=optarg; *p != 0; p++) { - if(set_subo(opotbl, *p) == NULL) { /* found no match */ - if (*p != '?') - fprintf(stderr, "**** Unknown outline processing suboption '%c' ****\n", *p); - fprintf(stderr,"The general form of the outline processing option is:\n"); - fprintf(stderr," -O suboptions\n"); - fprintf(stderr,"(To remember easily -O may be also thought of as \"optimization\").\n"); - print_subo_usage(stderr, opotbl); - fprintf(stderr, "The default state corresponds to the option -O "); - print_subo_dflt(stderr, opotbl); - fprintf(stderr, "\n"); - exit(1); - } - } - break; - } - case 'G': - { - char *p; - struct subo_case *s; - - for(p=optarg; *p != 0; p++) { - if(( s = set_subo(fgotbl, *p) )==NULL) { /* found no match */ - if (*p != '?') - fprintf(stderr, "**** Unknown outline processing suboption '%c' ****\n", *p); - fprintf(stderr,"The general form of the file generation option is:\n"); - fprintf(stderr," -G suboptions\n"); - print_subo_usage(stderr, fgotbl); - fprintf(stderr, "The default state corresponds to the option -G "); - print_subo_dflt(stderr, fgotbl); - fprintf(stderr, "\n"); - fprintf(stderr, "If the result is written to STDOUT, the last specified enabling suboption of -G\n"); - fprintf(stderr, "selects the file to be written to STDOUT (the font file by default).\n"); - exit(1); - } - if( *(s->valp) ) - genlast = s->valp; - } - break; - } - case 'h': - fputs("Warning: option -h is obsolete, use -Oh instead\n", stderr); - hints = 0; - break; - case 'H': - fputs("Warning: meaning of option -H has been changed to its opposite\n", stderr); - fputs("Warning: option -H is obsolete, use -Ou instead\n", stderr); - subhints = 0; - break; - case 'f': - fputs("Warning: option -f is obsolete, use -Ob instead\n", stderr); - trybold = 0; - break; - case 'w': - fputs("Warning: option -w is obsolete, use -OW instead\n", stderr); - correctwidth = 1; - break; - case 'u': - if(wantuid) { - fprintf(stderr, "**** UniqueID may be specified only once ****\n"); - exit(1); - } - wantuid = 1; - if(optarg[0]=='A' && optarg[1]==0) - strUID=0; /* will be generated automatically */ - else { - strUID=optarg; - for(i=0; optarg[i]!=0; i++) - if( !isdigit(optarg[i]) ) { - fprintf(stderr, "**** UniqueID must be numeric or A for automatic ****\n"); - exit(1); - } - } - break; - case 'v': - correctvsize = atoi(optarg); - if(correctvsize <= 0 && correctvsize > 1000) { - fprintf(stderr, "**** wrong vsize '%d', ignored ****\n", correctvsize); - correctvsize=0; - } - break; - case 'p': - if(cursw!=0) { - fprintf(stderr, "**** only one front-end parser be used ****\n"); - exit(1); - } - - { /* separate parser from parser-specific argument */ - char *p = strchr(optarg, LANG_ARG_SEP); - if(p != 0) { - *p = 0; - front_arg = p+1; - } else - front_arg = ""; - } - for(i=0; frontswtab[i] != NULL; i++) - if( !strcmp(frontswtab[i]->name, optarg) ) { - cursw = frontswtab[i]; - break; - } - - if(cursw==0) { - if (strcmp(optarg, "?")) - fprintf(stderr, "**** unknown front-end parser '%s' ****\n", optarg); - fputs("the following front-ends are supported now:\n", stderr); - for(i=0; frontswtab[i] != NULL; i++) { - fprintf(stderr," %s (%s)\n file suffixes: ", - frontswtab[i]->name, - frontswtab[i]->descr ? frontswtab[i]->descr : "no description" - ); - for(j=0; j<MAXSUFFIX; j++) - if(frontswtab[i]->suffix[j]) - fprintf(stderr, "%s ", frontswtab[i]->suffix[j]); - fprintf(stderr, "\n"); - } - exit(1); - } - break; - case 'l': - if(uni_lang_selected!=0) { - fprintf(stderr, "**** only one language option may be used ****\n"); - exit(1); - } - - { /* separate language from language-specific argument */ - char *p = strchr(optarg, LANG_ARG_SEP); - if(p != 0) { - *p = 0; - uni_lang_arg = p+1; - } else - uni_lang_arg = ""; - } - for(i=0; i < sizeof uni_lang/(sizeof uni_lang[0]); i++) - if( !strcmp(uni_lang[i].name, optarg) ) { - uni_lang_selected = &uni_lang[i]; - uni_sample = uni_lang[i].sample_upper; - break; - } - - if(uni_lang_selected==0) { - if (strcmp(optarg, "?")) - fprintf(stderr, "**** unknown language '%s' ****\n", optarg); - fputs(" the following languages are supported now:\n", stderr); - for(i=0; i < sizeof uni_lang/(sizeof uni_lang[0]); i++) - fprintf(stderr," %s (%s)\n", - uni_lang[i].name, - uni_lang[i].descr ? uni_lang[i].descr : "no description" - ); - exit(1); - } - break; - case 'L': - if(uni_lang_selected!=0) { - fprintf(stderr, "**** only one language option may be used ****\n"); - exit(1); - } - uni_lang_selected = &uni_lang_user; - uni_lang_arg = optarg; - break; - case 'V': - printversion(); - exit(0); - break; - default: - usage(); - exit(1); - break; - } - } - argc-=optind-1; /* the rest of code counts from argv[0] */ - argv+=optind-1; - - if (absolute && encode) { - fprintf(stderr, "**** options -a and -e are incompatible ****\n"); - exit(1); - } - if ((argc != 2) && (argc != 3)) { - usage(); - exit(1); - } - - /* try to guess the language by the locale used */ - if(uni_lang_selected==0 && (lang=getenv("LANG"))!=0 ) { - for(i=0; i < sizeof uni_lang/sizeof(struct uni_language); i++) { - if( !strncmp(uni_lang[i].name, lang, strlen(uni_lang[i].name)) ) { - uni_lang_selected = &uni_lang[i]; - goto got_a_language; - } - } - /* no full name ? try aliases */ - for(i=0; i < sizeof uni_lang/sizeof(struct uni_language); i++) { - for(c=0; c<MAXUNIALIAS; c++) - if( uni_lang[i].alias[c]!=0 - && !strncmp(uni_lang[i].alias[c], lang, strlen(uni_lang[i].alias[c])) ) { - uni_lang_selected = &uni_lang[i]; - goto got_a_language; - } - } - got_a_language: - if(uni_lang_selected!=0) { - WARNING_1 fprintf(stderr, "Using language '%s' for Unicode fonts\n", uni_lang[i].name); - uni_sample = uni_lang[i].sample_upper; - } - } - - /* try to guess the front-end parser by the file name suffix */ - if(cursw==0) { - char *p = strrchr(argv[1], '.'); - char *s; - - if(p!=0 && (s = strdup(p+1))!=0) { - for(p=s; *p; p++) - *p = tolower(*p); - p = s; - - for(i=0; frontswtab[i] != 0 && cursw == 0; i++) { - for(j=0; j<MAXSUFFIX; j++) - if(frontswtab[i]->suffix[j] - && !strcmp(p, frontswtab[i]->suffix[j]) ) { - cursw = frontswtab[i]; - WARNING_1 fprintf(stderr, "Auto-detected front-end parser '%s'\n", - cursw->name); - WARNING_1 fprintf(stderr, " (use ttf2pt1 -p? to get the full list of available front-ends)\n"); - break; - } - } - free(s); - } - - if(cursw==0) { - cursw = frontswtab[0]; - WARNING_1 fprintf(stderr, "Can't detect front-end parser, using '%s' by default\n", - cursw->name); - WARNING_1 fprintf(stderr, " (use ttf2pt1 -p? to get the full list of available front-ends)\n"); - } - } - - /* open the input file */ - cursw->open(argv[1], front_arg); - - /* Get base name of output file (if not specified) - * by removing (known) suffixes - */ - if (argc == 2) { - char *p; - argv[2] = strdup (argv[1]); - p = strrchr(argv[2], '.'); - if (p != NULL) - for (j = 0; (j < MAXSUFFIX) && (cursw->suffix[j]); j++) - if (!strcmp(p+1, cursw->suffix[j])) { - *p = '\0'; - break; - } - } - - if ((null_file = fopen(BITBUCKET, "w")) == NULL) { - fprintf(stderr, "**** Cannot open %s ****\n", - BITBUCKET); - exit(1); - } - - if (argv[2][0] == '-' && argv[2][1] == 0) { -#ifdef WINDOWS - if(encode) { - fprintf(stderr, "**** can't write encoded file to stdout ***\n"); - exit(1); - } -#endif /* WINDOWS */ - pfa_file = afm_file = dvienc_file = null_file; - - if(wantafm || genlast == &gen_afm) { /* print .afm instead of .pfa */ - afm_file=stdout; - } else if(genlast == &gen_dvienc) { /* print .enc instead of .pfa */ - dvienc_file=stdout; - } else { - pfa_file=stdout; - } - } else { -#ifndef WINDOWS - snprintf(filename, sizeof filename, "%s.%s", argv[2], encode ? (pfbflag ? "pfb" : "pfa") : "t1a" ); -#else /* WINDOWS */ - snprintf(filename, sizeof filename, "%s.t1a", argv[2]); -#endif /* WINDOWS */ - if(gen_pfa) { - if ((pfa_file = fopen(filename, "w+b")) == NULL) { - fprintf(stderr, "**** Cannot create %s ****\n", filename); - exit(1); - } else { - WARNING_2 fprintf(stderr, "Creating file %s\n", filename); - } - } else - pfa_file = null_file; - - if(gen_afm) { - snprintf(filename, sizeof filename, "%s.afm", argv[2]) ; - if ((afm_file = fopen(filename, "w+")) == NULL) { - fprintf(stderr, "**** Cannot create %s ****\n", filename); - exit(1); - } - } else - afm_file = null_file; - - if(gen_dvienc) { - snprintf(filename, sizeof filename, "%s.enc", argv[2]) ; - if ((dvienc_file = fopen(filename, "w+")) == NULL) { - fprintf(stderr, "**** Cannot create %s ****\n", filename); - exit(1); - } - } else - dvienc_file = null_file; - } - - /* - * Now check whether we want a fully encoded .pfa file - */ -#ifndef WINDOWS - if (encode && pfa_file != null_file) { - int p[2]; - extern FILE *ifp, *ofp; /* from t1asm.c */ - - ifp=stdin; - ofp=stdout; - - if (pipe(p) < 0) { - perror("**** Cannot create pipe ****\n"); - exit(1); - } - ofp = pfa_file; - ifp = fdopen(p[0], "r"); - if (ifp == NULL) { - perror("**** Cannot use pipe for reading ****\n"); - exit(1); - } - pfa_file = fdopen(p[1], "w"); - if (pfa_file == NULL) { - perror("**** Cannot use pipe for writing ****\n"); - exit(1); - } - switch (fork()) { - case -1: - perror("**** Cannot fork the assembler process ****\n"); - exit(1); - case 0: /* child */ - fclose(pfa_file); - exit(runt1asm(pfbflag)); - default: /* parent */ - fclose(ifp); fclose(ofp); - } - } -#endif /* WINDOWS */ - - numglyphs = cursw->nglyphs(); - - WARNING_3 fprintf(stderr, "numglyphs = %d\n", numglyphs); - - glyph_list = (GLYPH *) calloc(numglyphs, sizeof(GLYPH)); - - /* initialize non-0 fields */ - for (i = 0; i < numglyphs; i++) { - GLYPH *g; - - g = &glyph_list[i]; - g->char_no = -1; - g->orig_code = -1; - g->name = "UNKNOWN"; - g->flags = GF_FLOAT; /* we start with float representation */ - } - - handle_gnames(); - - cursw->glmetrics(glyph_list); - cursw->fnmetrics(&fontm); - - original_scale_factor = 1000.0 / (double) fontm.units_per_em; - - if(transform == 0) - scale_factor = 1.0; /* don't transform */ - else - scale_factor = original_scale_factor; - - if(correctvsize && uni_sample!=0) { /* only for known languages */ - /* try to adjust the scale factor to make a typical - * uppercase character of hight at least (correctvsize), this - * may improve the appearance of the font but also - * make it weird, use with caution - */ - int ysz; - - ysz = iscale(glyph_list[encoding[uni_sample]].yMax); - if( ysz<correctvsize ) { - scale_factor *= (double)correctvsize / ysz; - } - } - - if(allglyphs) { - for (i = 0; i < numglyphs; i++) { - glyph_list[i].flags |= GF_USED; - } - } else { - for (i = 0; i < ENCTABSZ; i++) { - glyph_list[encoding[i]].flags |= GF_USED; - } - - /* also always include .notdef */ - for (i = 0; i < numglyphs; i++) - if(!strcmp(glyph_list[i].name, ".notdef")) { - glyph_list[i].flags |= GF_USED; - break; - } - } - - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - DBG_TO_GLYPH(&glyph_list[i]); - convert_glyf(i); - DBG_FROM_GLYPH(&glyph_list[i]); - } - } - - italic_angle = fontm.italic_angle; - - if (italic_angle > 45.0 || italic_angle < -45.0) - italic_angle = 0.0; /* consider buggy */ - - if (hints) { - findblues(); - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - DBG_TO_GLYPH(&glyph_list[i]); - buildstems(&glyph_list[i]); - assertpath(glyph_list[i].entries, __FILE__, __LINE__, glyph_list[i].name); - DBG_FROM_GLYPH(&glyph_list[i]); - } - } - stemstatistics(); - } else { - for(i=0; i<4; i++) - bbox[i] = iscale(fontm.bbox[i]); - } - /* don't touch the width of fixed width fonts */ - if( fontm.is_fixed_pitch ) - correctwidth=0; - docorrectwidth(); /* checks correctwidth inside */ - if (reverse) - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - DBG_TO_GLYPH(&glyph_list[i]); - reversepaths(&glyph_list[i]); - assertpath(glyph_list[i].entries, __FILE__, __LINE__, glyph_list[i].name); - DBG_FROM_GLYPH(&glyph_list[i]); - } - } - - -#if 0 - /* - ** It seems to bring troubles. The problem is that some - ** styles of the font may be recognized as fixed-width - ** while other styles of the same font as proportional. - ** So it's better to be commented out yet. - */ - if (tryfixed) - alignwidths(); -#endif - - if(trybold) { - forcebold = fontm.force_bold; - } - - fprintf(pfa_file, "%%!PS-AdobeFont-1.0: %s %s\n", fontm.name_ps, fontm.name_copyright); - time(&now); - fprintf(pfa_file, "%%%%CreationDate: %s", ctime(&now)); - fprintf(pfa_file, "%% Converted by ttf2pt1 %s/%s\n", TTF2PT1_VERSION, cursw->name); - fprintf(pfa_file, "%% Args: %s\n", cmdline); - fprintf(pfa_file, "%%%%EndComments\n"); - fprintf(pfa_file, "12 dict begin\n/FontInfo 9 dict dup begin\n"); - - WARNING_3 fprintf(stderr, "FontName %s%s\n", fontm.name_ps, uni_font_name_suffix); - - - fprintf(pfa_file, "/version (%s) readonly def\n", fontm.name_version); - - fprintf(pfa_file, "/Notice (%s) readonly def\n", fontm.name_copyright); - - fprintf(pfa_file, "/FullName (%s) readonly def\n", fontm.name_full); - fprintf(pfa_file, "/FamilyName (%s) readonly def\n", fontm.name_family); - - if(wantuid) { - if(strUID) - fprintf(pfa_file, "/UniqueID %s def\n", strUID); - else { - numUID=0; - for(i=0; fontm.name_full[i]!=0; i++) { - numUID *= 37; /* magic number, good for hash */ - numUID += fontm.name_full[i]-' '; - /* if the name is long the first chars - * may be lost forever, so re-insert - * them thus making kind of CRC - */ - numUID += (numUID>>24) & 0xFF; - } - /* the range for private UIDs is 4 000 000 - 4 999 999 */ - fprintf(pfa_file, "/UniqueID %lu def\n", numUID%1000000+4000000); - } - } - - fprintf(pfa_file, "/Weight (%s) readonly def\n", fontm.name_style); - - fprintf(pfa_file, "/ItalicAngle %f def\n", italic_angle); - fprintf(pfa_file, "/isFixedPitch %s def\n", - fontm.is_fixed_pitch ? "true" : "false"); - - /* we don't print out the unused glyphs */ - nchars = 0; - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - nchars++; - } - } - - fprintf(afm_file, "StartFontMetrics 4.1\n"); - fprintf(afm_file, "FontName %s%s\n", fontm.name_ps, uni_font_name_suffix); - fprintf(afm_file, "FullName %s\n", fontm.name_full); - fprintf(afm_file, "Notice %s\n", fontm.name_copyright); - fprintf(afm_file, "EncodingScheme FontSpecific\n"); - fprintf(afm_file, "FamilyName %s\n", fontm.name_family); - fprintf(afm_file, "Weight %s\n", fontm.name_style); - fprintf(afm_file, "Version %s\n", fontm.name_version); - fprintf(afm_file, "Characters %d\n", nchars); - fprintf(afm_file, "ItalicAngle %.1f\n", italic_angle); - - fprintf(afm_file, "Ascender %d\n", iscale(fontm.ascender)); - fprintf(afm_file, "Descender %d\n", iscale(fontm.descender)); - - fprintf(pfa_file, "/UnderlinePosition %d def\n", - iscale(fontm.underline_position)); - - fprintf(pfa_file, "/UnderlineThickness %hd def\nend readonly def\n", - iscale(fontm.underline_thickness)); - - fprintf(afm_file, "UnderlineThickness %d\n", - iscale(fontm.underline_thickness)); - - fprintf(afm_file, "UnderlinePosition %d\n", - iscale(fontm.underline_position)); - - fprintf(afm_file, "IsFixedPitch %s\n", - fontm.is_fixed_pitch ? "true" : "false"); - fprintf(afm_file, "FontBBox %d %d %d %d\n", - bbox[0], bbox[1], bbox[2], bbox[3]); - - fprintf(pfa_file, "/FontName /%s%s def\n", fontm.name_ps, uni_font_name_suffix); - fprintf(pfa_file, "/PaintType 0 def\n/StrokeWidth 0 def\n"); - /* I'm not sure if these are fixed */ - fprintf(pfa_file, "/FontType 1 def\n"); - - if (transform) { - fprintf(pfa_file, "/FontMatrix [0.001 0 0 0.001 0 0] def\n"); - } else { - fprintf(pfa_file, "/FontMatrix [%9.7f 0 0 %9.7f 0 0] def\n", - original_scale_factor / 1000.0, original_scale_factor / 1000.0); - } - - fprintf(pfa_file, "/FontBBox {%d %d %d %d} readonly def\n", - bbox[0], bbox[1], bbox[2], bbox[3]); - - fprintf(pfa_file, "/Encoding 256 array\n"); - /* determine number of elements for metrics table */ - nmetrics = 256; - for (i = 0; i < numglyphs; i++) { - if( glyph_list[i].flags & GF_USED - && glyph_list[i].char_no == -1 ) { - nmetrics++; - } - } - fprintf(afm_file, "StartCharMetrics %d\n", nmetrics); - - fprintf(dvienc_file, "/%s%sEncoding [\n", - fontm.name_ps, uni_font_name_suffix); - - for (i = 0; i < 256; i++) { /* here 256, not ENCTABSZ */ - fprintf(pfa_file, - "dup %d /%s put\n", i, glyph_list[encoding[i]].name); - if( glyph_list[encoding[i]].flags & GF_USED ) { - print_glyph_metrics(i, encoding[i]); - } - if (encoding[i]) - fprintf (dvienc_file, "/index0x%04X\n", encoding[i]); - else - fprintf (dvienc_file, "/.notdef\n"); - } - - /* print the metrics for glyphs not in encoding table */ - for(i=0; i<numglyphs; i++) { - if( (glyph_list[i].flags & GF_USED) - && glyph_list[i].char_no == -1 ) { - print_glyph_metrics(-1, i); - } - } - - fprintf(pfa_file, "readonly def\ncurrentdict end\ncurrentfile eexec\n"); - fprintf(pfa_file, "dup /Private 16 dict dup begin\n"); - - fprintf(pfa_file, "/RD{string currentfile exch readstring pop}executeonly def\n"); - fprintf(pfa_file, "/ND{noaccess def}executeonly def\n"); - fprintf(pfa_file, "/NP{noaccess put}executeonly def\n"); - - /* UniqueID must be shown twice, in both font and Private dictionary */ - if(wantuid) { - if(strUID) - fprintf(pfa_file, "/UniqueID %s def\n", strUID); - else - fprintf(pfa_file, "/UniqueID %lu def\n", numUID); - } - - if(forcebold==0) - fprintf(pfa_file, "/ForceBold false def\n"); - else if(forcebold==1) - fprintf(pfa_file, "/ForceBold true def\n"); - - fprintf(pfa_file, "/BlueValues [ "); - for (i = 0; i < nblues; i++) - fprintf(pfa_file, "%d ", bluevalues[i]); - fprintf(pfa_file, "] def\n"); - - fprintf(pfa_file, "/OtherBlues [ "); - for (i = 0; i < notherb; i++) - fprintf(pfa_file, "%d ", otherblues[i]); - fprintf(pfa_file, "] def\n"); - - if (stdhw != 0) - fprintf(pfa_file, "/StdHW [ %d ] def\n", stdhw); - if (stdvw != 0) - fprintf(pfa_file, "/StdVW [ %d ] def\n", stdvw); - fprintf(pfa_file, "/StemSnapH [ "); - for (i = 0; i < 12 && stemsnaph[i] != 0; i++) - fprintf(pfa_file, "%d ", stemsnaph[i]); - fprintf(pfa_file, "] def\n"); - fprintf(pfa_file, "/StemSnapV [ "); - for (i = 0; i < 12 && stemsnapv[i] != 0; i++) - fprintf(pfa_file, "%d ", stemsnapv[i]); - fprintf(pfa_file, "] def\n"); - - fprintf(pfa_file, "/MinFeature {16 16} def\n"); - /* Are these fixed also ? */ - fprintf(pfa_file, "/password 5839 def\n"); - - /* calculate the number of subroutines */ - - subid=5; - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - subid+=glyph_list[i].nsg; - } - } - - fprintf(pfa_file, "/Subrs %d array\n", subid); - /* standard subroutines */ - fprintf(pfa_file, "dup 0 {\n\t3 0 callothersubr pop pop setcurrentpoint return\n\t} NP\n"); - fprintf(pfa_file, "dup 1 {\n\t0 1 callothersubr return\n\t} NP\n"); - fprintf(pfa_file, "dup 2 {\n\t0 2 callothersubr return\n\t} NP\n"); - fprintf(pfa_file, "dup 3 {\n\treturn\n\t} NP\n"); - /* our sub to make the hint substitution code shorter */ - fprintf(pfa_file, "dup 4 {\n\t1 3 callothersubr pop callsubr return\n\t} NP\n"); - - if(pfa_file != null_file) { /* save time if the output would be wasted */ - /* print the hinting subroutines */ - subid=5; - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - subid+=print_glyph_subs(i, subid); - } - } - - fprintf(pfa_file, "ND\n"); - - fprintf(pfa_file, "2 index /CharStrings %d dict dup begin\n", nchars); - - for (i = 0; i < numglyphs; i++) { - if (glyph_list[i].flags & GF_USED) { - print_glyph(i); - } - } - } - - - fprintf(pfa_file, "end\nend\nreadonly put\n"); - fprintf(pfa_file, "noaccess put\n"); - fprintf(pfa_file, "dup/FontName get exch definefont pop\n"); - fprintf(pfa_file, "mark currentfile closefile\n"); - fprintf(pfa_file, "cleartomark\n"); - if(pfa_file != null_file) - fclose(pfa_file); - - fprintf(afm_file, "EndCharMetrics\n"); - - if(afm_file != null_file) { /* save time if the output would be wasted */ - /* print the kerning data if present */ - cursw->kerning(glyph_list); - print_kerning(afm_file); - } - - fprintf(afm_file, "EndFontMetrics\n"); - if(afm_file != null_file) - fclose(afm_file); - - fprintf(dvienc_file, "] def\n"); - if(dvienc_file != null_file) - fclose(dvienc_file); - - WARNING_1 fprintf(stderr, "Finished - font files created\n"); - - cursw->close(); - -#ifndef WINDOWS - while (wait(&ws) > 0) { - } -#else - if (encode && pfa_file != null_file) { - extern FILE *ifp, *ofp; /* from t1asm.c */ - - snprintf(filename, sizeof filename, "%s.%s", argv[2], pfbflag ? "pfb" : "pfa" ); - - if ((ofp = fopen(filename, "w+b")) == NULL) { - fprintf(stderr, "**** Cannot create %s ****\n", filename); - exit(1); - } else { - WARNING_2 fprintf(stderr, "Creating file %s\n", filename); - } - - snprintf(filename, sizeof filename, "%s.t1a", argv[2]); - - if ((ifp = fopen(filename, "rb")) == NULL) { - fprintf(stderr, "**** Cannot read %s ****\n", filename); - exit(1); - } else { - WARNING_2 fprintf(stderr, "Converting file %s\n", filename); - } - - runt1asm(pfbflag); - - WARNING_2 fprintf(stderr, "Removing file %s\n", filename); - if(unlink(filename) < 0) - WARNING_1 fprintf(stderr, "Unable to remove file %s\n", filename); - } -#endif /* WINDOWS */ - - fclose(null_file); - return 0; -} diff --git a/Build/source/texk/ttf2pt1/ttf2pt1_convert.1 b/Build/source/texk/ttf2pt1/ttf2pt1_convert.1 deleted file mode 100644 index 1e11d1d0384..00000000000 --- a/Build/source/texk/ttf2pt1/ttf2pt1_convert.1 +++ /dev/null @@ -1,506 +0,0 @@ -.rn '' }` -''' $RCSfile$$Revision$$Date$ -''' -''' $Log$ -''' -.de Sh -.br -.if t .Sp -.ne 5 -.PP -\fB\\$1\fR -.PP -.. -.de Sp -.if t .sp .5v -.if n .sp -.. -.de Ip -.br -.ie \\n(.$>=3 .ne \\$3 -.el .ne 3 -.IP "\\$1" \\$2 -.. -.de Vb -.ft CW -.nf -.ne \\$1 -.. -.de Ve -.ft R - -.fi -.. -''' -''' -''' Set up \*(-- to give an unbreakable dash; -''' string Tr holds user defined translation string. -''' Bell System Logo is used as a dummy character. -''' -.tr \(*W-|\(bv\*(Tr -.ie n \{\ -.ds -- \(*W- -.ds PI pi -.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -.ds L" "" -.ds R" "" -''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of -''' \*(L" and \*(R", except that they are used on ".xx" lines, -''' such as .IP and .SH, which do another additional levels of -''' double-quote interpretation -.ds M" """ -.ds S" """ -.ds N" """"" -.ds T" """"" -.ds L' ' -.ds R' ' -.ds M' ' -.ds S' ' -.ds N' ' -.ds T' ' -'br\} -.el\{\ -.ds -- \(em\| -.tr \*(Tr -.ds L" `` -.ds R" '' -.ds M" `` -.ds S" '' -.ds N" `` -.ds T" '' -.ds L' ` -.ds R' ' -.ds M' ` -.ds S' ' -.ds N' ` -.ds T' ' -.ds PI \(*p -'br\} -.\" If the F register is turned on, we'll generate -.\" index entries out stderr for the following things: -.\" TH Title -.\" SH Header -.\" Sh Subsection -.\" Ip Item -.\" X<> Xref (embedded -.\" Of course, you have to process the output yourself -.\" in some meaninful fashion. -.if \nF \{ -.de IX -.tm Index:\\$1\t\\n%\t"\\$2" -.. -.nr % 0 -.rr F -.\} -.TH TTF2PT1_CONVERT 1 "version 3.4.0" "November 24, 2001" "TTF2PT1 Font Converter" -.UC -.if n .hy 0 -.if n .na -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.de CQ \" put $1 in typewriter font -.ft CW -'if n "\c -'if t \\&\\$1\c -'if n \\&\\$1\c -'if n \&" -\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 -'.ft R -.. -.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 -. \" AM - accent mark definitions -.bd B 3 -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds ? ? -. ds ! ! -. ds / -. ds q -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' -. ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -. ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] -.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' -.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' -.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -.ds oe o\h'-(\w'o'u*4/10)'e -.ds Oe O\h'-(\w'O'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds v \h'-1'\o'\(aa\(ga' -. ds _ \h'-1'^ -. ds . \h'-1'. -. ds 3 3 -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -. ds oe oe -. ds Oe OE -.\} -.rm #[ #] #H #V #F C -.SH "NAME" -\fBttf2pt1_convert\fR \- convenience font conversion script -.SH "SYNOPSIS" -ttf2pt1_convert \fB[config-file]\fR -.SH "DESCRIPTION" -`\fBConvert\fR\*(R' is the master conversion script provided with ttf2pt1. -When installed into a public directory it's named `\fBttf2pt1_convert\fR\*(R' -to avoid name collisions with the other programs. -.PP -If the configuration file is not specified as an argument then the file -`\f(CWconvert.cfg\fR\*(R' in the current directory is used. This file contains -a set of configuration variables. The distribution contains a sample file -file `\f(CWconvert.cfg.sample\fR\*(R'. Please copy it to `\f(CWconvert.cfg\fR\*(R', -look inside it and change the configuration variables. The more stable -configuration variables, such as the path names of the scripts and -encoding files are located in `\f(CWconvert\fR\*(R' itself, they are -automatically updated when installing \fBttf2pt1\fR. -.PP -Put all the TTF fonts you want to convert into some directory (this -may be just the directory that already contains all the Windows -fonts on a mounted FAT filesystem). If you have fonts in different -source encoding then put the fonts in each of the encodings -into a separate directory. Up to 10 source directories are -supported. If you (in a rather unlikely case) have more source -directories then you can make two separate runs of the converter, -converting up to 10 directories at a time. -.PP -The variables in the configuration file are: -.Ip "\(bu" 2 -\fB\f(CWSRCDIRS\fR\fR \- the list of directories (with absolute paths) with -\s-1TTF\s0 fonts. Each line contains at least 3 fields: the name of the directory, -the language of the fonts in it (if you have fonts for different -languages you have to put them into the separate directories) and the -encoding of the fonts. Again, if you have some of the \s-1TTF\s0 typefaces in -one encoding, and some in another (say, \s-1CP\s0\-1251 and \s-1KOI\s0\-8), you have -to put them into the separate source directories. Some lines may contain -4 fields. Then the fourth field is the name of the external map to -convert the Unicode fonts into the desirable encoding. This map is -used instead of the built-in map for the specified language. -.Sp -*8* -An interesting thing is that some languages have more than one -widely used character encodings. For example, the widely used -encodings for Russian are \s-1IBM\s0 \s-1CP\s0\-866 (\s-1MS\s0\-\s-1DOS\s0 and Unix), \s-1KOI\s0\-8 -(Unix and \s-1VAX\s0, also the standard Internet encoding), \s-1IBM\s0 \s-1CP\s0\-1251 (\s-1MS\s0 Windows). -That's why I have provided the means to generate the converted fonts -in more than one encoding. See the file encodings/\s-1README\s0 for -details about the encoding tables. Actually, if you plan to use -these fonts with Netscape Navigator better use the aliases -cp-866 instead of ibm-866 and windows-1251 instead of ibm-1251 -because that's what Netscape wants. -.Ip "\(bu" 2 -\fB\f(CWDSTDIR\fR\fR \- directory for the resulting Type1 fonts. Be careful! -This directory gets completely wiped out before conversion, -so don't use any already existing directory for this purpose. -.Ip "\(bu" 2 -\fB\f(CWDSTENC\fI{language}\fR\fR\fR \- the list of encodings in which the destination -fonts will be generated for each language. Each font of that -language will be generated in each of the specified -encodings. If you don't want any translation, just specify both -\f(CWSRCENC\fR and \f(CWDSTENC\fR as iso8859-1 (or if you want any other encoding -specified in the fonts.dir, copy the description of 8859-1 with -new name and use this new name for \f(CWSRCENC\fR and \f(CWDSTENC\fR). -.Ip "\(bu" 2 -\fB\f(CWFOUNDRY\fR\fR \- the foundry name to be used in the fonts.dir file. I have -set it to `fromttf\*(R' to avoid name conflicts with any existing font for -sure. But this foundry name is not registered in X11 standards and -if you want to get the full standard compliance or have a font server -that enforces such a compliance, use `misc\*(R'. -.PP -The next few parameters control the general behavior of the converter. -They default values are set to something reasonable. -.Ip "\(bu" 2 -\fB\f(CWCORRECTWIDTH\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then use the -converter option \f(CW\fB-w\fR\fR, otherwise don't use it. See the description of -this option in the \s-1README\s0 file. -.Ip "\(bu" 2 -\fB\f(CWREMOVET1A\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then after -conversion remove the un-encoded \f(CW.t1a\fR font files and the -intermediate \f(CW.xpfa\fR font metric files. -.Ip "\(bu" 2 -\fB\f(CWINSTALLFONTMAP\fR\fR \- a Ghostscript parameter, if the value is set to -\fB\f(CWYES\fR\fR then install the entries for the new fonts -right into the main \f(CWFontmap\fR file. Otherwise just leave -the file \f(CWFontmap.ttf\fR in the Ghostscript configuration -directory. -.Ip "\(bu" 2 -\fB\f(CWHINTSUBST\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR use the option -\f(CW\fB-H\fR\fR, otherwise don't use it. This option enables the -hint substitution technique. If you have not installed the X11 patch -described above, use this option with great caution. See further -description of this option in the \s-1README\s0 file. -.Ip "\(bu" 2 -\fB\f(CWENFORCEISO\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then -disguise the resulting fonts as the fonts in ISOLatin1 encoding. Historically -this was neccessary due to the way the installer scripts created the -X11 font configuration files. It is not neccessary any more for this -purpose. But if you plan to use these fonts with some other application -that expects ISOLatin1 encoding then better enable this option. -.Ip "\(bu" 2 -\fB\f(CWALLGLYPHS\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then -include all the glyphs from the source fonts into the resulting fonts, even -if these glyphs are inaccessible. If it's set to \fB\f(CWNO\fR\fR then -include only the glyphs which have codes assigned to them. The glyphs -without codes can not be used directly. But some clever programs, -such as the Type 1 library from XFree86 3.9 and higher can change -the encoding on the fly and use another set of glyphs. If you have not -installed the X11 patch described above, use this option with great -caution. See further description of the option option \f(CW\fB-a\fR\fR in the -\s-1README\s0 file. -.Ip "\(bu" 2 -\fB\f(CWGENUID\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then use -the option \f(CW\fB-uA\fR\fR of the converter to generate UniqueIDs for -the converted fonts. The standard X11 Type 1 library does not use -this \s-1ID\s0, so it may only be neccessary for the other applications. -The script is clever enough to generate different UniqueID for the -same font converted to multiple encodings. Also after conversion it -checks all the fonts generacted during the session for duplicated -UniqueID and shows those. Still, this does not quarantee that these -UniqueIDs won't overlap with some other fonts. The UniqueIDs are -generated as hash values from the font names, so it's guaranteed -that if the `\f(CWconvert\fR\*(R' script runs multiple times it will -generate the same UniqueIDs during each run. See further description -of this option in the \s-1README\s0 file. -.Ip "\(bu" 2 -\fB\f(CWGENUID\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then create -the \f(CW.pfb\fR files, otherwise the \f(CW.pfa\fR files. The \f(CW.pfb\fR -files are more compact but contain binary data, so you may experience some -troubles when transferring them through the network. -.PP -The following parameters are used to locate the other scripts and -configuration files. By default the scripts do a bit of guessing for them: -they search in the \fBttf2pt1\fR installation directory if \fBttf2pt1\fR -was installed or otherwise suppose that you are running `\f(CWconvert\fR\*(R' with -`\f(CWscripts\fR\*(R' subdirectory being the current directory. -.Ip "\(bu" 2 -\fB\f(CWENCDIR\fR\fR \- directory containing the descriptions of encodings -.Ip "\(bu" 2 -\fB\f(CWMAPDIR\fR\fR \- directory containing the external map files -.PP -Besides that a few parameters are built into the `\f(CWconvert\fR\*(R' script itself. -You probably won't need to change them: -.Ip "\(bu" 2 -\f(CW\fBT1ASM\fR\fR, \f(CW\fBTTF2PT1\fR\fR, \f(CW\fBTRANS\fR\fR, \f(CW\fBT1FDIR\fR\fR, \f(CW\fBFORCEISO\fR\fR \- paths to the other script -.PP -Also there are a few parameters controlling the installation of -fonts for Ghostscript. Please look at their description in the -Ghostscript section of documentation or in the \fBttf2pt1_x2gs(1)\fR -manual page before running `\f(CWconvert\fR\*(R'. If these parameters are -set, `\f(CWconvert\fR\*(R' will call the `\f(CWx2gs\fR\*(R' script automatically -to install the newly converted fonts in Ghostscript. -.PP -After creating the configuration file run the `\f(CWconvert\fR\*(R' script. Look at -the result and the log file in \f(CWDSTDIR\fR. -.PP -Add the directory with newly converted fonts to the configuration -of X server or font server. For most of the systems this step is -very straightforward. For \s-1HP\s0\-\s-1UX\s0 it's rather tricky and poorly -documented, so the file \s-1FONTS\s0.hpux gives a short description. -.PP -If you don't have the privileges of the root user, you still can -configure your private font server. Just use some non-standard -port number (see \s-1FONTS\s0.hpux for an example, exept that you won't -need all the \s-1HP\s0\-related stuff on any other system). -.SH "FILES" -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/\s0scripts/convert.cfg.sample -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/\s0scripts/* -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/README\s0 -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/FONTS\s0 -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR\s0/* -.Ip "\(bu" 2 -\s-1TTF2PT1_BINDIR/\s0ttf2pt1 -.SH "SEE ALSO" -.Ip "\(bu" 4 -the \fIttf2pt1(1)\fR manpage -.Ip "\(bu" 4 -the \fIttf2pt1_x2gs(1)\fR manpage -.Ip "\(bu" 4 -the \fIt1asm(1)\fR manpage -.SH "BUGS" -.Sh "Known problems" -.Ip "\(bu" 4 -One catch is that the X11 Type 1 font library has a rather low limit -on the font size. Because of this the fonts with more complicated -outlines and the enabled hint substitution may not fit into -this limit. The same applies to the fonts with very complicated -outlines or with very many glyphs (especially the fonts with -over 256 glyphs). So you will need to excercise caution with -these options if you plan using these fonts with X11. Some vendors -such as \s-1HP\s0 provide the Type 1 implementation licensed from Adobe -which should have no such problem. -.Sp -But there is a solution even for the generic X11. A patch located -in the subdirectory `\f(CWapp/X11\fR\*(R' fixes this problem as well -as some other minor problems. Its description is provided in -app/X11/\s-1README\s0. -.Sp -To fix the X11 font library, you have to get the X11 sources. I -can recommend the ftp sites of the XFree86 project ftp://ftp.xfree86.org -or of the Open Group ftp://ftp.x.org. This patch was made on the sources -of XFree86 so you may have better success with applying it to the -XFree86 distribution. After you have got the sources, make sure -that you can compile them. Then apply the patch as described. -Make sure that it was applied properly. Compile the sources again -(actually, you need only the fonts library, the fonts server, and -possibly the X server). It would be prudent now to save your old -font library, font server and, possibly, X server. Then install -the new recently compiled versions of these files. Of course, -if you know someone who already has compiled these files for the -same \s-1OS\s0 as yours, you can just copy the binary fles from him. -.Sp -Alas, building the X11 system from the source code is not the -easiest thing in the world and if you have no experience it -can be quite difficult. In this case just avoid the aforementioned -features or check each converted font to make sure that it -works properly. -.Ip "\(bu" 4 -The Type1 font library from the standard X11 distribution -does not work on \s-1HP\s0\-\s-1UX\s0 (at least, up to 10.01). The font server -supplied with \s-1HP\s0\-\s-1UX\s0 up to 10.01 is also broken. Starting from -\s-1HP\s0\-\s-1UX\s0 10.20 (I don't know about 10.10) they supply a proprietary font -library and the converted fonts work fine with it, provided that -they are configured properly (see the file \s-1FONTS\s0.hpux). -.Ip "\(bu" 4 -The \f(CWfonts.scale\fR files created by the older versions of the -\f(CWttf2pt1\fR installation program (up to release 3.1) have conflicted -with the language definitions of the \f(CWXfsft\fR font server and -parts of it included into XFree86. To overcome this incompatibility -the never versions creats the \f(CWfonts.scale\fR file describing all the -fonts as belonging to the \f(CWadobe-fontspecific\fR encoding and -the \f(CWfonts.alias\fR file with the proper names. The drawback of -this solution is that \f(CWxlsfonts\fR gives the list of twice more -fonts. But as a side effect the option \f(CW\fBENFORCEISO\fR\fR in -`\f(CWconvert.cfg\fR\*(R' is not required for X11 any more. -.Ip "\(bu" 4 -The conversion script has no support for Eastern multi-plane fonts. -Contribution of such a support would be welcome. - -.rn }` '' -.IX Title "TTF2PT1_CONVERT 1" -.IX Name "B<ttf2pt1_convert> - convenience font conversion script" - -.IX Header "NAME" - -.IX Header "SYNOPSIS" - -.IX Header "DESCRIPTION" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "FILES" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "SEE ALSO" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "BUGS" - -.IX Subsection "Known problems" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - diff --git a/Build/source/texk/ttf2pt1/ttf2pt1_x2gs.1 b/Build/source/texk/ttf2pt1/ttf2pt1_x2gs.1 deleted file mode 100644 index d0832b39c02..00000000000 --- a/Build/source/texk/ttf2pt1/ttf2pt1_x2gs.1 +++ /dev/null @@ -1,313 +0,0 @@ -.rn '' }` -''' $RCSfile$$Revision$$Date$ -''' -''' $Log$ -''' -.de Sh -.br -.if t .Sp -.ne 5 -.PP -\fB\\$1\fR -.PP -.. -.de Sp -.if t .sp .5v -.if n .sp -.. -.de Ip -.br -.ie \\n(.$>=3 .ne \\$3 -.el .ne 3 -.IP "\\$1" \\$2 -.. -.de Vb -.ft CW -.nf -.ne \\$1 -.. -.de Ve -.ft R - -.fi -.. -''' -''' -''' Set up \*(-- to give an unbreakable dash; -''' string Tr holds user defined translation string. -''' Bell System Logo is used as a dummy character. -''' -.tr \(*W-|\(bv\*(Tr -.ie n \{\ -.ds -- \(*W- -.ds PI pi -.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -.ds L" "" -.ds R" "" -''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of -''' \*(L" and \*(R", except that they are used on ".xx" lines, -''' such as .IP and .SH, which do another additional levels of -''' double-quote interpretation -.ds M" """ -.ds S" """ -.ds N" """"" -.ds T" """"" -.ds L' ' -.ds R' ' -.ds M' ' -.ds S' ' -.ds N' ' -.ds T' ' -'br\} -.el\{\ -.ds -- \(em\| -.tr \*(Tr -.ds L" `` -.ds R" '' -.ds M" `` -.ds S" '' -.ds N" `` -.ds T" '' -.ds L' ` -.ds R' ' -.ds M' ` -.ds S' ' -.ds N' ` -.ds T' ' -.ds PI \(*p -'br\} -.\" If the F register is turned on, we'll generate -.\" index entries out stderr for the following things: -.\" TH Title -.\" SH Header -.\" Sh Subsection -.\" Ip Item -.\" X<> Xref (embedded -.\" Of course, you have to process the output yourself -.\" in some meaninful fashion. -.if \nF \{ -.de IX -.tm Index:\\$1\t\\n%\t"\\$2" -.. -.nr % 0 -.rr F -.\} -.TH TTF2PT1_X2GS 1 "version 3.4.0" "November 24, 2001" "TTF2PT1 Font Converter" -.UC -.if n .hy 0 -.if n .na -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.de CQ \" put $1 in typewriter font -.ft CW -'if n "\c -'if t \\&\\$1\c -'if n \\&\\$1\c -'if n \&" -\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7 -'.ft R -.. -.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2 -. \" AM - accent mark definitions -.bd B 3 -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds ? ? -. ds ! ! -. ds / -. ds q -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10' -. ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -. ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#] -.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u' -.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u' -.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#] -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -.ds oe o\h'-(\w'o'u*4/10)'e -.ds Oe O\h'-(\w'O'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds v \h'-1'\o'\(aa\(ga' -. ds _ \h'-1'^ -. ds . \h'-1'. -. ds 3 3 -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -. ds oe oe -. ds Oe OE -.\} -.rm #[ #] #H #V #F C -.SH "NAME" -\fBttf2pt1_x2gs\fR \- font installer for Ghostscript -.SH "SYNOPSIS" -ttf2pt1_x2gs \fB[config-file]\fR -.SH "DESCRIPTION" -The fonts generated with \fBttf2pt1\fR work fine with Ghostscript by -themselves. The script `\fBx2gs\fR\*(R' (or `\fBttf2pt1_x2gs\fR\*(R' when installed -into a public directory, to avoid name conflicts with other -programs) links the font files from the X11 direcotry into the Ghostscript -directory and automatically creates the description file (\f(CWFontmap\fR) -in Ghostscript format. -.PP -If the configuration file is not specified as an argument then the file -`\f(CWconvert.cfg\fR\*(R' in the current directory is used, just like the -`\f(CWconvert\fR\*(R' script does. Indeed, this configuration file is used for -both scripts. -.PP -The Ghostscript-related parameters in the configuration file are: -.PP -\fB\f(CWDSTDIR\fR\fR \- the X11 font directory used by `\f(CWx2gs\fR\*(R' as the -source of the fonts. This parameter is common with the X11 -configuration. -.PP -\fB\f(CWGSDIR\fR\fR \- the base directory of Ghostsript. If this -parameter is set to an empty string then `\f(CWconvert\fR\*(R' won't -call `\f(CWx2gs\fR\*(R'. So if you want to get only the X11 fonts -installed then set this parameter to an empty string. This -directory may vary on various system, so please check your -system and set this value accordingly before running the script. -.PP -\fB\f(CWGSFONTDIR\fR\fR \- the font directory of Ghostscript. In the standard -Ghostscript installation it's a subdirectory of \f(CWGSDIR\fR -but some systems may use completely different directories. -.PP -\fB\f(CWGSCONFDIR\fR\fR \- the configuration subdirectory of Ghostscript -that contains the \f(CWFontmap\fR file. -.PP -\fB\f(CWINSTALLFONTMAP\fR\fR \- if the value is set to \fB\f(CWYES\fR\fR then -install the entries for the new fonts right into the main -\f(CWFontmap\fR file. Otherwise just leave the file \f(CWFontmap.ttf\fR -in the Ghostscript configuration directory. -.PP -After preparing the configuration file run the script. It symbolicaly links -all the font files and creates the description file \f(CWFontmap.ttf\fR in -\f(CWGSCONDFIR\fR. After that there are two choices. -.PP -If the option \f(CWINSTALLFONTMAP\fR was set to \f(CWYES\fR then -the font descriptions are also automatically installed into the -master \f(CWFontmap\fR file. The script is clever enough to -detect if it was run multiple times with the same directories -and if so it replaces the old \f(CWFontmap\fR entries with -the new ones instead of just accumulating all of them. You -may also run it multiple times for multiple X11 directories -and all the results will be properly collected in the \f(CWFontmap\fR. -But it's your responsibility to watch that the names of the -font files don't overlap. If the X11 font directory gets -renamed then you have to remove its font entries from the -\f(CWFontmap\fR and only after that re-run `\f(CWx2gs\fR\*(R' -for the new directory. -.PP -On the other hand if the option \f(CWINSTALLFONTMAP\fR was set to -\f(CWNO\fR then go to the \f(CWGSCONFDIR\fR directory and insert the -contents of \f(CWFontmap.ttf\fR into the \f(CWFontmap\fR file -manually. This step may be left manual to make the installation -a little bit more safe. -.PP -After that you may also want to redefine some of the aliases in -\f(CWFontmap\fR to refer to the newly installed fonts. -But the redefinition of the aliases may be dangerous if the width of -characters in the new font will be different from the old font. -Alas, there is no visible solution of this problem yet. -.SH "FILES" -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/\s0scripts/convert.cfg.sample -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/\s0scripts/* -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/README\s0 -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR/FONTS\s0 -.Ip "\(bu" 2 -\s-1TTF2PT1_SHAREDIR\s0/* -.Ip "\(bu" 2 -\s-1TTF2PT1_BINDIR/\s0ttf2pt1 -.SH "SEE ALSO" -.Ip "\(bu" 4 -the \fIttf2pt1(1)\fR manpage -.Ip "\(bu" 4 -the \fIttf2pt1_convert(1)\fR manpage -.Ip "\(bu" 4 -the \fIt1asm(1)\fR manpage - -.rn }` '' -.IX Title "TTF2PT1_X2GS 1" -.IX Name "B<ttf2pt1_x2gs> - font installer for Ghostscript" - -.IX Header "NAME" - -.IX Header "SYNOPSIS" - -.IX Header "DESCRIPTION" - -.IX Header "FILES" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Header "SEE ALSO" - -.IX Item "\(bu" - -.IX Item "\(bu" - -.IX Item "\(bu" - diff --git a/Build/source/texk/ttf2pt1/version.h b/Build/source/texk/ttf2pt1/version.h deleted file mode 100644 index 1ac4eed25b4..00000000000 --- a/Build/source/texk/ttf2pt1/version.h +++ /dev/null @@ -1,7 +0,0 @@ -/* - * see COPYRIGHT - */ - - -/* version number */ -#define TTF2PT1_VERSION "3.4.0" diff --git a/Build/source/texk/ttf2pt1/winbuild.bat b/Build/source/texk/ttf2pt1/winbuild.bat deleted file mode 100644 index 6cbcc7bf750..00000000000 --- a/Build/source/texk/ttf2pt1/winbuild.bat +++ /dev/null @@ -1,9 +0,0 @@ -rem file to build ttf2pt1 with Visual C++
-
-cl -DWINDOWS -c ttf2pt1.c
-cl -DWINDOWS -c pt1.c
-cl -DWINDOWS -c ttf.c
-cl -DWINDOWS -c t1asm.c
-cl -o ttf2pt1 ttf2pt1.obj pt1.obj t1asm.obj ttf.obj
-cl -o t1asm -DWINDOWS -DSTANDALONE t1asm.c
-
diff --git a/Build/source/texk/ttf2pt1/winport.h b/Build/source/texk/ttf2pt1/winport.h deleted file mode 100644 index ad23c7c05f9..00000000000 --- a/Build/source/texk/ttf2pt1/winport.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Implementation of things missing in Windows - */ - -#ifdef FPTEX -#include <win32lib.h> -#endif - -#ifndef M_PI -#define M_PI 3.14159265358979323846 -#endif - -#undef ntohs -#undef ntohl -#undef htonl - -#ifdef WINDOWS_FUNCTIONS -/* byte order */ - -static unsigned short StoM(unsigned short inv) { - union iconv { - unsigned short ui; - unsigned char uc[2]; - } *inp, outv; - - inp = (union iconv *)&inv; - - outv.uc[0] = inp->uc[1]; - outv.uc[1] = inp->uc[0]; - - return (outv.ui); -} - -static unsigned int ItoM(unsigned int inv) { - union iconv { - unsigned int ui; - unsigned char uc[4]; - } *inp, outv; - - inp = (union iconv *)&inv; - - outv.uc[0] = inp->uc[3]; - outv.uc[1] = inp->uc[2]; - outv.uc[2] = inp->uc[1]; - outv.uc[3] = inp->uc[0]; - - return (outv.ui); -} - -unsigned short ntohs(unsigned short inv) { return StoM(inv); } -unsigned long ntohl(unsigned long inv) { return ItoM(inv); } -unsigned long htonl(unsigned long inv) { return ItoM(inv); } - -char *optarg; -int optind=1; - -char getopt(int argc, char **argv, char *args) { - int n,nlen=strlen(args),nLen=0; - char nCmd; - - if (argv[optind] && *argv[optind]=='-') { - nCmd=*((argv[optind]+1)); - - for (n=0;n<nlen;n++) { - if (args[n] == ':') continue; - if (args[n] == nCmd) { - if (args[n+1]==':') { - char retVal; - retVal=*(argv[optind]+1); - optarg=argv[optind+1]; - if (!optarg) optarg=""; - optind+=2; - return retVal; - } else { - char retVal; - retVal=*(argv[optind]+1); - optarg=NULL; - optind+=1; - return retVal; - } - } - } - } - return -1; -} - -#else - -unsigned short ntohs(unsigned short inv); -unsigned long ntohl(unsigned long inv); -unsigned long htonl(unsigned long inv); - -extern char *optarg; -extern int optind; - -char getopt(int argc, char **argv, char *args); -#endif |